gmssl icon indicating copy to clipboard operation
gmssl copied to clipboard

a python crypto for sm2/sm3/sm4

Results 43 gmssl issues
Sort by recently updated
recently updated
newest added

![image](https://user-images.githubusercontent.com/48348945/201886237-90759bed-ddb5-42d6-ae6a-39cdef7f43b6.png)

1. 使用python sm2 加密加密,加密bytes 直接写入文件。 data = b'test1111' sm2_crypt = sm2.CryptSM2(public_key=public_key, private_key="", asn1=True) enc_data = sm2_crypt.encrypt(data) dataBase64 = base64.b64encode(enc_data) 3. java 程序读取文件bytes,使用java的bouncycastle 进行解密,解密失败是否能解决。 byte[] encoded = Base64.decode(dataBase64) byte[] decryptedString2 =...

粗浅的补充了0填充方式,可以提交不

参照[OSCCA Extensions For OpenPGP](https://datatracker.ietf.org/doc/html/draft-ribose-openpgp-oscca-01)和[信息安全技术 SM2密码算法使用规范](http://www.gb688.cn/bzgk/gb/newGbInfo?hcno=2127A9F19CB5D7F20D17D334ECA63EE5)的要求,SM2的加解密和签名验签都需要做ASN.1编解码。

用04开头的未压缩公钥进行加密后。再用官方的gmssl是无法解开的

不管是从java生成的秘钥还是利用支付宝助手生成的国密秘钥,或者利用gmssl工具或者opensll生成的秘钥, 格式跟你的例子完全不一样.你的公私钥是从哪里获取的?在sm2加密跟解密都能进行,但是解密出来的结果跟原始结果不一样. 然而用你给的公私钥例子是可以得到结果一致的. private_key= "aqSqeYxpKPGhCGG0e+B5MCeT/uEcihdFpyu67gr6FF/gzbIvgVl9CuY6VoNXNxd4i1hYPHHoqq81fTwtGc+TTLWdGQPHLHrSaONX+YiQLcXRfHsET61ioI045uaHh5Gy3jzzBPwXSVTzqi0o11+SeceQq1HawAZvvhJ9fz9fVGw=" public_key="MFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAEEJXvWKS6D0znM9rL2a7vHxT1z/zMWLvS2fYs/eqkr0S5KjQFMr0ToIDDn1/GUmbtgHBa6GF4TL7t+sE0ppzUkw==" private_key=base64.b64decode(private_key).hex() # 转16进制 public_key=base64.b64decode(public_key).hex()