A Low-Latency, Low-Area Hardware Oblivious RAM Controller
We build and evaluate Tiny ORAM, an Oblivious RAM prototype on FPGA. Oblivious RAM is a cryptographic primitive that completely obfuscates an application’s data, access pattern, and read/write behavior to/from external memory (such as DRAM or disk). Tiny ORAM makes two main contributions. First, by...
Main Authors: | , , , , , , |
---|---|
Other Authors: | |
Format: | Article |
Language: | en_US |
Published: |
Institute of Electrical and Electronics Engineers (IEEE)
2015
|
Online Access: | http://hdl.handle.net/1721.1/96843 https://orcid.org/0000-0001-8253-7714 https://orcid.org/0000-0003-3437-7570 https://orcid.org/0000-0002-7044-5684 https://orcid.org/0000-0003-1467-2150 |
_version_ | 1826217763497050112 |
---|---|
author | Fletcher, Christopher Wardlaw Ren, Ling Kwon, Young Hyun van Dijk, Marten Stefanov, Emil Serpanos, Dimitrios Devadas, Srinivas |
author2 | Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science |
author_facet | Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science Fletcher, Christopher Wardlaw Ren, Ling Kwon, Young Hyun van Dijk, Marten Stefanov, Emil Serpanos, Dimitrios Devadas, Srinivas |
author_sort | Fletcher, Christopher Wardlaw |
collection | MIT |
description | We build and evaluate Tiny ORAM, an Oblivious RAM prototype on FPGA. Oblivious RAM is a cryptographic primitive that completely obfuscates an application’s data, access pattern, and read/write behavior to/from external memory (such as DRAM or disk). Tiny ORAM makes two main contributions. First, by removing an algorithmic bottleneck in prior work, Tiny ORAM is the first hardware ORAM design to support arbitrary block sizes (e.g., 64 Bytes to 4096 Bytes). With a 64 Byte block size, Tiny ORAM can finish an access in 1.4 µs, over 40X faster than the prior-art implementation. Second, through novel algorithmic and engineering-level optimizations, Tiny ORAM reduces the number of symmetric encryption operations by ~ 3X compared to a prior work. Tiny ORAM is also the first design to implement and report real numbers for the cost of symmetric encryption in hardware ORAM constructions. Putting it together, Tiny ORAM requires 18381 (5%) LUTs and 146 (13%) Block RAM on a Xilinx XC7VX485T FPGA, including the cost of encryption |
first_indexed | 2024-09-23T17:08:46Z |
format | Article |
id | mit-1721.1/96843 |
institution | Massachusetts Institute of Technology |
language | en_US |
last_indexed | 2024-09-23T17:08:46Z |
publishDate | 2015 |
publisher | Institute of Electrical and Electronics Engineers (IEEE) |
record_format | dspace |
spelling | mit-1721.1/968432022-09-29T23:56:29Z A Low-Latency, Low-Area Hardware Oblivious RAM Controller Fletcher, Christopher Wardlaw Ren, Ling Kwon, Young Hyun van Dijk, Marten Stefanov, Emil Serpanos, Dimitrios Devadas, Srinivas Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science Fletcher, Christopher Wardlaw Ren, Ling Kwon, Young Hyun Devadas, Srinivas We build and evaluate Tiny ORAM, an Oblivious RAM prototype on FPGA. Oblivious RAM is a cryptographic primitive that completely obfuscates an application’s data, access pattern, and read/write behavior to/from external memory (such as DRAM or disk). Tiny ORAM makes two main contributions. First, by removing an algorithmic bottleneck in prior work, Tiny ORAM is the first hardware ORAM design to support arbitrary block sizes (e.g., 64 Bytes to 4096 Bytes). With a 64 Byte block size, Tiny ORAM can finish an access in 1.4 µs, over 40X faster than the prior-art implementation. Second, through novel algorithmic and engineering-level optimizations, Tiny ORAM reduces the number of symmetric encryption operations by ~ 3X compared to a prior work. Tiny ORAM is also the first design to implement and report real numbers for the cost of symmetric encryption in hardware ORAM constructions. Putting it together, Tiny ORAM requires 18381 (5%) LUTs and 146 (13%) Block RAM on a Xilinx XC7VX485T FPGA, including the cost of encryption Qatar Computing Research Institute (QCRI-CSAIL Parternship) National Science Foundation (U.S.) American Society for Engineering Education. National Defense Science and Engineering Graduate Fellowship 2015-04-29T14:55:18Z 2015-04-29T14:55:18Z 2015-05 Article http://purl.org/eprint/type/ConferencePaper http://hdl.handle.net/1721.1/96843 Fletcher, Christopher W., Ling Ren, Albert Kwon, Marten van Dijk, Emil Stefanov, Dimitrios Serpanos, and Srinivas Devadas. "A Low-Latency, Low-Area Hardware Oblivious RAM Controller." IEEE 23rd International Symposium on Field-Programmable Custom Computing Machines, May 3-5, 2015. https://orcid.org/0000-0001-8253-7714 https://orcid.org/0000-0003-3437-7570 https://orcid.org/0000-0002-7044-5684 https://orcid.org/0000-0003-1467-2150 en_US http://fccm.org/2015/programme.html#programme Proceedings of the IEEE 23rd International Symposium on Field-Programmable Custom Computing Machines Creative Commons Attribution-Noncommercial-Share Alike http://creativecommons.org/licenses/by-nc-sa/4.0/ application/pdf Institute of Electrical and Electronics Engineers (IEEE) Fletcher |
spellingShingle | Fletcher, Christopher Wardlaw Ren, Ling Kwon, Young Hyun van Dijk, Marten Stefanov, Emil Serpanos, Dimitrios Devadas, Srinivas A Low-Latency, Low-Area Hardware Oblivious RAM Controller |
title | A Low-Latency, Low-Area Hardware Oblivious RAM Controller |
title_full | A Low-Latency, Low-Area Hardware Oblivious RAM Controller |
title_fullStr | A Low-Latency, Low-Area Hardware Oblivious RAM Controller |
title_full_unstemmed | A Low-Latency, Low-Area Hardware Oblivious RAM Controller |
title_short | A Low-Latency, Low-Area Hardware Oblivious RAM Controller |
title_sort | low latency low area hardware oblivious ram controller |
url | http://hdl.handle.net/1721.1/96843 https://orcid.org/0000-0001-8253-7714 https://orcid.org/0000-0003-3437-7570 https://orcid.org/0000-0002-7044-5684 https://orcid.org/0000-0003-1467-2150 |
work_keys_str_mv | AT fletcherchristopherwardlaw alowlatencylowareahardwareobliviousramcontroller AT renling alowlatencylowareahardwareobliviousramcontroller AT kwonyounghyun alowlatencylowareahardwareobliviousramcontroller AT vandijkmarten alowlatencylowareahardwareobliviousramcontroller AT stefanovemil alowlatencylowareahardwareobliviousramcontroller AT serpanosdimitrios alowlatencylowareahardwareobliviousramcontroller AT devadassrinivas alowlatencylowareahardwareobliviousramcontroller AT fletcherchristopherwardlaw lowlatencylowareahardwareobliviousramcontroller AT renling lowlatencylowareahardwareobliviousramcontroller AT kwonyounghyun lowlatencylowareahardwareobliviousramcontroller AT vandijkmarten lowlatencylowareahardwareobliviousramcontroller AT stefanovemil lowlatencylowareahardwareobliviousramcontroller AT serpanosdimitrios lowlatencylowareahardwareobliviousramcontroller AT devadassrinivas lowlatencylowareahardwareobliviousramcontroller |