CN117811726A - 数据处理方法、装置、设备及可读存储介质 - Google Patents
数据处理方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN117811726A CN117811726A CN202211173891.1A CN202211173891A CN117811726A CN 117811726 A CN117811726 A CN 117811726A CN 202211173891 A CN202211173891 A CN 202211173891A CN 117811726 A CN117811726 A CN 117811726A
- Authority
- CN
- China
- Prior art keywords
- key
- target
- cache
- network device
- active
- 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.)
- Pending
Links
- 238000003860 storage Methods 0.000 title claims abstract description 38
- 238000003672 processing method Methods 0.000 title abstract description 21
- 238000000034 method Methods 0.000 claims description 70
- 238000012545 processing Methods 0.000 claims description 51
- 230000006870 function Effects 0.000 claims description 35
- 238000004891 communication Methods 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 18
- 238000004422 calculation algorithm Methods 0.000 claims description 15
- 238000005516 engineering process Methods 0.000 abstract description 22
- 238000013473 artificial intelligence Methods 0.000 abstract description 3
- 230000005540 biological transmission Effects 0.000 description 25
- 238000010586 diagram Methods 0.000 description 25
- 238000007726 management method Methods 0.000 description 25
- 230000008569 process Effects 0.000 description 22
- 238000012217 deletion Methods 0.000 description 14
- 230000037430 deletion Effects 0.000 description 14
- 230000003993 interaction Effects 0.000 description 10
- 238000012423 maintenance Methods 0.000 description 10
- 238000013507 mapping Methods 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 230000033228 biological regulation Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种数据处理方法、装置、设备及可读存储介质,可以应用于云技术、人工智能、智慧交通等各种场景,包括:第一网络设备接收加密数据;加密数据是第二网络设备通过第一活跃秘钥表中的目标秘钥进行加密的数据,第一活跃秘钥表存储在第二网络设备中;若在第二活跃秘钥表中未查询到目标秘钥,则向边缘服务器发送秘钥查询请求,以使边缘服务器在全量秘钥表中获取目标秘钥;第二活跃秘钥表存储在第一网络设备中;全量秘钥表包含第一活跃秘钥表中的秘钥和第二活跃秘钥表中的秘钥;接收边缘服务器发送的目标秘钥,通过从边缘服务器中获取到的目标秘钥对加密数据进行解密,得到解密数据。采用本发明,可以减少秘钥更新带来的数据损失。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据处理方法、装置、设备及可读存储介质。
背景技术
现有方案中,两台网络设备在传输数据的时候,为了数据的安全性,通常会采用加密隧道的方式进行传输,加密隧道的过程需要发送数据端对报文进行加密,接收数据端对报文进行解密,因此两台网络设备必须都具备这种隧道的加解密能力,即两台网络设备通常会部署有相同的加密协议来进行互通。
加密协议中,加解密双方交互最重要的点就是秘钥,在传统方案中通常是由网络运维人员在两台网络设备上配置相同的加密协议和秘钥。但是秘钥在使用的过程中可能会通过各种途径泄露出去,若加解密双方长期甚至永久使用同一秘钥,数据传输的安全性会大大降低。因此网络运维人员需要定期对两台网络设备中的秘钥进行更新。可以理解,秘钥的更新过程是非原子的,即会出现两台网络设备中的秘钥不相同的情况,因此在更新过程中容易出现部分加密数据无法解析的情况,从而导致数据损失。
发明内容
本申请实施例提供了一种数据处理方法、装置、设备及可读存储介质,可以提高网络设备传输数据的安全性,减少秘钥更新带来的数据损失。
本申请实施例一方面提供了一种数据处理方法,包括:
第一网络设备接收加密数据;加密数据是第二网络设备通过第一活跃秘钥表中的目标秘钥进行加密的数据;第一活跃秘钥表存储在第二网络设备中;
若在第二活跃秘钥表中未查询到目标秘钥,则向边缘服务器发送秘钥查询请求,以使边缘服务器在全量秘钥表中获取目标秘钥;第二活跃秘钥表存储在第一网络设备中;全量秘钥表包含第一活跃秘钥表中的秘钥和第二活跃秘钥表中的秘钥;
接收边缘服务器发送的目标秘钥,通过从边缘服务器中获取到的目标秘钥对加密数据进行解密,得到解密数据。
本申请实施例一方面提供了一种数据处理方法,包括:
第一网络设备接收加密数据;加密数据是第二网络设备通过第一活跃秘钥表中的目标秘钥进行加密的数据;第一活跃秘钥表存储在第二网络设备中;
若在第二活跃秘钥表中查询到目标秘钥,则通过目标秘钥对加密数据进行解密,得到解密数据;第二活跃秘钥表存储在第一网络设备中;目标秘钥为与目标秘钥相同的秘钥;
若在第二活跃秘钥表中未查询到目标秘钥,则在全量秘钥表中获取第二目标秘钥;全量秘钥表存储在第一网络设备中;第二目标秘钥为与目标秘钥相同的秘钥;全量秘钥表包含第一活跃秘钥表中的秘钥和第二活跃秘钥表中的秘钥;
通过第二目标秘钥对加密数据进行解密,得到解密数据。
本申请实施例一方面提供了一种数据处理装置,包括:
数据接收模块,用于接收加密数据;加密数据是第二网络设备通过第一活跃秘钥表中的目标秘钥进行加密的数据;第一活跃秘钥表存储在第二网络设备中;
第一查询模块,用于若在第二活跃秘钥表中未查询到目标秘钥,则向边缘服务器发送秘钥查询请求,以使边缘服务器在全量秘钥表中获取目标秘钥;第二活跃秘钥表存储在第一网络设备中;全量秘钥表包含第一活跃秘钥表中的秘钥和第二活跃秘钥表中的秘钥;
第一解密模块,用于接收边缘服务器发送的目标秘钥,通过从边缘服务器中获取到的目标秘钥对加密数据进行解密,得到解密数据。
其中,第二活跃秘钥表包含一个或多个秘钥索引,以及一个或多个秘钥索引分别映射的秘钥;
上述数据处理装置,还包括:
索引接收模块,用于接收目标秘钥索引;
第二查询模块,用于查询第二活跃秘钥表中的一个或多个秘钥索引;
第二查询模块,还用于若在一个或多个秘钥索引中未查询到与目标秘钥索引相同的秘钥索引,则确定在第二活跃秘钥表中未查询到目标秘钥。
其中,上述数据处理装置,还包括:
第二解密模块,用于若在一个或多个秘钥索引中查询到与目标秘钥索引相同的秘钥索引,则从第二活跃秘钥表中获取与目标秘钥索引相同的秘钥索引映射的秘钥,作为目标秘钥;
第二解密模块,还用于通过从第二活跃秘钥表中获取到的目标秘钥对加密数据进行解密,得到解密数据。
其中,上述数据处理装置,还包括:
获取模块,用于获取缓存秘钥索引列表;缓存秘钥索引列表中包含有一个或多个缓存秘钥索引;
第三查询模块,用于查询缓存秘钥索引列表中的一个或多个缓存秘钥索引;
第四解密模块,用于若在一个或多个缓存秘钥索引查询到与目标秘钥索引相同的缓存秘钥索引,则在秘钥缓存区域中获取与目标秘钥索引相同的缓存秘钥索引映射的缓存秘钥,作为目标秘钥;秘钥缓存区域中存储有一个或多个缓存秘钥索引分别映射的缓存秘钥;
第四解密模块,还用于通过从秘钥缓存区域中获取到的目标秘钥对加密数据进行解密,得到解密数据;
第三查询模块,还用于若在一个或多个缓存秘钥索引未查询到与目标秘钥索引相同的缓存秘钥索引,则调用第一查询模块执行向边缘服务器发送秘钥查询请求的步骤。
其中,上述数据处理装置还包括:
第一缓存更新模块,用于将一个或多个缓存秘钥索引中与目标秘钥索引相同的缓存秘钥索引,作为待移动缓存秘钥索引;
第一缓存更新模块,还用于在缓存秘钥索引列表中将待移动缓存秘钥索引转移至缓存秘钥索引列表的列表头部。
其中,上述数据处理装置,还包括:
第二缓存更新模块,用于确定缓存秘钥索引列表中的缓存秘钥索引数量;
第二缓存更新模块,还用于若缓存秘钥索引数量等于缓存秘钥索引数量阈值,则将位于缓存秘钥索引列表的列表尾部的缓存秘钥索引,作为待删除缓存秘钥索引;
第二缓存更新模块,还用于在秘钥缓存区域中删除待删除缓存秘钥索引映射的缓存秘钥,得到更新后的秘钥缓存区域;
第二缓存更新模块,还用于删除缓存秘钥索引列表中的待删除缓存秘钥索引,得到更新后的缓存秘钥索引列表;
第二缓存更新模块,还用于将目标秘钥索引插入更新后的缓存秘钥索引列表的列表头部,将目标秘钥存储进更新后的秘钥缓存区域中;
第二缓存更新模块,还用于若缓存秘钥索引数量小于缓存秘钥索引数量阈值,则将目标秘钥索引插入缓存秘钥索引列表的列表头部,将目标秘钥存储进秘钥缓存区域中。
其中,上述数据处理装置,还包括:
秘钥添加模块,用于若边缘服务器在全量秘钥表中新增更新秘钥,则接收边缘服务器转发的秘钥添加指令;秘钥添加指令中包含更新秘钥;秘钥添加指令是由云端控制器生成,且由云端控制器发送至边缘服务器的添加指令;
秘钥添加模块,还用于根据秘钥添加指令,将更新秘钥添加至第二活跃秘钥表中。
其中,上述数据处理装置,还包括:
秘钥删除模块,用于接收边缘服务器转发的秘钥删除指令;秘钥删除指令中包含待删除秘钥;秘钥删除指令是由云端控制器生成,且由云端控制器发送至边缘服务器的删除指令;
秘钥删除模块,还用于在第二活跃秘钥表中,删除与待删除秘钥相同的秘钥;边缘服务器中的全量秘钥表继续存储有与待删除秘钥相同的秘钥。
其中,目标秘钥包含加密字符串和加密算法;
第一解密模块,包括:
接收单元,用于接收边缘服务器发送的目标秘钥;
获取单元,用于从边缘服务器中获取到的目标秘钥中获取加密字符串和加密算法;
运算单元,用于根据加密算法和加密字符串对加密数据进行解密运算,得到加密数据。
其中,上述数据处理装置,还包含控制组件和虚拟网络功能组件;控制组件用于接收加密协议配置指令;加密协议配置指令是目标对象通过云端控制器生成的指令;加密协议配置指令用于指示控制组件通知虚拟网络功能组件配置加密协议;配置有加密协议的虚拟网络功能组件具有通过目标秘钥进行数据解密的功能。
本申请实施例一方面提供了一种数据处理装置,包括:
接收模块,用于接收加密数据;加密数据是第二网络设备通过第一活跃秘钥表中的目标秘钥进行加密的数据;第一活跃秘钥表存储在第二网络设备中;
第一查询模块,用于若在第二活跃秘钥表中查询到目标秘钥,则通过目标秘钥对加密数据进行解密,得到解密数据;第二活跃秘钥表存储在第一网络设备中;目标秘钥为与目标秘钥相同的秘钥;
第二查询模块,用于若在第二活跃秘钥表中未查询到目标秘钥,则在全量秘钥表中获取第二目标秘钥;全量秘钥表存储在第一网络设备中;第二目标秘钥为与目标秘钥相同的秘钥;全量秘钥表包含第一活跃秘钥表中的秘钥和第二活跃秘钥表中的秘钥;
解密模块,用于通过第二目标秘钥对加密数据进行解密,得到解密数据。
本申请实施例一方面提供了一种计算机设备,包括:处理器、存储器、网络接口;
上述处理器与上述存储器、上述网络接口相连,其中,上述网络接口用于提供数据通信网元,上述存储器用于存储计算机程序,上述处理器用于调用上述计算机程序,以执行本申请实施例中的方法。
本申请实施例一方面提供了一种计算机可读存储介质,上述计算机可读存储介质中存储有计算机程序,上述计算机程序适于由处理器加载并执行本申请实施例中的方法。
本申请实施例一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例中的方法。
本申请实施例中,第一网络设备接收加密数据,若在第二活跃秘钥表中未查询到目标秘钥,则向边缘服务器发送秘钥查询请求,以使边缘服务器在全量秘钥表中获取目标秘钥;接收边缘服务器发送的目标秘钥,通过从边缘服务器中获取到的目标秘钥对加密数据进行解密,得到解密数据。其中,加密数据是指第二网络设备通过第一活跃秘钥表中的目标秘钥进行加密的数据,第一活跃秘钥表存储在第二网络设备中,第二活跃秘钥表存储在第一网络设备中,全量秘钥表包含第一活跃秘钥表中的秘钥和第二活跃秘钥表中的秘钥。采用本申请实施例提供的方法,第一网络设备在接收到加密数据后会先通过本地存储的第一活跃秘钥表来查询目标秘钥,如果第二网络设备中的第二活跃秘钥表由于秘钥更新和第一活跃秘钥表不相同,从而导致第一网络设备在第一活跃秘钥表中查询不到目标秘钥,此时第一网络设备可以向边缘服务器发送秘钥查询请求,因为边缘服务器中的全量秘钥表会记录第一网络设备和第二网络设备中存储的秘钥,因此可以保证第一网络设备在接收到第二网络设备的加密数据时,可以获取到目标秘钥来进行解密,减少秘钥更新带来的数据损失,进一步地,就可以随时对网络设备进行秘钥更新,从而提高网络设备传输数据的安全性。
附图说明
图1是本申请实施例提供的一种网络架构示意图;
图2a是本申请实施例提供的一种秘钥管理的应用场景示意图;
图2b是本申请实施例提供的一种加密传输的应用场景示意图;
图3是本申请实施例提供的一种数据处理方法的流程示意图;
图4是本申请实施例提供的一种秘钥管理的架构示意图;
图5是本申请实施例提供的一种数据处理方法的流程示意图;
图6a是本申请实施例提供的一种缓存秘钥索引列表与缓存秘钥区域的管理示意图;
图6b是本申请实施例提供的一种缓存秘钥索引列表更新的场景示意图;
图6c是本申请实施例提供的一种缓存秘钥索引列表更新的场景示意图;
图7是本申请实施例提供的一种数据交互示意图;
图8是本申请实施例提供的另一种秘钥管理的架构示意图;
图9是本申请实施例提供的一种数据处理方法的流程示意图;
图10是本申请实施例提供的一种数据处理装置的结构示意图;
图11是本申请实施例提供的一种计算机设备的结构示意;
图12是本申请实施例提供的另一种数据处理装置的结构示意图;
图13是本申请实施例提供的另一种计算机设备的结构示意图。
具体实施方式
为便于理解,以下先对本申请涉及的网络概念进行阐述:
云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云技术(Cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
云计算(cloud computing)指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。云计算是网格计算(Grid Computing)、分布式计算(DistributedComputing)、并行计算(Parallel Computing)、效用计算(Utility Computing)、网络存储(Network StorageTechnologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机和网络技术发展融合的产物。
随着互联网、实时数据流、连接设备多样化的发展,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,云计算迅速发展起来。不同于以往的并行分布式计算,云计算的产生从理念上将推动整个互联网模式、企业管理模式发生革命性的变革。
网络功能虚拟化(Network Functions Virtualization,NFV):是一种对于网络架构(network architecture)的概念,在NFV网络中,采用了x86(The X86architecture)服务器的架构,它将路由器、交换机、防火墙、负载均衡这些不同的网络功能封装成独立的模块化软件,通过在硬件设备上运行不同的模块化软件,在单一硬件设备上实现多样化的网络功能。
NFV架构由基础网络功能虚拟化架构、虚拟网络功能、管理自动化及网络编排三个部分组成:
基础网络虚拟化架构(Network Functions Virtualization Infrastructure,NFVI),NFVI就好比各手机厂商推出的供终端设备使用的系统,它给通用硬件设备赋予基本的组件,支持网络应用所需要的软件或者容器管理平台。
虚拟网络功能(Virtual Network Functions,VNF),VNF是实现网络功能(转发服务、网络互连协议配置等)的软件应用,就好比终端设备上的应用程序(Application,APP)。在NFV架构中,各种VNF在NFVI的基础上实现。由于NFVI是标准化的架构,使得不同的VNF获得了通用性,不再依赖于原来的黑盒设备。
管理自动化及网络编排(Management and orchestration,MANO),MANO是用于管理各VNF以及NFVI的统一框架,方便运维人员进行业务编排与设备管理。
请参见图1,图1是本申请实施例提供的一种网络架构示意图。如图1所示,该网络架构可以包括云端控制器100、边缘服务器200、网络设备300a、网络设备集群。其中,云端控制器100可以与边缘服务器200之间存在通信连接。其中,网络设备集群可以包括有多个采用NFV技术构建的网络设备,具体可以包括网络设备300a、网络设备300b、…、网络设备300n。其中,网络设备集群之间可以存在通信连接,例如网络设备300a与网络设备300b之间存在通信连接,网络设备300a与网络设备300n之间存在通信连接。同时,网络设备集群中的任一网络设备可以与边缘服务器200存在通信连接,例如网络设备300a与边缘服务器200之间存在通信连接。
需要说明的是,上述云端控制器100除了连接有边缘服务器200,还可以同时连接有多个和边缘服务器200具有相同功能的边缘服务器(图1未画出),这些不同边缘服务器通常部署在不同地区,每个边缘服务器负责管理所在地区的网络设备。
其中,上述通信连接不限定连接方式,可以通过有线通信方式进行直接或间接地连接,也可以通过无线通信方式进行直接或间接地连接,还可以通过其它方式,本申请在此不做限制。
如图1所示,网络设备集群可以对应有硬件设备集群,其中,硬件设备集群可以包含有终端设备集群和业务服务器集群。其中,终端设备集群中的每个终端设备上均可以集成安装有应用客户端,当该应用客户端运行于各终端设备中时,可以与终端设备集群中的其他终端设备或者业务服务器集群中的任一业务服务器进行数据交互。其中,该应用客户端可以为游戏应用、视频编辑应用、社交应用、即时通信应用、直播应用、短视频应用、视频应用、音乐应用、购物应用、小说应用、支付应用、浏览器等具有显示文字、图像、音频以及视频等数据信息功能的应用客户端。其中,该应用客户端可以为独立的客户端,也可以为集成在某客户端(例如即时通信客户端、社交客户端、视频客户端等)中的嵌入式子客户端,在此不做限定。可以理解,数据发送方(可以为终端设备集群中的任一终端设备或者业务服务器集群中的任一业务服务器)与数据接收方(可以为终端设备集群中的任一终端设备或者业务服务器集群中的任一业务服务器)进行数据交互时,可以通过网络设备集群来进行数据的加密传输,从而保证数据传输的安全性。
需要说明的是,因为网络设备集群中的每个网络设备是基于NVF技术构建的,因此网络设备可以通过协议部署指令灵活地部署各种加密协议,部署了加密协议后的网络设备,就可以通过加密协议中可以使用的秘钥对数据进行加密和解密的处理。其中,协议部署指令可以是云端控制器100响应运维人员的协议部署操作生成的协议部署指令,云端控制器100将协议部署指令下发至边缘服务器200后,边缘服务器200会将其转发至对应的网络设备中。其中,秘钥又可称为密钥,秘钥是一种参数,它是在明文转换为密文或将密文转换为明文的算法中输入的参数,其中,明文即数据,密文即加密数据。秘钥可以分为对称密钥与非对称密钥,其中,对称秘钥的使用是指发送数据端和接收数据端使用同一个秘钥去加密和解密数据;非对称秘钥的使用是指发送数据端用公开密钥去加密,而接收数据端则用私用密钥去解密。为更好地便于理解本申请的方法,在后续描述中,没有特殊说明时,所提到的秘钥均指对称秘钥。
两个网络设备完成数据的加密传输的过程是指,第二网络设备使用目标秘钥对数据进行加密后,得到加密数据,然后将加密数据发送至第一网络设备,然后第一网络设备使用相同的目标秘钥对加密数据进行解密,就可以得到原始的数据。
为便于理解,以网络设备300a和网络设备300b之间进行数据的加密传输为例进行说明,如图1所示,网络设备300a在接收到数据发送方发送的数据后,可以通过本地存储的第一活跃秘钥表中的目标秘钥对数据进行加密,得到加密数据。然后,网络设备300a可以将加密数据发送给网络设备300b。网络设备300b在接收到加密数据后,就可以在本地存储的第二活跃秘钥表中查找目标秘钥。若网络设备300b未在第二活跃秘钥表中查询到目标秘钥,则网络设备300b可以向边缘服务器200发送秘钥查询请求,然后边缘服务器200可以在全量秘钥表中去获取目标秘钥,然后将该目标秘钥返回给网络设备300b。网络设备300b接收到边缘服务器200发送的目标秘钥后,就可以对加密数据进行加密,得到解密数据,也就是原始的数据。
需要说明的是,边缘服务器200中的全量秘钥表可以包含其对应的网络设备集群中的每个网络设备中存储的活跃秘钥表中的秘钥,即边缘服务器200中的全量秘钥表将包含网络设备300a中存储的第一活跃秘钥表中的所有秘钥,以及网络设备300b中存储的第二活跃秘钥表中的所有秘钥。因此,当网络设备300a存储的第一活跃秘钥表中的秘钥与网络设备300b存储的第二活跃秘钥表中的秘钥不一致,导致网络设备300b找不到网络设备300a使用的目标秘钥时,网络设备300b可以向边缘服务器200进行查询,因此网络设备300b一定可以获取到目标秘钥,从而完成对加密数据的解密,保证不会出现没有目标秘钥而无法解析加密数据的情况,减少数据损失。
可以理解的是,本申请实施例所提供的数据处理方法可以由计算机设备执行,计算机设备包括但不限于服务器、终端设备或者网络设备。上述服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。上述终端设备可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。上述网络设备可以是具备NFV架构的通用硬件设备。
可以理解的是,本申请实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶、区块链等场景。
可以理解的是,在本申请的具体实施方式中,涉及到的需要加密传输据的数据,当本申请以上实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
可以理解的是,上述设备(如上述云端控制器100、边缘服务器200、网络设备300a、网络设备300b、…、网络设备300n、终端设备集群、业务服务器集群等)可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成的点对点(P2P,Peer To Peer)网络,P2P协议是一个运行在传输控制协议(TCP,Transmission ControlProtocol)协议之上的应用层协议。在分布式系统中,任意形式的计算机设备,比如服务器、终端设备等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。
为进一步理解上述两个网络设备基于秘钥完成数据的加密传输的过程,请一并参见图2a和图2b。其中,如图2a和图2b所示的云端控制器21可以为上述图1所示的云端控制器100;如图2a和图2b所示的边缘服务器22可以为上述图1所示的边缘服务器200;如图2a和图2b所示的网络设备23和网络设备24可以分别为上述图1所示的网络设备集群中的任一网络设备,如,网络设备23可以为网络设备300a,网络设备24可以为网络设备300b。
请先参见图2a,图2a是本申请实施例提供的一种秘钥管理的应用场景示意图。在本申请实施例中,用于进行数据加密传输的网络设备中可以存储有活跃秘钥表,当一个网络设备需要对数据进行加密的时候,就可以从活跃秘钥表中任意选择一个秘钥作为目标秘钥对数据进行加密。当另一个网络设备接收到加密数据时,也需要拥有该目标秘钥,才能对加密数据进行解密。换言之,不同网络设备中存储的活跃秘钥表中的秘钥通常情况下应该相同。但是,为了保证数据传输的安全性,同一秘钥使用时间不能过长,因此需要经常对网络设备中存储的活跃秘钥表进行更新。如图2a所示,运维人员A可以通过运维平台,去管理网络设备中存储的活跃秘钥表,即云端控制器21可以响应运维人员A通过运维平台进行的秘钥管理操作,生成秘钥管理指令。其中,秘钥管理指令用于指示网络设备在本地存储的秘钥活跃表中增加秘钥或者删除秘钥等等。
如图2a所示,云端控制器21实际是通过边缘服务器,与其连接的网络设备进行数据交互的,例如,云端控制器21生成的针对网络设备23的秘钥管理指令,会先发送至边缘服务器22,然后,再由边缘服务器22发送至网络设备23。可以理解,由于秘钥管理指令下发至各个网络设备的时间不同,各个网络设备响应该秘钥管理指令的速度不同等问题,运维人员在对秘钥的更新过程中,各个网络设备中的活跃秘钥表中包含的秘钥可能不同。为了避免由于网络设备之间存储的活跃秘钥表不一致而出现加密数据无法解析的问题,在边缘服务器22中,可以存储有一张全量秘钥表,该全量秘钥表中会包含与边缘服务器22连接的所有网络设备中存储的活跃秘钥表中的秘钥。如图2a所示,云端控制器21下发一条新的秘钥添加指令时,边缘服务器22接收到该秘钥添加指令,可以将该秘钥添加指令中携带的新的秘钥添加至自己存储的全量秘钥表中,然后再该秘钥添加指令下发至对应的网络设备中;而当云端控制器21下发秘钥删除指令时,边缘服务器22不会删除全量秘钥表中对应的秘钥,只会将秘钥删除指令转发至对应的网络设备中,网络设备接收到秘钥删除指令会删除活跃秘钥表中对应的秘钥。因此,网络设备存储的活跃秘钥表中的秘钥一定可以在全量秘钥表中找到。
如图2a所示,假设由于运维人员A正在对网络设备进行秘钥更新,此时网络设备23中存储的活跃秘钥表1存储有秘钥1和秘钥2,网络设备24中存储的活跃秘钥表2存储有秘钥2和秘钥3。尽管此时活跃秘钥表1与活跃秘钥表2不一致,但此时网络设备23和网络设备24之间仍然可以进行数据的加密传输。
为便于理解,请一并参见图2b,图2b是本申请实施例提供的一种加密传输的应用场景示意图。如图2b所示,假设网络设备23此时接收到数据25,网络设备23可以在活跃秘钥表1中随机选择一个秘钥,假设为秘钥1,网络设备23可以通过秘钥1对数据25进行加密,得到加密数据26。然后,网络设备23可以将加密数据26传输给网络设备24。网络设备24在接收到加密数据26后,会先查询自己存储的活跃秘钥表2,因为活跃秘钥表2中只包含有秘钥2和秘钥3,因此网络设备24在活跃秘钥表2中查询不到秘钥1,网络设备24可以生成秘钥查询请求27,然后将该秘钥查询请求27发送至边缘服务器22。边缘服务器22在接收到秘钥查询请求27以后,就会查询存储的全量秘钥表,然后获取秘钥1,将秘钥1返回至网络设备24。网络设备24在获取到边缘服务器22返回的秘钥1后,就可以通过秘钥1对加密数据26进行解密,得到解密数据28了。可以理解,加密数据28的数据内容和数据25保证一致。
由此可见,网络设备23在接收到加密数据后会先通过本地存储的活跃秘钥表1来查询目标秘钥,即秘钥1,如果网络设备24中的活跃秘钥表2由于秘钥更新和活跃秘钥表1不相同,从而导致网络设备23在活跃秘钥表1中查询不到目标秘钥,此时网络设备23可以向边缘服务器22发送秘钥查询请求,因为边缘服务器22中的全量秘钥表会记录23网络设备和网络设备24中存储的秘钥,因此可以保证网络设备23在接收到网络设备24的加密数据时,可以获取到目标秘钥来进行解密,减少秘钥更新带来的数据损失,进一步地,就可以随时对网络设备进行秘钥更新,从而提高网络设备传输数据的安全性。
进一步地,请参见图3,图3是本申请实施例提供的一种数据处理方法的流程示意图。其中,该方法可以由第一网络设备(例如,上述图1所对应实施例中的网络设备集群中的任一网络设备,例如,网络设备300n)执行。以下将以本方法由第一网络设备执行为例进行说明,其中,该数据处理方法可以包括:
S101,第一网络设备接收加密数据;所述加密数据是第二网络设备通过第一活跃秘钥表中的目标秘钥进行加密的数据;所述第一活跃秘钥表存储在所述第二网络设备中。
具体的,网络设备(包括第一网络设备或第二网络设备)可以是采用NFV技术构建的通用硬件设备,可以提供网络功能,例如,数据转发服务。其中,通用硬件设备可以是标准的X86服务器、通用存储和交换网络设备。网络设备均具备软硬件解耦的特点,即软件功能模块化,不依赖专用硬件。因为网络设备使用通用硬件设备,因此网络设备更新主要是软件更新,更新周期短;而且,网络设备基于NFV技术,使得硬件资源虚拟化,运维更加自动化与智能化。所以可以根据业务需求动态调整网络设备的软硬件部署。
具体的,使用由NFV技术构建的网络设备,结合在云端部署的网络控制器(即云端控制器)一起,可以构成一套转控分离的网络架构,例如,上述图1所示的网络架构中,云端控制器100可以通过边缘服务器200向其连接的网络设备集群下发部署指令,换言之,网络设备集群提供的网络功能可以通过云端控制器来进行统一编排和部署,网络设备主要用于实现部署后的网络功能,例如,通过云端控制器,就可以很方便的在网络设备中灵活部署各种加密协议。部署有相同加密协议的网络设备之间可以进行数据的加密传输,也就是说,上述第一网络设备和第二网络设备中部署有相同的加密协议。此外,一个网络设备可以支持安装多种加密协议,并在与其他不同网络设备交互时选择使用不同的加密协议。
具体的,数据的加密与解密可以通过秘钥实现,其中,秘钥也可称为密钥,秘钥是一种参数,它是在明文转换为密文或将密文转换为明文的算法中输入的参数。秘钥可以分为对称密钥与非对称密钥,当对数据进行加密时采用的秘钥为对称密钥时,只需要使用相同的秘钥就可以完成对加密数据的解密;当对数据进行加密时采用的秘钥为非对称密钥时,只需要使用该秘钥对应的解密秘钥既可以完成对加密数据的解密了。为便于更好地理解本申请所提出的方法,下述以秘钥为对称密钥进行说明。
具体的,网络设备中可以存储有活跃秘钥表,该活跃秘钥表中可以存储有一个或多个秘钥,网络设备每次对数据进行加密时,均可以在活跃秘钥表中随机选择一个秘钥对数据进行加密,然后发送至其他的网络设备。其他网络设备在接收到加密数据时,只需要使用相同的秘钥对其进行解密即可。因此,运维人员需要为每个网络设备中存储的活跃秘钥表配置相同的秘钥。
可选的,第一网络设备在接收到第二网络设备发送的加密数据后,就可以优先查询本地存储的第二活跃秘钥表是否包含目标秘钥。若第一网络设备在第二活跃秘钥表中查询到目标秘钥,则可以通过从第二活跃秘钥表中获取到的目标秘钥对加密数据进行解密,就可以得到解密数据。需要说明的是,因为活跃秘钥表中的秘钥使用过久时数据传输的安全性会降低,因此运维人员需要定期通过云端控制器更新网络设备中的活跃秘钥表,由于各个网络设备的更新速度不同,容易出现不同网络设备中存储的活跃秘钥表不一致的情况,因此第二活跃秘钥表中并不一定包含有目标秘钥。
可选的,活跃秘钥表(包括第一活跃秘钥表或第二活跃秘钥表)的一种可用结构为“秘钥索引-秘钥”,即第二活跃秘钥表中可以包含一个或多个秘钥索引,以及一个或多个秘钥索引分别映射的秘钥,第二网络设备在第一活跃秘钥表中获取到目标秘钥后,会一并获取与目标秘钥具有映射关系的目标秘钥索引,然后第二网络设备在发送加密数据的同时,将目标秘钥索引一并发送给第一网络设备。第一网络设备接收到目标秘钥索引后,就可以查询第二活跃秘钥表中的一个或多个秘钥索引。若第一网络设备在一个或多个秘钥索引中查询到与目标秘钥索引相同的秘钥索引,则从第二活跃秘钥表中获取与目标秘钥索引相同的秘钥索引映射的秘钥,作为目标秘钥,然后第一网络设备通过从第二活跃秘钥表中获取到的目标秘钥对加密数据进行解密,就可以得到解密数据;若第一网络设备在一个或多个秘钥索引中未查询到与目标秘钥索引相同的秘钥索引,则确定在第二活跃秘钥表中未查询到目标秘钥。
S102,若在第二活跃秘钥表中未查询到所述目标秘钥,则向边缘服务器发送秘钥查询请求,以使所述边缘服务器在全量秘钥表中获取所述目标秘钥;所述第二活跃秘钥表存储在所述第一网络设备中;所述全量秘钥表包含所述第一活跃秘钥表中的秘钥和所述第二活跃秘钥表中的秘钥。
具体的,当网络设备的数量较多且遍布全国各地时,可以在各地的中心城市区域部署边缘服务器,来帮助实现对网络设备的秘钥进行管理。其中,边缘计算是指在靠近物或数据源头的一侧,采用网络、计算、存储、应用核心能力为一体的开放平台,就近提供最近端服务;其应用程序在边缘侧发起,产生更快的网络服务响应,满足行业在实时业务、应用智能、安全与隐私保护等方面的基本需求。
具体的,边缘服务器中可以存储有一张全量秘钥表,该全量秘钥表将包含边缘服务器连接的所有网络设备中存储的活跃秘钥表中的秘钥。第一网络设备和第二网络设备可以分别与边缘服务器具有连接关系,因此全量秘钥表将包含第一活跃秘钥表中的秘钥和第二活跃秘钥表中的秘钥。
为便于理解,请一并参见图4,图4是本申请实施例提供的一种秘钥管理的架构示意图。如图4所示,云端控制器41(可以为上述图1所示的云端控制器100)可以连接有多个边缘服务器,其中,多个边缘服务器可以分别部署在不同的地区,一个地区的边缘服务器可以管理附近的多台网络设备。为便于理解,仅以云端控制器41连接边缘服务器42(可以为云端控制器41连接的多个边缘服务器中的任一边缘服务器),边缘服务器42连接网络设备43和网络设备44为例进行说明。如图4所示,边缘服务器42中存储有全量秘钥表421,网络设备43中存储有活跃秘钥表431,网络设备44中存储有活跃秘钥表441。其中,活跃秘钥表431中包含有秘钥1和秘钥2,活跃秘钥表441中包含有秘钥2和秘钥3,则全量秘钥表421中会包含有秘钥1、秘钥2和秘钥3。如图4所示,网络设备43和网络设备44均可以向边缘服务器42查询秘钥,例如,当网络设备43接收到由秘钥3加密得到的加密数据时,因为其本地存储的活跃秘钥表431中没有秘钥3,网络设备43就可以向边缘服务器43发送秘钥查询请求,边缘服务器43接收到秘钥查询请求,就可以在全量秘钥表421中获取秘钥3,然后返回给网络设备43。
可选的,云端控制器针对网络设备中存储的秘钥的部署指令,也会下发到各个地区的边缘服务器上,边缘服务器可以根据部署指令维护本地存储的该地区所有网络设备对应的全量秘钥表,然后再将部署指令转发至对应的网络设备,接收到部署指令的网络设备再根据部署指令对本地存储的活跃秘钥表进行更新。
可选的,云端控制器针对第一网络设备中的部署指令中可以包括秘钥更新指令。边缘服务器在接收到该秘钥更新指令后,会解析该秘钥更新指令,获取其中包含的更新秘钥,然后在全量秘钥表中添加该更新秘钥。然后,边缘服务器可以将该秘钥更新指令转发至第一网络设备。若边缘服务器在全量秘钥表中新增更新秘钥,则第一网络设备可以接收边缘服务器转发的秘钥添加指令,然后,第一网络设备可以根据秘钥添加指令,将更新秘钥添加至本地存储的第二活跃秘钥表中。当边缘服务器和第一网络设备采用上述秘钥更新方法时,必然可以保证更新秘钥在添加至第二活跃秘钥表中之前,就被写入全量秘钥表了。因此,若第一网络设备采用更新秘钥对数据进行加密,得到加密后的数据,然后将加密后的数据传输至与边缘服务器连接的第三网络设备,即使第三网络设备中存储的活跃秘钥表还没有添加该更新秘钥,第三网络设备也一定可以通过边缘服务器中的全量秘钥表获取到更新秘钥,然后对加密后的数据进行解密,从而避免加密后的数据无法被解密的情况。
可选的,云端控制器针对第一网络设备中的部署指令中可以包括秘钥删除指令,该秘钥删除指令中包含有待删除秘钥。边缘服务器在接收到该秘钥删除指令后,会直接将该秘钥删除指令转发至第一网络设备。第一网络设备接收到边缘服务器转发的秘钥删除指令后,在第二活跃秘钥表中,删除与待删除秘钥相同的秘钥。可以理解,边缘服务器中的全量秘钥表会继续存储有与待删除秘钥相同的秘钥。当边缘服务器和第一网络设备采用上述秘钥删除方法时,可以保证第二活跃秘钥表中删除待删除秘钥后,全量秘钥表中依然存储有该待删除秘钥。因此,当第一网络设备接收到其他网络设备传输的通过待删除秘钥进行加密的加密数据时,第一网络设备还可以通过边缘服务器中的全量秘钥表获取到待删除秘钥,然后对加密数据进行解密,从而避免加密数据无法被解密的情况。
可选的,第一网络设备中可以包含控制组件和虚拟网络功能组件;该控制组件(例如,上述图4中网络设备43包含的控制模块,或者网络设备44包含的控制模块)用于和边缘服务器进行通信,可以接收边缘服务器转发的部署指令和加密协议配置指令。其中,部署指令即上述所说的用于管理活跃秘钥表的指令。加密协议配置指令则是目标对象(运维人员)通过云端控制器生成的指令,加密协议配置指令可以用于指示控制组件通知虚拟网络功能组件配置加密协议。可以理解,配置有加密协议的虚拟网络功能组件具有通过目标秘钥进行数据解密的功能。
S103,接收所述边缘服务器发送的所述目标秘钥,通过从所述边缘服务器中获取到的所述目标秘钥对所述加密数据进行解密,得到解密数据。
具体的,一个秘钥可以包含加密字符串、加密算法等信息。第一网络设备接收边缘服务器发送的目标秘钥后,可以从边缘服务器中获取到的目标秘钥中获取加密字符串和加密算法;然后根据加密算法和加密字符串对加密数据进行解密运算,得到加密数据。
采用本申请实施例提供的方法,第一网络设备在接收到加密数据后会先通过本地存储的第一活跃秘钥表来查询目标秘钥,如果第二网络设备中的第二活跃秘钥表由于秘钥更新和第一活跃秘钥表不相同,从而导致第一网络设备在第一活跃秘钥表中查询不到目标秘钥,此时第一网络设备可以向边缘服务器发送秘钥查询请求,因为边缘服务器中的全量秘钥表会记录第一网络设备和第二网络设备中存储的秘钥,因此可以保证第一网络设备在接收到第二网络设备的加密数据时,可以获取到目标秘钥来进行解密,减少秘钥更新带来的数据损失,进一步地,就可以随时对网络设备进行秘钥更新,从而提高网络设备传输数据的安全性。
进一步地,请参见图5,图5是本申请实施例提供的一种数据处理方法的流程示意图。其中,该方法可以由网络设备(例如,上述图1所对应实施例中的网络设备集群中的任一网络设备,例如,网络设备300n)执行。以下将以本方法由网络设备执行为例进行说明,其中,该数据处理方法可以包括:
S201,第一网络设备接收加密数据和目标秘钥索引;所述加密数据是第二网络设备通过第一活跃秘钥表中的目标秘钥进行加密的数据;所述第一活跃秘钥表存储在所述第二网络设备中。
具体的,一个秘钥可以用一个秘钥索引(Security Parameter Index,SPI)来进行标识,不同秘钥对应的秘钥索引不同。
S202,若在第二活跃秘钥表中未查询到所述目标秘钥,则获取缓存秘钥索引列表;所述缓存秘钥索引列表中包含有一个或多个缓存秘钥索引。
具体的,第一网络设备针对从边缘服务器中查询到的秘钥,可以先对其进行缓存,例如,将查询到的秘钥作为缓存秘钥存储在秘钥缓存区域中,以便后续还有相同秘钥的数据接收到时可以使用缓存秘钥快速命中解密。可以理解,缓存秘钥并不能无限期的保存,因为秘钥缓存区域通常位于内存区域中,其可以缓存的秘钥的数量通常有限。第一网络设备在创建缓存秘钥索引列表时,需要保证缓存秘钥索引列表中可以存储的缓存秘钥索引的最大数量,与秘钥缓存区域中可以存储的缓存秘钥的最大数量相同。
具体的,因为缓存秘钥索引与缓存秘钥具有映射关系,因此可以通过管理缓存秘钥索引列表中的缓存秘钥索引来间接管理秘钥缓存区域中的缓存秘钥。针对缓存秘钥索引列表,可以通过缓存过期策略来进行管理。其中,缓存过期策略可以为LRU(Least RecentlyUsed,最近最久未使用)缓存,LFU(Least Frequently Used,最近最少未使用)缓存,FIFO(Least Frequently Used,先进先出)缓存。其中,LRU缓存是指如果一个数据在最近一段时间没有被访问到,那么在将来它被访问的可能性也很小;也就是说,当限定的空间已存满数据时,应当把最久没有被访问到的数据淘汰;LFU缓存是指如果一个数据在最近一段时间内使用次数很少,那么在将来一段时间内被使用的可能性也很小;FIFO缓存是指如果一个数据最先进入缓存中,则应该最早淘汰掉。
具体的,本申请实施例中的缓存秘钥索引列表默认使用LRU缓存策略进行管理,即在缓存秘钥索引列表中,位于缓存秘钥索引列表的列表头部的缓存秘钥索引映射的缓存秘钥,是所有缓存秘钥中最近被使用过的秘钥;位于缓存秘钥索引列表的列表尾部的缓存秘钥索引映射的缓存秘钥,则是所有缓存秘钥中最久未被使用过的秘钥。
为便于理解,请一并参见图6a,图6a是本申请实施例提供的一种缓存秘钥索引列表与缓存秘钥区域的管理示意图。如图6a所示,缓存秘钥索引列表61中的缓存秘钥索引是按照LRU缓存策略顺序保存的,即位于缓存秘钥索引列表61的列表头部的缓存秘钥索引611是所有缓存秘钥中最近被使用过的秘钥对应的缓存秘钥索引,缓存秘钥612是除去缓存秘钥611的所有缓存秘钥中最近被使用过的秘钥对应的缓存秘钥索引,以此类推。不过,秘钥缓存区域62中的缓存秘钥不用顺序保存。缓存秘钥索引列表61中的每个缓存秘钥索引与秘钥缓存区域62中的缓存秘钥具有映射关系,例如,缓存秘钥索引611与缓存秘钥621具有映射关系;缓存秘钥索引612与缓存秘钥622具有映射关系;缓存秘钥索引613与缓存秘钥623具有映射关系;缓存秘钥索引614与缓存秘钥624具有映射关系。
S203,若在所述一个或多个缓存秘钥索引查询到与所述目标秘钥索引相同的缓存秘钥索引,则在秘钥缓存区域中获取与所述目标秘钥索引相同的缓存秘钥索引映射的缓存秘钥,作为所述目标秘钥;所述秘钥缓存区域中存储有所述一个或多个缓存秘钥索引分别映射的缓存秘钥。
具体的,若在一个或多个缓存秘钥索引查询到与目标秘钥索引相同的缓存秘钥索引,说明第一网络设备之前已经向边缘服务器查询过目标秘钥索引映射的目标秘钥了,第一网络设备此时可以直接从秘钥缓存区域中获取与目标秘钥索引相同的缓存秘钥索引映射的缓存秘钥,作为目标秘钥,无需再向边缘服务器进行目标秘钥的查询了。
S204,通过从所述秘钥缓存区域中获取到的所述目标秘钥对所述加密数据进行解密,得到解密数据。
可选的,第一网络设备每使用一次秘钥缓存区域中的缓存秘钥,就可以对缓存秘钥索引列表进行一次更新,即在通过从秘钥缓存区域中获取到的目标秘钥对加密数据进行解密,得到解密数据之后,第一网络设备可以将一个或多个缓存秘钥索引中与目标秘钥索引相同的缓存秘钥索引,作为待移动缓存秘钥索引;然后在缓存秘钥索引列表中将待移动缓存秘钥索引转移至缓存秘钥索引列表的列表头部。
为便于理解,请一并参见图6b,图6b是本申请实施例提供的一种缓存秘钥索引列表更新的场景示意图。针对上述图6a中所示的缓存秘钥索引列表61和秘钥缓存区域62,当一个缓存秘钥被使用时,如果它对应的缓存秘钥索引已经存在于缓存秘钥索引列表61中,则将它对应的缓存秘钥索引从原位置移动到缓存秘钥索引列表61的列表头部即可。如图6b所示,假设第一网络设备此时使用了缓存秘钥624,则可以将缓存秘钥索引614插入到缓存秘钥索引611之前,此时缓存秘钥索引列表61中包含的缓存秘钥索引顺序为“缓存秘钥索引614-缓存秘钥索引611-缓存秘钥索引612-缓存秘钥索引613”。需要说明的是,缓存秘钥624在缓存秘钥区域62中的存储位置不用进行更改。
S205,若在所述一个或多个缓存秘钥索引未查询到与所述目标秘钥索引相同的缓存秘钥索引,则向边缘服务器发送秘钥查询请求,以使所述边缘服务器在全量秘钥表中获取所述目标秘钥;所述第二活跃秘钥表存储在所述第一网络设备中;所述全量秘钥表包含所述第一活跃秘钥表中的秘钥和所述第二活跃秘钥表中的秘钥。
具体的,若在一个或多个缓存秘钥索引未查询到与目标秘钥索引相同的缓存秘钥索引,说明第一网络设备没有向边缘服务器查询过目标秘钥索引映射的目标秘钥,因此可以向边缘服务器请求查询。查询的过程可以参加上述图3所对应实施例中S102的描述,这里不再进行赘述。
S206,接收所述边缘服务器发送的所述目标秘钥,通过从所述边缘服务器中获取到的所述目标秘钥对所述加密数据进行解密,得到解密数据。
具体的,解密过程可以参加上述图3所对应实施例中S102的相关描述,这里不再进行赘述。
可选的,在通过从边缘服务器中获取到的目标秘钥对加密数据进行解密,得到解密数据后,需要将从边缘服务器中获取到的目标秘钥添加进缓存秘钥索引列表中,便于再次获取到由目标秘钥进行加密的加密数据时,可以直接从缓存秘钥区域中获取目标秘钥进行解密。
可选的,第一网络设备将从边缘服务器中获取到的目标秘钥添加进缓存秘钥索引列表中的一个可行实施过程,可以为:第一网络设备可以先确定缓存秘钥索引列表中的缓存秘钥索引数量。若缓存秘钥索引数量等于缓存秘钥索引数量阈值,则将位于缓存秘钥索引列表的列表尾部的缓存秘钥索引,作为待删除缓存秘钥索引,在秘钥缓存区域中删除待删除缓存秘钥索引映射的缓存秘钥,得到更新后的秘钥缓存区域,同时删除缓存秘钥索引列表中的待删除缓存秘钥索引,得到更新后的缓存秘钥索引列表;然后将目标秘钥索引插入更新后的缓存秘钥索引列表的列表头部,将目标秘钥存储进更新后的秘钥缓存区域中。若缓存秘钥索引数量小于缓存秘钥索引数量阈值,则将目标秘钥索引插入缓存秘钥索引列表的列表头部,将目标秘钥存储进秘钥缓存区域中。
为便于理解,请一并参见图6c,图6c是本申请实施例提供的一种缓存秘钥索引列表更新的场景示意图。针对上述图6a中所示的缓存秘钥索引列表61和秘钥缓存区域62,假设第一网络设备使用了缓存秘钥625,因为缓存秘钥625对应的缓存秘钥索引615不存在于缓存秘钥索引列表61中,则需要确定缓存秘钥索引列表61是否有空闲位置,即确定缓存秘钥索引列表61的缓存秘钥索引数量是否等于缓存秘钥索引数量阈值。如图6c所示,若缓存秘钥索引数量等于缓存秘钥索引数量阈值,则删除位于缓存秘钥索引列表61的列表尾部的缓存秘钥索引614,并且删除缓存秘钥索引614对应的缓存秘钥624,然后将缓存秘钥625写入秘钥缓存区域62中,将缓存秘钥索引615插入到缓存秘钥索引611之前,此时缓存秘钥索引列表61中包含的缓存秘钥索引顺序为“缓存秘钥索引615-缓存秘钥索引611-缓存秘钥索引612-缓存秘钥索引613”。如图6c所示,若缓存秘钥索引数量小于缓存秘钥索引数量阈值,则直接将缓存秘钥索引615插入到缓存秘钥索引611之前,此时缓存秘钥索引列表61中包含的缓存秘钥索引顺序为“缓存秘钥索引615-缓存秘钥索引611-缓存秘钥索引612-缓存秘钥索引613-缓存秘钥索引614”。
采用本申请实施例提供的方法,网络设备对于秘钥的查询,先从秘钥活跃表中开始,若秘钥活跃表中未找到,则查询秘钥缓存区域,若秘钥缓存区域还未找到,再向边缘服务器进行查询。网络设备对于从边缘服务器查询过的秘钥,会先保存在本地的秘钥缓存区域中,以便后续还有相同秘钥的数据接收到时可以使用秘钥缓存区域中的缓存秘钥快速命中解密。此外,针对缓存秘钥对应的缓存秘钥索引构成的缓存秘钥索引列表,可以基于缓存过期策略,例如,LRU缓存策略对缓存秘钥索引列表进行动态更新,可以保证最近频繁使用的缓存秘钥始终处于秘钥缓存区域之中,而且在后续遍历缓存秘钥索引列表时会优先遍历最近被使用的缓存秘钥对应的缓存秘钥索引,可以提高遍历的命中率,减少遍历次数,提高数据解密的效率。
进一步地,为便于理解,请一并参见图7,图7是本申请实施例提供的一种数据交互示意图。如图7所示,整个数据交互涉及到边缘服务器、网络设备、活跃秘钥表、秘钥缓存区域(秘钥缓存)以及秘钥缓存索引列表。其中,边缘服务器可以为上述图1所对应实施例中所述的边缘服务器200。其中,网络设备可以为上述图1所对应实施例中与所述边缘服务器200连接的网络设备集群中的任一网络设备,例如,网络设备300a。其中,活跃秘钥表、秘钥缓存以及秘钥缓存索引列表均可以存储在网络设备中。如图7所示,整个数据交互过程包括:
S71,网络设备接收通过目标秘钥加密的加密数据和目标秘钥索引。
具体的,S71的实现可以参见上述图3所对应实施例中S101的描述,这里不再进行赘述。
S72,网络设备调用活跃秘钥表查询目标秘钥索引,若查询成功,则执行S73;若查询失败,则执行S74。
具体的,活跃秘钥表中可以包含一个或多个秘钥索引,以及一个或多个秘钥索引分别映射的秘钥,具体查询过程可以参见上述图3所对应实施例中步骤S01的可选描述,这里不再进行赘述。
S73,查询成功,活跃秘钥表向网络设备返回目标秘钥,执行S711。
S74,查询失败,活跃秘钥表向网络设备返回失败信息,执行S75。
S75,网络设备调用缓存秘钥索引列表查询目标秘钥,若查询成功,则执行S76;若查询失败,则执行S78。
具体的,在缓存秘钥索引列表中查询目标秘钥的实现过程,可以参见上述图5所对应实施例中S202的描述,这里不再进行赘述。
S76,查询成功,访问秘钥缓存区域,获取目标秘钥索引映射的目标秘钥。
S77,秘钥缓存区域向网络设备返回目标秘钥,执行S711。
S78,查询失败,缓存秘钥索引列表向网络设备返回失败信息。
S79,网络设备向边缘服务器申请查询目标秘钥索引。
S710,边缘服务器向网络设备返回目标索引。
具体的,S79和S710的实现可以参见上述图3所对应实施例中S102的描述,这里不再进行赘述。
S711,网络设备在获取到目标秘钥后,可以通过目标秘钥对加密数据进行解密。
S712,网络设备更新缓存秘钥索引列表。
具体的,若目标秘钥是从缓存秘钥索引列表中获取到的,则网络设备更新缓存秘钥索引列表的过程可以参见上述图5所对应实施例中S204的可选描述,这里不再进行赘述;若目标秘钥是从边缘服务器中获取到的,则网络设备更新缓存秘钥索引列表的过程可以参见上述图5所对应实施例中S206的可选描述,这里不再进行赘述。
采用本申请实施例提供的方法,在利用NFV构建的网关设备、云端部署的云端控制器、边缘侧部署的边缘服务器构成的秘钥管理服务架构下,实现了网络设备进行数据加密传输时所需要的加密秘钥的动态更新和高效缓存。基于本申请实施例提出的秘钥查询方法,可以定时对秘钥进行更新,因为更新过程中可以保证网络设备传输数据无感知,能减少全程的数据损失。此外,秘钥缓存区域和使用缓存过期策略构建的缓存秘钥索引列表,可以使网络设备在有限的内存条件下能够快速命中缓存,减少与边缘服务器多余的查询操作。总言之,采用本申请实施例提供的方法可以提高网络设备传输数据的安全性,提高网络设备秘钥配置的便捷性,增加了网络设备秘钥命中的速度提高转发效率,以及转控分离架构带来的灵活性。
进一步地,当需要管理的网络设备以及网络设备用到的秘钥的数量较少时,可以通过云端控制器直接和网络设备进行数据交互,原本存储于边缘服务器中的全量秘钥表,也可以直接存储在网络设备中,此时的网络架构更为简单。
为便于理解,请一并参见图8,图8是本申请实施例提供的另一种秘钥管理的架构示意图。如图8所示,整个架构包含有云端控制器81和网络设备82。需要说明的是,云端控制器81可以同时连接多个网络设备,这里仅以网络设备82为例进行说明。如图8所示,网络设备82中可以直接包含有全量秘钥表821和活跃秘钥表822。此外,网络设备82可以包含有控制模块。网络设备82可以通过控制模块(即上述图3所对应实施例中S102所述的控制组件)与云端控制器81建立连接,云端控制器81可以通过连接将针对秘钥的部署指令直接发送至网络设备82。可以理解,当部署指令为秘钥添加指令时,网络设备82会在全量秘钥表821和活跃秘钥表822中均添加上秘钥添加指令中携带的秘钥;当部署指令为秘钥删除指令时,网络设备82只需要删除活跃秘钥表822中的对应秘钥即可。
进一步地,请参见图9,图9是本申请实施例提供的一种数据处理方法的流程示意图。其中,该方法可以由第一网络设备(例如,上述图8所对应实施例中的网络设备82)执行。以下将以本方法由第一网络设备执行为例进行说明,其中,该数据处理方法可以包括:
S301,第一网络设备接收加密数据;加密数据是第二网络设备通过第一活跃秘钥表中的目标秘钥进行加密的数据;第一活跃秘钥表存储在第二网络设备中。
具体的,步骤S301的实现,可以参见上述图3所对应实施例中步骤S101的描述,这里不再进行赘述。
S302,若在第二活跃秘钥表中查询到目标秘钥,则通过目标秘钥对加密数据进行解密,得到解密数据;第二活跃秘钥表存储在第一网络设备中;目标秘钥为与目标秘钥相同的秘钥。
具体的,通过目标秘钥对加密数据进行解密的过程,可以参见上述图3所对应实施例中S103的描述,这里不再进行赘述。
S303,若在第二活跃秘钥表中未查询到目标秘钥,则在全量秘钥表中获取第二目标秘钥;全量秘钥表存储在第一网络设备中;第二目标秘钥为与目标秘钥相同的秘钥;全量秘钥表包含第一活跃秘钥表中的秘钥和第二活跃秘钥表中的秘钥。
具体的,全量秘钥表的管理可以参见上述S102中边缘服务器对其存储的全量秘钥表的管理过程,这里不再进行赘述。因为全量秘钥表直接存储在第一网络设备中,因此第一网络设备无需和其他设备进行数据交互,就可以直接获取目标秘钥。
S304,通过第二目标秘钥对加密数据进行解密,得到解密数据。
具体的,通过目标秘钥对加密数据进行解密的过程,可以参见上述图3所对应实施例中S103的描述,这里不再进行赘述。
采用本申请实施例提供的方法,针对小规模网络设备集群使用的秘钥进行管理时,网络设备将秘钥保存到两个列表,一个表是包含当前常用的秘钥的活跃秘钥表,另一个是包含网络设备收到过的所有秘钥的全量秘钥表。当网络设备接收数据时,优先从活跃秘钥表中检索秘钥进行解密,若活跃秘钥表中未找到合适的秘钥,则再从全量的秘钥表中查找秘钥进行解密。如此,可以减少秘钥查询的时间,并保证数据传输的安全性。
进一步地,请参见图10,图10是本申请实施例提供的一种数据处理装置的结构示意图。该数据处理装置可以是运行于计算机设备的一个计算机程序(包括程序代码),例如该数据处理装置为一个应用软件;该装置可以用于执行本申请实施例提供的数据处理方法中的相应步骤。如图10所示,该数据处理装置1可以应用于网络设备,该网络设备可以为上述图1所对应实施例中的网络设备集群中的任一网络设备,例如网络设备300a。该数据处理装置1可以包括:数据接收模块101、第一查询模块102和第一解密模块103。
数据接收模块101,用于接收加密数据;加密数据是第二网络设备通过第一活跃秘钥表中的目标秘钥进行加密的数据;第一活跃秘钥表存储在第二网络设备中;
第一查询模块102,用于若在第二活跃秘钥表中未查询到目标秘钥,则向边缘服务器发送秘钥查询请求,以使边缘服务器在全量秘钥表中获取目标秘钥;第二活跃秘钥表存储在第一网络设备中;全量秘钥表包含第一活跃秘钥表中的秘钥和第二活跃秘钥表中的秘钥;
第一解密模块103,用于接收边缘服务器发送的目标秘钥,通过从边缘服务器中获取到的目标秘钥对加密数据进行解密,得到解密数据。
其中,数据接收模块101、第一查询模块102和第一解密模块103的具体实现方式可以参见上述图3所对应实施例中的S101-S103的描述,这里不再进行赘述。
其中,第二活跃秘钥表包含一个或多个秘钥索引,以及一个或多个秘钥索引分别映射的秘钥;
上述数据处理装置1,还包括:索引接收模块104和第二查询模块105。
索引接收模块104,用于接收目标秘钥索引;
第二查询模块105,用于查询第二活跃秘钥表中的一个或多个秘钥索引;
第二查询模块105,还用于若在一个或多个秘钥索引中未查询到与目标秘钥索引相同的秘钥索引,则确定在第二活跃秘钥表中未查询到目标秘钥。
其中,索引接收模块104和第二查询模块105的具体实现方式可以参见上述图3所对应实施例中的S102的可选描述,这里不再进行赘述。
其中,上述数据处理装置1,还包括:第二解密模块106。
第二解密模块106,用于若在一个或多个秘钥索引中查询到与目标秘钥索引相同的秘钥索引,则从第二活跃秘钥表中获取与目标秘钥索引相同的秘钥索引映射的秘钥,作为目标秘钥;
第二解密模块106,还用于通过从第二活跃秘钥表中获取到的目标秘钥对加密数据进行解密,得到解密数据。
其中,第二解密模块106的具体实现方式可以参见上述图3所对应实施例中的S102的可选描述,这里不再进行赘述。
其中,上述数据处理装置1,还包括:获取模块107、第三查询模块108以及第四解密模块109。
获取模块107,用于获取缓存秘钥索引列表;缓存秘钥索引列表中包含有一个或多个缓存秘钥索引;
第三查询模块108,用于查询缓存秘钥索引列表中的一个或多个缓存秘钥索引;
第四解密模块109,用于若在一个或多个缓存秘钥索引查询到与目标秘钥索引相同的缓存秘钥索引,则在秘钥缓存区域中获取与目标秘钥索引相同的缓存秘钥索引映射的缓存秘钥,作为目标秘钥;秘钥缓存区域中存储有一个或多个缓存秘钥索引分别映射的缓存秘钥;
第四解密模块108,还用于通过从秘钥缓存区域中获取到的目标秘钥对加密数据进行解密,得到解密数据;
第三查询模块109,还用于若在一个或多个缓存秘钥索引未查询到与目标秘钥索引相同的缓存秘钥索引,则调用第一查询模块执行向边缘服务器发送秘钥查询请求的步骤。
其中,获取模块107、第三查询模块108以及第四解密模块109的具体实现方式可以参见上述图5所对应实施例中的S202-S204的描述,这里不再进行赘述。
其中,上述数据处理装置1,还包括:第一缓存更新模块110。
第一缓存更新模块110,用于将一个或多个缓存秘钥索引中与目标秘钥索引相同的缓存秘钥索引,作为待移动缓存秘钥索引;
第一缓存更新模块110,还用于在缓存秘钥索引列表中将待移动缓存秘钥索引转移至缓存秘钥索引列表的列表头部。
其中,第一缓存更新模块110的具体实现方式可以参见上述图5所对应实施例中的S204的可选描述,这里不再进行赘述。
其中,上述数据处理装置1,还包括:第二缓存更新模块111。
第二缓存更新模块111,用于确定缓存秘钥索引列表中的缓存秘钥索引数量;
第二缓存更新模块111,还用于若缓存秘钥索引数量等于缓存秘钥索引数量阈值,则将位于缓存秘钥索引列表的列表尾部的缓存秘钥索引,作为待删除缓存秘钥索引;
第二缓存更新模块111,还用于在秘钥缓存区域中删除待删除缓存秘钥索引映射的缓存秘钥,得到更新后的秘钥缓存区域;
第二缓存更新模块111,还用于删除缓存秘钥索引列表中的待删除缓存秘钥索引,得到更新后的缓存秘钥索引列表;
第二缓存更新模块111,还用于将目标秘钥索引插入更新后的缓存秘钥索引列表的列表头部,将目标秘钥存储进更新后的秘钥缓存区域中;
第二缓存更新模块111,还用于若缓存秘钥索引数量小于缓存秘钥索引数量阈值,则将目标秘钥索引插入缓存秘钥索引列表的列表头部,将目标秘钥存储进秘钥缓存区域中。
其中,第二缓存更新模块111的具体实现方式可以参见上述图5所对应实施例中的S206的可选描述,这里不再进行赘述。
其中,上述数据处理装置1,还包括:秘钥添加模块112。
秘钥添加模块112,用于若边缘服务器在全量秘钥表中新增更新秘钥,则接收边缘服务器转发的秘钥添加指令;秘钥添加指令中包含更新秘钥;秘钥添加指令是由云端控制器生成,且由云端控制器发送至边缘服务器的添加指令;
秘钥添加模块112,还用于根据秘钥添加指令,将更新秘钥添加至第二活跃秘钥表中。
其中,秘钥添加模块112的具体实现方式可以参见上述图3所对应实施例中的S102的可选描述,这里不再进行赘述。
其中,上述数据处理装置1,还包括:秘钥删除模块113。
秘钥删除模块113,用于接收边缘服务器转发的秘钥删除指令;秘钥删除指令中包含待删除秘钥;秘钥删除指令是由云端控制器生成,且由云端控制器发送至边缘服务器的删除指令;
秘钥删除模块113,还用于在第二活跃秘钥表中,删除与待删除秘钥相同的秘钥;边缘服务器中的全量秘钥表继续存储有与待删除秘钥相同的秘钥。
其中,秘钥删除模块113的具体实现方式可以参见上述图3所对应实施例中的S102的可选描述,这里不再进行赘述。
其中,目标秘钥包含加密字符串和加密算法;
第一解密模块103,包括:接收单元1031、获取单元1032和运算单元1033。
接收单元1031,用于接收边缘服务器发送的目标秘钥;
获取单元1032,用于从边缘服务器中获取到的目标秘钥中获取加密字符串和加密算法;
运算单元1033,用于根据加密算法和加密字符串对加密数据进行解密运算,得到加密数据。
其中,接收单元1031、获取单元1032和运算单元1033的具体实现方式可以参见上述图3所对应实施例中的S103的描述,这里不再进行赘述。
其中,上述数据处理装置1,还包含控制组件和虚拟网络功能组件;控制组件用于接收加密协议配置指令;加密协议配置指令是目标对象通过云端控制器生成的指令;加密协议配置指令用于指示控制组件通知虚拟网络功能组件配置加密协议;配置有加密协议的虚拟网络功能组件具有通过目标秘钥进行数据解密的功能。
采用本申请实施例提供的数据处理装置1,数据处理装置1在接收到加密数据后会先通过本地存储的第一活跃秘钥表来查询目标秘钥,如果第二网络设备中的第二活跃秘钥表由于秘钥更新和第一活跃秘钥表不相同,从而导致数据处理装置1在第一活跃秘钥表中查询不到目标秘钥,此时数据处理装置1可以向边缘服务器发送秘钥查询请求,因为边缘服务器中的全量秘钥表会记录数据处理装置1和第二网络设备中存储的秘钥,因此可以保证数据处理装置1在接收到第二网络设备的加密数据时,可以获取到目标秘钥来进行解密,减少秘钥更新带来的数据损失,进一步地,就可以随时对数据处理装置1进行秘钥更新,从而提高网络设备传输数据的安全性。
请参见图11,图11是本申请实施例提供的一种计算机设备的结构示意图。如图11所示,上述图10所对应实施例中的数据处理装置1可以应用于计算机设备1000,该计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,上述计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图10所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在如图10所示的计算机设备1000中,网络接口1004可提供网络通讯网元;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
接收加密数据;加密数据是第二网络设备通过第一活跃秘钥表中的目标秘钥进行加密的数据;第一活跃秘钥表存储在第二网络设备中;
若在第二活跃秘钥表中未查询到目标秘钥,则向边缘服务器发送秘钥查询请求,以使边缘服务器在全量秘钥表中获取目标秘钥;第二活跃秘钥表存储在第一网络设备中;全量秘钥表包含第一活跃秘钥表中的秘钥和第二活跃秘钥表中的秘钥;
接收边缘服务器发送的目标秘钥,通过从边缘服务器中获取到的目标秘钥对加密数据进行解密,得到解密数据。
应当理解,本申请实施例中所描述的计算机设备1000可执行前文图3、图5任一个所对应实施例中对该数据处理方法的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且上述计算机可读存储介质中存储有前文提及的数据处理装置1所执行的计算机程序,且上述计算机程序包括程序指令,当上述处理器执行上述程序指令时,能够执行前文图3、图5任一个所对应实施例中对上述数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
进一步地,请参见图12,图12是本申请实施例提供的另一种数据处理装置的结构示意图。该数据处理装置可以是运行于计算机设备的一个计算机程序(包括程序代码),例如该数据处理装置为一个应用软件;该装置可以用于执行本申请实施例提供的数据处理方法中的相应步骤。如图12所示,该数据处理装置2可以应用于计算机设备,该计算机设备可以为上述图8所对应实施例中的网络设备82。该数据处理装置2可以包括:接收模块201、第一查询模块202、第二查询模块203和解密模块204。
接收模块201,用于接收加密数据;加密数据是第二网络设备通过第一活跃秘钥表中的目标秘钥进行加密的数据;第一活跃秘钥表存储在第二网络设备中;
第一查询模块202,用于若在第二活跃秘钥表中查询到目标秘钥,则通过目标秘钥对加密数据进行解密,得到解密数据;第二活跃秘钥表存储在第一网络设备中;目标秘钥为与目标秘钥相同的秘钥;
第二查询模块203,用于若在第二活跃秘钥表中未查询到目标秘钥,则在全量秘钥表中获取第二目标秘钥;全量秘钥表存储在第一网络设备中;第二目标秘钥为与目标秘钥相同的秘钥;全量秘钥表包含第一活跃秘钥表中的秘钥和第二活跃秘钥表中的秘钥;
解密模块204,用于通过第二目标秘钥对加密数据进行解密,得到解密数据。
其中,接收模块201、第一查询模块202、第二查询模块203和解密模块204的具体实现方式可以参见上述图9所对应实施例中的S301-S304的描述,这里不再进行赘述。
采用本申请实施例提供的数据处理装置2,针对小规模的秘钥进行管理时,可以将秘钥保存到两个列表,一个表是包含当前常用的秘钥的活跃秘钥表,另一个是包含数据处理装置2收到过的所有秘钥的全量秘钥表。当数据处理装置2接收数据时,优先从活跃秘钥表中检索秘钥进行解密,若活跃秘钥表中未找到合适的秘钥,则再从全量的秘钥表中查找秘钥进行解密。如此,可以减少秘钥查询的时间,并保证数据传输的安全性。
进一步地,请参见图13,图13是本申请实施例提供的另一种计算机设备的结构示意图。如图13所示,上述图12所对应实施例中的数据处理装置2可以应用于计算机设备2000,该计算机设备2000可以包括:处理器2001,网络接口2004和存储器2005,此外,上述计算机设备2000还包括:用户接口2003,和至少一个通信总线2002。其中,通信总线2002用于实现这些组件之间的连接通信。其中,用户接口2003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口2003还可以包括标准的有线接口、无线接口。网络接口2004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器2005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器2005可选的还可以是至少一个位于远离前述处理器2001的存储装置。如图13所示,作为一种计算机可读存储介质的存储器2005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图13所示的计算机设备2000中,网络接口2004可提供网络通讯功能;而用户接口2003主要用于为用户提供输入的接口;而处理器2001可以用于调用存储器2005中存储的设备控制应用程序,以实现:
接收加密数据;加密数据是第二网络设备通过第一活跃秘钥表中的目标秘钥进行加密的数据;第一活跃秘钥表存储在第二网络设备中;
若在第二活跃秘钥表中查询到目标秘钥,则通过目标秘钥对加密数据进行解密,得到解密数据;第二活跃秘钥表存储在第一网络设备中;目标秘钥为与目标秘钥相同的秘钥;
若在第二活跃秘钥表中未查询到目标秘钥,则在全量秘钥表中获取第二目标秘钥;全量秘钥表存储在第一网络设备中;第二目标秘钥为与目标秘钥相同的秘钥;全量秘钥表包含第一活跃秘钥表中的秘钥和第二活跃秘钥表中的秘钥;
通过第二目标秘钥对加密数据进行解密,得到解密数据。
应当理解,本申请实施例中所描述的计算机设备2000可执行前文各个实施例中对该访问控制方法的描述,也可执行前文图9所对应实施例中对该数据处理装置2的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且上述计算机可读存储介质中存储有前文提及的数据处理装置2所执行的计算机程序,当上述处理器加载并执行上述计算机程序时,能够执行前文任一实施例对上述访问控制方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
上述计算机可读存储介质可以是前述任一实施例提供的数据处理装置或者上述计算机设备的内部存储单元,例如计算机设备的硬盘或内存。该计算机可读存储介质也可以是该计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该计算机设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该计算机设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
此外,这里需要指出的是:本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前文图3、图5、图9任一个所对应实施例提供的方法。
本申请实施例的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、装置、产品或设备固有的其他步骤单元。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照网元一般性地描述了各示例的组成及步骤。这些网元究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的网元,但是这种实现不应认为超出本申请的范围。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (13)
1.一种数据处理方法,其特征在于,包括:
第一网络设备接收加密数据;所述加密数据是第二网络设备通过第一活跃秘钥表中的目标秘钥进行加密的数据;所述第一活跃秘钥表存储在所述第二网络设备中;
若在第二活跃秘钥表中未查询到所述目标秘钥,则向边缘服务器发送秘钥查询请求,以使所述边缘服务器在全量秘钥表中获取所述目标秘钥;所述第二活跃秘钥表存储在所述第一网络设备中;所述全量秘钥表包含所述第一活跃秘钥表中的秘钥和所述第二活跃秘钥表中的秘钥;
接收所述边缘服务器发送的所述目标秘钥,通过从所述边缘服务器中获取到的所述目标秘钥对所述加密数据进行解密,得到解密数据。
2.根据权利要求1所述的方法,其特征在于,所述第二活跃秘钥表包含一个或多个秘钥索引,以及所述一个或多个秘钥索引分别映射的秘钥;
所述方法还包括:
接收目标秘钥索引;
查询所述第二活跃秘钥表中的一个或多个秘钥索引;
若在所述一个或多个秘钥索引中未查询到与所述目标秘钥索引相同的秘钥索引,则确定在所述第二活跃秘钥表中未查询到目标秘钥。
3.根据权利要求2所述的方法,其特征在于,还包括:
若在所述一个或多个秘钥索引中查询到与所述目标秘钥索引相同的秘钥索引,则从所述第二活跃秘钥表中获取与所述目标秘钥索引相同的秘钥索引映射的秘钥,作为所述目标秘钥;
通过从所述第二活跃秘钥表中获取到的所述目标秘钥对所述加密数据进行解密,得到解密数据。
4.根据权利要求2所述的方法,其特征在于,还包括:
获取缓存秘钥索引列表;所述缓存秘钥索引列表中包含有一个或多个缓存秘钥索引;
查询所述缓存秘钥索引列表中的一个或多个缓存秘钥索引;
若在所述一个或多个缓存秘钥索引查询到与所述目标秘钥索引相同的缓存秘钥索引,则在秘钥缓存区域中获取与所述目标秘钥索引相同的缓存秘钥索引映射的缓存秘钥,作为所述目标秘钥;所述秘钥缓存区域中存储有所述一个或多个缓存秘钥索引分别映射的缓存秘钥;
通过从所述秘钥缓存区域中获取到的所述目标秘钥对所述加密数据进行解密,得到解密数据;
若在所述一个或多个缓存秘钥索引未查询到与所述目标秘钥索引相同的缓存秘钥索引,则执行所述向边缘服务器发送秘钥查询请求的步骤。
5.根据权利要求4所述的方法,其特征在于,在所述通过从所述秘钥缓存区域中获取到的所述目标秘钥对所述加密数据进行解密,得到解密数据的步骤之后,所述方法还包括:
将所述一个或多个缓存秘钥索引中与所述目标秘钥索引相同的缓存秘钥索引,作为待移动缓存秘钥索引;
在所述缓存秘钥索引列表中将所述待移动缓存秘钥索引转移至所述缓存秘钥索引列表的列表头部。
6.根据权利要求5所述的方法,其特征在于,在所述通过从所述边缘服务器中获取到的所述目标秘钥对所述加密数据进行解密,得到解密数据的步骤之后,所述方法还包括:
确定所述缓存秘钥索引列表中的缓存秘钥索引数量;
若所述缓存秘钥索引数量等于缓存秘钥索引数量阈值,则将位于所述缓存秘钥索引列表的列表尾部的缓存秘钥索引,作为待删除缓存秘钥索引;
在所述秘钥缓存区域中删除所述待删除缓存秘钥索引映射的缓存秘钥,得到更新后的秘钥缓存区域;
删除所述缓存秘钥索引列表中的所述待删除缓存秘钥索引,得到更新后的缓存秘钥索引列表;
将所述目标秘钥索引插入所述更新后的缓存秘钥索引列表的列表头部,将所述目标秘钥存储进所述更新后的秘钥缓存区域中;
若所述缓存秘钥索引数量小于缓存秘钥索引数量阈值,则将所述目标秘钥索引插入所述缓存秘钥索引列表的列表头部,将所述目标秘钥存储进秘钥缓存区域中。
7.根据权利要求1所述的方法,其特征在于,还包括:
若所述边缘服务器在所述全量秘钥表中新增更新秘钥,则接收所述边缘服务器转发的秘钥添加指令;所述秘钥添加指令中包含所述更新秘钥;所述秘钥添加指令是由云端控制器生成,且由所述云端控制器发送至所述边缘服务器的添加指令;
根据所述秘钥添加指令,将所述更新秘钥添加至所述第二活跃秘钥表中。
8.根据权利要求1所述的方法,其特征在于,还包括:
接收所述边缘服务器转发的秘钥删除指令;所述秘钥删除指令中包含待删除秘钥;所述秘钥删除指令是由所述云端控制器生成,且由所述云端控制器发送至所述边缘服务器的删除指令;
在所述第二活跃秘钥表中,删除与所述待删除秘钥相同的秘钥;所述边缘服务器中的所述全量秘钥表继续存储有与所述待删除秘钥相同的秘钥。
9.根据权利要求1所述的方法,其特征在于,所述目标秘钥包含加密字符串和加密算法;
所述接收所述边缘服务器发送的所述目标秘钥,通过从所述边缘服务器中获取到的所述目标秘钥对所述加密数据进行解密,得到解密数据,包括:
接收所述边缘服务器发送的所述目标秘钥;
从所述边缘服务器中获取到的所述目标秘钥中获取所述加密字符串和所述加密算法;
根据所述加密算法和所述加密字符串对所述加密数据进行解密运算,得到加密数据。
10.根据权利要求1所述的方法,其特征在于,所述第一网络设备包含控制组件和虚拟网络功能组件;所述控制组件用于接收加密协议配置指令;所述加密协议配置指令是目标对象通过云端控制器生成的指令;所述加密协议配置指令用于指示所述控制组件通知所述虚拟网络功能组件配置加密协议;配置有所述加密协议的所述虚拟网络功能组件具有通过所述目标秘钥进行数据解密的功能。
11.一种数据处理装置,其特征在于,包括:
数据接收模块,用于接收加密数据;所述加密数据是第二网络设备通过第一活跃秘钥表中的目标秘钥进行加密的数据;所述第一活跃秘钥表存储在所述第二网络设备中;
第一查询模块,用于若在第二活跃秘钥表中未查询到所述目标秘钥,则向边缘服务器发送秘钥查询请求,以使所述边缘服务器在全量秘钥表中获取所述目标秘钥;所述第二活跃秘钥表存储在所述第一网络设备中;所述全量秘钥表包含所述第一活跃秘钥表中的秘钥和所述第二活跃秘钥表中的秘钥;
第一解密模块,用于接收所述边缘服务器发送的所述目标秘钥,通过从所述边缘服务器中获取到的所述目标秘钥对所述加密数据进行解密,得到解密数据。
12.一种计算机设备,其特征在于,包括:处理器、存储器以及网络接口;
所述处理器与所述存储器、所述网络接口相连,其中,所述网络接口用于提供数据通信功能,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行权利要求1-10任一项所述的方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序适于由处理器加载并执行权利要求1-10任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211173891.1A CN117811726A (zh) | 2022-09-26 | 2022-09-26 | 数据处理方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211173891.1A CN117811726A (zh) | 2022-09-26 | 2022-09-26 | 数据处理方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117811726A true CN117811726A (zh) | 2024-04-02 |
Family
ID=90418608
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211173891.1A Pending CN117811726A (zh) | 2022-09-26 | 2022-09-26 | 数据处理方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117811726A (zh) |
-
2022
- 2022-09-26 CN CN202211173891.1A patent/CN117811726A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5855630B2 (ja) | 仮想ローカルエリアネットワークのクラウドアプライアンスを管理するための管理サーバおよびその管理方法 | |
CN113453175B (zh) | 5g消息处理方法、装置、计算机设备和存储介质 | |
WO2014101889A1 (zh) | 数据同步方法及设备 | |
CN111193653A (zh) | 数据传输方法、装置、设备及存储介质 | |
JP2010231759A (ja) | モバイルクラウドプラットホームを具備したモバイル端末装置 | |
CN106603607A (zh) | 私有云桌面系统及其实现服务的方法和装置 | |
CN113572835B (zh) | 一种数据处理方法、网元设备以及可读存储介质 | |
US10893104B2 (en) | Implementing a storage system using a personal user device and a data distribution device | |
CN104980482A (zh) | 文件发送方法及装置、文件接收方法及装置 | |
CN104601468A (zh) | 报文转发方法和设备 | |
KR101240552B1 (ko) | 미디어 키 관리 및 상기 미디어 키를 이용한 피어-투-피어 메시지 송수신 시스템 및 방법 | |
CN113556359B (zh) | 一种通讯协议转换方法、设备、系统及网关设备 | |
CN106464596A (zh) | 开放流通信方法、系统、控制器和业务网关 | |
CN113709250B (zh) | 一种基于订阅发送模式的跨域用户数据同步方法 | |
CN102404616B (zh) | 基于数字电视网络进行数据云推送的方法及系统 | |
CN106411842B (zh) | 在内容中心网络堆栈中传输状态 | |
CN116668511A (zh) | 一种数据处理方法、网元设备以及可读存储介质 | |
JP2017208797A (ja) | 不均一ネットワークにまたがる統合されたデータ・ネットワーキング | |
CN102148839B (zh) | 一种管理ftp服务器的方法、装置及系统 | |
US9692723B2 (en) | Network management of devices residing behind a network device | |
CN110267077A (zh) | 离线缓存方法、装置、终端及可读存储介质 | |
CN101741877B (zh) | 媒体资源的操作方法、系统和设备 | |
KR102226915B1 (ko) | 소프트웨어 정의 네트워크에서 플로우 룰 데이터베이스를 운영하는 방법, 장치 및 컴퓨터 프로그램 | |
CN109213955A (zh) | 数据处理方法及相关设备 | |
CN112995005B (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 |