|
NAMEcrypto —
OpenCrypto algorithms
DESCRIPTIONThe in-kernel OpenCrypto framework supports several different encryption and authentication algorithms. This document describes the parameters and requirements of these algorithms. Unless otherwise noted, all sizes listed below are in bytes.AuthenticatorsAuthenticators compute a value (also known as a digest, hash, or tag) over an input of bytes. In-kernel requests can either compute the value for a given input, or verify if a given tag matches the computed tag for a given input. The following authentication algorithms are supported:
Block CiphersBlock ciphers in OCF can only operate on messages whose length is an exact multiple of the cipher's block size. OCF supports the following block ciphers:
NOTE: The ciphertext stealing part is not implemented in all backends which is why this cipher requires input that is a multiple of the block size. Stream CiphersStream ciphers can operate on messages with arbitrary lengths. OCF supports the following stream ciphers:
The IV for each request must be provided in
crp_iv via the
Authenticated Encryption with Associated Data AlgorithmsAEAD algorithms in OCF combine a stream cipher with an authentication algorithm to provide both secrecy and authentication. AEAD algorithms accept additional authentication data (AAD) in addition to the ciphertext or plaintext. AAD is passed to the authentication algorithm as input in a method defined by the specific AEAD algorithm.AEAD algorithms in OCF accept a nonce that is combined with an
algorithm-defined counter to construct the IV for the underlying stream
cipher. This nonce must be provided in crp_iv via the
The following AEAD algorithms are supported:
SEE ALSOcrypto(4), crypto(9)HISTORYThecrypto manual page first appeared in
FreeBSD 10.1.
Visit the GSP FreeBSD Man Page Interface. |