迅维网

安全认证闪存:提供闪存芯片之安全认证功能

晨洋宝贝 2017-9-30 10:05


  随着物联网的兴起,愈来愈多的新兴使用开始竞相崭露头角,例如:人工智能、车联网、以及愈来愈聪明的日常用品。为了因应整个新兴产业链〈包含品牌厂商、代工厂商(ODM)、方案规划公司、甚至是终端产品和客户〉对安全性的要求,现在主要的主芯片〈包含SoC系统单芯片、微控制器、微处理器、ASIC特殊使用积体电路〉规划公司,大多已整合了硬体的加密引擎、乱数产生器 (RNG) 、以及安全〈但有限〉的储存器储存空间在主芯片上。

  尽管如此,多数的系统仍必须将开机程序码、固件、操作系统、使用程序代码、各项参数设定或运用者资讯等资料存在外部的闪存中,而现有的闪存皆运用几乎兼容的指令、接脚和封装,使得所有存在闪存中的资料,几乎没有门槛就能轻易地被复制而运用,导致产业链中各个环节都有可能被骇客攻击而造成财务、商誉、隐私等损失。

  本文将详述安全认证闪存的独特点和安全性,以及如何与授权的主控制器配对,而加强闪存在系统上的安全性

  现有方案的安全疑虑

  有关外部闪存的储存,我们可以从两种状态来思考,一是静态资料储存于储存器中,另一是从外部闪存到主芯片的资料传输过程。

  以最基本的防止产品或商标被盗用或复制为例,储存于外部闪存的使用程序代码在现行方案下,可以轻易的被复制、运用。若有心人士想要盗版某智能家居的空调自动温度调节器,只要对自动温度调节器的主机板进行拆解分析,就能精确识别所有标准化的零组件,进而正确而几乎毫无门槛或困难地复制主机板的所有配置,包含存在闪存里的使用程序代码等。

  有鉴于此,为了保护闪存里的使用程序代码不被直接复制运用,最常用的方式,就是利用闪存内的唯一识别码 (Unique IDentifier,UID)。然而,UID事实上却只是个微不够道的屏障,任何具备基础安全知识的工程师,都能根据闪存的规格书轻易找到UID,并解除了主芯片与闪存之间透过UID的信任配对。一旦配对被解除,所有信任根源就瓦解了,闪存里的使用程序代码又可以轻易的被复制运用,上述的自动温度调节器也又回到了完全没有保护的状态。

  上述所利用的安全系统弱点,在于所用的唯一识别码UID的独特点,不但永久不会改变,且为公开的明文,一旦从储存器中读出,即可删除配对或直接复制此UID,而使非授权的系统可以正常运作。

  上述仅以保护规划、商标、或是方案公司授权金为例。其实在物联网的系统中,安全性所受到的威胁远远超过产品本身的仿冒,更严重的有可能是既有产品遭到恶意程序的植入和窜改,而使得原本的系统失去控制权,甚至被入侵后所发动的攻击,有可能间接影响该产品或公司的商誉。

  既然如此,如何提升外部闪存的安全性,提升其被复制、窜改、甚至非法存取的困难度而提供比较安全的外部储存环境呢?

  华邦的搞定方案: 安全密钥储存及动态一次性认证密码

  为防止产品或商标被盗用或复制、以及搞定外部闪存透过网路被恶意程序植入和窜改的安全问题,华邦的安全认证闪存 (Authentication Flash) 提供特殊的密钥储存空间,以及透过单向性计数器 (Monotonic Counter) 和HMAC SHA-256 的算法所产生的一次性密钥,来克服UID 永久不变的明码的弱点,提升系统对于外接快产储存器资料储存、身分识别的安全性。

  华邦的安全认证闪存 (Authentication Flash)

  华邦电子生产各种串行式NOR型及NAND型闪存,并以此闻名,是世界顶级的串行式闪存制造与供应商,光在2016年就出货了超过21亿颗SpiFlash 串行式闪存芯片,全球市占率约为30%。身为串行式闪存领导者,华邦电子努力搞定闪存可能会面临到的安全疑虑,因此我们推出了W74M系列安全认证闪存 (Authentication Flash)。透过对称性加密,也就是让主芯片和储存器共享一个相同的「根钥 (Root Key)」做绑定(Binding)。


安全认证闪存:提供闪存芯片之安全认证功能

图一 : W74M多芯片封装架构

  一旦根钥经过绑定,便绝不会在主机(认证者)和储存器(被认证者)之间直接传输,W74M 上的根钥特殊储存空间被设定为一次性写入(OTP),以防止被覆写,此外,根钥一旦写入,就再也读不出来 (没有读取的指令,即便原厂也没有办法读出已写入的根钥)。

  而安全认证的流程,则是由根钥和随机数经杂凑函数SHA-256产生讯息鉴别码HMAC Key(Hash-based Message Authentication Code,HMAC),再将HMAC key 和单向性计数器 (Monotonic Counter) 通过HMAC SHA-256加密算法产生永远不会重复的一次性密钥 (One Time Password)。这个一次性认证用的密钥A,需挂载于主芯片发给W74M储存器的指令中。另一方面,W74M储存器也以相同动作产生的密钥B,并比对密钥A与密钥B,若相同则W74M才继续正常执行主芯片下的指令。

  SHA-256为256位的安全杂凑算法(Secure Hash Algorithm),由美国国家标准技术研究所 (National Institute of Standards and Technology,NIST) 作为联邦资料处理标准 (Federal Information Processing Standard,FIPS) 发布的加密散列函数。此加密函数亦被用于处理金融交易,在实务中通常被视为无法pojie的加密函数。

  由于HMAC有一部分是由随机数生成,因此HMAC每次生成的数值皆不一样。前面所提到的攻击模式,可以成功读取传统固定的UID,却无法对W74M进行攻击 (根钥是读不出来的)。而且由于SHA-256非常安全,实际上攻击者不可能透过解密HMAC找出根钥,因此这种方式可说是零风险。

  图一显示了W74M两个重要的特点。第一,非挥发性的单向性计数器加强了储存器安全认证的强度。当根钥完成初始化时,计数器便依据主芯片的指令从零开始逐一增加,无法重设或归零。此计数器具有只限于储存器和主芯片才知道的唯一值。如果双方的计数器值不相等,储存器的HMAC数值就不会与主芯片计算值相同,这时W74M认证设备会将遭篡改的信号回报系统。

  主芯片也可以运用上述安全认证原理,防止攻击者篡改存在闪存中的固件,借此保护主机系统免于遭受恶意软体的入侵。此外,也可防止攻击者运用储存不一样固件或是使用程序代码的W74M芯片取代正版安装在主机板上的W74M芯片,而达到防止产品直接被复制运用的风险。

  图一所示W74M另一个重要的特点是每个W74M芯片中有四组根钥、HMAC Key、单向性计数器的组合,其中任何一组可用于对主芯片的认证,而另外三组则可用于认证不一样阶层的物件。

  每个认证通道皆能安全地储存一组独立的根钥,对应所要认证的物件。换言之,每一个W74M都可以分别跟主机设备、网际网路闸道器、云端服务绑定不一样的根钥,且皆保持奥秘,任何一台设备都不会知道另一台设备之根钥。

  这种多层认证能力可以实现另一个用途,那就是用一颗W74M芯片认证4个不一样组件的合法性,例如下列无人机的复杂系统:

  无人机之主要处理器
  可拆卸电池模组
  遥控器
  相机模组

  安全、加密的验证,使无人机制造商能确保品牌相机及原厂电池的限定运用,并防止未经授权的遥控器劫持飞行中无人机的可能性。

  华邦的安全认证闪存 (Authentication Flash) 的导入

  如上所述,W74M提供四组非常严谨的安全认证功能,且根钥储存于外部设备无法读取的一次性可编程记忆空间内。然而,W74M安全认证的实施和导入还需要系统的安全配置,才能确保从生产到成品的制造流程中,每组W74M和主芯片或其他阶层对象内的根钥为各阶层专属的奥秘。虽然华邦电子可以提供W74M的根钥预烧录,但是绝大部份仍是由客户端依据W74M客制化的根钥配置在既有的生产流程中导入根钥的绑定。

  W74M系列安全认证闪存芯片,提供32Mb至1Gb之间各种容量,并采用标准封装。这意味着W74M可直接运用在现在标准闪存的PCB脚位,减少物料成本及组件数的同时,提供最安全的认证级别。

  W74M也可使用于不需闪存的多层物件认证,(产品型号W74M00AVSSIG及 W74M00AVSNIG)。


雷人

握手

鲜花

鸡蛋

路过
收藏
来自: 今日头条

最新评论

发表评论

登录 后可参与评论
关闭

站长提醒 上一条 /1 下一条

返回顶部
附近
店铺
微信扫码查看附近店铺
维修
报价
扫码查看手机版报价
信号元
件查询
点位图


芯片搜索