mirror of
https://github.com/emmansun/gmsm.git
synced 2025-05-11 03:26:17 +08:00
Updated SM4性能优化 (markdown)
parent
4a54e1087a
commit
c4b16020c8
24
SM4性能优化.md
24
SM4性能优化.md
@ -9,4 +9,26 @@
|
||||
|
||||
Go语言的对称加密实现分离了加密模式和Block级别的加密,同时支持特定加密算法实现自己的优化版本。所以我们只实现了SM4的单Block的加解密(Block接口),就能使用CBC/CFB/OFB/CTR/GCM加密模式。
|
||||
|
||||
关于SM4的优化实现,细粒度的并行可能性不大,大粒度的优化实现可以参考sm4ni,可多Blocks并行加解密的模式还是比较多的。
|
||||
关于SM4的优化实现,细粒度的并行可能性不大,大粒度的优化实现可以参考sm4ni,可多Blocks并行加解密的模式还是比较多的。
|
||||
|
||||
# 未优化之前
|
||||
|
||||
goos: windows
|
||||
goarch: amd64
|
||||
pkg: github.com/emmansun/gmsm/sm4
|
||||
BenchmarkSM4CBCEncrypt1K-6 42994 27766 ns/op 36.88 MB/s 0 B/op 0 allocs/op
|
||||
BenchmarkSM4CBCDecrypt1K-6 42690 28103 ns/op 36.44 MB/s 0 B/op 0 allocs/op
|
||||
BenchmarkSM4CFBEncrypt1K-6 42945 27759 ns/op 36.71 MB/s 0 B/op 0 allocs/op
|
||||
BenchmarkSM4CFBDecrypt1K-6 42820 28493 ns/op 35.76 MB/s 0 B/op 0 allocs/op
|
||||
BenchmarkSM4CFBDecrypt8K-6 5338 227642 ns/op 35.96 MB/s 0 B/op 0 allocs/op
|
||||
BenchmarkSM4OFB1K-6 43754 27443 ns/op 37.13 MB/s 0 B/op 0 allocs/op
|
||||
BenchmarkSM4CTR1K-6 43292 27392 ns/op 37.20 MB/s 0 B/op 0 allocs/op
|
||||
BenchmarkSM4CTR8K-6 5338 220872 ns/op 37.07 MB/s 0 B/op 0 allocs/op
|
||||
BenchmarkSM4GCMSeal1K-6 37594 31777 ns/op 32.22 MB/s 48 B/op 3 allocs/op
|
||||
BenchmarkSM4GCMOpen1K-6 37029 31919 ns/op 32.08 MB/s 48 B/op 3 allocs/op
|
||||
BenchmarkSM4GCMSign1K-6 315050 3882 ns/op 263.81 MB/s 48 B/op 3 allocs/op
|
||||
BenchmarkSM4GCMSign8K-6 43905 26876 ns/op 304.81 MB/s 48 B/op 3 allocs/op
|
||||
BenchmarkSM4GCMSeal8K-6 4917 250707 ns/op 32.68 MB/s 49 B/op 3 allocs/op
|
||||
BenchmarkSM4GCMOpen8K-6 4722 248856 ns/op 32.92 MB/s 48 B/op 3 allocs/op
|
||||
PASS
|
||||
ok github.com/emmansun/gmsm/sm4 20.818s
|
||||
|
Loading…
x
Reference in New Issue
Block a user