【问题标题】:How to find the original value from the keccak 256 hash value in python?如何从python中的keccak 256哈希值中找到原始值?
【发布时间】:2021-06-07 16:15:40
【问题描述】:

我正在使用以下代码获取 keccak 256 哈希:

import sha3
k = sha3.keccak_256()
k.update(b'age')
print (k.hexdigest())

如何将 keccak 256 哈希值转换回原始字符串? (我可以根据需要使用任何库)。

【问题讨论】:

  • SHA3 是一种单向哈希函数,即输入x 在运行函数f(x) 后会产生输出y,其中x --> y 很容易,y --> x 在计算上非常昂贵执行(数十亿年)。如果您要求的内容是可能的,即散列到原始字符串,则散列函数将被视为已损坏。这是一个可能有帮助的资源:@​​987654321@
  • 即使您可以反转 SHA3 哈希,您如何确定理论上无限输入中的哪一个是您想要的?

标签: python python-3.x cryptography sha-3 keccak


【解决方案1】:

您无法将哈希值转换回原始字符串。哈希函数的创建方式不可能将哈希值转换回原始字符串。

【讨论】:

  • 这不仅很难 - 这是不可能的,因为许多不同的字符串会给出相同的哈希值。要从任意长度的字符串变为 256 位,您已经丢弃了大量无法恢复的数据。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-03
  • 2019-05-03
  • 2012-07-02
相关资源
最近更新 更多