]> Cypherpunks.ru repositories - gogost.git/blobdiff - mgm/mul128_test.go
Separate GF^64 and GF^128 multiplier implementations
[gogost.git] / mgm / mul128_test.go
similarity index 62%
rename from mgm/mul_test.go
rename to mgm/mul128_test.go
index b585799e604c2ab8aef1b2b0fae03b93b874edab..06548801fa677fad29f626d4653a446e55215a0a 100644 (file)
@@ -17,47 +17,19 @@ package mgm
 
 import (
        "crypto/rand"
-       "math/big"
        "testing"
 
        "go.cypherpunks.ru/gogost/v5/gost3412128"
-       "go.cypherpunks.ru/gogost/v5/gost341264"
 )
 
-func BenchmarkMul64(b *testing.B) {
-       x := make([]byte, gost341264.BlockSize)
-       y := make([]byte, gost341264.BlockSize)
-       rand.Read(x)
-       rand.Read(y)
-       mgm := MGM{
-               x:      big.NewInt(0),
-               y:      big.NewInt(0),
-               z:      big.NewInt(0),
-               maxBit: 64 - 1,
-               r:      R64,
-               mulBuf: make([]byte, gost341264.BlockSize),
-       }
-       b.ResetTimer()
-       for i := 0; i < b.N; i++ {
-               mgm.mul(x, y)
-       }
-}
-
 func BenchmarkMul128(b *testing.B) {
        x := make([]byte, gost3412128.BlockSize)
        y := make([]byte, gost3412128.BlockSize)
        rand.Read(x)
        rand.Read(y)
-       mgm := MGM{
-               x:      big.NewInt(0),
-               y:      big.NewInt(0),
-               z:      big.NewInt(0),
-               maxBit: 128 - 1,
-               r:      R128,
-               mulBuf: make([]byte, gost3412128.BlockSize),
-       }
+       mul := newMul128()
        b.ResetTimer()
        for i := 0; i < b.N; i++ {
-               mgm.mul(x, y)
+               mul.Mul(x, y)
        }
 }