说明:收录全文最新的团体标准 提供单次或批量下载
(19)中华 人民共和国 国家知识产权局 (12)发明 专利 (10)授权公告 号 (45)授权公告日 (21)申请 号 202111497320.9 (22)申请日 2021.12.09 (65)同一申请的已公布的文献号 申请公布号 CN 113900665 A (43)申请公布日 2022.01.07 (73)专利权人 众连智能科技有限公司 地址 310000 浙江省杭州市滨江区越达巷 79号1号楼12 楼B2 专利权人 连连银通电子支付有限公司 (72)发明人 姚俊笋 颜亦军 韩朋博  (74)专利代理 机构 广州三环 专利商标代理有限 公司 44202 代理人 苗芬芬 贾允 (51)Int.Cl. G06F 8/41(2018.01)G06K 9/62(2022.01) G06N 20/00(2019.01) 审查员 陈沙沙 (54)发明名称 一种智能合约的安全检测方法及装置 (57)摘要 本发明公开了一种智能合约 的安全检测方 法及装置, 包括: 获取智能合约的代码信息; 基于 代码信息, 确定智 能合约的合约类型; 基于合约 类型, 获取智能合约对应的语 法规则信息和语义 规则信息; 基于代码信息、 语法规则信息和语义 规则信息, 对智能合约进行语法检查和语义检 查, 得到智 能合约的安全信息。 根据本发明的技 术方案, 通过基于智能合约的代码信息确定智能 合约的合约类型, 基于合约类型获取智能合约对 应的语法规则信息和语义规则信息, 并基于代码 信息、 语法规则信息和语义规则信息对智能合约 进行语法检查和语义检查, 从而保证智能合约的 安全性, 避免代码漏洞安全问题所带来的巨额的 财产损失。 权利要求书2页 说明书8页 附图6页 CN 113900665 B 2022.03.15 CN 113900665 B 1.一种智能合约的安全检测方法, 其特 征在于, 所述方法包括: 获取智能合约的代码信息; 基于所述代码信息, 确定所述智能合约的合约类型, 具体包括: 获取合约分类模型; 将 所述代码信息输入所述合约分类模型, 获得所述智能合约的合约类型; 其中, 所述合约类型 表征所述智能合约的交易类型; 基于所述 合约类型, 获取 所述智能合约对应的语法规则 信息和语义 规则信息; 基于所述代码信息、 所述语法规则信息和所述语义规则信息, 对所述智能合约进行语 法检查和语义检查, 得到所述智能合约的安全信息; 其中, 所述获取合约分类模型包括: 获取样本智能合约的样本代码信息和合约类型 标签; 将所述样本代码信息输入预设机器学习模型, 进行合约类型预测 处理, 得到预测合约 类型信息; 根据所述 合约类型 标签和所述预测合约类型信息, 得到合约类型损失信息; 根据所述 合约类型损失信息训练所述预设机器学习模型, 得到所述 合约分类模型。 2.根据权利要求1所述的方法, 其特征在于, 所述基于所述语法规则信 息和所述语义规 则信息, 对所述智能合约进行语法检查和语义检查, 得到所述智能合约的安全信息, 包括: 基于所述代码信息, 构建所述智能合约对应的抽象语法树; 基于所述语法规则信 息, 对所述抽象语法树的节点信 息与所述语法规则信 息中的节点 信息进行匹配处 理; 在存在所述抽象语法树中的节点信息与所述语法规则信息中的节点信息不匹配的情 况下, 得到所述 安全信息为存在错 误的相关信息 。 3.根据权利要求1所述的方法, 其特征在于, 所述基于所述语法规则信 息和所述语义规 则信息, 对所述智能合约进行语法检查和语义检查, 得到所述智能合约的安全信息, 包括: 基于所述代码信息, 获取 所述智能合约的对象信息; 将所述智能合约的对象信息和所述语义 规则信息的预设对象信息进行匹配处 理; 在所述智能合约的对象信 息和所述语义规则信 息的预设对象信 息不匹配的情况下, 得 到所述安全信息为存在错 误的相关信息 。 4.根据权利要求1所述的方法, 其特征在于, 所述基于所述语法规则信 息和所述语义规 则信息, 对所述智能合约进行语法检查和语义检查, 得到所述智能合约的安全信息, 包括: 基于所述代码信息, 获取 所述智能合约的选择分支信息; 在所述选择分支信 息中不存在异常状态对应的处理信 息的情况下, 得到所述安全信 息 为存在错 误的相关信息 。 5.根据权利要求1所述的方法, 其特征在于, 所述基于所述语法规则信 息和所述语义规 则信息, 对所述智能合约进行语法检查和语义检查, 得到所述智能合约的安全信息, 包括: 基于所述代码信息, 获取所述智能合约对应的选择组合信息, 所述选择组合信息包括 多个选择组合各自对应的变量名称; 在所述选择组合信 息中存在相同的变量名称的情况下, 得到所述安全信 息为存在错误 的相关信息 。 6.一种智能合约的安全检测装置, 其特 征在于, 所述装置包括:权 利 要 求 书 1/2 页 2 CN 113900665 B 2代码信息获取模块, 用于获取智能合约的代码信息; 合约类型确定模块, 用于基于所述代码信息, 确定所述智能合约的合约类型, 具体包 括: 获取合约分类模 型; 将所述代码信息输入所述合约分类模 型, 获得所述智能合约的合约 类型; 其中, 所述合约类型表征所述智能合约的交易类型; 所述获取合约分类模型包括: 获 取样本智能合约的样本代码信息和合约类型标签; 将所述样本代码信息输入预设机器学习 模型, 进行合约类型预测处理, 得到预测合约类型信息; 根据所述合约类型标签和所述预测 合约类型信息, 得到合约类型损失信息; 根据所述合约类型损失信息训练所述预设机器学 习模型, 得到所述 合约分类模型; 规则信息确定模块, 用于基于所述合约类型, 获取所述智能合约对应的语法规则信息 和语义规则信息; 安全信息获取模块, 用于基于所述代码信 息、 所述语法规则信 息和所述语义规则信 息, 对所述智能合约进行语法检查和语义检查, 得到所述智能合约的安全信息 。 7.一种电子设备, 其特 征在于, 包括: 处理器; 用于存储处理器可执行指令的存 储器; 其中, 所述处理器被配置为执行所述可执行指令以实现权利要求1至5中任意一项所述 的智能合约的安全检测方法。 8.一种非易失性计算机可读存储介质, 其上存储有计算机程序指令, 其特征在于, 所述 计算机程序指令被处理器执行时实现权利要求1至5中任意一项所述的智能合约的安全检 测方法。权 利 要 求 书 2/2 页 3 CN 113900665 B 3

.PDF文档 专利 一种智能合约的安全检测方法及装置

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