update doc

This commit is contained in:
Sun Yimin 2024-11-18 17:23:59 +08:00 committed by GitHub
parent 34a6ad2fc0
commit 1aefd6f1f6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 3 additions and 1 deletions

View File

@ -56,7 +56,8 @@ SADK 3.2之后的版本支持下列SM2密文格式(encryptedType)
### SM2数字信封加解密
互操作性问题主要出在:
1. 数据对称加密所用密钥的SM2密文格式。
2. 对称加密算法的OID。```public static final ASN1ObjectIdentifier id_sm4_CBC = new ASN1ObjectIdentifier("1.2.156.10197.1.104");```
2. 对称加密算法的OID。```public static final ASN1ObjectIdentifier id_sm4_CBC = new ASN1ObjectIdentifier("1.2.156.10197.1.104");```。
3. 如果需要用本软件库去解密CFCA生成的SM2数字信封目前会有问题。CFCA实现不符合《GB/T 35275-2017信息安全技术 SM2密码算法加密签名消息语法规范》它的**RecipientInfo**默认使用SubjectKeyIdentifier而不是IssuerAndSerialNumber。在SADK 3.7.1.0中需要指定recipientPolicyType=20从证书扩展中获取SubjectKeyID找不到抛异常1根据公钥数据直接计算SubjectKeyID2使用证书的IssuerAndSerialNumber才会使用IssuerAndSerialNumber。正常情况下只有CA证书才一定会在证书扩展中有SubjectKeyID信息。
#### SADK 3.2之前版本
1. 数据对称加密密钥的密文格式为**C1C2C3 格式不带0x04这个点非压缩标识**。这个不符合《GM/T 0010-2012 SM2密码算法加密签名消息语法规范》以及《GB/T 35275-2017 信息安全技术 SM2密码算法加密签名消息语法规范》。

View File

@ -241,6 +241,7 @@ SM4分组密码算法的软件高效实现不算CPU指令支持的话
* S盒和L转换预计算本软件库纯Go语言实现采用该方法
* SIMD并行处理并行查表
* SIMD并行处理借助CPU的AES指令本软件库采用该方法
* SIMD并行处理借助CPU的GFNI指令部分新AMD64 CPU架构支持该指令本软件库尚未实现[SM4 with GFNI](https://github.com/emmansun/gmsm/wiki/SM4-with-GFNI)
* SIMD并行处理位切片(bitslicing)[参考实现](https://github.com/emmansun/sm4bs)
当然这些与有CPU指令支持的AES算法相比性能差距依然偏大要是工作模式不支持并行差距就更巨大了。