Saved in:
Bibliographic Details
Main Authors: Ye, Haojie, Xia, Yuchen, Chen, Yuhan, Chen, Kuan-Yu, Yuan, Yichao, Deng, Shuwen, Kasikci, Baris, Mudge, Trevor, Talati, Nishil
Format: Preprint
Published: 2024
Subjects:
Online Access:https://arxiv.org/abs/2411.05400
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866910689764835328
author Ye, Haojie
Xia, Yuchen
Chen, Yuhan
Chen, Kuan-Yu
Yuan, Yichao
Deng, Shuwen
Kasikci, Baris
Mudge, Trevor
Talati, Nishil
author_facet Ye, Haojie
Xia, Yuchen
Chen, Yuhan
Chen, Kuan-Yu
Yuan, Yichao
Deng, Shuwen
Kasikci, Baris
Mudge, Trevor
Talati, Nishil
contents Oblivious RAM (ORAM) hides the memory access patterns, enhancing data privacy by preventing attackers from discovering sensitive information based on the sequence of memory accesses. The performance of ORAM is often limited by its inherent trade-off between security and efficiency, as concealing memory access patterns imposes significant computational and memory overhead. While prior works focus on improving the ORAM performance by prefetching and eliminating ORAM requests, we find that their performance is very sensitive to workload locality behavior and incurs additional management overhead caused by the ORAM stash pressure. This paper presents Palermo: a protocol-hardware co-design to improve ORAM performance. The key observation in Palermo is that classical ORAM protocols enforce restrictive dependencies between memory operations that result in low memory bandwidth utilization. Palermo introduces a new protocol that overlaps large portions of memory operations, within a single and between multiple ORAM requests, without breaking correctness and security guarantees. Subsequently, we propose an ORAM controller architecture that executes the proposed protocol to service ORAM requests. The hardware is responsible for concurrently issuing memory requests as well as imposing the necessary dependencies to ensure a consistent view of the ORAM tree across requests. Using a rich workload mix, we demonstrate that Palermo outperforms the RingORAM baseline by 2.8x, on average, incurring a negligible area overhead of 5.78mm^2 (less than 2% in 12th generation Intel CPU after technology scaling) and 2.14W without sacrificing security. We further show that Palermo also outperforms the state-of-the-art works PageORAM, PrORAM, and IR-ORAM.
format Preprint
id arxiv_https___arxiv_org_abs_2411_05400
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Palermo: Improving the Performance of Oblivious Memory using Protocol-Hardware Co-Design
Ye, Haojie
Xia, Yuchen
Chen, Yuhan
Chen, Kuan-Yu
Yuan, Yichao
Deng, Shuwen
Kasikci, Baris
Mudge, Trevor
Talati, Nishil
Cryptography and Security
Hardware Architecture
Oblivious RAM (ORAM) hides the memory access patterns, enhancing data privacy by preventing attackers from discovering sensitive information based on the sequence of memory accesses. The performance of ORAM is often limited by its inherent trade-off between security and efficiency, as concealing memory access patterns imposes significant computational and memory overhead. While prior works focus on improving the ORAM performance by prefetching and eliminating ORAM requests, we find that their performance is very sensitive to workload locality behavior and incurs additional management overhead caused by the ORAM stash pressure. This paper presents Palermo: a protocol-hardware co-design to improve ORAM performance. The key observation in Palermo is that classical ORAM protocols enforce restrictive dependencies between memory operations that result in low memory bandwidth utilization. Palermo introduces a new protocol that overlaps large portions of memory operations, within a single and between multiple ORAM requests, without breaking correctness and security guarantees. Subsequently, we propose an ORAM controller architecture that executes the proposed protocol to service ORAM requests. The hardware is responsible for concurrently issuing memory requests as well as imposing the necessary dependencies to ensure a consistent view of the ORAM tree across requests. Using a rich workload mix, we demonstrate that Palermo outperforms the RingORAM baseline by 2.8x, on average, incurring a negligible area overhead of 5.78mm^2 (less than 2% in 12th generation Intel CPU after technology scaling) and 2.14W without sacrificing security. We further show that Palermo also outperforms the state-of-the-art works PageORAM, PrORAM, and IR-ORAM.
title Palermo: Improving the Performance of Oblivious Memory using Protocol-Hardware Co-Design
topic Cryptography and Security
Hardware Architecture
url https://arxiv.org/abs/2411.05400