STORAGE_RPMB_DATA_FRAME structure (ntddstor.h)

The STORAGE_RPMB_DATA_FRAME structure identifies the data frame format of a Replay Protected Memory Block (RPMB) payload.

Syntax

typedef struct _STORAGE_RPMB_DATA_FRAME {
  UCHAR Stuff[196];
  UCHAR KeyOrMAC[32];
  UCHAR Data[256];
  UCHAR Nonce[16];
  UCHAR WriteCounter[4];
  UCHAR Address[2];
  UCHAR BlockCount[2];
  UCHAR OperationResult[2];
  UCHAR RequestOrResponseType[2];
} STORAGE_RPMB_DATA_FRAME, *PSTORAGE_RPMB_DATA_FRAME;

Members

Stuff[196]

Reserved for system use. Do not use.

KeyOrMAC[32]

Either the key to be programmed or the message authentication code (MAC) authenticating this frame (or series of frames).

Data[256]

Contains data input or output.

Nonce[16]

Random 128-bit number generated by host. Only required for reads.

WriteCounter[4]

32-bit counter. Only required for writes.

Address[2]

The half-sector address to operate on.

BlockCount[2]

The count of half-sector blocks to read/write.

OperationResult[2]

The result of the operation.

RequestOrResponseType[2]

The type of request or response.

Remarks

This data frame is used to compose all RPMB requests and responses.

Requirements

Requirement Value
Header ntddstor.h

See also

STORAGE_RPMB_DESCRIPTOR