|
|
@ -55,6 +55,7 @@ namespace crypto |
|
|
|
// ECICS
|
|
|
|
// ECICS
|
|
|
|
void ECICSEncrypt (const EC_GROUP * curve, const EC_POINT * key, const uint8_t * data, uint8_t * encrypted, BN_CTX * ctx); // 222 bytes data, 512 bytes encrypted
|
|
|
|
void ECICSEncrypt (const EC_GROUP * curve, const EC_POINT * key, const uint8_t * data, uint8_t * encrypted, BN_CTX * ctx); // 222 bytes data, 512 bytes encrypted
|
|
|
|
bool ECICSDecrypt (const EC_GROUP * curve, const BIGNUM * key, const uint8_t * encrypted, uint8_t * data, BN_CTX * ctx); |
|
|
|
bool ECICSDecrypt (const EC_GROUP * curve, const BIGNUM * key, const uint8_t * encrypted, uint8_t * data, BN_CTX * ctx); |
|
|
|
|
|
|
|
void GenerateECICSKeyPair (const EC_GROUP * curve, BIGNUM *& priv, EC_POINT *& pub); |
|
|
|
|
|
|
|
|
|
|
|
// HMAC
|
|
|
|
// HMAC
|
|
|
|
typedef i2p::data::Tag<32> MACKey; |
|
|
|
typedef i2p::data::Tag<32> MACKey; |
|
|
|