Fully-Abstract Compilation by Approximate Back-Translation

被引:19
|
作者
Devriese, Dominique [1 ]
Patrignani, Marco [1 ,2 ]
Piessens, Frank [1 ]
机构
[1] Katholieke Univ Leuven, iMinds Distrinet, Louvain, Belgium
[2] MPI SWS, Berlin, Germany
关键词
Fully-abstract compilation; logical relations; cross language logical relations; step-indexed logical relations; compiler security; secure compilation;
D O I
10.1145/2914770.2837618
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
A compiler is fully-abstract if the compilation from source language programs to target language programs reflects and preserves behavioural equivalence. Such compilers have important security benefits, as they limit the power of an attacker interacting with the program in the target language to that of an attacker interacting with the program in the source language. Proving compiler full abstraction is, however, rather complicated. A common proof technique is based on the back-translation of target-level program contexts to behaviourally-equivalent source-level contexts. However, constructing such a back-translation is problematic when the source language is not strong enough to embed an encoding of the target language. For instance, when compiling from the simply-typed lambda-calculus (lambda(tau)) to the untyped lambda-calculus (lambda(mu)), the lack of recursive types in lambda(tau)-prevents such a back-translation. We propose a general and elegant solution for this problem. The key insight is that it suffices to construct an approximate back translation. The approximation is only accurate up to a certain number of steps and conservative beyond that, in the sense that the context generated by the back-translation may diverge when the original would not, but not vice versa. Based on this insight, we describe a general technique for proving compiler full-abstraction and demonstrate it on a compiler from lambda(tau) to lambda(mu). The proof uses asymmetric cross-language logical relations and makes innovative use of step-indexing to express the relation between a context and its approximate back-translation. We believe this proof technique can scale to challenging settings and enable simpler, more scalable proofs of compiler full-abstraction.
引用
收藏
页码:164 / 177
页数:14
相关论文
共 50 条
  • [1] MODULAR, FULLY-ABSTRACT COMPILATION BY APPROXIMATE BACK-TRANSLATION
    Devriese, Dominique
    Patrignani, Marco
    Piessens, Frank
    Keuchel, Steven
    [J]. LOGICAL METHODS IN COMPUTER SCIENCE, 2017, 13 (04)
  • [2] On Modular and Fully-Abstract Compilation
    Patrignani, Marco
    Devriese, Dominique
    Piessens, Frank
    [J]. 2016 IEEE 29TH COMPUTER SECURITY FOUNDATIONS SYMPOSIUM (CSF 2016), 2016, : 17 - 30
  • [3] Back-translation in Translation Teaching
    刘聪
    [J]. 读与写(教育教学刊), 2018, 15 (10) : 3 - 3
  • [4] Tagged Back-Translation
    Caswell, Isaac
    Chelba, Ciprian
    Grangier, David
    [J]. FOURTH CONFERENCE ON MACHINE TRANSLATION (WMT 2019), VOL 1: RESEARCH PAPERS, 2019, : 53 - 63
  • [5] A fully-abstract model for the pi-calculus
    Fiore, MP
    Moggi, E
    Sangiorgi, D
    [J]. 11TH ANNUAL IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE, PROCEEDINGS, 1996, : 43 - 54
  • [6] Understanding Back-Translation at Scale
    Edunov, Sergey
    Ott, Myle
    Auli, Michael
    Grangier, David
    [J]. 2018 CONFERENCE ON EMPIRICAL METHODS IN NATURAL LANGUAGE PROCESSING (EMNLP 2018), 2018, : 489 - 500
  • [7] EXPLICIATION AND IMPLICITATION IN BACK-TRANSLATION
    Makkos, Aniko
    Robin, Edina
    [J]. CURRENT TRENDS IN TRANSLATION TEACHING AND LEARNING E, 2014, 1 : 151 - 182
  • [8] Iterative Back-Translation for Neural Machine Translation
    Vu Cong Duy Hoang
    Koehn, Philipp
    Haffari, Gholamreza
    Cohn, Trevor
    [J]. NEURAL MACHINE TRANSLATION AND GENERATION, 2018, : 18 - 24
  • [9] Generalizing Back-Translation in Neural Machine Translation
    Graca, Miguel
    Kim, Yunsu
    Schamper, Julian
    Khadivi, Shahram
    Ney, Hermann
    [J]. FOURTH CONFERENCE ON MACHINE TRANSLATION (WMT 2019), VOL 1: RESEARCH PAPERS, 2019, : 45 - 52
  • [10] AN INTENSIONALLY FULLY-ABSTRACT SHEAF MODEL FOR π (expanded version)
    Eberhart, Clovis
    Hirschowitz, Tom
    Seiller, Thomas
    [J]. LOGICAL METHODS IN COMPUTER SCIENCE, 2017, 13 (04)