295fc13ef3
The GCM interface now has separate functions to start the operation and to pass the associated data. This is in preparation for allowing the associated data to be passed in chunks with repeatated calls to mbedtls_gcm_update_ad(). Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
18 lines
980 B
Plaintext
18 lines
980 B
Plaintext
API changes
|
|
* The interface of the GCM module has changed to remove restrictions on
|
|
how the input to multipart operations is broken down. mbedtls_gcm_finish()
|
|
now takes an extra output parameter for the last partial output block.
|
|
mbedtls_gcm_update() now takes extra parameters for the output length.
|
|
The software implementation always produces the full output at each
|
|
call to mbedtls_gcm_update(), but alternative implementations activated
|
|
by MBEDTLS_GCM_ALT may delay partial blocks to the next call to
|
|
mbedtls_gcm_update() or mbedtls_gcm_finish(). Furthermore, applications
|
|
no longer pass the associated data to mbedtls_gcm_starts(), but to the
|
|
new function mbedtls_gcm_update_ad().
|
|
These changes are backward compatible for users of the cipher API.
|
|
|
|
Features
|
|
* The multi-part GCM interface (mbedtls_gcm_update() or
|
|
mbedtls_cipher_update()) no longer requires the size of partial inputs to
|
|
be a multiple of 16.
|