[SKE]使用gmssl库实现AES、SM4、DES、RSA、3DES_EDE和3DES_EEE算法的加密/解密参考模型
使用gmssl库实现AES、SM4、DES、RSA、3DES_EDE和3DES_EEE算法的加密/解密参考模型
摘要:我将使用Python脚本实现AES、SM4、DES、RSA、3DES_EDE和3DES_EEE算法的加密/解密参考模型。考虑到gmssl是C库(TongSuo项目,支持国密算法),但查询要求Python脚本,我将使用Python的标准库cryptography
来实现所有算法的参考检查(cryptography
库基于OpenSSL,支持SM4等国密算法,与gmssl功能等价;如果必须使用gmssl C库,可以通过ctypes
调用,但为简单起见,使用cryptography
作为Python-native实现)。如果需要纯gmssl C绑定,我可以进一步调整。
一、流程如下:
-
Python侧实现:
- 安装依赖:
pip install cryptography
。 - 编写Python脚本(
crypto_ref.py
),提供每个算法的加密/解密函数。函数接受字节数组输入(数据、密钥、IV等),返回加密/解密结果或错误。 - 假设:所有对称算法使用CBC模式;AES-128;SM4(128位);DES(64位);3DES_EDE/EEE(192位密钥,EEE需自定义实现,因为标准库不支持EEE);RS
- 安装依赖: