diff options
Diffstat (limited to 'src/libsec/port/genstrongprime.c')
-rw-r--r-- | src/libsec/port/genstrongprime.c | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/src/libsec/port/genstrongprime.c b/src/libsec/port/genstrongprime.c index 27c43a96..6ac4fa33 100644 --- a/src/libsec/port/genstrongprime.c +++ b/src/libsec/port/genstrongprime.c @@ -2,8 +2,8 @@ #include <mp.h> #include <libsec.h> -// Gordon's algorithm for generating a strong prime -// Menezes et al () Handbook, p.150 +/* Gordon's algorithm for generating a strong prime */ +/* Menezes et al () Handbook, p.150 */ void genstrongprime(mpint *p, int n, int accuracy) { @@ -17,20 +17,20 @@ genstrongprime(mpint *p, int n, int accuracy) t = mpnew(n/2); genprime(t, n-mpsignif(s)-32, accuracy); - // first r = 2it + 1 that's prime + /* first r = 2it + 1 that's prime */ i = mpnew(16); r = mpnew(0); itomp(0x8000, i); - mpleft(t, 1, t); // 2t - mpmul(i, t, r); // 2it - mpadd(r, mpone, r); // 2it + 1 + mpleft(t, 1, t); /* 2t */ + mpmul(i, t, r); /* 2it */ + mpadd(r, mpone, r); /* 2it + 1 */ for(;;){ if(probably_prime(r, 18)) break; - mpadd(r, t, r); // r += 2t + mpadd(r, t, r); /* r += 2t */ } - // p0 = 2(s**(r-2) mod r)s - 1 + /* p0 = 2(s**(r-2) mod r)s - 1 */ itomp(2, p); mpsub(r, p, p); mpexp(s, p, r, p); @@ -38,16 +38,16 @@ genstrongprime(mpint *p, int n, int accuracy) mpleft(p, 1, p); mpsub(p, mpone, p); - // first p = p0 + 2irs that's prime + /* first p = p0 + 2irs that's prime */ itomp(0x8000, i); - mpleft(r, 1, r); // 2r - mpmul(r, s, r); // 2rs - mpmul(r, i, i); // 2irs - mpadd(p, i, p); // p0 + 2irs + mpleft(r, 1, r); /* 2r */ + mpmul(r, s, r); /* 2rs */ + mpmul(r, i, i); /* 2irs */ + mpadd(p, i, p); /* p0 + 2irs */ for(;;){ if(probably_prime(p, accuracy)) break; - mpadd(p, r, p); // p += 2rs + mpadd(p, r, p); /* p += 2rs */ } mpfree(i); |