|  | 
|  | InvertibleRWFunction () | 
|  | Construct an InvertibleRWFunction. 
 | 
|  | 
| void | Initialize (const Integer &n, const Integer &p, const Integer &q, const Integer &u) | 
|  | Initialize a Rabin-Williams private key. 
 | 
|  | 
| void | Initialize (RandomNumberGenerator &rng, unsigned int modulusBits) | 
|  | Create a Rabin-Williams private key. 
 | 
|  | 
| void | BERDecode (BufferedTransformation &bt) | 
|  | 
| void | DEREncode (BufferedTransformation &bt) const | 
|  | 
| void | Save (BufferedTransformation &bt) const | 
|  | Saves a key to a BufferedTransformation. 
 | 
|  | 
| void | Load (BufferedTransformation &bt) | 
|  | Loads a key from a BufferedTransformation. 
 | 
|  | 
| Integer | CalculateInverse (RandomNumberGenerator &rng, const Integer &x) const | 
|  | Calculates the inverse of an element. 
 | 
|  | 
| bool | Validate (RandomNumberGenerator &rng, unsigned int level) const | 
|  | Check this object for errors. 
 | 
|  | 
| bool | GetVoidValue (const char *name, const std::type_info &valueType, void *pValue) const | 
|  | Get a named value. 
 | 
|  | 
| void | AssignFrom (const NameValuePairs &source) | 
|  | Assign values to this object. 
 | 
|  | 
| void | GenerateRandom (RandomNumberGenerator &rng, const NameValuePairs &alg) | 
|  | 
| const Integer & | GetPrime1 () const | 
|  | 
| const Integer & | GetPrime2 () const | 
|  | 
| const Integer & | GetMultiplicativeInverseOfPrime2ModPrime1 () const | 
|  | 
| void | SetPrime1 (const Integer &p) | 
|  | 
| void | SetPrime2 (const Integer &q) | 
|  | 
| void | SetMultiplicativeInverseOfPrime2ModPrime1 (const Integer &u) | 
|  | 
| virtual bool | SupportsPrecomputation () const | 
|  | Determines whether the object supports precomputation. 
 | 
|  | 
| virtual void | Precompute (unsigned int unused=0) | 
|  | Perform precomputation. 
 | 
|  | 
| virtual void | Precompute (unsigned int unused=0) const | 
|  | 
| virtual void | LoadPrecomputation (BufferedTransformation &storedPrecomputation) | 
|  | Retrieve previously saved precomputation. 
 | 
|  | 
| virtual void | SavePrecomputation (BufferedTransformation &storedPrecomputation) const | 
|  | Save precomputation for later use. 
 | 
|  | 
| void | Initialize (const Integer &n) | 
|  | Initialize a Rabin-Williams public key. 
 | 
|  | 
| void | BERDecode (BufferedTransformation &bt) | 
|  | 
| void | DEREncode (BufferedTransformation &bt) const | 
|  | 
| void | Save (BufferedTransformation &bt) const | 
|  | Saves a key to a BufferedTransformation. 
 | 
|  | 
| void | Load (BufferedTransformation &bt) | 
|  | Loads a key from a BufferedTransformation. 
 | 
|  | 
| Integer | ApplyFunction (const Integer &x) const | 
|  | Applies the trapdoor. 
 | 
|  | 
| Integer | PreimageBound () const | 
|  | Returns the maximum size of a message before the trapdoor function is applied. 
 | 
|  | 
| Integer | ImageBound () const | 
|  | Returns the maximum size of a representation after the trapdoor function is applied. 
 | 
|  | 
| bool | Validate (RandomNumberGenerator &rng, unsigned int level) const | 
|  | Check this object for errors. 
 | 
|  | 
| bool | GetVoidValue (const char *name, const std::type_info &valueType, void *pValue) const | 
|  | Get a named value. 
 | 
|  | 
| void | AssignFrom (const NameValuePairs &source) | 
|  | Assign values to this object. 
 | 
|  | 
| const Integer & | GetModulus () const | 
|  | 
| void | SetModulus (const Integer &n) | 
|  | 
| Integer | ApplyRandomizedFunction (RandomNumberGenerator &rng, const Integer &x) const | 
|  | Applies the trapdoor function. 
 | 
|  | 
| bool | IsRandomized () const | 
|  | Determines if the encryption algorithm is randomized. 
 | 
|  | 
| virtual Integer | MaxPreimage () const | 
|  | Returns the maximum size of a message before the trapdoor function is applied bound to a public key. 
 | 
|  | 
| virtual Integer | MaxImage () const | 
|  | Returns the maximum size of a representation after the trapdoor function is applied bound to a public key. 
 | 
|  | 
| virtual void | ThrowIfInvalid (RandomNumberGenerator &rng, unsigned int level) const | 
|  | Check this object for errors. 
 | 
|  | 
| void | DoQuickSanityCheck () const | 
|  | Perform a quick sanity check. 
 | 
|  | 
| template<class T > | 
| bool | GetThisObject (T &object) const | 
|  | Get a copy of this object or subobject. 
 | 
|  | 
| template<class T > | 
| bool | GetThisPointer (T *&ptr) const | 
|  | Get a pointer to this object. 
 | 
|  | 
| template<class T > | 
| bool | GetValue (const char *name, T &value) const | 
|  | Get a named value. 
 | 
|  | 
| template<class T > | 
| T | GetValueWithDefault (const char *name, T defaultValue) const | 
|  | Get a named value. 
 | 
|  | 
| CRYPTOPP_DLL std::string | GetValueNames () const | 
|  | Get a list of value names that can be retrieved. 
 | 
|  | 
| CRYPTOPP_DLL bool | GetIntValue (const char *name, int &value) const | 
|  | Get a named value with type int. 
 | 
|  | 
| CRYPTOPP_DLL int | GetIntValueWithDefault (const char *name, int defaultValue) const | 
|  | Get a named value with type int, with default. 
 | 
|  | 
| CRYPTOPP_DLL bool | GetWord64Value (const char *name, word64 &value) const | 
|  | Get a named value with type word64. 
 | 
|  | 
| CRYPTOPP_DLL word64 | GetWord64ValueWithDefault (const char *name, word64 defaultValue) const | 
|  | Get a named value with type word64, with default. 
 | 
|  | 
| template<class T > | 
| void | GetRequiredParameter (const char *className, const char *name, T &value) const | 
|  | Retrieves a required name/value pair. 
 | 
|  | 
| CRYPTOPP_DLL void | GetRequiredIntParameter (const char *className, const char *name, int &value) const | 
|  | Retrieves a required name/value pair. 
 | 
|  | 
| Integer | CalculateRandomizedInverse (RandomNumberGenerator &rng, const Integer &x) const | 
|  | Applies the inverse of the trapdoor function. 
 | 
|  | 
| bool | IsRandomized () const | 
|  | Determines if the decryption algorithm is randomized. 
 | 
|  | 
| void | GenerateRandomWithKeySize (RandomNumberGenerator &rng, unsigned int keySize) | 
|  | Generate a random key or crypto parameters. 
 | 
|  | 
Rabin-Williams trapdoor function using the private key. 
- Since
- Crypto++ 3.0, Tweaked roots using e and f since Crypto++ 5.6.4 
Definition at line 59 of file rw.h.