【发布时间】:2021-04-12 19:44:46
【问题描述】:
我有一个随机生成函数,它根据种子创建一串随机数。
hash_ = '1'
for i in range(5):
m = hashlib.sha256()
m.update(hash_.encode("utf-8"))
hash_ = m.hexdigest()
print(hash_)
这个输出
6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b
e0bc614e4fd035a488619799853b075143deea596c477b8dc077e309c0fe42e9
d6a804981ea7ce374acc21c9a8bf82f50b684b0ea4bdf8b26a7a775291aaf7a6
ad376767fc04814220cc25c79b2777cd14704f23f1830318b5bd9eb97e4fedf6
b80de1ab9d0903823cc10fd5b2ba57616b339a69313b4d3e23363dbea6579cd6
每次都会输出这个
我的问题是它是否可能,我怎么可能扭转这个功能。
所以我开始这个功能:
hash_ = b80de1ab9d0903823cc10fd5b2ba57616b339a69313b4d3e23363dbea6579cd6
它输出的最后一个哈希是:
6b86b273ff34fce19d6b804eff5a3f5747ada4eaa22f1d49c01e52ddb7875b4b
只是想知道这是否可能感谢所有帮助:)
【问题讨论】:
-
您不会反转哈希,它们被明确设计为不可逆。
-
加密哈希是专门设计的,因此它不应该是可能的。事实上,它可以通过令人难以置信的努力和足够的时间(数千年甚至更多!)来计算。实际答案:不。
-
耻辱 :( 感谢您的帮助
-
取决于
hash_的初始值。如果它很短并且可能在字典中,则使用该代码编写蛮力程序相当容易。请记住,Python 通常对于这样的任务来说太慢了,因为它是被解释的。 -
“耻辱”,不,相信我,你不希望他们那样。如果你希望它是可逆的,你可以使用加密,
hashing != encryption。
标签: python algorithm encryption hashcode