Gohar Shakoori, Mehran S. Fallah, Zeinab Iranmanesh
{"title":"A Type System for Quantified Information-Flow Security in Java-Like Languages","authors":"Gohar Shakoori, Mehran S. Fallah, Zeinab Iranmanesh","doi":"10.1109/ARES.2016.30","DOIUrl":null,"url":null,"abstract":"Quantified information-flow policies put an upper bound on the allowable amount of information flow from high inputs to low outputs of a program. Earlier research in this area has mainly focused on simple imperative languages. In this paper, we present a type system that derives the amount of information flow in the programs of a Java-like language. For this purpose, we adopt the Middlewieght Java (MJ) which is small enough for formal proofs, although it is a proper subset of Java with a fairly rich set of features. Promotable expressions, which also behave as statements, as well as method invocations and the loops they may create are of particular attention in the study of quantified information flow in such a language. We prove that our typing rules are sound and derive correct bounds of information flow for a given program. The proofs are based on a denotational semantics for MJ that we propose as part of this research.","PeriodicalId":216417,"journal":{"name":"2016 11th International Conference on Availability, Reliability and Security (ARES)","volume":"25 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2016 11th International Conference on Availability, Reliability and Security (ARES)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ARES.2016.30","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Quantified information-flow policies put an upper bound on the allowable amount of information flow from high inputs to low outputs of a program. Earlier research in this area has mainly focused on simple imperative languages. In this paper, we present a type system that derives the amount of information flow in the programs of a Java-like language. For this purpose, we adopt the Middlewieght Java (MJ) which is small enough for formal proofs, although it is a proper subset of Java with a fairly rich set of features. Promotable expressions, which also behave as statements, as well as method invocations and the loops they may create are of particular attention in the study of quantified information flow in such a language. We prove that our typing rules are sound and derive correct bounds of information flow for a given program. The proofs are based on a denotational semantics for MJ that we propose as part of this research.