查看: 5261|回复: 13

软件加密方案简介

[复制链接]
发表于 2016-9-29 13:32:35 | 显示全部楼层 |阅读模式
关键词: 加密锁 , 加密狗
做为软件开发者,研究好软件加密的确很重要,不过也很有必要多了解一些关于加密狗(加密锁)解密和破解的知识,加密和破解就像矛和盾一样,对于解密知识了解的越多,那么编写的加密代码就越好,要知道加密永远都比解密要容易的多,只有知己知彼,方能百战百胜。   
以下就针对使用加密狗进行硬件保护谈谈几点心得:   
针对于使用加密狗的解密有什么方法?   
1、硬件复制
  复制硬件,即解密者复制Sentinel Superpro相同的加密锁。  
2、监听   
目前加密狗的解密破解工作主要集中在应用程序与加密动态库之间的通讯拦截。这种方法成本较低,也易于实现,对待以单片机等芯片为核心的加密狗具有不错的解密效果。   
3、 DEBUG   
解密者DEBUG等反编译程序,修改程序源代码或跳过查询比较。应用程序也就被解密了。   
对于Debug调试破解,由于软件的复杂度越来越高,编译器产生的代码也越来越多,通过反汇编等方法跟踪调试破解的复杂度已经变得越来越高,破解成本也越来越高,目前已经很少有人愿意花费大量精力进行如此复杂的破解,除非被破解的软件具有极高的价值。
对于以上的几种解密方法加密者可以考虑使用以下几种加密策略:
1.在选择加密狗的时候要选择硬件安全复制难度大的加密产品。使用可移植算法加密狗,可以把自己软件中一部分算法和代码移植到加密狗中运行,后者给用户提供二次开发环境,软件开发商可在上面做很多工作,完成自己的二次加密。实现了算法级加密,而不是从前的点级加密。与其他加密狗不同(一般内嵌加密的做法是:为客户提供一个加密模块供加密调用),这样,最终生成的程序是和客户自己的程序融为一体,不存在专门的加密模块,破译者也无从下手。
图片1.jpg

2.加密狗特有的文件完整性检测专门用于反跟踪、反破译。加密锁一旦检测到客户程序的校验码有变,则自动终止程序,保护软件,防止文件被非法篡改、分析。此功能将使得任何对开发商软件的解密企图都被识破。
3. 可移植加密狗均为高强度设计,相当于主机之外另有一台专职加密的小主机,内置CPU,加密算法的实现在锁内独立完成,不在主机CPU中,以便防止任何跟踪、解密,也减少CPU资源占用,不影响软件运行速度。整个过程中加密锁与计算机之间通讯均做加密处理,防止任何端口截获。
现在的解密技术排除法律和道德因素,就从学术角度来说是门科学。它与加密技术一样是相辅相成不断提高。我们的目标就是让加密技术在大部分时间内保持对解密技术优势,不断研究新型加密方法,使解密技术、时间、资源成本超出被保护软件的研制成本和实用时效,从而在实际意义上保护软件在其生存周期内不被盗版。希望以上的分析及应对策略能给读者些参考性建议。

发表于 2016-10-9 20:54:19 | 显示全部楼层
硬件复制,这个听起来好高深啊。具体指的是什么呢?
发表于 2016-10-10 09:28:19 | 显示全部楼层
硬件复制,指破解者分析出芯片电路以及芯片里写的内容后,就可以立刻复制或克隆一个完全相同的加密狗。
发表于 2016-10-10 19:19:25 | 显示全部楼层
wang0327 发表于 2016-10-10 09:28
硬件复制,指破解者分析出芯片电路以及芯片里写的内容后,就可以立刻复制或克隆一个完全相同的加密狗。

哦,那岂不是不论是什么样的加密狗都可以被硬件复制吗?
发表于 2016-10-10 19:39:46 | 显示全部楼层
现在很多的加密狗使用的是安全性很好的智能卡芯片,通常很难进行复制,因此这种硬件克隆的解密方法用处越来越少。
发表于 2016-10-11 19:25:14 | 显示全部楼层
Debuy方式呢?
发表于 2016-10-13 07:50:34 | 显示全部楼层
对于Debug调试破解,就像楼主说的一样,现在除非被破解的软件具有极高的价值。应为工作量太大了。
发表于 2016-10-17 10:01:07 | 显示全部楼层
恩,是的。目前加密锁的解密破解工作主要集中在应用程序与加密动态库之间的通讯拦截。
发表于 2016-10-18 08:49:44 | 显示全部楼层
博主提出的移植这种思路,我觉得挺好的,之前没有接触过,有没有用过的人?
发表于 2016-10-18 13:39:06 | 显示全部楼层
其实本文已经写的很清楚了,基本上用法思路就是他讲的这些,其实最主要的一个就是思路,另外就是方案。熟悉点破解思路是有帮助的,你需要考虑的是怎样的移植是高效合理并安全性最高的。
 楼主| 发表于 2016-10-19 17:06:33 | 显示全部楼层
EC1018 发表于 2016-10-18 13:39
其实本文已经写的很清楚了,基本上用法思路就是他讲的这些,其实最主要的一个就是思路,另外就是方案。熟悉 ...
理解的很对
发表于 2016-10-19 17:08:59 | 显示全部楼层
EC1018 发表于 2016-10-18 13:39
其实本文已经写的很清楚了,基本上用法思路就是他讲的这些,其实最主要的一个就是思路,另外就是方案。熟悉 ...

听起来还是挺复杂的
发表于 2016-10-19 18:24:00 | 显示全部楼层
哈哈~楼上应该是真没有接触过这些,这个你有兴趣可以研究一下的,了解了就知道这其实是个比较灵活的东西,需要自己设计,不是规定的用法套用,所以在实际应对破解的时候还是很有优势的。
发表于 2016-10-20 10:31:14 | 显示全部楼层
Mr.Wang 发表于 2016-10-19 18:24
哈哈~楼上应该是真没有接触过这些,这个你有兴趣可以研究一下的,了解了就知道这其实是个比较灵活的东西,需 ...

这个不错,有机会我研究下这块
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表