1

我正在尝试从 Galaxy 框架中检索密码并进行身份验证。我成功检索了哈希(sha1)格式的密码。如何使用用户输入的密码进行身份验证?我的第一个猜测是将 hashed(sha1) 转换为普通字符串并进行身份验证。那可能吗?如果是,如何将其转换为字符串?

4

2 回答 2

2

...我的第一个猜测是将 hashed(sha1) 转换为普通字符串 ...

这就是密码散列函数试图阻止的(除其他外)——这个属性被称为原像电阻

基本步骤将是相反的:

  • 接受用户输入
  • 计算用户输入的哈希值
  • 将散列的用户输入与存储的凭据/散列进行比较
于 2013-01-07T15:58:26.320 回答
2

你不能。从哈希码中获取纯文本是非常困难的,这正是我们发明哈希的原因。尝试相反:将纯文本转换为哈希,然后进行比较。

如何转换:

import hashlib
s = "plain"
h = hashlib.sha1(s).hexdigest()
于 2013-01-07T16:01:48.227 回答