我正在尝试使用 python 的 hashlib 模块计算字符串“test”的校验和。我正在使用 python3。
In [31]: hobj = hashlib.new('md5')
In [32]: hobj.update('test'.encode("UTF-8"))
In [33]: hobj.hexdigest()
Out[33]: '098f6bcd4621d373cade4e832627b4f6'
但是当我尝试使用 linux md5sum 时,校验和与 hashlib 的输出完全不同。
$ echo 'test' | md5sum
d8e8fca2dc0f896fd7cb4cb0031ba249 -
我的python代码有什么问题吗?
最佳答案
请改用 echo -n 'test'
。 echo
否则将输出换行符 ("test\n")。
$ echo -n 'test' | md5sum
098f6bcd4621d373cade4e832627b4f6 -
关于Python hashlib Checksum 与 linux md5sum 不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44088977/