linux – 如何在影子密码文件中编码密码?

我正在学习 Linux密码安全性(比任何有用的东西更好奇),我知道真正的密码是经过哈希处理并存储在影子密码文件中.我不确定,并且在我的简短的谷歌搜索中找不到的是使用什么编码来编码散列值(以及盐的值).它显然不是十六进制,它显然是文本,不包括:字符.这里有人能告诉我编码是什么吗?

编辑:我理解散列(MD5,SHA-X),salt和散列说明符.我正在寻找的是将哈希结果(字节数组(byte []))转换为我在文件中看到的字符序列的方法,即:编码.

解决方法

在MD5 crypt()的情况下,salt只是来自[a-zA-Z0-9./]的最多8个字符的随机字符串.

然后将salt和密码一起散列,通过强化函数,然后使用Base64上的变体进行编码:

> MD5状态(128位)被混洗并分成6组,每组包含3个字节(最后一组包括2个零填充字节)>然后将每组3个字节分成4个块,每个块6位>最后,每个6位组映射到[a-zA-Z0-9./]范围内的字符

相关文章

在Linux上编写运行C语言程序,经常会遇到程序崩溃、卡死等异...
git使用小结很多人可能和我一样,起初对git是一无所知的。我...
1. 操作系统环境、安装包准备 宿主机:Max OSX 10.10.5 虚拟...
因为业务系统需求,需要对web服务作nginx代理,在不断的尝试...
Linux模块机制浅析 Linux允许用户通过插入模块,实现干预内核...
一、Hadoop HA的Web页面访问 Hadoop开启HA后,会同时存在两个...