| // 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) |
| } |
| } |