![]() |
![]() |
PSA cryptography module: Mbed TLS vendor extensions.
This file is reserved for vendor-specific definitions.
#include "crypto_types.h"

Go to the source code of this file.
Macros | |
| #define | PSA_KEY_TYPE_DSA_PUBLIC_KEY ((psa_key_type_t)0x4002U) |
| #define | PSA_KEY_TYPE_DSA_KEY_PAIR ((psa_key_type_t)0x7002U) |
| #define PSA_KEY_TYPE_DSA_PUBLIC_KEY ((psa_key_type_t)0x4002U) |
DSA public key.
The import and export format is the representation of the public key y = g^x mod p as a big-endian byte string. The length of the byte string is the length of the base prime p in bytes.
| #define PSA_KEY_TYPE_DSA_KEY_PAIR ((psa_key_type_t)0x7002U) |
DSA key pair (private and public key).
The import and export format is the representation of the private key x as a big-endian byte string. The length of the byte string is the private key size in bytes (leading zeroes are not stripped).
Deterministic DSA key derivation with psa_generate_derived_key follows FIPS 186-4 §B.1.2: interpret the byte string as integer in big-endian order. Discard it if it is not in the range [0, N - 2] where N is the boundary of the private key domain (the prime p for Diffie-Hellman, the subprime q for DSA, or the order of the curve's base point for ECC). Add 1 to the resulting integer and use this as the private key x.