python写一个sm3 hash加密算法代码
代码语言:python
所属分类:其他
代码描述:python写一个sm3 hash加密算法代码
代码标签: python sm3 hash 加密 算法 代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
# -*- coding:utf-8 -*- """ :author: liyebei :date: 2022-08-06 :description: SM3加密算法。 适用于python2.7+, python3.5+(用python3时暂不支持对中文的加密) """ # 初始值 iv = 0x7380166f4914b2b9172442d7da8a0600a96f30bc163138aae38dee4db0fb0e4e MAX = 2 ** 32 def str2bin(msg): """ 字符串转比特串 :param msg: 字符串 :return: 转换之后的比特串 """ l = len(msg) s_dec = 0 for m in msg: s_dec = s_dec << 8 s_dec += ord(m) msg_bin = bin(s_dec)[2:].zfill(l * 8) return msg_bin def int2bin(a, k): """ 将整数转化为比特串 :param a: 待转化的整数 :param k: 比特串的长度 :return: 转化后长度为k的比特串 """ return bin(a)[2:].zfill(k) def int2hex(a, k): """ 整数转化为16进制的字符串,前补0补齐k位数 :param a: 整数 :param k: 补齐后的字符串长度 :return: 转化后的16进制形式字符串 """ return hex(a)[2:].zfill(k) def bin2hex(a, k): """ 比特串转化为16进制的字符串,前补0补齐k位数 :param a: 待转化的比特串 :param k: 补齐后的字符串长度 :return: 长.........完整代码请登录后点击上方下载按钮下载查看
网友评论0