Skip to content

Commit

Permalink
mp_prime_next_prime: use mp_bool for bbs_style
Browse files Browse the repository at this point in the history
  • Loading branch information
minad committed Oct 22, 2019
1 parent 1d0affc commit 18d361c
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 7 deletions.
10 changes: 5 additions & 5 deletions mp_prime_next_prime.c
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@
/* finds the next prime after the number "a" using "t" trials
* of Miller-Rabin.
*
* bbs_style = 1 means the prime must be congruent to 3 mod 4
* bbs_style = MP_YES means the prime must be congruent to 3 mod 4
*/
mp_err mp_prime_next_prime(mp_int *a, int t, int bbs_style)
mp_err mp_prime_next_prime(mp_int *a, int t, mp_bool bbs_style)
{
int x, y;
mp_ord cmp;
Expand All @@ -29,7 +29,7 @@ mp_err mp_prime_next_prime(mp_int *a, int t, int bbs_style)
continue;
}
if (cmp != MP_GT) {
if ((bbs_style == 1) && ((s_mp_prime_tab[x] & 3u) != 3u)) {
if ((bbs_style == MP_YES) && ((s_mp_prime_tab[x] & 3u) != 3u)) {
/* try again until we get a prime congruent to 3 mod 4 */
continue;
} else {
Expand All @@ -42,15 +42,15 @@ mp_err mp_prime_next_prime(mp_int *a, int t, int bbs_style)
}

/* generate a prime congruent to 3 mod 4 or 1/3 mod 4? */
if (bbs_style == 1) {
if (bbs_style == MP_YES) {
kstep = 4;
} else {
kstep = 2;
}

/* at this point we will use a combination of a sieve and Miller-Rabin */

if (bbs_style == 1) {
if (bbs_style == MP_YES) {
/* if a mod 4 != 3 subtract the correct value to make it so */
if ((a->dp[0] & 3u) != 3u) {
if ((err = mp_sub_d(a, (a->dp[0] & 3u) + 1u, a)) != MP_OKAY) {
Expand Down
4 changes: 2 additions & 2 deletions tommath.h
Original file line number Diff line number Diff line change
Expand Up @@ -550,9 +550,9 @@ mp_err mp_prime_is_prime(const mp_int *a, int t, mp_bool *result) MP_WUR;
/* finds the next prime after the number "a" using "t" trials
* of Miller-Rabin.
*
* bbs_style = 1 means the prime must be congruent to 3 mod 4
* bbs_style = MP_YES means the prime must be congruent to 3 mod 4
*/
mp_err mp_prime_next_prime(mp_int *a, int t, int bbs_style) MP_WUR;
mp_err mp_prime_next_prime(mp_int *a, int t, mp_bool bbs_style) MP_WUR;

/* makes a truly random prime of a given size (bits),
*
Expand Down

0 comments on commit 18d361c

Please sign in to comment.