Python hashlib Checksum 与 linux md5sum 不同

标签 python linux python-3.x

我正在尝试使用 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/

相关文章:

c++ - 新运营商崩溃

Python 3 : Alignment and commas

python - 如何使用 Pandas 只读取 excel 标题?

python - 从 3D 创建 4D 上对角线数组

linux - X11 XGrabPointer,如何清除释放鼠标之前的所有事件?

python - 矩阵链应用中括号的可能组合

python - 如何在 Python 中更改按钮大小?

python - 如何在 PyQt 中动态创建列和行?

python - 更新 'None' 值未反射(reflect)在对象中

java - Tomcat 7 未从/home 目录加载图像