Abstract
Memory encryption is used in many devices to protect memory content from attackers with physical access to a device. However, many current memory encryption schemes can be broken using differential power analysis (DPA). In this work, we present Meas—the first Memory Encryption and Authentication Scheme providing security against DPA attacks. The scheme combines ideas from fresh re-keying and authentication trees by storing encryption keys in a tree structure to thwart first-order DPA without the need for DPA-protected cryptographic primitives. Therefore, the design strictly limits the use of every key to encrypt at most two different plaintext values. Meas prevents higher-order DPA without changes to the cipher implementation by using masking of the plaintext values. Meas is applicable to all kinds of memory, e.g., NVM and RAM. For RAM, we give two concrete Meas instances based on the lightweight primitives Ascon, PRINCE, and QARMA. We implement and evaluate both instances on a Zynq XC7Z020 FPGA showing that Meas has memory and performance overhead comparable to existing memory authentication techniques without DPA protection.
Highlights
Memory encryption is the standard technique to protect data and code against attackers with physical access to a memory
We show that the read–modify–write access patterns inevitably occurring in encrypted memory allow for profiled, higher-order differential power analysis (DPA) attacks that leak constant plaintext data when re-keying is applied to memory encryption
It shows that Meas efficiently provides first-order DPA-secure memory encryption and authentication at roughly the same memory overhead and performance as existing authentication
Summary
Memory encryption is the standard technique to protect data and code against attackers with physical access to a memory. Typical encryption schemes employed in these systems are Cipher-Block-Chaining with Encrypted Salt-Sector IV (CBC-ESSIV) [20], Xor-EncryptXor (XEX) [47], and XEX-based Tweaked codebook mode with ciphertext Stealing (XTS) [30]. These schemes successfully prevent attackers from accessing memory content when the device is shut off and the encryption key is not present on the device, e.g., an encrypted USB flash drive. In many situations in the Internet of Things (IoT), a physical attacker is in possession of a running device, or can turn a device on In these cases, the attacker can, for example, observe and tamper with data in RAM. There are efforts to encrypt RAM on AMD [32] and ARM systems [29] as well
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have