一、前言:
随着国内盗版破解方面的日益猖獗,严重影响了产品开发商的利益,从技术角度保护开发商产品的知识产权已经越来越重要了。
而市面上大批形形色色的加密芯片很多,到底哪些加密芯片才能起到加密保护作用呢?目前市面上主要流行几大类加密芯片:
第一种是逻辑加密芯片,这种芯片一般是由一个EEPROM加上外围逻辑电路,通过简单的ID号或者逻辑认证口令进行保护认证,这种芯片的特点就是便宜,开发也最简单,但破解难度最低,目前深圳华强北破解这种芯片基本可以做到立等可取,破解费用在150元到几百元不等,非常简单。这种芯片一般用于对盗版没什么压力,只是为了加一个保护的样子,或者基本没什么利润的产品。
第二种是带有固定算法,采用比对认证模式的加密芯片,这种芯片相对于上面那种芯片复杂点,但由于采用的是比对模式,就算线路上传送的是随机数或者被加密的随机认证码,但并没有能起到多高的保护作用,因为被保护的CPU中的程序是完整的,跟加密芯片直接只是存在着若干孤立的比对点,而当盗版商去破解这个系统的时候,不会去破解加密芯片,而是直接破解CPU获得全部的代码,然后跳过所有比对点。这样就完成了破解。这种固定算法比对模式的加密芯片开发相对也不是太难,只要按照说明书上的认证流程开发,当然盗版商也很喜欢这样的芯片,因为他的加密流程盗版商也很熟悉。目前市场前几年大卖的几款国内外加密芯片的破解成本已经非常低廉,破解方法都已经在破解圈被大家所熟悉。
第三种加密芯片是近几年兴起的采用高端(EAL5+)智能卡芯片内核,软硬件开发商可以把自己软件中一部分算法和代码下载到芯片中运行。用户采用标准C语言编写操作代码。在软件实际运行过程中,通过调用函数方式运行智能芯片内的程序段,并获得运行结果,并以此结果作为用户程序进一步运行的输入数据。加密芯片成了软件产品的一部分。而加密芯片中的程序是无法被读取或者拷贝的,从根本上杜绝了程序被破解的可能。这种产品无论硬件基础还是内部操作系统方案,都是现在最先进的,破解难度最大的。
二、智能卡加密芯片安全性
但并不是所有的以智能卡平台为基础的加密芯片都是最安全的,下面就市场近期最受关注的也是目前加密芯片领域最高性能安全性的,凌科芯安科技(北京)有限公司的双32位(EAL5+ 32位内核32位操作系统)LKT4200加密芯片的安全性做一个分析:
高端安全性智能卡芯片主要应用于银行等领域:比如信用卡、银行卡,目前欧洲的银行卡已经全面采用智能卡,国内已经定于2015年之前用智能卡全面取代目前的磁条卡。智能卡型的银行卡内部带有电子钱包、电子存折、可以存放现金脱机交易,所以对智能卡有极高甚至可以说是最高的安全性要求。此外还用在政府、公用事业、有线电视等领域的电子护照、身份证、条件接收卡等。
目前来说可能对智能卡芯片进行破解攻击的人主要来自3个领域。
1、各大专业检测、评价实验室
这类人员具备非常高的专业知识,拥有非常高级完善的分析设备,掌握各种芯片的内幕知识,对于这类人员来说对智能卡芯片进行破解攻击需要的具备的金钱与时间条件是:至少能够投入至少50万欧元,3个月到半年以上时间。当然这些是投入的基础,能否破解已经破解时间还要看实际情况。
2、有组织的犯罪集团
这类组织一般拥有大量的资金、比较高的技术、拥有比较好的装备、相对来说比较专业,他们可以投入的金钱和时间条件是:至少能够投入20万-100万欧元,几个月到几年以上的时间。
3、业余组织及学生科研活动
这类人员没有很高的技术,也基本没有什么专业分析设备,他有比较好的公共知识(或能了解一些公司的产品信息),这类人员搞破解那就是纯粹兴趣或者为了挑战什么技术,他们可以投入的金钱和时间条件是:能投入1-5000欧元,几个月还是N年,那只有天知道。
三、常见对LKT4200加密芯片的攻击手段
1、侵入式攻击
开封
蚀刻
显微镜
逆向工程
机械探测
聚焦离子束
2、半侵入性攻击
-单一故障攻击(SFI)
-静态/差分故障分析(SFA/DFA)
正常工作范围以外的
-复位
-时钟
-供电电压
-温度
-光扰动攻击
-灯闪烁
-干扰攻击
-电场和磁场感应
-辐射攻击
3、本地的非侵入性攻击
-简单的功率分析
-时序和波形攻击
-接触片上的电源走线(VCC,RST,I/O)
-电源由于电磁辐射的痕迹
-差分功耗分析
-多次测量
-代码的逆向工程
-攻击键
四、LKT4200加密芯片的防护措施
1、硬件防护措施
-传感器(电压,时钟,温度,光照)
-过滤器(防止尖峰/毛刺)
-独立的内部时钟(读者CLK)
-(SFI)的检测机制
-被动和主动盾牌
-胶合逻辑(难以逆转工程师电路)
-握手电路
-高密度多层技术
-具有金属屏蔽防护层,探测到外部攻击后内部数据自毁
-总线和内存加密
-虚拟地址(SW=硬件地址地址!)
-芯片防篡改设计,唯一序列号
-硬件错误检测
-真正的随机数发生器(RNG)
-噪音的产生(对边信道攻击)
-预硅功率分析
2、软件-操作系统防护措施
-内部数据不可读取、拷贝
-敏感信息进行加密(钥匙,别针)
-双重执行的(如加密解密核查)
-校验
-验证程序流
-不可预知的时序(如随机NOP)
-不能直接访问硬件平台,HAL(汇编),C
-防止缓冲区溢出
-防止错误的偏移。.
-防火墙机制
-异常计数器
-执行验证码
-归零的键和引脚
由于LKT4200加密芯片拥有EAL5+的高安全性,可以防护3-40种攻击措施,这里由于篇幅所限就不能一一举出,从而可以看出,目前LKT4200无论是硬件平台还是内部操作系统在防盗版加密芯片领域都处于最领先地位。