tongsuopy 1.0.1

Creator: bradpython12

Last updated:

0 purchases

TODO
Add to Cart

Description:

tongsuopy 1.0.1

tongsuo-python-sdk
Tongsuo-Python-SDK基于Tongsuo密码库, 为Python应用提供密码学原语和安全传输协议的支持,目前以支持中国商用密码算法和安全协议为主。
SM2签名和验签,详见sm2_sign_verify.py
from tongsuopy.crypto import hashes, serialization
from tongsuopy.crypto.asymciphers import ec

msg = b"hello"
key = ec.generate_private_key(ec.SM2())

pem = key.public_key().public_bytes(
encoding=serialization.Encoding.PEM,
format=serialization.PublicFormat.SubjectPublicKeyInfo,
)
pubkey = serialization.load_pem_public_key(pem)

signature = key.sign(msg, ec.ECDSA(hashes.SM3()))
pubkey.verify(signature, msg, ec.ECDSA(hashes.SM3()))

SM3杂凑,详见sm3.py
from tongsuopy.crypto import hashes

h = hashes.Hash(hashes.SM3())
h.update(b"abc")
res = h.finalize()

SM4-CBC加密,详见sm4_cbc.py
from tongsuopy.crypto.ciphers import Cipher, algorithms, modes

c = Cipher(algorithms.SM4(key), modes.CBC(iv))
enc = c.encryptor()
ciphertext = enc.update(plaintext)
ciphertext += enc.finalize()

SM4-GCM加密,详见sm4_gcm.py
from tongsuopy.crypto.ciphers import Cipher, algorithms, modes

c = Cipher(algorithms.SM4(key), modes.GCM(iv))

enc = c.encryptor()
enc.authenticate_additional_data(aad)
ciphertext = enc.update(plaintext)
ciphertext += enc.finalize()

安装
pip install tongsuopy

要求Python >= 3.6。
功能特性

支持SM2签名和验签
支持SM3杂凑算法
支持SM4加解密,包括ECB、CBC、OFB、CFB、CTR模式
支持SM4-GCM和SM4-CCM
[TODO] TLCP协议支持

交流群
欢迎加入铜锁社区交流群,使用钉钉扫描二维码或者钉钉内搜索群号44810299。

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product:

Customer Reviews

There are no reviews.