了解 linux /etc/shadow 文件结构(Linux)

了解 linux /etc/shadow 文件结构(Linux)

考虑 /etc/shadow 文件中的以下一行:

root:$1$NFEf74q.$bmukkxAq9dOMJINgEtP7u0:15258:0:::::

从这里我了解到哈希算法是 md5 ( $1),从第三个 $ 符号开始是哈希密码,由 22 个字符组成。据我所知,这个长度是由于哈希进一步用 base64 算法编码,这是正确的吗?如果是,您将如何从中获取原始 md5(32 个字符)?

答案1

您使用 base64_decode 对字符串进行解码,然后将二进制字符串转换为十六进制表示。

在 php 中你可以使用

$md5 = bin2hex(base64_decode($string));

相关内容