From 6610de034b7be34d2659575f23855246019c6d2e Mon Sep 17 00:00:00 2001 From: Tomas Mraz Date: Wed, 13 Dec 2023 10:06:59 +0100 Subject: [PATCH] AES: Document that the XTS, SIV, WRAP modes do not support streaming Reviewed-by: Shane Lontis Reviewed-by: Tom Cosgrove (Merged from https://github.com/openssl/openssl/pull/23028) (cherry picked from commit 8f0f814d791e0825b96c30494594de619da3e5a5) --- doc/man7/EVP_CIPHER-AES.pod | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/doc/man7/EVP_CIPHER-AES.pod b/doc/man7/EVP_CIPHER-AES.pod index 2c790d9cbd9..3313245f984 100644 --- a/doc/man7/EVP_CIPHER-AES.pod +++ b/doc/man7/EVP_CIPHER-AES.pod @@ -61,6 +61,19 @@ FIPS provider: This implementation supports the parameters described in L. +=head1 NOTES + +The AES-SIV and AES-WRAP mode implementations do not support streaming. That +means to obtain correct results there can be only one L +or L call after the initialization of the context. + +The AES-XTS implementations allow streaming to be performed, but each +L or L call requires each input +to be a multiple of the blocksize. Only the final EVP_EncryptUpdate() or +EVP_DecryptUpdate() call can optionally have an input that is not a multiple +of the blocksize but is larger than one block. In that case ciphertext +stealing (CTS) is used to fill the block. + =head1 SEE ALSO L, L, L -- 2.47.2