RandomizedTrapdoorFunctionInverse Class Referenceabstract

Applies the inverse of the trapdoor function, using random data if required. More...

Inheritance diagram for RandomizedTrapdoorFunctionInverse:

## Public Member Functions

virtual Integer | CalculateRandomizedInverse (RandomNumberGenerator &rng, const Integer &x) const =0
| Applies the inverse of the trapdoor function, using random data if required. More...
virtual bool | IsRandomized () const
| Determines if the decryption algorithm is randomized. More...

## Detailed Description

Applies the inverse of the trapdoor function, using random data if required.

`CalculateInverse()` is the foundation for decrypting a message under a private key in a public key cryptosystem. Derived classes will override it at some point.

See also
  TrapdoorFunctionBounds(), RandomizedTrapdoorFunction(), TrapdoorFunction(), RandomizedTrapdoorFunctionInverse() and TrapdoorFunctionInverse()

Definition at line 159 of file pubkey.h.

## Member Function Documentation

## CalculateRandomizedInverse()

virtual Integer RandomizedTrapdoorFunctionInverse::CalculateRandomizedInverse | ( | RandomNumberGenerator & | rng,
|  | const Integer & | x
| ) |  | const

pure virtual

Applies the inverse of the trapdoor function, using random data if required.

Parameters

  rng | a `RandomNumberGenerator` derived class
  x | the message on which the decryption function is applied

Returns
  the message `x` decrypted under the private key

`CalculateRandomizedInverse` is a generalization of decryption using the private key The `RandomNumberGenerator` may (or may not) be required. Derived classes must implement it.

Implemented in TrapdoorFunctionInverse, and InvertibleESIGNFunction.

## IsRandomized()

virtual bool RandomizedTrapdoorFunctionInverse::IsRandomized | ( |  | ) | const

inline virtual

Determines if the decryption algorithm is randomized.

Returns
  `true` if the decryption algorithm is randomized, `false` otherwise

If `IsRandomized()` returns `false`, then `NullRNG()` can be used.

Reimplemented in TrapdoorFunctionInverse.

Definition at line 175 of file pubkey.h.

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

- pubkey.h