This paper shows how secure information flow properties of multi-threaded programs can be verified by model checking in a precise and efficient way, by using the idea of self-composition. It discusses two properties that aim to capture secure information flow for multi-threaded programs, and it shows how these properties can be char- acterised in modal μ-calculus. For this characterisation, a self-composed model of the program is constructed. More precisely, this is a model that contains two copies of the labelled transition system induced by the program, so that the program is executed in parallel with itself. The self- composed model allows to compare two program executions in a single temporal formula that characterises a secure information flow property. Both the formula and model are translated into the input language for the Concurrency Workbench model checker. We discuss this encoding, and use it for some practical experiments on several simple examples.
|Title of host publication||Proceedings of the Joint Workshop on Theory of Security and Applications, TOSCA 2011|
|Editors||S. Mödersheim, C. Palamadessi|
|Place of Publication||Berlin|
|Number of pages||18|
|Publication status||Published - Mar 2011|
|Name||Lecture Notes in Computer Science|
Huisman, M., & Blondeel, H-C. (2011). Model-checking Secure Information Flow for Multi-Threaded Programs. In S. Mödersheim, & C. Palamadessi (Eds.), Proceedings of the Joint Workshop on Theory of Security and Applications, TOSCA 2011 (pp. 148-165). (Lecture Notes in Computer Science; Vol. 6993). Berlin: Springer. https://doi.org/10.1007/978-3-642-27375-9_9