Paper 2019/423
Chaotic Compilation for Encrypted Computing: Obfuscation but Not in Name
Peter T. Breuer
Abstract
An `obfuscation' for the encrypted computing context is quantified exactly here, leading to an argument that security against polynomial-time attacks has been achieved for user data, with or without encryption. Encrypted computing is the emerging science and technology of processors that take encrypted inputs to encrypted outputs via encrypted intermediate values (at nearly conventional speeds). The aim is to make user data in general-purpose computing secure against the operator and operating system as potential adversaries. A stumbling block has always been that memory addresses are data and good encryption means the encrypted value varies randomly,and that makes hitting any target in memory problematic without address decryption, but decryption anywhere on the memory path would open up many easily exploitable vulnerabilities. This paper `solves compilation' for processors without address decryption, covering all of ANSI C while satisfying the required security properties and opening up encrypted computing for the standard software tool-chain and infrastructure. The new understanding produces the argument referred to above.
Metadata
- Available format(s)
- Category
- Applications
- Publication info
- Preprint. MINOR revision.
- Keywords
- Encrypted computingCompilersObfuscationData Security
- Contact author(s)
- Peter T Breuer @ gmail com
- History
- 2019-10-28: last of 2 revisions
- 2019-04-27: received
- See all versions
- Short URL
- https://ia.cr/2019/423
- License
-
CC BY