Remove the workaround for psa_key_agreement_internal
Remove the workaround for psa_key_agreement_internal to have a shared_secret array always non-zero. The spec is recently updated so that PSA_RAW_KEY_AGREEMENT_OUTPUT_MAX_SIZE is always non-zero Signed-off-by: Antonio de Angelis <antonio.deangelis@arm.com>
This commit is contained in:
parent
f1adc2a7a1
commit
8e9d6b927e
1 changed files with 1 additions and 6 deletions
|
@ -7049,13 +7049,8 @@ static psa_status_t psa_key_agreement_internal(psa_key_derivation_operation_t *o
|
||||||
size_t peer_key_length)
|
size_t peer_key_length)
|
||||||
{
|
{
|
||||||
psa_status_t status;
|
psa_status_t status;
|
||||||
#if PSA_RAW_KEY_AGREEMENT_OUTPUT_MAX_SIZE != 0
|
|
||||||
uint8_t shared_secret[PSA_RAW_KEY_AGREEMENT_OUTPUT_MAX_SIZE];
|
uint8_t shared_secret[PSA_RAW_KEY_AGREEMENT_OUTPUT_MAX_SIZE];
|
||||||
size_t shared_secret_length = sizeof(shared_secret);
|
|
||||||
#else
|
|
||||||
uint8_t *shared_secret = NULL;
|
|
||||||
size_t shared_secret_length = 0;
|
size_t shared_secret_length = 0;
|
||||||
#endif
|
|
||||||
psa_algorithm_t ka_alg = PSA_ALG_KEY_AGREEMENT_GET_BASE(operation->alg);
|
psa_algorithm_t ka_alg = PSA_ALG_KEY_AGREEMENT_GET_BASE(operation->alg);
|
||||||
|
|
||||||
/* Step 1: run the secret agreement algorithm to generate the shared
|
/* Step 1: run the secret agreement algorithm to generate the shared
|
||||||
|
@ -7064,7 +7059,7 @@ static psa_status_t psa_key_agreement_internal(psa_key_derivation_operation_t *o
|
||||||
private_key,
|
private_key,
|
||||||
peer_key, peer_key_length,
|
peer_key, peer_key_length,
|
||||||
shared_secret,
|
shared_secret,
|
||||||
shared_secret_length,
|
sizeof(shared_secret),
|
||||||
&shared_secret_length);
|
&shared_secret_length);
|
||||||
if (status != PSA_SUCCESS) {
|
if (status != PSA_SUCCESS) {
|
||||||
goto exit;
|
goto exit;
|
||||||
|
|
Loading…
Reference in a new issue