我需要在php中用python编写一个md5哈希,并试图让日期给出正确的md5哈希值。两种语言都打印完全相同的日期,但如果该日期被哈希,则哈希值不同。
** md5哈希需要匹配原始的php哈希(需要对python进行更改而不是php)
md5.py
import hashlib, datetime
timestamp = datetime.datetime.now() - datetime.timedelta(hours=6)
timestamp1 = timestamp.strftime("%Y-%m-%d %H:%M:%S")
print(timestamp1)
md5_digest = hashlib.md5(timestamp1.encode()).hexdigest()
print (md5_digest)
md5.php
<?php
$strDatetime = date("Y-m-d H:i:s");
function get_md5_hash($strDatetime) {
return md5(strtotime($strDatetime));
}
print("$strDatetime");
print get_md5_hash("$strDatetime", "$strAuthWindow", "$strSalt");
?>
这是我得到的结果:
2018-04-18 13:24:01 36bae8f24429309f147f3bd6d8a1e0c9
2018-04-18 13:24:01 0eab3b000e3d831a57f9e7b77f136900
答案 0 :(得分:2)
在Python中,您可以对时间戳字符串进行哈希处理。在PHP中,您调用strtotime()
并将字符串转换为整数UNIX时间戳。删除该电话。