struttura BCRYPT_DSA_KEY_BLOB (bcrypt.h)

La struttura BCRYPT_DSA_KEY_BLOB viene usata come intestazione per un 'algoritmo di firma digitale (DSA) chiave pubblica o chiave privata BLOB in memoria.

Sintassi

typedef struct _BCRYPT_DSA_KEY_BLOB {
  ULONG dwMagic;
  ULONG cbKey;
  UCHAR Count[4];
  UCHAR Seed[20];
  UCHAR q[20];
} BCRYPT_DSA_KEY_BLOB, *PBCRYPT_DSA_KEY_BLOB;

Membri

dwMagic

Determina il tipo di chiave rappresentata da questa struttura. Può trattarsi di uno dei valori seguenti.

Valore Significato
BCRYPT_DSA_PUBLIC_MAGIC
0x42505344
La struttura rappresenta una chiave pubblica DSA.
BCRYPT_DSA_PRIVATE_MAGIC
0x56505344
La struttura rappresenta una chiave privata DSA.

cbKey

Lunghezza, in byte, della chiave.

Count[4]

Numero di iterazioni, in formato big-endian, usate per generare q.

Seed[20]

Valore di inizializzazione, in formato big-endian, usato per generare q.

q[20]

Fattore primo a 160 bit, in formato big-endian.

Osservazioni

La struttura si applica alle chiavi DSA che superano o superano la lunghezza di 512 bit, ma sono minori o uguali a 1024 bit.

Questa struttura viene usata come intestazione per un buffer più grande. Un BLOB della chiave pubblica DSA (BCRYPT_DSA_PUBLIC_BLOB) ha il formato seguente in memoria contigua. I numeri Modulus, Generator e Public sono in formato big-endian.


BCRYPT_DSA_KEY_BLOB
Modulus[cbKey]    // Big-endian.
Generator[cbKey]  // Big-endian.
Public[cbKey]     // Big-endian.

Un BLOB di chiavi private DSA (BCRYPT_DSA_PRIVATE_BLOB) ha il formato seguente in memoria contigua. I numeri Modulus, Generator, Public e PrivateExponent sono in formato big-endian.


BCRYPT_DSA_KEY_BLOB
Modulus[cbKey]        // Big-endian.
Generator[cbKey]      // Big-endian.
Public[cbKey]         // Big-endian.
PrivateExponent[20]   // Big-endian.

Fabbisogno

Requisito Valore
client minimo supportato Windows Vista [solo app desktop]
server minimo supportato Windows Server 2008 [solo app desktop]
intestazione bcrypt.h

Vedere anche

BCryptExportKey

BCryptImportKeyPair