shell中的散列密码(sha512)破坏了密码。 如何在一行中获得结果?如何从输出中删除换行符?
哈希计算的脚本:
xwtd2ev7b1HQnUEytxcMnSB1CnhS8AaA9lZY8DEOgQBW5nY8NMmgCw6UAHb1RJXB
afwjAszrMSA5JxxDRpUH3A==
应该是一条线:
password="abc123"
hashPassw="$(/bin/echo -n "${password}" | openssl dgst -binary -sha512 | openssl enc -base64)"
echo "${hashPassw}"
输出是(为什么打破行?)
xwtd2ev7b1HQnUEytxcMnSB1CnhS8AaA9lZY8DEOgQBW5nY8NMmgCw6UAHb1RJXBafwjAszrMSA5JxxDRpUH3A==
我的脚本创建密码的哈希 - 为用户proftpd的。 带有虚线的密码不授权用户。 我不知道base64可能会破坏。 – kpietru
@kpietru:仅供参考,Base64的主要目的是为电子邮件传输编码二进制数据,这就是换行的起源。 – DevSolar