duanhongyi / gmssl

a python crypto for sm2/sm3/sm4
MIT License
473 stars 139 forks source link

sm2加密中public_key的bug #77

Closed wlccgp3 closed 6 months ago

wlccgp3 commented 10 months ago

源码中的CryptSM2

self.public_key = public_key.lstrip("04") if public_key.startswith("04") else public_key

python的lstrip,并不是去掉前缀,是所有可能的组合,如果是0400fab会变成fab,而且也没对self.public_key长度强校验,导致也能出结果