CN117729056B - 一种设备身份认证方法和系统 - Google Patents

一种设备身份认证方法和系统 Download PDF

Info

Publication number
CN117729056B
CN117729056B CN202410178351.5A CN202410178351A CN117729056B CN 117729056 B CN117729056 B CN 117729056B CN 202410178351 A CN202410178351 A CN 202410178351A CN 117729056 B CN117729056 B CN 117729056B
Authority
CN
China
Prior art keywords
equipment
accessory
identity
main control
random number
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202410178351.5A
Other languages
English (en)
Other versions
CN117729056A (zh
Inventor
何道敬
宋昱晓
陈磊
周晓光
王轸
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Zhengtong Kingsee Tech Co ltd
Shenzhen Graduate School Harbin Institute of Technology
Original Assignee
Shenzhen Zhengtong Kingsee Tech Co ltd
Shenzhen Graduate School Harbin Institute of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Zhengtong Kingsee Tech Co ltd, Shenzhen Graduate School Harbin Institute of Technology filed Critical Shenzhen Zhengtong Kingsee Tech Co ltd
Priority to CN202410178351.5A priority Critical patent/CN117729056B/zh
Publication of CN117729056A publication Critical patent/CN117729056A/zh
Application granted granted Critical
Publication of CN117729056B publication Critical patent/CN117729056B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种设备身份认证方法和系统,属于网络安全技术领域,所述方法包括:主控设备通过所发起的发现广播的响应确定配件设备和共信设备,通过身份公钥以及挑战随机数生成挑战参数,并将挑战参数加密后发送至共信设备;共信设备将挑战参数加密后发送至配件设备;配件设备通过身份私钥对挑战参数进行解密后得到验证随机数,依据身份公钥以及验证随机数生成验证参数发送至共信设备;共信设备将验证参数加密后发送至主控设备;主控设备依据身份私钥解密验证参数,得到验证随机数,依据所述验证随机数和挑战随机数的比对结果,确定配件设备身份合法性。本申请提供的设备身份认证方案,计算过程简单,计算量小,且管理成本低。

Description

一种设备身份认证方法和系统
技术领域
本发明涉及网络安全技术领域,尤其涉及一种设备身份认证方法和系统。
背景技术
物联网是一个全球网络基础设施,通过利用数据采集和通信能力将物理和虚拟对象联系起来。这个基础设施包括现有的和不断发展的互联网和网络发展。它将提供特定的物体识别、传感器和连接能力,作为开发独立合作服务和应用的基础。这些将以高度的自主数据采集、事件传输、网络连接和互操作性为特征。
OpenHarmony作为数字基础设施根技术的操作系统,目标是面向全场景、全连接、全智能时代、基于开源的方式,搭建一个智能终端设备操作系统的框架和平台,促进万物互联产业的繁荣发展。当今物联网发展迅速,PC、手机及其他IoT设备的数量呈指数级增长。随着智能物联需求的快速提升,物联网操作系统的落地空间广阔。物联网设备的数量的增长带来对物联网操作系统的需求,广阔市场+可控竞争为OpenHarmony生态带来了发展机遇。
物理世界采集设备的安全可靠,是孪生数字世界的数据基础。一个系统中的某个节点被攻破,可能对整套系统的安全性带来破坏。为了实现用户数据在设备互联场景下在各个设备之间的安全流转,需要保证设备之间相互正确可信,即设备和设备之间建立信任关系,并能够在验证信任关系后,搭建安全的连接通道,实现用户数据的安全传输。
为实现当前基于OpenHarmony的物联网设备(如AI音箱、智能家居、智能穿戴等设备)与物联网主控设备间通过建立点对点的信任关系,并在具备信任关系的设备间,搭建安全的连接通道,实现用户数据端到端加密传输。
当前OpenHarmony设备间身份认证方法主要是基于HiChain机制进行,在HiChain机制下,设备的身份标识PIN码(即设备SIM卡的个人识别密码)主要是基于ED25519公钥算法进行构建。而这种身份标识PIN码构建方式算法复杂计算量大,不仅如此,点对点设备认证机制因此各设备身份标识PIN码管理成本高。
发明内容
本发明实施例的目的是提供一种备身份认证方法和系统,能够解决现有技术中存在的设备身份标识PIN码构建时计算量大、管理成本高的问题。
为解决上述技术问题,本发明提供如下技术方案:
本发明实施例提供了一种设备身份认证方法,包括:
主控设备通过所发起的发现广播的响应,确定配件设备和共信设备;其中,所述主控设备、所述配件设备以及所述共信设备均为密钥生成中心的注册设备,所述密钥生成中心为注册设备生成用户的身份公钥和身份私钥;
所述主控设备通过身份公钥以及挑战随机数生成挑战参数,并将所述挑战参数加密后发送至所述共信设备;
所述共信设备将所述挑战参数加密后发送至所述配件设备;
所述配件设备通过身份私钥对所述挑战参数进行解密后,得到验证随机数;
所述配件设备依据身份公钥以及所述验证随机数生成验证参数,并将所述验证参数加密后发送至所述共信设备;
所述共信设备将所述验证参数加密后发送至所述主控设备;
所述主控设备依据身份私钥对所述验证参数进行解密,得到验证随机数;
所述主控设备依据所述验证随机数和所述挑战随机数的比对结果,确定所述配件设备身份合法性。
可选地,主控设备通过所发起的发现广播的响应,确定配件设备和共信设备的步骤,包括:
主控设备发起发现广播,其中,所述发现广播中携带有所述主控设备ID、主控设备的第一位置信息、主控设备IP地址以及与所述主控设备当前已建立信任关系设备列表;
接收配件设备的发现广播响应,其中,所述发现广播响应中携带有所述配件设备ID、配置设备的第二位置信息、配件设备IP地址以及与所述配件设备当前已建立信任关系设备列表;
所述主控设备依据所述配件设备的发现广播响应筛选出共信设备。
可选地,所述主控设备依据所述配件设备的发现广播响应筛选出共信设备的步骤,包括:
所述主控设备依据所述主控设备当前已建立信任关系设备列表、所述配件设备当前已建立信任关系设备列表筛选出与所述主控设备和所述配件设备均建立信任关系的各第一设备;
依据所述主控设备的第一位置信息、所述配件设备的第二位置信息,从各所述第一设备中筛选出距离所述主控设备以及配件设备最近的共信设备。
可选地,所述共信设备将所述挑战参数加密后发送至所述配件设备的步骤,包括:
所述共信设备采用与所述配件设备间的第一会话密钥对所述挑战参数加密后发送至所述配件设备;
所述配件设备通过身份私钥对所述挑战参数进行解密后,得到验证随机数的步骤包括:
所述配件设备通过与所述共信设备间的第一会话密钥对加密后的所述挑战参数进行解密得到一次加密的挑战参数;
所述配件设备通过身份私钥对所述一次加密的挑战参数进行解密后,得到验证随机数。
可选地,在所述主控设备通过所发起的发现广播的响应,确定配件设备和共信设备的步骤之前,所述方法还包括:
接收任一用户设备向密钥生成中心发送的注册请求;其中,所述用户设备包括主控设备、配件设备和共信设备;
接收用户设定的椭圆曲线,依据所述椭圆曲线和随机数生成器生成的大整数,生成主私钥和主公钥;
将所述主私钥和所述用户设备的身份标识信息,输入至密钥派生函数中,生成用户的身份私钥;
依据所述身份私钥和所述椭圆曲线中包括的基点进行点乘运算,得到用户的身份公钥。
可选地,所述接收用户设定的椭圆曲线,依据所述椭圆曲线和随机数生成器生成的大整数,生成主私钥和主公钥的步骤,包括:
接收用户设定的椭圆曲线;其中,所述椭圆曲线包括曲线方程、基点以及有限域素数;
通过所述随机数生成器生成大整数,作为所述主私钥;
利用椭圆曲线点乘运算将所述主私钥和所述基点相乘,得到所述主公钥。
本发明实施例还提供了一种设备身份认证系统,所述系统包括主控设备、配件设备和共信设备:
所述主控设备用于通过所发起的发现广播的响应,确定配件设备和共信设备;通过身份公钥以及挑战随机数生成挑战参数,并将所述挑战参数加密后发送至所述共信设备;
其中,所述主控设备、所述配件设备以及所述共信设备均为密钥生成中心的注册设备,所述密钥生成中心为注册设备生成用户的身份公钥和身份私钥;
所述共信设备用于将所述挑战参数加密后发送至所述配件设备;
所述配件设备用于通过身份私钥对所述挑战参数进行解密后,得到验证随机数;依据身份公钥以及所述验证随机数生成验证参数,并将所述验证参数加密后发送至所述共信设备;
所述共信设备还用于将所述验证参数加密后发送至所述主控设备;
所述主控设备还用于依据身份私钥对所述验证参数进行解密,得到验证随机数;依据所述验证随机数和所述挑战随机数的比对结果,确定所述配件设备身份合法性。
本申请实施例提供的设备身份认证方案,主控设备通过所发起的发现广播的响应,确定配件设备和共信设备;主控设备通过身份公钥以及挑战随机数生成挑战参数,并将挑战参数加密后发送至共信设备;共信设备将挑战参数加密后发送至配件设备;配件设备通过身份私钥对挑战参数进行解密后,得到验证随机数;配件设备依据身份公钥以及验证随机数生成验证参数,并将验证参数加密后发送至共信设备;共信设备将验证参数加密后发送至主控设备;主控设备依据身份私钥对验证参数进行解密,得到验证随机数;主控设备依据验证随机数和挑战随机数的比对结果,确定配件设备身份合法性。本申请实施例提供的方案,有效规避了现有的HiChain设备身份认证机制当中,主控设备与配件设备之间所需要的为确认设备的合法性所采用的PIN码人工输入过程,而是通过主控设备与配件设备之间拥有主控设备与配件设备的身份公钥的共信设备来发起“挑战与响应”,进而进行口令传递,该方法计算过程简单,计算量较小。不仅如此,本申请提供的设备身份认证方法相较于现有技术中点对点设备认证机制相比,能够减少PIN码管理成本,同时有效地降低了PIN码输入所带来的时延,避免了人工干预;使用国密SM9算法不需要传统PKI(Public KeyInfrastructure,公钥基础设施)体系中的密钥库、CA(Certificate Authority,证书授权)等为用户签发证书、维护证书库等,极大地减少了计算和存储等资源的开销,增加了普适性,可有效应用于大规模工业物联网场景当中。
附图说明
图1是表示本申请实施例的一种设备身份认证方法的步骤流程图;
图2是表示本申请实施例的一种设备注册以及身份认证场景模型示意图;
图3是表示本申请实施例的一种基于SM9的鸿蒙设备身份认证方法的流程示意图;
图4是表示本申请实施例的一种设备身份认证系统的结构框图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的设备身份认证方案进行详细地说明。
如附图1所示,本申请实施例的设备身份认证方法包括以下步骤:
步骤101:主控设备通过所发起的发现广播的响应,确定配件设备和共信设备。
其中,主控设备、配件设备以及共信设备均为密钥生成中心的注册设备,密钥生成中心为注册设备生成用户的身份公钥和身份私钥。
用户设备向密钥生成中心申请注册、完成注册的流程在主控设备通过所发起的发现广播的响应,确定配件设备和共信设备之前已完成,设备向密钥生成中心注册的流程具体包括如下步骤:
S1:接收任一用户设备向密钥生成中心发送的注册请求;
其中,用户设备包括主控设备、配件设备和共信设备。可以每个用户设备均向密钥生成中心发送注册请求,密钥生成中心为每个用户设备进行注册。也可以仅一个用户设备向密钥生成中心发送注册请求,用户所绑定的各用户设备默认自动向密钥生成中心发送注册请求。
S2:接收用户设定的椭圆曲线,依据椭圆曲线和随机数生成器生成的大整数,生成主私钥和主公钥;
更为具体地,一种接收用户设定的椭圆曲线,依据所述椭圆曲线和随机数生成器生成的大整数,生成主私钥和主公钥的方式可以如下:
接收用户设定的椭圆曲线;其中,椭圆曲线包括曲线方程、基点以及有限域素数;通过随机数生成器生成大整数,作为主私钥;利用椭圆曲线点乘运算将主私钥和基点相乘,得到主公钥。
S3:将主私钥和用户设备的身份标识信息,输入至密钥派生函数中,生成用户的身份私钥;
S4:依据身份私钥和椭圆曲线中包括的基点进行点乘运算,得到用户的身份公钥。
密钥生成中心为用户设备生成用户的身份公钥和身份私钥后,将身份公钥和私钥返回给对应的用户设备。不仅如此,还会将用户的身份信息和对应的身份公钥进行绑定,生成身份证书。将生成的主私钥、主公钥、身份私钥、身份公钥以及身份证书进行安全保存,确保它们不被泄露。
上述为用户设备向密钥生成中心申请注册并完成注册的流程,在实际实现过程中,注册流程可以在用户使用设备时现注册,也可以在设备购置完成后注册,本申请实施例中对设备注册的具体时机不作具体限制。密钥生成中心基于SM9算法为设备生成用户身份公钥、身份私钥。在用户设备完成向密钥生成中心的注册后,即可进行设备间的通信,在通信前需执行设备身份认证流程。
在一种可选地实施例中,主控设备通过所发起的发现广播的响应,确定配件设备和共信设备的方式可以如下:
首先,主控设备发起发现广播;
其中,发现广播中携带有主控设备ID、主控设备的第一位置信息、主控设备IP地址以及与主控设备当前已建立信任关系设备列表;
其次,主控设备接收配件设备的发现广播响应;
其中,发现广播响应中携带有配件设备ID、配置设备的第二位置信息、配件设备IP地址以及与配件设备当前已建立信任关系设备列表;
最后,主控设备依据配件设备的发现广播响应筛选出共信设备。
更为具体地,主控设备依据配件设备的发现广播响应筛选出共信设备的方式可以如下:主控设备依据主控设备当前已建立信任关系设备列表、配件设备当前已建立信任关系设备列表筛选出与主控设备和所述配件设备均建立信任关系的各第一设备;依据主控设备的第一位置信息、配件设备的第二位置信息,从各第一设备中筛选出距离主控设备以及配件设备最近的共信设备。
本申请实施例中,基于SM9算法完成设备认证公私钥的过程,替代ED25519公钥算法,减少相应的管理成本,并在此基础上,实现符合 GB∕T 38636 2020《信息安全技术 传输层密码协议(TLCP)》的网络层加密。
SM9主要基于二元线性对的非对称算法,其公私钥由密钥生成中心(KeyGeneration Center,KGC)利用设备身份标识、主公钥、主私钥和公共算法参数计算得出。
SM9算法具有以下几个主要特点:
支持身份认证:SM9算法可以用于设备之间的身份认证,确保通信双方的身份合法性。
强密码学安全性:SM9算法采用了一系列密码学安全措施,如椭圆曲线离散对数问题的难解性和抗侧信道攻击等,以确保通信的机密性和完整性。
高效性能:SM9算法在计算和存储开销上具有较小的特点,适合于资源有限的设备和环境。
支持密钥交换和数字签名:SM9算法不仅可以用于设备之间的身份认证,还可以用于密钥交换和数字签名等密码操作,提供全面的安全支持。
国密SM9算法使用具有唯一性的各类标识作为公钥进行数据加密和身份认证,采用椭圆曲线上的双线性对作为基础数学工具,基于相关的计算复杂性假设构建安全性证明,可提高信息安全的防护水平。
步骤102:主控设备通过身份公钥以及挑战随机数生成挑战参数,并将挑战参数加密后发送至共信设备。
主控设备与共信设备间默认已建立会话关系,主控设备通过与共信设备之间的会话密钥对挑战参数进行加密后发送至共信设备。可见,主控设备对挑战随机数进行了双重加密,一重是基于身份公钥,另一重是基于会话密钥。
步骤103:共信设备将挑战参数加密后发送至配件设备。
配件设备也需要与共信设备建立会话关系,二者建立会话关系后通过会话密钥即可对数据进行加密传输。
具体地,共信设备可采用与配件设备间的第一会话密钥对挑战参数加密后发送至配件设备;配件设备通过与共信设备间的第一会话密钥对加密后的挑战参数进行解密得到一次加密的挑战参数;配件设备通过身份私钥对一次加密的挑战参数进行解密后,得到验证随机数。
步骤104:配件设备通过身份私钥对挑战参数进行解密后,得到验证随机数。
步骤105:配件设备依据身份公钥以及验证随机数生成验证参数,并将验证参数加密后发送至共信设备。
配件设备通过与共信设备的会话密钥对验证参数进行加密,加密后发送至共信设备。
步骤106:共信设备将验证参数加密后发送至主控设备。
共信设备依据与配件设备间的会话密钥对配件设备发送的加密后的验证参数进行解密,然后再依据与主控设备间的会话密钥对解密后的验证参数进行加密后发送至主控设备。
步骤107:主控设备依据身份私钥对验证参数进行解密,得到验证随机数。
在一种可选地实施例中,在共信设备发送的验证参数进行了双重加密的情况下,主控设备接收到验证参数后,首先依据与共信设备间的会话密钥对加密的验证参数进行一层解密,然后再依据身份私钥对一层解密后的验证参数进行二次解密,得到验证随机数。
步骤108:主控设备依据验证随机数和挑战随机数的比对结果,确定配件设备身份合法性。
若验证随机数和挑战随机数据相同,则确定配件身份合法;反之,若验证随机数和挑战随机数不相同,则确定配件设备不合法。
若验证随机数和挑战随机数据相同,则完成主控设备与配件设备间的身份合法性认证,并可将挑战随机数用于PAKE(Password-authenticated key agreement,密码认证秘钥协商)协议的公共秘密,生成会话密钥,并交换双方身份公钥,完成设备间身份认证过程。PAKE协议的具体实现流程与现有HiChain的实现方法中所涉及到的PAKE协议相同,通过将配件设备与主控设备所共有的挑战随机数作为公共秘密,协商出双方用于安全通信的会话密钥,并利用该通信渠道,交换双方的身份公钥,从而完成主控设备和配件设备间的身份认证过程。
本申请实施例提供的设备身份认证方法,主控设备通过所发起的发现广播的响应,确定配件设备和共信设备;主控设备通过身份公钥以及挑战随机数生成挑战参数,并将挑战参数加密后发送至共信设备;共信设备将挑战参数加密后发送至配件设备;配件设备通过身份私钥对挑战参数进行解密后,得到验证随机数;配件设备依据身份公钥以及验证随机数生成验证参数,并将验证参数加密后发送至共信设备;共信设备将验证参数加密后发送至主控设备;主控设备依据身份私钥对验证参数进行解密,得到验证随机数;主控设备依据验证随机数和挑战随机数据的比对结果,确定配件设备身份合法性。本申请实施例提供的方案,有效规避了现有的HiChain设备身份认证机制当中,主控设备与配件设备之间所需要的为确认设备的合法性所采用的PIN码人工输入过程,而是通过主控设备与配件设备之间拥有主控设备与配件设备的身份公钥的共信设备来发起“挑战与响应”,进而进行口令传递,该方法计算过程简单,计算量较小。不仅如此,本申请提供的设备身份认证方法相较于现有技术中点对点设备认证机制相比,能够减少PIN码管理成本,同时有效地降低了PIN码输入所带来的时延,避免了人工干预;此外,使用国密SM9算法不需要传统PKI体系中的密钥库、CA等为用户签发证书、维护证书库等,极大地减少了计算和存储等资源的开销,增加了普适性,可有效应用于大规模工业物联网场景当中。
下面参照图2-图3以一具体实例为例,对本申请实施例提供的设备身份认证方法进行说明。
本申请实施例中以用户设备为安装有鸿蒙系统的设备后续简称鸿蒙设备为例进行说明。在该具体实例中,基于SM9算法为各鸿蒙设备生成用户的身份公钥和私钥。
图2为设备注册以及身份认证场景模型示意图。如图2所示,鸿蒙设备设备注册为合法设备,提交鸿蒙设备标识信息(包括认证时间、设备ID、消息标识等),SM9密钥生成中心KGC依据提交鸿蒙设备标识信息为鸿蒙设备生成身份公钥和私钥,并返回鸿蒙设备用于设备认证的身份公钥和身份私钥。鸿蒙设备获取用于设备认证的身份公钥、身份私钥后,主控设备开启对配件设备的身份认证,大体分为几个部分:构建挑战随机数,发起挑战响应积值,从而完成配件设备的身份认证。
其中,用户设备在SM9密钥生成中心KGC中完成注册的流程包括如下步骤:
步骤1:主控设备、配件设备与共信设备均预先向SM9密钥生成中心KGC进行注册,成为合法设备。
主控设备、配件设备以及共信设备此时均为用户设备,还未区分各自的身份。
步骤2:用户选择椭圆曲线,使用随机数生成器生成一个随机的大整数,作为主私钥;利用椭圆曲线点乘运算,将主私钥与基点相乘,得到主公钥。
其中,椭圆曲线包括曲线方程、基点、有限域素数等。
步骤3:将认证时间、设备ID、消息标号等标识信息,发送至SM9密钥生成中心KGC。KGC将主私钥和用户的身份标识输入到密钥派生函数中,生成用户的身份私钥。利用身份私钥和基点进行点乘运算,得到用户的身份公钥。
步骤4:将用户的身份信息和对应的身份公钥进行绑定,生成身份证书。将生成的主私钥、主公钥、身份私钥、身份公钥以及身份证书进行安全保存,确保它们不被泄露。
步骤5:SM9密钥生成中心KGC返回鸿蒙设备用于设备认证的SM9公私钥。
SM9公私钥即前文中所述的用户的身份公钥和身份私钥。
图3为基于SM9的鸿蒙设备的身份认证方法流程示意图,具体包括如下步骤:
步骤1:主控设备A利用COAP协议,向设备群组发起设备发现广播,广播主控设备,主控设备A的位置信息/>,当前已建立信任关系设备列表以及主控设备IP地址
步骤2:配件设备B在收到主控设备的设备发现广播信息后,向主控设备单播配件设备,配件设备B的位置信息/>,当前已建立信任关系设备列表以及配件设备IP地址/>
步骤3:主控设备A在收到配件设备B的单播信息后,从各自已建立信任关系的设备列表当中查找出与配件设备之间距离最近的共信设备P。
其中,代表共信设备P的位置信息。
通过共信设备P向配件设备B发起身份验证请求。利用SM9用户公钥(即用户的身份公钥)以及挑战随机数R构建挑战参数C,并利用与共信设备的Session Key kAP进行加密后发送至共信设备,具体构建如下所示:
其中,Session Key即会话密钥。代表利用会话密钥kAP对C进行加密,代表利用会话密钥kAP对C进行解密。/>代表设备A向设备P发送信息。
步骤4:共信设备P在获取到主控设备A的挑战参数C之后,利用与主控设备A的Session Key进行解密,并利用与配件设备B间的Session Key kBP进行加密后发送至配件设备。
其中,代表设备P向设备B发送信息C,且在发送信息C前利用会话密钥kBP对C进行加密。
步骤5:配件设备B在收到共信设备P发送的挑战参数C之后,利用SM9用户私钥(即用户的身份私钥)将其解密,利用SM9用户公钥以及验证随机数构建验证参数N,利用与共信设备之间的Session Key kBP加密后发送回共信设备。对于成功完成身份认证的配件设备,验证随机数/>应与挑战随机数R一致。
其中,代表设备B向设备P发送信息N,且在发送信息N前利用会话密钥kBP对N进行加密。
步骤6:共信设备P在获取到配件设备B的验证参数C之后,利用与配件设备B的Session Key进行解密,并利用与主控设备A间的Session Key进行加密后发送至主控设备。
步骤7:主控设备在获取到验证参数N后,利用Session Key kAP进行解密,判断挑战随机数R与验证随机数是否一致。
若挑战随机数R与验证随机数相同,则完成主控设备与配件设备间的身份合法性认证,并可将挑战随机数R用于PAKE协议的公共秘密,生成会话密钥,并交换双方身份公钥,完成设备间身份认证过程。PAKE协议的具体实现流程与现有HiChain的实现方法中所涉及到的PAKE协议相同,通过将配件设备与主控设备所共有的随机数R作为公共秘密,协商出双方用于安全通信的会话密钥,并利用该通信渠道,交换双方的身份公钥,从而完成设备间的身份认证过程。
本具体实施例提供的基于SM9的鸿蒙设备身份认证方法,跳过了鸿蒙机制现有的HiChain设备身份认证机制当中,主控设备与配件设备之间所需要的为确认设备的合法性所采用的PIN码人工输入过程,而是通过主控设备与配件设备之间拥有主控设备与配件设备的身份公钥的共信设备来发起“挑战与响应”,进而进行口令传递。身份公钥由密钥生成中心KGC在设备发起设备认证时,根据认证时间,设备ID,消息标号等标识信息,生成鸿蒙终端设备用于认证的用户公钥和用户私钥。主控设备在利用COAP协议发现配件设备之后,通过共信设备向配件设备发起验证请求,利用挑战随机数R构建挑战参数C,并利用SM9用户公钥进行加密后传递;共信设备在获取到主控设备所发送的挑战参数C后,利用与主控设备的Session Key将其解密,并通过与配件设备的Session Key再次加密后发送至配件设备;配件设备在收到挑战参数C之后,利用SM9用户私钥进行解密,并利用随机数R构建验证参数N,利用SM9用户公钥加密后发送回共信设备;共信设备在收到验证参数N后,利用与配件设备的Session Key将其解密,并利用与主控设备的Session Key再次加密后发送至主控设备;主控设备在获取到验证参数N后,利用SM9用户私钥进行解密,判断验证随机数与挑战随机数R是否相同,若相同,则完成主控设备与配件设备间的身份合法性认证,并可将挑战随机数R用于PAKE协议的公共秘密,生成会话密钥,并交换双方身份公钥,完成设备间身份认证过程。
该方法计算过程简单,计算量较小,且与现有的基于ED25519的点对点设备认证机制相比,SM9可与PIN码相统一,减少相应管理的成本,同时有效地降低了PIN码输入所带来的时延,避免了人工干预;使用国密SM9算法不需要传统PKI体系中的密钥库、CA等为用户签发证书、维护证书库等,极大地减少了计算和存储等资源的开销,增加了普适性,可有效应用于大规模工业物联网场景当中。
图4为实现本申请实施例的一种设备身份认证系统的结构框图。
本申请实施例提供的设备身份认证系统包括:主控设备401、配件设备402和共信设备403以及密钥生成中心404:
所述主控设备401用于通过所发起的发现广播的响应,确定配件设备402和共信设备403;通过身份公钥以及挑战随机数生成挑战参数,并将所述挑战参数加密后发送至所述共信设备;
其中,所述主控设备、所述配件设备以及所述共信设备均为密钥生成中心的注册设备,所述密钥生成中心为注册设备生成用户的身份公钥和身份私钥;
所述共信设备403用于将所述挑战参数加密后发送至所述配件设备;
所述配件设备402用于通过身份私钥对所述挑战参数进行解密后,得到验证随机数;依据身份公钥以及所述验证随机数生成验证参数,并将所述验证参数加密后发送至所述共信设备;
所述共信设备403还用于将所述验证参数加密后发送至所述主控设备;
所述主控设备401还用于依据身份私钥对所述验证参数进行解密,得到验证随机数;依据所述验证随机数和所述挑战随机数据的比对结果,确定所述配件设备身份合法性。
本申请实施例提供的设备身份认证方法,有效规避了现有的HiChain设备身份认证机制当中,主控设备与配件设备之间所需要的为确认设备的合法性所采用的PIN码人工输入过程,而是通过主控设备与配件设备之间拥有主控设备与配件设备的身份公钥的共信设备来发起“挑战与响应”,进而进行口令传递,该方法计算过程简单,计算量较小。不仅如此,本申请提供的设备身份认证方法相较于现有技术中点对点设备认证机制相比,能够减少PIN码管理成本,同时有效地降低了PIN码输入所带来的时延,避免了人工干预;此外,使用国密SM9算法不需要传统PKI体系中的密钥库、CA等为用户签发证书、维护证书库等,极大地减少了计算和存储等资源的开销,增加了普适性,可有效应用于大规模工业物联网场景当中。
本申请实施例提供的图4所示的设备身份认证系统能够实现图1的方法实施例实现的各个过程,为避免重复,这里不再赘述。
可选地,本申请实施例中的各用户设备、密钥生成中心均可包括处理器,存储器,存储在存储器上并可在所述处理器上运行的程序或指令,该程序或指令被处理器执行时实现上述各设备执行的各过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (4)

1.一种设备身份认证方法,其特征在于,包括:
主控设备通过所发起的发现广播的响应,确定配件设备和共信设备;其中,所述主控设备、所述配件设备以及所述共信设备均为密钥生成中心的注册设备,所述密钥生成中心为注册设备生成用户的身份公钥和身份私钥;
所述主控设备通过身份公钥以及挑战随机数生成挑战参数,并将所述挑战参数加密后发送至所述共信设备;
所述共信设备将所述挑战参数加密后发送至所述配件设备;
所述配件设备通过身份私钥对所述挑战参数进行解密后,得到验证随机数;
所述配件设备依据身份公钥以及所述验证随机数生成验证参数,并将所述验证参数加密后发送至所述共信设备;
所述共信设备将所述验证参数加密后发送至所述主控设备;
所述主控设备依据身份私钥对所述验证参数进行解密,得到验证随机数;
所述主控设备依据所述验证随机数和所述挑战随机数的比对结果,确定所述配件设备身份合法性;
其中,所述共信设备将所述挑战参数加密后发送至所述配件设备的步骤,包括:
所述共信设备采用与所述配件设备间的第一会话密钥对所述挑战参数加密后发送至所述配件设备;
所述配件设备通过身份私钥对所述挑战参数进行解密后,得到验证随机数的步骤包括:
所述配件设备通过与所述共信设备间的第一会话密钥对加密后的所述挑战参数进行解密得到一次加密的挑战参数;
所述配件设备通过身份私钥对所述一次加密的挑战参数进行解密后,得到验证随机数;
在所述主控设备通过所发起的发现广播的响应,确定配件设备和共信设备的步骤之前,所述方法还包括:
接收任一用户设备向密钥生成中心发送的注册请求;其中,所述用户设备包括主控设备、配件设备和共信设备;
接收用户设定的椭圆曲线,依据所述椭圆曲线和随机数生成器生成的大整数,生成主私钥和主公钥;
将所述主私钥和所述用户设备的身份标识信息,输入至密钥派生函数中,生成用户的身份私钥;
依据所述身份私钥和所述椭圆曲线中包括的基点进行点乘运算,得到用户的身份公钥;
所述接收用户设定的椭圆曲线,依据所述椭圆曲线和随机数生成器生成的大整数,生成主私钥和主公钥的步骤,包括:
接收用户设定的椭圆曲线;其中,所述椭圆曲线包括曲线方程、基点以及有限域素数;
通过所述随机数生成器生成大整数,作为所述主私钥;
利用椭圆曲线点乘运算将所述主私钥和所述基点相乘,得到所述主公钥。
2.根据权利要求1所述的方法,其特征在于,主控设备通过所发起的发现广播的响应,确定配件设备和共信设备的步骤,包括:
主控设备发起发现广播,其中,所述发现广播中携带有主控设备ID、主控设备的第一位置信息、主控设备IP地址以及与所述主控设备当前已建立信任关系设备列表;
接收配件设备的发现广播响应,其中,所述发现广播响应中携带有配件设备ID、配置设备的第二位置信息、配件设备IP地址以及与所述配件设备当前已建立信任关系设备列表;
所述主控设备依据所述配件设备的发现广播响应筛选出共信设备。
3.根据权利要求2所述的方法,其特征在于,所述主控设备依据所述配件设备的发现广播响应筛选出共信设备的步骤,包括:
所述主控设备依据所述主控设备当前已建立信任关系设备列表、所述配件设备当前已建立信任关系设备列表筛选出与所述主控设备和所述配件设备均建立信任关系的各第一设备;
依据所述主控设备的第一位置信息、所述配件设备的第二位置信息,从各所述第一设备中筛选出距离所述主控设备以及配件设备最近的共信设备。
4.一种设备身份认证系统,用于实现如权利要求1-3中任一项所述的方法,其特征在于,所述系统包括主控设备、配件设备和共信设备:
所述主控设备用于通过所发起的发现广播的响应,确定配件设备和共信设备;通过身份公钥以及挑战随机数生成挑战参数,并将所述挑战参数加密后发送至所述共信设备;
其中,所述主控设备、所述配件设备以及所述共信设备均为密钥生成中心的注册设备,所述密钥生成中心为注册设备生成用户的身份公钥和身份私钥;
所述共信设备用于将所述挑战参数加密后发送至所述配件设备;
所述配件设备用于通过身份私钥对所述挑战参数进行解密后,得到验证随机数;依据身份公钥以及所述验证随机数生成验证参数,并将所述验证参数加密后发送至所述共信设备;
所述共信设备还用于将所述验证参数加密后发送至所述主控设备;
所述主控设备还用于依据身份私钥对所述验证参数进行解密,得到验证随机数;依据所述验证随机数和所述挑战随机数的比对结果,确定所述配件设备身份合法性。
CN202410178351.5A 2024-02-09 2024-02-09 一种设备身份认证方法和系统 Active CN117729056B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410178351.5A CN117729056B (zh) 2024-02-09 2024-02-09 一种设备身份认证方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410178351.5A CN117729056B (zh) 2024-02-09 2024-02-09 一种设备身份认证方法和系统

Publications (2)

Publication Number Publication Date
CN117729056A CN117729056A (zh) 2024-03-19
CN117729056B true CN117729056B (zh) 2024-05-03

Family

ID=90209232

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410178351.5A Active CN117729056B (zh) 2024-02-09 2024-02-09 一种设备身份认证方法和系统

Country Status (1)

Country Link
CN (1) CN117729056B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109818744A (zh) * 2019-02-27 2019-05-28 矩阵元技术(深圳)有限公司 共享秘密密钥生成方法、装置、计算机设备和存储介质
CN111294352A (zh) * 2020-02-03 2020-06-16 国家工业信息安全发展研究中心 云端与边缘节点之间的数据安全认证方法
CN117376026A (zh) * 2023-11-27 2024-01-09 曲阜师范大学 物联网设备身份认证方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109818744A (zh) * 2019-02-27 2019-05-28 矩阵元技术(深圳)有限公司 共享秘密密钥生成方法、装置、计算机设备和存储介质
CN111294352A (zh) * 2020-02-03 2020-06-16 国家工业信息安全发展研究中心 云端与边缘节点之间的数据安全认证方法
CN117376026A (zh) * 2023-11-27 2024-01-09 曲阜师范大学 物联网设备身份认证方法及系统

Also Published As

Publication number Publication date
CN117729056A (zh) 2024-03-19

Similar Documents

Publication Publication Date Title
CN107948189B (zh) 非对称密码身份鉴别方法、装置、计算机设备及存储介质
CN102318258B (zh) 基于身份的认证密钥协商协议
CN107800539B (zh) 认证方法、认证装置和认证系统
CN108650227B (zh) 基于数据报安全传输协议的握手方法及系统
CN108599925B (zh) 一种基于量子通信网络的改进型aka身份认证系统和方法
JP4634612B2 (ja) 改良された加入者認証プロトコル
WO2017185999A1 (zh) 密钥分发、认证方法,装置及系统
CN111050322B (zh) 基于gba的客户端注册和密钥共享方法、装置及系统
CN109075973B (zh) 一种使用基于id的密码术进行网络和服务统一认证的方法
WO2011076008A1 (zh) 一种wapi终端与应用服务器传输文件的系统及方法
JP2004266342A (ja) 無線アドホック通信システム、端末、その端末における復号方法、暗号化方法及びブロードキャスト暗号鍵配布方法並びにそれらの方法を端末に実行させるためのプログラム
JP2010503329A (ja) アドホックワイヤレスネットワークにおける認証キー材料のセキュリティ処理のための、セキュリティ方法およびセキュリティシステム
WO2010078755A1 (zh) 电子邮件的传送方法、系统及wapi终端
CN110087240B (zh) 基于wpa2-psk模式的无线网络安全数据传输方法及系统
CN107682152B (zh) 一种基于对称密码的群组密钥协商方法
CN110493272B (zh) 使用多重密钥的通信方法和通信系统
CN112312393A (zh) 5g应用接入认证方法及5g应用接入认证网络架构
CN111654481B (zh) 一种身份认证方法、装置和存储介质
CN114398602A (zh) 一种基于边缘计算的物联网终端身份认证方法
KR101704540B1 (ko) M2m 환경의 다중 디바이스 데이터 공유를 위한 그룹키 관리 방법
WO2022001225A1 (zh) 身份凭据的申请方法、身份认证的方法、设备及装置
KR100456624B1 (ko) 이동 통신망에서의 인증 및 키 합의 방법
CN116614811A (zh) 一种车联网的分布式信息认证方法及系统
CN116232759A (zh) 一种雾-区块链协助的智能电网聚合认证方法
CN117729056B (zh) 一种设备身份认证方法和系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant