2024-06-16 10:58:53 发布
网友
在PHP中,我有一个接一个地调用以下函数:
$chal = pack('H32',$challenge); $word = md5("\0" . $word . $chal);
我希望在Django python中也这样做。 你那边有什么建议吗?在
这可能对how-can-i-unpack-binary-hex-formatted-data-in-python有所帮助
这种方法产生与原始php相同的结果(至少在x86_64上)。在
import hashlib import struct cha1 = struct.pack('16B', *[int(c, 16) for c in (challenge[i:i+2] for i in xrange(0, len(challenge), 2))]) word = hashlib.md5('\0%s%s' % (word, cha1)).hexdigest()
Python的结构包()方法没有4位大小(单个十六进制字符)的格式说明符,这似乎大致就是php的pack()所做的。因此,您必须将原始的质询字符串分成2个字符的块,并将每个块解释为一个十六进制八位字节。在
这可能对how-can-i-unpack-binary-hex-formatted-data-in-python有所帮助
这种方法产生与原始php相同的结果(至少在x86_64上)。在
Python的结构包()方法没有4位大小(单个十六进制字符)的格式说明符,这似乎大致就是php的pack()所做的。因此,您必须将原始的质询字符串分成2个字符的块,并将每个块解释为一个十六进制八位字节。在
相关问题 更多 >
编程相关推荐