我正在尝试从Galaxy框架中检索密码并进行身份验证。我成功地检索了散列(sha1)格式的密码。我如何使用用户输入的密码进行验证?我的第一个猜测是将哈希(sha1)转换为正常字符串并进行身份验证。那可能吗?如果是这样,我怎么把它转换成字符串?如何在Python中验证散列(sha1)密码?
1
A
回答
2
你不能。这将是极其困难从其哈希代码中获取纯文本,这正是我们发明哈希的原因。尝试相反:将纯文本转换为散列,然后进行比较。
如何转换:
import hashlib
s = "plain"
h = hashlib.sha1(s).hexdigest()
+0
谢谢@Skyler。 – user1881957
2
...我的第一个猜测将被转换散列(SHA1)到正常的字符串...
这就是cryptographic hash functions尽量避免(除其他事项外) - 这个属性被称为pre-image resistance。
的基本步骤是周围的其他方法:
- 取用户输入
- 计算哈希在用户输入
- 散列用户输入与存储的证书/散列
相关问题
- 1. 密码恢复与sha1密码散列
- 2. 验证散列密码
- 3. Coldfusion:验证散列密码
- 4. 如何根据MediaWiki用户表验证密码散列密码?
- 5. password_verify()不验证散列密码
- 6. 验证密码散列,并用password_hash
- 7. 无法验证散列密码
- 8. 如何验证python中的散列?
- 9. 通过SHA1散列密码与MD5,SHA1和MD5
- 10. 如何使用SHA1对密码文件进行散列处理
- 11. 试图验证散列密码和验证登录pdo php
- 12. 屏幕验证,JPA验证和散列密码
- 13. 使用NetValidatePasswordPolicy验证以前散列密码的密码
- 14. 比较散列密码以验证密码是否匹配
- 15. 如何验证用户登录时的散列密码
- 16. 如何以编程方式验证散列ASP.NET服务密码?
- 17. 无法在Flask中验证散列密码
- 18. c#验证存储在SQL数据库中的散列密码
- 19. SHA256散列在javascript中的密码验证
- 20. vb.net,我如何验证SHA1哈希密码?
- 21. SHA1散列在Rails
- 22. 如何散列密码
- 23. 如何散列密码?
- 24. 使用SHA1散列加密NSString
- 25. 使用节点j无法验证Express中的散列密码
- 26. 我的登录脚本在验证散列密码时失败
- 27. 在cookies中散列密码
- 28. 如何在java中使用散列函数来散列密码?
- 29. 用Python验证密码
- 30. Python密码验证程序
我认为你应该做相反,哈希的一点是,你不能从它的纯文本plassword。计算密码中的散列并比较两个散列。 –
好的。这可以做到。 Python中是否有任何inbuild函数将普通文本转换为散列(sha1)格式?谢谢 – user1881957