Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
P6R::p6IDHKeyExchange Interface Referenceabstract

#include <p6dhkeyexchange.h>

Inherits P6R::p6ICom.

Public Member Functions

virtual P6INT32 addref (void)=0
 
virtual P6R::P6ERR calculateSharedSecret (const P6UCHAR *pPublicKey, P6UINT32 keyLength, P6UCHAR *pSharedSecret, P6UINT32 cBuffer, P6UINT32 *pWritten)=0
 
virtual P6R::P6ERR checkPrime (void)=0
 
virtual P6R::P6ERR genDHKeyPair (P6DHGROUP keyType, P6CHAR *pPrime, P6UINT32 generator)=0
 
virtual P6R::P6ERR genDHKeyPairByBinary (P6BSTR prime, P6BSTR generator)=0
 
virtual P6R::P6ERR generatePrime (P6UINT32 primeLength, P6UINT32 generator, p6IRandom *pRandom)=0
 
virtual P6R::P6ERR getPrime (P6UCHAR *pBuffer, P6UINT32 cBuffer, P6UINT32 *pWritten)=0
 
virtual P6R::P6ERR getPrivateKey (P6UCHAR *pBuffer, P6UINT32 cBuffer, P6UINT32 *pWritten)=0
 
virtual P6R::P6ERR getPublicKey (P6UCHAR *pBuffer, P6UINT32 cBuffer, P6UINT32 *pWritten)=0
 
virtual P6R::P6ERR getRawPrivateKey (P6BSTR *pP, P6BSTR *pG, P6BSTR *pX)=0
 
virtual P6R::P6ERR getRawPublicKey (P6BSTR *pP, P6BSTR *pG, P6BSTR *pY)=0
 
virtual P6R::P6ERR initialize (P6DHKEXFLAGS flags)=0
 
virtual P6R::P6ERR loadPrivateKey (P6UCHAR *pBuffer, P6UINT32 cBuffer)=0
 
virtual P6R::P6ERR loadPublicKey (P6UCHAR *pBuffer, P6UINT32 cBuffer)=0
 
virtual P6R::P6ERR loadRawPrivateKey (const P6BSTR *pP, const P6BSTR *pG, const P6BSTR *pX)=0
 
virtual P6R::P6ERR loadRawPublicKey (const P6BSTR *pP, const P6BSTR *pG, const P6BSTR *pY)=0
 
virtual P6R::P6ERR queryInterface (const P6R::P6IID &iid, P6VOID **ppIface)=0
 
virtual P6INT32 release (void)=0
 

Detailed Description

This component provides the basics of the key exchange calculates used in the Diffe-Hellman key exchange algorithm.

However, it does not provide a facility to generate primes, but instead has built in primes that the caller must select and use. This component can be used over and over again by repeated calls to genDHKeyPair() which will reset state of the object.

Definition at line 63 of file p6dhkeyexchange.h.


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