BCRYPT_DSA_KEY_BLOB struttura (bcrypt.h)

La struttura BCRYPT_DSA_KEY_BLOB viene usata come intestazione per una chiave pubblica DSA (Digital Signature Algorithm) o UN BLOB di chiavi private 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;

Members

dwMagic

Determina il tipo di chiave rappresentata da questa struttura. Questo può essere 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, usato per generare q.

Seed[20]

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

q[20]

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

Commenti

La struttura si applica alle chiavi DSA uguali o superiori a 512 bit di lunghezza, ma sono inferiori o uguali a 1024 bit.

Questa struttura viene usata come intestazione per un buffer più grande. Un BLOB di 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.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Intestazione bcrypt.h

Vedi anche

BCryptExportKey

BCryptImportKeyPair