MSDN Library


Windows Mobile 6.5
A version of this page is also available for

This structure, also known as the BLOBHEADER structure, indicates a key's BLOB (Cryptography) type and the algorithm that the key uses. It is located at the beginning of the pbData member of every key BLOB.

This structure is not limited to the key BLOB structures generated by the PROV_RSA_BASE and PROV_RSA_SIG provider types. The pbData of any new key BLOB structure type must begin with this structure.

typedef struct _PUBLICKEYSTRUC {
  BYTE bType;
  BYTE bVersion;
  WORD reserved;
  ALG_ID aiKeyAlg;


Key BLOB type. The only BLOB types currently defined are PUBLICKEYBLOB, PRIVATEKEYBLOB, and SIMPLEBLOB. Other key BLOB types will be defined as needed.

PUBLICKEYBLOB types are used to transport public keys, PRIVATEKEYBLOBs are used to transport public/private key pairs, and SIMPLEBLOBs are used to transport session keys.


Version number of the key BLOB format. This member currently must always have a value of 0x02.


DWORD reserved for future use. This member must be set to zero.


Algorithm identifier for the key contained by the key BLOB structure. Some examples are CALG_RSA_SIGN, CALG_RSA_KEYX, CALG_RC2, and CALG_RC4.

Not all algorithm identifiers are valid with all BLOB types. For example, because an RC4 key is a session key, it cannot be exported into a PUBLICKEYBLOB.

Windows Embedded CEWindows CE 3.0 and later
Windows MobileWindows Mobile Version 5.0 and later

Community Additions

© 2016 Microsoft