gpt4 book ai didi

python - SHA 256 不同的结果

转载 作者:太空狗 更新时间:2023-10-29 20:10:45 24 4
gpt4 key购买 nike

如果我从 Mac 调用命令

echo hello | shasum -a 256

或来自 ubuntu

echo hello | sha256sum

然后得到如下结果

5891b5b522d5df086d0ff0b110fbd9d21bb4fc7163af34d08286a2e846f6be03  -

我注意到末尾有破折号。

但是当我使用 Python hashlib 或 Java java.security.MessageDigest 时,它们会给我相同的结果如下:

2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824

所以,有人能指出我哪里错了吗?

谢谢。


python :

>>> import hashlib
>>> hashlib.sha256("hello").hexdigest()

Java:

MessageDigest md = MessageDigest.getInstance("SHA-256");
String text = "hello";
md.update(text.getBytes("UTF-8"));
byte[] digest = md.digest();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < digest.length; i++) {
sb.append(String.format("%02x", digest[i] & 0xFF))
}
System.out.println(sb.toString());

最佳答案

echo 命令在您的字符串中添加尾随换行符。尝试:

hashlib.sha256("hello\n").hexdigest()

关于python - SHA 256 不同的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34430714/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com