Closed horshine closed 5 years ago
env: python2.7 ide: pycharm2018.2.3
import base64 import binascii from gmssl import sm2, func
private_key = '00B9AB0B828FF68872F21A837FC303668428DEA11DCD1B24429D0C99E24EED83D5' public_key = 'B9C9A6E04E9C91F7BA880429273747D7EF5DDEB0BB2FF6317EB00BEF331A83081A6994B8993F3F5D6EADDDB81872266C87C018FB4162F5AF347B483E24620207' sm2_crypt = sm2.CryptSM2( public_key=public_key, private_key=private_key)
data = b"111" enc_data = sm2_crypt.encrypt(data) print(len(enc_data))
运行结果: Traceback (most recent call last): File "N:/09_tmpcode/scada-tools-master/sm234.py", line 14, in enc_data = sm2_crypt.encrypt(data) File "C:\Anaconda2\lib\site-packages\gmssl\sm2.py", line 190, in encrypt msg = data.hex() # 消息转化为16进制字符串 AttributeError: 'str' object has no attribute 'hex'
Process finished with exit code 1
麻烦帮忙看看,谢谢。
python版本过低,要用3.5以上的
@horshine
感谢 @duanhongyi
env: python2.7 ide: pycharm2018.2.3
coding:utf-8
import base64 import binascii from gmssl import sm2, func
16进制的公钥和私钥
private_key = '00B9AB0B828FF68872F21A837FC303668428DEA11DCD1B24429D0C99E24EED83D5' public_key = 'B9C9A6E04E9C91F7BA880429273747D7EF5DDEB0BB2FF6317EB00BEF331A83081A6994B8993F3F5D6EADDDB81872266C87C018FB4162F5AF347B483E24620207' sm2_crypt = sm2.CryptSM2( public_key=public_key, private_key=private_key)
data = b"111" enc_data = sm2_crypt.encrypt(data) print(len(enc_data))
运行结果: Traceback (most recent call last): File "N:/09_tmpcode/scada-tools-master/sm234.py", line 14, in
enc_data = sm2_crypt.encrypt(data)
File "C:\Anaconda2\lib\site-packages\gmssl\sm2.py", line 190, in encrypt
msg = data.hex() # 消息转化为16进制字符串
AttributeError: 'str' object has no attribute 'hex'
Process finished with exit code 1
麻烦帮忙看看,谢谢。