Skip to content

Commit 41a8d3f

Browse files
committed
重构版本
1 parent e45d7b8 commit 41a8d3f

File tree

5 files changed

+267
-122
lines changed

5 files changed

+267
-122
lines changed

FUTURE.md

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,22 @@
11
## ✈️ 未来版本的新特性 (Features in future versions)
22

3-
### v0.4.x
3+
### v0.5.x
44

5-
* [ ] 支持 SM3 国标算法
6-
* [ ] 支持 SM4 国标算法
75
* [ ] 支持 ECC key 生成
86
* [ ] 支持 ECC 非对称加密算法
97
* [ ] 支持更多的散列算法
108

9+
### v0.4.x
10+
11+
* [ ] 支持 SM3 国标算法
12+
* [ ] 支持 SM4 国标算法
13+
* [ ] 增加 cmd 包,提供二进制 cli 使用
14+
1115
### v0.3.x
1216

1317
* [x] 简化代码设计,提高代码可读性和可维护性
14-
* [ ] 完善注释和单元测试,提升覆盖率到 90%
18+
* [x] 初步完善注释和单元测试,收尾重构工作
19+
* [ ] 继续完善单元测试,提升覆盖率到 90%
1520
* [ ] 支持 GCM 加解密模式
1621

1722
### v0.2.x

HISTORY.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
## 📜 历史版本的特性介绍 (Features in old versions)
22

3+
### v0.3.2
4+
5+
> 此版本发布于 2023-06-24
6+
7+
* 重构版本
8+
39
### v0.3.1-alpha
410

511
> 此版本发布于 2023-06-23

README.en.md

Lines changed: 76 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -47,59 +47,79 @@ goos: darwin
4747
goarch: amd64
4848
cpu: Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz
4949
50-
BenchmarkMD5-12 7447408 156.3 ns/op 112 B/op 2 allocs/op
51-
BenchmarkSHA1-12 6629499 184.2 ns/op 136 B/op 2 allocs/op
52-
BenchmarkSHA224-12 4768708 249.6 ns/op 160 B/op 2 allocs/op
53-
BenchmarkSHA256-12 4755806 256.2 ns/op 160 B/op 2 allocs/op
54-
BenchmarkSHA384-12 3717706 329.8 ns/op 272 B/op 2 allocs/op
55-
BenchmarkSHA512-12 3679125 325.5 ns/op 288 B/op 2 allocs/op
56-
BenchmarkHMAC-12 1215033 988.4 ns/op 512 B/op 6 allocs/op
57-
BenchmarkCRC32IEEE-12 17037747 70.4 ns/op 24 B/op 2 allocs/op
58-
BenchmarkCRC64ISO-12 26904604 44.8 ns/op 8 B/op 1 allocs/op
59-
BenchmarkCRC64ECMA-12 26632101 44.4 ns/op 8 B/op 1 allocs/op
60-
BenchmarkFnv32-12 41738200 28.2 ns/op 8 B/op 1 allocs/op
61-
BenchmarkFnv32a-12 42062208 29.0 ns/op 8 B/op 1 allocs/op
62-
BenchmarkFnv64-12 39065052 29.9 ns/op 8 B/op 1 allocs/op
63-
BenchmarkFnv64a-12 39740802 29.9 ns/op 8 B/op 1 allocs/op
64-
BenchmarkFnv128-12 23474830 50.2 ns/op 16 B/op 1 allocs/op
65-
BenchmarkFnv128a-12 24201123 50.3 ns/op 16 B/op 1 allocs/op
66-
67-
BenchmarkDESEncryptWithECB-12 351558 3444 ns/op 512 B/op 3 allocs/op
68-
BenchmarkDESEncryptWithCBC-12 334164 3668 ns/op 608 B/op 6 allocs/op
69-
BenchmarkDESEncryptWithCFB-12 352360 3566 ns/op 352 B/op 5 allocs/op
70-
BenchmarkDESEncryptWithOFB-12 148867 8146 ns/op 856 B/op 5 allocs/op
71-
BenchmarkDESEncryptWithCTR-12 138829 8547 ns/op 856 B/op 5 allocs/op
72-
BenchmarkDESDecryptWithECB-12 356511 3427 ns/op 272 B/op 2 allocs/op
73-
BenchmarkDESDecryptWithCBC-12 327507 3664 ns/op 368 B/op 5 allocs/op
74-
BenchmarkDESDecryptWithCFB-12 345454 3552 ns/op 352 B/op 5 allocs/op
75-
BenchmarkDESDecryptWithOFB-12 145267 8183 ns/op 856 B/op 5 allocs/op
76-
BenchmarkDESDecryptWithCTR-12 144640 8451 ns/op 856 B/op 5 allocs/op
77-
BenchmarkTripleDESEncryptWithECB-12 131902 9259 ns/op 768 B/op 3 allocs/op
78-
BenchmarkTripleDESEncryptWithCBC-12 126849 9468 ns/op 864 B/op 6 allocs/op
79-
BenchmarkTripleDESEncryptWithCFB-12 130987 9276 ns/op 608 B/op 5 allocs/op
80-
BenchmarkTripleDESEncryptWithOFB-12 57150 20805 ns/op 1112 B/op 5 allocs/op
81-
BenchmarkTripleDESEncryptWithCTR-12 55443 21344 ns/op 1112 B/op 5 allocs/op
82-
BenchmarkTripleDESDecryptWithECB-12 132991 9236 ns/op 528 B/op 2 allocs/op
83-
BenchmarkTripleDESDecryptWithCBC-12 117877 9483 ns/op 624 B/op 5 allocs/op
84-
BenchmarkTripleDESDecryptWithCFB-12 129415 9064 ns/op 608 B/op 5 allocs/op
85-
BenchmarkTripleDESDecryptWithOFB-12 56397 20979 ns/op 1112 B/op 5 allocs/op
86-
BenchmarkTripleDESDecryptWithCTR-12 56103 21694 ns/op 1112 B/op 5 allocs/op
87-
BenchmarkAESEncryptWithECB-12 2376924 506 ns/op 960 B/op 6 allocs/op
88-
BenchmarkAESEncryptWithCBC-12 1704799 699 ns/op 1072 B/op 9 allocs/op
89-
BenchmarkAESEncryptWithCFB-12 1890339 632 ns/op 816 B/op 8 allocs/op
90-
BenchmarkAESEncryptWithOFB-12 1000000 1029 ns/op 1312 B/op 8 allocs/op
91-
BenchmarkAESEncryptWithCTR-12 979789 1186 ns/op 1312 B/op 8 allocs/op
92-
BenchmarkAESDecryptWithECB-12 2811610 429 ns/op 720 B/op 5 allocs/op
93-
BenchmarkAESDecryptWithCBC-12 2013831 613 ns/op 832 B/op 8 allocs/op
94-
BenchmarkAESDecryptWithCFB-12 1935090 625 ns/op 816 B/op 8 allocs/op
95-
BenchmarkAESDecryptWithOFB-12 1000000 1025 ns/op 1312 B/op 8 allocs/op
96-
BenchmarkAESDecryptWithCTR-12 1000000 1173 ns/op 1312 B/op 8 allocs/op
97-
98-
BenchmarkRSAEncryptPKCS1v15-12 23575 51665 ns/op 5119 B/op 12 allocs/op
99-
BenchmarkRSAEncryptOAEP-12 23125 54832 ns/op 5475 B/op 18 allocs/op
100-
BenchmarkRSADecryptPKCS1v15-12 806 1388847 ns/op 26180 B/op 102 allocs/op
101-
BenchmarkRSADecryptPKCS1v15SessionKey-12 856 1367107 ns/op 26179 B/op 102 allocs/op
102-
BenchmarkRSADecryptOAEP-12 812 1377677 ns/op 26284 B/op 107 allocs/op
50+
BenchmarkMD5-12 6937862 166.6 ns/op 112 B/op 2 allocs/op
51+
BenchmarkSHA1-12 6311574 187.3 ns/op 136 B/op 2 allocs/op
52+
BenchmarkSHA224-12 4770352 251.5 ns/op 160 B/op 2 allocs/op
53+
BenchmarkSHA256-12 4743789 251.3 ns/op 160 B/op 2 allocs/op
54+
BenchmarkSHA384-12 3708129 334.7 ns/op 272 B/op 2 allocs/op
55+
BenchmarkSHA512-12 3557325 335.9 ns/op 288 B/op 2 allocs/op
56+
BenchmarkHMAC-12 1000000 1030 ns/op 512 B/op 6 allocs/op
57+
BenchmarkCRC32IEEE-12 16118478 71.73 ns/op 24 B/op 2 allocs/op
58+
BenchmarkCRC64ISO-12 25652527 45.25 ns/op 8 B/op 1 allocs/op
59+
BenchmarkCRC64ECMA-12 26552835 44.71 ns/op 8 B/op 1 allocs/op
60+
BenchmarkFnv32-12 40867548 28.54 ns/op 8 B/op 1 allocs/op
61+
BenchmarkFnv32a-12 41241873 28.21 ns/op 8 B/op 1 allocs/op
62+
BenchmarkFnv64-12 34188957 30.16 ns/op 8 B/op 1 allocs/op
63+
BenchmarkFnv64a-12 38607868 30.02 ns/op 8 B/op 1 allocs/op
64+
BenchmarkFnv128-12 23522612 50.60 ns/op 16 B/op 1 allocs/op
65+
BenchmarkFnv128a-12 23278514 51.00 ns/op 16 B/op 1 allocs/op
66+
67+
BenchmarkDESEncryptECB-12 704928 1724 ns/op 528 B/op 3 allocs/op
68+
BenchmarkDESEncryptCBC-12 615673 1906 ns/op 624 B/op 6 allocs/op
69+
BenchmarkDESEncryptCFB-12 621673 1918 ns/op 624 B/op 6 allocs/op
70+
BenchmarkDESEncryptOFB-12 194791 6283 ns/op 1128 B/op 6 allocs/op
71+
BenchmarkDESEncryptCTR-12 180862 6512 ns/op 1128 B/op 6 allocs/op
72+
BenchmarkDESDecryptECB-12 727572 1660 ns/op 144 B/op 1 allocs/op
73+
BenchmarkDESDecryptCBC-12 607128 1853 ns/op 240 B/op 4 allocs/op
74+
BenchmarkDESDecryptCFB-12 654042 1724 ns/op 224 B/op 4 allocs/op
75+
BenchmarkDESDecryptOFB-12 198878 5928 ns/op 728 B/op 4 allocs/op
76+
BenchmarkDESDecryptCTR-12 181810 6323 ns/op 728 B/op 4 allocs/op
77+
78+
BenchmarkTripleDESEncryptECB-12 254095 4018 ns/op 528 B/op 3 allocs/op
79+
BenchmarkTripleDESEncryptCBC-12 278199 4301 ns/op 624 B/op 6 allocs/op
80+
BenchmarkTripleDESEncryptCFB-12 295966 4037 ns/op 352 B/op 5 allocs/op
81+
BenchmarkTripleDESEncryptOFB-12 80428 14864 ns/op 856 B/op 5 allocs/op
82+
BenchmarkTripleDESEncryptCTR-12 78086 15311 ns/op 856 B/op 5 allocs/op
83+
BenchmarkTripleDESDecryptECB-12 289245 4018 ns/op 144 B/op 1 allocs/op
84+
BenchmarkTripleDESDecryptCBC-12 283914 4232 ns/op 240 B/op 4 allocs/op
85+
BenchmarkTripleDESDecryptCFB-12 301969 3958 ns/op 224 B/op 4 allocs/op
86+
BenchmarkTripleDESDecryptOFB-12 79599 15109 ns/op 728 B/op 4 allocs/op
87+
BenchmarkTripleDESDecryptCTR-12 75466 15411 ns/op 728 B/op 4 allocs/op
88+
89+
BenchmarkAESEncryptECB-12 4770836 246.0 ns/op 528 B/op 3 allocs/op
90+
BenchmarkAESEncryptCBC-12 2797909 433.1 ns/op 640 B/op 6 allocs/op
91+
BenchmarkAESEncryptCFB-12 3189496 393.5 ns/op 368 B/op 5 allocs/op
92+
BenchmarkAESEncryptOFB-12 1582888 756.9 ns/op 864 B/op 5 allocs/op
93+
BenchmarkAESEncryptCTR-12 1348118 894.1 ns/op 864 B/op 5 allocs/op
94+
BenchmarkAESDecryptECB-12 8621173 140.4 ns/op 144 B/op 1 allocs/op
95+
BenchmarkAESDecryptCBC-12 3975070 305.9 ns/op 256 B/op 4 allocs/op
96+
BenchmarkAESDecryptCFB-12 3739603 324.2 ns/op 240 B/op 4 allocs/op
97+
BenchmarkAESDecryptOFB-12 1646392 722.1 ns/op 736 B/op 4 allocs/op
98+
BenchmarkAESDecryptCTR-12 1393838 877.0 ns/op 736 B/op 4 allocs/op
99+
100+
BenchmarkRSAGenerateKey1024PKCS1PKIX-12 66 16759624 ns/op 1026852 B/op 4042 allocs/op
101+
BenchmarkRSAGenerateKey2048PKCS1PKIX-12 13 113534778 ns/op 2129219 B/op 5761 allocs/op
102+
BenchmarkRSAGenerateKey4096PKCS1PKIX-12 1 1488439897 ns/op 7618600 B/op 12531 allocs/op
103+
BenchmarkRSAGenerateKey1024PKCS8PKIX-12 100 18313053 ns/op 1141365 B/op 4446 allocs/op
104+
BenchmarkRSAGenerateKey2048PKCS8PKIX-12 9 112680007 ns/op 2040232 B/op 5580 allocs/op
105+
BenchmarkRSAGenerateKey4096PKCS8PKIX-12 1 1906389743 ns/op 9639848 B/op 15813 allocs/op
106+
BenchmarkRSAGenerateKey1024PKCS1PKCS1-12 62 17034143 ns/op 1049731 B/op 4087 allocs/op
107+
BenchmarkRSAGenerateKey2048PKCS1PKCS1-12 6 168170768 ns/op 3244070 B/op 8506 allocs/op
108+
BenchmarkRSAGenerateKey4096PKCS1PKCS1-12 1 3351513226 ns/op 17279344 B/op 28016 allocs/op
109+
BenchmarkRSAGenerateKey1024PKCS8PKCS1-12 85 16348451 ns/op 1002687 B/op 3963 allocs/op
110+
BenchmarkRSAGenerateKey2048PKCS8PKCS1-12 10 156983244 ns/op 2981515 B/op 7870 allocs/op
111+
BenchmarkRSAGenerateKey4096PKCS8PKCS1-12 2 1858173339 ns/op 9579004 B/op 15697 allocs/op
112+
113+
BenchmarkRSAEncryptPKCS1v15-12 24886 47889 ns/op 5119 B/op 12 allocs/op
114+
BenchmarkRSAEncryptOAEP-12 25232 47543 ns/op 5475 B/op 18 allocs/op
115+
BenchmarkRSADecryptPKCS1v15-12 952 1278215 ns/op 26179 B/op 102 allocs/op
116+
BenchmarkRSADecryptPKCS1v15SessionKey-12 938 1284501 ns/op 26181 B/op 102 allocs/op
117+
BenchmarkRSADecryptOAEP-12 910 1292574 ns/op 26279 B/op 107 allocs/op
118+
119+
BenchmarkRSASignPSS-12 876 1334332 ns/op 31016 B/op 116 allocs/op
120+
BenchmarkRSASignPKCS1v15-12 886 1454273 ns/op 30578 B/op 110 allocs/op
121+
BenchmarkRSAVerifyPSS-12 23065 45778 ns/op 5323 B/op 17 allocs/op
122+
BenchmarkRSAVerifyPKCS1v15-12 27355 46102 ns/op 5115 B/op 12 allocs/op
103123
```
104124

105125
### 🎨 Contributing
@@ -108,9 +128,9 @@ If you find that something is not working as expected please open an _**issue**_
108128

109129
### 💪 Projects using cryptox
110130

111-
| Project | Author | Description | link |
112-
|---------|--------|-------------|------------------------|
113-
| | | | [Github]() / [Gitee]() |
131+
| Project | Author | Description | link |
132+
|---------|------------|------------------------------------------------|-----------------------------------------------------------------------------------------------|
133+
| Postar | avino-plan | An easy-to-use and low-coupling email service. | [Github](https://github.com/avino-plan/postar) / [Gitee](https://gitee.com/avino-plan/postar) |
114134

115135
At last, I want to thank JetBrains for **free JetBrains Open Source license(s)**, because cryptox is developed with Idea
116136
/ GoLand under it.

0 commit comments

Comments
 (0)