rsaaux.cxx File Reference

#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/time.h>
#include "rsaaux.h"
#include "rsalib.h"

Go to the source code of this file.

Functions

static int aux_rand ()
int n_cmp (rsa_INT *i1, rsa_INT *i2, int l)
int a_cmp (rsa_NUMBER *c1, rsa_NUMBER *c2)
void a_assign (rsa_NUMBER *d, rsa_NUMBER *s)
void a_add (rsa_NUMBER *s1, rsa_NUMBER *s2, rsa_NUMBER *d)
int n_sub (rsa_INT *p1, rsa_INT *p2, rsa_INT *p3, int l, int lo)
void a_sub (rsa_NUMBER *s1, rsa_NUMBER *s2, rsa_NUMBER *d)
int n_mult (rsa_INT *n, rsa_INT m, rsa_INT *d, int l)
void a_imult (rsa_NUMBER *n, rsa_INT m, rsa_NUMBER *d)
void a_mult (rsa_NUMBER *m1, rsa_NUMBER *m2, rsa_NUMBER *d)
void n_div (rsa_NUMBER *d1, rsa_NUMBER *z2, rsa_NUMBER *q, rsa_NUMBER *r)
void a_div (rsa_NUMBER *d1, rsa_NUMBER *d2, rsa_NUMBER *q, rsa_NUMBER *r)
void a_div2 (rsa_NUMBER *n)
void m_init (rsa_NUMBER *n, rsa_NUMBER *o)
void m_add (rsa_NUMBER *s1, rsa_NUMBER *s2, rsa_NUMBER *d)
void m_mult (rsa_NUMBER *m1, rsa_NUMBER *m2, rsa_NUMBER *d)
void m_exp (rsa_NUMBER *x, rsa_NUMBER *n, rsa_NUMBER *z)
void a_ggt (rsa_NUMBER *a, rsa_NUMBER *b, rsa_NUMBER *f)
int n_bits (rsa_NUMBER *n, int b)
int n_bitlen (rsa_NUMBER *n)
static int jak_f (rsa_NUMBER *)
static int jak_g (rsa_NUMBER *, rsa_NUMBER *)
static int jakobi (rsa_NUMBER *, rsa_NUMBER *)
int p_prim (rsa_NUMBER *n, int m)
void inv (rsa_NUMBER *d, rsa_NUMBER *phi, rsa_NUMBER *e)
void gen_number (int len, rsa_NUMBER *n)
void init_rnd ()
void do_crypt (char *s, char *d, int len, rsa_NUMBER *e)

Variables

rsa_NUMBER a_one
rsa_NUMBER a_two
static rsa_NUMBER g_mod_z2 [rsa_MAXBIT]


Function Documentation

void a_add ( rsa_NUMBER s1,
rsa_NUMBER s2,
rsa_NUMBER d 
)

Definition at line 263 of file rsaaux.cxx.

References b, d, l, p1(), p2(), p3(), rsa_MAXINT, rsa_TOINT, s1, and s2.

void a_assign ( rsa_NUMBER d,
rsa_NUMBER s 
)

Definition at line 247 of file rsaaux.cxx.

References d, l, and s.

int a_cmp ( rsa_NUMBER c1,
rsa_NUMBER c2 
)

Definition at line 233 of file rsaaux.cxx.

References c1, l, n_cmp(), rsa_NUMBER::n_len, and rsa_NUMBER::n_part.

void a_div ( rsa_NUMBER d1,
rsa_NUMBER d2,
rsa_NUMBER q,
rsa_NUMBER r 
)

Definition at line 540 of file rsaaux.cxx.

References a_assign(), a_imult(), i, n_div(), and rsa_MAXBIT.

void a_div2 ( rsa_NUMBER n  ) 

Definition at line 560 of file rsaaux.cxx.

References a_div(), a_two, c, for(), h, i, if(), n, p, rsa_HIGHBIT, and rsa_NUM0P.

void a_ggt ( rsa_NUMBER a,
rsa_NUMBER b,
rsa_NUMBER f 
)

Definition at line 668 of file rsaaux.cxx.

References a, a_assign(), a_cmp(), a_div(), b, rsa_NUM0P, and t.

void a_imult ( rsa_NUMBER n,
rsa_INT  m,
rsa_NUMBER d 
)

Definition at line 401 of file rsaaux.cxx.

References a_assign(), d, n, and n_mult().

void a_mult ( rsa_NUMBER m1,
rsa_NUMBER m2,
rsa_NUMBER d 
)

Definition at line 414 of file rsaaux.cxx.

References for(), i, j, l, rsa_NUMBER::n_len, rsa_NUMBER::n_part, p1(), p2(), rsa_DIVMAX1, rsa_MAXLEN, rsa_TOINT, and vp.

void a_sub ( rsa_NUMBER s1,
rsa_NUMBER s2,
rsa_NUMBER d 
)

Definition at line 369 of file rsaaux.cxx.

References d, n_sub(), s1, and s2.

static int aux_rand (  )  [static]

Definition at line 165 of file rsaaux.cxx.

References close, gettimeofday(), open, read, and ssize_t.

Referenced by gen_number(), and p_prim().

void do_crypt ( char *  s,
char *  d,
int  len,
rsa_NUMBER e 
)

Definition at line 1092 of file rsaaux.cxx.

References buf, c, i, m_exp(), n, rsa_num_sget(), rsa_num_sput(), and rsa_STRLEN.

void gen_number ( int  len,
rsa_NUMBER n 
)

Definition at line 994 of file rsaaux.cxx.

References aux_rand(), i, l, n, num, p, rsa_num_sget(), and rsa_STRLEN.

void init_rnd ( void   ) 

Definition at line 1016 of file rsaaux.cxx.

References close, int, open, read, and seed.

void inv ( rsa_NUMBER d,
rsa_NUMBER phi,
rsa_NUMBER e 
)

Definition at line 949 of file rsaaux.cxx.

References a_assign(), a_cmp(), a_div(), a_one, a_sub(), c, d, k, m_add(), m_init(), m_mult(), p, phi, and rsa_NUM0P.

static int jak_f ( rsa_NUMBER  )  [static]

Definition at line 797 of file rsaaux.cxx.

References n, and n_bits().

Referenced by jakobi().

static int jak_g ( rsa_NUMBER ,
rsa_NUMBER  
) [static]

Definition at line 811 of file rsaaux.cxx.

References a, n, and n_bits().

Referenced by jakobi().

static int jakobi ( rsa_NUMBER ,
rsa_NUMBER  
) [static]

Definition at line 827 of file rsaaux.cxx.

References a, a_assign(), a_cmp(), a_div(), a_div2(), a_one, a_two, jak_f(), jak_g(), n, rsa_NUM0P, and t.

Referenced by p_prim().

void m_add ( rsa_NUMBER s1,
rsa_NUMBER s2,
rsa_NUMBER d 
)

Definition at line 631 of file rsaaux.cxx.

References a_add(), a_cmp(), a_sub(), d, g_mod_z2, s1, and s2.

void m_exp ( rsa_NUMBER x,
rsa_NUMBER n,
rsa_NUMBER z 
)

Definition at line 647 of file rsaaux.cxx.

References a_assign(), a_div2(), a_one, a_sub(), m_mult(), n, rsa_NUMBER::n_len, rsa_NUMBER::n_part, and x.

void m_init ( rsa_NUMBER n,
rsa_NUMBER o 
)

Definition at line 616 of file rsaaux.cxx.

References a_assign(), a_cmp(), a_imult(), g_mod_z2, i, n, o, and rsa_MAXBIT.

void m_mult ( rsa_NUMBER m1,
rsa_NUMBER m2,
rsa_NUMBER d 
)

Definition at line 638 of file rsaaux.cxx.

References a_mult(), d, g_mod_z2, n_div(), and rsa_NUM0P.

int n_bitlen ( rsa_NUMBER n  ) 

Definition at line 721 of file rsaaux.cxx.

References a_assign(), a_cmp(), a_mult(), a_one, a_two, b, i, and n.

int n_bits ( rsa_NUMBER n,
int  b 
)

Definition at line 692 of file rsaaux.cxx.

References l, m, n, p, rsa_LOWBITS, and rsa_MULMAX1.

int n_cmp ( rsa_INT i1,
rsa_INT i2,
int  l 
)

Definition at line 218 of file rsaaux.cxx.

void n_div ( rsa_NUMBER d1,
rsa_NUMBER z2,
rsa_NUMBER q,
rsa_NUMBER r 
)

Definition at line 464 of file rsaaux.cxx.

References a_assign(), for(), l, lq, n_cmp(), rsa_NUMBER::n_len, rsa_NUMBER::n_part, n_sub(), rsa_HIGHBIT, rsa_MAXBIT, and rsa_MAXINT.

int n_mult ( rsa_INT n,
rsa_INT  m,
rsa_INT d,
int  l 
)

Definition at line 379 of file rsaaux.cxx.

References i, rsa_DIVMAX1, and rsa_TOINT.

int n_sub ( rsa_INT p1,
rsa_INT p2,
rsa_INT p3,
int  l,
int  lo 
)

Definition at line 323 of file rsaaux.cxx.

References a, b, and rsa_MAXINT.

int p_prim ( rsa_NUMBER n,
int  m 
)

Definition at line 884 of file rsaaux.cxx.

References a, a_assign(), a_cmp(), a_div2(), a_ggt(), a_one, a_sub(), a_two, aux_rand(), i, j, jakobi(), m_exp(), m_init(), n, p, rsa_NUM0P, and w.


Variable Documentation

rsa_NUMBER a_one

Initial value:

 {
   1,
   { (rsa_INT)1, },
}

Definition at line 199 of file rsaaux.cxx.

rsa_NUMBER a_two

Initial value:

 {




   1,
   { (rsa_INT)2, },

}

Definition at line 204 of file rsaaux.cxx.

rsa_NUMBER g_mod_z2[rsa_MAXBIT] [static]

Definition at line 611 of file rsaaux.cxx.

Referenced by m_add(), m_init(), and m_mult().


Generated on Tue Jul 5 16:07:57 2011 for ROOT_528-00b_version by  doxygen 1.5.1