| 
    Crypto++ 8.9
    
   Free C++ class library of cryptographic schemes 
   | 
 
Elliptic Curve Integrated Encryption Scheme. More...
#include <eccrypto.h>
 Inheritance diagram for ECIES< EC, HASH, COFACTOR_OPTION, DHAES_MODE, LABEL_OCTETS >:Static Public Member Functions | |
| static const char * | StaticAlgorithmName () | 
Additional Inherited Members | |
  Public Types inherited from DL_ES< KEYS, AA, DA, EA, ALG_INFO > | |
| typedef PK_FinalTemplate< DL_DecryptorImpl< SchemeOptions > > | Decryptor | 
| implements PK_Decryptor interface   | |
| typedef PK_FinalTemplate< DL_EncryptorImpl< SchemeOptions > > | Encryptor | 
| implements PK_Encryptor interface   | |
Elliptic Curve Integrated Encryption Scheme.
| COFACTOR_OPTION | cofactor multiplication option | 
| HASH | HashTransformation derived class used for key derivation and MAC computation | 
| DHAES_MODE | flag indicating if the MAC includes additional context parameters such as u·V, v·U and label | 
| LABEL_OCTETS | flag indicating if the label size is specified in octets or bits | 
ECIES is an Elliptic Curve based Integrated Encryption Scheme (IES). The scheme combines a Key Encapsulation Method (KEM) with a Data Encapsulation Method (DEM) and a MAC tag. The scheme is IND-CCA2, which is a strong notion of security. You should prefer an Integrated Encryption Scheme over homegrown schemes.
If you desire an Integrated Encryption Scheme with Crypto++ 4.2 compatibility, then use the ECIES_P1363. If you desire an Integrated Encryption Scheme compatible with Bouncy Castle 1.54 and Botan 1.11 compatibility, then use the ECIES template class with NoCofactorMultiplication, DHAES_MODE=true and LABEL_OCTETS=false.
The default template parameters ensure compatibility with Bouncy Castle 1.54 and Botan 1.11. The combination of IncompatibleCofactorMultiplication and DHAES_MODE=true is recommended for best efficiency and security. SHA1 is used for compatibility reasons, but it can be changed if desired. 
Definition at line 608 of file eccrypto.h.
      
  | 
  inlinestatic | 
Definition at line 617 of file eccrypto.h.