ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

mpi.c File Reference
#include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "tomcrypt.h"

Go to the source code of this file.

Defines

#define s_mp_mul(a, b, c)   s_mp_mul_digs(a, b, c, (a)->used + (b)->used + 1)

Functions

static void mp_clamp (mp_int *a)
static int mp_cmp_mag (const mp_int *a, const mp_int *b)
static int mp_cnt_lsb (const mp_int *a)
static int mp_montgomery_calc_normalization (mp_int *a, const mp_int *b)
static int mp_montgomery_reduce (mp_int *a, const mp_int *m, mp_digit mp)
static int mp_montgomery_setup (const mp_int *a, mp_digit *mp)
static int mp_reduce (mp_int *a, const mp_int *b, const mp_int *c)
static int mp_reduce_2k (mp_int *a, const mp_int *n, mp_digit d)
static int mp_reduce_2k_setup (const mp_int *a, mp_digit *d)
static int mp_reduce_setup (mp_int *a, const mp_int *b)
static void mp_set (mp_int *a, mp_digit b)
static int mp_sqr (const mp_int *a, mp_int *b)
static int mp_sqrmod (const mp_int *a, mp_int *b, mp_int *c)
static void bn_reverse (unsigned char *s, int len)
static int s_mp_add (mp_int *a, mp_int *b, mp_int *c)
static int s_mp_exptmod (const mp_int *G, const mp_int *X, mp_int *P, mp_int *Y)
static int s_mp_mul_digs (const mp_int *a, const mp_int *b, mp_int *c, int digs)
static int s_mp_mul_high_digs (const mp_int *a, const mp_int *b, mp_int *c, int digs)
static int s_mp_sqr (const mp_int *a, mp_int *b)
static int s_mp_sub (const mp_int *a, const mp_int *b, mp_int *c)
static int mp_exptmod_fast (const mp_int *G, const mp_int *X, mp_int *P, mp_int *Y, int mode)
static int mp_invmod_slow (const mp_int *a, mp_int *b, mp_int *c)
static int mp_karatsuba_mul (const mp_int *a, const mp_int *b, mp_int *c)
static int mp_karatsuba_sqr (const mp_int *a, mp_int *b)
static int mp_grow (mp_int *a, int size)
static int mp_div_2 (const mp_int *a, mp_int *b)
static void mp_exch (mp_int *a, mp_int *b)
static int mp_init (mp_int *a)
static int mp_init_size (mp_int *a, int size)
static void mp_clear (mp_int *a)
static void mp_zero (mp_int *a)
static int mp_abs (const mp_int *a, mp_int *b)
static int fast_mp_invmod (const mp_int *a, mp_int *b, mp_int *c)
static int fast_mp_montgomery_reduce (mp_int *x, const mp_int *n, mp_digit rho)
static int fast_s_mp_mul_digs (const mp_int *a, const mp_int *b, mp_int *c, int digs)
static int fast_s_mp_mul_high_digs (const mp_int *a, const mp_int *b, mp_int *c, int digs)
static int fast_s_mp_sqr (const mp_int *a, mp_int *b)
static int mp_2expt (mp_int *a, int b)
int mp_add (mp_int *a, mp_int *b, mp_int *c)
static int mp_add_d (mp_int *a, mp_digit b, mp_int *c)
void mp_clear_multi (mp_int *mp,...)
int mp_cmp (const mp_int *a, const mp_int *b)
int mp_cmp_d (const mp_int *a, mp_digit b)
int mp_copy (const mp_int *a, mp_int *b)
int mp_count_bits (const mp_int *a)
static int mp_mod_2d (const mp_int *a, int b, mp_int *c)
static void mp_rshd (mp_int *a, int b)
static int mp_div_2d (const mp_int *a, int b, mp_int *c, mp_int *d)
static int mp_lshd (mp_int *a, int b)
static int mp_mul_2d (const mp_int *a, int b, mp_int *c)
static int mp_mul_d (const mp_int *a, mp_digit b, mp_int *c)
static int mp_div (const mp_int *a, const mp_int *b, mp_int *c, mp_int *d)
static int s_is_power_of_two (mp_digit b, int *p)
static int mp_div_d (const mp_int *a, mp_digit b, mp_int *c, mp_digit *d)
static int mp_dr_reduce (mp_int *x, const mp_int *n, mp_digit k)
static void mp_dr_setup (const mp_int *a, mp_digit *d)
int mp_exptmod (const mp_int *G, const mp_int *X, mp_int *P, mp_int *Y)
int mp_gcd (const mp_int *a, const mp_int *b, mp_int *c)
unsigned long mp_get_int (const mp_int *a)
int mp_init_copy (mp_int *a, const mp_int *b)
int mp_init_multi (mp_int *mp,...)
int mp_invmod (const mp_int *a, mp_int *b, mp_int *c)
int mp_lcm (const mp_int *a, const mp_int *b, mp_int *c)
int mp_mod (const mp_int *a, mp_int *b, mp_int *c)
static int mp_mod_d (const mp_int *a, mp_digit b, mp_digit *c)
static int mp_mul_2 (const mp_int *a, mp_int *b)
int mp_mul (const mp_int *a, const mp_int *b, mp_int *c)
int mp_mulmod (const mp_int *a, const mp_int *b, mp_int *c, mp_int *d)
static int mp_prime_is_divisible (const mp_int *a, int *result)
static int mp_prime_miller_rabin (mp_int *a, const mp_int *b, int *result)
static int mp_prime_is_prime (mp_int *a, int t, int *result)
int mp_prime_rabin_miller_trials (int size)
int mp_prime_random_ex (mp_int *a, int t, int size, int flags, ltm_prime_callback cb, void *dat)
int mp_read_unsigned_bin (mp_int *a, const unsigned char *b, int c)
int mp_set_int (mp_int *a, unsigned long b)
int mp_shrink (mp_int *a)
int mp_sub (mp_int *a, mp_int *b, mp_int *c)
int mp_sub_d (mp_int *a, mp_digit b, mp_int *c)
int mp_to_unsigned_bin (const mp_int *a, unsigned char *b)
int mp_unsigned_bin_size (const mp_int *a)

Variables

static const int KARATSUBA_MUL_CUTOFF = 88
static const int KARATSUBA_SQR_CUTOFF = 128
static const int lnz [16]
static const mp_digit __prime_tab []
struct {
   int   k
   int   t
sizes []

Generated on Sun May 27 2012 05:17:42 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.