paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Immutability and Encapsulation for Sound OO Information Flow Control

面向健全的面向对象信息流控制的不可变性与封装
TOPLAS 45(1)2023匹配度 2/10 · 论文聚焦面向对象信息流控制的类型系统,利用不可变性与唯一性修饰符提升精度,属于PL/静态分析与形式化验证,但未涉及LLM/Agent、浮点程序分析或贝叶斯程序分析,与用户当前关注的PL与AI交叉方向不匹配。引用 3 inbox
Tobias Runge, Marco Servetto, Alex Potanin, Ina Schaefer
crossref: 2026-09-10

AI 速览

一句话:提出面向对象语言 SIFO,用不可变性与唯一性类型修饰符提升信息流控制精度,证明非干扰性并实现为可插拔类型系统。

安全关键的软件常包含机密信息,需防止其泄露给未授权系统。基于语言的信息流控制(如类型系统)可强制执行机密性策略,但面向对象语言中的精度问题突出:需在可靠保持非干扰性的同时,避免拒绝过多安全程序。本文提出面向对象语言 SIFO,通过类型修饰符利用对象的不可变性与唯一性来检测信息泄露,从而提高类型系统精度。作者以示例非形式化介绍 SIFO,形式化其类型系统并证明非干扰性,将其实现为 L42 中的可插拔类型系统,并通过可行性研究与基准测试进行评估。

问题
面向对象语言中,如何设计精确且可靠的信息流控制类型系统,使其在保持非干扰性的同时不拒绝过多的安全程序。
方法
提出语言 SIFO,引入类型修饰符以利用对象的不可变性与唯一性提升信息流控制精度;形式化类型系统并证明非干扰性,实现为 L42 可插拔类型系统。
评估
通过可行性研究与基准测试评估 SIFO 的实用性与精度。
原文摘要(Abstract)

Security-critical software applications contain confidential information which has to be protected from leaking to unauthorized systems. With language-based techniques, the confidentiality of applications can be enforced. Such techniques are for example type systems that enforce an information flow policy through typing rules. The precision of such type systems, especially in object-oriented languages, is an area of active research: an appropriate system should not reject too many secure programs while soundly preserving noninterference. In this work, we introduce the language SIFO which supports information flow control for an object-oriented language with type modifiers. Type modifiers increase the precision of the type system by utilizing immutability and uniqueness properties of objects for the detection of information leaks. We present SIFO informally by using examples to demonstrate the applicability of the language, formalize the type system, prove noninterference, implement SIFO as a pluggable type system in the programming language L42, and evaluate it with a feasibility study and a benchmark.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@article{paperbot2140,
  title = {Immutability and Encapsulation for Sound OO Information Flow Control},
  author = {Tobias Runge and Marco Servetto and Alex Potanin and Ina Schaefer},
  journal = {ACM Transactions on Programming Languages and Systems},
  volume = {45},
  number = {1},
  year = {2023},
  doi = {10.1145/3573270}
}