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

一种电力数据安全监测系统代码克隆检测方法和装置 

申请/专利权人:广东电网有限责任公司;广东电网有限责任公司信息中心

申请日:2024-03-25

公开(公告)日:2024-06-28

公开(公告)号:CN118260765A

主分类号:G06F21/57

分类号:G06F21/57;G06F21/52

优先权:

专利状态码:在审-公开

法律状态:2024.06.28#公开

摘要:本发明公开了一种电力数据安全监测系统代码克隆检测方法和装置,所述方法包括:根据分区索引机制,将待检测电力数据安全监测系统软件源代码进行分区,按分区搜索获取方法;基于方法大小的度量标准,筛选出可能的第一类型和第二类型克隆对;在剔除筛选的第一类型和第二类型克隆对之后,基于调用方法相似度度量标准,筛选出可能的第三类型克隆对;在剔除筛选出的上述三种克隆对之后,针对第四种克隆对,基于代码控制流和数据流分析获得代码语义表示;利用预先训练的深度学习模型进行分类,检测出语义级别克隆代码。本发明有效提高了电力数据安全监测系统研发过程中多版本迭代下的大规模代码克隆检测有效性,保障系统安全稳定运行。

主权项:1.一种电力数据安全监测系统代码克隆检测方法,其特征在于,包括以下步骤:消除不可能是克隆对的嵌入式代码后,根据分区索引机制,将待检测电力数据安全监测系统软件源代码进行分区,使得能够按分区索引搜索获取方法,所述分区索引机制包括:确定分区数量,基于代码方法的名称和版本确定分区键,利用哈希函数将分区键映射到特定的分区编号,将代码根据哈希函数分配到相应的分区,使得在对代码进行克隆检测时能够通过分区键定位到相应的分区,在不同的分区同时进行查找和访问方法;将不同分区中的方法的源代码行转换为一系列token,其中token为指定的关键字、标识符,基于方法大小的度量标准,筛选出可能的第一类型和第二类型克隆对,其中第一类型克隆对为代码片段完全相同的克隆对,第二类型克隆对为代码结构或代码语法构成相同的克隆对;在剔除筛选出的第一类型和第二类型克隆对之后,通过分区键定位到相应的分区,设置token滑动窗口,通过重叠相似度衡量两种方法token之间的相似度,根据该相似度筛选出可能的第三类型克隆对,第三类型克隆对为大小相同、执行类似操作、具有相似调用的方法克隆对;在剔除筛选出的第一类型、第二类型和第三类型克隆对之后,对于剩余的代码片段作,通过控制流捕获代码基本块和过程之间的依赖关系,通过数据流图捕获数据值沿程序路径和操作的流动,获得代码行为的语义表示;基于代码语义表示利用预先训练的深度学习模型进行分类,检测出第四类型克隆对,第四类型克隆对为语义级别克隆代码。

全文数据:

权利要求:

百度查询: 广东电网有限责任公司;广东电网有限责任公司信息中心 一种电力数据安全监测系统代码克隆检测方法和装置

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