SymmetricEncryptionBox.h 522 B

1234567891011
  1. #include "Openssl_crypto.h"
  2. class SymmetricEncryptionBox {
  3. uint8_t iv[12];
  4. uint8_t symmetric_key[32]; // SHA256 used with ECDHE -> or AES whatever symmetric_key.
  5. // increments last 4 bytes (in big-endian order)
  6. uint32_t aes_gcm_increment_iv_internal_call(uint8_t* iv);
  7. public:
  8. SymmetricEncryptionBox();
  9. uint32_t set_symmetric_key(uint8_t* given_key);
  10. uint32_t encrypt_decrypt(int enc, uint8_t* plaintext, uint32_t plaintext_length, uint8_t* ciphertext, uint32_t* ciphertext_length, uint8_t* tag);
  11. };