首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 250 毫秒
1.
随着计算机技术突飞猛进的发展,人们对于支持计算机各种运行的软件技术开始逐步的关注,其中混淆技术在地址逆向工程和重组工程中占据了重要的位置,本文将主要阐述混淆技术的相关领域概念包括发展中不断推演的理论、算法和评估。然后在通过将理论和算法应用到混淆技术的两个分支类内混淆和类间混淆详细说明,结尾通过目前Java程序混淆技术的发展现状,进行对未来发展的客观估计、大胆假设以及深切的期望。  相似文献   

2.
代码混淆算法有效性评估   总被引:4,自引:1,他引:3  
代码混淆是一种能够有效增加攻击者逆向分析和攻击代价的软件保护技术.然而,混淆算法的有效性评价和验证是代码混淆研究中亟待解决的重要问题.目前,对代码混淆有效性的研究大都是基于软件复杂性度量的,然而代码混淆作为一种保护软件安全的技术,更需要从逆向攻击的角度进行评估.将面向逆向工程的思想引入到代码混淆算法评估中,通过理论证明和具体实验验证了其可行性,该评估方法能够为混淆算法提供有效证明,并对判别和选择代码混淆算法具有指导意义,同时也有助于寻求更有效的代码混淆方法.  相似文献   

3.
一种无线Ad Hoc网络动态混淆匿名算法   总被引:1,自引:0,他引:1  
无线Ad Hoc网络的特殊性决定了它要受到多种网络攻击的威胁,现有的加密和鉴别机制无法解决流量分析攻击.在比较了抗流量分析的匿名技术基础上,提出混淆技术可以满足无线Ad Hoc网络的匿名需求,但现有的混淆算法在Ad Hoc网络下却存在安全与效率的问题.提出了一种动态混淆的RM(pseudo-random mix)算法,该算法主要对混淆器的管理部分进行重新设计.RM算法根据混淆缓冲区的情况进行决策,当缓冲区未满时采用时延转发方式,缓冲区满后采用随机数转发方式,这样既保证了无线Ad Hoc节点的匿名性,同时又解决了停等算法的丢包现象.对RM算法的安全性和效率进行了分析,仿真结果与理论分析相一致,表明RM算法在无线Ad Hoc网络下具有较好的自适应性和实用价值.  相似文献   

4.
对代码混淆技术的运行框架和混淆算法性能的评价指标强度、弹性与开销作了介绍与分析。对主要的混淆算法,词法变换、控制流变换以及数据变换的原理及性能作了介绍,分析这三类算法的主要思想以及在性能上的优势与不足。最后对混淆算法的攻击方法进行介绍以及总结,并给出可能的研究方向及应用的前景。  相似文献   

5.
软件保护技术概述   总被引:3,自引:0,他引:3  
针对软件面临的威胁和软件的版权危机,介绍诸如注册验证、软件加密、软件水印、软件迷乱、软件防篡改以及软件加壳等软件保护技术的基本思想和发展现状,分析软件版权保护技术进一步的发展方向,为完善算法和深入研究奠定了基础.  相似文献   

6.
数字系统硬件/软件协同设计(C0design)技术   总被引:1,自引:0,他引:1  
硬件/软件协同设计(codesign)技术是应现代电子系统设计的需求而产生的一个新的技术研究领域.其研究和发展正在对现有的系统设计理念和设计方法产生变革性的影响.简要介绍了codesign 技术的由来和概况,并简要介绍了其中的主要技术问题和现有的一些算法.  相似文献   

7.
基础软件技术的发展趋势   总被引:1,自引:1,他引:0  
从分析基础软件的基本概念和特性出发,对基础软件的内容、需求、技术、产品等方面进行了系统论述。探讨了现有的主流开发技术及未来的发展趋势。通过分析现有部分国产软件系统在一些典型领域的应用,揭示我国基础软件发展的现状和难题,为现有国产基础软件产业的发展提供决策参考。  相似文献   

8.
一种基于混沌的软件水印算法框架及实现   总被引:4,自引:0,他引:4  
芦斌  罗向阳  刘粉林 《软件学报》2007,18(2):351-360
针对现有软件水印算法中存在的一些不足,将反逆向工程技术和混沌系统与Easter Egg软件水印的思想相结合,提出了一个基于混沌的软件水印算法框架.该框架通过引入混沌系统,把水印信息散列编码到整个代码当中,以保护全部代码;通过引入反逆向工程技术来抵抗逆向工程攻击,算法框架与软硬件平台无关.在i386体系结构Windows平台下实现了该算法框架,并以该实现为例分析了水印的鲁棒性,讨论了水印的嵌入对程序性能的影响.分析表明,该算法可以有效地抵抗各种语义保持变换攻击,对逆向工程攻击具有较好的抵抗性,鲁棒性较高.  相似文献   

9.
提出了一种基于四叉树K-均值聚类算法的软件故障预测算法.采用四叉树的目的包括利用四叉树寻找K-均值聚类算法所需要的聚类中心和利用四叉树来进行软件模块的故障预测.在这种算法中,输入门限参数决定了最初的聚类中心,通过改变门限参数,用户可以得到期望的聚类中心.采用了聚类收益这个新的标准来衡量算法的性能.通过仿真和比较,算法具有最高的聚类收益,且在大多数情况下,总体错误率比其他算法更低,从而表明了算法在软件故障预测中的有效性.  相似文献   

10.
测试时间和故障诊断能力是用来评价边界扫描测试生成算法优劣的两大关键要素,而影响测试向量集对所有故障进行准确定位的原因主要是由于存在两类问题:征兆误判问题和征兆混淆问题,而征兆误判问题对故障诊断准确性的影响更大。论文分析了测试向量生成中的征兆误判和征兆混淆现象,结合现有的测试向量生成算法,提出了三种消除征兆误判和征兆混淆现象的解决方法:(1)本身具有抗误判和抗混淆现象的测试生成算法;(2)采用自适应测试生成算法有针对性地消除征兆误判和混淆现象;(3)在测试生成算法中应用神经网络技术消除征兆误判和征兆混淆现象。  相似文献   

11.
通过反向工程可以较容易获得Java程序代码的设计类图,从而给保护软件知识产权带来困难。为此,采用Java接口融合的代码迷惑方法,提出一种保护Java程序设计类图的代码迷惑算法,并根据该算法构造一种Java接口融合迷惑器。实验结果表明,该算法具有较好的迷惑效果,有效地隐藏程序的设计类图,并且没有额外时间消耗和大量冗余代码。  相似文献   

12.
付剑晶 《计算机工程》2010,36(11):164-166,169
代码反编译和逆向工程使软件安全受到严重威胁。针对该问题,根据Java编译器(JAVAC)与Java虚拟机(JVM)的语法特征差异,提出一种基于JAVAC与JVM特征的代码保护方案。给出修改标识符名和中断赋值2种混淆技术,加大程序的复杂度,降低程序的可读性,阻止反编译和逆向工程的自动进行。安全性与性能分析结果表明,该方案可行、有效。  相似文献   

13.
针对现有代码混淆仅限于某一特定编程语言或某一平台,并不具有广泛性和通用性,以及控制流混淆和数据混淆会引入额外开销的问题,提出一种基于底层虚拟机(LLVM)的标识符混淆方法。该方法实现了4种标识符混淆算法,包括随机标识符算法、重载归纳算法、异常标识符算法以及高频词替换算法,同时结合这些算法,设计新的混合混淆算法。所提混淆方法首先在前端编译得到的中间文件中候选出符合混淆条件的函数名,然后使用具体的混淆算法对这些函数名进行处理,最后使用具体的编译后端将混淆后的文件转换为二进制文件。基于LLVM的标识符混淆方法适用于LLVM支持的语言,不影响程序正常功能,且针对不同的编程语言,时间开销在20%内,空间开销几乎无增加;同时程序的平均混淆比率在77.5%,且相较于单一的替换算法和重载算法,提出的混合标识符算法理论分析上可以提供更强的隐蔽性。实验结果表明,所提方法具有性能开销小、隐蔽性强、通用性广的特点。  相似文献   

14.
针对控制流混淆和数据混淆会引入额外开销的问题,提出4种标识符重命名算法,包括滥用标识符算法、重载无关联方法算法、非法标识符代替合法标识符算法以及重写静态方法算法,以这4种算法为核心技术构造Java混淆器JIRO,对JIRO的性能进行初步分析,结果表明,JIRO具有较好的混淆效果,不会引入额外的字节码执行开销。  相似文献   

15.
代码迷惑(保护程序的一种手段)通过增加程序的分析理解难度来阻止攻击者对代码进行有用的窜改。从攻击视角指出,盲目采用代码迷惑并不能有效增强程序安全性,而根据攻击模型,从多个角度综合运用各种码迷惑方法将能有效提高程序安全。随后建立攻击模型,将攻击描述为一个不断提取程序信息并据此分析具体语义,进而通过抽象和判断获取抽象语义的过程,并从攻击各层面出发引入相应的代码迷惑方法,进而保护代码安全。  相似文献   

16.
为了克服软件保护过程中代码混淆方法选择的偶然性和盲目性,针对代码混淆量化比较和评估困难的问题,提出一种基于多层次属性加权的代码混淆定量评估方法:从攻击者角度出发,采用静态和动态逆向分析手段对混淆前后程序进行分析,量化基于程序属性的评估指标。构建三级层次分析模型,运用专家评分法来比较程序属性之间的重要性,以确定属性权值。在程序属性指标量化值和权值的基础上,运用层次分析法对不同混淆方法进行评估。实验和分析表明,评估方法能够定量地对不同混淆算法的有效性进行比较。  相似文献   

17.
Experiment with control code obfuscation   总被引:1,自引:0,他引:1  
Control code obfuscation is intended to prevent malicious reverse engineering of software by masking the program control flow. The idea for further advancing the state of the art was presented in 2000 by WANG C. An obfuscating system for Java based on the ideas of WANG C is implemented and experimented. The experiment results show that obfuscation can be done efficiently with moderate increases in code size, execution times, while making the obfuscated code resilient to a variety of reverse engineering attacks.  相似文献   

18.
Modern obfuscation techniques are intended to discourage reverse engineering and malicious tampering of software programs. We study control-flow obfuscation, which works by modifying the control flow of the program to be obfuscated, and observe that it is difficult to evaluate the robustness of these obfuscation techniques. In this paper, we present a framework for quantitative analysis of control-flow obfuscating transformations. Our framework is based upon the control-flow graph of the program, and we show that many existing control-flow obfuscation techniques can be expressed as a sequence of basic transformations on these graphs. We also propose a new measure of the difficulty of reversing these obfuscated programs, and we show that our framework can be used to easily evaluate the space penalty due to the transformations.   相似文献   

19.
吕君可 《计算机系统应用》2011,20(7):233-235,220
从实用角度出发,结合实例,介绍了软件代码常见的几种分析技术;进而利用强名称、名称混淆、IL代码混淆、加壳等保护技术,逐步给代码加上防护层,以增强软件代码被反编译破解的难度,从而实现软件代码的保护。  相似文献   

20.
To protect valuable assets embedded in software against reverse-engineering attacks, software obfuscations aim at raising the apparent complexity of programs and at removing information that is useful for attackers. In this work, we propose to combine five transformations that obfuscate the type hierarchy of Java applications and eliminate much of the type information that can be inferred from the Java bytecode. We rely on some existing algorithms, present adaptations, and introduce new algorithms for some of the transformations, which are all made available in an open-source prototype implementation ready for take-up. We present an extensive experimental evaluation on benchmarks of real-world complexity, using complementary metrics that cover the protection strength against both human and tool-based reverse-engineering attack methods. The results indicate that the obfuscation is effective as well as much more efficient than the previous state of the art. For the first time, this makes these obfuscations practically viable in real-world deployment scenarios.  相似文献   

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

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