Many functional programming languages compile to lowlevel languages such as C or assembly. Numerous security properties of those compilers, however, apply only when the compiler compiles whole programs. This paper presents a compilation scheme that securely compiles a standalone module of ModuleML, a light-weight version of an ML with modules, into untyped assembly. The compilation scheme is secure in that it reflects the abstractions of a ModuleML module, for every possible piece of assembly code that it interacts with. This is achieved by isolating the compiled module through a low-level memory isolation mechanism and by dynamically type checking its interactions. We evaluate an implementation of the compiler on relevant test scenarios.

A Secure Compiler for ML Modules / Larmuseau, Adriaan; Patrignani, Marco; Clarke, Dave. - 9458:(2015), pp. 29-48. ( 13th Asian Symposium on Programming Languages and Systems, APLAS 2015 Pohang, South Korea, November 30 - December 2, 2015,) [10.1007/978-3-319-26529-2_3].

A Secure Compiler for ML Modules

Patrignani ,Marco;
2015-01-01

Abstract

Many functional programming languages compile to lowlevel languages such as C or assembly. Numerous security properties of those compilers, however, apply only when the compiler compiles whole programs. This paper presents a compilation scheme that securely compiles a standalone module of ModuleML, a light-weight version of an ML with modules, into untyped assembly. The compilation scheme is secure in that it reflects the abstractions of a ModuleML module, for every possible piece of assembly code that it interacts with. This is achieved by isolating the compiled module through a low-level memory isolation mechanism and by dynamically type checking its interactions. We evaluate an implementation of the compiler on relevant test scenarios.
2015
Programming Languages and Systems - 13th Asian Symposium, {APLAS}2015, Pohang, South Korea, November 30 - December 2, 2015, Proceedings
GEWERBESTRASSE 11, CHAM, CH-6330, SWITZERLAND
Springer
9783319265285
Larmuseau, Adriaan; Patrignani, Marco; Clarke, Dave
A Secure Compiler for ML Modules / Larmuseau, Adriaan; Patrignani, Marco; Clarke, Dave. - 9458:(2015), pp. 29-48. ( 13th Asian Symposium on Programming Languages and Systems, APLAS 2015 Pohang, South Korea, November 30 - December 2, 2015,) [10.1007/978-3-319-26529-2_3].
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11572/336495
 Attenzione

Attenzione! I dati visualizzati non sono stati sottoposti a validazione da parte dell'ateneo

Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 6
  • ???jsp.display-item.citation.isi??? 6
  • OpenAlex ND
social impact