Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Note
Cierta información se relaciona con un producto de versión preliminar que puede modificarse sustancialmente antes de su publicación comercial. Microsoft no ofrece ninguna garantía, expresa o implícita, con respecto a la información proporcionada aquí. Las características compuestas descritas en este tema están disponibles en versiones preliminares de Windows Insider Preview.
Esta estructura se usa para importar y exportar claves para algoritmos post-Quantum Digital Signature (PQDSA). La estructura BCRYPT_PQDSA_KEY_BLOB se usa como encabezado para un algoritmo de firma digital post-quantum (PQDSA) clave pública (clave de encapsulación codificada por bytes) o BLOB de clave privada en memoria.
Syntax
typedef struct _BCRYPT_PQDSA_KEY_BLOB {
ULONG dwMagic;
ULONG cbParameterSet; // Byte size of parameterSet[]
ULONG cbKey; // Byte size of key[]
// WCHAR parameterSet[cbParameterSet / sizeof(WCHAR)]; // Including \0 terminator
// BYTE key[cbKey]; // Key material
} BCRYPT_PQDSA_KEY_BLOB, *PBCRYPT_PQDSA_KEY_BLOB;
Fields
dwMagic
El campo dwMagic es un valor de 4 bytes que indica el formato de la clave que se está usando. Se definen los siguientes valores:
| Value | Meaning |
|---|---|
BCRYPT_MLDSA_PUBLIC_MAGIC0x4B505344 |
La estructura representa una clave pública. |
BCRYPT_MLDSA_PRIVATE_MAGIC0x4B535344 |
La estructura representa una clave privada expandida. |
BCRYPT_MLDSA_PRIVATE_SEED_MAGIC0x53535344 |
La estructura representa una inicialización privada. |
BCRYPT_COMPOSITE_MLDSA_PUBLIC_MAGIC0x4B504D43 |
La estructura representa una clave pública. |
BCRYPT_COMPOSITE_MLDSA_PRIVATE_MAGIC0x4B534D43 |
La estructura representa una clave privada. |
cbParameterSet
Longitud, en bytes, del búfer parameterSet directamente después de la estructura. Este búfer contiene una cadena Unicode terminada en null que identifica el conjunto de parámetros de la clave. Actualmente se admiten los siguientes valores:
| parameterSet | Meaning |
|---|---|
BCRYPT_MLDSA_PARAMETER_SET_44L"44" |
ML-DSA-44, categoría de seguridad 2. |
BCRYPT_MLDSA_PARAMETER_SET_65L"65" |
ML-DSA-65, categoría de seguridad 3. |
BCRYPT_MLDSA_PARAMETER_SET_87L"87" |
ML-DSA-87, categoría de seguridad 5. |
BCRYPT_COMPOSITE_MLDSA_PARAMETER_SET_44_ECDSA_P256_SHA256L"44-ECDSA-P256-SHA256" |
ML-DSA-44 compuesto y ECDSA P256 |
BCRYPT_COMPOSITE_MLDSA_PARAMETER_SET_65_ECDSA_P256_SHA512L"65-ECDSA-P256-SHA512" |
ML-DSA-65 compuesto y ECDSA P256 |
BCRYPT_COMPOSITE_MLDSA_PARAMETER_SET_65_ECDSA_P384_SHA512L"65-ECDSA-P384-SHA512" |
ML-DSA-65 compuesto y ECDSA P384 |
BCRYPT_COMPOSITE_MLDSA_PARAMETER_SET_87_ECDSA_P384_SHA512L"87-ECDSA-P384-SHA512" |
ML-DSA-87 compuesto y ECDSA P384 |
cbKey
Longitud, en bytes, de la clave de búfer directamente después de parameterSet. Este tamaño es estático y depende del formato de clave y del parámetro establecido en uso.
Remarks
Los consumidores de algoritmos de firma digital post-quantum usarán el mismo subconjunto de la API BCrypt que los algoritmos de firma digital existentes (no post-cuánticos) admitidos por CNG para realizar las operaciones que admiten los algoritmos. Estos son:
- Manipulación del identificador de algoritmo: BCryptOpenAlgorithmProvider, BCryptCloseAlgorithmProvider
- Administración de claves: BCryptGenerateKeyPair, BCryptImportKeyPair, BCryptExportKey, BCryptDestroyKey, BCryptFinalizeKeyPair
- Generación y comprobación de firmas: BCryptSignHash, BCryptVerifySignature
- Actualizar o consultar propiedades: BCryptGetProperty, BCryptSetProperty
Requirements
| Requirement | Value |
|---|---|
| Cliente mínimo compatible | Windows 11 24H2: comienza la compatibilidad con ML-DSA. [solo aplicaciones de escritorio] |
| Servidor mínimo admitido | Windows Server 2025: Comienza la compatibilidad con ML-DSA. [solo aplicaciones de escritorio] |
| Header | bcrypt.h |