oramfs - ORAM filesystem written in Rust

Karl gmkarl at gmail.com
Fri Jul 2 02:12:47 PDT 2021


I have not reviewed the source.

https://en.m.wikipedia.org/wiki/Oblivious_RAM

An *oblivious RAM (ORAM) simulator* is a compiler
<https://en.m.wikipedia.org/wiki/Compiler> that transforms algorithms
<https://en.m.wikipedia.org/wiki/Algorithms> in such a way that the
resulting algorithms preserve the input
<https://en.m.wikipedia.org/wiki/Input/output>-output
<https://en.m.wikipedia.org/wiki/Output_%28computing%29> behavior of the
original algorithm but the distribution
<https://en.m.wikipedia.org/wiki/Probability_distribution> of memory
<https://en.m.wikipedia.org/wiki/Memory> access pattern of the transformed
algorithm is independent of the memory access pattern of the original
algorithm. The definition of ORAMs is motivated by the fact that an
adversary can obtain nontrivial information about the execution of a
program and the nature of the data <https://en.m.wikipedia.org/wiki/Data> that
it is dealing with, just by observing the pattern in which various
locations of memory are accessed during its execution. An adversary can get
this information even if the data values are all encrypted
<https://en.m.wikipedia.org/wiki/Encryption>. The definition suits equally
well to the settings of protected programs running on unprotected shared
memory <https://en.m.wikipedia.org/wiki/Shared_memory> as well as a client
running a program on its system by accessing previously stored data on a remote
server <https://en.m.wikipedia.org/wiki/Remote_server>. The concept was
formulated by Oded Goldreich
<https://en.m.wikipedia.org/wiki/Oded_Goldreich> in 1987.[1]
<https://en.m.wikipedia.org/wiki/Oblivious_RAM#cite_note-G87-1>

>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: text/html
Size: 8661 bytes
Desc: not available
URL: <https://lists.cpunks.org/pipermail/cypherpunks/attachments/20210702/d6736395/attachment.txt>


More information about the cypherpunks mailing list