欢迎来到天天文库
浏览记录
ID:42718550
大小:1.74 MB
页数:33页
时间:2019-09-21
《软件保护技术-加密狗》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、01什么是软件保护软件保护(SoftwareProtection)保障开发商软件发布及使用安全的方法和过程的总和。它包括软件加密过程、许可证或者安全硬件的初始化及发布过程和加密软件运行过程等部分。属于安全范畴中内容保护的一个分支。2软件保护的意义为什么要给软件加密盗版§什么是盗版§怎么盗版盗版的危害§减少收入§降低信誉§增加负担如何防止盗版3软件保护技术分类Ø使用序列号保护Ø使用许可证保护Ø使用安全硬件保护4硬件狗加密的基本原理•开发商程序通过调用硬件狗的接口模块对硬件狗操作,硬件狗响应该操作并通过
2、接口模块将相应数据返回给开发商的应用程序。开发商的应用程序可以对返回值进行判定并采取相应的动作。简要示意如下:5硬件狗加密的基本方式ØAPI方式§各种语言接口ØShell方式§外壳加密§同时支持加密重要代码、数字常量、字符串6应用程序的结构解密工作主要集中在应用程序这层或者应用程序与动应用程序态库之间应用程序动态库迷宫技术、OBJDLL反跟踪技术加密传输等保证驱动程驱动程序驱动程序序无法模拟数据交换随机加密锁加密锁噪声技术、硬件制造绑定工艺等保证硬件无法复制7破解软件的五大招数§判断软件是否加壳,使
3、用相关工具脱壳。§对软件进行静态分析§对软件进行动态调试,查找加密点§对各个加密点进行破解§修改文件或制作补丁软件8优秀软件保护产品的特征§有效防止静态反编译(花指令,系统调用以及敏感信息的隐藏)§有效防止动态跟踪(采用关键代码隐藏的迷宫技术)§有效防止模块替换(动态交互认证技术)§有效防止模块被暴力破解(模块间交叉进行完整性校验)§有效侦测黑客软件§对可执行程序加壳(执行文件的代码段加密,对执行文件采用高强度的压缩算法)9SafeNet特有的加密技术§许可证管理技术§拥有灵活的许可证管理和发放机制
4、,软件开发商可以完全、灵活、有效、数字化的控制用户使用软件的方式,包括使用时间、次数以及模块等。同时开发商可以方便、快捷的进行许可证的远程升级。§硬件虚拟机§具有自主产权的硬件虚拟机,使得自定义算法可以在加密狗硬件内解释、执行。§数据交换随机噪声技术§独有的随机噪声技术,有效地对抗逻辑分析仪的分析及各种调试工具的攻击。10SafeNet特有的加密技术迷宫技术在程序入口和出口之间包含大量判断跳转干扰,动态改变执行次序,提升抗跟踪能力。AS技术内嵌式加密(API)与外壳加密(SHELL)相结合的方式,能
5、够到达极高的加密强度,即使外壳被破坏,被保护的程序仍然不能正常运行。11软件加密中的九个陷阱陷阱一:访问判断提示dwRet=CheckDog();//访问狗if(dwRet!=0)//做判断访问狗之后不要立即做判断,判断狗不正确后,不要立即提{示,或者不提示。MessageBox(…);//提示用户ExitProcess(0);//退出程序}else{正常运行}12软件加密中的九个陷阱改写为:dwRet=CheckDog();//访问狗//加入其它代码if(dwRet!=0)//做判断{//加入
6、其它代码MessageBox(…);//提示用户ExitProcess(0);//退出程序}else{正常运行}13软件加密中的九个陷阱陷阱二:存放明文字符串程序中要使用字符串“GrandDog”,重要的字符串不要在程序中以利用某一算法,明文出现,应该使用算法动态生成。“GrandDog”“HsboeEph”在程序运行过程中,应用事例:保护数据库中的数据“HsboeEph”“GrandDog”在不影响程序效率的前提下,可以动态生成再使用。使用自己的算法,写入数据库之前,关于算法,在网上有各种语言
7、编写把数据加密,使用数据时,把数据的各种算法,有的可以稍加改动,从数据库读出,解密后再使用。使之成为自己的算法,这样可以有效地提高加密强度。14软件加密中的九个陷阱陷阱三:读字符串、数据比较读狗获得字符串,数字比较X读狗获得字符串,数字运算√读狗获得字符串,数字加解密比较√15软件加密中的九个陷阱宏狗里提供了加解密函数可以使用HRESULTRC_EncryptData();HRESULTRC_DecryptData();数据加解密。目前只对16字节的数据进行加解密。加解密算法采用标准
8、AES算法Rijndael.16软件加密中的九个陷阱陷阱四:封装API把访问狗的API函数封装为一个函数,里面用了很多技巧,在程序中多次调用这个函数查狗,结果是,如果这一个函数被破解,不管程序中有多少调用这个函数查狗的加密点,都不会起作用.解决办法在不影响程序效率的情况下,尽量多写一些查狗的函数,彼此要有区别,使用不同的算法,多一些查狗出错的标志,让这些标志参与运算,在不同的模块中,使用不同的查狗函数。17软件加密中的九个陷阱陷阱五:试用版正式版统一随着网络的发展,开
此文档下载收益归作者所有