paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Gradient: Gradual Compartmentalization via Object Capabilities Tracked in Types

Gradient:经由类型中追踪的对象能力实现渐进式隔离
OOPSLA 8(OOPSLA2)2024匹配度 2/10 · 该论文属于类型系统与安全隔离方向,关注对象能力与渐进式隔离迁移,与用户画像中的 PL+AI/LLM、静态分析、浮点程序分析、贝叶斯程序分析均无直接交集。论文未涉及 LLM/Agent,也未以静态分析或程序验证为核心方法。引用 1 inbox
Aleksander Boruch-Gruszecki, Adrien Ghosn, Mathias Payer, Clément Pit-Claudel
dblp: 2026-09-10crossref: 2026-09-10

AI 速览

一句话:提出渐进式隔离方法,允许按组件逐步迁移到对象能力模型,并在类型中追踪对象权限以持续获得安全保障。

现代软件细粒度的进程内隔离需求日益迫切,供应链攻击使得依赖成百上千库的应用面临风险。对象能力(object capabilities)是一种重要的隔离方案,但其前提是程序整体不存在环境权限(ambient authority),而已有代码大多并非如此,因此采用对象能力往往需要“重写世界”式迁移。本文提出渐进式隔离(gradual compartmentalization),允许应用按任意顺序逐个组件迁移到对象能力模型,并在整个迁移过程中持续享有安全保证。该方法依赖运行时权限强制,并在类型系统中追踪对象的权限。作者实现了 Gradient——面向 Scala 的渐进式隔离概念验证扩展,其关键组件为 Enclosures 与 Capture Tracking。评估通过将 Scala 标准 XML 库迁移到 Gradient 来完成。

问题
现代软件需要细粒度的进程内隔离以抵御供应链攻击,但对象能力要求全程序放弃环境权限,导致已有代码难以迁移。
方法
提出渐进式隔离,将运行时权限强制与类型系统中的对象权限追踪相结合;在 Scala 中实现原型 Gradient,以 Enclosures 和 Capture Tracking 为核心组件。
评估
通过将 Scala 标准 XML 库迁移到 Gradient,对该渐进式隔离方案进行案例评估。
原文摘要(Abstract)

Modern software needs fine-grained compartmentalization, i.e., intra-process isolation. A particularly important reason for it are supply-chain attacks, the need for which is aggravated by modern applications depending on hundreds or even thousands of libraries. Object capabilities are a particularly salient approach to compartmentalization, but they require the entire program to assume a lack of ambient authority. Most of existing code was written under no such assumption; effectively, existing applications need to undergo a rewrite-the-world migration to reap the advantages of ocap. We propose gradual compartmentalization , an approach which allows gradually migrating an application to object capabilities, component by component in arbitrary order, all the while continuously enjoying security guarantees. The approach relies on runtime authority enforcement and tracking the authority of objects the type system. We present Gradient, a proof-of- concept gradual compartmentalization extension to Scala which uses Enclosures and Capture Tracking as its key components. We evaluate our proposal by migrating the standard XML library of Scala to Gradient.

链接与引用

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

BibTeX
@article{Boruch-Gruszecki24,
  title = {Gradient: Gradual Compartmentalization via Object Capabilities Tracked in Types},
  author = {Aleksander Boruch-Gruszecki and Adrien Ghosn and Mathias Payer and Clément Pit-Claudel},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {8},
  number = {OOPSLA2},
  year = {2024},
  doi = {10.1145/3689751}
}