paperbot · PL 论文追踪

全部论文 待读 收藏

P2 StkTokens: enforcing well-bracketed control flow and stack encapsulation using linear capabilities

StkTokens:使用线性 capability 强制良括号控制流与栈封装
POPL 3(POPL)2019匹配度 2/10 · 论文属于形式化方法与 capability 安全领域,虽与 PL/形式语义相关,但未涉及用户核心关注的 LLM/Agent 与静态分析、浮点程序分析或贝叶斯程序分析的交叉方向,也未体现问题驱动的 AI/PL 结合。引用 43 inbox
Lau Skorstengaard, Dominique Devriese, Lars Birkedal
crossref: 2026-09-10

AI 速览

一句话:提出并形式化 StkTokens 调用约定,借助硬件不可复制的线性 capability,证明其在 capability 机器上保证良括号控制流与局部状态封装。

论文研究如何在 capability 机器上通过调用约定保证控制流良好嵌套,并封装局部状态。作者提出 StkTokens:一种基于线性 capability 的调用约定,利用硬件保证这类 capability 不可复制,从而约束返回地址与栈访问,防止越权跳转和栈数据泄漏。为论证其有效性,作者形式化该约定,并提出“完全抽象 overlay 语义”作为证明方法,用其证明 StkTokens 确实实施良括号控制流和局部状态封装。结果是一个可证明安全的新调用约定,以及一种用于此类底层机制验证的语义框架。

问题
如何在 capability 机器上防止控制流破坏和局部状态越权访问,尤其是保证调用返回良好嵌套并封装栈。
方法
提出基于硬件不可复制线性 capability 的 StkTokens 调用约定,并用完全抽象 overlay 语义形式化与证明其保证。
评估
评估方式是形式化建模与证明:定义完全抽象 overlay 语义,并据此证明 StkTokens 有效强制良括号控制流和局部状态封装。
原文摘要(Abstract)

We propose and study StkTokens: a new calling convention that provably enforces well-bracketed control flow and local state encapsulation on a capability machine. The calling convention is based on linear capabilities: a type of capabilities that are prevented from being duplicated by the hardware. In addition to designing and formalizing this new calling convention, we also contribute a new way to formalize and prove that it effectively enforces well-bracketed control flow and local state encapsulation using what we call a fully abstract overlay semantics.

链接与引用

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

BibTeX
@article{paperbot688,
  title = {StkTokens: enforcing well-bracketed control flow and stack encapsulation using linear capabilities},
  author = {Lau Skorstengaard and Dominique Devriese and Lars Birkedal},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {3},
  number = {POPL},
  year = {2019},
  doi = {10.1145/3290332}
}