Crypto++ 8.7
Free C++ class library of cryptographic schemes
|
Elliptic Curve Integrated Encryption Scheme. More...
#include <eccrypto.h>
Static Public Member Functions | |
static const char * | StaticAlgorithmName () |
Additional Inherited Members | |
Public Types inherited from DL_ES< DL_Keys_EC< EC >, DL_KeyAgreementAlgorithm_DH< EC::Point, NoCofactorMultiplication >, DL_KeyDerivationAlgorithm_P1363< EC::Point, true, P1363_KDF2< SHA1 > >, DL_EncryptionAlgorithm_Xor< HMAC< SHA1 >, true, false >, ECIES< EC > > | |
typedef PK_FinalTemplate< DL_DecryptorImpl< SchemeOptions > > | Decryptor |
implements PK_Decryptor interface More... | |
typedef PK_FinalTemplate< DL_EncryptorImpl< SchemeOptions > > | Encryptor |
implements PK_Encryptor interface More... | |
Public Types inherited from DL_Keys_EC< EC > | |
typedef DL_PublicKey_EC< EC > | PublicKey |
typedef DL_PrivateKey_EC< EC > | PrivateKey |
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.