python的gmssl库使用教程
时间: 2023-10-17 11:05:54 浏览: 104
gmssl 是 Python 的一个加密模块,支持多种密码算法和协议,比如 SM2、SM3、SM4、HMAC、RSA 等。它十分方便且易于使用,下面是使用 gmssl 库的教程:
1. 安装 gmssl
使用 pip 安装 gmssl:
```
pip install gmssl
```
2. 加密与解密
使用 gmssl 加密和解密数据的步骤如下:
```python
from gmssl import sm4
# 生成 SM4 密钥
key = '1234567890abcdef'
sm4_crypt = sm4.SM4Crypt()
sm4_crypt.set_key(key.encode(), sm4.SM4_ENCRYPT)
# 加密数据
plaintext = 'Hello, world!'
ciphertext = sm4_crypt.crypt_ecb(plaintext.encode())
# 解密数据
sm4_crypt.set_key(key.encode(), sm4.SM4_DECRYPT)
plaintext = sm4_crypt.crypt_ecb(ciphertext)
print(plaintext.decode())
```
3. 签名与验证
使用 gmssl 进行签名和验证的步骤如下:
```python
from gmssl import sm2, func
# 生成 SM2 密钥
private_key = '1234567890abcdef'
public_key = sm2.SM2PublicKey.from_private_key(private_key.encode())
signer = sm2.SM2Signer(private_key.encode(), public_key)
# 签名数据
plaintext = 'Hello, world!'
signature = signer.sign(plaintext.encode())
# 验证签名
verifier = sm2.SM2Verifier(public_key)
print(verifier.verify(plaintext.encode(), signature))
```
以上就是 gmssl 库的使用教程,希望对你有所帮助。
阅读全文