Sortix nightly manual
This manual documents Sortix nightly, a development build that has not been officially released. You can instead view this document in the latest official manual.
|EVP(3)||Library Functions Manual||EVP(3)|
high level cryptographic functions
#include <openssl/evp.h>EVP_SealInit(3) and EVP_OpenInit(3) provide public key encryption and decryption to implement digital "envelopes". The EVP_DigestSignInit(3) and EVP_DigestVerifyInit(3) functions implement digital signatures and Message Authentication Codes (MACs). Also see the older EVP_SignInit(3) and EVP_VerifyInit(3) functions. Symmetric encryption is available with the EVP_EncryptInit(3) functions. The EVP_DigestInit(3) functions provide message digests. Authenticated encryption with additional data (AEAD) is available with the EVP_AEAD_CTX_init(3) functions. The
EVP_PKEY_*() functions provide a high level interface to asymmetric algorithms. To create a new EVP_PKEY, see EVP_PKEY_new(3). EVP_PKEYs can be associated with a private key of a particular algorithm by using the functions described in the EVP_PKEY_set1_RSA(3) page, or new keys can be generated using EVP_PKEY_keygen(3). EVP_PKEYs can be compared using EVP_PKEY_cmp(3) or printed using EVP_PKEY_print_private(3). The
EVP_PKEY_*() functions support the full range of asymmetric algorithm operations:
- For key agreement, see EVP_PKEY_derive(3).
- For signing and verifying, see EVP_PKEY_sign(3), EVP_PKEY_verify(3), and EVP_PKEY_verify_recover(3). However, note that these functions do not perform a digest of the data to be signed. Therefore normally you would use the EVP_DigestSignInit(3) functions for this purpose.
- For encryption and decryption see EVP_PKEY_encrypt(3) and EVP_PKEY_decrypt(3), respectively. However, note that these functions perform encryption and decryption only. As public key encryption is an expensive operation, normally you would wrap an encrypted message in a digital envelope using the EVP_SealInit(3) and EVP_OpenInit(3) functions.
|August 25, 2019||Debian|