Hardware Security: Advanced Topics and Trends

Consider a circuit that adds tamper detection and replay protection to memory encryption. For every 64-byte cache line, an 8-byte MAC (a code for detecting tampering) and an 8-byte counter that increases on every write are stored in main memory. Ignoring the tree that protects the counters, what is the extra storage needed as a proportion of the amount of data protected?

  1. A12.5%
  2. B20%
  3. C25%
Show answer and explanation

Answer: C. 25%

The extra information per line is 8 + 8 = 16 bytes, so 16 ÷ 64 = 25%. Real schemes also need a tree that protects the counters collectively (an integrity tree) so that the counters themselves cannot be rewritten, which adds more storage. Besides capacity, every data read also requires reading the MAC, the counter and tree nodes, which adds considerable latency and memory bandwidth load. For this reason, as of the mid-2020s, most VM-based TEEs that protect large memories do not use a full replay-protection tree and protect integrity in other ways.

  • A. This counts only the 8-byte MAC (8 ÷ 64). The counter is needed as well.
  • B. This is 16 ÷ (64 + 16), the share of the total of data plus extra information. The question asks for the proportion relative to the data.
  • C. Correct. (8 + 8) ÷ 64 = 25%.
Practice this topic Back to topic

Books on Hardware Security: Advanced Topics and Trends Ad

As an Amazon Associate I earn from qualifying purchases.

More Hardware Security: Advanced Topics and Trends questions

  1. In confidential computing, a user's verification server (the verifier) checks the attestation report received from a VM-based TEE before handing over the key that decrypts the data. Which is the most appropriate set of things for the verifier to check?
  2. As of the mid-2020s, some data-center GPUs provide features that let them be used for confidential computing together with a CPU TEE. Which correctly describes the idea of this mechanism?
  3. Which correctly describes the realm introduced in Arm CCA (Confidential Compute Architecture)?
  4. Which correctly describes the capabilities used in the instruction-set extension called CHERI?
  5. In Arm MTE (Memory Tagging Extension), a 4-bit tag is attached to every 16 bytes of memory and a 4-bit tag is also placed in the upper bits of the pointer, and the CPU checks on every access whether the two match. Consider the error of accessing a freed region through an old pointer to it. If the new tag given when the region is reallocated is chosen uniformly at random from the 16 possibilities, what is the probability that the tags match by chance and the error is missed?