Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

ECMQVC Class Template Reference

Elliptic Curve Menezes-Qu-Vanstone with Cofactor Multiplication, AKA ECMQVC. More...

#include <eccrypto.h>

Inheritance diagram for ECMQVC:

ECParameters PK_WithPrecomputation PK_Precomputation PK_Precomputation List of all members.

Public Types

typedef EC::Point Point

Public Methods

 ECMQVC (const ECParameters< EC > &params)
 ECMQVC (const OID &oid)
 ECMQVC (const EC &ec,const Point &G,const Integer &n,const Integer &k)
 ECMQVC (BufferedTransformation &bt)
bool ValidateDomainParameters (RandomNumberGenerator &rng)const
unsigned int AgreedValueLength ()const
unsigned int StaticPrivateKeyLength ()const
unsigned int StaticPublicKeyLength ()const
void GenerateStaticKeyPair (RandomNumberGenerator &rng,byte *privateKey,byte *publicKey)const
unsigned int EphemeralPrivateKeyLength ()const
unsigned int EphemeralPublicKeyLength ()const
void GenerateEphemeralKeyPair (RandomNumberGenerator &rng,byte *privateKey,byte *publicKey)const
bool Agree (byte *agreedValue,const byte *staticPrivateKey,const byte *ephemeralPrivateKey,const byte *staticOtherPublicKey,const byte *ephemeralOtherPublicKey,bool validateStaticOtherPublicKey=true)const

Detailed Description

template<class EC> class ECMQVC

Elliptic Curve Menezes-Qu-Vanstone with Cofactor Multiplication, AKA ECMQVC.

Definition at line 138 of file eccrypto.h.


Member Typedef Documentation

template<class EC>
typedef EC::Point ECMQVC<EC>::Point
 

Reimplemented from ECParameters.

Definition at line 141 of file eccrypto.h.


Constructor & Destructor Documentation

template<class EC>
ECMQVC<EC>::ECMQVC<EC> ( const ECParameters< EC > & params ) [inline]
 

Definition at line 143 of file eccrypto.h.

template<class EC>
ECMQVC<EC>::ECMQVC<EC> ( const OID & oid ) [inline]
 

Definition at line 143 of file eccrypto.h.

template<class EC>
ECMQVC<EC>::ECMQVC<EC> ( const EC & ec,
const Point & G,
const Integer & n,
const Integer & k ) [inline]
 

Definition at line 143 of file eccrypto.h.

template<class EC>
ECMQVC<EC>::ECMQVC<EC> ( BufferedTransformation & bt ) [inline]
 

Definition at line 143 of file eccrypto.h.


Member Function Documentation

template<class EC>
bool ECMQVC< EC >::Agree ( byte * agreedValue,
const byte * staticPrivateKey,
const byte * ephemeralPrivateKey,
const byte * staticOtherPublicKey,
const byte * ephemeralOtherPublicKey,
bool validateStaticOtherPublicKey = true ) const
 

Definition at line 733 of file eccrypto.cpp.

template<class EC>
unsigned int ECMQVC<EC>::AgreedValueLength ( ) const [inline]
 

Definition at line 147 of file eccrypto.h.

template<class EC>
unsigned int ECMQVC<EC>::EphemeralPrivateKeyLength ( ) const [inline]
 

Definition at line 153 of file eccrypto.h.

template<class EC>
unsigned int ECMQVC<EC>::EphemeralPublicKeyLength ( ) const [inline]
 

Definition at line 154 of file eccrypto.h.

template<class EC>
void ECMQVC< EC >::GenerateEphemeralKeyPair ( RandomNumberGenerator & rng,
byte * privateKey,
byte * publicKey ) const
 

Definition at line 723 of file eccrypto.cpp.

template<class EC>
void ECMQVC< EC >::GenerateStaticKeyPair ( RandomNumberGenerator & rng,
byte * privateKey,
byte * publicKey ) const
 

Definition at line 714 of file eccrypto.cpp.

template<class EC>
unsigned int ECMQVC<EC>::StaticPrivateKeyLength ( ) const [inline]
 

Definition at line 149 of file eccrypto.h.

template<class EC>
unsigned int ECMQVC<EC>::StaticPublicKeyLength ( ) const [inline]
 

Definition at line 150 of file eccrypto.h.

template<class EC>
bool ECMQVC<EC>::ValidateDomainParameters ( RandomNumberGenerator & rng ) const [inline]
 

Definition at line 145 of file eccrypto.h.


The documentation for this class was generated from the following files:
Generated at Mon Jan 15 01:16:47 2001 for Crypto++ by doxygen1.2.4 written by Dimitri van Heesch, © 1997-2000