文件名称:原型:ORAM 和相关的 Intel SGX enclaves
文件大小:148KB
文件格式:ZIP
更新时间:2024-07-18 12:35:10
mc-oblivious
mc-遗忘英特尔 SGX 飞地内 Oblivious RAM 的特性和实现。此存储库的范围是:x86-64 中对齐内存的快速恒定时间条件移动的特征“不受信任的块存储”和“内存加密引擎”的特征以支持超过 enclave 内存限制的后备存储Oblivious RAM 的特性和实现Oblivious Hash Table 的特征和实现其他不为人知的数据结构和算法,例如改组或排序。此 repo 中的代码预计将在 SGX 内的 x86-64 CPU 上运行。它超出了支持其他平台的范围。(但是,我们仍然以合理的方式抽象事物。只有aligned-cmov箱包含特定于 x86-64 的代码。)此 repo 中的代码预计需要夜间编译器,以便我们可以在需要时使用内联汇编,以确保我们获得 CMOV 等,因为不经意地移动大内存块预计会成为瓶颈。如果内联组装稳定在 Rust 中,我们希望不再需要每晚一次。什么是遗忘 RAM?Oblivious RAM 是一类数据结构,旨在避免内存访问模式侧通道上的信息泄漏,在 [Goldreich '96] 中引入。基于树的 ORAM 是在一篇开创性论文 [Shi, Chan,
【文件预览】:
mc-oblivious-master
----.cargo()
--------config(654B)
----rustfmt.toml(47B)
----aligned-cmov()
--------Cargo.toml(631B)
--------src()
--------LICENSE(32KB)
--------README.md(6KB)
--------benches()
----.gitattributes(24B)
----Cargo.toml(423B)
----.github()
--------dependabot.yml(155B)
----no-asm-tests()
--------Cargo.toml(520B)
--------Cargo.lock(2KB)
--------src()
--------README.md(926B)
----mc-oblivious-traits()
--------Cargo.toml(697B)
--------src()
--------LICENSE(32KB)
--------README.md(200B)
----Cargo.lock(19KB)
----test-helper()
--------Cargo.toml(201B)
--------src()
----img()
--------mobilecoin_logo.png(8KB)
----.circleci()
--------config.yml(7KB)
----mc-oblivious-map()
--------Cargo.toml(1KB)
--------src()
--------LICENSE(32KB)
--------README.md(1KB)
--------benches()
----rust-toolchain(19B)
----CONTRIBUTING.md(2KB)
----LICENSE(664B)
----tools()
--------lint.sh(433B)
--------install_git_settings.sh(438B)
----README.md(6KB)
----mc-oblivious-ram()
--------Cargo.toml(804B)
--------src()
--------LICENSE(32KB)
--------README.md(199B)
----clippy.toml(141B)
----balanced-tree-index()
--------Cargo.toml(639B)
--------src()
--------LICENSE(32KB)
--------README.md(4KB)
----CLA.md(6KB)
----hooks()
--------pre-commit(4KB)
----.gitignore(24B)
----CHANGELOG.md(634B)