2013-03-24 131 views

回答

3

它实际上是非常非常简单的使用hashlibhere

import hashlib,binascii 
hash = hashlib.new('md4', "password".encode('utf-16le')).digest() 
print binascii.hexlify(hash) 

或者,你还可以使用python-ntlmhere

+2

一个稍微简单的形式 - '进口hashlib 打印(hashlib.new( 'MD4', “密码” .encode( 'UTF-16LE'))hexdigest()。)' – user1720897 2015-12-25 09:05:57

2

您可以使用hashlib和binascii模块来计算您的NTLM哈希值:

import binascii, hashlib 
input_str = "SOMETHING_AS_INPUT_TO_HASH" 
ntlm_hash = binascii.hexlify(hashlib.new('md4', input_str.encode('utf-16le')).digest()) 
print ntlm_hash 
+0

为什么不是这个? http://pythonhosted.org/passlib/lib/passlib.hash.nthash.html已经不熟悉NTLM哈希。 – CppLearner 2013-03-24 20:50:57

+0

'passlib'是一个单独的python包,但'binascii'和'hashlib'是标准python库的一部分。不要说你不应该使用'passlib',这是作者的偏好。还有其他类似于['python-ntlm'](https://pypi.python.org/pypi/python-ntlm)的库。 – Tuxdude 2013-03-24 20:57:04

+0

谢谢。有趣的是OP如何检查其他人。他只是从一个在线源代码复制和粘贴,你是第一个没有得到检查。 – CppLearner 2013-03-25 04:35:26