1 #ifndef CRYPTOPP_BLUMSHUB_H
2 #define CRYPTOPP_BLUMSHUB_H
6 NAMESPACE_BEGIN(CryptoPP)
8 class BlumGoldwasserPublicKey;
9 class BlumGoldwasserPrivateKey;
18 unsigned int GenerateBit();
20 void GenerateBlock(byte *output,
size_t size);
21 void ProcessData(byte *outString,
const byte *inString,
size_t length);
28 word maxBits, bitsLeft;
31 friend class BlumGoldwasserPublicKey;
32 friend class BlumGoldwasserPrivateKey;
44 void Seek(lword index);
bool IsSelfInverting() const
returns whether this transformation is self-inverting (e.g. xor with a keystream) ...
void Seek(lword index)
for random access ciphers, seek to an absolute position
ring of congruence classes modulo n
interface for random number generators
bool IsForwardTransformation() const
returns whether this is an encryption object
multiple precision integer and basic arithmetics
bool IsRandomAccess() const
returns whether this cipher supports random access
BlumBlumShub with factorization of the modulus.
BlumBlumShub without factorization of the modulus.