Information flow control type systems statically restrict the propagation of sensitive data to ensure end-to-end confidentiality. The property to be shown is noninterference, asserting that an attacker cannot infer any secrets from made observations. Session types delimit the kinds of observations that can be made along a communication channel by imposing a protocol of message exchange. These protocols govern the exchange along a single channel and leave unconstrained the propagation along adjacent channels. This paper contributes an information flow control type system for linear session types. The type system stands in close correspondence with intuitionistic linear logic. Intuitionistic linear logic typing ensures that process configurations form a tree such that client processes are parent nodes and provider processes child nodes. To control the propagation of secret messages, the type system is enriched with secrecy levels and arranges these levels to be aligned with the configuration tree. Two levels are associated with every process: the maximal secrecy denoting the process' security clearance and the running secrecy denoting the highest level of secret information obtained so far. The computational semantics naturally stratifies process configurations such that higher-secrecy processes are parents of lower-secrecy ones, an invariant enforced by typing. Noninterference is stated in terms of a logical relation that is indexed by the secrecy-level-enriched session types. The logical relation contributes a novel development of logical relations for session typed languages as it considers open configurations, allowing for more nuanced equivalence statement.
翻译:信息流控制类型系统静态地限制敏感数据的传播,以确保端到端的保密性。 要显示的属性是不干涉, 声称攻击者不能从已观察到的任何秘密推断出任何机密。 会话类型通过强制实施信件交换协议来划定通信频道上可以作出的观察种类。 这些协议管理单一频道的交换, 并且不限制相邻频道的传播。 本文为线性会话类型提供了一种信息流控制类型系统。 类型系统与直观线性线性逻辑密切对应。 直观线性线性逻辑打字确保程序配置形成一棵树, 使客户程序成为父节点, 提供者处理子节点。 为了控制秘密信息的传播, 类型系统会以保密级别丰富, 并安排这些级别与配置相匹配。 两个级别与每个进程相关: 最高级的保密分解程序安全权限, 以及记录最高级的保密级别。 计算性线性线性逻辑逻辑逻辑逻辑性键键性输入程序配置, 将更高级的保密性程序组合作为客户端的父为母节节点, 将逻辑型的排序关系作为逻辑性排序。