笔者本人也算是产品设计领域的老兵了,多个行业打过工,也自己搞过Design House,将近20年的从业经历。我们这个行业很多时候面临的最大威胁就是盗版抄板!一个产品投入很大代价很长周期开发出来,结果到了市场上不到3个月被人抄板了,投入成本都收不回,这对我们的打击是巨大的。
一、加密方案安全性分析
根据我多年的防盗版加密芯片的使用经验和理解,加密芯片的安全性主要取决于芯片硬件平台安全性、芯片内部固件(也有叫做操作系统)安全性以及加密方案安全性三个方面。由于芯片载体本身的安全性很难简单的去评测(下面我会针对具体厂家加密芯片在市场的表现来简单分析),而加密方案安全性很容易分析,所以下面我先把目前市面上常见的两种加密方案的优缺点做个介绍:
1、固定算法认证加密芯片(安全性相对比较低)
此类芯片一般采用标准通用算法例如SHA、DES、AES,在加密芯片中存放一段密钥。
其原理大致如下:
MCU和加密芯片两端在出厂阶段分别设置一条相同的认证密钥;
在运行阶段,MCU端和加密芯片端基于对称加密算法对同一组随机数加密后产生两组密文;
最后在MCU端进行比对,只有结果一致后,认证才能通过。
优点:因为算法固定,都是标准通用算法,认证加密方法都是公开的,开发相对简单,用户能快速开发量产。适合对安全性要求不高,但需要迅速将产品投放市场的客户。
缺点:相对安全性比较低。
这个方案无论加密芯片本身硬件有多高安全性、算法本身强度有多高,都无法解决它的明显安全弱点,加密芯片和主板MCU之间只是固定算法认证的弱关联,整个设备的关键程序不存在安全芯片中,虽然固定算法认证加密芯片本身可能会比较安全,里面的数据很难被破解分析出来。但整个设备系统的关键程序和数据都存放在安全短板MCU中。
通过对主板MCU的破解分析,可以相对容易的拿到重要程序,反汇编之后绕过MCU中的认证对比部分代码(屏蔽掉对比点),然后将程序重新下载到MCU中,当运行到认证环节时,不论加密芯片返回的结果是否正确,甚至MCU没有收到任何返回值(去掉加密芯片),MCU程序都能继续正常运行。所以单独采用这类方案的加密芯片,无论怎么宣传他加密芯片多么安全,无法破解,都无法解决MCU端的安全短板,因为盗版商不会找不自在,放开容易破解分析的通用MCU,专门去破解你加密芯片。
2、可编程算法移植类加密芯片(安全性相对比较高)
此类芯片一般都是采用安全性相对比较高的智能卡芯片或者专门设计的安全芯片(内部带有防破解保护技术的CPU ROM RAM FLASH等IP),开发商把MCU程序中的一部分关键代码摘出来(MCU将不再有这段代码),拿到加密芯片编程环境下编译后烧录到加密芯片中运行。其加密原理如下:

在应用阶段,当MCU端程序运行到这部分缺失的程序时,通过IIC、Uart等通信接口与加密芯片进行交互;
MCU发送指令调用加密芯片内部的程序,加密芯片运行完成后,将算法运算结果返回给MCU端,供其使用该运行结果。
优点:安全性高,可以不同产品或者版本移植不同关键代码,实现一个产品一个加密方法,MCU中的程序不完整,关键代码程序在加密芯片中运行,别人无法单纯的去破解MCU来完成整个破解。而安全性更强的加密芯片将成为破解的难点。此外加密芯片中移植的关键代码只有开发者自己知道,不公开,无法推测,破解难度很大,加密芯片和MCU形成强关联。
详细点说,上面提到MCU端是安全弱点,那么将其内部程序删除后,程序变得不完整,即使盗版商拿到了MCU这部分代码,也无法绕过认证对比点(因为不存在),这样可以引导其必须破解加密芯片中的算法。而加密芯片自身特点就是安全性极高,有各种软硬件防护措施,所以直接剖片等方法无法破解,而MCU与加密芯片交互数据时,线路上传输的内容都可以进行加密处理,所以线路攻击、重放等手段也将失效。最终破解者会因为无法获得MCU端完整程序而宣告破解失败。
缺点:开发难度较大,开发周期较长,对移植算法代码本身的安全强度有要求。
由于需要开发者自己考虑移植什么关键算法代码到加密芯片中,还要考虑移植的代码跟MCU中程序交互的调用安全性,对开发者来说有一定难度,需要费点心思考虑。另外还有不是随便什么程序都适合移植到加密芯片中,程序算法本身过于简单,交互数据有规律的就不太适合。这个方案的安全关键点其实就在于移植到加密芯片中那部分程序的安全强度。
二、加密芯片公司简评
根据我这些年用过的或者了解的加密芯片的产品做个简单介绍,为了有助于读者选择适合的产品,我就结合产品出品公司一起做个简单介绍,所有公司也是按照采用的加密方案来分成两大类,并按照公司成立时间来排序:
1、可编程算法移植类加密芯片公司
凌科芯安科技(北京)有限公司
注册资本:2000万
成立日期:2006-01-23
官网:www.bjlcs-tech.com.cn
主营产品:LKT和LCS系列嵌入式加密芯片(包括民用级,工业级和安全主控),软件加密锁,加密存储,蓝牙加密卡等。典型加密芯片例如LCS4110 \LKT4200HS\LKT4305GM\LKT4304\LKT4306\LKT4107M等。
公司及产品评价:这家公司是我最早合作过的加密芯片公司,也是从他那开始我第一次使用可编程算法移植加密方案的,产品全是加密芯片类或者相关的产品,各种加密芯片产品有几十种(性能、接口、内置算法、内核等区别),是一个专注从事嵌入加密芯片相关产品开发的公司。从他们产品介绍以及开发手册,他家出的加密芯片产品硬件平台都采用了很多EAL4+或EAL5+的安全防护技术,另外他们芯片中有该公司开发的安全固件(他们自己称作加密操作系统),产品线比较完善,产品升级换代比较快,开发资料开发套件也比较丰富。他们芯片基本都同时支持可编程算法移植和固定算法认证双方案。
由于他们产品出厂都带有自己的加密操作系统,所以开发的时候必须在他们的操作系统框架下开发,相对不够灵活,不过考虑到他们加密操作系统能够增强加密芯片的安全性,这点倒是也可以接受。
深圳市中巨伟业信息科技有限公司
注册资本:100万人民币
成立日期:2012-01-04
官网:http://www.sinormous.com/
主营产品:SMEC9系列加密芯片、手机测试卡、卡贴、智能卡、读写器、智能家居等。
公司及产品评价:由于我前面长期使用过凌科芯安公司的加密芯片,为了保证稳定供货,我考虑选择第二家供应商,在网上搜索,发现这家产品功能包括安全性介绍几乎跟凌科芯安的一样,这家公司成立时间也相对比较晚,产品线上看,加密芯片只有两款,其他基本都是智能卡、SIM卡和读写器相关的产品。感觉是更偏向智能卡操作系统、蓝牙模块相关开发。
他们公司加密芯片编程很灵活,基本相当于一个裸片单片机开发一样,给用户编程带来更大的自主灵活性。如果客户对底层固件安全保护技术不太了解的话,可能会产生错误处理机制问题及安全漏洞。由于产品线比较单一,加密芯片可选择余地不大。
2、固定算法认证加密芯片类公司
凌科芯安科技(北京)有限公司
这家公司的特点,上面已经介绍过了。在这里我在简单说一下。凌科芯安公司专注于嵌入式加密领域15年, 是国内加密芯片领域做的最久的一家公司,产品线很丰富,除了代码移植方式的加密芯片以外,还有认证方式的加密芯片,例如LCS2110、 LKT2100、 LKT2100D等。
深圳市原诚通科技有限公司
注册资本:100万人民币
成立日期:2010-06-03
官网:http://www.yct-tec.com/
主营产品:SD NAND、嵌入式存储、系统级封装和加密芯片CK235。
公司及产品评价:公司规模很小,主营业务主要是特殊SD NAND和各种嵌入式存储卡、提供SIP系统级封装设计加工,此外还有一款加密芯片CK235(他们公司内部产品型号WS222),是一款I2C接口通过DES算法比对认证的加密芯片。
深圳驰芯微电子有限公司
注册资本:500万人民币
成立日期:2010-10-22
官网:http://www.chip-wise.com/
主营产品:4款MCU和2款加密芯片(CW0881和CW2048)
公司及产品评价:公司主营业务主要是几款MCU和2款加密芯片,其中CW0881我测试过,这个芯片采用的是F1算法(实际上就是ATMEL的F1,一种非公开对称算法),他们的CW0881应该就是ATMEL88SC系列芯片改个名字。
上海动信微电子科技有限公司
注册资本:112万人民币
成立日期:2012-08-31
官网:http://www.chipsec.com/
主营产品:DX8系列加密芯片
公司及产品评价:公司主营业务主要是DX系列的6款芯片。其中DX81C04/82C04支持SHA1算法,DX88F01/88SC64支持ECC SHA1 3DES,DX90SM32/90SM08支持3DES。应用上就是智能卡行业的通常的加密认证方法,感觉就是把普通智能卡换了一个封装形式来用。
武汉瑞纳捷电子技术有限公司
注册资本:1700万人民币
成立日期:2015-01-30
官网:http://www.runjetic.com/
主营产品:加密芯片、安全芯片、MCU、NFC及驱动芯片
公司及产品评价:公司公司主营业务里面加密芯片和安全芯片是一部分,另外是MCU和NFC及驱动芯片。我这里谈谈他的加密芯片和安全芯片,他有RJGT101103两款加密芯片,都是采用RC4对称算法比证加密,这个安全性相对还是弱了些,目前市面上破解RC4算法也很成熟了。RJGT102采用SHA256算法,还有RJMU101/401/402三款芯片都是支持RSA\DES\AES\SHA和SM1\2\3\4国际和国密算法,采用标准智能卡操作系统(也有叫做cos),感觉用在防盗版加密芯片领域,芯片安全性够了,但加密方案太过于简单了,还是采用了固定算法认证方案。
深圳市艾矽科技有限公司
注册资本:100万人民币
成立日期:2016-03-27
官网:http://www.ictk-china.com/
主营产品:G1-IL005、G3-IOT、G30三款加密芯片,其中主推G1-IL005
公司及产品评价:这家公司算不上国产,他实际上是韩国ICTK公司,在国内的一个代理公司,其中主推的G1-IL005认证芯片采用SHA256算法做比对认证,G3-IOT应该是代理了国内某个安全芯片公司的带有国密算法的芯片支持AES\ECC\SHA和国密SM2\3\4算法采用认证加密方案,G30采用AES\ECC\SHA和国密SM2\3\4算法对视频数量进行加密。
三、总结
客户在选择加密芯片是一个综合评估的过程,要根据实际需求,比如安全性、成本、接口、封装、功耗、性能、产品成熟性、良率、供货能力、技术支持和售后服务等多个方面,来选择最适合自己的产品和方案。特别是公司的持续服务的能力非常重要,强烈建议用户在选择合作公司的时候,对公司的专业性以及售后服务能力要做重点的考察关注。另外加密和破解一直就是一个矛和盾的关系,盗版商一直致力于破解技术的升级,那加密芯片厂商也得具有不断升级和提升加密芯片安全性的实力和技术能力,这样才能面对未来层出不穷的破解技术。希望本文能给广大跟我一样的开发者在加密芯片选型上有点帮助。
本文分析了国产防盗版加密芯片的安全性,主要关注加密方案的安全性,包括固定算法认证加密芯片和可编程算法移植类加密芯片的优缺点。文章通过案例介绍了不同公司的产品,并强调了选择加密芯片时需综合考虑安全性、成本等因素。加密和破解是持续的斗争,建议用户关注厂商的技术升级和服务能力。
2万+

被折叠的 条评论
为什么被折叠?



