blob: 858bd0a73456caa7c68952d2d44f857567df70e3 [file] [log] [blame]
Gilles Peskine9461e452021-04-15 16:48:32 +02001API changes
2 * The interface of the GCM module has changed to remove restrictions on
3 how the input to multipart operations is broken down. mbedtls_gcm_finish()
4 now takes an extra output parameter for the last partial output block.
Gilles Peskinea56c4482021-04-15 17:22:35 +02005 mbedtls_gcm_update() now takes extra parameters for the output length.
Gilles Peskine9461e452021-04-15 16:48:32 +02006 The software implementation always produces the full output at each
7 call to mbedtls_gcm_update(), but alternative implementations activated
8 by MBEDTLS_GCM_ALT may delay partial blocks to the next call to
Gilles Peskine295fc132021-04-15 18:32:23 +02009 mbedtls_gcm_update() or mbedtls_gcm_finish(). Furthermore, applications
10 no longer pass the associated data to mbedtls_gcm_starts(), but to the
11 new function mbedtls_gcm_update_ad().
Gilles Peskine9461e452021-04-15 16:48:32 +020012 These changes are backward compatible for users of the cipher API.
13
Gilles Peskine441907e2021-04-13 16:09:32 +020014Features
15 * The multi-part GCM interface (mbedtls_gcm_update() or
16 mbedtls_cipher_update()) no longer requires the size of partial inputs to
17 be a multiple of 16.
Mateusz Starzykc1ec0b82021-06-07 14:23:24 +020018 * The multi-part GCM interface now supports chunked associated data through
19 multiple calls to mbedtls_gcm_update_ad().