MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
TaoCrypt::MontgomeryRepresentation Class Reference

do modular arithmetics in Montgomery representation for increased speed More...

#include <modarith.hpp>

Inheritance diagram for TaoCrypt::MontgomeryRepresentation:
Collaboration diagram for TaoCrypt::MontgomeryRepresentation:

Public Member Functions

 MontgomeryRepresentation (const Integer &modulus)
bool IsMontgomeryRepresentation () const
Integer ConvertIn (const Integer &a) const
Integer ConvertOut (const Integer &a) const
const IntegerMultiplicativeIdentity () const
const IntegerMultiply (const Integer &a, const Integer &b) const
const IntegerSquare (const Integer &a) const
const IntegerMultiplicativeInverse (const Integer &a) const
Integer CascadeExponentiate (const Integer &x, const Integer &e1, const Integer &y, const Integer &e2) const
void SimultaneousExponentiate (Element *results, const Element &base, const Integer *exponents, unsigned int exponentsCount) const
- Public Member Functions inherited from TaoCrypt::ModularArithmetic
 ModularArithmetic (const Integer &modulus=Integer::One())
 ModularArithmetic (const ModularArithmetic &ma)
const IntegerGetModulus () const
void SetModulus (const Integer &newModulus)
const IntegerHalf (const Integer &a) const
bool Equal (const Integer &a, const Integer &b) const
const IntegerIdentity () const
const IntegerAdd (const Integer &a, const Integer &b) const
IntegerAccumulate (Integer &a, const Integer &b) const
const IntegerInverse (const Integer &a) const
const IntegerSubtract (const Integer &a, const Integer &b) const
IntegerReduce (Integer &a, const Integer &b) const
const IntegerDouble (const Integer &a) const
bool IsUnit (const Integer &a) const
const IntegerDivide (const Integer &a, const Integer &b) const
unsigned int MaxElementBitLength () const
unsigned int MaxElementByteLength () const
- Public Member Functions inherited from TaoCrypt::AbstractRing
 AbstractRing (const AbstractRing &source)
AbstractRingoperator= (const AbstractRing &source)
virtual Element Exponentiate (const Element &a, const Integer &e) const
virtual const AbstractGroupMultiplicativeGroup () const
- Public Member Functions inherited from TaoCrypt::AbstractGroup
virtual bool InversionIsFast () const
virtual Element ScalarMultiply (const Element &a, const Integer &e) const
virtual Element CascadeScalarMultiply (const Element &x, const Integer &e1, const Element &y, const Integer &e2) const
virtual void SimultaneousMultiply (Element *results, const Element &base, const Integer *exponents, unsigned int exponentsCount) const

Additional Inherited Members

- Public Types inherited from TaoCrypt::ModularArithmetic
typedef int RandomizationParameter
typedef Integer Element
- Static Public Attributes inherited from TaoCrypt::ModularArithmetic
static const RandomizationParameter DefaultRandomizationParameter
- Protected Attributes inherited from TaoCrypt::ModularArithmetic
Integer modulus
Integer result
Integer result1

Detailed Description

do modular arithmetics in Montgomery representation for increased speed

Definition at line 125 of file modarith.hpp.


The documentation for this class was generated from the following files: