其实是这样的 ,md5sum文件会在文件的最后增加一个'\n',再进行md5运算。
同理,用echo "password" |md5sum生成的结果也是一样,因为echo也是在最后增加了一个"\n"。
所以使用md5sum加密字符串的时候应该避免这个问题,要echo -n "passwd"|md5sum, -n代表不输出'\n'符。
来看一下效果吧:
被加密字符串 ”redhat“
1.python hashlib计算
e2798af12a7a0f4f70b4d69efbc25f4d
2.echo -n 'redhat'|md5sum
e2798af12a7a0f4f70b4d69efbc25f4d
3.echo "redhat"|md5sum
bdb52aae3b5566607f3e6023ef2e74e5
4.echo -n -e 'redhat\n'|md5sum
bdb52aae3b5566607f3e6023ef2e74e5
同理,用echo "password" |md5sum生成的结果也是一样,因为echo也是在最后增加了一个"\n"。
所以使用md5sum加密字符串的时候应该避免这个问题,要echo -n "passwd"|md5sum, -n代表不输出'\n'符。
来看一下效果吧:
被加密字符串 ”redhat“
1.python hashlib计算
e2798af12a7a0f4f70b4d69efbc25f4d
2.echo -n 'redhat'|md5sum
e2798af12a7a0f4f70b4d69efbc25f4d
3.echo "redhat"|md5sum
bdb52aae3b5566607f3e6023ef2e74e5
4.echo -n -e 'redhat\n'|md5sum
bdb52aae3b5566607f3e6023ef2e74e5