Index: curve25519/curve25519_test.go |
=================================================================== |
new file mode 100644 |
--- /dev/null |
+++ b/curve25519/curve25519_test.go |
@@ -0,0 +1,29 @@ |
+// 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) |
+ } |
+} |