RPMB (Replay Protected Memory Block)
RPMB is a dedicated storage area and authenticated access mechanism in eMMC and UFS that uses freshness checks to resist unauthorized modification and replay.
An authenticated write incorporates a write counter; once an accepted write advances that counter, an old authenticated write cannot simply be reused as a current one. This protects a protocol operation, not every copy of an application's data. [1]
RPMB authentication is not encryption. OP-TEE uses distinct authentication and storage-encryption keys, while mmc-utils permits reading RPMB blocks without supplying the optional verification key. Receiving bytes without checking authenticity is not a trusted read. [2] [3]
The eMMC authentication key is programmed once for the device lifetime, making secure provisioning and platform integration important. [2] Hesela's architectural inference: rollback policy still needs trusted software, and replay resistance does not provide a backup if the device fails. [5]
The fTPM paper distinguishes nonce-bound authenticated reads from counter-bound writes; it uses a separate shadow-block commit mechanism for multi-write atomicity. Replay protection alone is not a transaction protocol. [4]
Relations
- related
- emmc, ufs, replay-attack, rollback-protection, authenticated-encryption
Citations
- KIOXIA: Introducing Replay Protected Memory Block within the e-MMC and UFS Specifications, November 2022, Rev. 1.1
- OP-TEE documentation: Secure storage, RPMB device access and security considerations
- Linux mmc-utils: RPMB read-block help, pinned commit c6692d5
- Raj et al.: fTPM: A Software-Only Implementation of a TPM Chip, USENIX Security 2016, sections 6.1.1 and 9.1
- Hesela: eMMC, UFS and RPMB: interface, boot and security boundaries
Published by Hesela team · Updated
Report a correction · Editorial standards · Reuse guidance
Cite this page
Hesela team. RPMB (Replay Protected Memory Block). Hesela. 2026-10-17. https://hesela.dev/terms/rpmb/