International On Static Analysis

SAS 2015: Static Analysis pp 1-17

Static Analysis of Non-interference in Expressive Low-Level Languages

Conference paper

DOI: 10.1007/978-3-662-48288-9_1

Part of the Lecture Notes in Computer Science book series (LNCS, volume 9291)
Cite this paper as:
Aldous P., Might M. (2015) Static Analysis of Non-interference in Expressive Low-Level Languages. In: Blazy S., Jensen T. (eds) Static Analysis. SAS 2015. Lecture Notes in Computer Science, vol 9291. Springer, Berlin, Heidelberg


Early work in implicit information flow detection applied only to flat, procedureless languages with structured control-flow (e.g., if statements, while loops). These techniques have yet to be adequately extended and generalized to expressive languages with interprocedural, exceptional and irregular control-flow behavior. We present an implicit information flow analysis suitable for languages with conditional jumps, dynamically dispatched methods, and exceptions. We implement this analysis for the Dalvik bytecode format, the substrate for Android. In order to capture information flows across interprocedural and exceptional boundaries, this analysis uses a projection of a small-step abstract interpreter’s rich state graph instead of the control-flow graph typically used for such purposes in weaker linguistic settings. We present a proof of termination-insensitive non-interference. To our knowledge, it is the first analysis capable of proving non-trivial non-interference in a language with this combination of features.

Copyright information

© Springer-Verlag Berlin Heidelberg 2015

Authors and Affiliations

  1. 1.University of UtahSalt Lake CityUSA

Personalised recommendations