一种基于物理不可克隆函数的设备认证与密钥分发系统和方法与流程

文档序号:17725395发布日期:2019-05-22 02:28阅读:319来源:国知局
一种基于物理不可克隆函数的设备认证与密钥分发系统和方法与流程

本发明属于轻量级密码协议和物联网信息安全技术领域,具体涉及一种基于物理不可克隆函数的设备认证与密钥分发系统和方法。



背景技术:

针对资源受限设备,如何实现既安全又高效的认证与密钥分发,如何提出轻量级的密码协议,是目前亟待完善解决的关键技术问题,是物联网与大数据时代下个人隐私保护的重要实现手段。传统的基于公钥基础设施(publickeyinfrastructure,pki)或数字证书技术的密钥分发体制,不适用于传感器、射频识别,rfid(radiofrequencyidentification,rfid)、可穿戴设备等资源受限设备。

物理不可克隆函数(physicalunclonablefunction,puf)技术的出现与发展为轻量级密码协议的研究提供了崭新的思路,为解决上述关键问题提供全新的低成本和高安全性的解决方案。puf是一种新兴的加密组件,能够提取集成电路内门电路或连接线(导线)间由于制造工艺的不一致性而引入的随机差异并利用这些随机差异以一定规则生成加密(响应)信号。物理对象中的随机差异可以理解成它的“指纹”,是该物理对象所特有的。基于puf对轻量级密码协议展开研究,是从硬件底层出发,利用puf芯片在极低的硬件资源成本下,轻量级地实现类似于量子密钥分发的安全性和防克隆性,并且不需要存储密钥,具有极高的性价比和应用前景。

目前业界针对puf的研究主要针对puf的物理构造方法、纠错函数优化等方面,协议设计方面大部分针对简单的两方通信,而将puf应用于层次化的复杂网络拓扑中的研究成果较少。



技术实现要素:

本发明所要解决的技术问题是针对上述现有技术的不足,提供一种基于物理不可克隆函数的设备认证与密钥分发系统和方法,实现层次化网络拓扑中,服务器、hub、终端设备三者之间的双向认证与密钥分发。

为实现上述技术目的,本发明采取的技术方案为:

一种基于物理不可克隆函数的设备认证与密钥分发系统,包括服务器、集线器(hub)、终端设备;所述服务器为认证中心和密钥分发中心,并向hub与终端设备发送密文指令,网络中只有一个服务器;所述hub负责终端设备的组网和管理,hub被安装puf芯片,与服务器和终端设备分别进行双向认证和密钥分配,网络中有若干个hub,每个hub管理若干终端设备;所述终端设备被安装puf芯片,与hub、服务器进行双向认证与密钥分配,能够解密服务器和hub的密文控制指令,并向服务器和hub发送密文数据,网络中有大量终端设备。

一种基于物理不可克隆函数的设备认证与密钥分发方法,包括以下步骤:

步骤1:手工注册:在网络部署前,所有hub和终端设备在服务器上进行手工注册;注册过的设备称为合法设备,未注册的设备称为非法设备;

步骤2:网络部署:按三层树状拓扑结构部署网络设备;

步骤3:认证与密钥分发:各设备之间进行身份认证与密钥分发;所述认证与密钥分发包括服务器与hub间的认证与密钥分发和hub与终端设备的认证与密钥分发。

为优化上述技术方案,采取的具体措施还包括:

步骤1中手工注册包括以下步骤:

(1)产生激励:服务器生成若干个随机数作为激励;

(2)输入激励:服务器将若干激励输入hub设备中的puf芯片;服务器将若干激励输入终端设备中的puf芯片;

(3)生成响应:hub设备中的puf芯片根据输入的激励生成响应;终端设备中的puf芯片根据输入的激励生成响应;

(4)返回响应:hub设备将生成的所述响应返回给服务器;终端设备将生成的所述响应返回给服务器;

(5)存储激励响应对(crp):服务器将hub设备的crp存储在本地;服务器将终端设备的crp存储在本地;

所述crp为激励值与puf芯片根据该激励生成的响应值组成的二元数组;crp只存储在服务器中,不存储在hub或终端设备中。

步骤2中网络设备部署方法为:将一个服务器设为根节点;若干hub设备设为二层节点,一个服务器管理若干hub设备,且每个hub设备管理若干终端设备;终端设备设为三层节点,一个hub设备管理若干终端设备,终端设备与服务器不直接连接。

步骤3中服务器与hub间的认证与密钥分发为服务器与hub设备之间进行双向身份认证,并由hub设备生成会话密钥,将会话密钥通过加密方式发送给服务器;具体步骤为:

(1)服务器在若干激励中随机选取一个激励,通过明文形式发送给hub;

(2)hub收到激励后,利用puf芯片,生成响应;同时随机生成一个会话密钥,作为hub与服务器之间通信的对称密钥;hub将会话密钥加密生成密文1,加密密钥是响应;hub生成随机数1,加密生成密文2,加密密钥是会话密钥;

(3)hub将激励、随机数1、密文1、密文2和自身hub标识符发送给服务器;

(4)服务器在本地查找hub的crp,利用crp中的响应作为解密密钥,对收到的密文1进行解密,得到明文1;若服务器本地存储的crp,与hub所生成的crp是相同的,则明文1与会话密钥相等;服务器利用解密得到的明文1作为解密密钥,对收到的密文2进行解密,得到明文2;若明文1与会话密钥相等,则明文2与得到的随机数1相等;

(5)服务器将解密得到的明文2与收到的随机数1进行比较,若相同,则服务器对hub的认证通过,转到步骤(6);若比较结果不相同,则服务器对hub的认证不通过,服务器与hub断开连接;

(6)服务器生成随机数2,加密生成密文3,加密密钥是明文1;服务器将随机数2、密文3一起发送给hub;

(7)hub利用会话密钥作为解密密钥,对收到的密文3进行解密,得到明文3;

(8)hub将解密得到的明文3与收到的随机数2进行比较,若相同,则hub对服务器的认证通过,服务器与hub使用会话密钥加密通信;若比较结果不相同,则hub对服务器的认证不通过,服务器与hub断开连接。

步骤3中hub与终端设备间的认证与密钥分发为hub与终端设备之间进行双向身份认证,并由hub设备生成组密钥,将组密钥通过加密方式发送给终端设备;具体步骤为:

(1)网络部署后,hub组建自身的管理区域,并获得区域内所有终端设备的标识符;所述管理区域是将网络划分为若干不重叠的区域,每个管理区域内由一个hub和若干终端设备;hub与其管理区域内的终端设备构成组播通信环境。

(2)hub生成组密钥,加密生成密文4,加密密钥为服务器与hub间使用的会话密钥;hub将hub标识符、终端设备的标识符和密文4一起发送给服务器;

(3)服务器通过hub标识符从本地查找服务器与hub之间使用的会话密钥,并解密收到的密文4得到明文4,解密密钥为会话密钥;若服务器使用的会话密钥与hub使用的会话密钥相同,则明文4与组密钥相同;服务器根据收到的终端设备的标识符,在本地查找对应的终端设备的crp,所述crp中激励和响应分别为激励2和响应2;

(4)服务器将明文4加密生成密文5,加密密钥为响应2;服务器将密文5加密生成密文6,加密密钥为服务器与hub间使用的会话密钥;

(5)服务器将终端设备的标识符、激励2、密文5和密文6发送给hub;

(6)hub利用服务器与hub间使用的会话密钥作为解密密钥,对收到的密文6进行解密,得到明文6;若hub解密所利用的会话密钥,与服务器加密所利用的会话密钥相同,则明文6与密文5相同;hub生成随机数3,加密生成密文7,加密密钥是步骤(2)中所生成的组密钥;

(7)hub将激励2、明文6、密文7和随机数3一起发送给终端设备;

(8)终端设备收到激励2后,利用自身的puf芯片,生成终端设备响应2;终端设备利用终端设备响应2作为解密密钥,对收到的明文6进行解密,得到明文5;若终端设备生成的终端设备响应2与服务器存储的crp中的响应2相同,则明文5与明文4相同;终端设备利用明文5作为解密密钥,对收到的密文7进行解密,得到明文7;

(9)终端设备将明文7与收到的随机数3进行比较,若相同,则终端设备对服务器认证通过,进入步骤(10);若比较结果不相同,则终端设备对服务器或hub的认证不通过,终端设备与hub断开连接;

(10)终端设备生成随机数4,加密生成密文8,加密密钥为明文7;终端设备将随机数4和密文8发送给hub;

(11)hub利用组密钥作为解密密钥,对密文8进行解密,得到明文8;

(12)hub将收到的随机数4与解密得到的明文8进行比较,若结果相同,则hub对终端设备的认证通过,终端设备与hub使用组密钥加密通信;若比较结果不相同,则服务器或hub对终端设备的认证不通过,终端设备与hub断开连接。

本发明具有以下有益效果:

服务器与hub认证与密钥分发方面,虽然hub的物理位置在部署前是未知的,但服务器与hub的逻辑从属关系是确定的,因此服务器与hub可以利用注册过程中建立好的“共享预存储秘密”直接进行身份认证。在本发明中,其“共享预存储秘密”是指“激励响应对”crp,服务器一方安全存储在数据库中,hub一方由puf根据激励临时生成响应对,由于hub中不存储crp,因此可以抗物理捕获攻击。此外认证过程响应始终不以明文形式传输,因此可以抗网络嗅探攻击等。密钥分发方面,由hub生成会话密钥,且不同服务器与hub通信线路上的会话密钥各不相同。

hub与终端设备认证与密钥分发方面,网络部署前,hub与终端的物理和逻辑从属关系都是未知的,而且hub本身也容易受到各种攻击从而产生脆弱性,因此hub管理区域内的安全性并不能完全依赖于hub。将服务器作为可信第三方,利用服务器与终端设备在手工注册过程中建立好的“共享预存储秘密”,为hub与终端设备进行间接身份认证。在本发明中,其“共享预存储秘密”是指“激励响应对”crp,服务器一方安全存储在数据库中,终端设备一方由puf根据激励临时生成响应对,终端的安全性与puf相似。密钥分发方面,当hub与终端设备间的双向认证通过以后,终端设备认为其从属的hub都是可信任的,由hub产生组会话密钥,管理区域内所有终端设备与hub共享该组密钥。

附图说明

图1是本发明方法流程图;

图2是本发明实施例分层的树状网络拓扑结构图。

具体实施方式

以下结合附图对本发明的实施例作进一步详细描述。

本发明的一种基于物理不可克隆函数的设备认证与密钥分发系统,包括服务器、hub、终端设备;所述服务器为认证中心和密钥分发中心,并向hub与终端设备发送密文指令,网络中只有一个服务器;hub负责终端设备的组网和管理,hub被安装puf芯片,与服务器和终端设备分别进行双向认证和密钥分配,网络中有若干个hub,每个hub管理若干终端设备;所述终端设备被安装puf芯片,与hub、服务器进行双向认证与密钥分配,能够解密服务器和hub的密文控制指令,并向服务器和hub发送密文数据,网络中有大量终端设备。

hub与终端设备对服务器本身是完全信任的,但是在网络部署、通信过程中可能发生物理捕获、网络嗅探、中间人攻击等恶意行为,因此hub与终端设备需要对服务器进行身份认证;hub与终端设备容易受到物理俘获、冒充等攻击,因此服务器需要对hub与终端设备进行认证,hub需要对终端设备进行认证。

如图1所示,本发明的一种基于物理不可克隆函数的设备认证与密钥分发方法,包括以下步骤:

步骤1:手工注册:

在网络部署前,所有设备(包括hub和终端设备)在服务器上进行手工注册;

所述手工注册是指在用户参与下、且相对安全的环境中进行操作。所述手工注册过程,假设能够避免网络嗅探、物理捕获等攻击。

注册过的设备称为合法设备,未注册的设备称为非法设备;

手工注册包括以下步骤:

(1)产生激励:服务器生成若干个随机数作为激励;

(2)输入激励:服务器将若干激励输入hub设备中的puf芯片;服务器将若干激励输入终端设备中的puf芯片;

(3)生成响应:hub设备中的puf芯片根据输入的激励生成响应;终端设备中的puf芯片根据输入的激励生成响应;

(4)返回响应:hub设备将生成的所述响应返回给服务器;终端设备将生成的所述响应返回给服务器;

(5)存储crp:服务器将hub设备的crp存储在本地;服务器将终端设备的crp存储在本地;

crp为激励值与puf芯片根据该激励生成的响应值组成的二元数组;crp只存储在服务器中,不存储在hub或终端设备中。

crp是实现服务器与hub、服务器与终端设备双向认证与密钥分配的重要因子。

步骤2:网络部署:

按三层树状拓扑结构部署网络设备,如图2所示,将一个服务器设为根节点;若干hub设备设为二层节点,一个服务器管理若干hub设备,且每个hub设备管理若干终端设备;终端设备设为三层节点(叶子节点),一个hub设备管理若干终端设备,终端设备与服务器不直接连接。

步骤3:认证与密钥分发:

各设备之间进行身份认证与密钥分发。

当hub设备接入网络后,服务器向hub设备发送激励,hub设备的puf生成响应并发送给服务器进行身份认证和密钥生成。当终端设备接入网络后,服务器经由hub向终端设备经发送激励,终端设备的puf生成响应并经由hub发送给服务器进行身份认证和密钥生成。

因此,认证与密钥分发包括服务器与hub间的认证与密钥分发和hub与终端设备的认证与密钥分发。

服务器与hub间的认证与密钥分发为服务器与hub设备之间进行双向身份认证,并由hub设备生成会话密钥,将会话密钥通过加密方式发送给服务器;具体步骤为:

(1)服务器在若干激励中随机选取一个激励,通过明文形式发送给hub;

(2)hub收到激励后,利用puf芯片,生成响应;同时随机生成一个会话密钥,作为hub与服务器之间通信的对称密钥;hub将会话密钥加密生成密文1,加密密钥是响应;hub生成随机数1,加密生成密文2,加密密钥是会话密钥;

(3)hub将激励、随机数1、密文1、密文2和自身hub标识符发送给服务器;

(4)服务器在本地查找hub的crp,利用crp中的响应作为解密密钥,对收到的密文1进行解密,得到明文1;若服务器本地存储的crp,与hub所生成的crp是相同的,则明文1与会话密钥相等;服务器利用解密得到的明文1作为解密密钥,对收到的密文2进行解密,得到明文2;若明文1与会话密钥相等,则明文2与得到的随机数1相等;

(5)服务器将解密得到的明文2与收到的随机数1进行比较,若相同,说明明文1与hub生成的会话密钥相等,进一步说明服务器本地存储的crp,与hub根据激励所生成的响应是相同的,则服务器对hub的认证通过,转到步骤(6);若比较结果不相同,则服务器对hub的认证不通过,服务器与hub断开连接;

(6)服务器生成随机数2,加密生成密文3,加密密钥是明文1;服务器将随机数2、密文3一起发送给hub;

(7)hub利用会话密钥作为解密密钥,对收到的密文3进行解密,得到明文3;

(8)hub将解密得到的明文3与收到的随机数2进行比较,若相同,说明服务器解密得到的明文1与hub生成的会话密钥相同,进一步说明服务器本地存储的crp,与hub根据激励所生成的响应是相同的,则hub对服务器的认证通过,服务器与hub使用会话密钥加密通信;若比较结果不相同,则hub对服务器的认证不通过,服务器与hub断开连接。

hub与终端设备间的认证与密钥分发为hub与终端设备之间进行双向身份认证,并由hub设备生成组密钥,将组密钥通过加密方式发送给终端设备;具体步骤为:

(1)网络部署后,hub组建自身的管理区域,并获得区域内所有终端设备的标识符;所述管理区域是将网络划分为若干不重叠的区域,每个管理区域内由一个hub和若干终端设备;hub与其管理区域内的终端设备构成组播通信环境。

(2)hub生成组密钥,加密生成密文4,加密密钥为服务器与hub间使用的会话密钥;hub将hub标识符、终端设备的标识符和密文4一起发送给服务器;

(3)服务器通过hub标识符从本地查找服务器与hub之间使用的会话密钥,并解密收到的密文4得到明文4,解密密钥为会话密钥;若服务器使用的会话密钥与hub使用的会话密钥相同,则明文4与组密钥相同;服务器根据收到的终端设备的标识符,在本地查找对应的终端设备的crp,所述crp中激励和响应分别为激励2和响应2;

(4)服务器将明文4(即组密钥)加密生成密文5,加密密钥为响应2;服务器将密文5加密生成密文6,加密密钥为服务器与hub间使用的会话密钥;

(5)服务器将终端设备的标识符、激励2、密文5和密文6发送给hub;

(6)hub利用服务器与hub间使用的会话密钥作为解密密钥,对收到的密文6进行解密,得到明文6;若hub解密所利用的会话密钥,与服务器加密所利用的会话密钥相同,则明文6与密文5相同;hub生成随机数3,加密生成密文7,加密密钥是步骤(2)中所生成的组密钥;

(7)hub将激励2、明文6(即密文5)、密文7和随机数3一起发送给终端设备;

(8)终端设备收到激励2后,利用自身的puf芯片,生成终端设备响应2;终端设备利用终端设备响应2作为解密密钥,对收到的明文6(即密文5)进行解密,得到明文5;若终端设备生成的终端设备响应2与服务器存储的crp中的响应2相同,则明文5与明文4相同;终端设备利用明文5作为解密密钥,对收到的密文7进行解密,得到明文7;

(9)终端设备将明文7与收到的随机数3进行比较,若相同,说明用于解密的明文5与hub生成的组密钥是相同的,进一步说明终端设备生成的响应2与服务器存储的crp中的响应2相同;

因为激励2、响应2只在服务器中存储,因此可完成终端设备对服务器的认证,进而终端设备可信任所获得的组密钥。

因为明文5是从服务器间接发送而来,而hub在步骤(8)中用于加密的密钥是组密钥,如果明文5与步骤(2)中组密钥相同,也说明明文5确实是由可信的hub在步骤(2)中发送给服务器的,因此可完成终端设备对hub的认证。

组密钥作为终端设备与hub、hub管理区域内所有终端设备之间通信的对称加密密钥。

则终端设备对服务器认证通过,进入步骤(10);

若比较结果不相同,则终端设备对服务器或hub的认证不通过,终端设备与hub断开连接;

(10)终端设备生成随机数4,加密生成密文8,加密密钥为明文7;终端设备将随机数4和密文8发送给hub;

(11)hub利用组密钥作为解密密钥,对密文8进行解密,得到明文8;

(12)hub将收到的随机数4与解密得到的明文8进行比较,若结果相同,说明组密钥与明文7是相同的,说明终端设备确实正确获得了组密钥,进一步说明终端设备生成的响应2与服务器存储的crp中的响应2相同,因此可完成则hub对终端设备的认证通过,终端设备与hub使用组密钥加密通信;若比较结果不相同,则服务器或hub对终端设备的认证不通过,终端设备与hub断开连接。

本发明基于puf,能够实现服务器、hub、终端设备三者之间的双向认证与密钥分发。与传统的密钥预存储方式、公钥方式不同,本发明基于puf作为认证因子与密钥生成器,既能够防止密钥泄露,又能够降低运算量,可广泛适用于资源受限的低能耗物联网设备。

以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1