X-Git-Url: https://git.distorted.org.uk/u/mdw/catacomb/blobdiff_plain/4f743df55ac05e51bc69aaabd188132f2f94543b..578a86d91941a0f722b87973d88e84ec2cf9a608:/bbs-jump.c diff --git a/bbs-jump.c b/bbs-jump.c index 8e7109d..135d048 100644 --- a/bbs-jump.c +++ b/bbs-jump.c @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: bbs-jump.c,v 1.2 1999/12/22 15:52:08 mdw Exp $ + * $Id: bbs-jump.c,v 1.5 2004/04/08 01:36:15 mdw Exp $ * * Jumping around a BBS sequence * @@ -27,17 +27,6 @@ * MA 02111-1307, USA. */ -/*----- Revision history --------------------------------------------------* - * - * $Log: bbs-jump.c,v $ - * Revision 1.2 1999/12/22 15:52:08 mdw - * Rename `bbs_params' to `bbs_param' for consistency. - * - * Revision 1.1 1999/12/10 23:14:59 mdw - * Blum-Blum-Shub generator, and Blum-Goldwasser encryption. - * - */ - /*----- Header files ------------------------------------------------------*/ #include "bbs.h" @@ -51,7 +40,7 @@ /* --- @jump@ --- * * * Arguments: @bbs *b@ = pointer to BBS generator context - * @bbs_param *bp@ = pointer to BBS modulus factors + * @bbs_priv *bp@ = pointer to BBS modulus factors * @unsigned long n@ = number of steps to move * @mp *px@ = exponent mod @p@ for a one-step jump * @mp *qx@ = exponent mod @q@ for a one-step jump @@ -77,7 +66,7 @@ * * If you want to step the generator forwards, simply set * %$px = qx = 2$%. If you want to step backwards, make - * %$px = (p + 1)/4$% and %$qx = (q + 1)/4%$. Note that, if + * %$px = (p + 1)/4$% and %$qx = (q + 1)/4$%. Note that, if * %$x$% is a quadratic residue mod $%p$%, then * * %$(x^2) ^ {(p + 1)/4}$% @@ -89,7 +78,7 @@ * %$p \equiv 3 \pmod 4$%.) */ -static void jump(bbs *b, bbs_param *bp, unsigned long n, +static void jump(bbs *b, bbs_priv *bp, unsigned long n, mp *px, mp *qx) { mp *ep, *eq; @@ -169,7 +158,7 @@ static void jump(bbs *b, bbs_param *bp, unsigned long n, /* --- @bbs_ff@ --- * * * Arguments: @bbs *b@ = pointer to a BBS generator state - * @bbs_param *bp@ = pointer to BBS modulus factors + * @bbs_priv *bp@ = pointer to BBS modulus factors * @unsigned long n@ = number of steps to make * * Returns: --- @@ -179,7 +168,7 @@ static void jump(bbs *b, bbs_param *bp, unsigned long n, * efficiently. */ -void bbs_ff(bbs *b, bbs_param *bp, unsigned long n) +void bbs_ff(bbs *b, bbs_priv *bp, unsigned long n) { jump(b, bp, n, MP_TWO, MP_TWO); } @@ -187,7 +176,7 @@ void bbs_ff(bbs *b, bbs_param *bp, unsigned long n) /* --- @bbs_rew@ --- * * * Arguments: @bbs *b@ = pointer to a BBS generator state - * @bbs_param *bp@ = pointer to BBS modulus factors + * @bbs_priv *bp@ = pointer to BBS modulus factors * @unsigned long n@ = number of steps to make * * Returns: --- @@ -197,7 +186,7 @@ void bbs_ff(bbs *b, bbs_param *bp, unsigned long n) * at all. */ -void bbs_rew(bbs *b, bbs_param *bp, unsigned long n) +void bbs_rew(bbs *b, bbs_priv *bp, unsigned long n) { mp *px = mp_lsr(MP_NEW, bp->p, 2); mp *qx = mp_lsr(MP_NEW, bp->q, 2); @@ -214,7 +203,7 @@ void bbs_rew(bbs *b, bbs_param *bp, unsigned long n) static int verify(dstr *v) { - bbs_param bp; + bbs_priv bp; bbs b; mp *x; unsigned long n;