|
lime
Lime is a C++ library implementing Open Whisper System Signal protocol
|
Key Encapsulation Mechanism interface. More...
Public Member Functions | |
| virtual void | createKeyPair (Kpair< Algo > &keyPair)=0 |
| generate a new random key pair More... | |
| virtual void | encaps (const K< Algo, lime::Ktype::publicKey > &publicKey, K< Algo, lime::Ktype::cipherText > &cipherText, K< Algo, lime::Ktype::sharedSecret > &sharedSecret)=0 |
| Generate and encapsulate a shared secret for a given public key. More... | |
| virtual void | decaps (const K< Algo, lime::Ktype::privateKey > &privateKey, const K< Algo, lime::Ktype::cipherText > &cipherText, K< Algo, lime::Ktype::sharedSecret > &sharedSecret)=0 |
| decapsulate a shared secret from a cipher text using a private key More... | |
| virtual | ~KEM ()=default |
Key Encapsulation Mechanism interface.
shall be able to provide an interface to any algorithm implementing KEM (with PQ or not)
|
pure virtual |
generate a new random key pair
| [out] | keyPair | The key pair generated |
|
pure virtual |
decapsulate a shared secret from a cipher text using a private key
| [in] | privateKey | The private key used to decapsulate |
| [in] | cipherText | The cipher text |
| [out] | sharedSecret | The retrieved shared secret |
|
pure virtual |
Generate and encapsulate a shared secret for a given public key.
| [in] | publicKey | The public to encapsulate for |
| [out] | cipherText | The cipher text generated |
| [out] | sharedSecret | The shared secret generated |
1.8.10