stupidgcm: add GCM-SIV benchmark
On a CPU without AES-NI: $ go test -bench . Benchmark4kEncStupidGCM-2 50000 24155 ns/op 169.57 MB/s Benchmark4kEncGoGCM-2 20000 93965 ns/op 43.59 MB/s Benchmark4kEncGCMSIV-2 500 2576193 ns/op 1.59 MB/s
This commit is contained in:
parent
32e35adcad
commit
0e277ba19e
@ -14,6 +14,8 @@ import (
|
||||
"crypto/rand"
|
||||
"encoding/hex"
|
||||
"testing"
|
||||
|
||||
"github.com/rfjakob/gcmsiv"
|
||||
)
|
||||
|
||||
// Get "n" random bytes from /dev/urandom or panic
|
||||
@ -159,3 +161,19 @@ func Benchmark4kEncGoGCM(b *testing.B) {
|
||||
gGCM.Seal(iv, iv, in, authData)
|
||||
}
|
||||
}
|
||||
|
||||
func Benchmark4kEncGCMSIV(b *testing.B) {
|
||||
key := randBytes(32)
|
||||
authData := randBytes(24)
|
||||
iv := randBytes(16)
|
||||
in := make([]byte, 4096)
|
||||
b.SetBytes(int64(len(in)))
|
||||
gGCM, err := gcmsiv.NewGCMSIV(key)
|
||||
if err != nil {
|
||||
b.Fatal(err)
|
||||
}
|
||||
for i := 0; i < b.N; i++ {
|
||||
// Encrypt and append to nonce
|
||||
gGCM.Seal(iv, iv, in, authData)
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user