Python具有内置的哈希函数,用于获取对象的哈希。摘要似乎只有64位,因此很容易发生冲突。有没有办法在对象上使用更安全的哈希函数?
python有一个内置的hashlib库,但是它不能像hash()函数那样在对象上工作。有没有办法像内置哈希函数那样对类进行编码?
import hashlib
class hashme:
a=33
b=22
hasher=hashlib.sha256()
# declare a class
myclass=hashme()
# the normal python hash function works
print(hex(hash(myclass)))
# other hash functions don't work. This will raise an error.
print(hasher.update(myclass))