aboutsummaryrefslogtreecommitdiff
path: root/vendor/golang.org/x/crypto/curve25519/curve25519_test.go
diff options
context:
space:
mode:
authorStefan Majewsky <majewsky@gmx.net>2017-05-04 22:36:53 +0200
committerStefan Majewsky <majewsky@gmx.net>2017-05-04 22:36:53 +0200
commitec4270c43f1ddd37d1eb19da5db78129b93f72b7 (patch)
tree67ab3eab1e71ef1b5479f3f5a00e040b622d7191 /vendor/golang.org/x/crypto/curve25519/curve25519_test.go
parentc69e9f604c47469429a6a8a27ba7ef873134e0a1 (diff)
downloadgofu-ec4270c43f1ddd37d1eb19da5db78129b93f72b7.tar.gz
add "cli" package with a Query method
Diffstat (limited to 'vendor/golang.org/x/crypto/curve25519/curve25519_test.go')
-rw-r--r--vendor/golang.org/x/crypto/curve25519/curve25519_test.go39
1 files changed, 39 insertions, 0 deletions
diff --git a/vendor/golang.org/x/crypto/curve25519/curve25519_test.go b/vendor/golang.org/x/crypto/curve25519/curve25519_test.go
new file mode 100644
index 0000000..051a830
--- /dev/null
+++ b/vendor/golang.org/x/crypto/curve25519/curve25519_test.go
@@ -0,0 +1,39 @@
+// Copyright 2012 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+package curve25519
+
+import (
+ "fmt"
+ "testing"
+)
+
+const expectedHex = "89161fde887b2b53de549af483940106ecc114d6982daa98256de23bdf77661a"
+
+func TestBaseScalarMult(t *testing.T) {
+ var a, b [32]byte
+ in := &a
+ out := &b
+ a[0] = 1
+
+ for i := 0; i < 200; i++ {
+ ScalarBaseMult(out, in)
+ in, out = out, in
+ }
+
+ result := fmt.Sprintf("%x", in[:])
+ if result != expectedHex {
+ t.Errorf("incorrect result: got %s, want %s", result, expectedHex)
+ }
+}
+
+func BenchmarkScalarBaseMult(b *testing.B) {
+ var in, out [32]byte
+ in[0] = 1
+
+ b.SetBytes(32)
+ for i := 0; i < b.N; i++ {
+ ScalarBaseMult(&out, &in)
+ }
+}