Skip to content

Commit

Permalink
AES: Document that the XTS, SIV, WRAP modes do not support streaming
Browse files Browse the repository at this point in the history
Reviewed-by: Shane Lontis <shane.lontis@oracle.com>
Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
(Merged from #23028)

(cherry picked from commit 8f0f814)
  • Loading branch information
t8m committed Dec 22, 2023
1 parent 141a738 commit 782a34f
Showing 1 changed file with 13 additions and 0 deletions.
13 changes: 13 additions & 0 deletions doc/man7/EVP_CIPHER-AES.pod
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,19 @@ FIPS provider:
This implementation supports the parameters described in
L<EVP_EncryptInit(3)/PARAMETERS>.

=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<EVP_EncryptUpdate(3)>
or L<EVP_DecryptUpdate(3)> call after the initialization of the context.

The AES-XTS implementations allow streaming to be performed, but each
L<EVP_EncryptUpdate(3)> or L<EVP_DecryptUpdate(3)> 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<provider-cipher(7)>, L<OSSL_PROVIDER-FIPS(7)>, L<OSSL_PROVIDER-default(7)>
Expand Down

0 comments on commit 782a34f

Please sign in to comment.