Functions |
uint32_t | Degree (uint32_t v) |
int | LimbDegree (const uint32_t *n, int limbs) |
uint32_t | Degree (const uint32_t *n, int limbs) |
void | Set (uint32_t *lhs, int lhs_limbs, const uint32_t *rhs, int rhs_limbs) |
void | Set (uint32_t *lhs, int limbs, const uint32_t *rhs) |
void | Set32 (uint32_t *lhs, int lhs_limbs, const uint32_t rhs) |
bool | Less (int limbs, const uint32_t *lhs, const uint32_t *rhs) |
bool | Greater (int limbs, const uint32_t *lhs, const uint32_t *rhs) |
bool | Equal (int limbs, const uint32_t *lhs, const uint32_t *rhs) |
bool | Less (const uint32_t *lhs, int lhs_limbs, const uint32_t *rhs, int rhs_limbs) |
bool | Greater (const uint32_t *lhs, int lhs_limbs, const uint32_t *rhs, int rhs_limbs) |
bool | Equal (const uint32_t *lhs, int lhs_limbs, const uint32_t *rhs, int rhs_limbs) |
bool | Greater32 (const uint32_t *lhs, int lhs_limbs, uint32_t rhs) |
bool | Equal32 (const uint32_t *lhs, int lhs_limbs, uint32_t rhs) |
void | ShiftRight (int limbs, uint32_t *out, const uint32_t *in, int shift) |
uint32_t | ShiftLeft (int limbs, uint32_t *out, const uint32_t *in, int shift) |
uint32_t | Add (uint32_t *lhs, int lhs_limbs, const uint32_t *rhs, int rhs_limbs) |
uint32_t | Add (uint32_t *out, const uint32_t *lhs, int lhs_limbs, const uint32_t *rhs, int rhs_limbs) |
uint32_t | Add32 (uint32_t *lhs, int lhs_limbs, uint32_t rhs) |
int32_t | Subtract (uint32_t *lhs, int lhs_limbs, const uint32_t *rhs, int rhs_limbs) |
int32_t | Subtract (uint32_t *out, const uint32_t *lhs, int lhs_limbs, const uint32_t *rhs, int rhs_limbs) |
int32_t | Subtract32 (uint32_t *lhs, int lhs_limbs, uint32_t rhs) |
void | Negate (int limbs, uint32_t *lhs, const uint32_t *rhs) |
void | BitNot (uint32_t *n, int limbs) |
void | LimbNot (uint32_t *n, int limbs) |
void | Xor (int limbs, uint32_t *lhs, const uint32_t *rhs) |
uint32_t | AddLeftShift32 (int limbs, uint32_t *A, const uint32_t *B, uint32_t S) |
uint32_t | Multiply32 (int limbs, uint32_t *result, const uint32_t *A, uint32_t B) |
uint32_t | MultiplyAdd32 (int limbs, uint32_t *X, uint32_t M, uint32_t A) |
uint32_t | AddMultiply32 (int limbs, uint32_t *A, const uint32_t *B, uint32_t M) |
void | SimpleMultiply (int limbs, uint32_t *product, const uint32_t *x, const uint32_t *y) |
void | SimpleMultiplyLowHalf (int limbs, uint32_t *product, const uint32_t *x, const uint32_t *y) |
void | SimpleSquare (int limbs, uint32_t *product, const uint32_t *x) |
void | Multiply (int limbs, uint32_t *product, const uint32_t *x, const uint32_t *y) |
void | Square (int limbs, uint32_t *product, const uint32_t *x) |
uint32_t | Modulus32 (int limbs, const uint32_t *N, uint32_t divisor) |
uint32_t | Divide32 (int limbs, uint32_t *A, uint32_t divisor) |
uint32_t | MulInverse32 (uint32_t n) |
bool | MulInverse (int limbs, const uint32_t *u, uint32_t *result) |
bool | Divide (const uint32_t *u, int u_limbs, const uint32_t *v, int v_limbs, uint32_t *q, uint32_t *r) |
bool | Modulus (const uint32_t *u, int u_limbs, const uint32_t *v, int v_limbs, uint32_t *r) |
void | BarrettModulusPrecomp (int limbs, const uint32_t *m, uint32_t *m_inv) |
void | BarrettModulus (int limbs, const uint32_t *x, const uint32_t *m, const uint32_t *m_inv, uint32_t *result) |
bool | MulMod (int limbs, const uint32_t *x, const uint32_t *y, const uint32_t *modulus, uint32_t *result) |
int | ToInt (uint32_t *lhs, int max_limbs, const char *rhs, uint32_t base) |
void | GCD (const uint32_t *a, int a_limbs, const uint32_t *b, int b_limbs, uint32_t *result) |
bool | InvMod (const uint32_t *u, int u_limbs, const uint32_t *v, int limbs, uint32_t *result) |
bool | SquareRoot (int limbs, const uint32_t *square, uint32_t *root) |
uint32_t | MonReducePrecomp (uint32_t modulus0) |
void | MonInputResidue (const uint32_t *n, int n_limbs, const uint32_t *modulus, int m_limbs, uint32_t *n_residue) |
void | MonPro (int limbs, const uint32_t *a_residue, const uint32_t *b_residue, const uint32_t *modulus, uint32_t mod_inv, uint32_t *result) |
void | MonInverse (int limbs, const uint32_t *a_residue, const uint32_t *modulus, uint32_t mod_inv, uint32_t *result) |
void | MonReduce (int limbs, uint32_t *s, const uint32_t *modulus, uint32_t mod_inv, uint32_t *result) |
void | MonFinish (int limbs, uint32_t *n, const uint32_t *modulus, uint32_t mod_inv) |
uint32_t * | PrecomputeWindow (const uint32_t *base, const uint32_t *modulus, int limbs, uint32_t mod_inv, int window_bits) |
void | MonExpMod (const uint32_t *base, const uint32_t *exponent, int exponent_limbs, const uint32_t *modulus, int mod_limbs, uint32_t mod_inv, uint32_t *result) |
void | ExpMod (const uint32_t *base, int base_limbs, const uint32_t *exponent, int exponent_limbs, const uint32_t *modulus, int mod_limbs, uint32_t mod_inv, uint32_t *result) |
uint32_t | ExpMod (uint32_t b, uint32_t e, uint32_t m) |
bool | RabinMillerPrimeTest (const uint32_t *n, int limbs, uint32_t k) |
void | GenerateStrongPseudoPrime (uint32_t *n, int limbs) |
void | ToLittleEndian (uint32_t *, int) |
void | FromLittleEndian (uint32_t *, int) |
bool | GreaterOrEqual (const uint32_t *lhs, int lhs_limbs, const uint32_t *rhs, int rhs_limbs) |
bool | LessOrEqual (const uint32_t *lhs, int lhs_limbs, const uint32_t *rhs, int rhs_limbs) |
bool | LessOrEqual32 (const uint32_t *lhs, int lhs_limbs, uint32_t rhs) |
void | ExpCRT (const uint32_t *base, int base_limbs, const uint32_t *exponent, int exponent_limbs, const uint32_t *mod_p, uint32_t p_inv, const uint32_t *mod_q, uint32_t q_inv, const uint32_t *pinvq, int mod_limbs, uint32_t *result) |