一种静态代码扫描方法、装置及计算机设备
2025-02-25 19:33
No.1344029561683451904
技术概要
PDF全文
本申请公开了一种静态代码扫描方法、装置及计算机设备,获取代码仓库首次扫描结果,并保存为第一规则文件;根据rule_info字段判断扫描规则是否发生变化;若未发生变化,则计算第二规则文件的md5值,并根据md5值和repo_id判断被扫描文件是否存在,若存在,则删除被扫描文件的扫描,若不存在,则保留被扫描文件的扫描,得到第二次扫描结果;若发生变化,则每个被扫描文件都需要重新扫描,并得到第二次扫描结果;将首次扫描结果与第二次扫描结果进行合并,得到第二次扫描的完整扫描结果。本申请提供的一种静态代码扫描方法、装置及计算机设备不仅极大的减少了资源消耗,且提升了扫描效率。
背景技术
静态代码扫描是一种自动化工具,用于分析源代码的质量和安全性。其原理是通过检查源代码的文本内容,基于AST语法分析或者正则匹配等技术,查找潜在的程序错误、安全漏洞和不良编程实践,而不需要实际运行代码。静态代码扫描器基于约定俗成的规则和模式来检测代码中的问题,帮助开发人员在早期发现和修复潜在的缺陷。 静态代码扫描中最常见的两个问题是:扫描慢和耗资源,造成这两个问题的原因是: (1)代码规模大:大型项目的代码量庞大,需要耗费更多时间扫描,代码量越大,扫描速度就越慢。 (2)代码较复杂:复杂的代码结构、嵌套条件以及循环等会增加扫描时间,导致耗费更多资源。 (3)扫描规则数量多:检测代码中潜在问题需要运行多个规则和算法来发现潜在的安全隐患、错误和不良实践,这些规则越多,扫描耗时越长。 (4)硬件环境差:扫描过程中硬件性能不佳会导致速度变慢,而需进行更复杂的代码分析会导致更多资源消耗。 (5)代码重复扫描:同一分代码多次提交扫描,造成扫描资源大量浪费。 目前,为了应对静态代码扫描过程中扫描速度慢和资源消耗高的问题,通常采用以下方法: (1)并行处理:用多线程或分布式计算等技术,将代码扫描任务分解成多个子任务并行处理,以提高扫描效率。但是,这样会额外增加很大的服务器资源成本。 (2)增量扫描:基于代码提交的差异文件进行扫描。但是,这种扫描方法的扫描场景有限。 综上可知,精简扫描规则、降低代码复杂性这些都是一些客观因素,无法真正的解决问题。
实现思路
阅读余下40%
技术概要为部分技术内容,查看PDF获取完整资料
该技术已申请专利,如用于商业用途,请联系技术所有人!
技术研发人员:
代静峰刘举林靖靖李彦成
技术所属: 深圳市奥思网络科技有限公司.
相关技术
一种服务开发方法、装置、设备及存储介质 一种服务开发方法、装置、设备及存储介质
一种高精度双层优化方法的神经网络搜索架构构建方法 一种高精度双层优化方法的神经网络搜索架构构建方法
跨总线域的设备对宿主机空间DMA访问方法及相关设备 跨总线域的设备对宿主机空间DMA访问方法及相关设备
一种客户信息定期维护方法及系统 一种客户信息定期维护方法及系统
代码发布方法、装置、计算机设备和可读存储介质 代码发布方法、装置、计算机设备和可读存储介质
一种基于统一管理平台的子应用数据获取方法及装置 一种基于统一管理平台的子应用数据获取方法及装置
利用深度学习的BIM模型错误自动检测系统 利用深度学习的BIM模型错误自动检测系统
一种基于智能反射面的室内T型走廊场景路径损耗的分析方法 一种基于智能反射面的室内T型走廊场景路径损耗的分析方法
模型评估任务处理方法及装置 模型评估任务处理方法及装置
基于大数据的异常信号智能识别方法 基于大数据的异常信号智能识别方法
技术分类
电信、广播电视和卫星传输服务 电信、广播电视和卫星传输服务
互联网软件服务 互联网软件服务
集成电路设计 集成电路设计
信息集成数字服务 信息集成数字服务
电气机械制造 电气机械制造
计算机、通信、电子设备制造 计算机、通信、电子设备制造
医药制造、生物基材料 医药制造、生物基材料
石油煤矿化学用品加工 石油煤矿化学用品加工
化学原料制品加工 化学原料制品加工
非金属矿物加工 非金属矿物加工
金属制品加工 金属制品加工
专用设备制造 专用设备制造
通用设备制造 通用设备制造
通用零部件制造 通用零部件制造
汽车制造业 汽车制造业
铁路、船舶、航天设备制造 铁路、船舶、航天设备制造
电力、热力生产和供应 电力、热力生产和供应
燃气生产和供应 燃气生产和供应
水生产和供应 水生产和供应
房屋建筑、土木工程 房屋建筑、土木工程
交通运输、仓储和邮政 交通运输、仓储和邮政
农、林、牧、渔业 农、林、牧、渔业
采矿业 采矿业
农副、食品加工 农副、食品加工
烟草、酒水加工 烟草、酒水加工
纺织皮具居家制品 纺织皮具居家制品
文教体娱加工 文教体娱加工
苏ICP备18062519号-5 © 2018-2025 【123技术园】 版权所有,并保留所有权利