psa_key_derivation_input_key() is only used within mbedTLS.
 
Symbols
loading...
Files
loading...
SummarySyntaxArgumentsRelatedReferences

Return value

#PSA_SUCCESS Success. #PSA_ERROR_INVALID_HANDLE \emptydescription #PSA_ERROR_NOT_PERMITTED The key allows neither #PSA_KEY_USAGE_DERIVE nor #PSA_KEY_USAGE_VERIFY_DERIVATION, or it doesn't allow this algorithm. #PSA_ERROR_INVALID_ARGUMENT \c step is not compatible with the operation's algorithm, or \c step does not allow key inputs of the given type or does not allow key inputs at all. #PSA_ERROR_INSUFFICIENT_MEMORY \emptydescription #PSA_ERROR_COMMUNICATION_FAILURE \emptydescription #PSA_ERROR_HARDWARE_FAILURE \emptydescription #PSA_ERROR_CORRUPTION_DETECTED \emptydescription #PSA_ERROR_STORAGE_FAILURE \emptydescription #PSA_ERROR_BAD_STATE The operation state is not valid for this input \p step, or the library has not been previously initialized by psa_crypto_init(). It is implementation-dependent whether a failure to initialize results in this error code.

Notes

Once all inputs steps are completed, the operations will allow: - psa_key_derivation_output_bytes() if each input was either a direct input or a key with #PSA_KEY_USAGE_DERIVE set; - psa_key_derivation_output_key() or psa_key_derivation_output_key_custom() if the input for step #PSA_KEY_DERIVATION_INPUT_SECRET or #PSA_KEY_DERIVATION_INPUT_PASSWORD was from a key slot with #PSA_KEY_USAGE_DERIVE and each other input was either a direct input or a key with #PSA_KEY_USAGE_DERIVE set; - psa_key_derivation_verify_bytes() if each input was either a direct input or a key with #PSA_KEY_USAGE_VERIFY_DERIVATION set; - psa_key_derivation_verify_key() under the same conditions as psa_key_derivation_verify_bytes().

References

from examples