86 lines
2.9 KiB
Markdown
86 lines
2.9 KiB
Markdown
## 更新日志
|
||
### 2.0 更新(June 9,2021)
|
||
- [FIX] SM2公钥压缩格式前缀修改
|
||
- [FIX]]国密tls部分bug修改
|
||
- [FIX]]SM4_gcm模式bug修改
|
||
- [New] 公私钥16进制格式导入导出
|
||
- [New] SM4加密可设置IV值
|
||
- [New] 国密tls与非国密自适应实现
|
||
|
||
|
||
### 1.4 更新(Sep 15,2020)
|
||
**破坏性更新**
|
||
- [FIX] SM2 生成私钥、签名及加密方法加入随机数,可使用外部随机数。
|
||
- [FIX] 公私钥及证书从pem格式[]byte数据中导入导出,不再从pem格式File文件导入导出。
|
||
- [FIX] SM2证书相关实现代码单独移至X509包中。
|
||
- [FIX] 代码优化,删除无用方法
|
||
- [New] SM4加密ecb、cbc模式实现
|
||
- [New] 国密tls实现移至该库gmtls包中
|
||
- [New] 国密tls实现使用双证书
|
||
|
||
### 1.2 更新(Feb 20, 2019)
|
||
|
||
- [NEW] 实现PKCS#7签名及验签
|
||
- [FIX] SM2 签名及验签方法完全遵循标准GM/T 0003系列,兼容CFCA Java-SDK
|
||
|
||
**破坏性更新,证书与之前版本不兼容**
|
||
|
||
### 1.1.1更新
|
||
- 新增以下函数支持用户其他信息<br>
|
||
SignDigitToSignData 将签名所得的大数r和s转换为签名的格式<br>
|
||
Sm2Sign 支持用户信息的签名<br>
|
||
Sm2Verify 支持用户信息的验签<br>
|
||
|
||
|
||
### 1.1.0更新:
|
||
- 改进新能,具体提升如下
|
||
 注:本次优化并不彻底,只是第一次尝试优化,后续有时间还会继续优化
|
||
```
|
||
old:
|
||
generate key:
|
||
BenchmarkSM2-4 1000 2517147 ns/op 1156476 B/op 11273 allocs/op
|
||
sign:
|
||
BenchmarkSM2-4 300 6297498 ns/op 2321890 B/op 22653 allocs/op
|
||
verify:
|
||
BenchmarkSM2-4 2000 8557215 ns/op 3550626 B/op 34627 allocs/op
|
||
encrypt:
|
||
BenchmarkSM2-4 2000 8304840 ns/op 3483113 B/op 33967 allocs/op
|
||
decrypt:
|
||
BenchmarkSM2-4 2000 5726181 ns/op 2321728 B/op 22644 allocs/op
|
||
new:
|
||
generate key:
|
||
BenchmarkSM2-4 5000 303656 ns/op 2791 B/op 41 allocs/op
|
||
sign:
|
||
BenchmarkSM2-4 2000 652465 ns/op 8828 B/op 133 allocs/op
|
||
verify:
|
||
BenchmarkSM2-4 1000 2004511 ns/op 122709 B/op 1738 allocs/op
|
||
encrpyt:
|
||
BenchmarkSM2-4 1000 1984419 ns/op 118560 B/op 1687 allocs/op
|
||
decrypt:
|
||
BenchmarkSM2-4 1000 1725001 ns/op 118331 B/op 1679 allocs/op
|
||
```
|
||
|
||
### 1.0.1 更新:
|
||
- 添加全局的sbox改进sm4效率(by https://github.com/QwertyJack)
|
||
|
||
|
||
### 1.0 更新:
|
||
- 添加以下oid<br>
|
||
SM3WithSM2 1.2.156.10197.1.501<br>
|
||
SHA1WithSM2 1.2.156.10197.1.502<br>
|
||
SHA256WithSM2 1.2.156.10197.1.503<br>
|
||
|
||
- x509生成的证书如今可以使用SM3作为hash算法
|
||
|
||
- 引入了以下hash算法
|
||
RIPEMD160<br>
|
||
SHA3_256<br>
|
||
SHA3_384<br>
|
||
SHA3_512<br>
|
||
SHA3_SM3<br>
|
||
用户需要自己安装golang.org/x/crypto
|
||
|
||
|
||
|
||
|