失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 国密算法:利用python进行sm3 hash算法 计算hash值 国密算法库gmssl的使用

国密算法:利用python进行sm3 hash算法 计算hash值 国密算法库gmssl的使用

时间:2019-05-11 09:53:05

相关推荐

国密算法:利用python进行sm3 hash算法 计算hash值 国密算法库gmssl的使用

本篇介绍利用gmssl算法库中的sm3模块来进行hash值的计算。

一 sm3 hash算法的特点:

sm3用于计算一个消息的hash值;几乎无法被逆向,即通过hash值无法推断出原始消息;sm3类似于md5,但是比md5安全;sm3是国密算法。

二 sm3算法举例:

import binascii#导入国密算法sm4包from gmssl import sm4,sm3def sm3_hash(message:bytes):"""国密sm3加密:param message: 消息值,bytes类型:return: 哈希值"""msg_list = [i for i in message]hash_hex = sm3.sm3_hash(msg_list)print(hash_hex)# bytes2hex(hash_hex);hash_bytes = bytes.fromhex(hash_hex)print(hash_bytes)# return bytes.hash# return hashdef bytes2hex(bytesData):hex = binascii.hexlify(bytesData) print(hex)print(hex.decode())return hex# main if __name__ == '__main__':print("main begin");message = b"123456" # bytes类型sm3_hash(message);

运行结果:

% python3 sm3_t1.py

main begin

207cf410532f92a47dee245ce9b11ff71f578ebd763eb3bbea44ebd043d018fb

b’ |\xf4\x10S/\x92\xa4}\xee$\\xe9\xb1\x1f\xf7\x1fW\x8e\xbdv>\xb3\xbb\xeaD\xeb\xd0C\xd0\x18\xfb’

如果觉得《国密算法:利用python进行sm3 hash算法 计算hash值 国密算法库gmssl的使用》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。