paperbot · PL 论文追踪

全部论文 待读 收藏

P1 Formally Verified Cloud-Scale Authorization

云规模授权的形式化验证
ICSE 2025 IEEE/ACM 47th International Conference on Software Engineering (ICSE)2025匹配度 5/10 · 该论文属于形式化验证与工业落地案例,与画像中“偏好理论形式化和工程实现”“关注工业界落地”有一定契合;但它不涉及 LLM/Agent 改进静态分析或形式化验证,也不涉及浮点程序分析或贝叶斯程序分析,因此仅为外围相关。引用 4 inbox
Aleks Chakarov, Jaco Geldenhuys, Matthew Heck, Michael Hicks, Sam Huang, Georges-Axel Jaloyan, Anjali Joshi, K. Rustan M. Leino, Mikael Mayer, Sean McLaughlin, Akhilesh Mritunjai, Clement Pit-Claudel, Sorawee Porncharoenwase, Florian Rabe, Marianna Rapoport, Giles Reger, Cody Roux, Neha Rungta, Robin Salkeld, Matthias Schlaipfer, Daniel Schoepe, Johanna Schwartzentruber, Serdar Tasiran, Aaron Tomb, Emina Torlak, Jean-Baptiste Tristan, Lucas Wagner, Michael W. Whalen, Remy Willems, Tongtong Xiang, Tae Joon Byun, Joshua Cohen, Ruijie Fang, Junyoung Jang, Jakob Rath, Hira Taqdees Syeda, Dominik Wagner, Yongwei Yuan
crossref: 2026-09-12

AI 速览

一句话:用 Dafny 重写并形式化验证 AWS 授权引擎,保持行为兼容并成功部署,性能提升三倍。

关键系统需持续演化,但在大规模下确保每次变更符合意图且不破坏既有用户行为十分困难。本文报告 AWS 授权引擎(每秒调用 10 亿次)的形式化验证实践。作者没有直接验证既有 Java 引擎,而是用为验证而设计的 Dafny 语言重写一个新引擎,使其功能行为与旧引擎一致,再编译为可读、地道的 Java 代码。开发过程贯穿差分测试与影子测试,部署前与 1015 个生产样本对比,以保证规格匹配实际行为。新引擎于 2024 年无事故部署,客户获得三倍性能提升。该工作展示了形式化验证如何用于大规模演化关键遗留软件。

问题
如何在云规模下演化关键授权系统,确保功能正确且与旧引擎向后兼容。
方法
用 Dafny 重写授权引擎并形式化验证,编译为可读 Java 代码,并结合差分测试、影子测试与生产样本对比。
评估
在生产流量与 1015 个生产样本上做差分与影子测试,并于 2024 年部署,观察到无事故运行与三倍性能提升。
原文摘要(Abstract)

All critical systems must evolve to meet the needs of a growing and diversifying user base. But supporting that evolution is challenging at increasing scale: Maintainers must find a way to ensure that each change does only what is intended, and will not inadvertently change behavior for existing users. This paper presents how we addressed this challenge for the Amazon Web Services (AWS) authorization engine, invoked 1 billion times per second, by using formal verification. Over a period of four years, we built a new authorization engine, one that behaves functionally the same as its predecessor, using the verification-aware programming language Dafny. We can now confidently deploy enhancements and optimizations while maintaining the highest assurance of both correctness and backward compatibility. We deployed the new engine in 2024 without incident and customers immediately enjoyed a threefold performance improvement. The methodology we followed to build this new engine was not an off-the-shelf application of an existing verification tool, and this paper presents several key insights: 1) Rather than prove correct the existing engine, written in Java, we found it more effective to write a new engine in Dafny, a language built for verification from the ground up, and then compile the result to Java. 2) To ensure performance, debuggability, and to gain trust from stakeholders, we needed to generate readable, idiomatic Java code, essentially a transliteration of the source Dafny. 3) To ensure that the specification matches the system's actual behavior, we performed extensive differential and shadow testing throughout the development process, ultimately comparing against 1015production samples prior to deployment. Our approach demonstrates how formal verification can be effectively applied to evolve critical legacy software at scale.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot8714,
  title = {Formally Verified Cloud-Scale Authorization},
  author = {Aleks Chakarov and Jaco Geldenhuys and Matthew Heck and Michael Hicks and Sam Huang and Georges-Axel Jaloyan and Anjali Joshi and K. Rustan M. Leino and Mikael Mayer and Sean McLaughlin and Akhilesh Mritunjai and Clement Pit-Claudel and Sorawee Porncharoenwase and Florian Rabe and Marianna Rapoport and Giles Reger and Cody Roux and Neha Rungta and Robin Salkeld and Matthias Schlaipfer and Daniel Schoepe and Johanna Schwartzentruber and Serdar Tasiran and Aaron Tomb and Emina Torlak and Jean-Baptiste Tristan and Lucas Wagner and Michael W. Whalen and Remy Willems and Tongtong Xiang and Tae Joon Byun and Joshua Cohen and Ruijie Fang and Junyoung Jang and Jakob Rath and Hira Taqdees Syeda and Dominik Wagner and Yongwei Yuan},
  booktitle = {ICSE},
  year = {2025},
  doi = {10.1109/icse55347.2025.00166}
}