From Oberon (Referencing the SPAKE2+ draft2 rendering of the PAKE Extension):
-
The spec draft states on page 30, section 2.1.6 Multi-part PAKE operations (return type description of psa_pake_setup() for PSA_ERROR_INVALID_ARGUMENT):
The key type for password_key is not PSA_KEY_TYPE_PASSWORD or PSA_KEY_TYPE_PASSWORD_HASH.
The types mentioned are wrong for SPAKE2+ and SRP which use their own key types.
We would suggest something like:
The key type is not compatible with the PAKE algorithm and primitive.
-
The spec draft states on page 31, section 2.1.6 Multi-part PAKE operations (return type description of psa_pake_set_role() for PSA_ERROR_INVALID_ARGUMENT):
role is not a valid PAKE role in the operation's algorithm.
An additional case should be added here: "role is not compatible with the key type."
This is needed because the correctness of the key type cannot be tested before the role is known.
The corresponding check has to be done in the psa_pake_set_role() function.
-
The spec draft states uses the following designator at 5 locations: "PSA_ALG_SHA256".
The correct spelling is: "PSA_ALG_SHA_256" (underscore before 256).
-
In the spec draft, page 54: "Size of w0s and w1s, in bytes" you ask "I think these values are correct?
The remark can be removed. The values are correct.
From Oberon (Referencing the SPAKE2+ draft2 rendering of the PAKE Extension):
The spec draft states on page 30, section 2.1.6 Multi-part PAKE operations (return type description of
psa_pake_setup()forPSA_ERROR_INVALID_ARGUMENT):The types mentioned are wrong for SPAKE2+ and SRP which use their own key types.
We would suggest something like:
The spec draft states on page 31, section 2.1.6 Multi-part PAKE operations (return type description of
psa_pake_set_role()forPSA_ERROR_INVALID_ARGUMENT):An additional case should be added here: "
roleis not compatible with the key type."This is needed because the correctness of the key type cannot be tested before the role is known.
The corresponding check has to be done in the
psa_pake_set_role()function.The spec draft states uses the following designator at 5 locations: "PSA_ALG_SHA256".
The correct spelling is: "PSA_ALG_SHA_256" (underscore before 256).
In the spec draft, page 54: "Size of w0s and w1s, in bytes" you ask "I think these values are correct?
The remark can be removed. The values are correct.