Closed shentu521 closed 1 year ago
sm2_encrypt,会把加密后的数据存储为der, SM2_CIPHERTEXT 结构体 typedef struct { SM2_POINT point; uint8_t hash[32]; uint8_t ciphertext_size; uint8_t ciphertext[SM2_MAX_PLAINTEXT_SIZE]; } SM2_CIPHERTEXT; 分别对应的是c1,c2,c3吗?
C1是生成随机数的计算出的椭圆曲线点,C2是密文数据,C3是SM3的摘要值
再使用官方的demo中我们发现,使用: sm2_encrypt 通过公钥以及加密的msg,得到结果后,然后经过base64编码,得到的数据会有\r\n字符串这样的字符串经过GB35114协议的传输,会导致某些设备无法解析头部,特别是使用pjsip开源库的项目.
目前Base64编码会自动生成换行
再使用官方的demo中我们发现,使用: sm2_encrypt 通过公钥以及加密的msg,得到结果后,然后经过base64编码,得到的数据会有\r\n字符串这样的字符串经过GB35114协议的传输,会导致某些设备无法解析头部,特别是使用pjsip开源库的项目.