全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202211117310.2 (22)申请日 2022.09.14 (71)申请人 蚂蚁区块链科技 (上海) 有限公司 地址 200010 上海市黄浦区外马路618号8 层803室 (72)发明人 曹蓉  (74)专利代理 机构 北京博思佳知识产权代理有 限公司 1 1415 专利代理师 李威 (51)Int.Cl. G06F 8/65(2018.01) G06F 8/71(2018.01) G06F 21/60(2013.01) G06F 21/64(2013.01) G06F 16/27(2019.01) (54)发明名称 一种检测合约升级的兼容 性的方法和装置 (57)摘要 本说明书一个或多个实施例提供一种检测 合约升级的兼容性的方法和装置及客户端, 应用 于区块链领域。 一种检测合约升级的兼容性的方 法, 包括: 生 成升级前后合约的抽象语法树; 解析 生成的抽象语 法树, 顺序提取每个抽象语法树的 节点信息中的基础信息; 比较升级前后的抽象语 法树的节点信息中的基础信息, 得到兼容性结 论。 权利要求书2页 说明书33页 附图7页 CN 115454475 A 2022.12.09 CN 115454475 A 1.一种检测合约升级的兼容 性的方法, 包括: 生成升级前后合约的抽象语法树; 解析生成的抽象语法树, 顺序提取每 个抽象语法树的节点信息中的基础信息; 比较升级前后的抽象语法树的节点信息中的基础信息, 得到兼容 性结论。 2.如权利要求1所述的方法, 所述解析生成的抽象语法树, 顺序提取每个抽象语法树的 节点信息中的基础信息, 包括: 解析生成的抽象语法树, 对于节点信息中状态变量为真的, 顺序提取每个抽象语法树 的节点信息中的基础信息 。 3.如权利要求1所述的方法, 所述 生成升级前后合约的抽象语法树, 包括: 对升级前后的智能合约代码根据抽象语法树进行词法/语法分析, 生成升级前后的合 约的抽象语法树。 4.如权利要求1所述的方法, 所述基础信 息包括抽象语法树的节点顺序, 进一步还包括 状态变量名和/或类型。 5.如权利要求1所述的方法, 所述比较升级前后的抽象语法树的节点信息中的基础信 息, 包括: 比较升级前后的抽象语法树中相同节点编号的节点信息中的基础信息 。 6.如权利要求5所述的方法, 按照节点编 号顺序, 比较升级前后的抽象语法树中相同节 点编号的节点信息中的基础信息 。 7.如权利要求5或6所述的方法, 如果比较得到状态变量名不同, 则不兼容; 或, 如果比较得到状态变量类型不同, 则不兼容; 或, 如果状态变量名和状态变量类型均不同, 则不兼容。 8.如权利要求5或6所述的方法, 升级后的状态变量是在升级前状态变量之后追加新的 状态变量的, 判断为兼容。 9.如权利要求1所述的方法, 所述解析生成的抽象语法树, 顺序提取每个抽象语法树的 节点信息中的基础信息, 包括: 对于复合结构, 解析生成的抽象语法树, 顺序并递归的提取每个抽象语法树的节点信 息中的基础信息 。 10.如权利要求1所述的方法, 如果不兼容, 还包括反馈冲突的slot位置的基础信息/节 点信息。 11.一种合约升级的兼容 性的检测装置, 包括: 抽象语法树 生成单元, 用于生成升级前后合约的抽象语法树; 提取单元, 用于解析生成的抽象语法树, 并顺序提取每个抽象语法树的节点信息中的 基础信息; 比较单元, 用于比较升级前后的抽象语法树的节点信息中的基础信息, 得到兼容性结 论。 12.如权利要求11所述的检测装置, 所述提取单元解析生成的抽象语法树, 对于节点信 息中状态变量 为真的, 顺序提取每 个抽象语法树的节点信息中的基础信息 。 13.如权利要求11所述的检测装置, 所述抽象语法树生成单元对升级前后的智能合约权 利 要 求 书 1/2 页 2 CN 115454475 A 2代码根据抽象语法树进行词法/语法分析, 生成升级前后的合约的抽象语法树。 14.如权利要求11所述的检测装置, 所述基础信 息包括抽象语法树的节点顺序, 进一步 还包括状态变量名和/或类型。 15.如权利要求11所述的检测装置, 所述比较单元比较升级前后的抽象语法树中相同 节点编号的节点信息中的基础信息 。 16.如权利要求15所述的检测装置, 所述比较单元按照节点编 号顺序, 比较升级前后的 抽象语法树中相同节点编号的节点信息中的基础信息 。 17.如权利要求15或16所述的检测装置, 比较单 元 如果比较得到状态变量名不同, 则不兼容; 或, 如果比较得到状态变量类型不同, 则不兼容; 或, 如果状态变量名和状态变量类型均不同, 则不兼容。 18.如权利要求15或16所述的检测装置, 所述比较单元比较升级后的状态变量是在升 级前状态变量之后追加新的状态变量的, 判断为兼容。 19.如权利要求1 1所述的检测装置, 对于复合结构, 所述提取单元解析生成的抽象语法树, 顺序并递归的提取每个抽象语 法树的节点信息中的基础信息 。 20.如权利要求11所述的检测装置, 还包括反馈单元, 对于比较单元的比较结果为不兼 容的, 所述反馈单 元反馈冲突的sl ot位置的基础信息 /节点信息 。 21.一种客户端, 包括: 处理器, 存储器, 存储有程序, 其中在所述处理器执行所述程序时, 执行上述权利要求1 ‑10中任 一项所述的方法。权 利 要 求 书 2/2 页 3 CN 115454475 A 3

.PDF文档 专利 一种检测合约升级的兼容性的方法和装置

文档预览
中文文档 43 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共43页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种检测合约升级的兼容性的方法和装置 第 1 页 专利 一种检测合约升级的兼容性的方法和装置 第 2 页 专利 一种检测合约升级的兼容性的方法和装置 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 00:49:27上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。