[发明专利]基于中间表达的二进制代码开源成分识别方法及系统在审
| 申请号: | 202310301816.7 | 申请日: | 2023-03-13 |
| 公开(公告)号: | CN116432622A | 公开(公告)日: | 2023-07-14 |
| 发明(设计)人: | 万振华;胡佳豪;蒋建春;程泽凯 | 申请(专利权)人: | 深圳开源互联网安全技术有限公司;中国科学院软件研究所 |
| 主分类号: | G06F40/194 | 分类号: | G06F40/194;G06N3/0455;G06F8/41;G06F8/53 |
| 代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 赵贯杰 |
| 地址: | 518000 广东省深圳市龙华区民治*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 中间 表达 二进制 代码 成分 识别 方法 系统 | ||
1.一种基于中间表达的二进制代码开源成分识别方法,其特征在于,包括:
将开源组件库中的开源组件的源代码转换为二进制文件,并抽取和存储转换过程中的中间表达式,以获得基础数据库;
将待检测的二进制的目标文件反编译为中间表达式,以获得目标数据;
通过第一神经网络模型分别对所述基础数据库中的各个数据进行转换处理,以获得基于高维空间向量表达的源代码向量;同时,
通过所述第一神经网络模型对所述目标数据进行转换处理,以获得与所述源代码向量维度相同的目标代码向量;
分别计算所述目标代码向量与每一所述源代码向量的相似度,以获得相似度值。
2.根据权利要求1所述的基于中间表达的二进制代码开源成分识别方法,其特征在于,所述第一神经网络模型的生成方法包括:
提供一Bert预训练模型;
通过所述基础数据库中的数据对Bert预训练模型进行精调,以获得所述第一神经网络模型。
3.根据权利要求1所述的基于中间表达的二进制代码开源成分识别方法,其特征在于,采用第二神经网络模型计算目标代码向量与源代码向量的相似度。
4.根据权利要求1所述的基于中间表达的二进制代码开源成分识别方法,其特征在于,所述源代码向量的维度大于或等于1024。
5.一种基于中间表达的二进制代码开源成分识别系统,其特征在于,包括:
第一转换模块,其用于将将开源组件库中的开源组件的源代码转换为二进制文件,并抽取和存储转换过程中的中间表达式,以获得基础数据库;
第二转换模块,其用于将待检测的二进制的目标文件反编译为中间表达式,以获得目标数据;
向量化表示模块,其用于通过第一神经网络模型分别对所述基础数据库中的各个数据和所述目标数据进行转换处理,以获得基于高维空间向量表达的源代码向量和目标代码向量;
相似度计算模块,其用于分别计算所述目标代码向量与每一所述源代码向量的相似度,以获得相似度值。
6.根据权利要求5所述的基于中间表达的二进制代码开源成分识别系统,其特征在于,还包括模型生成模块,所述模型生成模块用于通过所述基础数据库中的数据对Bert预训练模型进行精调,以获得所述第一神经网络模型。
7.根据权利要求5所述的基于中间表达的二进制代码开源成分识别系统,其特征在于,还包括第二神经网络模型,所述相似度计算模块采用所述第二神经网络模型计算目标代码向量与源代码向量的相似度。
8.根据权利要求5所述的基于中间表达的二进制代码开源成分识别系统,其特征在于,所述源代码向量的维度大于或等于1024。
9.一种基于中间表达的二进制代码开源成分识别系统,其特征在于,包括:
一个或多个处理器;
存储器;
以及一个或多个程序,其中一个或多个程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,所述程序包括用于执行如权利要求1至4任一项所述的基于中间表达的二进制代码开源成分识别方法的指令。
10.一种计算机可读存储介质,其特征在于,包括计算机程序,所述计算机程序可被处理器执行以完成如权利要求1至4任一项所述的基于中间表达的二进制代码开源成分识别方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳开源互联网安全技术有限公司;中国科学院软件研究所,未经深圳开源互联网安全技术有限公司;中国科学院软件研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310301816.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种转轴装置及电子设备
- 下一篇:雾化模组及其雾化装置





