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

#include <p6encryptenvelope.h>

Inherits P6R::p6ICom.

Public Member Functions

virtual P6R::P6ERR addKey (p6ICryptoKey *pCryptoKey, P6CRYPTODATASINK *pOutKeyWrapper)=0
 
virtual P6INT32 addref (void)=0
 
virtual P6R::P6ERR encryptEnvelope (P6CRYPTODATASOURCE *pInData, P6CRYPTODATASINK *pOutData)=0
 
virtual P6R::P6ERR initialize (P6ENCENVFLAGS flags, P6UINT16 numPubKeys, P6CRYPTOCIPHER mode, P6UINT32 keySize, p6IRandom *pRandom)=0
 
virtual P6R::P6ERR queryInterface (const P6R::P6IID &iid, P6VOID **ppIface)=0
 
virtual P6INT32 release (void)=0
 

Detailed Description

This interface provides a mechanism to use PKI for the encryption of chunks of data.

This is done by using PKI public–private key pairs to encrypt a symetric key (the session key) thus providing an easy scheme of key distribution. The symetric key is what is actually used to encrypt / decrypt the real data to be transported. The encrypted session key and data are then transported to the receiver. (The actual transport is not provided here.)

The session key is encrypted using the public key at the sender. The private key is used to decrypt the session key at the receiver. This session key is used only once. The p6IDecryptEnvelope interface is used at the receiver.

Definition at line 52 of file p6encryptenvelope.h.


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