欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

课程表第 1 周进度 (snowland-smx) - snowland-smx 实现 SM

最编程 2024-05-01 17:20:47
...

使用python3进入python环境

a. 密钥生成

from pysmx.SM2 import generate_keypair
pk, sk = generate_keypair()

b. 签名

from pysmx.SM2 import Sign
len_para = 64
sig = Sign("你好", sk, '12345678abcdef', len_para)

c. 验签

from pysmx.SM2 import Verify
len_para = 64
Verify(sig, "你好", pk, len_para)

d. 加密

from pysmx.SM2 import Encrypt
e = b'hello'
len_para = 64
C = Encrypt(e, pk, len_para, 0)  # 此处的1代表e是否是16进制字符串

e. 解密

from  pysmx.SM2 import Decrypt
len_para = 64
m = Decrypt(C, sk, len_para)