]> Cypherpunks.ru repositories - govpn.git/blobdiff - src/cypherpunks.ru/govpn/encless_test.go
Replace (X)Salsa20 with ChaCha20
[govpn.git] / src / cypherpunks.ru / govpn / encless_test.go
index 20b0df63281e481a254eee1a25bf86a81bf8f0a6..fc00d2708d753735bb501e3886c1ee8d4df1cde5 100644 (file)
@@ -20,8 +20,8 @@ package govpn
 
 import (
        "bytes"
-       "crypto/rand"
        "encoding/binary"
+       "io"
        "testing"
        "testing/quick"
 )
@@ -31,13 +31,13 @@ var (
 )
 
 func init() {
-       rand.Read(testKey[:])
+       io.ReadFull(Rand, testKey[:])
 }
 
 func TestEnclessSymmetric(t *testing.T) {
-       nonce := make([]byte, 8)
+       nonce := new([16]byte)
        f := func(pktNum uint64, in []byte) bool {
-               binary.BigEndian.PutUint64(nonce, pktNum)
+               binary.BigEndian.PutUint64(nonce[8:], pktNum)
                encoded, err := EnclessEncode(testKey, nonce, in)
                if err != nil {
                        return false
@@ -54,10 +54,10 @@ func TestEnclessSymmetric(t *testing.T) {
 }
 
 func BenchmarkEnclessEncode(b *testing.B) {
-       nonce := make([]byte, 8)
+       nonce := new([16]byte)
        data := make([]byte, 128)
-       rand.Read(nonce)
-       rand.Read(data)
+       io.ReadFull(Rand, nonce[8:])
+       io.ReadFull(Rand, data)
        b.ResetTimer()
        for i := 0; i < b.N; i++ {
                EnclessEncode(testKey, nonce, data)
@@ -65,10 +65,10 @@ func BenchmarkEnclessEncode(b *testing.B) {
 }
 
 func BenchmarkEnclessDecode(b *testing.B) {
-       nonce := make([]byte, 8)
+       nonce := new([16]byte)
        data := make([]byte, 128)
-       rand.Read(nonce)
-       rand.Read(data)
+       io.ReadFull(Rand, nonce[8:])
+       io.ReadFull(Rand, data)
        encoded, _ := EnclessEncode(testKey, nonce, data)
        b.ResetTimer()
        for i := 0; i < b.N; i++ {