本文實(shí)例講述了Python基于hashlib模塊的文件MD5一致性加密驗(yàn)證。分享給大家供大家參考,具體如下:
使用hashlib模塊,可對(duì)文件MD5一致性加密驗(yàn)證:
#python 檢測(cè)文件MD5值#python version 2.6import hashlibimport os,sys#簡(jiǎn)單的測(cè)試一個(gè)字符串的MD5值def GetStrMd5(src): m0=hashlib.md5() m0.update(src) print m0.hexdigest() pass#大文件的MD5值def GetFileMd5(filename): if not os.path.isfile(filename): return myhash = hashlib.md5() f = file(filename,'rb') while True: b = f.read(8096) if not b : break myhash.update(b) f.close() return myhash.hexdigest()def CalcSha1(filepath): with open(filepath,'rb') as f: sha1obj = hashlib.sha1() sha1obj.update(f.read()) hash = sha1obj.hexdigest() print(hash) return hashdef CalcMD5(filepath): with open(filepath,'rb') as f: md5obj = hashlib.md5() md5obj.update(f.read()) hash = md5obj.hexdigest() print(hash) return hashif __name__ == "__main__": if len(sys.argv)==2 : hashfile = sys.argv[1] if not os.path.exists(hashfile): hashfile = os.path.join(os.path.dirname(__file__),hashfile) if not os.path.exists(hashfile): print("cannot found file") else CalcMD5(hashfile) else: CalcMD5(hashfile) #raw_input("pause") else: print("no filename")PS:關(guān)于加密解密感興趣的朋友還可以參考本站在線工具:
文字在線加密解密工具(包含AES、DES、RC4等):
http://tools.jb51.net/password/txt_encode
MD5在線加密工具:
http://tools.jb51.net/password/CreateMD5Password
在線散列/哈希算法加密工具:
http://tools.jb51.net/password/hash_encrypt
在線MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:
http://tools.jb51.net/password/hash_md5_sha
在線sha1/sha224/sha256/sha384/sha512加密工具:
http://tools.jb51.net/password/sha_encode
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python加密解密算法與技巧總結(jié)》、《Python編碼操作技巧總結(jié)》、《Python文件與目錄操作技巧匯總》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
新聞熱點(diǎn)
疑難解答
圖片精選