1
0
mirror of https://github.com/golang/go synced 2024-11-22 16:14:56 -07:00

crypto/cipher: add small CTR benchmark, remove CFB/OFB benchmarks

CFB and OFB are mostly unused, and not a performance target.

Updates #39365
Updates #69445

Change-Id: Ice6441e4fee2112a9e72607c63e49dbc50441ba6
Reviewed-on: https://go-review.googlesource.com/c/go/+/621957
Reviewed-by: Roland Shoemaker <roland@golang.org>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
Reviewed-by: Daniel McCarney <daniel@binaryparadox.net>
This commit is contained in:
Filippo Valsorda 2024-10-26 19:45:41 +02:00
parent 9489a2c9a7
commit 5a529e06c1

View File

@ -86,28 +86,16 @@ func benchmarkAESStream(b *testing.B, mode func(cipher.Block, []byte) cipher.Str
const almost1K = 1024 - 5
const almost8K = 8*1024 - 5
func BenchmarkAESCFBEncrypt1K(b *testing.B) {
benchmarkAESStream(b, cipher.NewCFBEncrypter, make([]byte, almost1K))
}
func BenchmarkAESCFBDecrypt1K(b *testing.B) {
benchmarkAESStream(b, cipher.NewCFBDecrypter, make([]byte, almost1K))
}
func BenchmarkAESCFBDecrypt8K(b *testing.B) {
benchmarkAESStream(b, cipher.NewCFBDecrypter, make([]byte, almost8K))
}
func BenchmarkAESOFB1K(b *testing.B) {
benchmarkAESStream(b, cipher.NewOFB, make([]byte, almost1K))
}
func BenchmarkAESCTR1K(b *testing.B) {
benchmarkAESStream(b, cipher.NewCTR, make([]byte, almost1K))
}
func BenchmarkAESCTR8K(b *testing.B) {
benchmarkAESStream(b, cipher.NewCTR, make([]byte, almost8K))
func BenchmarkAESCTR(b *testing.B) {
b.Run("50", func(b *testing.B) {
benchmarkAESStream(b, cipher.NewCTR, make([]byte, 50))
})
b.Run("1K", func(b *testing.B) {
benchmarkAESStream(b, cipher.NewCTR, make([]byte, almost1K))
})
b.Run("8K", func(b *testing.B) {
benchmarkAESStream(b, cipher.NewCTR, make([]byte, almost8K))
})
}
func BenchmarkAESCBCEncrypt1K(b *testing.B) {