Contains the core library. More...
Classes | |
class | BigIntegerBase |
Template class which adds syntactic sugar to big integer operations. More... | |
class | BigIntegerGmp |
Wrapper class for the most common functions related to the mpz_t datatype of the GMP library. More... | |
struct | BlindingFactorCacheParameters |
Blinding factor cache parameter container struct. More... | |
class | CiphertextBase |
CiphertextBase template class. More... | |
class | CryptoProvider |
Template abstract base class for homomorphic encryption primitives. More... | |
class | DataPacker |
Template class which implements the data packing functionality. More... | |
struct | DgkPublicKey |
The public key container structure for the Dgk cryptosystem. More... | |
struct | DgkPrivateKey |
The private key container structure for the Dgk cryptosystem. More... | |
class | DgkCiphertext |
DGK cipertext. More... | |
struct | DgkRandomizer |
The randomizer type for DGK. More... | |
class | Dgk |
Implementation of the public-key DGK Cryptosystem. More... | |
struct | ElGamalPublicKey |
The public key container structure for the ElGamal cryptosystem. More... | |
struct | ElGamalPrivateKey |
The private key container structure for the ElGamal cryptosystem. More... | |
struct | ElGamalRandomizer |
The randomizer type for Paillier. More... | |
class | ElGamal |
Implementation of the public-key ElGamal Cryptosystem. More... | |
class | ElGamalCiphertext |
ElGamal cipertext. More... | |
struct | OkamotoUchiyamaPublicKey |
The public key container structure for the Okamoto-Uchiyama cryptosystem. More... | |
struct | OkamotoUchiyamaPrivateKey |
The private key container structure for the Okamoto-Uchiyama cryptosystem. More... | |
class | OkamotoUchiyamaCiphertext |
Okamoto-Uchiyama cipertext. More... | |
struct | OkamotoUchiyamaRandomizer |
The randomizer type for Okamoto-Uchiyama. More... | |
class | OkamotoUchiyama |
Implementation of the public-key Okamoto-Uchiyama Cryptosystem. More... | |
struct | PaillierPublicKey |
The public key container structure for the Paillier cryptosystem. More... | |
struct | PaillierPrivateKey |
The private key container structure for the Paillier cryptosystem. More... | |
class | PaillierCiphertext |
Paillier cipertext. More... | |
struct | PaillierRandomizer |
The randomizer type for Paillier. More... | |
class | Paillier |
Implementation of the public-key Paillier Cryptosystem. More... | |
class | RandomProviderBase |
Template class which masks various RandomProvider implementations and provides a common interface that all of them must implement. More... | |
class | RandomProviderGmp |
Wrapper for the required GMP library random number specific functions. More... | |
struct | RandomizerBase |
RandomizerBase struct. More... | |
class | RandomizerCache |
Randomizer cache. More... | |
struct | RandomizerCacheParameters |
Randomizer cache parameter container struct. More... | |
struct | RandomizerContainer |
Stores precomputed random data. More... | |
class | SecureExtremumSelectionServer |
Secure Extremum Selection Server. More... | |
class | SecureExtremumSelectionClient |
Secure Extremum Selection Client. More... | |
struct | SecureMultiplicationBlindingFactorContainer |
Stores precomputed random data. More... | |
class | SecureMultiplicationServer |
Secure Multiplication Server. More... | |
class | SecureMultiplicationClient |
Secure Multiplication Client. More... | |
class | SecurePermutation |
Permutation class which implements the Fisher-Yates (Knuth) shuffle algorithm. More... | |
Functions | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator+ (const long lhs, const BigIntegerBase< T_Impl > &rhs) |
long addition binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator+ (const unsigned long lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned long addition binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator+ (const int lhs, const BigIntegerBase< T_Impl > &rhs) |
int addition binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator+ (const unsigned int lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned int addition binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator- (const long lhs, const BigIntegerBase< T_Impl > &rhs) |
long subtraction binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator- (const unsigned long lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned long subtraction binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator- (const int lhs, const BigIntegerBase< T_Impl > &rhs) |
int subtraction binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator- (const unsigned int lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned int subtraction binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator* (const long lhs, const BigIntegerBase< T_Impl > &rhs) |
long multiplication binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator* (const unsigned long lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned long multiplication binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator* (const int lhs, const BigIntegerBase< T_Impl > &rhs) |
int multiplication binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator* (const unsigned int lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned int multiplication binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator/ (const long lhs, const BigIntegerBase< T_Impl > &rhs) |
long division binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator/ (const unsigned long lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned long division binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator/ (const int lhs, const BigIntegerBase< T_Impl > &rhs) |
int division binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator/ (const unsigned int lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned int division binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator% (const long lhs, const BigIntegerBase< T_Impl > &rhs) |
long modulus binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator% (const unsigned long lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned long modulus binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator% (const int lhs, const BigIntegerBase< T_Impl > &rhs) |
int modulus binary operator More... | |
template<typename T_Impl > | |
BigIntegerBase< T_Impl > | operator% (const unsigned int lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned int modulus binary operator More... | |
template<typename T_Impl > | |
bool | operator== (const long lhs, const BigIntegerBase< T_Impl > &rhs) |
long equality binary operator More... | |
template<typename T_Impl > | |
bool | operator== (const unsigned long lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned long equality binary operator More... | |
template<typename T_Impl > | |
bool | operator== (const int lhs, const BigIntegerBase< T_Impl > &rhs) |
int equality binary operator More... | |
template<typename T_Impl > | |
bool | operator== (const unsigned int lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned int equality binary operator More... | |
template<typename T_Impl > | |
bool | operator!= (const long lhs, const BigIntegerBase< T_Impl > &rhs) |
long inequality binary operator More... | |
template<typename T_Impl > | |
bool | operator!= (const unsigned long lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned long inequality binary operator More... | |
template<typename T_Impl > | |
bool | operator!= (const int lhs, const BigIntegerBase< T_Impl > &rhs) |
int inequality binary operator More... | |
template<typename T_Impl > | |
bool | operator!= (const unsigned int lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned int inequality binary operator More... | |
template<typename T_Impl > | |
bool | operator< (const long lhs, const BigIntegerBase< T_Impl > &rhs) |
long less than binary operator More... | |
template<typename T_Impl > | |
bool | operator< (const unsigned long lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned long less than binary operator More... | |
template<typename T_Impl > | |
bool | operator< (const int lhs, const BigIntegerBase< T_Impl > &rhs) |
int less than binary operator More... | |
template<typename T_Impl > | |
bool | operator< (const unsigned int lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned int less than binary operator More... | |
template<typename T_Impl > | |
bool | operator<= (const long lhs, const BigIntegerBase< T_Impl > &rhs) |
long less than or equal binary operator More... | |
template<typename T_Impl > | |
bool | operator<= (const unsigned long lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned long less than or equal binary operator More... | |
template<typename T_Impl > | |
bool | operator<= (const int lhs, const BigIntegerBase< T_Impl > &rhs) |
int less than or equal binary operator More... | |
template<typename T_Impl > | |
bool | operator<= (const unsigned int lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned int less than or equal binary operator More... | |
template<typename T_Impl > | |
bool | operator>= (const long lhs, const BigIntegerBase< T_Impl > &rhs) |
long greater than or equal binary operator More... | |
template<typename T_Impl > | |
bool | operator>= (const unsigned long lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned long greater than or equal binary operator More... | |
template<typename T_Impl > | |
bool | operator>= (const int lhs, const BigIntegerBase< T_Impl > &rhs) |
int greater than or equal binary operator More... | |
template<typename T_Impl > | |
bool | operator>= (const unsigned int lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned int greater than or equal binary operator More... | |
template<typename T_Impl > | |
bool | operator> (const long lhs, const BigIntegerBase< T_Impl > &rhs) |
long greater than binary operator More... | |
template<typename T_Impl > | |
bool | operator> (const unsigned long lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned long greater than binary operator More... | |
template<typename T_Impl > | |
bool | operator> (const int lhs, const BigIntegerBase< T_Impl > &rhs) |
int greater than binary operator More... | |
template<typename T_Impl > | |
bool | operator> (const unsigned int lhs, const BigIntegerBase< T_Impl > &rhs) |
unsigned int greater than binary operator More... | |
Contains the core library.
bool SeComLib::Core::operator!= | ( | const long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
long inequality binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1914 of file big_integer_base.hpp.
bool SeComLib::Core::operator!= | ( | const unsigned long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned long inequality binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1924 of file big_integer_base.hpp.
bool SeComLib::Core::operator!= | ( | const int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
int inequality binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1934 of file big_integer_base.hpp.
bool SeComLib::Core::operator!= | ( | const unsigned int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned int inequality binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1944 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator% | ( | const long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
long modulus binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1818 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator% | ( | const unsigned long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned long modulus binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1832 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator% | ( | const int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
int modulus binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1846 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator% | ( | const unsigned int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned int modulus binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1860 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator* | ( | const long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
long multiplication binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1722 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator* | ( | const unsigned long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned long multiplication binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1732 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator* | ( | const int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
int multiplication binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1742 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator* | ( | const unsigned int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned int multiplication binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1752 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator+ | ( | const long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
long addition binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1626 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator+ | ( | const unsigned long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned long addition binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1636 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator+ | ( | const int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
int addition binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1646 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator+ | ( | const unsigned int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned int addition binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1656 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator- | ( | const long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
long subtraction binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1666 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator- | ( | const unsigned long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned long subtraction binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1680 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator- | ( | const int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
int subtraction binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1694 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator- | ( | const unsigned int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned int subtraction binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1708 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator/ | ( | const long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
long division binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1762 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator/ | ( | const unsigned long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned long division binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1776 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator/ | ( | const int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
int division binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1790 of file big_integer_base.hpp.
BigIntegerBase< T_Impl > SeComLib::Core::operator/ | ( | const unsigned int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned int division binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1804 of file big_integer_base.hpp.
bool SeComLib::Core::operator< | ( | const long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
long less than binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1954 of file big_integer_base.hpp.
bool SeComLib::Core::operator< | ( | const unsigned long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned long less than binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1964 of file big_integer_base.hpp.
bool SeComLib::Core::operator< | ( | const int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
int less than binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1974 of file big_integer_base.hpp.
bool SeComLib::Core::operator< | ( | const unsigned int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned int less than binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1984 of file big_integer_base.hpp.
bool SeComLib::Core::operator<= | ( | const long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
long less than or equal binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1994 of file big_integer_base.hpp.
bool SeComLib::Core::operator<= | ( | const unsigned long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned long less than or equal binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 2004 of file big_integer_base.hpp.
bool SeComLib::Core::operator<= | ( | const int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
int less than or equal binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 2014 of file big_integer_base.hpp.
bool SeComLib::Core::operator<= | ( | const unsigned int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned int less than or equal binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 2024 of file big_integer_base.hpp.
bool SeComLib::Core::operator== | ( | const long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
long equality binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1874 of file big_integer_base.hpp.
bool SeComLib::Core::operator== | ( | const unsigned long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned long equality binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1884 of file big_integer_base.hpp.
bool SeComLib::Core::operator== | ( | const int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
int equality binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1894 of file big_integer_base.hpp.
bool SeComLib::Core::operator== | ( | const unsigned int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned int equality binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 1904 of file big_integer_base.hpp.
bool SeComLib::Core::operator> | ( | const long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
long greater than binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 2074 of file big_integer_base.hpp.
bool SeComLib::Core::operator> | ( | const unsigned long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned long greater than binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 2084 of file big_integer_base.hpp.
bool SeComLib::Core::operator> | ( | const int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
int greater than binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 2094 of file big_integer_base.hpp.
bool SeComLib::Core::operator> | ( | const unsigned int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned int greater than binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 2104 of file big_integer_base.hpp.
bool SeComLib::Core::operator>= | ( | const long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
long greater than or equal binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 2034 of file big_integer_base.hpp.
bool SeComLib::Core::operator>= | ( | const unsigned long | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned long greater than or equal binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 2044 of file big_integer_base.hpp.
bool SeComLib::Core::operator>= | ( | const int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
int greater than or equal binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 2054 of file big_integer_base.hpp.
bool SeComLib::Core::operator>= | ( | const unsigned int | lhs, |
const BigIntegerBase< T_Impl > & | rhs | ||
) |
unsigned int greater than or equal binary operator
lhs | left hand side operand |
rhs | right hand side operand |
Definition at line 2064 of file big_integer_base.hpp.