首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 31 毫秒
1.
随着开源软件的广泛使用,代码溯源成为管理软件源代码、降低潜在风险的重要技术手段。基于代码克隆检测的大规模代码溯源分析,从其检测结果中鉴别代码克隆对之间的继承关系,对代码来源追踪、组件依赖关系分析、软件脆弱性分析以及代码缺陷修复等具有重要意义。目前,已有方法在原始代码片段存在微小修改的情况下,会产生许多误判,并且检测克隆对的效率也有待提高。针对上述问题,提出了代码溯源中克隆代码继承关系的判定方法CloneIRD,包括一个基于自研快速分布式克隆检测工具FastDCF的代码溯源分析框架,以及该框架的核心算法——基于代码演化信息的克隆代码继承关系判定算法EIHR。为验证框架和算法的有效性,首先设计并实现了CloneIRD方法,并在Linux内核V4.9和V4.12的开源代码上进行了实验。实验结果表明,CloneIRD方法能够有效判定代码溯源结果中克隆对的继承关系,且基于FastDCF的溯源分析框架能够胜任大规模代码的溯源分析任务。  相似文献   

2.
大型软件系统中的代码复制和修改现象可能导致程序缺陷的扩大以及无用代码的存在,克隆代码检测分析则有助于抽取可复用的软件组件和模式,在软件重构和软件演化中起重要的作用。在给出了一种基于子图同构进行克隆代码检测的方法基础上,加入依赖边类型约束求近似解的算法,以改善算法的时间复杂性。  相似文献   

3.
面向特征的领域分析及其在数据采集器领域中的研究   总被引:1,自引:0,他引:1  
自上而下地进行领域分析,建立领域模型,通过领域设计建立面向特定领域的软件构架,是更有效、更具意义的软件复用途径。美国卡尼基梅隆大学软件工程研究所提出的面向特征的领域分析方法FODA(Feature-Oriented Domain Analysis)主要针对特定领域进行共性和个性的研究,抽取领域模型,并建立适合于领域复用的软件构架。本文在详细研究货物流通领域,如物流配送、仓库管理、销售管理系统的基础上,运用面向特征的领域分析方法,并在分析过程中引入了加以扩展的用例模型,分析其共性和变化性需求,提炼出数据采集器的领域模型,使系统具有良好的可扩充性、可复用性,极大地提高了设计软件系统的效率。  相似文献   

4.
在现有的软件水印工作中,水印通常与载体程序间不存在逻辑上的关联性,因此,攻击者可在载体程序正常运行的情况下移除水印代码,继而非法获得软件的所有权。为有效解决这一问题,提出了一种基于自修改的动态耦合软件水印方法,该方法将水印的触发条件与载体程序的控制流进行结合,增强水印与载体程序的逻辑关联性,并引入自修改代码保护机制对水印触发条件、动态加解密和关联路径分支进行保护。该方法极大地提高了攻击水印的难度,显著增加了攻击者的计算开销。通过安全性分析表明,该方法能够有效抵御逆向工程和分析。  相似文献   

5.
 为了使软件组织通过软件过程复用快速而高效地建立软件过程模型,提出了一种软件过程复用的价值模型分析方法,在建立软件过程复用价值Petri网模型的基础上通过对模型中软件过程的执行时间和价值的分析来为软件过程的复用提供价值评估指导和决策支持.  相似文献   

6.
随着互联网产品规模的不断扩大,前端脚本代码规模大、重用性低、维护困难、扩展性差等问题不断涌现。为此,本文分析了目前主流的Web模板技术及各自的优缺点,并结合国内浏览器的兼容性,在Living template技术思想的基础上,提出一种基于数据驱动的动态Web模板技术方案(DWTT),它能有效提高前端开发效率和代码复用性,降低程序扩展和维护的复杂度。  相似文献   

7.
IP溯源能用来查找攻击流量的源头和路径,但迄今为止,还没有因特网规模的溯源方法被实际部署。该文提出了一种基于采样流的部署点自治域(AS)级日志记录类溯源方法SampleTrace。该方法利用路由器已存在的xFlow功能(sFlow、NetFlow和IPFIX)和边界网关协议(BGP)信息来实现溯源,并在因特网上建立覆盖网络以支持增量部署。该文从理论上分析了攻击流被成功溯源的概率与独立采样概率、攻击流所含攻击包数、被成功溯源的跳数3个因素的定量关系。根据Bernoulli大数定律,当使用SampleTrace对因特网中大量的攻击流进行溯源时,成功溯源的经验概率将接近于成功溯源的概率。SampleTrace较好地解决了日志记录类溯源方法的增量部署难题。  相似文献   

8.
在计算机应用程序的开发过程中,软件结构的前期设计对代码实现和后期维护、扩展和升级等工作的影响重大,直接影响软件的代码编写规模、可扩展性等。良好的结构设计能够缩小软件规模,提高代码的复用率。其中,总线式结构设计是维持软件可扩展性的一种方法。将软件按功能设计为不同的模块(插件),将这些模块组合在一起,通过总线管理各个模块协同工作。当软件需要扩展时,加入新模块或更新旧模块就可以实现。该文讲述的是基于总线式的结构设计方法,利用.NET框架中的反射(Reflection)机制对类型信息的描述能力,提出一种模块组合结构的优化方法,用来增强软件的可维护性,并保持对用户自定义数据结构的处理能力。  相似文献   

9.
代码注释是软件源代码的一个组成部分,其包含了有关软件源代码实现功能的底层信息,通常简要描述编程人员的假设和意图,是辅助相关软件开发人员理解软件源代码的有效方式。作为程序理解的一个延伸分支,代码注释在软件开发、维护、重构、复用及逆向工程等领域中更显得尤为重要。为了更好地使用代码注释,充分发挥其作用,有必要深入理解代码注释,从代码注释的发展规律和软件编程人员添加注释的目的两方面展开分析,探究代码注释与源代码的协同进化关系以及代码注释的不同用途,归纳总结源代码注释演化及分类,并对其相关方法进行剖析,通过整理总结,提出该研究领域目前存在的问题和未来方向。  相似文献   

10.
构件技术是软件复用的关键技术,构件测试是检测构件故障保证构件质量的重要手段。构件故障分为构件本身的故障和构件化软件集成时的故障,前者由于构件开发者熟悉源代码而易于测试和定位;后者由于软件复用者对构件的不清楚和集成的复杂性导致故障往往难以检测和发现,因此构件集成测试中的故障测试是目前研究的难点问题之一。构件集成测试离不开交互代码(粘贴代码),文中提出了一种面向粘贴代码的构件合约化测试方法。分析了基于粘贴代码的构件测试中的四种故障类型;针对这四种故障类型,依据合约的适应性,阐述了基于XML的粘贴代码合约的构造机理;并且给出了构件集成中基于合约检查的测试过程;最后以网络购物系统为应用实例,验证了该方法的有效性和实用性。该方法为捕捉错误,抛出异常信息,快速定位构件集成中的故障位置,准确发现故障原因提供了一种非常有效的途径。该方法的使用减少了构件集成测试中粘贴代码产生的冗余,提高了测试的灵活性,实现了高效的软件复用,缩短了软件开发周期,降低了开发成本。  相似文献   

11.
申玲 《科技信息》2009,(16):198-198
本文针对目前很多软件企业采用的基于代码行度量生产率的方法,分析其与现代软件产业商业模式的不适应性,没有统一的计算标准,依赖于程序设计语言及信息收集的不确定性等,从而得出使用代码行数进行涉及多种语言和生命周期活动的生产率研究存在一系列弊端的结论。  相似文献   

12.
静态分析方法可以自动地提取软件的行为信息,从而检测出软件中的安全漏洞。和其他程序分析方法相比,该方法具有自动化程度高和检测速度快的优点。本文介绍了Java语言的安全漏洞的故障模式,说明了类型推断、数据流分析和约束分析等主要静态分析方法及两种特别的分析方法,最后介绍了几种常用的静态代码安全检测工具。  相似文献   

13.
该文旨在基于白盒测试准则,提出能够在尽量复用测试资源、降低测试成本的前提下有效发现程序中错误的蜕变测试方法。任务关键软件的正确性是信息安全的重要组成部分,对其bug的测试至关重要,但Oracle问题经常制约到此类软件的测试。蜕变测试(MT)能够有效解决此类问题,但随机性较大。该文针对二元蜕变关系,提出了2种迭代的蜕变测试算法AESIST和AEMIST,在依据此2种方法的测试中,上一轮生成的测试用例可以作为下一轮的原始用例而生成新的测试用例,并且所有的测试用例满足蜕变关系全路径覆盖准则(APCEM)。实验结果表明:2种算法产生的测试用例能够在尽量少地运行程序的情况下有效发现程序中的错误。因此,本文提出的2种迭代蜕变测试算法在程序bug检测方面是高效的。  相似文献   

14.
黄均安 《科技资讯》2023,(20):17-21
该文对ROS系统进行了系统的分析,阐述了ROS系统的代码高复用性、高移植性、编程简易性等特点,设计了一种基于ROS系统的机器人臂系统。该系统利用Kinect视觉传感器和UR5机械臂的配合,在开源机器人操作系统的基础上添加设计功能包,确定了ROS中的通信方式和数据,给定系统的软件框架,构建成机械臂控制系统。系统通过节点、消息、主题等来实现数据通信,完成机械臂的控制功能和对物体的识别功能。在真实环境中验证,系统运行稳定可靠,各项性能指标能够满足技术要求。  相似文献   

15.
如今网络攻击活动越来越复杂,为更好地实现防御与溯源等目标,需对攻击代码进行深度分析。同时攻击影响也从桌面终端扩大到路由器、智能家居等物联网设备,新场景需要有轻量化和易部署的程序分析方法。为应对攻击活动分析新形势,提出一种系统内核驱动的轻量级二进制程序分析框架,通过合理利用操作系统实现机制对程序进行动态拦截,从而对目标程序进行细粒度动态分析。在此基础上结合内核特性提出一种优化的动态数据流分析方法,可进一步提升程序细粒度分析能力。通过采用基准程序和实际程序进行大量实验,验证了所提出方法的有效性和较好的分析性能,实验表明分析框架具有较好的可部署性和应用价值。  相似文献   

16.
自动化的恶意软件衍变分析已成为当前一项重要的网络安全研究工作。函数相似性检测在软件衍变分析过程中扮演着关键角色,但是大多数现有的方法难以有效处理跨架构的情况。随着越来越多跨架构恶意软件的出现,如何在代码跨架构情况下准确地进行函数相似性检测以及衍变分析变得更加紧迫。为此,提出了一种新的基于Weisfeiler-Lehman图同构测试的函数哈希方法WLHash,从而能够高效地进行跨架构软件之间的函数相似性检测和衍变分析。实验结果表明,所提方法能够较为准确且高效地检测跨架构软件之间的函数相似性,并进而获取它们之间的衍变关系,同时计算开销比较低,适用于大规模的跨架构恶意软件衍变分析。  相似文献   

17.
基于AOP的安全程序设计   总被引:2,自引:1,他引:1  
软件规模的不断扩大、结构的日益复杂,给软件代码的安全性提出了更高的要求.AOP作为一种全新的编程思想,从编程方法学的角度提供了一种安全程序设计的方法.利用AOP技术,可将程序中的安全代码抽象成为单独模块,并可灵活使用各种安全策略,然后通过联结将安全代码作用于所有相关核心组件,由此大大提高了安全模块的重用性和程序的安全性.文章介绍了AOP的核心思想,探讨了基于AOP安全程序设计的基本方法,最后通过对程序实例的比较,分析了AOP安全程序设计的特点.  相似文献   

18.
越来越多的网络服务运行在世界各地的数据中心服务器中,并利用数据中心之间的物理链路构建覆盖网络(overlay network),以充分利用数据中心之间链路的网络资源。为了实现高效地构建覆盖网络,以及灵活地调度覆盖网络中传输流量的目的,该文提出了一种基于OpenFlow协议的覆盖网络路由器软件(software overlay router,SOR)。首先,SOR构建在被广泛使用的开源软件Open vSwitch和OpenVPN基础上,既能满足快速部署的要求,又能降低软件的开发和维护成本;其次,SOR使用基于OpenFlow协议的有状态隧道间流量调度(traffic engineering of multi tunnels,TEOFMT)算法,通过维护一张TCP/UDP报文的四元组映射表,依据该映射表来修改报文,最终根据内核路由表将报文转发到相应的隧道中来实现灵活调度流量的目的。该文在中国教育网的数据中心之间搭建覆盖网络,并利用带宽测量工具iPerf和DVTS-SASM(digital video transport system-scalable application specific measurement)来测量覆盖网络的链路带宽,测量数据表明利用SOR来构建覆盖网络能够极大地提高网络链路资源的利用率。  相似文献   

19.
本文针对一种航天器地面仿真器控制系统采用的主程序和硬件定时中断服务程序结合实现实时性的机制.利用分层式有限状态机理论对主程序和中断程序各自内部的任务状态转换关系进行分析.利用Petri网理论对主程序和中断程序的并发性任务和资源共享状况进行分析.结合两种理论各自擅长的建模分析技术,高效、清晰、完整的表示出了控制流程,为软件工程化设计中详细设计和代码实现提供了准确的模型.系统的实际应用结果证明了上述方法的有效性.  相似文献   

20.
针对二进制程序文件处理漏洞的挖掘,目前业界主流自动化方案为基于文件变异的模糊测试,但该方法盲目性高、代码覆盖率低、效率低下。为研究具有高针对性的测试方法,该文讨论了一种新型的函数内存模糊测试技术。该技术利用动态污点分析的结果,获取目标程序中处理输入数据流的函数与指令。测试中基于二进制插桩,对上述函数构造循环执行结构,并针对内存中的污点数据进行变异。原型系统实验表明:该测试方法可有效用于栈溢出等漏洞类型的挖掘;相比传统模糊测试,消除了因数据盲目测试造成的执行路径中断瓶颈,且在执行效率上具有95%以上的提升。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号