"abc" 的 sha1 哈希是
a9993e364706816aba3e25717850c26c9cd0d89d
让 Mathematica 告诉你它的Hash
功能的唯一方法是
Hash[abc, "SHA"] // IntegerString[#, 16]&
( IntegerString 只是像大多数实现一样以十六进制输出它。)
注意
Hash["abc", "SHA"]
给出 "\"abc\"" 的哈希值——不是你想要的!事实上,我们能得到正确的“abc”散列的唯一原因是符号的 Mathematica 表示abc
恰好是字符串“abc”。对于绝大多数字符串,情况并非如此。
那么如何在 Mathematica 中获取任意字符串的哈希值呢?