数据传输方法及装置与流程
未命名
07-13
阅读:87
评论:0
1.本技术涉及密码领域,尤其涉及一种数据传输方法及装置。
背景技术:
2.数据安全作为重要的课题,始终是各领域关注的重点。现如今逐渐进入大数据时代,海量数据在云上传输和存储,对待传输的数据进行加密作为一种提升数据安全度的手段,在大数据时代同样被广泛使用。云平台的数据传输过程可以包括:源节点获取目的节点的公钥,通过该公钥对待传输的数据进行加密,并将得到的密文传输至目的节点,目的节点通过私钥对密文解密,得到该数据。然而现有技术难以匹配云平台对于数据安全性的要求,在云平台上使用现有技术存在较大的数据泄露风险。
技术实现要素:
3.本技术提供了一种数据传输方法及装置,可以有效提升多节点云系统中数据传输的安全性。
4.本技术提供了一种数据传输方法,应用于多节点云系统的源节点,多节点云系统包括源节点、目的节点和多个代理节点,包括:确定多个更新后的代理节点的属性信息;根据每个代理节点的属性信息,将每个代理节点的属性信息保存到不同的代理节点集中;根据加密密钥对目标数据进行加密,以得到加密密文;向每个代理节点发送加密密文,以使每个代理节点分别对加密密文进行重加密得到重加密密文,以及向目的节点发送重加密密文。
5.相应地,本技术提供了一种数据传输装置,应用于多节点云系统的源节点,多节点云系统包括源节点、目的节点和多个代理节点,包括:确定模块,用于确定多个更新后的代理节点的属性信息;保存模块,用于根据每个代理节点的属性信息,将每个代理节点的属性信息保存到不同的代理节点集中,代理节点集包括多个代理节点的属性信息;加密模块,用户根据加密密钥对目标数据进行加密,以得到加密密文;传输模块,用于向每个代理节点发送加密密文,以使每个代理节点分别对加密密文进行重加密得到重加密密文,以及向目的节点发送重加密密文。
6.在一些实施例中,属性信息包括权重信息,多个代理节点包括第一代理节点,保存模块可以包括确定子模块和保存子模块,其中,确定子模块,用于根据第一代理节点的权重信息,确定第一代理节点对应的目标节点集;保存子模块,用于将第一代理节点的权重信息保存到目标节点集中。
7.在一些实施例中,加密模块包括接收子模块和加密子模块,其中,
接收子模块,用于接收密码机传输的加密密钥、以及加密密钥对应的加密参数,加密密钥为密码机基于源节点的公钥生成的密钥;加密子模块,用于根据加密密钥对目标数据进行加密,得到加密后数据和待传输的加密密文,加密密文包括加密后数据和加密参数。
8.在一些实施例中,传输模块具体用于:向每个代理节点发送加密密文,以使每个代理节点基于重加密密钥碎片对加密参数进行重加密,得到加密参数碎片和重加密密文,以及向目的节点发送重加密密文,重加密密文包括加密参数碎片和加密后数据,重加密密钥碎片为密码机基于源节点的私钥和目的节点的公钥生成的密钥碎片,重加密密钥碎片与代理节点一一对应。
9.本技术提供了一种数据传输方法,应用于多节点云系统的目的节点,多节点云系统包括源节点、目的节点和多个代理节点,多个代理节点包括第一代理节点,包括:确定多个已接收代理节点各自传输的重加密密文,已接收代理节点包括目的节点已接收的重加密密文所属代理节点,重加密密文包括加密后数据和加密参数碎片,加密后数据为源节点基于加密密钥对目标数据进行加密所得数据;获取多个代理节点集,以及每个代理节点集对应的解密策略;当多个已接收代理节点满足每个代理节点集对应的解密策略时,基于多个重加密密文各自对应的加密参数碎片进行计算,得到加密密钥;根据加密密钥对加密后数据进行解密,得到目标数据。
10.相应地,本技术提供了一种数据传输装置,应用于多节点云系统的目的节点,多节点云系统包括源节点、目的节点和多个代理节点,多个代理节点包括第一代理节点,包括:接收模块,用于确定多个已接收代理节点各自传输的重加密密文,已接收代理节点包括目的节点已接收的重加密密文所属代理节点,重加密密文包括加密后数据和加密参数碎片,加密后数据为源节点基于加密密钥对目标数据进行加密所得数据;策略模块,用于获取多个代理节点集,以及每个代理节点集对应的解密策略;计算模块,用于当多个已接收代理节点满足每个代理节点集对应的解密策略时,基于多个重加密密文各自对应的加密参数碎片进行计算,得到加密密钥;解密模块,用于根据加密密钥对加密后数据进行解密,得到目标数据。
11.在一些实施例中,代理节点集包括第一代理节点集和至少一个其他代理节点集,第一代理节点集对应第一解密策略,第一解密策略包括预设节点阈值,计算模块包括确定子模块和计算子模块,其中,确定子模块,用于从多个已接收代理节点中,确定属于第一代理节点集的至少一个第一已接收代理节点;计算子模块,用于当第一已接收代理节点的数量满足预设节点阈值、且多个已接收代理节点满足其他代理节点集对应的解密策略时,基于多个重加密密文各自对应的加密参数碎片进行计算,得到加密密钥。
12.在一些实施例中,代理节点集包括多个代理节点的权重信息,至少一个其他代理节点集包括第二代理节点集,第二代理节点集包括第二解密策略,第二解密策略包括权重和阈值,计算子模块包括确定单元、求和单元和计算单元,其中,确定单元,用于从多个已接收代理节点中,确定属于第二代理节点集的至少一个
第二已接收代理节点;求和单元,用于对所有第二已接收代理节点的权重信息求和,得到权重和值;计算单元,用于当第一已接收代理节点的数量满足预设节点阈值、且权重和值满足权重和阈值时,基于多个重加密密文各自对应的加密参数碎片进行计算,得到加密密钥。
13.在一些实施例中,计算单元具体用于:当第一已接收代理节点的数量满足预设节点阈值、且权重和值满足权重和阈值时,基于多个重加密密文各自对应的加密参数碎片、源节点的公钥和私钥、以及目标节点的私钥进行计算,得到加密密钥。
14.相应地,本技术实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序适于处理器进行加载,以执行本技术实施例提供的任一种数据传输方法。
15.相应地,本技术实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行计算机程序时实现本技术实施例提供的任一种数据传输方法。
16.本技术的数据传输方法可以应用于多节点云系统,多节点云系统可以包括源节点、目的节点和多个代理节点,其中,源节点可以确定多个更新后的代理节点的属性信息;根据每个代理节点的属性信息,将每个代理节点的属性信息保存到不同的代理节点集中,代理节点集包括多个代理节点的属性信息,每个代理节点集设置有不同的解密策略;根据加密密钥对目标数据进行加密,以得到加密密文;向每个代理节点发送加密密文,以使每个代理节点分别对加密密文进行重加密得到重加密密文,以及向目的节点发送重加密密文。
17.目的节点可以确定多个已接收代理节点各自传输的重加密密文,已接收代理节点包括目的节点已接收的重加密密文所属代理节点,重加密密文包括加密后数据和加密参数碎片,加密后数据为源节点基于加密密钥对目标数据进行加密所得数据;获取多个代理节点集,以及每个代理节点集对应的解密策略;当多个已接收代理节点满足每个代理节点集对应的解密策略时,基于多个重加密密文各自对应的加密参数碎片进行计算,得到加密密钥;根据加密密钥对加密后数据进行解密,得到目标数据。
18.本技术中,源节点可以根据加密密钥对目标数据进行加密,从而得到加密密文,本技术还向各个代理节点发送该加密密文,各个代理节点通过重加密密钥碎片对加密密文进行重加密,由各个代理节点对加密密文进行重加密,有效提升目标数据的传输安全性。
19.本技术中源节点根据代理节点的属性信息,将代理节点划分入不同的代理节点集中,每个代理节点集合对应不同的解密策略,目的节点可以接收多个代理节点各自传输的重加密密文,当传输了重加密密文的代理节点可以满足每个代理节点集的解密策略时,则通过接收到的所有重加密密文进行解密,从而得到目标数据,本技术通过为多个代理节点各自设置解密策略的方式,提升数据解密门槛,进而提升数据解密过程的安全性。
附图说明
20.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附
图。
21.图1为本技术实施例提供的数据传输系统的系统示意图;图2为本技术实施例提供的数据传输方法的流程示意图;图3为本技术实施例提供的数据传输方法的另一流程示意图;图4为本技术实施例提供的数据传输方法的另一流程示意图。
具体实施方式
22.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,本技术所描述的实施例仅仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
23.本技术提供了一种数据传输方法及装置,具体地,本技术的数据传输方法可以集成在数据传输系统中。
24.本技术的数据传输系统可以包括多节点云系统,多节点云系统可以包括多个节点,数据传输系统可以集成在多个计算机设备中,也即多节点云系统可以集成在多个计算机设备中,节点可以对应至少一个计算机设备。
25.计算机设备可以包括终端、服务器、网络设备等中的至少一种,终端可以包括包括个人电脑、平板电脑、智能摄像装置、个人可穿戴设备等,服务器可以包括物理服务器、云服务器等,物理服务器可以为单个服务器,也可以包括至少两个服务器构成的服务器集群、或分布式系统等。云服务器可以提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务。网络设备可以包括路由设备、交换机、网关、网桥等。不同计算机设备之间可以通过有线或无线通信方式进行直接或间接连接,本技术对此不做限制。
26.多节点云系统可以包括源节点、目的节点以及多个代理节点,源节点可以包括将要发送数据的节点,目的节点可以包括将要接收数据的节点,代理节点可以包括数据传输过程所经过的节点。
27.具体地,源节点可以确定多个更新后的代理节点的属性信息;根据每个代理节点的属性信息,将每个代理节点的属性信息保存到不同的代理节点集中,代理节点集包括多个代理节点的属性信息,每个代理节点集设置有不同的解密策略;根据加密密钥对目标数据进行加密,以得到加密密文;向每个代理节点发送加密密文。
28.代理节点可以包括多个,每个代理节点可以接收密码机为其对应生成的重加密密钥碎片,每个代理节点可以分别根据其接收到的重加密密钥碎片对加密密文进行重加密,从而得到重加密密文,每个代理节点可以分别向目的节点传输重加密密文。
29.目的节点可以确定多个已接收代理节点各自传输的重加密密文,已接收代理节点可以包括目的节点已接收的重加密密文所属的代理节点,重加密密文可以包括加密后数据和加密参数碎片,加密后数据可以包括源节点根据加密密钥对目标数据进行加密所得的数据,目的节点可以获取多个代理节点集、以及每个代理节点集对应的解密策略,当多个已接收代理节点可以满足每个代理节点对应的解密策略时,基于多个重加密密文各自包含的加密参数碎片进行计算,得到加密密钥,再根据加密密钥对加密后数据进行解密,得到目标数
据。
30.比如,参见图1,多节点云系统可以包括源节、目的节点、第一代理节点、第二代理节点和第三代理节点。
31.源节点可以根据获取多个更新后的代理节点的权重信息,代理节点包括第一代理节点、第二代理节点和第三代理节点,第一代理节点对应第一权重信息,第二代理节点对应第二权重信息,第三代理节点对应第三权重信息,根据每个代理节点的权重信息,将第一代理节点和第二代理节点划分到第一代理节点集合中,将第三代理节点划分到第二代理节点集合中。
32.源节点可以根据加密密钥对待传输的目标数据进行加密,得到加密后数据,由加密后数据和加密密钥的加密参数得到加密密文。加密密钥可以包括密码机生成的密钥。
33.源节点可以向第一代理节点、第二代理节点和第三代理节点分别发送加密密文。密码机可以分别为第一代理节点、第二代理节点和第三代理节点生成第一重加密密钥碎片、第二重加密密钥碎片和第三重加密密钥碎片,并分别重加密密钥碎片发送到其对应的代理节点。
34.第一代理节点可以接收加密密文,还可以接收第一重加密密钥碎片,根据第一重加密密钥碎片对加密密文中的加密参数进行重加密,得到第一加密参数碎片,由第一加密参数碎片和加密后数据可以得到第一重加密密文,第一代理节点可以向目的节点传输第一重加密密文。第二代理节点和第三代理节点也可以执行与第一代理节点类似的操作,在此不再赘述。
35.目的节点可以获取第一代理节点集合和第二代理节点集合,第一代理节点集合包括第一代理节点和第二代理节点,第二代理节点集合包括第三代理节点,第一代理节点集合对应第一解密策略,第一解密策略包括权重阈值,第二代理节点集合对应第二解密策略,第二解密策略包括节点数量阈值。
36.目的节点可以接收第一代理节点传输的第一重加密密文,接收第三代理节点传输的第三重加密密文,目标节点可以确定第一代理节点属于第一代理节点集合,判断第一代理节点的权重信息是否与权重阈值相匹配,若匹配则确定第一代理节点集合的第一解密策略已满足;目标节点可以确定第三代理节点属于第二代理节点集合,判断接收到重加密密文所属代理节点属于第二代理节点集合的节点数量是否与节点数量阈值相匹配,若匹配则确定第二代理节点集合的第二解密策略已满足。
37.当第一代理节点集合的第一解密策略和第二代理节点集合的第二解密策略均满足时,可以根据第一重加密密文的加密参数碎片、第二重加密密文的加密参数碎片和第三重加密密文的加密参数碎片进行计算,得到加密密钥,再通过加密密钥对重加密密文中的加密后数据进行解密,得到目标数据。
38.需要说明的是,图1所示的数据传输系统的场景示意图仅仅是一个示例,本技术实施例描述的数据传输系统以及场景是为了更加清楚的说明本技术实施例的技术方案,并不构成对于本技术实施例提供的技术方案的限定,本领域普通技术人员可知,随着数据传输系统的演变和新业务场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
39.下面将结合实施例对本技术的数据传输方法进行详细说明。
40.参见图2,图2为本技术的数据传输方法的流程示意图,图2中的处理流程可以应用于多节点云系统中的源节点,具体地,110、确定多个更新后的代理节点的属性信息。
41.其中,属性信息可以包括表征代理节点属性的信息,比如代理节点在网络中的位置、自身权重、标识符、种类等。
42.本技术的多节点云系统可以包括多个代理节点,为了便于管理,可以通过将代理节点的属性信息保存在数据集合中,数据集合中的代理节点可以动态更新,比如去除数据集合中部分代理节点的属性信息、或向数据集合中存入部分代理节点的属性信息。由此可以对多节点云系统中的代理节点进行灵活调整,更好地根据实际需求进行权限控制,提升在多节点云系统中传输数据的安全性。
43.数据集合可以由多节点云系统中的特定节点维护,也可以由源节点维护。源节点在传输数据之前,可以从数据集合中获取多个更新后的代理节点的属性信息。
44.120、根据每个代理节点的属性信息,将每个代理节点的属性信息保存到不同的代理节点集中。
45.代理节点集可以包括多个代理节点,具体代理节点集可以存储代理节点的属性信息。
46.根据代理节点的属性信息确定其所属的代理节点的方式可以有多种,比如,属性信息可以包括代理节点的类别,可以根据代理节点的类别确定其所属的代理节点集,并将该代理节点的属性信息保存在代理节点集中。
47.在一些实施例中,属性信息可以包括权重信息,可以根据代理节点的权重信息确定其所属的代理节点集,比如,权重信息可以如权重值,一个代理节点集可以对应一个权重值范围,当代理节点的权重值属于某代理节点集的权重值范围时,将该代理节点的权重信息保存到该代理节点集中。
48.又比如,多个代理节点中包括第一代理节点,不同的代理节点集可以包括目标节点集,可以根据第一代理节点的权重信息,确定其所属的目标节点集,将第一代理节点的权重信息保存到目标节点集中。
49.130、根据加密密钥对目标数据进行加密,以得到加密密文。
50.加密密钥可以包括用于对数据进行加密的密钥,加密密钥可以通过密码机生成,加密密钥也可以预先设置并存储在源节点,等。
51.目标数据可以包括将要从源节点向目的节点传输的数据。
52.加密从而得加密密文的方式可以有多种,如根据加密密钥对目标数据进行加密,得到加密后数据,由加密后数据构成加密密文。
53.在一些实施例中,可以接收密码机传输的加密密钥和与加密密钥对应的加密参数,然后通过加密密钥对目标数据进行加密,得到加密后数据,加密后数据和加密参数可以构成加密密文。
54.密码机可以基于源节点的公钥生成加密密钥,具体过程可以包括:密码机获取源节点的公钥,由封装算法封装随机数,封装算法可以计算和
,,其中、为预先确定的全局公共参数,然后封装算法可以检验、、的有效性,验证成功后可以通过密钥推导函数kdf计算加密密钥,加密参数capsule可以为元组,最后封装算法输出加密密钥和加密参数capsule,具体可以为元组。代理节点可以向源节点传输元组。
55.比如,源节点用加密密钥对目标数据进行对称加密,得到加密后数据encdata,进而得到加密密文(encdata,),加密密文包括加密后数据和加密参数。
56.140、向每个代理节点发送加密密文,以使每个代理节点分别对加密密文进行重加密得到重加密密文,以及向目的节点发送重加密密文。
57.重加密密文可以包括对包含目标数据的加密密文进行再次加密所得密文。
58.代理节点可以对接收到的加密密文进行重加密,得到重加密密文,向目的节点发送重加密密文。
59.在一些实施例中,代理节点可以接收加密密文,加密密文可以包括加密后数据和加密参数,还可以接收密码机发送的重加密钥碎片。
60.代理节点可以根据重加密密钥碎片对加密参数进行重加密,得到加密参数碎片,加密参数碎片和加密后数据可以组成重加密密文,代理节点可以向目的节点发送重加密密文。
61.其中,重加密密钥碎片可以用于加密,重加密密钥碎片可以由密码机生成,不同的代理节点可以各自对应一个重加密密钥碎片。
62.密码机基于源节点的私钥和目的节点的公钥可以为各个代理节点生成重加密密钥碎片,具体地可以包括:可以通过函数()生成各个代理节点的重加密密钥碎片,如,其中源节点的私钥,目的节点的公钥,代理节点集数量为e,各个代理节点集中代理节点的数量分别为,则生成重加密密钥碎片的数量为,n为代理节点数量为s的代理节点集的权重阈值,代理节点数量为的代理节点集的节点数量阈值均为1。
63.其中,具有个代理节点的代理节点集可以记为a,则对于代理节点集a中的代理节点,计算其重加密密钥碎片的过程可以具体包括:1)从区间集合中随机选择,计算,其中,为预先确定的全局公共参数。
64.区间集合可以包括个数值,中所有数值的范围可以包括1-q,可以如,,q可以为正整数。
65.2)从区间集合中随机挑选n-1个,其中,计算
,其中为从集合中确定的随机数,d可以通过计算得到,如,其中,为预先确定的全局公共参数,为一种哈希函数,为目的节点的公钥。
66.3)构造多项式,其中,,可以为第个代理节点的权重值。
67.4)计算,其中,为源节点的公钥,为目的节点的公钥,为从集合中确定的随机数,为预先确定的全局公共参数,为一种哈希函数。
68.5)初始化重加密密钥集合为空,重复n次此初始化操作,使得重加密密钥集合中每个代理节点的重加密密钥碎片为空。选择随机数,分别计算,,,,其中,为预先确定的全局公共参数,为一种哈希函数。定义重加密密钥碎片kfrag为元组。
69.其中,具有个代理节点的代理节点集可以分别记为,可以为大于1的正整数,可以从中随机选择,(所有互不相等)作为代理节点集的身份秘密,计算代理节点集,中代理节点的重加密密钥碎片的过程可以包括:1)从区间集合中随机选择,计算,其中,为预先确定的全局公共参数。
70.2)计算,其中,为预先确定的全局公共参数,为一种哈希函数,为目的节点的公钥。
71.d是目的节点的密钥对(公钥和私钥)和临时密钥对的基于diffie-hellman算法(一种密钥交换算法)进行密钥交换所得结果,使用这个共享密钥来使方案的重新加密密钥构成非交互式。
72.3)从区间集合随机挑选个,其中并且计算,其中为从集合中确定的随机数。
73.4)构造多项式,5)计算,其中为从集合中确定的随机数,为预
先确定的全局公共参数,为一种哈希函数。
74.6)初始化重加密密钥集合为空,重复n次此初始化操作,使得重加密密钥集合中每个代理节点的重加密密钥碎片为空。选择随机数,计算,,,,其中,为预先确定的全局公共参数,为一种哈希函数。将重加密密钥碎片kfrag定义为元组。比如,源节点向各个代理节点发送加密密文(encdata,),代理节点接收加密密文(encdata,),还接收密码机发送的重加密密文碎片kfrag,代理节点根据重加密密文碎片kfrag对加密参数进行重加密,具体地capsule可以为元组,kfrag可以为元组,可以计算和,从而得到加密参数碎片,加密参数碎片可以记为元组,进而得到重加密密文(encdata,),重加密密文包括加密后数据encdata和加密参数碎片。
75.本技术可以在代理节点对密文进行重加密,同时代理节点并不能对解密后数据进行解密,通过此方式进一步提升密文的秘密程度,降低目标数据在传输过程的泄露风险,进而提升整个数据传输过程的安全性,参见图3,图3为本技术的数据传输方法的流程示意图,图3中的处理流程可以应用于多节点云系统中的目的节点,具体地,210、确定多个已接收代理节点各自传输的重加密密文,已接收代理节点包括目的节点已接收的重加密密文所属代理节点,重加密密文包括加密后数据和加密参数碎片,加密后数据为源节点基于加密密钥对目标数据进行加密所得数据。
76.重加密密文可以包括加密后数据和加密参数碎片,加密后数据可以包括源节点基于加密密钥对目标数据进行加密所得数据,加密参数碎片可以包括代理节点基于重加密密钥碎片对加密参数进行重加密所得。
77.各个代理节点可以向目的节点传输重加密密文,目的节点可以接收部分或全部代理节点传输的重加密密文,部分代理节点传输的重加密密文可能由于丢失、被拦截等异常情况而无法到达目的节点,可以将目的节点接收的重加密密文所属的代理节点确定为已接收代理节点。
78.220、获取多个代理节点集,以及每个代理节点集对应的解密策略。
79.代理节点集可以包括多个代理节点,具体代理节点集可以存储代理节点的属性信息。
80.解密策略可以包括目的节点对包含目标数据的重加密密文进行解析所要满足的条件,一个代理节点集可以对应一个解密策略,所有代理节点集的解密策略均满足时,可以根据所有接收到的重加密密文进行解密,得到目标数据。
81.目的节点可以从源节点或多节点云系统中的其他节点获取多个代理节点集以及
每个代理节点集对应的解密策略。
82.230、当多个已接收代理节点满足每个代理节点集对应的解密策略时,基于多个重加密密文各自对应的加密参数碎片进行计算,得到加密密钥。
83.多个已接收代理节点可以属于不同的代理节点集,当多个已接收代理节点可以满足不同代理节点集的解密策略时,即可根据所有接收到的重加密密文各自对应的加密参数碎片进行计算,还原得到加密密钥。由此可以提升目的节点得到加密密钥的门槛,进一步提升解密过程的安全性,进而提升数据传输整体过程的安全性。
84.在一些实施例中,代理节点集的解密策略可以包括预设节点阈值,不同代理节点集可以对应不同的预设节点阈值。当属于某代理节点集的已接收代理节点的数量与该代理节点集对应的预设节点阈值相匹配时,可以确定该代理节点集满足其对应的解密策略,当所有代理节点集的解密策略均满足时,即可基于多个重加密密文各自对应的加密参数碎片进行计算,得到加密密钥。
85.比如,代理节点集1和代理节点集2分别对应节点阈值:数值1和节点阈值:数值3,目标节点已接收了代理节点a的重加密密文a,代理节点b的重加密密文b、代理节点c的重加密密文c、以及代理节点d的重加密密文d。
86.目标节点确定代理节点a、代理节点c和代理节点d均属于代理节点集2,代理节点b属于代理节点集1,则代理节点集1的节点阈值:数值1已满足(已接收到1个属于代理节点集1的代理节点传输的重加密密文),且代理节点集2的节点阈值也已满足(已接收到3个属于代理节点集2的代理节点传输的重加密密文),可以根据重加密密文a中的加密碎片、重加密密文b中的加密碎片、重加密密文c中的加密碎片和重加密密文d中的加密碎片进行计算,得到加密密钥k。
87.在一些实施例中,代理节点集的解密策略可以包括权重和阈值,不同的代理节点集可以对应不同的权重和阈值。当属于某代理节点集的所有已接收代理节点的权重信息之和与该代理节点集对应的权重和阈值相匹配时,可以确定该代理节点集满足其对应的解密策略,当所有代理节点集的解密策略均满足时,即可基于多个重加密密文各自对应的加密参数碎片进行计算,得到加密密钥。
88.比如,代理节点集1和代理节点集2分别对应权重和阈值:数值8和节点阈值:数值5,目标节点已接收了代理节点a的重加密密文a,代理节点b的重加密密文b、代理节点c的重加密密文c、以及代理节点d的重加密密文d。
89.目标节点确定代理节点a和代理节点b均属于代理节点集1,代理节点c和代理节点d均属于代理节点集2,权重信息可以为权重值,代理节点a的权重值:数值6和代理节点b的权重值:数值3的和值为数值9,大于代理节点集1的权重和阈值:数值8,即代理节点集1的解密策略已满足,且代理节点c的权重值:数值3和代理节点]d的权重值:数值2的和值为数值5,等于代理节点集2的权重和阈值:数值5,即代理节点集2的解密策略也已满足,此时可以根据重加密密文a中的加密碎片、重加密密文b中的加密碎片、重加密密文c中的加密碎片和重加密密文d中的加密碎片进行计算,得到加密密钥k。
90.在一些实施例中,多个代理节点集中,部分代理节点集的解密策略可以包括预设节点阈值,部分代理节点集的解密策略可以包括权重和阈值,由此可以进一步提升解密条件,保证数据传输的安全性。
91.对于解密策略包括权重和阈值的至少一个代理节点集,当属于某代理节点集的所有已接收代理节点的权重信息之和与该代理节点集对应的权重和阈值相匹配时,可以确定该代理节点集满足其对应的解密策略。当属于某代理节点集的已接收代理节点的数量与该代理节点集对应的预设节点阈值相匹配时,可以确定该代理节点集满足其对应的解密策略。当所有解密策略包含权重和阈值的代理节点集的解密条件均满足、且所有解密策略包含预设节点阈值的代理节点集的解密条件均满足时,即可基于多个重加密密文各自对应的加密参数碎片进行计算,得到加密密钥。
92.比如,代理节点集a的解密条件包括权重和阈值:数值10,代理节点集的解密条件均为节点阈值:数值1。当属于代理节点集a的已接收代理节点的权重值之和大于或等于10,且分别属于代理节点集的已接收代理节点的数量均大于或等于1,可以确定多个已接收代理节点满足所有代理节点集的解密策略,可以根据多个重加密密文各自对应的加密密钥碎片进行计算,得到加密密钥。
93.具体地,基于多个重加密密文各自对应的加密密钥碎片进行计算得到加密密钥的方式可以有多种,比如,可以将所有加密密钥碎片拼接起来,得到加密密钥。
94.在一些实施例中,可以根据所有加密密钥碎片进行计算,比如,目标节点可以接收满足代理节点集a以及代理节点集的解密策略的多个已接收代理节点传输的重加密密文,代理节点集a和代理节点集的解密策略可以分别包括节点阈值:数值n,数值1,数值1.数值,
……
,数值1。可知已接收代理节点的数量可以至少为,每个已接收代理节点传输的重加密密文可以记为(encdata,),encdata为加密后数据,为加密密钥碎片,可以记为,由个确定加密密钥k的过程可以包括:1)计算,其中,其中和分别为目的节点的公钥和私钥。
95.2)根据,计算:其中,随机数,为预先确定的全局公共参数,为一种哈希函数。
96.3)计算:
4)计算:,此时d是采用diffie-hellman密钥交换算法所得的结果。
97.5)计算加密密钥。
98.240、根据加密密钥对加密后数据进行解密,得到目标数据。
99.本技术中源节点根据代理节点的属性信息,将代理节点划分入不同的代理节点集中,每个代理节点集合对应不同的解密策略,目的节点可以接收多个代理节点各自传输的重加密密文,当传输了重加密密文的代理节点可以满足每个代理节点集的解密策略时,则通过接收到的所有重加密密文进行解密,从而得到目标数据,本技术通过为多个代理节点各自设置解密策略的方式,提升数据解密门槛,进而提升数据解密过程的安全性。
100.参见图3,图3为本技术的数据传输方法的一个整体流程图,具体地,发送方可以包括将要发送数据的节点,接收方可以包括将要接收数据的节点,密码机可以生成发送方的公钥a和私钥a,接收方的公钥b和私钥b,密码机可以基于发送方的公钥a生成对称密钥k,发送方可以通过对称密钥k对待传输的明文进行对称机密,以得到密文1,发送方可以向各个代理节点发送密文1。
101.发送方可以保存多个代理节点集,代理节点集可以包括至少一个代理节点,以及代理节点的权重/权限信息,源节点可以向密码机传输代理节点集以及每个代理节点集的解密策略,密码机可以基于发送方的私钥a和接收方的公钥b对每个代理节点集中的代理节点分别生成重加密密钥碎片,并将各个重加密密钥碎片分别发送到其所属的代理节点中。代理节点可以根据重加密密钥碎片对接收到的密文1进行重加密,得到密文2,向接收方发送密文2。
102.接收方在确定接收的多个密文2可以满足各个代理节点集的解密策略时,通过多个密文2和接收方的私钥进行计算,得到对称密钥k,再有对称密钥k进行解密,得到明文。
103.由此本技术可以实现在云系统中保证需要传输的数据安全性的前提下,实现数据的安全流通和转换,促进大数据的流通融合,可以在传输过程和解密过程提升复杂度,进而提升数据传输过程的安全性。
104.需要说明的是,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
105.应当理解,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
106.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
107.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
108.在本技术中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本技术中的具体含义。
109.尽管上面已经示出和描述了本技术的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本技术的限制,本领域的普通技术人员在本技术的范围内可以对上述实施例进行变化、修改、替换和变型。
技术特征:
1.一种数据传输方法,应用于多节点云系统的源节点,其特征在于,所述多节点云系统包括源节点、目的节点和多个代理节点,包括:确定多个更新后的代理节点的属性信息;根据每个所述代理节点的属性信息,将每个所述代理节点的属性信息保存到不同的代理节点集中;根据加密密钥对目标数据进行加密,以得到加密密文;向每个所述代理节点发送所述加密密文,以使每个所述代理节点分别对所述加密密文进行重加密得到重加密密文,以及向所述目的节点发送重加密密文。2.根据权利要求1所述的数据传输方法,其特征在于,所述属性信息包括权重信息,所述多个代理节点包括第一代理节点,所述根据每个所述代理节点的属性信息,将每个所述代理节点的属性信息保存到不同的代理节点集中,包括:根据所述第一代理节点的权重信息,确定所述第一代理节点对应的目标节点集;将所述第一代理节点的权重信息保存到所述目标节点集中。3.根据权利要求1所述的数据传输方法,其特征在于,所述根据加密密钥对目标数据进行加密,以得到加密密文,包括:接收密码机传输的加密密钥、以及所述加密密钥对应的加密参数,所述加密密钥为所述密码机基于所述源节点的公钥生成的密钥;根据所述加密密钥对目标数据进行加密,得到加密后数据和待传输的加密密文,所述加密密文包括所述加密后数据和所述加密参数。4.根据权利要求3所述的数据传输方法,其特征在于,所述向每个所述代理节点发送所述加密密文,以使每个所述代理节点分别对所述加密密文进行重加密得到重加密密文,以及向所述目的节点发送重加密密文,包括:向每个所述代理节点发送所述加密密文,以使每个所述代理节点基于重加密密钥碎片对所述加密参数进行重加密,得到加密参数碎片和重加密密文,以及向所述目的节点发送所述重加密密文,所述重加密密文包括所述加密参数碎片和所述加密后数据,所述重加密密钥碎片为所述密码机基于所述源节点的私钥和所述目的节点的公钥生成的密钥碎片,所述重加密密钥碎片与所述代理节点一一对应。5.一种数据传输方法,应用于多节点云系统的目的节点,其特征在于,所述多节点云系统包括源节点、目的节点和多个代理节点,包括:确定多个已接收代理节点各自传输的重加密密文,所述已接收代理节点包括所述目的节点已接收的重加密密文所属代理节点,所述重加密密文包括加密后数据和加密参数碎片,所述加密后数据为所述源节点基于加密密钥对目标数据进行加密所得数据;获取多个代理节点集,以及每个所述代理节点集对应的解密策略;当所述多个已接收代理节点满足每个所述代理节点集对应的解密策略时,基于所述多个重加密密文各自对应的加密参数碎片进行计算,得到所述加密密钥;根据所述加密密钥对所述加密后数据进行解密,得到目标数据。6.根据权利要求5所述的数据传输方法,其特征在于,所述代理节点集包括第一代理节点集和至少一个其他代理节点集,所述第一代理节点集对应第一解密策略,所述第一解密
策略包括预设节点阈值,所述当所述多个已接收代理节点满足每个所述代理节点集对应的解密策略时,基于所述多个重加密密文各自对应的加密参数碎片进行计算,得到所述加密密钥,包括:从所述多个已接收代理节点中,确定属于所述第一代理节点集的至少一个第一已接收代理节点;当所述第一已接收代理节点的数量满足预设节点阈值、且所述多个已接收代理节点满足所述其他代理节点集对应的解密策略时,基于所述多个重加密密文各自对应的加密参数碎片进行计算,得到所述加密密钥。7.根据权利要求6所述的数据传输方法,其特征在于,所述代理节点集包括多个代理节点的权重信息,所述至少一个其他代理节点集包括第二代理节点集,所述第二代理节点集包括第二解密策略,所述第二解密策略包括权重和阈值,所述当所述第一已接收代理节点的数量满足预设节点阈值、且所述多个已接收代理节点满足所述其他代理节点集对应的解密策略时,基于所述多个重加密密文各自对应的加密参数碎片进行计算,得到所述加密密钥,包括:从所述多个已接收代理节点中,确定属于所述第二代理节点集的至少一个第二已接收代理节点;对所有所述第二已接收代理节点的权重信息求和,得到权重和值;当所述第一已接收代理节点的数量满足预设节点阈值、且所述权重和值满足所述权重和阈值时,基于所述多个重加密密文各自对应的加密参数碎片进行计算,得到所述加密密钥。8.根据权利要求7所述的数据传输方法,其特征在于,所述当所述第一已接收代理节点的数量满足预设节点阈值、且所述权重和值满足所述权重和阈值时,基于所述多个重加密密文各自对应的加密参数碎片进行计算,得到所述加密密钥,包括:当所述第一已接收代理节点的数量满足预设节点阈值、且所述权重和值满足所述权重和阈值时,基于所述多个重加密密文各自对应的加密参数碎片、所述源节点的公钥和私钥、以及所述目标节点的私钥进行计算,得到所述加密密钥。9.一种消息传输装置,应用于多节点云系统的源节点,其特征在于,所述多节点云系统包括源节点、目的节点和多个代理节点,包括:确定模块,用于确定多个更新后的代理节点的属性信息;保存模块,用于根据每个所述代理节点的属性信息,将每个所述代理节点的属性信息保存到不同的代理节点集中;加密模块,用户根据加密密钥对目标数据进行加密,以得到加密密文;传输模块,用于向每个所述代理节点发送所述加密密文,以使每个所述代理节点分别对所述加密密文进行重加密得到重加密密文,以及向所述目的节点发送重加密密文。10.一种消息传输装置,应用于多节点云系统的目的节点,其特征在于,所述多节点云系统包括源节点、目的节点和多个代理节点,包括:接收模块,用于确定多个已接收代理节点各自传输的重加密密文,所述已接收代理节点包括所述目的节点已接收的重加密密文所属代理节点,所述重加密密文包括加密后数据和加密参数碎片,所述加密后数据为所述源节点基于加密密钥对目标数据进行加密所得数
据;策略模块,用于获取多个代理节点集,以及每个所述代理节点集对应的解密策略;计算模块,用于当所述多个已接收代理节点满足每个所述代理节点集对应的解密策略时,基于所述多个重加密密文各自对应的加密参数碎片进行计算,得到所述加密密钥;解密模块,用于根据所述加密密钥对所述加密后数据进行解密,得到目标数据。
技术总结
本发明申请公开了一种数据传输方法及装置;本申请的数据传输方法可以应用于多节点云系统,多节点云系统可以包括源节点、目的节点以及多个代理节点,其中,源节点可以确定多个更新后的代理节点的属性信息;根据每个代理节点的属性信息,将每个代理节点的属性信息保存到不同的代理节点集中;根据加密密钥对目标数据进行加密,以得到加密密文;向每个代理节点发送加密密文,以使每个代理节点分别对加密密文进行重加密得到重加密密文,以及向目的节点发送重加密密文;本申请可以提升消息传输安全性。性。性。
技术研发人员:夏信 谢孟凯 金闪 周富满 林勇 张华民 李秉伦 李方伟 邵明辰 郑晓静 学健 靳海涛 张冰琦
受保护的技术使用者:北京电科智芯科技有限公司
技术研发日:2023.05.31
技术公布日:2023/7/12
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种涂料施工后烘干装置的制作方法 下一篇:一种船舶倾斜试验测量装置的制作方法
