Title
Secure Compilation to Protected Module Architectures
Abstract
A fully abstract compiler prevents security features of the source language from being bypassed by an attacker operating at the target language level. Unfortunately, developing fully abstract compilers is very complex, and it is even more so when the target language is an untyped assembly language. To provide a fully abstract compiler that targets untyped assembly, it has been suggested to extend the target language with a protected module architecture—an assembly-level isolation mechanism which can be found in next-generation processors. This article provides a fully abstract compilation scheme whose source language is an object-oriented, high-level language and whose target language is such an extended assembly language. The source language enjoys features such as dynamic memory allocation and exceptions. Secure compilation of first-order method references, cross-package inheritance, and inner classes is also presented. Moreover, this article contains the formal proof of full abstraction of the compilation scheme. Measurements of the overhead introduced by the compilation scheme indicate that it is negligible.
Year
DOI
Venue
2015
10.1145/2699503
ACM Transactions on Programming Languages and Systems
Keywords
Field
DocType
Secure Compilation,Object-Oriented Programming,Untyped Machine Code,Security,Fully abstract compilation,protected module architecture
Native Image Generator,Common Intermediate Language,Dynamic compilation,Programming language,Computer science,Compiler,Theoretical computer science,High-level programming language,Single Compilation Unit,Just-in-time compilation,Low-level programming language
Journal
Volume
Issue
ISSN
37
2
0164-0925
Citations 
PageRank 
References 
37
1.16
42
Authors
6
Name
Order
Citations
PageRank
Marco Patrignani111611.58
Pieter Agten22118.46
Raoul Strackx337818.14
Bart Jacobs4122372.61
Dave Clarke541626.19
Frank Piessens62455162.28