保持更改为不同的哈希 md5
Keep change to different hash md5
import ftplib
import hashlib
import httplib
import pytz
import datetime
localtime = datetime.datetime.now(pytz.timezone('Asia/Singapore')).isoformat()
cam = "hi5"
lscam = localtime + cam
ftp = ftplib.FTP('localhost','username','password')
ftp.cwd('Server')
m=hashlib.md5()
file = open('Desktop/frame00000.png','rb')
m.update(lscam)
dd=m.hexdigest()
ftp.storbinary('STOR '+dd, file)
file.close()
ftp.quit()
我如何为 "lscam" 生成实际的 MD5 散列,因为上面的代码一直给我 "weird" md5 散列码,而这甚至不是 "lscam" 的实际散列。有人可以帮忙吗?
您的 lscam
变量是等格式 datetime.datetime.now()
和 cam
.
的串联
因为 now()
显然 returns 每次你 运行 脚本的值不同,md5 每次都是不同的。
但是,如果您使用相同的 lscam
值计算两次哈希,您将得到相同的结果(如预期的那样)。
小例子:
>>> import datetime
>>> import pytz
>>> import hashlib
>>> now = datetime.datetime.now(pytz.timezone('Asia/Singapore')).isoformat()
>>> later = datetime.datetime.now(pytz.timezone('Asia/Singapore')).isoformat()
>>> m1 = hashlib.md5()
>>> m2 = hashlib.md5()
>>> m1.update(now)
>>> m2.update(later)
>>> m1.digest() == m2.digest()
False
import ftplib
import hashlib
import httplib
import pytz
import datetime
localtime = datetime.datetime.now(pytz.timezone('Asia/Singapore')).isoformat()
cam = "hi5"
lscam = localtime + cam
ftp = ftplib.FTP('localhost','username','password')
ftp.cwd('Server')
m=hashlib.md5()
file = open('Desktop/frame00000.png','rb')
m.update(lscam)
dd=m.hexdigest()
ftp.storbinary('STOR '+dd, file)
file.close()
ftp.quit()
我如何为 "lscam" 生成实际的 MD5 散列,因为上面的代码一直给我 "weird" md5 散列码,而这甚至不是 "lscam" 的实际散列。有人可以帮忙吗?
您的 lscam
变量是等格式 datetime.datetime.now()
和 cam
.
因为 now()
显然 returns 每次你 运行 脚本的值不同,md5 每次都是不同的。
但是,如果您使用相同的 lscam
值计算两次哈希,您将得到相同的结果(如预期的那样)。
小例子:
>>> import datetime
>>> import pytz
>>> import hashlib
>>> now = datetime.datetime.now(pytz.timezone('Asia/Singapore')).isoformat()
>>> later = datetime.datetime.now(pytz.timezone('Asia/Singapore')).isoformat()
>>> m1 = hashlib.md5()
>>> m2 = hashlib.md5()
>>> m1.update(now)
>>> m2.update(later)
>>> m1.digest() == m2.digest()
False