面向物联网IP核保护的轻量化认证

2019-11-08 08:21汪鹏君
西安电子科技大学学报 2019年5期
关键词:汉明状态机位数

陈 博,汪鹏君,李 刚

(1.宁波大学 信息科学与工程学院,浙江 宁波 315211;2.温州大学 数理与电子信息工程学院,浙江 温州 325035)

物联网(Internet of Things,IoT)作为新型信息技术的重要组成部分,是继个人计算机、互联网之后全球信息产业发展的第三次浪潮。当前物联网技术的高速发展,引起物联网设备和应用呈现出爆发式增长的趋势,正逐渐影响并改变着人们的生活和工作方式。各种物联网设备通过有线或无线网络与互联网融合,综合应用大量的传感器、智能处理终端、射频识别(Radio Frequency IDentification,RFID)系统等,处理着海量的信息,实现智能管理和控制。物联网应用已经深入到智能家庭、工业物联网、汽车通信、智慧城市、可穿戴设备和可穿戴健康管理等先进的领域。

物联网从技术角度可以划分为3个层次,即感知层、网络层和应用层[1]。在该体系中,数据存储安全、权限控制安全、数据传输安全和设备身份安全等是物联网信息安全的主要组成部分。物联网主要采用射频识别技术,由于其成本限制和功耗限制等轻量化属性前提,且射频识别标签和阅读器在功能和安全方面存在的一些缺陷,当这些设备与网络连接之后,安全和隐私将遭到重大考验。因此,必须采取有效的密码机制和安全机制来保护物联网应用中的信息安全。其中认证技术是物联网安全的核心和命脉[2],因为它不仅能完成用户身份管理与设备身份管理的关联,实现物联网中所有接入设备和人员的数字身份管理、授权、使用、责任追踪,而且可以保证传输消息的完整性。

在物联网设备设计环节中,随着芯片功能越来越复杂、规模越来越大和片上系统(System on Chip,SoC)技术的发展,各类集成电路知识产权(Intellectual Property,IP)核得到广泛应用。因此,越来越多的研究者着眼于面向物联网的IP核保护,且轻量化要求正成为研究的热点。从当前的技术层面上来讲,IP核的保护措施主要有水印技术、指纹技术、签名机制、密码算法加密和许可证协议等方式。由于物联网设备和应用的低功耗、微型化等特点,IP核保护逐渐开始采用物理不可克隆函数(Physical Unclonable Function,PUF)和有限状态机(Finite State Machine,FSM)结构[3],同时也出现了不少双向认证协议的算法[4-5]。

基于上述分析,笔者提出了一种新型的采用PUF-FSM结构的轻量化认证方案,以两种混合物理不可克隆函数为基础,以有限状态机为核心;不仅能够实现面向物联网IP核的认证,还可以针对IP核进行授权使用;同时可利用数字电路物理不可克隆函数结构本身的优势,进一步增强抗攻击的能力,且在硬件开销和功耗方面实现了轻量化的目标。

1 轻量化认证方案设计

1.1 系统整体框架

认证方案的设计用于面向物联网IP核保护的数字认证和权限设置,系统整体框架如图1所示。系统采用环形振荡器物理不可克隆函数[6]和蝴蝶物理不可克隆函数[7]混合结构,这是因为从信息技术进化的角度出发,物理不可克隆函数使用的优势,首先是自然地利用设备自身的一些特征可以减少很多额外的开销;其次是每个设备具有一个惟一身份,可以作为更高水平安全架构的信托锚来使用[8],而且混合物理不可克隆函数结构进一步增加了攻击的难度。物理不可克隆函数的响应作为有限状态机的输入,不仅完成对IP核的认证,还对IP核授权不同级别的使用权限。其中有限状态机是整个系统的核心,基本的认证方案采用三级有限状态机结构,状态转移图如图2所示。

图1 系统整体框架示意图

图2 三级结构有限状态机示意图

1.2 身份认证

在身份认证阶段,多路环形振荡器物理不可克隆函数的响应作为有限状态机第一级的输入,目的是根据每个芯片惟一的响应使状态机进入到与之对应的中间状态;只有当实际响应与期望响应相同时,才会进入正确的中间状态。认证码作为有限状态机第二级输入,只有惟一的合法认证码才能让状态机从某个中间状态进入到认证成功状态(Au状态)。显然,在身份认证阶段,环形振荡器物理不可克隆函数的响应与认证码之间需要一个明确的对应关系,将该对应关系标记为(Ri,Ki)。这种关系可以任意设计,但是只能由设计人员和认证机构掌握。对于一个N位的响应,输出有2N种可能,因此可以具有2N个中间状态。为了确保每一个中间状态都有一个认证码使状态机进入到认证成功状态,认证码的长度也应该是N位。如果需要增加认证码的数量,则可以通过增加认证码长度的方式,使多个认证码对应某一个中间状态。而且对不同的IP核,响应和认证码之间的对应关系可以不同,这样,从其他设备获得的认证记录就无法针对新设备认证成功。如果使用者使用了错误的认证码,则状态机进入认证失败状态(UAu状态),使电路锁定或者触发报警,提示系统受到攻击。

1.3 权限设置

当身份认证成功时,状态机进入认证成功状态,然后激发蝴蝶物理不可克隆函数产生响应作为有限状态机第三级的输入。由于单个蝴蝶物理不可克隆函数只能产生1 bit响应,因此需要从多个蝴蝶物理不可克隆函数中选择M比特,如图3所示。此时,输出有2M种可能,可以设置IP核具有2M种使用权限。同样,可以通过增加蝴蝶物理不可克隆函数响应的长度来增加相同使用权限的授权码数量。为了必要的安全问题,可以设置某些授权码无法使用IP核的任何功能,这样做的目的是让某些用户即使侥幸认证成功。但是在不知道授权码的情况下,仍然不能正常使用IP核。

图3 多路蝴蝶物理不可克隆函数结构示意图

图4 权限设置部分状态机示意图

具体举例说明如下。假设从多路蝴蝶物理不可克隆函数中选择3 bit的惟一响应作为有限状态机的第三级输入,使用的IP核是可以完成加减法运算的算术运算部件。不失一般性,权限设置部分的状态机示意图如图4所示。在Au1状态,授权只能使用IP核的加法功能;在Au2状态,授权只能使用IP核的减法功能;在Au3状态,可以设置使用IP核的次数;在Au4状态,可以设置在一定的时间范围内能够使用IP核的功能;其余授权码使状态机进入Au5状态,该状态无法使用IP核的任何功能。

1.4 错误纠正机制

图5 具有错误纠正功能的状态转换示意图

值得注意的是物理不可克隆函数的稳定性问题。稳定性用来测试物理不可克隆函数在多次重复测试中是否能够保持相同的输出。在理想情况下,针对同一物理不可克隆函数,在不同的环境中重复多次实验,同一激励信号对应输出的响应信息应该完全一致;但在实际环境中,因为温度和电压变化等诸多因素的影响,致使电路结构中时延发生改变,最终导致输出响应的改变。用汉明距离(Hamming Distance,HD)来表示物理不可克隆函数当前的实际响应与原始响应之间的差异,在容忍m比特错误的情况下,若汉明距离D≤m,则仍然能够认证成功。对于有限状态机数字认证部分的每一条状态转换路线,可以修正,如图5所示。同样地,权限设置部分的有限状态机可以类似地进行修正。

2 轻量化认证方案性能和分析

面向物联网IP核保护的轻量化认证成功地在Altera DE2板上实现。该开发板采用Cyclone Ⅳ系列现场可编程门阵列(Field Programmable Gate Array, FPGA),基于优化的60nm低功耗制程技术构建,在低功耗和低成本等方面具有较大的优势。Quartus Ⅱ开发环境用于软件编程和硬件设计,且提供了大量的IP核以供测试和使用。下面的实验数据都是在室温和芯片标准工作电压下测量得到的。

2.1 物理不可克隆函数的稳定性和惟一性

片内的稳定性是用来测试同一物理不可克隆函数在多次重复测试中是否能够保持相同的输出。在多次输入测试情况下,用片内平均汉明距离来表示物理不可克隆函数的稳定性[9],片内平均汉明距离的具体计算方法为

(1)

其中,D(Ri,Ri, x)表示原始响应信号Ri和第x次测试输出的响应信号Ri, x之间的汉明距离;r表示测试的总次数,n表示响应信号的比特位数。显然,片内平均汉明距离越小,代表在同一激励情况下,响应的差距越小,物理不可克隆函数越稳定。在室温环境下,在同一块现场可编程门阵列实验板上重复测试两种物理不可克隆函数各50次,稳定性结果如表1所示。从表1可以看出,在响应位数较小的情况下,存在偶然性的影响,稳定性较差;但是随着响应位数的增大,两种物理不可克隆函数均能够达到较好的稳定性。

物理不可克隆函数在具有稳定性的同时,还必须保证其惟一性,即不同的物理不可克隆函数,在同一激励情况下,应该具有不同的响应,而且响应之间必须具有足够的差异。在前面给出的平均汉明距离的基础上,两两比较响应之间的差异,用片间平均汉明距离来衡量不同芯片中的物理不可克隆函数的差异程度:

(2)

其中,D(Ri,Rj)表示两组物理不可克隆函数在相同激励下产生的响应信号Ri和Rj之间的汉明距离,r表示测试的总次数,n表示响应信号的比特位数。显然,用上式计算惟一性的期望值是50%。在20块现场可编程门阵列实验板上进行了测试,选取较为理想的数据,惟一性结果同样列于表1,数据表明惟一性能够达到较高的标准。

表1 物理不可克隆函数的稳定性和惟一性

2.2 轻量化属性

认证方案的复杂度取决于环形振荡器物理不可克隆函数和蝴蝶物理不可克隆函数响应的位数,因为响应位数决定了有限状态机中间状态的数量。以基本的认证电路,即每一个中间状态对应一个认证码,且不具有错误纠正功能的有限状态机进行测试;选择环形振荡器物理不可克隆函数响应的位数为典型值16,蝴蝶物理不可克隆函数响应的位数为典型值4。其中响应和认证码之间的对应关系随机设计,注意,不同的对应关系可能会导致硬件开销和功耗稍有不同,但是这些差异相对较小。

为了更好地对比该身份认证电路的性能,利用开发环境提供的大量不同的IP核,结合即插即用型身份认证电路,选取CIC滤波器、FIR滤波器、数控振荡器(NCO)和快速傅里叶变换(FFT)4种IP核,进一步展示其轻量化属性。原始的IP核和加入身份认证功能有限状态机的IP核的硬件开销和功耗情况对比如表2所示。从表2中可以看出,对不同的IP核,增加了身份认证功能,硬件开销增量的绝对值大致相同,但是对于本身较大的IP核,加入身份认证状态机之后硬件开销的相对增量非常小;且对比YU等[10]水印技术的平均硬件开销3.04%和HAGHIGHI等[11]认证技术的平均硬件开销3.34%,针对较大规模IP核时具有比较明显的优势。功耗稍有增加,符合轻量化要求。

表2 轻量化属性:有无身份认证功能的IP核硬件开销和功耗对比

3 安全性分析和讨论

面向物联网IP核保护的轻量化认证方案,利用环形振荡器物理不可克隆函数和蝴蝶物理不可克隆函数的响应进行认证和授权,其安全性在很大程度上取决于响应的随机性和稳定性,同时可能面临着各种各样的攻击方式,如暴力攻击、侵入式攻击和模型攻击等。

3.1 暴力攻击

暴力攻击的目的是为了获取正确的认证码和权限设置授权码。对于一个N位的物理不可克隆函数响应,有限状态机对应的中间状态共有2N个。为了获得与给定响应对应的正确认证码,暴力攻击需要尝试的平均次数为

(3)

即使认证成功,还需要为了获取使用权限设置授权码继续暴利攻击。显然,随着N的增大,这是不切实际的。

值得注意的是,具有错误纠正机制的有限状态机,在容忍m比特错误的条件下,会降低暴力攻击的难度,因为此时获得与给定响应对应的正确认证码的概率将增大。在容忍1 bit错误的情况下,暴力攻击一次成功的概率将从无错误容忍状态的1/2N增大到

(4)

而容忍m比特错误的情况下,暴力攻击一次成功的概率将增大到

(5)

图6 暴力攻击成功概率示意图

分别取N为8、16和32,m为1、2、3和4,暴力攻击一次成功的概率如图6所示。在响应位数较小的情况下,成功概率很高;但是随着响应位数的增加,成功概率急剧降低。因此在设计时需要合理平衡响应位数和容忍错误位数之间的关系。

3.2 侵入式攻击

目前很多嵌入式系统的秘钥和认证系统的认证码多以明文或者密文的形式保存于非易失性存储器中,因此会面临着侵入式攻击的风险[12]。笔者提出的轻量化认证方案,由环形振荡器物理不可克隆函数和蝴蝶物理不可克隆函数产生引起状态机状态转换的随机响应,该响应数据不需要存储在芯片中,而且在每次给定输入激励才能够产生;状态机根据身份认证码转换到认证成功状态,同样不需要将认证码存储在芯片中。这种方式有效地杜绝了攻击者对芯片的侵入式攻击。

3.3 模型攻击

面向物联网IP核保护的轻量化认证方案,采用PUF-FSM结构,最可能受到的攻击之一是在攻击者收集了大量物理不可克隆函数的激励响应对之后,预测给定激励得到的响应值,即试图在收集一定量的激励响应对之后,对物理不可克隆函数的响应进行行为建模。比如,基于延迟的物理不可克隆函数可以被看成为一个线性相加的延迟模型[13]。攻击者利用收集到的激励响应对通过机器学习和逻辑回归[14]等技术求解线性方程,可以估算各个阶段的延时;然后,估算出来的延时可以用来计算新的激励响应对。如果这种模型攻击能够达到较高的精度,那么物理不可克隆函数和基于物理不可克隆函数的系统将会受到严重的威胁。

通过将物理不可克隆函数的响应输入到有限状态机,让每一个响应对应相应的认证码。方案中抵御模型攻击的方式:一是设计物理不可克隆函数时,增加激励响应对,增加攻击者建模的难度;二是利用有限状态机,将线性的关系非线性化;三是在有限状态机中,响应和认证码之间的对应关系可以任意设计,因此响应与认证码之间的相关性将很小,比如对于两个对应关系(Ri,Ki)和(Rj,Kj),即使Ri和Rj的值非常接近甚至其汉明距离只有1的情况下,Ki和Kj的差距也可能非常大;四是采用了混合物理不可克隆函数结构,因为对于同一种类型的物理不可克隆函数的方程可能是相同的,而对于不同类型的物理不可克隆函数,建模的参数完全不同,这就大大增加了模型攻击的难度。

4 结束语

笔者提出了一种新的面向物联网IP核保护的轻量化认证方案,通过混合环形振荡器物理不可克隆函数和蝴蝶物理不可克隆函数电路,利用有限状态机完成IP核的身份认证和权限设置,避免使用复杂的计算和消耗大量的硬件资源;同时具有错误纠正机制,能够容忍物理不可克隆函数产生的一定比特的错误;研究并分析了认证码位数和权限设置对电路轻量化属性的影响。通过现场可编程门阵列验证表明,与其他的IP核保护方案相比较,新方案具有轻量化、成本低、易于设计和即插即用等优势。

猜你喜欢
汉明状态机位数
五次完全幂的少位数三进制展开
连续自然数及其乘积的位数分析
具有最优特性的一次碰撞跳频序列集的新构造
基于有限状态机的交会对接飞行任务规划方法
基于Spring StateMachine的有限状态机应用研究
媳妇管钱
遥感卫星CCD相机量化位数的选择
叶丽娅的年龄
基于反熔丝FPGA的有限状态机加固设计
基于VHDL的一个简单Mealy状态机