TF-PSA-Crypto 1.0.0 cannot read persistent keys with a legacy PSA_ALG_JPAKE policy #501

Open
opened 2025-10-08 03:58:07 -05:00 by gilles-peskine-arm · 0 comments
gilles-peskine-arm commented 2025-10-08 03:58:07 -05:00 (Migrated from github.com)

Mbed TLS 3.x implemented a beta version of the PSA API for PAKE, where JPAKE was encoded as an algorithm without a parameter PSA_ALG_JPAKE (with the numerical value 0x0a000100). TF-PSA-Crypto implements the final version of this API, and now JPAKE is encoded as PSA_ALG_JPAKE(hash_alg).

Suppose a persistent key was saved in Mbed TLS 3.x with a policy referencing PSA_ALG_JPAKE. In storage, the policy is 0x0a000100. When TF-PSA-Crypto 1.0.0 reads it back, this policy does not correspond to any known algorithm, so the key is not usable for any operation.

Mbed TLS 3.x implemented a beta version of the PSA API for PAKE, where JPAKE was encoded as an algorithm without a parameter `PSA_ALG_JPAKE` (with the numerical value 0x0a000100). TF-PSA-Crypto implements the final version of this API, and now JPAKE is encoded as `PSA_ALG_JPAKE(hash_alg)`. Suppose a persistent key was saved in Mbed TLS 3.x with a policy referencing `PSA_ALG_JPAKE`. In storage, the policy is 0x0a000100. When TF-PSA-Crypto 1.0.0 reads it back, this policy does not correspond to any known algorithm, so the key is not usable for any operation.
Sign in to join this conversation.
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
gh-Mbed-TLS/TF-PSA-Crypto#501
No description provided.