智能合约是运行在区块链上的数字协议,智能合约的开发涉及计算机、金融、法律等多个领域,近年来高级智能合约语言已被提岀用于解决不同领域人员阅读、交流与协同开发难的问题,然而上述语言与可执行智能合约语言之间仍缺少有效的转化方法。针对这一问题,本文设计了一种 SPESC到目标程序语言( Solidity)的转化规则,并提出了一种包括高级智能合约层、智能合约层和机器代码执行层的三层智能合约系统框架。首先,转化规则给出了根据 SPESC合约当事人定义生成目标语言当事人子合约、以及 SPESO其余部分生成目标语言主体子合约之间的对应关系;其次,除程序框架与存储结构外,目标语言程序还包含当事人人员管理、程序时序控制、异常检测等机制,这些机制能辅助编程人员半自动化地编写智能合约程序;进而,通过两个实验验证了上述高级智能合约框架的易读性以及转换的正确性,第一个实验邀请了计算机与非计算机人员分组阅读 Solidity和 SPESO的智能合约并回答问卷,结果表明阅读 SPESO的速度约为阅读 Solidity两倍,准确率也更高。然后以竞买合约为实例,给出根据上述转化规则从 SPESO合约转化到可执行 Solidity合约语言程序,并通过以太坊私链部署运行来验证转化过程的正确性。实例表明上述转化规则和系统框架可简化智能合约的编写、规范智能合约的程序结构、辅助编程人员验证代码的正确性。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !