首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种基于Solidity编写智能合约的缺陷筛查方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:湖北大学

摘要:本发明公开了一种基于Solidity编写智能合约的缺陷筛查方法,包括以下步骤:步骤1、获取缺陷检测数据集;步骤2、获取视觉特征向量;步骤3、获取语义特征向量;步骤4、获取字符语义特征向量;步骤5、获取继承特征向量;步骤6、生成新的特征向量;步骤7、获得分类器;步骤8、获得漏洞检测结果,本发明对智能合约缺陷进行检测。

主权项:1.一种基于Solidity编写智能合约的缺陷筛查方法,其特征在于,包括以下步骤:步骤1、获取缺陷检测数据集:将solidity智能合约按照是否存在缺陷进行分类,分类完成后,统计每个solidity智能合约中出现的函数名与库名,将经常出现的函数和库中代码从solidity智能合约代码数据中删除,按照solidity智能合约的执行功能,将具有相同功能的代码去重,处理完成后得到缺陷数据集;步骤2、获取视觉特征向量:对缺陷检测数据集的代码进行颜色标识后,对缺陷检测数据集进行视觉信息特征提取,得到视觉特征向量;步骤3、获取语义特征向量:将缺陷检测数据集中的合约代码按照命名约定将其中的每个标识符拆分为单词,生成顺序代码序列,将顺序代码序列进行拼接,使用tokenizer将顺序代码序列转换为对应的TokenID序列和SegmentID序列,同时生成PositionID序列,将TokenID序列、SegmentID序列、PositionID序列传入BERT模型的嵌入层中,从嵌入层中提取Token嵌入、segment嵌入和Position嵌入,将Token嵌入、Segment嵌入和Position嵌入按照元素值相加后输入到BERT模型的编码层中,由BERT模型的编码层输出词向量,利用BiLSTM网络提取词向量的语义特征,得到语义特征向量;步骤4、获取字符语义特征向量:将缺陷检测数据集的代码转换为ASCII码后,对缺陷检测数据集的字符语义信息进行特征提取,得到字符语义特征向量;步骤5、获取继承特征向量:提取缺陷检测数据集中代码的继承关系;由继承合约指向被继承合约,生成合约对应的邻接矩阵;将生成的邻接矩阵放入node2vec模型之中,提取出缺陷检测数据集的继承结构信息特征;步骤6、生成新的特征向量:得到分类器:将视觉特征向量、语义特征向量、字符语义特征向量、继承特征向量连接在一起,生成一个新的特征向量;步骤7、获得分类器:将新的特征向量输入分类器中对分类器进行训练,得到训练好的分类器;步骤8、获得漏洞检测结果:将待检测的solidity智能合约的代码输入到训练好的分类器中进行漏洞检测,由分类器给出代码是否存在缺陷的判断,并输出漏洞检测结果。

全文数据:

权利要求:

百度查询: 湖北大学 一种基于Solidity编写智能合约的缺陷筛查方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。