本技术涉及数据处理领域,具体涉及一种数据加密方法、装置及电子设备。
背景技术:
1、随着互联网技术的快速发展和数字化进程的不断加速,越来越多的个人和企业将大量的敏感数据和隐私信息存储在云端或者通过网络进行传输。这些数据一旦被恶意窃取或篡改,可能会给个人隐私和企业商业机密带来严重的安全威胁。因此,数据加密技术成为保护数据安全不可或缺的重要手段,受到广泛关注和应用。
2、目前,相关技术的数据加密方案主要采用集中式的加密模式,即将原始数据全部集中在一个节点上进行加密。而集中式加密方案中的单个节点成为安全的薄弱环节,一旦该节点被攻破或者加密密钥泄露,整个数据的安全性都会受到严重威胁,因此,相关技术存在数据安全性较低的问题。
3、因此,亟需一种数据加密方法、装置及电子设备。
技术实现思路
1、本技术提供了一种数据加密方法、装置及电子设备,将原始数据分割成多个数据块,并将其分发到多个参与方进行加密,降低单点故障和数据泄露的风险,提高了数据的安全性。
2、在本技术的第一方面提供了一种数据加密方法,该方法包括:获取原始数据;获取多个参与方以及多个所述参与方的参与方数量;根据所述参与方数量,将所述原始数据分割为多个数据块,多个所述数据块的数量为所述参与方数量;发送各个所述数据块至所述参与方,一个所述数据块对应发送至一个所述参与方;基于所述参与方的加密密钥,分别完成对各个所述数据块的加密,得到目标加密数据。
3、通过采用上述技术方案,通过获取原始数据和多个参与方,根据参与方的数量将原始数据分割为对应数量的数据块,并将数据块分发给各个参与方,每个参与方使用自己的加密密钥对收到的数据块进行加密,最终得到目标加密数据。这种分布式的数据加密方法,可以有效地提高数据的安全性和保密性。首先,原始数据被分割成多个数据块,每个数据块只包含部分信息,单独一个数据块无法还原出完整的原始数据,从而降低了数据泄露的风险。其次,数据块被分发到多个参与方进行加密,每个参与方只掌握自己的加密密钥,无法获知其他参与方的加密情况,即使某个参与方被攻破,也不会影响整个数据的安全性。最后,通过多个参与方的协同加密,可以实现数据的分散存储和冗余备份,提高了数据的可用性和可靠性。总的来说,上述数据加密方法,通过数据分块、分发和多方加密的方式,实现了数据的安全存储和传输,有效地保护了数据的机密性和完整性。
4、可选的,所述发送各个所述数据块至所述参与方之前,所述方法还包括:按照预设排序规则对所述参与方进行排序,得到排序列表;将第一数据块发送至第一参与方,得到第一加密数据,其中,所述第一加密数据为所述第一参与方采用第一加密密钥加密后的数据,所述第一参与方为多个所述参与方中排在所述排序列表中第一的参与方,所述第一数据块为多个所述数据块中的任意一个数据块。
5、通过采用上述技术方案,在发送数据块给参与方之前,引入了对参与方进行排序的步骤,按照预设排序规则对参与方进行排序,得到一个排序列表。这样可以合理安排数据块的加密顺序,提高加密效率和安全性。按照排序列表的顺序依次进行加密,可以实现加密过程的有序化和规范化,避免出现加密顺序混乱、加密结果不一致等问题,保证了加密过程的正确性。此外,将第一个数据块发送给排序列表中的第一个参与方进行加密,得到第一加密数据,为后续的级联加密做好准备,提高了加密的效率和可扩展性。总的来说,上述的参与方排序机制,通过合理安排加密顺序,优化了加密过程,提高了加密效率和安全性,同时为后续的级联加密提供了良好的基础。
6、可选的,所述将第一数据块发送至第一参与方,得到第一加密数据之后,所述方法还包括:发送第二加密数据至第三参与方,得到第三加密数据,其中,所述第二加密数据为第二参与方采用第二加密密钥加密后的数据,所述第三加密数据为所述第三参与方将所述第二加密数据和第三数据块进行组合,得到第一组合数据后,并采用第三加密密钥对所述第一组合数据加密后的数据,所述第三参与方为多个所述参与方中,根据所述排序列表与所述第二参与方相邻且位于所述第二参与方之后的参与方,所述第二参与方为多个所述参与方中的任意一个参与方。
7、通过采用上述技术方案,引入了级联加密的步骤,将第二参与方的加密数据发送给第三参与方,第三参与方将收到的第二加密数据与第三数据块进行组合,得到第一组合数据,并使用自己的加密密钥对第一组合数据进行加密,得到第三加密数据。这种级联加密的方式,可以进一步提高数据的安全性和保密性。首先,通过将前一个参与方的加密数据与当前参与方的数据块进行组合,实现了数据的混合和扰动,增加了数据的随机性和复杂度,使得数据更难被破解和还原。其次,级联加密的过程中,每个参与方只能获取前一个参与方的加密数据和自己的数据块,无法直接接触到原始数据或其他参与方的加密情况,进一步降低了数据泄露的风险。此外,级联加密的方式可以灵活扩展,根据实际需求增加或减少参与方的数量,提高了加密方案的适应性和可扩展性。总的来说,上述的级联加密机制,通过将前一个参与方的加密数据与当前参与方的数据块进行组合和加密,实现了数据的多层次保护,提高了数据的安全性和保密性。
8、可选的,所述基于所述参与方的加密密钥,分别完成对各个所述数据块的加密,得到目标加密数据,具体包括:发送第二加密数据至第四参与方,得到所述目标加密数据,其中,所述第二加密数据为第二参与方采用第二加密密钥加密后的数据,所述目标加密数据为所述第四参与方将所述第二加密数据和第四数据块进行组合,得到第二组合数据后,并采用第四加密密钥对所述第二组合数据加密后的数据,所述第四参与方为多个所述参与方中,根据所述排序列表位于所述排序列表最后一位的参与方,所述第二参与方为多个所述参与方中,根据所述排序列表与所述第四参与方相邻且位于所述第四参与方之前的参与方。
9、通过采用上述技术方案,在最后一个参与方完成加密后,得到了目标加密数据。这个过程通过将倒数第二个参与方的加密数据与最后一个参与方的数据块进行组合和加密,生成了最终的加密结果。这种方式可以确保整个加密过程的完整性和一致性。首先,通过将倒数第二个参与方的加密数据纳入最后一个参与方的加密过程,实现了对前面所有参与方加密结果的整合和封装,保证了加密过程的连贯性和完整性。其次,最后一个参与方的加密操作,相当于对整个加密链条的最后一道防线,进一步增强了数据的安全性和保密性。此外,由于最后一个参与方生成的是目标加密数据,因此可以直接将其存储或传输,无需额外的处理或转换,提高了加密结果的可用性和便捷性。总的来说,上述技术方案中最后一个参与方的加密操作,通过对前面所有参与方加密结果的整合和封装,生成了最终的目标加密数据,确保了整个加密过程的完整性、一致性和安全性,同时提供了安全性较高的加密结果。
10、可选的,所述根据所述参与方数量,将所述原始数据分割为多个数据块,具体包括:计算所述原始数据的原始大小;根据所述参与方数量和所述原始大小,确定数据块大小;根据所述数据块大小,从所述原始数据中截取对应大小的数据,得到多个所述数据块。
11、通过采用上述技术方案,在将原始数据分割为多个数据块时,引入了计算原始数据大小、确定数据块大小、根据数据块大小截取原始数据等步骤。这种数据分块的方法可以提高数据分割的效率和准确性。首先,通过计算原始数据的大小,可以准确掌握数据的规模和范围,为后续的分块操作提供重要的参考信息。其次,根据参与方数量和原始数据的原始大小,可以合理确定每个数据块的数据块大小,既要保证数据块的数量与参与方数量一致,又要尽可能均衡每个数据块的数据块大小,避免出现数据块过大或过小的情况。最后,根据确定的数据块大小,可以精确地从原始数据中截取对应大小的数据,得到多个数据块,确保了数据分割的准确性和完整性。总的来说,上述技术方案所述的数据分块方法,通过计算原始数据大小、确定数据块大小、截取数据等步骤,实现了高效准确的数据分割,为后续的数据加密提供了良好的数据基础,同时也便于数据的存储和传输。
12、可选的,所述按照预设排序规则对所述参与方进行排序,得到排序列表,具体包括:获取各个所述参与方的属性信息,所述属性信息包括所述参与方的网络状况和计算能力;根据预设属性权重,对所述参与方的所述属性信息进行加权计算,得到各个所述参与方的排序分值;根据所述排序分值由高到低的顺序,对多个所述参与方进行排序,形成所述排序列表。
13、通过采用上述技术方案,在对参与方进行排序时,引入了根据参与方的属性信息进行加权计算的方法,属性信息包括参与方的网络状况和计算能力。通过对这些属性进行量化评估和加权计算,可以得到更加合理和准确的参与方排序结果。通过加权计算得到每个参与方的排序分值,可以客观公正地评价参与方的综合能力,并根据排序分值生成排序列表,指导后续的加密操作。总的来说,上述技术方案所述的属性加权排序方法,通过综合考虑参与方的多个属性,并进行量化评估和加权计算,得到更加合理和准确的参与方的排序列表。
14、可选的,所述根据预设属性权重,对各个所述参与方的所述属性信息进行加权计算,得到各个所述参与方的排序分值,具体包括:将所述参与方的网络状况和计算能力分别量化为对应的数值,其中,所述网络状况对应于第一数值,所述计算能力对应于第二数值;将所述第一数值乘以预设网络状况权重,得到第一加权值,并将所述第二数值乘以预设计算能力权重,得到第二加权值;将所述第一加权值和所述第二加权值进行相加,得到各个所述参与方对应的排序分值。
15、通过采用上述技术方案,将参与方的网络状况和计算能力分别量化为数值,然后乘以预设属性权重,得到加权值,最后将加权值相加得到排序分值。这种计算方法简单易行,且具有一定的合理性和可解释性。首先,将网络状况和计算能力量化为数值,可以将定性的属性转化为定量的指标,便于后续的计算和比较。其次,通过预设属性权重,可以根据实际需求和经验判断,合理设置不同属性的重要程度,例如可以根据历史数据和统计结果,确定网络状况和计算能力对加密效率和安全性的影响程度,从而设置相应的权重。最后,通过加权值的计算和相加,可以综合考虑多个属性对参与方能力的影响,得到一个综合性的排序分值,排序分值越高,表示参与方的综合能力越强,越适合优先进行加密操作。总的来说,上述的属性加权计算方法,通过将网络状况和计算能力进行量化、加权和求和,提供了一种简单有效的参与方排序计算方法,综合考虑了多个属性对参与方能力的影响,得到的排序结果更加合理和可靠。
16、在本技术的第二方面提供了一种数据加密装置,该装置包括:获取模块和处理模块,其中:所述获取模块,用于获取原始数据;所述获取模块,还获取多个参与方以及多个所述参与方的参与方数量;所述处理模块,用于根据所述参与方数量,将所述原始数据分割为多个数据块,多个所述数据块的数量为所述参与方数量;所述处理模,还用于发送各个所述数据块至所述参与方,一个所述数据块对应发送至一个所述参与方;所述处理模块,还用于基于所述参与方的加密密钥,分别完成对各个所述数据块的加密,得到目标加密数据。
17、在本技术的第三方面提供了一种电子设备,包括处理器、存储器、用户接口以及网络接口,所述存储器用于存储指令,所述用户接口和所述网络接口均用于与其他设备通信,所述处理器用于执行所述存储器中存储的指令,以使所述电子设备执行如上述任意一项所述的方法。
18、在本技术的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有指令,当所述指令被执行时,执行如上述任意一项所述的方法。
19、综上所述,本技术实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
20、1、通过获取原始数据和多个参与方,根据参与方的数量将原始数据分割为对应数量的数据块,并将数据块分发给各个参与方,每个参与方使用自己的加密密钥对收到的数据块进行加密,最终得到目标加密数据。这种分布式的数据加密方法,可以有效地提高数据的安全性和保密性。首先,原始数据被分割成多个数据块,每个数据块只包含部分信息,单独一个数据块无法还原出完整的原始数据,从而降低了数据泄露的风险。其次,数据块被分发到多个参与方进行加密,每个参与方只掌握自己的加密密钥,无法获知其他参与方的加密情况,即使某个参与方被攻破,也不会影响整个数据的安全性。最后,通过多个参与方的协同加密,可以实现数据的分散存储和冗余备份,提高了数据的可用性和可靠性。总的来说,上述数据加密方法,通过数据分块、分发和多方加密的方式,实现了数据的安全存储和传输,有效地保护了数据的机密性和完整性。
21、2、在发送数据块给参与方之前,引入了对参与方进行排序的步骤,按照预设排序规则对参与方进行排序,得到一个排序列表。这样可以合理安排数据块的加密顺序,提高加密效率和安全性。按照排序列表的顺序依次进行加密,可以实现加密过程的有序化和规范化,避免出现加密顺序混乱、加密结果不一致等问题,保证了加密过程的正确性。此外,将第一个数据块发送给排序列表中的第一个参与方进行加密,得到第一加密数据,为后续的级联加密做好准备,提高了加密的效率和可扩展性。总的来说,上述的参与方排序机制,通过合理安排加密顺序,优化了加密过程,提高了加密效率和安全性,同时为后续的级联加密提供了良好的基础。
22、3、引入了级联加密的步骤,将第二参与方的加密数据发送给第三参与方,第三参与方将收到的第二加密数据与第三数据块进行组合,得到第一组合数据,并使用自己的加密密钥对第一组合数据进行加密,得到第三加密数据。这种级联加密的方式,可以进一步提高数据的安全性和保密性。首先,通过将前一个参与方的加密数据与当前参与方的数据块进行组合,实现了数据的混合和扰动,增加了数据的随机性和复杂度,使得数据更难被破解和还原。其次,级联加密的过程中,每个参与方只能获取前一个参与方的加密数据和自己的数据块,无法直接接触到原始数据或其他参与方的加密情况,进一步降低了数据泄露的风险。此外,级联加密的方式可以灵活扩展,根据实际需求增加或减少参与方的数量,提高了加密方案的适应性和可扩展性。总的来说,上述的级联加密机制,通过将前一个参与方的加密数据与当前参与方的数据块进行组合和加密,实现了数据的多层次保护,提高了数据的安全性和保密性,同时具有良好的灵活性和可扩展性。
1.一种数据加密方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述发送各个所述数据块至所述参与方之前,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,所述将第一数据块发送至第一参与方,得到第一加密数据之后,所述方法还包括:
4.根据权利要求2所述的方法,其特征在于,所述基于所述参与方的加密密钥,分别完成对各个所述数据块的加密,得到目标加密数据,具体包括:
5.根据权利要求1所述的方法,其特征在于,所述根据所述参与方数量,将所述原始数据分割为多个数据块,具体包括:
6.根据权利要求2所述的方法,其特征在于,所述按照预设排序规则对所述参与方进行排序,得到排序列表,具体包括:
7.根据权利要求6所述的方法,其特征在于,所述根据预设属性权重,对各个所述参与方的所述属性信息进行加权计算,得到各个所述参与方的排序分值,具体包括:
8.一种数据加密装置,其特征在于,所述装置包括获取模块(201)和处理模块(202),其中:
9.一种电子设备,其特征在于,包括处理器(301)、存储器(305)、用户接口(303)及网络接口(304),所述存储器(305)用于存储指令,所述用户接口(303)和网络接口(304)用于给其他设备通信,所述处理器(301)用于执行所述存储器(305)中存储的指令,以使所述电子设备(300)执行如权利要求1-7任意一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有指令,当所述指令被执行时,执行如权利要求1-7任意一项所述的方法。