概述
使用SHA1散列较大的字符串,以便它们可以用作数据库中的键.
尝试从原始字符串生成UUID大小的字符串,该字符串足够随机且足够大以防止冲突,但比原始字符串小得多.
不使用此安全相关的任何东西.
例:
# Take a very long string,hash it down to a smaller string behind the scenes and use
# the hashed key as the data base primary key instead
def _get_database_key(very_long_key):
return hashlib.sha1(very_long_key).digest()
SHA1是一个很好的算法用于此目的吗?或者还有其他更合适的东西吗?
使用SHA1的版本是UUIDv5,因此代码将是这样的:
import uuid
uuid.uuid5(uuid.NAMESPACE_OID,'your string here')
总结
以上是编程之家为你收集整理的python – 防止冲突而不是攻击的哈希函数. (生成随机UUID大小的结果空间)全部内容,希望文章能够帮你解决python – 防止冲突而不是攻击的哈希函数. (生成随机UUID大小的结果空间)所遇到的程序开发问题。
如果您也喜欢它,动动您的小指点个赞吧