Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

CODEX_Ciphers::ElGamalCipherText Class Reference

Serializable encapsulation of an ElGamal ciphertext. More...

#include <ElGamal.h>

Inheritance diagram for CODEX_Ciphers::ElGamalCipherText:

Inheritance graph
[legend]
Collaboration diagram for CODEX_Ciphers::ElGamalCipherText:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ElGamalCipherText ()
 Default constructor, for creating an object to be unmarshalled.
 ElGamalCipherText (BIGNUM *c1, BIGNUM *c2)
 Constructor taking ciphertext as two BIGNUM%s.
 ElGamalCipherText (const CODEX_ASN1::BigNumber &c1, const CODEX_ASN1::BigNumber &c2)
 Constructor taking ciphertext as two BigNumber%s.
 ElGamalCipherText (const ElGamalCipherText &aCT)
 Copy constructor.
virtual ~ElGamalCipherText ()
 Destructor.
void operator= (const ElGamalCipherText &aCT)
 Assignment operator.
bool operator< (const ElGamalCipherText &aCT) const
 Less-than operator.
bool operator== (const ElGamalCipherText &aCT) const
 Equality operator.
bool operator!= (const ElGamalCipherText &aCT) const
 Inequality operator.
const CODEX_ASN1::BigNumberc1 () const
 First part of the ciphertext -- g^k mod p.
const CODEX_ASN1::BigNumberc2 () const
 Second part of the ciphertext -- m y^k mod p.
ElGamalCipherTextblind (const ElGamalCipherText &aOther, const CODEX_ASN1::BigNumber &modulus) const
 Blind a ciphertext.
int marshal (unsigned char **pp) const
 Serialize the object.
void * unmarshal (void *bogus, unsigned char **pp, long length)
 Unserialize the object.
bool initialized () const

Protected Attributes

bool m_initialized
 Has this object been initialized yet, or is it still blank?

Detailed Description

Serializable encapsulation of an ElGamal ciphertext.

The notation (c1,c2) follows that of ElGamal's original paper.

Definition at line 37 of file ElGamal.h.


Member Function Documentation

ElGamalCipherText * ElGamalCipherText::blind const ElGamalCipherText aOther,
const CODEX_ASN1::BigNumber modulus
const
 

Blind a ciphertext.

Parameters:
aOther Another ciphertext
modulus The modulus for the group in which ciphertexts live
Returns:
A pointer to a new ciphertext which is the product of the current ciphertext and the one passed in.

Definition at line 90 of file ElGamalCipherText.cc.

References ElGamalCipherText(), and CODEX_ASN1::BigNumber::value().

bool CODEX_ASN1::Base::initialized  )  const [inline, inherited]
 

Returns:
Has this object been initialized?

Definition at line 175 of file Base.h.

References CODEX_ASN1::Base::m_initialized.

Referenced by CODEX_APSS::SecretManagement::addComputeMsg(), CODEX_APSS::SecretManagement::addEstablishMsg(), CODEX_APSS::SecretManagement::addEstablishResponse(), CODEX_APSS::SecretManagement::addInitMsg(), CODEX_APSS::SecretManagement::addSharing(), CODEX_APSS::SecretManagement::addSubsharing(), CODEX_VSS::Combinatoric< NumT, ThreshT >::apply(), CODEX_Server::ServerState::caKey(), CODEX_KeyService::ClientCreateCallback::ClientCreateCallback(), CODEX_VSS::Combinatoric< NumT, ThreshT >::count(), CODEX_Server::QuorumBuilderAct::handler(), CODEX_APSS::MessageVerifier::handler(), CODEX_KeyService::DelegateResponseVerifier::handler(), CODEX_KeyService::DelegateRequestDistributor::handler(), CODEX_KeyService::ClientMessageVerifier::handler(), CODEX_KeyService::ClientMessageSigner::handler(), CODEX_VSS::SubshareLabel< LabelType >::marshal(), CODEX_KeyService::KeyInfo::marshal(), CODEX_VSS::LabeledShare< ShareType, OneWay >::marshal(), CODEX_VSS::ShareLabel< _ShareType, _OneWay >::marshal(), CODEX_VSS::ModExpFunctionalArgs::marshal(), CODEX_VSS::Combinatoric< NumT, ThreshT >::marshal(), CODEX_KeyService::SignWriteCallback::operator()(), CODEX_KeyService::SignReadCallback::operator()(), CODEX_KeyService::SignCreateCallback::operator()(), CODEX_VSS::ModExpFunctional::operator()(), CODEX_KeyService::ClientReadCallback::operator()(), CODEX_KeyService::ClientCreateCallback::operator()(), CODEX_VSS::Combinatoric< NumT, ThreshT >::operator+=(), CODEX_Server::ServerState::readElGamalShares(), CODEX_VSS::Combinatoric< NumT, ThreshT >::recover(), CODEX_APSS::SecretManagement::sendFinished(), CODEX_Server::ServerState::serviceKey(), CODEX_Server::ServerState::setEGShareCallback(), and CODEX_Server::ServerState::setRSAShareCallback().


The documentation for this class was generated from the following files:
Generated on Fri May 6 17:41:50 2005 for COrnell Data EXchange (CODEX) by  doxygen 1.4.1