【24h】

SMT-Friendly Formalization of the Solidity Memory Model

机译:固态记忆模型的SMT友好形式化

获取原文

摘要

Solidity is the dominant programming language for Ethereum smart contracts. This paper presents a high-level formalization of the Solidity language with a focus on the memory model. The presented formalization covers all features of the language related to managing state and memory. In addition, the formalization we provide is effective: all but few features can be encoded in the quantifier-free fragment of standard SMT theories. This enables precise and efficient reasoning about the state of smart contracts written in Solidity. The formalization is implemented in the SOLO VERIFY verifier and we provide an extensive set of tests that covers the breadth of the required semantics. We also provide an evaluation on the test set that validates the semantics and shows the novelty of the approach compared to other Solidity-level contract analysis tools.
机译:可靠性是以太坊智能合约的主要编程语言。本文介绍了Solidity语言的高级形式化,重点是内存模型。所提供的形式化涵盖了语言中与管理状态和内存有关的所有功能。此外,我们提供的形式化是有效的:几乎所有功能都可以在标准SMT理论的无量词片段中进行编码。这样就可以对Solidity中编写的智能合约的状态进行精确而有效的推理。形式化是在SOLO VERIFY验证程序中实现的,我们提供了广泛的测试集,涵盖了所需语义的广度。与其他Solidity级合同分析工具相比,我们还提供了对测试集的评估,该评估可验证语义并显示该方法的新颖性。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号