2.2.1.2.8 KERB_RPC_ENCRYPTION_KEY

The KERB_RPC_ENCRYPTION_KEY structure is the opaque representation of any Kerberos EncryptionKey [RFC4120] section 5.2.9. This data structure is understood and consumed only by the CredSSP client; therefore, contents can be unique to each implementation and implementation version. The CredSSP server SHOULD treat this as an opaque blob and return what is provided by the client without assumptions of structure or size. Each implementation of CredSSP client SHOULD be allowed to create a structure that makes sense for their Kerberos implementation.

 typedef struct _KERB_RPC_ENCRYPTION_KEY {
     void* reserved1;
     long reserved2;
     KERB_RPC_OCTET_STRING reserved3;
  } KERB_RPC_ENCRYPTION_KEY, *PKERB_RPC_ENCRYPTION_KEY;

reserved1: A void pointer to any type of data (requires a typecast to use) points to unique implementation-specific data.

reserved2: A long ([MS-DTYP] section 2.2.27) that contains the encryption type.

reserved3: A KERB_RPC_OCTET_STRING structure (section 2.2.1.2.2) that contains the key value.