news 2026/5/1 6:26:49

42、UNIX 系统杂项编程实用指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
42、UNIX 系统杂项编程实用指南

UNIX 系统杂项编程实用指南

1. 密码获取与验证

1.1 getpass 函数

在 UNIX 系统中,getpass函数可用于安全地获取用户输入的密码。该函数的原型为:

#include <stdlib.h> char *getpass(const char *prompt);

它的工作流程如下:
1. 打印prompt字符串。
2. 关闭终端的字符回显功能。
3. 读取用户输入的密码。
4. 恢复终端的原有模式。
5. 返回用户输入的密码,但该函数会将输入的密码截断为最多 8 个字符。

1.2 密码验证流程

获取密码后,程序会在密码文件或影子密码文件中查找用户的密码(若使用影子密码文件,程序需以超级用户权限运行)。然后将用户输入的值与盐值一起传递给crypt函数,并将结果与从密码文件中获取的值进行比较。以下是示例代码:

#include <stdlib.h> #include <crypt.h> char *typed, *encrypted; // ... encrypted = /* obtain the encrypted password */; typed = getpass("Password: "); if (strcmp(crypt(typed, encryp
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 17:19:37

腾讯开源SongGeneration:用AI技术让每个人都能创作专业级音乐

腾讯开源SongGeneration&#xff1a;用AI技术让每个人都能创作专业级音乐 【免费下载链接】SongGeneration 腾讯开源SongGeneration项目&#xff0c;基于LeVo架构实现高品质AI歌曲生成。它采用混合音轨与双轨并行建模技术&#xff0c;既能融合人声与伴奏达到和谐统一&#xff0…

作者头像 李华
网站建设 2026/4/20 2:06:08

终极指南:3分钟掌握命令行API文档转换神器

终极指南&#xff1a;3分钟掌握命令行API文档转换神器 【免费下载链接】awesome-shell A curated list of awesome command-line frameworks, toolkits, guides and gizmos. Inspired by awesome-php. 项目地址: https://gitcode.com/gh_mirrors/aw/awesome-shell 还在为…

作者头像 李华
网站建设 2026/4/28 12:52:35

MouseInc手势配置终极指南:从零到精通的效率革命

还在为重复的鼠标点击感到疲惫不堪吗&#xff1f;每天面对成百上千次的鼠标操作&#xff0c;你的手腕是否已经发出了不适的信号&#xff1f;MouseInc设置界面正是为了解决这一痛点而生&#xff0c;这款仅200KB的轻量级Windows鼠标手势工具&#xff0c;将彻底改变你的电脑操作习…

作者头像 李华
网站建设 2026/5/1 6:05:19

48、深入理解内存映射:原理、操作与应用

深入理解内存映射:原理、操作与应用 1. 内存映射概述 内存映射是一种将内存区域与磁盘文件系统中的常规文件或块设备文件的某部分相关联的技术。当访问内存区域页面内的某个字节时,内核会将其转换为对文件中相应字节的操作。内存映射主要分为两种类型: - 共享映射(Shar…

作者头像 李华