面向5G移动边缘计算的安全认证方法及相关设备
文献发布时间:2024-04-18 19:58:30
技术领域
本申请涉及5G通信技术领域,尤其涉及一种面向5G移动边缘计算的安全认证方法及相关设备。
背景技术
5G移动边缘计算(Mobile Edge Computing,MEC)作为一种基于移动通信网络的全新的分布式计算范式出现,是传统云计算网络架构的进一步扩展。5G移动边缘计算正在推动传统集中式数据中心的云计算平台与移动网络的融合,将有一定计算和存储能力的边缘计算服务器部署在靠近数据源或用户的地方为用户提供服务,用户可以通过无线接入网(Radio Access Network,RAN)等网络介质接入。通过这种方式,移动边缘计算能够优化传统云计算架构中网络带宽、实时服务、数据安全隐私等问题,进一步提高网络的服务质量(Quality of Service,QoS)。移动边缘计算允许应用程序在更接近服务请求者的位置执行,以减小用户终端数据和云服务器之间上传和下载的通信时延,提供更迅速的反应和实时性。
目前安全认证方案在5G移动边缘计算环境中存在效率低,安全性不够高等问题,如不能提供足够的安全性保证(包括前向安全、抵抗常见攻击等)、不能提供足够的隐私保护(如用户匿名性、不可追踪性等)、没有保证数据的完整性和保密性等。
发明内容
有鉴于此,本申请的目的在于提出一种面向5G移动边缘计算的安全认证方法及相关设备。
基于上述目的,本申请提供了面向5G移动边缘计算的安全认证方法,包括:
节点设备向密钥生成中心发送注册请求;所述注册请求中携带有节点设备的假名;所述节点设备包括终端设备和边缘服务器;
密钥生成中心接收节点设备发送的注册请求,并将组密钥、对应的私钥和对应的秘密份额发送至所述节点设备;密钥生成中心将节点设备分配至群组中;其中,每个群组包括一个边缘服务器与多个终端设备,每个群组中的所有组播消息均可被所有节点设备访问;
群组中的每个节点设备获取群组中的所有节点设备的令牌;对所有节点设备的令牌的累加值是否符合第一公式进行判断;
响应于确定所述判断结果为不符合,迭代二分缩小群组中的节点设备的数量,并对缩小后的节点设备的令牌的累加值是否符合第一公式进行迭代判断;
响应于确定所述迭代判断结果为符合,则迭代二分缩小后的群组认证通过;或响应于确定所述缩小后的群组中节点设备的数量小于节点设备数量的门槛值,进行缩小后的群组中的边缘服务器与终端设备进行一对一的基于身份的双向认证。
在其中一些实施例中,所述缩小为二分缩小;所述迭代二分缩小群组中的节点设备的数量包括:
每次迭代群组中的所有节点设备的数量为前一迭代时刻的1/2,并向上取整,得到节点设备数量缩小后的群组,直至节点设备数量缩小后的群组的迭代判断结果为符合;或直至所述缩小后的群组中节点设备的数量小于节点设备数量的门槛值。
所述第一公式为
在其中一些实施例中,所述边缘服务器与终端设备进行一对一的基于身份的双向认证包括:
终端设备向边缘服务器发送认证消息,所述认证消息中包括加密信息、签名值和时间戳;
响应于边缘服务器确定所述时间戳在有效期内,边缘服务器用私钥解密所述加密消息,并验证所述签名值的正确性,响应于验证结果为正确,则认证通过。
在其中一些实施例中,所述方法还包括:
响应于确定密钥生成中心接收到新加入的节点设备的注册请求;密钥生成中心将组私钥、对应的私钥和对应的秘密份额发送至所述节点设备;或
响应于确定群组中存在需要删除的终端设备,密钥生成中心对所述秘密添加增量,并将增量分发至所述群组中的除所述需要删除的终端设备之外的所有节点设备;或
响应于确定节点设备的假名过期或暴露,节点设备选取新的假名向群组中的边缘服务器重新注册。
在其中一些实施例中,所述获取群组中的所有节点设备的令牌和随机数包括:
每个节点设备根据对应的秘密份额和xi计算拉格朗日组件;所述秘密份额通过将h2(PIDd)作为变量值代入秘密分发多项式f得到;所述秘密分发多项式f为f(x)=k
每个节点设备随机选取第一随机数和第二随机数,所述第一随机数和所述第二随机数均为质数;每个节点设备根据第一随机数计算第一点坐标,并根据第二随机数计算第二点坐标;每个节点设备根据拉格朗日组件和第一随机数计算令牌,并通过组播消息公开第一点坐标,第二点坐标,xi,令牌和当前时间戳。
在其中一些实施例中,所述对所有节点设备的令牌的累加和随机数的累加的和值是否符合第一公式进行判断之前还包括:
若节点设备的令牌和随机数的时间戳与当前时刻的时间差大于第一阈值,则丢弃所述节点设备的令牌和随机数;
在其中一些实施例中,所述终端设备还用于确定认证后的群组中的边缘服务器,所述终端设备和所述边缘服务器还用于建立会话密钥。
本申请实施例还提供一种面向5G移动边缘计算的安全认证系统,包括节点设备和密钥生成中心;其中,节点设备包括终端设备和边缘服务器:
所述终端设备用于向密钥生成中心发送注册请求;所述注册请求中携带有终端设备的假名;
所述边缘服务器用于向密钥生成中心发送注册请求;所述注册请求中携带有边缘服务器的假名;
所述密钥生成中心用于终端设备或边缘服务器发送的注册请求,并将组密钥、对应的私钥和对应的秘密份额发送至所述终端设备或边缘服务器;
每个所述终端设备或所述边缘服务器还用于获取群组中的所有节点设备的令牌,并对所有节点设备的令牌的累加值是否符合第一公式进行判断;
响应于确定所述判断结果为不符合,所述密钥中心还用于迭代二分缩小群组中的节点设备的数量,所述群组中的节点设备还用于对缩小后的节点设备的令牌的累加值是否符合第一公式进行迭代判断;
响应于确定所述迭代判断结果为符合,则迭代二分缩小后的群组认证通过;或响应于确定所述缩小后的群组中节点设备的数量小于节点设备数量的门槛值,进行缩小后的群组中的边缘服务器与终端设备还用于进行一对一的基于身份的双向认证。
本申请实施例还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使计算机执行如前任一所述方法。
本申请实施例还提供一种计算机程序产品,包括计算机程序指令,当所述计算机程序指令在计算机上运行时,使得计算机执行如前任一项所述的方法。
从上面所述可以看出,本申请提供的面向5G移动边缘计算的安全认证方法,通过基于秘密共享进行群组认证,具有更高的效率和安全隐私性,能够以较低的开销保证安全和隐私性,能够避免现有方案中存在的异步发布、多次试验和重放攻击等问题。
附图说明
为了更清楚地说明本申请或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例的5G移动边缘计算的安全认证系统的示意图;
图2为本申请实施例的KGC架构的示意图;
图3为本申请实施例的面向5G移动边缘计算的安全认证方法的流程图示意图;
图4为本申请实施例的终端设备的注册流程示意图;
图5为本申请实施例的边缘服务器的注册流程示意图;
图6为本申请实施例的群组认证的流程示意图;
图7为本申请实施例的边缘服务器与终端设备进行一对一的双向认证的流程示意图;
图8为验证例1中的程序执行示意图;
图9为验证例1中的验证程序输出的结果示意图;
图10为本申请实施例的电子设备硬件结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本申请进一步详细说明。
需要说明的是,除非另外定义,本申请实施例使用的技术术语或者科学术语应当为本申请所属领域内具有一般技能的人士所理解的通常意义。本申请实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
安全认证协议(Authentication Protocol)是密码学和网络安全的一个重要研究方向。具体来说,安全认证协议指的是两个或者以上的参与者实体采取一系列交互步骤,利用密码学的知识(包括椭圆曲线、双线性对、哈希函数、异或操作等)向通信对方实体证明自己身份的合法性,以达成通讯间的一定的安全性保障。实体间的相互安全认证作为保证边缘计算环境隐私和通讯安全的第一步,通过仅允许认证过的受信任的设备加入网络,能够确保网络为一个可信的安全域,抵抗恶意攻击者对于通信的一系列攻击。不仅边缘设备需要向云端认证自己的身份,同时也要为海量物联网终端提供双向认证服务。5G移动边缘计算环境下的安全认证技术的关键在于以分布式方式实现可扩展性的优势和以安全方式进行高效控制的需求。
由于5G移动边缘计算架构的特点,边缘设备存在较多的安全风险,如何设计一个能够较好处理下述问题的安全认证方案是目前的主要挑战:(1)由于边缘设备多为无线传感器等存储能力受限的小型设备,无法频繁执行复杂的安全计算(如基于双线性对的密码学),这为其带来了更多的脆弱性。(2)所有边缘设备都具有共同的特征(如低成本设计、高隐私要求、高可用性和高信任相关问题),边缘计算环境下终端数量规模大,移动性强,层次复杂,多种安全域并存,数据多源异构,很难实现自我安全保护,且传统安全框架不再适用。(3)由于无线网络的开放性,这使得通过信道传输的消息更容易受到大量的攻击,如身份欺骗、消息窃听、消息篡改等安全问题。(4)由于边缘服务器靠近终端设备,终端用户的隐私(如数据和位置)保护是边缘计算范例中出现的另一个关键问题。例如一些服务应用被托管在网络边缘(如位置感知服务)导致终端设备容易受到基于位置的攻击。(5)部署边缘节点的接入网络异构,可能属于不同的标准并受不同的运营商管理,实现统一的安全认证方案较困难,且接入安全级别可能不一致。(6)边缘服务器的计算能力不如云中心,且无人值守,容易被恶意攻击者破解造成隐私泄露,或是被恶意篡改。(7)在没有稳定电源供应的情况下,边缘设备和边缘服务器的耗能问题也需要被考虑。
目前5G移动边缘计算环境中的安全认证方案主要包括基于公钥基础设施(PublicKey Infrastructure,PKI)的安全认证方案、基于身份的安全认证方案和基于秘密共享的群组认证方案等。
基于公钥基础设施的安全认证方案是最传统的身份认证技术,在此类认证方案中,边缘设备的身份以及公钥信息的合法性由数字证书所保护,其中数字证书由可信的第三方证书颁发机构(Certificate Authority,CA)负责生成。所有边缘设备都拥有证书颁发机构的公钥,因此可以验证其颁发证书的数字签名以确保证书的可信度。边缘设备需要向证书颁发机构发送亲求,之后其为合法边缘设备颁发相互绑定的证书与公钥。边缘设备通过存储大量其他设备的数字证书,并且在需要发送消息时附带自己的数字证书,使得消息的接收者可以通过数字证书来确保身份、公钥的合法性。该种基于证书的安全认证方案由于边缘设备无法随时与证书颁发机构进行安全交互,因此需要消耗大量的存储空间来存储数字证书;并且数字证书的频繁广播会占用信道带宽,从而影响系统效率。因此,基于证书的安全认证方案存在需要公钥基础设施,证书存储开销大、证书管理通信开销大、证书验证计算开销大、设备频繁进出对撤销列表的维护压力大等问题,不适用于大量资源受限设备的5G移动边缘计算环境。
基于身份的安全认证方案中用户的身份信息就可以用做用户的公钥(更加准确地说是用户的公钥可以由用户的身份信息计算得出)。但是该种基于身份的安全认证方案是一对一的方案,当多个终端设备同时向边缘服务器发起安全认证请求时,大量请求数据包会造成网络拥塞,影响服务质量。边缘服务器作为集中式的认证中心,会成为方案中的瓶颈,且容易出现单点故障,造成服务不可用。因此,基于身份的安全认证方案计算和通信开销较大,不适用于大量资源受限设备的5G移动边缘计算环境。
基于秘密共享的群组认证方案中,存在可信第三方首先将秘密值的份额分发给各个参与者,各个参与者收集到所有根据份额生成的令牌后,利用拉格朗日插值法恢复秘密值。若秘密成功恢复,则表示群组内所有成员均合法,认证成功。该种基于秘密共享的群组认证方案由于Shamir秘密共享原理的局限性,在存在非法参与者时群组无法恢复秘密,且其计算、存储效率和安全性也存在一定缺陷,因此该方案无法在存在非法参与者的情况下对组内合法参与者完成认证等问题。
另外,现有的识别群组认证中非法参与者(Cheater Identification)的方案普遍基于暴力遍历等方法,无法高效完成合法成员的认证,难以满足边缘计算的实时性要求,不适用于5G移动边缘计算环境。
因此,目前的安全认证方案在5G移动边缘计算环境中或多或少存在效率不够好,安全性不够高等问题,如不能提供足够的安全性保证(包括前向安全、抵抗常见攻击等)、不能提供足够的隐私保护(如用户匿名性、不可追踪性等)、没有保证数据的完整性和保密性等问题。
基于此,本申请实施例提供了一种面向5G移动边缘计算的安全认证方法及相关设备,通过将群组认证和基于身份的认证方案有机结合,采用两阶段的带有密钥协商和密钥刷新的安全认证方案。能够在一定程度上解决安全认证方案在5G移动边缘计算环境中存在的效率低及安全性不够高等的问题。
本申请实施例提供的面向5G移动边缘计算的安全认证方法,其依赖的系统架构主要包括4类节点,密钥生成中心(Key Generation Center,KGC)、云服务器(Cloud Server,CS)、边缘服务器(Edge Server,ES)和终端设备(End Device,ED)。其中,如图1所示,多级的移动边缘计算架构可以简化为仅有3层的云—边—端架构。其中,云服务器位于远端,终端设备是上述三级云—边—端网络的底层设备,边缘服务器位于靠近终端设备的近端。
其中,密钥生成中心为可信第三方,采用层级架构。如图2所示,KGC架构可以包括一个部署在云端的根KGC和若干部署在边缘层次的次级KGC。通过这种设计,KGC能够对边缘、终端设备的响应更加快速,且方便密钥刷新、撤销和管理等。KGC只负责边缘服务器和终端设备的注册,不参与边缘服务器和终端设备相互身份验证过程,可以放置在云服务器上。
其中,云服务器是部署在远端网络中的大型节点,具有极强的计算、存储能力,是本申请的系统架构中的顶级节点。服务提供商可以在云服务器中部署各式各样的应用服务。本申请所述5G移动边缘计算下的安全认证方案并不涉及云服务器的认证。
其中,边缘服务器是部署在靠近终端设备的网络节点上的有一定存储计算能力的设备,它能够为边缘终端设备和移动端设备提供智能服务,按照网络的不同进行灵活部署。根据边缘终端设备的数量部署计算能力配置高的边缘节点,也可以分布式部署,多台边缘节点服务器协作组成集群式服务。云服务供应商可以在边缘节点服务器上配置相应的应用服务软件以提供实时响应和位置敏感的高速本地智能服务。同时,边缘服务器可以作为中继节点,负责将终端设备的数据预处理后上传到云中心(例如云服务器),提供广泛的服务。
其中,终端设备可以为资源受限设备,包括传感器、监控等。终端设备通过无线网络接入边缘计算网络,如WLAN、蜂窝移动网络等。多个终端设备可以和一个边缘服务器构成群组,从而实现批量认证。
图3示出了本申请实施例的面向5G移动边缘计算的安全认证方法的流程图。
如图3所示,本申请实施例提供的面向5G移动边缘计算的安全认证方法,包括:
S100,节点设备向密钥生成中心发送注册请求;所述注册请求中携带有节点设备的假名;所述节点设备包括终端设备和边缘服务器;
S200,密钥生成中心接收节点设备发送的注册请求,并将组密钥、对应的私钥和对应的秘密份额发送至所述节点设备;密钥生成中心将节点设备分配至群组中;其中,每个群组包括一个边缘服务器与多个终端设备,每个群组中的所有组播消息均可被所有节点设备访问;
S300,群组中的每个节点设备获取群组中的所有节点设备的令牌;对所有节点设备的令牌的累加值是否符合第一公式进行判断;
S400,响应于确定所述判断结果为不符合,迭代二分缩小群组中的节点设备的数量,并对缩小后的节点设备的令牌的累加值是否符合第一公式进行迭代判断;
S500,响应于确定所述迭代判断结果为符合,则迭代二分缩小后的群组认证通过;或响应于确定所述缩小后的群组中节点设备的数量小于节点设备数量的门槛值,进行缩小后的群组中的边缘服务器与终端设备进行一对一的基于身份的双向认证。
本申请实施例提供的面向5G移动边缘计算的安全认证方法,通过基于秘密共享进行群组认证,具有更高的效率和安全隐私性,能够以较低的开销保证安全和隐私性,能够避免现有方案中存在的异步发布、多次试验和重放攻击等问题。
在一些实施例中,在步骤S100之前,还包括:密钥生成中心初始化协议中所需的所有系统参数。通常,密钥生成中心初始化协议中所需的所有系统参数的步骤可以包括:
(1)KGC在非奇异椭圆曲线E/Fp上选择一个阶为q的循环加法群G,生成元为P。其中p、q均为质数。
(2)KGC随机选取s∈Zq*,r∈Zq*,并计算Ppub=sP,R=rP。其中,s为主密钥,r为组密钥,Zq*表示从有限素数域Zq={0,1,…,q-1}去掉零元得到的有限域。
(3)KGC选取6个安全的单向无碰撞哈希函数h1、h2、h3、h4、h5和h6。其中,h1:{0,1}*→Zq*,h2:{0,1}*→Zq*,h3:{0,1}*×G×{0,1}*→Zq*,h4:{0,1}*×{0,1}*×G×G×{0,1}*→Zq*,h5:G×{0,1}*×{0,1}*×G×G→{0,1}*,h6:G→Zq*×G。其中,{0,1}*表示任意比特长度的二进制序列集合,Zq*表示从有限素数域Zq={0,1,…,q-1}去掉零元得到的有限域。
(4)KGC随机选取一个t-1阶多项式f(x)=k
(5)KGC根据网络带宽大小和拥塞情况估算出一个时间窗口Tw。时间窗口的设备可以用于判断任意两次群组认证的时间间隔,在相关判断中,通过确定任意两次群组认证的时间间隔都大于Tw,可以防止重放攻击。
(6)KGC公开系统参数(t,G,P,Ppub,R,Q,h1,h2,h3,h4,h5,Tw),并安全保存主密钥s作为长期主密钥,保存组密钥r作为短期密钥,保存多项式f(x)和k0作为群组认证的秘密。
在其中一些实施例中,参考图4或图5所示,步骤S100中,节点设备(也即边缘服务器或终端设备)首先向根KGC发送注册请求。例如可以通过安全信道将自己的假名PIDd发送给密钥生成中心作为注册请求。其中,节点设备注册阶段与密钥生成中心的所有通信可以均通过安全信道。终端设备和边缘服务器的注册逻辑相同。
在其中一些实施例中,继续参考图4或图5,步骤S200中,密钥生成中心可以包括根密钥生成中心和若干部署在边缘层次的次级密钥生成中心。其中,根KGC将其所属或邻近区域的次级KGC地址返回给边缘服务器或终端设备。后续的密钥分发和管理均由各节点设备的次级KGC负责,包括根据终端设备的身份通过安全信道分发秘密份额和公私钥对、适时进行密钥刷新和撤销等。这样,可以使得KGC能够对边缘、终端设备的响应更加快速,且方便密钥刷新、撤销和管理。这样,即实现了节点设备的注册。
次级KGC可以初始化的系统参数中的主密钥和哈希函数计算节点设备的私钥,具体可以通过SIDi=sh1(PIDi)计算。例如通过式(1)或式(2)计算与节点设备对应的私钥。SIDd=sh1(PIDd)(1)。SIDes=sh1(PIDes)(2)。其中,SIDd为假名为PIDd的节点设备(例如终端设备)对应的私钥;SIDes为假名为PIDes的节点设备(例如边缘服务器)对应的私钥;s为主密钥,h1和h2分别为KGC选取的单向无碰撞哈希函数。此外,次级KGC还可以将h2(PIDd)作为变量值代入初始化的系统参数中的秘密分发多项式f中,获取到假名为PIDd的节点设备对应的秘密份额f(h2(PIDd))。次级KGC还可以将h2(PIDes)作为变量值代入初始化的系统参数中的秘密分发多项式f中,获取到假名为PIDes的节点设备对应的秘密份额f(h2(PIDes))。次级密钥生成中心可以通过安全信道将组密钥r、对应的私钥SIDi(例如SIDd或SIDes),和秘密份额f(h2(PIDi))(例如f(h2(PIDd)或f(h2(PIDes))发回给终端设备。
在其中一些实施例中,次级密钥生成中心可以根据边缘服务器和终端设备的区域,将所属同一边缘域内的节点(包括一个边缘服务器及若干个终端设备)划分为一个群组,使用同一多项式为其分发秘密。也即,群组中的所有节点设备在同一附近,并且具有强大的短距离通信协议,如WLAN、蜂窝网络等,其中所有组播消息都可以被所有参与者节点访问。一次认证的群组必须包含有且只有一个边缘服务器(也即边缘域中对应的服务器)。应当说明的是,一个边缘服务器往往管理大量终端设备,同一边缘服务器也可以属于不同的认证群组。
在其中一些实施例中,步骤S300中,所述获取群组中的所有节点设备的令牌可以包括:
每个节点设备根据对应的秘密份额和xi计算拉格朗日组件。其中,所述秘密份额通过将h2(PIDi)作为变量值代入秘密分发多项式f得到;所述秘密分发多项式如前所述,f为f(x)=k
每个节点设备随机选取第一随机数和第二随机数,所述第一随机数和所述第二随机数均为质数;每个节点设备根据第一随机数计算第一点坐标,并根据第二随机数计算第二点坐标;每个节点设备根据拉格朗日组件和第一随机数计算令牌,并通过组播消息公开第一点坐标,第二点坐标,xi,令牌和当前时间戳。其中,第一点坐标为系统初始化后的参数中的非奇异椭圆曲线上的点的点坐标;第二点坐标为系统初始化后的参数中的非奇异椭圆曲线上的点的点坐标。
在实际应用中,公开的消息可以为(xi,Vi,Ai,token,Ti)的形式。其中,第一随机数和第二随机数可以分别为vi和ai。其中,vi∈Zq*,ai∈Zq*。根据第一随机数计算第一点坐标可以通过式(3)进行。根据第二随机数计算第二点坐标可以通过式(4)进行。Vi=viP(3)Ai=aiP(4)。其中,Vi为系统初始化后的参数中的非奇异椭圆曲线E/Fp上的点,为点坐标的形式,Ai为系统初始化后的参数中的非奇异椭圆曲线E/Fp上的点,为点坐标的形式。根据拉格朗日组件和第一随机数计算令牌可以通过式(5)进行。
其中,所述第一公式为
对所有节点设备的令牌的累加和随机数的累加的和值是否符合第一公式进行判断可以理解为:
累加群组中的所有节点设备的令牌,得到令牌累加值;
判断令牌累加值是否与系统参数中的Q和计算得到的第一点坐标的累加值的和值相同。也即,验证下述的式子是否成立。如果该式成立,则确定群组中的所有设备节点均为合法认证设备。至此,即实现了群组的认证。如果该式不成立,则转入步骤S400中。
在其中一些实施例中,在进行累加群组中的所有节点设备的令牌之前,还可以包括,计算节点设备的令牌和随机数的时间戳与当前时刻的时间差,若所述时间差大于第一阈值,则丢弃所述节点设备的令牌和随机数。这样,可以防止重放攻击。
在其中一些实施例中,还可以包括在实现了群组的认证后,确定群组中的边缘服务器,建立终端设备与边缘服务器的会话密钥。
具体地,终端设备i可以根据认证后的群组中的各个节点设备的身份信息xj确定群组中的边缘服务器;终端设备i利用自身的随机数ai和收到的Aes(也即边缘服务器的Aj)计算与边缘服务器ES的会话密钥SK,例如通过式SK=a
在步骤S400中,所述迭代二分缩小群组中的节点设备的数量可以包括:
每次迭代群组中的所有节点设备的数量为前一迭代时刻的1/2,并向上取整,得到节点设备数量缩小后的群组,直至节点设备数量缩小后的群组的迭代判断结果为符合;或直至所述缩小后的群组中节点设备的数量小于节点设备数量的门槛值。
可以理解为,当单次群组认证失败后,进行二分搜索认证。通过不断二分缩小群组大小,可以对未认证成功的组继续细分进行组认证,直到组员数小于门槛值t,无法继续进行群组认证。这样,可以尽可能多地使用群组认证完成对合法参与者的身份认证,并缩小非法参与者的存在范围。通过该方案实现的非法参与者识别算法效率较高,在最好情况下计算复杂度可以接近O(logn),也不易出现最坏情况,避免使方案复杂度退化到O(n
在实际应用中,如图6所示,假设群组中共10个设备节点(1-10号,5号为恶意节点,也即m为10),设定门槛值t为3(即秘密共享使用2阶多项式)。那么,首先对10个设备节点进行认证,也即①对群组认证1-10号成员,结果为认证失败。②将群组中的设备节点大小m缩小为10/2=5,先认证1-5号的群组,认证结果为失败;再认证6-10号的群组,认证结果为成功。③将再次认证失败的群组,也即对于成员为1-5号的群组,将群组的成员数缩小为5/2=3。先认证成员为1-3号的群组,认证结果为成功。④对于成员为4-5号的群组,判断群组中组员数小于3,转入下一步骤,直接进入边缘服务器与终端设备进行一对一的双向认证。
相比于基于遍历等暴力法的现有方案,该种基于二分搜索认证的方法,能够在非法参与者较少的情况下接近O(logn)的复杂度,显著提高合法参与者的认证效率,并定位非法参与者。
在其中一些实施例中,如图7所示,步骤S500中,所述边缘服务器与终端设备进行一对一的双向认证包括:
终端设备向边缘服务器发送认证消息,所述认证消息中包括加密信息、签名值和时间戳。其中,加密信息可以为式N=h6(V)⊕(h1(PIDd)||X)。其中,h6和h1分别为KGC选取的单向无碰撞哈希函数。V=vPpub,V为加密随机数。v为终端设备在有限域Zq*中选取的随机数,Ppub为主公钥。⊕代表异或运算。PIDd为终端设备的假名。X为公钥。X=xP,其中,x为在有限域Zq*中选取的随机数。签名值可以为式σ=SIDd+xh3(h1(PIDd)||X||Td)。其中,SIDd为假名为PIDd的终端设备对应的私钥。Td为当前时间戳。
响应于边缘服务器确定所述时间戳在有效期内,边缘服务器用私钥解密所述加密消息,并验证所述签名值的正确性,响应于验证结果为正确,则认证通过。具体地,边缘服务器可以根据自己的私钥解密加密信息,并判断计算出的解密随机数,是否与加密随机数相同。具体地,可以通过式V’=s·h1(PIDes)·h1(PIDes)
本申请中,边缘服务器与终端设备进行一对一的双向认证方案不涉及耗时的双线性对操作,仅需一轮交互即可完成身份认证和密钥协商,能够以较低的开销保证安全和隐私性,能够避免现有方案中存在的冒充等攻击和计算效率等问题。
在其中一些实施例中,验证签名值的正确性可以包括:边缘服务器计算PKd=h1(PIDd)’Ppub,通过判断σP=PKd+h3(h1(PIDd)’||X’||Td)X’是否成立,确定是否验证成功。如果计算得到P=SIDd·P+xh3(h1(PIDd)||X||Td)·P=s·h1(SIDd)·P+h3(h1(PIDd)||X||Td)·x·P=h1(PIDd)Ppub+h3(h1(PIDd)||X||Td)Ppub=PKd+h3(h1(PIDd)||X||Td)Ppub,则等式成立,验证成功。若验证成功,则开始进行密钥协商。如果σ等式不成立则边缘服务器丢弃该认证请求,结束流程。
在其中一些实施例中,密钥协商可以包括边缘服务器计算会话密钥,并将包含会话密钥信息,公钥和时间戳的协商消息发送至终端设备。具体地,边缘服务器将协商消息(t,Y,Tes)发给终端设备。其中,t=h4(h1(PIDd)’||h1(PIDes)||X’||Y||Tes),其中Tes为当前时间戳。Kes-d=ytX’+SIDesPKd。y为边缘服务器选取的随机数,Y为公钥,Y=yP。会话密钥SKes-d=h5(Kes-d||h1(PIDd)’||h1(PIDes)||X’||Y)。
终端设备验证接收到的协商消息中时间戳有效后,计算会话密钥,响应于确定终端设备计算的会话密钥与协商消息中的会话密钥相同,则实现会话密钥的建立。具体地,当终端设备计算得到Kd-es等于xtyP+SIDd·h1(PIDes)·s·P=ytX+SIDdSIDesP=ytX+SIDesPKd=Kes-d后,则得到Kd-es=xtY+SIDd·h1(PIDes)·Ppub后,则可以认为验证得到t等于h4(h1(PIDd)||h1(PIDes)||X||Y||Tes)。这样,边缘设备计算的会话密钥SKd-es=h5(Kd-es||h1(PIDd)||h1(PIDes)||X||Y)就等于SKes-d,即认证双方成功协商出相等的会话密钥,会话成功建立,认证流程结束。
在其中一些实施例中,本申请实施例面向5G移动边缘计算的安全认证方法还可以包括:
响应于确定密钥生成中心接收到新加入的节点设备的注册请求;密钥生成中心将组私钥、对应的私钥和对应的秘密份额发送至所述节点设备;或
响应于确定群组中存在需要删除的终端设备,密钥生成中心对所述秘密添加增量,并将增量分发至所述群组中的除所述需要删除的终端设备之外的所有节点设备;或
响应于确定节点设备的假名过期或暴露,节点设备选取新的假名向群组中的边缘服务器重新注册。
应当理解的是,由于实施例面向5G移动边缘计算的安全认证方法所需时间短,因此,可以认为在认证过程中设备数量和序号保持静态,即设备的加入、离开或撤销仅发生在非认证时段。
具体地,终端设备加入群组的处理可以为:新加入的终端设备向KGC注册,获取分发的秘密份额share和私钥SIDi,以及组私钥v。终端设备离开群组或非法节点的撤销处理可以为:KGC随机选取增量Δk0∈Zq*,对秘密k0加上增量Δk0,并把Δk0发给除了被撤销的设备外的其他所有群组成员。每个群组成员将自己的秘密份额加上增量Δk0,获得更新后的秘密份额。终端设备重新注册处理可以为:若PID过期、暴露,节点可以选取新的PID向物理域内的KGC重新注册。
与基于公钥基础设施的安全认证方案相比,本申请实施例的方法更适用于5G移动边缘计算环境,能够为海量资源受限的边缘设备提供高效快速的身份认证。由于本申请实施例的方法无需证书管理,因此显著降低了设备的计算、存储和通信开销,有助于促进实时性和低功耗性。
与基于身份的安全认证方案相比,本申请实施例的方法以群组认证作为认证第一阶段,能够避免传统集中式方案中存在的网络拥塞和瓶颈问题,分布式批量地完成合法参与者的身份认证。此外,本申请实施例的方法不采用复杂的密码学操作(如双线性映射等),计算和通信效率极高。
与其他基于秘密共享的群组认证方案相比,本申请实施例的方法提出了一种新颖的二分搜索非法参与者识别算法。在存在非法参与者的情况下,现有方案会退化为依次执行一对一认证,而本方案能够尽可能多地完成批量认证,减少一对一认证的次数,显著提高计算和通信效率。
验证例1
使用Verifpal分析方案安全性,并给出验证结果。
验证程序执行输出较长,因此仅截取部分。如图8所示,软件对本程序进行了分阶段、分层次的推理和分析,遍历了所有可能的攻击场景,例如程序会试图解密或重放实体发送的消息等。
输出结果如图9所示,验证程序给出结果“All queries pass”,意味着定义的所有安全属性需求都被达成,方案实现了安全设计目标。
验证例2
以Harn的第一种群组认证方案为例,操作基于模p的有限域Zp。每个边缘设备在秘密公开阶段计算拉格朗日组件时,首先将m-1个数-x
在之后的秘密恢复阶段,每个边缘设备将所有参与者的m个令牌累加以恢复秘密,最后将恢复的秘密进行哈希操作以验证结果,此步骤共计(m-1)次模加法操作和1次哈希操作。
故总操作数为:(2(m-1)+2)模p乘+1模p逆+(m-1)模p加+1哈希,总计算时间近似类比为(82m+9758)次模q乘法操作。
其他方案也使用相同的计算方法和相近的标准,计算和比较结果如表1所示:
表1步骤S300中的终端设备计算开销对比
可以看到,本事情实施例的方法中没有运用到耗时的Map-to-Point哈希操作以及双线性对操作,根据估算计算量小于Harn的GAS2和GAS3,远小于Chien的方案。虽然本方案计算量略大于Aydin的方案,但是本方案提供了额外的安全性保障,即能够对异步公开攻击的防御。本方案在终端设备仅需要很少的计算量,因此更加轻量化,更适用于快速的边缘计算IoMT环境。
需要说明的是,本申请实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本申请实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
需要说明的是,上述对本申请的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种面向5G移动边缘计算的安全认证系统。
参考图1,所述面向5G移动边缘计算的安全认证系统,包括节点设备,和密钥生成中心;其中,节点设备包括终端设备和边缘服务器:
所述终端设备用于向密钥生成中心发送注册请求;所述注册请求中携带有终端设备的假名;
所述边缘服务器用于向密钥生成中心发送注册请求;所述注册请求中携带有边缘服务器的假名;
所述密钥生成中心用于终端设备或边缘服务器发送的注册请求,并将组密钥、对应的私钥和对应的秘密份额发送至所述终端设备或边缘服务器;并将节点设备分配至群组中;
每个所述终端设备或所述边缘服务器还用于获取群组中的所有节点设备的令牌,并对所有节点设备的令牌的累加值是否符合第一公式进行判断;
响应于确定所述判断结果为不符合,所述密钥中心还用于迭代二分缩小群组中的节点设备的数量,所述群组中的节点设备还用于对缩小后的节点设备的令牌的累加值是否符合第一公式进行迭代判断;
响应于确定所述迭代判断结果为符合,则迭代二分缩小后的群组认证通过;或响应于确定所述缩小后的群组中节点设备的数量小于节点设备数量的门槛值,进行缩小后的群组中的边缘服务器与终端设备还用于进行一对一的基于身份的双向认证。
在其中一些实施例中,所述缩小为二分缩小;所述迭代二分缩小群组中的节点设备的数量包括:
每次迭代群组中的所有节点设备的数量为前一迭代时刻的1/2,并向上取整,得到节点设备数量缩小后的群组,直至节点设备数量缩小后的群组的迭代判断结果为符合;或直至所述缩小后的群组中节点设备的数量小于节点设备数量的门槛值。
所述第一公式为
在其中一些实施例中,所述边缘服务器与终端设备进行一对一的双向认证包括:
终端设备向边缘服务器发送认证消息,所述认证消息中包括加密信息、签名值和时间戳;
响应于边缘服务器确定所述时间戳在有效期内,边缘服务器用私钥解密所述加密消息,并验证所述签名值的正确性,响应于验证结果为正确,则认证通过。
在其中一些实施例中,所述方法还包括:
响应于确定密钥生成中心接收到新加入的节点设备的注册请求;密钥生成中心将组私钥、对应的私钥和对应的秘密份额发送至所述节点设备;或
响应于确定群组中存在需要删除的终端设备,密钥生成中心对所述秘密添加增量,并将增量分发至所述群组中的除所述需要删除的终端设备之外的所有节点设备;或
响应于确定节点设备的假名过期或暴露,节点设备选取新的假名向群组中的边缘服务器重新注册。
在其中一些实施例中,所述获取群组中的所有节点设备的令牌和随机数包括:
每个节点设备根据对应的秘密份额和xi计算拉格朗日组件;所述秘密份额通过将h2(PIDd)作为变量值代入秘密分发多项式f得到;所述秘密分发多项式f为f(x)=k
每个节点设备随机选取第一随机数和第二随机数,所述第一随机数和所述第二随机数均为质数;每个节点设备根据第一随机数计算第一点坐标,并根据第二随机数计算第二点坐标;每个节点设备根据拉格朗日组件和第一随机数计算令牌,并通过组播消息公开第一点坐标,第二点坐标,身份信息xi,令牌和当前时间戳。
在其中一些实施例中,所述对所有节点设备的令牌的累加和随机数的累加的和值是否符合第一公式进行判断之前还包括:
若节点设备的令牌和随机数的时间戳与当前时刻的时间差大于第一阈值,则丢弃所述节点设备的令牌和随机数;
在其中一些实施例中,所述终端设备还用于确定认证后的群组中的边缘服务器,所述终端设备和所述边缘服务器还用于建立会话密钥。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本申请时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述任一实施例中相应的面向5G移动边缘计算的安全认证方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上任意一实施例所述的面向5G移动边缘计算的安全认证方法。
图10示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述任一实施例中相应的面向5G移动边缘计算的安全认证方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的面向5G移动边缘计算的安全认证方法。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的面向5G移动边缘计算的安全认证方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例所述的面向5G移动边缘计算的安全认证方法相对应的,本公开还提供了一种计算机程序产品,其包括计算机程序指令。在一些实施例中,所述计算机程序指令可以由计算机的一个或多个处理器执行以使得所述计算机和/或所述处理器执行所述的面向5G移动边缘计算的安全认证方法。对应于所述的面向5G移动边缘计算的安全认证方法各实施例中各步骤对应的执行主体,执行相应步骤的处理器可以是属于相应执行主体的。
上述实施例的计算机程序产品用于使所述计算机和/或所述处理器执行如上任一实施例所述的面向5G移动边缘计算的安全认证方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本申请的范围(包括权利要求)被限于这些例子;在本申请的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本申请实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本申请实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本申请实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本申请实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本申请的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本申请实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本申请的具体实施例对本申请进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本申请实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本申请实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本申请的保护范围之内。
- 5G边缘计算下基于深度学习的提高安全认证的方法
- 面向地铁场景高可靠低时延业务的5G边缘计算方法和装置