市场上主流加密产品大体分两类:一种是以hapi和外壳加密相结合的(以hasp为代表),一种是以锁内编程的方式(象智能锁)。它们各有特点,锁内编程从原理上讲,硬件可靠并使用得当,则安全性较高,但它使用起来不易,需要加密技术人员具备较高的经验和编程技巧,还要选择合适的算法,这要考虑锁的支持情况和速度,对于硬件而言,关键是芯片,一般来说都是在市场上采购,这会有通用性或存在后门的问题,可能不具形式釜底抽薪地获取锁内代码,所以需要留意了解清楚;而hapi与外壳加密,hapi的灵活性很大,加密强度可大可小,主要看有多少个加密点并实现了多少种安全策略,这种方式的外壳加密特别重要,它能解决hapi加密做不到的事情,如反跟踪、反调试、反编译及百盒技术等,因外壳是针对编译出来的程序自动进行加密,无需软件开发商费劲,就能使安全达到一定的程度,问题是外壳加密工具本身的技术性强,这需要厂商有实力能够提供较强的外壳工具,在行业中,hasp的外壳是全球公认的,值得参考。
api加密技巧,上述提到api弹性较大的特点,要做好api,重要一环先要评估好,然后根据多少个加密点来实现基本安全策略,具体小的技巧而言:第yi个api调用,从人性化的角度出发,合理提示加密锁是否存在,后续所有的api函数调用建议无需提示,根据返回值做出合适的反应,譬如有锁正常运行,无锁进入试用版;api加密从简单到复杂要实现多种安全策略,迷惑黑客思维,如有的api调用,不用返回值,让其纳闷,一般调用api后,在合适的位置再利用返回值;将程序中重要的数据、参数、表头、用户信息等与加密锁紧密相连,没锁存在则会出现异常,例如桥梁测算软件,有锁则精度高,没锁则会有误差,让人感觉有点问题而不清楚出在哪里;利用加密锁内的算法,预先加密重要的数据信息,甚至还可通过产生随机数变异后加密,使用时一定要解密,存储时又加密,让重要的数据离不开加密锁;个性化加密策略,譬如让某个api每隔三月或半年才调用一次,让人感觉此函数无用处而难以破解。总之,api加密的安全策略形式上要多样化,让人无从下手。
选择一家经验多、服务支持到位的合作伙伴很有必要,尤其无加密产品使用经验者更加注意,使用加密初期,需要得到产品使用技巧和相关经验指导,以利于更好地发挥产品的作用,也切实符合自身的安全需求,以后要求更高时也能得到较好的支持和帮助,总的来说,一个好的加密产品,需要好的指导才行,选择一家经得起考验的合作伙伴长期受益。
深圳市海之博科技有限公司
0755 25636819