python - 生成可变长度哈希

标签 python hash

有没有办法在 python 中生成一个简短版本的哈希码,SHA128 或 SHA256 我试过了,但它不是正确的方法来获取[提取子字符串以缩短]

hashlib.sha256(str.encode('utf-8')).hexdigest()[:8]

例如,如果我有一个字符串,我想要 8 个字符的散列

str = "iamtestingastringtogethash"
print(hashlib.sha256(str.encode('utf-8').hexdigest(),8))

Output: some_8char_hash

最佳答案

好的,我找到了自己的修复方法,

hashlib.shake_256(str.encode("utf-8")).hexdigest(length=8)

关于python - 生成可变长度哈希,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49808639/

相关文章:

python - 如何模拟未按名称调用的函数?

python - 在多处理 apply_async 中维护实例状态

hash - 有没有一种方法可以使用 HSCAN(在 JEDIS 中)来检索没有值的键?

ruby - 将 nokogiri xml 节点转换为 ruby​​ 哈希

python - 日期时间模块的语法无效

python - 计算 python 列表中标记之间的出现次数

python - Scikit Learn 模型给出 'LocalOutlierFactor' 对象没有属性 'predict' 错误

java - Java中使用递归方法的密码哈希链

cryptography - 使用 Python 加盐哈希密码(每个新密码使用不同的盐)

c++ - 哈希表的实现