-
公开(公告)号:CN111400303B
公开(公告)日:2023-07-21
申请号:CN202010031809.6
申请日:2020-01-13
Applicant: 复旦大学 , 上海计算机软件技术开发中心
Abstract: 本发明公开了一种基于抽象语法树的智能合约数据提取和同步方法。首先对智能合约源代码进行词法分析和语法分析,生成抽象语法树;对该抽象语法树进行由顶至下的遍历分析,针对每个合约中的状态变量记录其序号及类型,并据此计算出该智能合约中的数据对应于存储MPT树中的索引值;当有新的交易产生时,根据交易所在的区块头的状态MPT树根重构存储MPT树,根据索引值查询存储MPT树获取到状态变量实际值,并将该数据同步到外部存储层中。使用本发明能够有效提取和同步智能合约应用中变量的数据,用于后续查询和分析。
-
公开(公告)号:CN111400303A
公开(公告)日:2020-07-10
申请号:CN202010031809.6
申请日:2020-01-13
Applicant: 复旦大学 , 上海计算机软件技术开发中心
Abstract: 本发明公开了一种基于抽象语法树的智能合约数据提取和同步方法。首先对智能合约源代码进行词法分析和语法分析,生成抽象语法树;对该抽象语法树进行由顶至下的遍历分析,针对每个合约中的状态变量记录其序号及类型,并据此计算出该智能合约中的数据对应于存储MPT树中的索引值;当有新的交易产生时,根据交易所在的区块头的状态MPT树根重构存储MPT树,根据索引值查询存储MPT树获取到状态变量实际值,并将该数据同步到外部存储层中。使用本发明能够有效提取和同步智能合约应用中变量的数据,用于后续查询和分析。
-