We present Blinded Memory (BliMe), a way to realize efficient and secure outsourced computation. BliMe consists of a novel and minimal set of ISA extensions that uses taint tracking to ensure the confidentiality of sensitive (client) data even in the presence of server malware, run-time attacks, and side-channel attacks. To secure outsourced computation, the BliMe extensions can be used together with an attestable, fixed-function hardware security module (HSM) and an encryption engine that provides atomic decrypt-and-taint and encrypt-and-untaint operations. The HSM engages in an attestation and key agreement protocol with the client. It provides the resulting client-specific keys to the encryption engine. Clients rely on remote attestation to ensure that their data will always be protected by BliMe's taint tracking policy after decryption. We provide a machine-checked security proof and FPGA implementations (BliMe-Ibex) of BliMe's taint tracking policy. We show that BliMe-Ibex does not reduce performance relative to the unmodified core, and incurs only minor increases in resource consumption in terms of power (${\approx}2.1\%$), LUTs (${\approx}1.0\%$), and registers (${\approx}2.3\%$).
翻译:我们提出“盲内存”(Blime),这是实现高效率和安全的外包计算的一种方式。 BliMe 是由一套新型和最起码的ISA扩展工具组成,它使用垃圾跟踪,确保敏感(客户)数据的保密性,即使在服务器恶意软件、运行时攻击和侧道攻击的情况下也是如此。为了保证外包计算,可以同时使用BliMe 扩展,同时使用一个可认证的固定功能硬件安全模块(HSM)和一个加密引擎,提供原子解密和污染及加密-保密操作。 HSM 与客户进行验证和关键协议协议。它为加密引擎提供由此产生的客户(客户)密钥。客户依靠远程验证以确保其数据在解密后始终由BliMe的保存跟踪政策加以保护。我们提供了经过机器检查的安全证明以及BliMe(BliMe)-Ibex(Bli$2.3) 和加密操作程序。我们显示,BliMe-Ibex(Ibex)并不减少与未修改的核心(L_x) (美元) 和(美元) (美元) (美元) (美元) 和(美元) (美元) (美元) 美元) 的消耗(美元) 和(美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) 和(美元) (美元) ) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (美元) (