一句话:提出对博弈进行组合式分解的增量安全分析方法,把博弈论安全性化归为 SMT 求解,可扩展至百万节点规模。
区块链等去中心化系统的安全性可用博弈论方式刻画:需要证明用户只要遵循诚实协议,无论他人如何行为都不会遭受经济损失。这类经济分析可编码为实数算术一阶理论中的自动推理问题,从而化归为 SMT 求解;但把整个博弈当作单个 SMT 实例无法扩展到具有百万次交互的协议。本文提出基于博弈组合推理的分而治之安全分析:将博弈划分为子博弈,分析是增量的,修改某个子博弈后只需重新分析其祖先节点,而无需重析整个博弈。组合各子博弈的安全性质即可得到整个博弈的安全性,方法兼具可靠性与完备性。实验表明,该方法能发现博弈内部的性质与错误,并可扩展至百万节点规模的博弈。
We propose a compositional approach to combine and scale automated reasoning in the static analysis of decentralized system security, such as blockchains. Our focus lies in the game-theoretic security analysis of such systems, allowing us to examine economic incentives behind user actions. In this context, it is particularly important to certify that deviating from the intended, honest behavior of the decentralized protocol is not beneficial: as long as users follow the protocol, they cannot be financially harmed, regardless of how others behave. Such an economic analysis of blockchain protocols can be encoded as an automated reasoning problem in the first-order theory of real arithmetic, reducing game-theoretic reasoning to satisfiability modulo theories (SMT). However, analyzing an entire game-theoretic model (called a game) as a single SMT instance does not scale to protocols with millions of interactions. We address this challenge and propose a divide-and-conquer security analysis based on compositional reasoning over games. Our compositional analysis is incremental: we divide games into subgames such that changes to one subgame do not necessitate re-analyzing the entire game, but only the ancestor nodes. Our approach is sound, complete, and effective: combining the security properties of subgames yields security of the entire game. Experimental results show that compositional reasoning discovers intra-game properties and errors while scaling to games with millions of nodes, enabling security analysis of large protocols.
@article{paperbot2982,
title = {Divide and Conquer: A Compositional Approach to Game-Theoretic Security},
author = {Ivana Bocevska and Anja Petković Komel and Laura Kovács and Sophie Rain and Michael Rawson},
journal = {Proceedings of the ACM on Programming Languages},
volume = {9},
number = {OOPSLA2},
year = {2025},
doi = {10.1145/3763120}
}