一种基于边缘计算的终端设备接入认证方法及系统
技术领域
本发明涉及终端设备的接入认证,特别是涉及一种基于边缘计算的终端设备接入认证方法及系统。
背景技术
随着物联网技术的快速发展,各种终端设备(节点)都将广泛应用于日常生活和工作中。由于传统的云计算系统存在固有的局限性,比如,不能满足实时控制、网络流量负荷重、云端数据隐私安全无法得到保障等等。而新兴的边缘计算技术刚好能为物联网设备提供边缘智能服务,构建小型的边缘数据中心,微云数据中心,可以满足相关行业在数字化的快速联接、实时业务、数据优化、应用智能、数据安全与隐私保护等方面的关键需求。边缘计算节点(服务器)具有一定的数据处理和存储能力,但是终端设备由于成本的限制使其性能也有限,尤其是开放的移动无线网络本身也存在很多风险,使得这种资源不对称的边缘计算系统中的设备更容易遭受黑客或者非法用户的入侵以及其它攻击,比如重放、假冒、窃听、篡改、拒绝服务攻击等等。通信终端设备与边缘计算服务器之间的身份认证是信息安全与隐私保护的基础与关键,一旦身份认证系统受到破坏,系统将无安全可言。由于通信终端设备的计算和存储能力有限,能耗有限,不适合直接采用传统复杂的加密算法来实现身份认证,因此,有必要设计一个适用于这种资源不对称的边缘计算通信系统的身份认证方案。
为了适应资源受限设备,许多轻量级的对称密码算法被相继提出,比如MCRYPTON,HIGHT,PRESENT,MIBS,KLEIN和Piccolo等等,这些算法在有限的时间和空间复杂度下具有一定的安全强度,但是对于特殊的应用环境,它们具有较高的执行效率,而且代价相对较低。此外,依据物理层信息的非密码认证技术也被提出用于终端设备的信息安全与隐私保护,这种非密码认证方式具有更高的安全级别。基于物理层信道指纹(Physical LayerChannel Fingerprint,PLCF)的终端设备识别与验证是非密码认证技术之一。物理层信道指纹认证是利用信道信息的空时唯一性,从接收的数据包中直接提取信道指纹信息,通过比较信道指纹信息的相似性来实现用户的身份认证;其安全强度高、节点不需要任何处理,非常适合边缘侧承担全部识别任务的资源不对称认证场景。
发明内容
本发明的目的在于克服现有技术的不足,提供一种基于边缘计算的终端设备接入认证方法及系统,基于轻量级密码和物理层信道指纹识别,在资源不对称的边缘计算系统中实现终端设备与边缘计算服务器之间的相互认证,降低终端设备身份认证的复杂度并提高身份认证的安全性以及认证率。
本发明的目的是通过以下技术方案来实现的:一种基于边缘计算的终端设备接入认证方法,包括以下步骤:
S1.密钥共享:终端设备与边缘计算服务器之间通过安全渠道共享密钥Key;
S2.系统初始化认证:终端设备与边缘计算服务器之间根据密钥Key,通过轻量级密码算法完成相互之间的初始身份认证;具体地,所述步骤S2包括以下子步骤:
S201.终端设备生成一个随机数PS1,用轻量级密码算法加密PS1得到密文Y1=E(key)(PS1),其中,E(key)(PS1)表示利用轻量级密码算法和密钥Key对随机数PS1进行加密计算;
S202.终端设备生成登录请求消息M1并发送给边缘计算服务器,所述请求消息M1包含密文Y1;
S203.边缘计算服务器从接收到的登录请求信号波形中提取信道信息H1,然后解码得到密文Y’1,再用轻量级密码算法解密Y’1得到明文PS1’=D(key)(Y’1),其中,D(key)(Y’1)表示利用轻量级密码算法和密钥Key对密文Y’1进行解密计算,信道信息H1是一个m行n列的复数矩阵;
S204.边缘计算服务器生成两个随机数PS2和PS3,并对PS1’、PS2和PS3进行加密得到密文Y2=E(key)(PS1’||PS2||PS3),然后向终端设备发送响应消息M2,其中M2包含密文Y2;
S205.终端设备验证边缘计算服务器的合法性:终端设备对接收到的响应消息M’2进行解码得到密文Y’2,再进行解密得到明文(PS1’||PS2’||PS3’)=D(key)(Y’2),如果PS1’与PS1不相等,则边缘计算服务器非法,通信终端节点断开连接,转至步骤S201;如果PS1’与PS1相等,则服务器合法,通信终端节点生成两个响应消息M3和M4,并连续发送给边缘计算服务器,进入步骤S206,其中,M3包含密文Y3=E(key)(PS2’),M4包含密文Y4=E(key)(PS3’);
S206.边缘计算服务器验证终端设备的合法性:边缘计算服务器从接收到的响应消息中提取信道信息H2和H3,然后解码得到密文Y’3和Y’4,再解密得到明文PS2’=D(key)(Y’3)和PS3’=D(key)(Y’4),如果PS2’与PS2相等并且PS3’与PS3相等,则终端设备合法,初始化认证完成;否则通信终端设备不合法,边缘计算节点断开与终端设备的连接,转至步骤S201,其中,H2和H3都是m行n列的复数矩阵,H2表示边缘计算服务器从接收到的响应消息M3中提取的信道信息,H3表示边缘计算服务器从接收到的响应消息M4中提取的信道信息。
S3.物理层信道认证建模:边缘计算服务器根据相干时间内收集到的信道信息建立物理层信道认证模型;具体地,所述步骤S3包括以下子步骤:
S301.信道信息预处理:由于信道信息H1、H2和H3是m行n列的复数矩阵,故分别将复数矩阵中的实部和虚部的元素取绝对值并进行累加,以此求得信道的统计量H’1、H’2和H’3,其中,H’1、H’2和H’3都表示复平面上点,进一步表示为H’1(x1,y1)、H’2(x2,y2)和H’3(x3,y3);
S302.确定物理层认证模型的中心:根据求出的H’1、H’2和H’3进一步求得物理层认证模型的中心W(x,y),其中,x=(min{x1,x2,x3}+max{x1,x2,x3})÷2,y=(min{y1,y2,y3}+max{y1,y2,y3})÷2,min表示取最小值,max表示取最大值;
S303.确定物理层认证模型的覆盖半径:分别求H’1、H’2和H’3到中心W(x,y)的欧氏距离||WH’1||、||WH’2||和||WH’3||,然后取最大的欧氏距离值作为物理层模型的半径R=max{||WH’1||,||WH’2||,||WH’3||},进一步确定物理层模型的覆盖半径为dist=R+θ,其中,θ表示物理层模型覆盖半径的调节因子;
S304.确定物理层认证模型的类别:依据物理层认证模型中心W(x,y)以及物理层模型覆盖半径dist来确定物理层模型的类别Ci={Wi,disti},其中i=1,2,…,表示终端设备的编号,不同的Ci对应于不同的终端设备;至此,物理层信道建模完成。
S4.物理层信道认证:边缘计算服务器根据建立的物理层信道认证模型,从第四帧数据开始通过物理层信道认证技术直接对数据的合法性进行验证;具体地,所述步骤S4包括以下子步骤:
S401.边缘计算服务器从接收到的数据帧中提取信道信息Hk,其中,Hk是m行n列的复数矩阵,表示边缘计算服务器从接收到的数据帧M’k中提取的信道信息,k=1,2,…,表示数据帧的编号,所述数据帧M’k包含密文
S402.信道信息预处理:边缘计算服务器将复数矩阵Hk中的实部和虚部的元素取绝对值并进行累加,以此求得信道的统计量H’k,其中,H’k表示复平面上点,进一步表示为H’k(xk,yk);
S403.确定数据帧的合法性:计算H’k到每个类别Ci的中心Wi的欧式距离||H’kWi||,然后比较||H’kWi||与disti的大小:如果||H’kWi||仅仅小于其中一个disti,表示H’k属于相应的类别Ci,则H’k对应的数据帧M’k合法;如果||H’kWi||不是仅小于其中一个disti,则进入步骤S5启动上层密码认证步骤。
S5.上层密码认证:在非初始化认证阶段,如果边缘计算服务器接收到的数据帧的合法性无法通过物理层信道模型认证,则启动上层密码认证来判断数据帧的合法性;具体地,所述步骤S5包括以下子步骤:
S501.边缘计算服务器从接收到的数据帧M’k中解码得到密文
S502.边缘计算服务器对Y’k进行解密得到明文
S503.确定数据帧的合法性:如果与不相等,则数据帧M’k非法,边缘计算服务器丢弃数据帧M’k;如果与相等,则数据帧M’k合法,边缘计算服务器记录数据帧M’k相对应的信道信息矩阵H’k;当边缘计算服务器在数据帧的相干时间内连续接收到j个数据帧{M’k,M’k+1,…,M’k+(j-1)}都需要启动上层密码来认证数据的合法性的时候,转至步骤S6物理层信道认证模型更新。
S6.物理层信道认证模型更新:当边缘计算服务器在数据帧的相干时间内连续接收到j个数据帧{M’k,M’k+1,…,M’k+(j-1)}都需要启动上层密码来认证数据的合法性时,更新物理层信道认证模型,其中j≥3。具体地,所述步骤S6包括以下子步骤:
S601.信道信息预处理:依据步骤S503提取相应的信道信息矩阵并进行预处理得到信道的统计量矩阵H’k,H’k+1,…,H’k+(j-1),其中,H’k,H’k+1,…,H’k+(j-1)都表示复平面上点,进一步表示为H’k(xk,yk),H’k+1(xk+1,yk+1),…,H’k+j-1(xk+j-1,yk+j-1);
S602.确定新的物理层模型中心:根据步骤S601求出的H’k(xk,yk),H’k+1(xk+1,yk+1),…,H’k+j-1(xk+j-1,yk+j-1)进一步求得新的物理层模型中心Wnew(xnew,ynew),其中,xnew=(min{xk,xk+1,…,xk+j-1}+max{xk,xk+1,…,xk+j-1})÷2,ynew=(min{yk,yk+1,…,yk+j-1}+max{yk,yk+1,…,yk+j-1})÷2,min表示取最小值,max表示取最大值;
S603.确定新的物理层模型覆盖半径:分别求H’k(xk,yk),H’k+1(xk+1,yk+1),…,H’k+j-1(xk+j-1,yk+j-1)到中心Wnew(xnew,ynew)的欧氏距离||WnewH’k||,||WnewH’k+1||,…,||WnewH’k+j-1||,然后取最大的欧氏距离值作为新的物理层模型半径Rnew=max{||WnewH’k||,||WnewH’k+1||,…,||WnewH’k+j-1||},进一步以确定物理层模型的覆盖半径为distnew=Rnew+θ,其中,θ表示物理层模型覆盖半径的调节因子;
S604.更新物理层认证模型:依据步骤S602求出的新物理层模型中心Wnew(xnew,ynew)以及步骤S603求出的相对应的新的物理层模型覆盖半径distnew来更新物理层认证模型Ci-new={Wnew,distnew},至此,物理层信道模型更新完成。
优选地,所述的轻量级密码算法包括流密码算法和分组密码算法。
一种基于边缘计算的终端设备接入认证系统,包括边缘计算服务器和通过网络与边缘计算服务器连接的终端设备;
所述终端设备,用于供用户在边缘计算服务器上进行登录,并通过轻量级密码算法与边缘计算节点完成初始化的相互认证;
所述边缘计算服务器,用于与终端设备交互,基于轻量级密码算法与终端设备完成初始化的相互认证,实现物理层信道认证模型的建立、物理层信道认证以及物理层信道认证模型的更新,并完成基于轻量级密码和物理层信道指纹识别的相互认证,根据认证结果管理终端设备与边缘计算节点的会话通断。
本发明的有益效果是:本发明中边缘计算节点在接收信号时提取信道信息,而终端设备无需增加额外的硬件,这降低了终端设备节点认证的复杂度和开销;将轻量级上层密码算法和物理层信道指纹识别技术相结合,解决了物理层安全理论难于实际应用的问题,实现了在资源不对称的边缘计算系统中的终端设备与边缘计算服务器之间的相互认证,提高了系统身份认证的安全性以及认证率。
附图说明
图1为本发明的方法流程图;
图2为本发明的边缘计算系统初始认证流程图;
图3为本发明的物理层信道认证建模流程图;
图4为本发明的物理层信道认证建模原理图;
图5为本发明的物理层信道认证流程图;
图6为本发明的物理层信道认证原理图;
图7为本发明的上层密码认证流程图;
图8为本发明的物理层信道认证模型更新流程图;
图9为本发明的物理层信道认证模型更新原理图;
图10为本发明的终端设备接入认证成功率示意图。
具体实施方式
下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。
如图1所示,一种基于边缘计算的终端设备接入认证方法,包括以下步骤:
S1.密钥共享:终端设备与边缘计算服务器之间通过安全渠道共享密钥Key;
S2.系统初始化认证:终端设备与边缘计算服务器之间根据密钥Key,通过轻量级密码算法完成相互之间的初始身份认证;
S3.物理层信道认证建模:边缘计算服务器根据相干时间内收集到的信道信息建立物理层信道认证模型;
S4.物理层信道认证:边缘计算服务器根据建立的物理层信道认证模型,从第四帧数据开始通过物理层信道认证技术直接对数据的合法性进行验证;
S5.上层密码认证:在非初始化认证阶段,如果边缘计算服务器接收到的数据帧的合法性无法通过物理层信道模型认证,则启动上层密码认证来判断数据帧的合法性;
S6.物理层信道认证模型更新:当边缘计算服务器在数据帧的相干时间内连续接收到j个数据帧{M’k,M’k+1,…,M’k+(j-1)}都需要启动上层密码来认证数据的合法性时,更新物理层信道认证模型,其中j≥3。
如图2所示,所述步骤S2包括以下子步骤:
S201.终端设备生成一个随机数PS1,用轻量级密码算法加密PS1得到密文Y1=E(key)(PS1),其中,E(key)(PS1)表示利用轻量级密码算法和密钥Key对随机数PS1进行加密计算;
S202.终端设备生成登录请求消息M1并发送给边缘计算服务器,所述请求消息M1包含密文Y1;
S203.边缘计算服务器从接收到的登录请求信号波形中提取信道信息H1,然后解码得到密文Y’1,再用轻量级密码算法解密Y’1得到明文PS1’=D(key)(Y’1),其中,D(key)(Y’1)表示利用轻量级密码算法和密钥Key对密文Y’1进行解密计算,信道信息H1是一个m行n列的复数矩阵;
S204.边缘计算服务器生成两个随机数PS2和PS3,并对PS1’、PS2和PS3进行加密得到密文Y2=E(key)(PS1’||PS2||PS3),然后向终端设备发送响应消息M2,其中M2包含密文Y2;
S205.终端设备验证边缘计算服务器的合法性:终端设备对接收到的响应消息M’2进行解码得到密文Y’2,再进行解密得到明文(PS1’||PS2’||PS3’)=D(key)(Y’2),如果PS1’与PS1不相等,则边缘计算服务器非法,通信终端节点断开连接,转至步骤S201;如果PS1’与PS1相等,则服务器合法,通信终端节点生成两个响应消息M3和M4,并连续发送给边缘计算服务器,进入步骤S206,其中,M3包含密文Y3=E(key)(PS2’),M4包含密文Y4=E(key)(PS3’);
S206.边缘计算服务器验证终端设备的合法性:边缘计算服务器从接收到的响应消息中提取信道信息H2和H3,然后解码得到密文Y’3和Y’4,再解密并得到明文PS2’=D(key)(Y’3)和PS3’=D(key)(Y’4),如果PS2’与PS2相等并且PS3’与PS3相等,则终端设备合法,初始化认证完成;否则通信终端设备不合法,边缘计算节点断开与终端设备的连接,转至步骤S201,其中,H2和H3都是m行n列的复数矩阵,H2表示边缘计算服务器从接收到的响应消息M3中提取的信道信息,H3表示边缘计算服务器从接收到的响应消息M4中提取的信道信息。
其中,所述的轻量级密码算法包括流密码算法和分组密码算法。
如图3~4所示,所述步骤S3包括以下子步骤:
S301.信道信息预处理:由于信道信息H1、H2和H3是m行n列的复数矩阵,故分别将复数矩阵中的实部和虚部的元素取绝对值(或者取平方值)并进行累加,以此求得信道的统计量H’1、H’2和H’3,其中,H’1、H’2和H’3都表示复平面上点,进一步表示为H’1(x1,y1)、H’2(x2,y2)和H’3(x3,y3);
S302.确定物理层认证模型的中心:根据求出的H’1、H’2和H’3进一步求得物理层认证模型的中心W(x,y),其中,x=(min{x1,x2,x3}+max{x1,x2,x3})÷2,y=(min{y1,y2,y3}+max{y1,y2,y3})÷2,min表示取最小值,max表示取最大值;
S303.确定物理层认证模型的覆盖半径:分别求H’1、H’2和H’3到中心W(x,y)的欧氏距离||WH’1||、||WH’2||和||WH’3||,然后取最大的欧氏距离值作为物理层模型的半径R=max{||WH’1||,||WH’2||,||WH’3||},进一步确定物理层模型的覆盖半径为dist=R+θ,其中,θ表示物理层模型覆盖半径的调节因子;
S304.确定物理层认证模型的类别:依据物理层认证模型中心W(x,y)以及物理层模型覆盖半径dist来确定物理层模型的类别Ci={Wi,disti},其中i=1,2,…,表示终端设备的编号,不同的Ci对应于不同的终端设备;至此,物理层信道建模完成。
如图5~6所示,所述步骤S4包括以下子步骤:
S401.边缘计算服务器从接收到的数据帧中提取信道信息Hk,其中,Hk是m行n列的复数矩阵,表示边缘计算服务器从接收到的数据帧M’k中提取的信道信息,k=1,2,…,表示数据帧的编号,所述数据帧M’k包含密文
S402.信道信息预处理:边缘计算服务器将复数矩阵Hk中的实部和虚部的元素取绝对值(或者取平方值)并进行累加,以此求得信道的统计量H’k,其中,H’k表示复平面上点,进一步表示为H’k(xk,yk);
S403.确定数据帧的合法性:计算H’k到每个类别Ci的中心Wi的欧式距离||H’kWi||,然后比较||H’kWi||与disti的大小:如果||H’kWi||仅仅小于其中一个disti,表示H’k属于相应的类别Ci,则H’k对应的数据帧M’k合法;如果||H’kWi||不是仅小于其中一个disti,则进入步骤S5启动上层密码认证步骤。
如图7所示,所述步骤S5包括以下子步骤:
S501.边缘计算服务器从接收到的数据帧M’k中解码得到密文
S502.边缘计算服务器对Y’k进行解密得到明文
S503.确定数据帧的合法性:如果与不相等,则数据帧M’k非法,边缘计算服务器丢弃数据帧M’k;如果与相等,则数据帧M’k合法,边缘计算服务器记录数据帧M’k相对应的信道信息矩阵H’k;当边缘计算服务器在数据帧的相干时间内连续接收到j个数据帧{M’k,M’k+1,…,M’k+(j-1)}都需要启动上层密码来认证数据的合法性的时候,转至步骤S6物理层信道认证模型更新。
如图8~9所示,所述步骤S6包括以下子步骤:
S601.信道信息预处理:依据步骤S503提取相应的信道信息矩阵并进行预处理得到信道的统计量矩阵H’k,H’k+1,…,H’k+(j-1),其中,H’k,H’k+1,…,H’k+(j-1)都表示复平面上点,进一步表示为H’k(xk,yk),H’k+1(xk+1,yk+1),…,H’k+j-1(xk+j-1,yk+j-1);
S602.确定新的物理层模型中心:根据步骤S601求出的H’k(xk,yk),H’k+1(xk+1,yk+1),…,H’k+j-1(xk+j-1,yk+j-1)进一步求得新的物理层模型中心Wnew(xnew,ynew),其中,xnew=(min{xk,xk+1,…,xk+j-1}+max{xk,xk+1,…,xk+j-1})÷2,ynew=(min{yk,yk+1,…,yk+j-1}+max{yk,yk+1,…,yk+j-1})÷2,min表示取最小值,max表示取最大值;
S603.确定新的物理层模型覆盖半径:分别求H’k(xk,yk),H’k+1(xk+1,yk+1),…,H’k+j-1(xk+j-1,yk+j-1)到中心Wnew(xnew,ynew)的欧氏距离||WnewH’k||,||WnewH’k+1||,…,||WnewH’k+j-1||,然后取最大的欧氏距离值作为新的物理层模型半径Rnew=max{||WnewH’k||,||WnewH’k+1||,…,||WnewH’k+j-1||},进一步以确定物理层模型的覆盖半径为distnew=Rnew+θ,其中,θ表示物理层模型覆盖半径的调节因子;
S604.更新物理层认证模型:依据步骤S602求出的新物理层模型中心Wnew(xnew,ynew)以及步骤S603求出的相对应的新的物理层模型覆盖半径distnew来更新物理层认证模型Ci-new={Wnew,distnew},至此,物理层信道模型更新完成。
如图10所示,本发明的终端设备接入认证方法具有较高的物理层信道认证成功率和较低的上层密码认证启动率。终端设备发送数据具有间歇性、短时间内连续性等特点;在相干时间内,数据帧携带的信道信息近似相同;当终端设备移动更换位置后,信道信息也随着变化;不同设备即使在相同位置,信道信息也不一样。物理层信道认证的快速响应,非常适合于资源不对称的边缘计算通信系统,而上层密码认证作为系统接入认证安全的最后一道安全防线,既保证了系统的接入安全,又可以确保整个系统的总接入认证成功率达到百分百的实用需求。
在本申请中,所有符号“⊕”表示同一种运算符号,如异或等;所有符号“||”也表示同一种运算符号,如连接等。
一种基于边缘计算的终端设备接入认证系统,包括边缘计算服务器(也可称作边缘计算节点)和通过网络与边缘计算服务器连接的终端设备;
所述终端设备,用于供用户在边缘计算服务器上进行登录,并通过轻量级密码算法与边缘计算节点完成初始化的相互认证;
所述边缘计算服务器,用于与终端设备交互,基于轻量级密码算法与终端设备完成初始化的相互认证,实现物理层信道认证模型的建立、物理层信道认证以及物理层信道认证模型的更新,并完成基于轻量级密码和物理层信道指纹识别的相互认证,根据认证结果管理终端设备与边缘计算节点的会话通断。
综上,本发明简洁、灵活、不依赖第三方认证机构,能够抵抗重放、假冒、窃听、篡改等常见的攻击;边缘计算节点在接收信号时提取信道信息,而终端设备无需增加额外的硬件,这降低了终端设备节点认证的复杂度和开销;将轻量级上层密码算法和物理层信道指纹识别技术相结合,解决了物理层安全理论难于实际应用的问题,实现了在资源不对称的边缘计算系统中的终端设备与边缘计算服务器之间的相互认证,提高了系统身份认证的安全性以及认证率。
最后需要说明的是,以上所述是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应该看作是对其他实施例的排除,而可用于其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。