比较完整的(亲测有效)
from gmssl.sm4 import CryptSM4, SM4_ENCRYPT
def password_encryption(password_data, key):
'''
sm4加密
'''
value = bytes(password_data, encoding='utf-8') # 字符串转bytes类型
mk = bytes.fromhex(key) # 字符串转bytes类型
sm4 = CryptSM4() # 初始化
sm4.set_key(mk, SM4_ENCRYPT) # 密钥及模式
return bytes.hex(sm4.crypt_ecb(value)) # 返回16进制
网友评论