C
typedef struct { union { struct { BYTE MACSecret[16]; DWORD sequence; ARCFOUR_CTX cryptCtx; BYTE reserved[6]; } app; BYTE random[32]; } Local; union { struct { BYTE MACSecret[16]; DWORD sequence; ARCFOUR_CTX cryptCtx; BYTE reserved[6]; } app; BYTE random[32]; } Remote; } SSL_KEYS;
Description
Memory definition for SSL keys. This area is split into Local and Remote areas. During the handshake, Local.random and Remote.random hold the ServerRandom and ClientRandom values. Once the session keys are calculated, the Local.app and Remote.app contain the MAC secret, record sequence number, and encryption context for the ARCFOUR module.
Members
Members |
Description |
BYTE MACSecret[16]; |
Server's MAC write secret |
DWORD sequence; |
Server's write sequence number |
ARCFOUR_CTX cryptCtx; |
Server's write encryption context |
BYTE reserved[6]; |
Future expansion |
BYTE random[32]; |
Server.random value |
BYTE MACSecret[16]; |
Client's MAC write secret |
DWORD sequence; |
Client's write sequence number |
ARCFOUR_CTX cryptCtx; |
Client's write encryption context |
BYTE reserved[6]; |
Future expansion |
BYTE random[32]; |
Client.random value |