use*_*394 1 python encryption cryptography
我对python和密码学非常感兴趣,我想知道在python中破解哈希的最简单方法是什么.
我想构建一个小的python脚本,可以破解这个哈希:21232f297a57a5a743894a0e4a801fc3这只是'管理员'.
我需要通过什么过程来猜测这个哈希代表什么?
我已经阅读了关于md5的内容,此时我刚刚开始学习密码学背后的方法,但他们也进入了深入的计算机科学,这是我目前还不了解的.
我在这里做了一些研究:http://nsfsecurity.pr.erau.edu/crypto/md5.html
您可以像这样输出十六进制md5:
>>> from hashlib import md5
>>> md5('admin').hexdigest()
'21232f297a57a5a743894a0e4a801fc3'
Run Code Online (Sandbox Code Playgroud)
如果你有一个单词列表,你可以逐个尝试,如果他们的md5与你想要的匹配,则输出.(这被称为字典攻击)
>>> words = 'test', 'alex', 'steve', 'admin'
>>> for word in words:
... if md5(word).hexdigest() == '21232f297a57a5a743894a0e4a801fc3':
... print word
... break
...
admin
Run Code Online (Sandbox Code Playgroud)
如果您真的想破解MD5,那么GPU上的结果会更好 - 尝试像OCLHashCat这样的工具