wip: cleanup
This commit is contained in:
		
							
								
								
									
										79
									
								
								aestests/aes_test.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										79
									
								
								aestests/aes_test.go
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,79 @@ | ||||
| package aestests | ||||
|  | ||||
| import ( | ||||
| 	"crypto/aes" | ||||
| 	"crypto/cipher" | ||||
| 	"crypto/rand" | ||||
| 	"log" | ||||
| 	"testing" | ||||
| ) | ||||
|  | ||||
| func must(err error) { | ||||
| 	if err != nil { | ||||
| 		panic(err) | ||||
| 	} | ||||
| } | ||||
|  | ||||
| func TestAES(t *testing.T) { | ||||
| 	key := make([]byte, 32) | ||||
| 	rand.Read(key) | ||||
|  | ||||
| 	block, err := aes.NewCipher(key) | ||||
| 	must(err) | ||||
|  | ||||
| 	aesgcm, err := cipher.NewGCM(block) | ||||
| 	must(err) | ||||
|  | ||||
| 	log.Print(aesgcm.NonceSize()) | ||||
| 	log.Print(aesgcm.Overhead()) | ||||
| } | ||||
|  | ||||
| func BenchmarkSeal(b *testing.B) { | ||||
| 	key := make([]byte, 32) | ||||
| 	rand.Read(key) | ||||
|  | ||||
| 	block, err := aes.NewCipher(key) | ||||
| 	must(err) | ||||
|  | ||||
| 	cryptor, err := cipher.NewGCM(block) | ||||
| 	must(err) | ||||
|  | ||||
| 	nonce := make([]byte, 12) | ||||
| 	rand.Read(nonce) | ||||
|  | ||||
| 	data := make([]byte, 1400) | ||||
| 	rand.Read(data) | ||||
|  | ||||
| 	out := make([]byte, 1500) | ||||
| 	b.ResetTimer() | ||||
| 	for i := 0; i < b.N; i++ { | ||||
| 		out = cryptor.Seal(out[:0], nonce, data, nil) | ||||
| 	} | ||||
| } | ||||
|  | ||||
| func BenchmarkOpen(b *testing.B) { | ||||
| 	key := make([]byte, 32) | ||||
| 	rand.Read(key) | ||||
|  | ||||
| 	block, err := aes.NewCipher(key) | ||||
| 	must(err) | ||||
|  | ||||
| 	cryptor, err := cipher.NewGCM(block) | ||||
| 	must(err) | ||||
|  | ||||
| 	nonce := make([]byte, 12) | ||||
| 	rand.Read(nonce) | ||||
|  | ||||
| 	data := make([]byte, 1400) | ||||
| 	rand.Read(data) | ||||
|  | ||||
| 	sealed := make([]byte, 1500) | ||||
| 	sealed = cryptor.Seal(sealed[:0], nonce, data, nil) | ||||
|  | ||||
| 	dec := make([]byte, 1500) | ||||
|  | ||||
| 	b.ResetTimer() | ||||
| 	for i := 0; i < b.N; i++ { | ||||
| 		dec, err = cryptor.Open(dec[:0], nonce, sealed, nil) | ||||
| 	} | ||||
| } | ||||
		Reference in New Issue
	
	Block a user