加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 防止冲突而不是攻击的哈希函数. (生成随机UUID大小的结果空间)

发布时间:2020-05-23 18:26:30 所属栏目:Python 来源:互联网
导读:使用SHA1散列较大的字符串,以便它们可以用作数据库中的键.尝试从原始字符串生成UUID大小的字符串,该字符串足够随机且足够大以防止冲突,但比原始字符串小得多.不使用此安全相关的任何东西.例:# Take a very long string, hash it down to a smaller string be

使用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是一个很好的算法用于此目的吗?或者还有其他更合适的东西吗? 最佳答案 Python有一个uuid library,基于RFC 4122.

使用SHA1的版本是UUIDv5,因此代码将是这样的:

import uuid

uuid.uuid5(uuid.NAMESPACE_OID,'your string here')

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读