本发明涉及密文数据传输领域,更具体的说是涉及一种基于秘密分享的不经意传输方法、系统、设备及介质。
背景技术:
1、在现代信息技术高速发展的背景下,密文数据传输领域的安全性与隐私保护显得尤为重要。
2、不经意传输(oblivious transfer, ot)协议作为一种重要的安全多方计算基础协议,允许消息接收方从一组信息中选择并获取特定项,而消息发送方不知道具体选择了哪一项。然而,传统的ot协议在面对复杂逻辑关系的数据传输需求时,存在显著的局限性。
3、在现有的不经意传输协议中,如2选1或a选b不经意传输协议,消息发送方只能控制消息接收方从一组固定数量的消息中选择一个或多个消息。然而,在实际应用场景中,消息的选择往往需要遵循特定的逻辑规则,比如某些消息之间可能存在互斥关系(例如,电商平台中不同品牌的同类产品不能同时推荐),或者有些消息必须捆绑在一起提供(如购买电子设备时必须同时推荐配套的配件)。现有的不经意传输协议无法直接支持这种基于任意逻辑表达式的消息选择,导致其在需要精细控制信息传递的场景下显得力不从心。
4、此外,当涉及大量选项或是复杂的逻辑条件时,使用简单的a选b不经意传输协议会导致显著的通信开销和计算负担增加。随着参与的消息数目增多,为了确保每个可能的选择组合都被考虑到,所需的数据包数量会呈指数级增长,这不仅增加了存储需求,还加大了数据传输的时间成本。且对于每一个新增加的消息项或逻辑规则,都可能需要重新设计整个传输过程,使得系统难以灵活应对不断变化的应用需求,限制了其在大规模、动态环境下的实用性。
5、其虽然能够保证消息发送方不知道消息接收方选择了哪条消息,但在处理具有复杂依赖关系的信息时,可能会暴露额外的信息给非预期的一方。例如,如果两个消息间存在互斥关系而被错误地一同提供给消息接收方,则可能泄露有关消息发送方策略或数据结构的重要线索。再者,如果未能妥善管理密钥分发流程,攻击者可能通过分析加密流量模式来推断出部分敏感信息。这些问题凸显了当前方案在保障全面隐私及安全方面的局限性,特别是在面对恶意参与者试图破坏协议正常运作的情况下尤为突出。
6、因此,如何设计一种基于秘密分享的不经意传输方法,实现在保持双方隐私的同时,支持任意逻辑表达式的消息传输,增强信息传输的安全性和灵活性是本领域技术人员亟需解决的问题。
技术实现思路
1、有鉴于此,本发明提供了一种基于秘密分享的不经意传输方法,不仅增强了数据传输过程中的隐私保护能力,确保了信息传输的机密性和完整性,而且通过灵活处理复杂逻辑关系,提高了数据传输的适应性和效率。
2、为了实现上述目的,本发明采用如下技术方案:
3、第一方面,本发明提供了一种基于秘密分享的不经意传输方法,包括以下步骤:
4、s1、定义消息发送方和消息接收方的逻辑规则,并将所述逻辑规则设置为标准形式;
5、s2、基于标准形式下的逻辑规则,生成多个不同消息组合下的数据包,并采用虚拟数据进行补齐;
6、s3、结合预生成的随机数组,通过秘密分享算法生成与补齐后的数据包对应的子密钥;
7、s4、消息发送方通过所述子密钥对每个数据包进行加密,将加密后的数据包发送至消息接收方;
8、s5、消息接收方基于a选b不经意传输协议下的b个随机数,通过秘密分享算法重构出对称密钥,对加密后的数据包进行解密,获得对应的明文数据。
9、进一步的,所述s1中,消息发送方和消息接收方的逻辑规则分别为一组布尔逻辑运算符组成的逻辑表达式,用于指定预发送的消息组合和预接收的消息组合。
10、进一步的,所述消息发送方和消息接收方的逻辑规则基于互斥关系和依赖关系确定;
11、其中,所述互斥关系表示存在两个或多个消息不能同时发送至消息接收方;
12、所述依赖关系表示存在一个消息发送至消息接收方,依赖于其他消息同时发送至消息接收方。
13、进一步的,所述s1中,将所述逻辑规则设置为标准形式,包括:
14、对于任意的逻辑表达式,转化为包括和的逻辑表达式:
15、
16、将包括和的逻辑表达式转化为仅包括的逻辑表达式,获得标准形式的逻辑表达式;
17、其中,表示任意的消息;表示与,表示或,表示非。
18、进一步的,所述s2中,采用虚拟数据进行补齐,包括:
19、s21、将消息数量补充至o+p个;其中,o表示原始消息数量,p表示最长数据包和最短数据包的长度差值;
20、s22、基于所补充的p个虚拟数据,对除最长数据包之外的其他数据包进行补齐,获得多个长度相等的数据包。
21、进一步的,所述s3中,秘密分享算法为:
22、
23、其中,h()表示哈希函数,⊕表示异或运算,r1、r2……rd表示预生成的随机数。
24、进一步的,所述s4中,通过所述子密钥对每个数据包进行加密,包括:
25、定义每个子密钥作为对应数据包的加密密钥;
26、采用aes对称加密算法,通过所述加密密钥对每个数据包中的明文数据ptext进行加密,获得对应的密文数据ctext:
27、ctext=(ptext,key,mode,iv)
28、其中,mode表示aes对称加密算法的工作模式,iv表示aes对称加密算法的初始化向量。
29、第二方面,本发明提供了一种基于秘密分享的不经意传输系统,包括:
30、逻辑规则标准化模块:用于定义消息发送方和消息接收方的逻辑规则,并将所述逻辑规则设置为标准形式;
31、数据包生成与补齐模块:用于基于标准形式下的逻辑规则,生成多个不同消息组合下的数据包,并采用虚拟数据进行补齐;
32、子密钥生成模块:用于结合预生成的随机数组,通过秘密分享算法生成与补齐后的数据包对应的子密钥;
33、加密与传输模块:用于消息发送方通过所述子密钥对每个数据包进行加密,将加密后的数据包发送至消息接收方;
34、密钥重构与解密模块:用于消息接收方基于a选b不经意传输协议下的b个随机数,通过秘密分享算法重构出对称密钥,对加密后的数据包进行解密,获得对应的明文数据。
35、第三方面,本发明提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于秘密分享的不经意传输方法。
36、第四方面,本发明提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述基于秘密分享的不经意传输方法
37、本发明中第二方面至第四方面的描述,可以参考第一方面的详细描述;并且,第二方面至第四方面的描述的有益效果,可以参考第一方面的有益效果分析,此处不再赘述。
38、经由上述的技术方案可知,与现有技术相比,本发明存在以下有益效果:
39、1、该方法通过定义消息发送方和消息接收方之间的逻辑规则,并将这些规则转化为标准形式,可以精确控制哪些消息组合能够被发送以及如何处理接收到的消息。其不仅支持复杂的条件传递逻辑(如互斥关系和依赖关系),而且还允许系统根据实际需要动态调整消息的发送策略。
40、2、通过秘密分享算法生成子密钥,并采用aes对称加密算法来加密数据包。由于每个数据包都使用独立的子密钥进行加密,即使攻击者能够拦截到某个数据包,也无法轻易解密其他数据包的内容。结合a选b不经意传输协议,使得消息接收方只能解密并获得其被允许访问的数据,而不能得知未被授权的数据内容,从而保护了信息的机密性和完整性。
41、3、当消息数量发生变化时,只需重新执行相应的秘密分享过程即可生成新的子密钥集合,无需彻底改变整个系统的架构。这为系统提供了良好的可扩展性,使其能够适应不断增长的数据量及更复杂的安全需求,同时也降低了维护成本。
1.一种基于秘密分享的不经意传输方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种基于秘密分享的不经意传输方法,其特征在于,所述s1中,消息发送方和消息接收方的逻辑规则分别为一组布尔逻辑运算符组成的逻辑表达式,用于指定预发送的消息组合和预接收的消息组合。
3.根据权利要求1所述的一种基于秘密分享的不经意传输方法,其特征在于,所述消息发送方和消息接收方的逻辑规则基于互斥关系和依赖关系确定;
4.根据权利要求1所述的一种基于秘密分享的不经意传输方法,其特征在于,所述s1中,将所述逻辑规则设置为标准形式,包括:
5.根据权利要求1所述的一种基于秘密分享的不经意传输方法,其特征在于,所述s2中,采用虚拟数据进行补齐,包括:
6.根据权利要求1所述的一种基于秘密分享的不经意传输方法,其特征在于,所述s3中,秘密分享算法为:
7.根据权利要求1所述的一种基于秘密分享的不经意传输方法,其特征在于,所述s4中,通过所述子密钥对每个数据包进行加密,包括:
8.一种基于秘密分享的不经意传输系统,其特征在于,包括:
9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的基于秘密分享的不经意传输方法。
10.一种计算机可读存储介质,所述存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的基于秘密分享的不经意传输方法。