我希望创建一个简单的暴力密码破解器,它将散列来自stdin的输入,并将结果与现有散列(对于我的证券类)进行比较。在
不过,我从来没有做过任何涉及哈希的实际编程,因为到目前为止,它主要是概念/数学部分。有没有一种(相对)容易学习的语言,它有一个简单的hash命令?我的一个朋友推荐了Python,但我不确定在一两天内我是否还能找到其他东西。我懂一点C语言,但是散列似乎比较复杂,需要额外的库。在
另外,对于实际的哈希命令,任何语法上的帮助都是值得的。程序本身需要能够支持奇数散列方法,比如将一个值散列两次或使用不变的set salt,并且能够从stdin获取输入(用于johntheripper等程序)。在
假设只要求使用散列函数,而不是自己实现散列,Python's hashlib module有md5和sha1的例程:
[为python3更新,其中
hashlib
需要字节,而不是字符串:][旧版Python 2版本:]
^{pr2}$我认为python是一个很好的选择。{a2很容易使用^和}加密原语。如果您已经知道一些C,那么可能只是将其与openssl libraries一起使用会更容易理解。在任何情况下,为您的首选语言(尤其是加密类)学习一个加密库通常是值得的,因为最终您将希望使用一些您不想手工编写代码的东西,并确信它是正确实现的。在
至于实际hash命令的语法,下面是python中使用PyCrypto获取SHA256哈希的示例(使用python3.2):
产生输出
^{pr2}$python中的
hashlib
库包含以下内容:详情请查阅: http://docs.python.org/release/3.1.3/library/hashlib.html
^{pr2}$相关问题 更多 >
编程相关推荐