crypt函数原型及介绍
函数原型
char *crypt(const char *key, const char *salt);
//gcc编译需要使用-lcrypt链接选项
功能:密码及数据加密
描述
crypt()是密码加密函数。它基于标准的加密算法(默认DES算法),但是又加入了可变的因素,加大了密码破解的难度。
参数key
用户的明文,即加密之前数据。
参数salt
两个字符,可以是大小写字母,数字以及‘.’,‘/’这两个字符。接触过信号学的同学可以联想一下椒盐噪声,他的作用就是给加密算法引入随机性,加大破解难度。
glibc2使用salt参数,使该函数支持跟多的加密算法。
如果salt的格式形如$id$salt$,那么id就表示选择的加密算法,salt可以是使最长16字符的噪声。而加密结果将是$id$salt$encry