Browse Source

minimal

master
Pieter Wuille 10 years ago
parent
commit
d8f05980e3
  1. 4
      ecmult.h
  2. 3
      tests.cpp

4
ecmult.h

@ -141,8 +141,8 @@ void ECMult(Context &ctx, GroupElemJac &out, const GroupElemJac &a, const Number @@ -141,8 +141,8 @@ void ECMult(Context &ctx, GroupElemJac &out, const GroupElemJac &a, const Number
// printf("an2.len=%i\n", an2.GetBits());
gn.SplitInto(ct, 128, gn1, gn2);
WNAF<129> wa1(ct, an1, WINDOW_A);
WNAF<129> wa2(ct, an2, WINDOW_A);
WNAF<128> wa1(ct, an1, WINDOW_A);
WNAF<128> wa2(ct, an2, WINDOW_A);
WNAF<128> wg1(ct, gn1, WINDOW_G);
WNAF<128> wg2(ct, gn2, WINDOW_G);
GroupElemJac a2; a2.SetMulLambda(a);

3
tests.cpp

@ -68,6 +68,7 @@ void test_run_point_times_order() { @@ -68,6 +68,7 @@ void test_run_point_times_order() {
test_point_times_order(j);
x.SetSquare(x);
}
assert(x.ToString() == "7603CB59B0EF6C63FE6084792A0C378CDB3233A80F8A9A09A877DEAD31B38C45"); // 0x02 ^ (2^500)
}
void test_wnaf(const Number &number, int w) {
@ -99,7 +100,7 @@ void test_wnaf(const Number &number, int w) { @@ -99,7 +100,7 @@ void test_wnaf(const Number &number, int w) {
void test_run_wnaf() {
Context ctx;
Number range(ctx), min(ctx), n(ctx);
range.SetHex("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF");
range.SetHex("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"); // 2^1024-1
min = range; min.Shift1(); min.Negate();
for (int i=0; i<100; i++) {
n.SetPseudoRand(range); n.SetAdd(ctx,n,min);

Loading…
Cancel
Save