《怎样策略使用加密狗进行加密.docx》由会员分享,可在线阅读,更多相关《怎样策略使用加密狗进行加密.docx(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、怎样策略使用加密狗进行加密怎样策略使用加密狗进行加密如今的解密技术排除法律和道德因素,就从学术角度来讲是门科学。它与加密技术一样是相辅相成不断提高。下面学习啦我采集针对加密狗加密的相关资料。针对于使用加密狗的解密有什么方法?1、硬件复制复制硬件,即解密者复制SentinelSuperpro一样的加密锁。由于加密锁采用了彩虹公司专用的ASIC芯片技术,因而复制该加密锁非常困难,且代价太大。2、监听解密者利用并口监听程序,进行解密,其工作机制是:监听程序,记录应用程序对并口发的查询串和加密锁发回的响应串。当移去加密锁时,假如程序再对并口发查询串确认身份时,监听程序返回所记录的响应串。程序以为加密锁
2、仍然在并口上,是合法用户继续运行,应用程序也就被解密了。3、打印机分享器将加密锁插在打印机分享器上,多台计算机共同使用打印机分享器上的一把加密锁。(后面简述对抗策略)4、DEBUG解密者DEBUG等反编译程序,修改程序源代码或跳过查询比拟。应用程序也就被解密了。对于以上的几种解密方法加密者能够考虑使用下面几种加密策略:1、针对上述监听和DEBUG问题解密方法,本人推荐充分利用加密狗开发商的API函数调用的加密策略:a、针对并口监听程序1)对加密锁进行算法查询?正确的查询响应验证用户生成大量查询响应对,如200对。在程序运行经过中对激活的加密算法单元随机的发送在200对之中的一对“345AB56
3、E“63749128。查询串“345AB56E,哪么算法单元返回的下确的响应串应该是“63749128,若是,则程序以为加密锁在并口上,是合法用户,继续运行,反之终止程序。?随机非激活算法验证我们对非激活的加密锁算法单元发随机生成的查询串,如:“7AB2341,非激活算法单元只要是有查询就会有响应串。因而返回响应串“7AB2341,在程序中判定响应串与查询串能否一样,假如一样,则证实我们的加密锁仍然在口上。继续运行程序。?随机激活算法验证假设监听程序了解了上面的机制。即对非激活的加密算法我们发什么查询串则返回一样的响应串。哪么我也有对策。对激活的加密算法单元发随机生成的查询串,如:“345AB
4、56E由于是激活算法响应串肯定与查询串肯定不等。所以假设返回响应串“7253ABCD,在程序中判定响应串与查询串能否不同,假如不同,则证实我们的加密锁仍然在并口上,继续运行程序。上面三种加密策略在程序同时使用,相符相承,互相补充。即便监听程序记录下来我们的部分查询响应。2)分时查询用户把查询响应对分组,如120对分为4组。每30对一组。头三个月使用第一组,第二个月三个月使用第二组以此类推,监听程序就算记录了头三个月。第二个月三个月以后程序仍然无法使用。可以以再生成100对“临时委员,每次运行随意抽出1对与以上分组结合使用。使记录程序在三个月内也无法记录完全。程序也无法使用。3)随机读写存储单元
5、为了防监听程序。我们的策略是:程序在启动时,我们利用随机函数随机生成的一个数,假设是“98768964。我们在指定的18#单元写入这个数。哪么我们在程序运行中,每调用一个功能程序前读取18#单元,数断定能否是我们写入的数“98768964。由于每次写入的数是随机生成的,所以监听程序记录不到当次启动时写入的随机数,它返回的数肯定是一个不匹配的数。我们就能够就此断定能否是合法用户。SentinelSuperpro加密锁能够重复写10万次以上。也就是讲天天写三次可以以使用一百年。2、针对打印分享器的加密策略为了防打印分享器。我们的策略是:程序在启动时,我们利用随机函数随要生成的一个数,假设是“776
6、2523A。我们在指定的34#单元写入这个数。哪么在程序运行中,每调用一个功能程序前读取34#单元,以断定能否是我们写入的数“7762523A。以此断定能否是合法用户。由于每次写入的数随机生成的,同时使用打印分享器的其他非法用户的程序一进入也会写入一个不同的随机数。那么第一个用户的程序在校验能否是第一个用户写入的数时,就会被以为是非法的用户。所以在一个阶段也只是一个程序使用。(例如RAINBOW公司开的SentinelSuperpro加密锁能够重复10万次以上。也就是讲天天写三次也就能够使用一百年。)3、针对DEBUG跟踪的加密锁的安全策略1)分散法针对DEBUG跟踪。在调用每个重要功能模块前
7、,我们建议要对加密锁进行查询,校验身份。假如只在程序开场部分校验身份,DEBUG跟踪程序部分能够轻易的跳过校验部分,而一些不良用户能够在验证后能够将加密锁拔下用在其它计算机。2)延时法针对某一详细查询校验,都有三步骤:?查询得到响应串?比拟响应串和查询串能否匹配?执行相应的步骤我们建议以上三个步骤要延时执行。最好鼗三步骤互相远离些,甚至放到不同的子程序或函数中。例如:我们执行“查询得到响应串后,相隔50执行“比拟响应串和查询串能否匹配。假设程序需要调用一个函数。哪么我们就在这个函数里执行“执行相应的步骤。这样程序更难于被。3)整体法将响应串作为程序中数据使用。例如:我们有返回值“87611123,而我们程序需要“123这个数。我们能够让“87611123减去“8761000得到“123。这样以来任何对加密程序的修改都会使程序紊乱。4)迷惑法一般情况下我们的程序执行相应的验证步骤。验证是非法用户就会退出。这样很容易被发当代码特征。我们知道是非法用户后继续执行一些无用的操作使程序紊乱。以迷惑解密者。
限制150内