BCRYPT_PQDSA_KEY_BLOB struktur

Note

Viss information gäller en förhandsversionsprodukt som kan ändras avsevärt innan den släpps kommersiellt. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, med avseende på den information som tillhandahålls här. De sammansatta funktioner som beskrivs i det här avsnittet finns i förhandsversioner av Windows Insider Preview.

Den här strukturen används för att importera och exportera nycklar för Post-Quantum Digital Signature-algoritmer (PQDSA). Den BCRYPT_PQDSA_KEY_BLOB strukturen används som en rubrik för en offentlig nyckel (PQDSA) (Post-Quantum Digital Signature Algorithm) (bytekodad inkapslingsnyckel) eller privatnyckel-BLOB i minnet.

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

DwMagic-fältet är ett värde på 4 byte som anger formatet för nyckeln som används. Följande värden definieras:

Value Meaning
BCRYPT_MLDSA_PUBLIC_MAGIC0x4B505344 Strukturen representerar en offentlig nyckel.
BCRYPT_MLDSA_PRIVATE_MAGIC0x4B535344 Strukturen representerar en utökad privat nyckel.
BCRYPT_MLDSA_PRIVATE_SEED_MAGIC0x53535344 Strukturen representerar ett privat frö.
BCRYPT_COMPOSITE_MLDSA_PUBLIC_MAGIC0x4B504D43 Strukturen representerar en offentlig nyckel.
BCRYPT_COMPOSITE_MLDSA_PRIVATE_MAGIC0x4B534D43 Strukturen representerar en privat nyckel.

cbParameterSet

Längden, i byte, på bufferten parameterSet direkt efter structen. Den här bufferten innehåller en null-avslutad Unicode-sträng som identifierar parameteruppsättningen för nyckeln. Följande värden stöds för närvarande:

parameterSet Meaning
BCRYPT_MLDSA_PARAMETER_SET_44L"44" ML-DSA-44, säkerhetskategori 2.
BCRYPT_MLDSA_PARAMETER_SET_65L"65" ML-DSA-65, säkerhetskategori 3.
BCRYPT_MLDSA_PARAMETER_SET_87L"87" ML-DSA-87, säkerhetskategori 5.
BCRYPT_COMPOSITE_MLDSA_PARAMETER_SET_44_ECDSA_P256_SHA256L"44-ECDSA-P256-SHA256" Sammansatt ML-DSA-44 och ECDSA P256
BCRYPT_COMPOSITE_MLDSA_PARAMETER_SET_65_ECDSA_P256_SHA512L"65-ECDSA-P256-SHA512" Sammansatt ML-DSA-65 och ECDSA P256
BCRYPT_COMPOSITE_MLDSA_PARAMETER_SET_65_ECDSA_P384_SHA512L"65-ECDSA-P384-SHA512" Sammansatt ML-DSA-65 och ECDSA P384
BCRYPT_COMPOSITE_MLDSA_PARAMETER_SET_87_ECDSA_P384_SHA512L"87-ECDSA-P384-SHA512" Sammansatt ML-DSA-87 och ECDSA P384

cbKey

Längden, i byte, på buffertnyckeln direkt efter parameterSet. Den här storleken är statisk och beror på nyckelformatet och parametern som används.

Remarks

Konsumenterna av Post-Quantum Digital Signature-algoritmer använder samma delmängd av BCrypt-API:et som de befintliga (icke-Post-Quantum) algoritmerna för digital signatur som stöds av CNG för att utföra de åtgärder som algoritmerna stöder. Dessa är:

Requirements

Requirement Value
Lägsta klient som stöds Windows 11 24H2: Support för ML-DSA börjar. [endast skrivbordsappar]
Lägsta server som stöds Windows Server 2025: Support för ML-DSA börjar. [endast skrivbordsappar]
Header bcrypt.h