EVP_SealInit(3) | LibreSSL | EVP_SealInit(3) |
NAME
EVP_SealInit, EVP_SealUpdate, EVP_SealFinal - EVP envelope encryptionSYNOPSIS
#include <openssl/evp.h>
int EVP_SealInit(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *type,
unsigned char **ek, int *ekl, unsigned char *iv,
EVP_PKEY **pubk, int npubk);
int EVP_SealUpdate(EVP_CIPHER_CTX *ctx, unsigned char *out,
int *outl, unsigned char *in, int inl);
int EVP_SealFinal(EVP_CIPHER_CTX *ctx, unsigned char *out,
int *outl);
DESCRIPTION
The EVP envelope routines are a high level interface to envelope encryption. They generate a random key and IV (if required) then "envelope" it by using public key encryption. Data can then be encrypted using this key.RETURN VALUES
EVP_SealInit() returns 0 on error or npubk if successful.NOTES
The public key must be RSA because it is the only OpenSSL public key algorithm that supports key transport.SEE ALSO
evp(3), rand(3), EVP_EncryptInit(3), EVP_OpenInit(3)HISTORY
EVP_SealFinal() did not return a value before OpenSSL 0.9.7.2015-10-26 | LibreSSL |