我有一个围棋程序package mainimport ( "crypto/hmac" "crypto/sha1" "fmt")func main() { val := []byte("nJ1m4Cc3") hasher := hmac.New(sha1.New, val) fmt.Printf("%x\n", hasher.Sum(nil)) // f7c0aebfb7db2c15f1945a6b7b5286d173df894d}以及试图重现 Go 代码的 Python (2.7) 程序(使用crypto/hmac)import hashlibval = u'nJ1m4Cc3'hasher = hashlib.new("sha1", val)print hasher.hexdigest()# d67c1f445987c52bceb8d6475c30a8b0e9a3365d使用hmac模块给了我一个不同的结果,但仍然与 Go 代码不同。import hmacval = 'nJ1m4Cc3'h = hmac.new("sha1", val)print h.hexdigest()# d34435851209e463deeeb40cba7b75ef为什么当它们在相同的输入上使用相同的散列时会打印不同的值?
添加回答
举报
0/150
提交
取消