对于工程师和创业者来说,最大的痛苦莫过于设计了一个非常好的产品,再投入市场以后发现,不到一个月甚至更短的时间就发现市场上有竞争对手拿出了一个跟他产品完全一样,包括设计、功能完全一样的产品,但是卖的价格比他低80%以上。对于工程师和创业者来讲这是一个非常大的打击。
市面上的安全类芯片种类繁多、AT88SC系列逻辑加密卡,DM2016、G7010/G7015,FS88x6系列芯片、LKT系列等等,开发者该如何选择呢?
鉴于本人的经验列举几种芯片的安全机制给看客们在选取过程中做些参考:
1、AT88SC系列逻辑加密卡
标准访问:对用户存储区的读写访问无任何限制;
口令访问:对用户存储区的读写访问需要口令验证;
认证访问:通过不同用户区所设定的口令检验才能访问用户数据区;
加密验证访问:须先经过认证,认证成功后以某个数据为密钥再次认证,再重复一次认证访问。
2、G7010/G7015
将MCU通过两安全密钥和制作商编号计算所得序号与芯片计算的序号相比较,每次密钥可不同。
3、FS88x6系列芯片
把系统中重要的数据或代码放在FS88x6中;系统CPU将ESW和Digest根据设定的要求分批的送入FS88x6,FS88x6将根据对应的算法以及预存的密钥,对送进来的代码进行计算校验并反馈认证结果,以达到保护系统的目的;3、在I2C/SPI总线上的数据,每次都是通过随机数加密的缺点是端口进行数据分析就容易被破解。
4、DM2016
将用户MCU加密计算的结果送给安全芯片,安全芯片再解密的结果送回MCU进行比较。
5、LKT安全芯片
安全等级:
LKT芯片以LKCOS智能操作系统为核心,基于智能卡芯片(智能卡芯片含有随机数发生器,硬件DES、3DES加密算法等,配合操作系统即片上OS,也称COS,可以达到金融级别的安全等级)平台,安全等级达到国际EAL4+。目前市场上的产品多数不到国内标准EAL4。
加密方式——自定义算法移植:
与市面上其他品牌的加密芯片不同,凌科芯安加密芯片可将嵌入式设备中部分程序移植到芯片内部,也就是将CPU或者是软件中的一部分程序移植到安全芯片中,没有此安全芯片cpu的程序不完整,存储和运行线路上无法跟踪,与嵌入式设备程序完美一体化,形成盗版商欲破程序,必须先破芯片的困局。
与此同时,LKT芯片内含全球唯一硬件ID,支持DES/3DES、AES等多种国际标准加解密算法,真随机数发生器,对于对比验证、线路防跟踪也起到了很好的作用。
硬件参数
LKT芯片存储空间32K-128K不等,工艺精度最高达到60nm,具有电压检测、频率检测模块和滤波器、脉冲传感器、温度传感器,当金属屏蔽防护层,探测到外部攻击后内部数据自毁,破解成本高昂,投入市场近十年无破解反馈。
其实避免山寨的事情发生也并不难,只需要在设计时,将加密认证芯片放在PCB板上,外加一些简单的电路,便可消除被盗版的隐患。上面几类芯片是市场上比较畅销的几款,当然如何选择加密芯片还要考虑产品市场情况,设计成本、板子的通讯模式等等,但为了自己做的产品的安全性和不被盗版造成损失,建议还是选择芯片加密等级高的芯片。往往有很多使用者最初因为成本的问题选择加密性能不是很强的加密芯片,最终被破解,又要重新考虑更换加密性能高的,原本为了降低成本,最后反而是得不偿失,既影响了公司品牌形象,又影响了产品的销量。诸如此类的事件已经屡见不鲜,盗版破解方面的日益猖獗,严重影响了产品开发商的利益,从技术角度保护开发商产品的知识产权已经越来越重要了,保护设计免受克隆或逆向工程的危害将成为首当其冲需要考虑的问题。