当前位置: 首页 > 专利查询>浙江大学专利>正文

基于半可信硬件的互相关伪随机数的远程获取方法及装置制造方法及图纸

技术编号:33020710 阅读:8 留言:0更新日期:2022-04-15 08:53
本发明专利技术公开了基于半可信硬件的互相关伪随机数的远程获取方法及装置,该方法应用于半可信硬件时包括:获取发送方的随机种子和接收方的选择数;根据所述随机种子和预定互相关伪随机数种类,生成若干第一互相关伪随机数和第一承诺种子;根据所述若干第一互相关伪随机数和第一承诺种子,利用承诺机制生成第一承诺值和第一打开值;根据所述第一承诺值和选择数,生成梅克尔证明;将所述选择数对应的第一互相关伪随机数、第一承诺值、第一打开值和梅克尔证明发送至接收方,以使得接收方根据发送方发送的梅克尔根哈希和所述梅克尔证明对所述第一承诺值进行验证并根据验证通过后的所述第一承诺值和第一打开值对所述选择数对应的互相关伪随机数进行验证。相关伪随机数进行验证。相关伪随机数进行验证。

【技术实现步骤摘要】
基于半可信硬件的互相关伪随机数的远程获取方法及装置


[0001]本申请涉及隐私保护数据处理领域,尤其涉及基于半可信硬件的互相关伪随机数的远程获取方法及装置。

技术介绍

[0002]安全多方计算(Secure Multi

party Computation,MPC)技术可以让多个互不信任的参与方协同计算一个预先商定好的函数,同时不泄露除了函数输出以外的任何信息,如参与方的隐私输入。在安全多方计算协议中,常会使用互相关伪随机数(correlated randomness)作为协议的组成部分。例如,随机不经意传输(Random Oblivious Transfer,ROT)和乘法三元组(Beaver triple)都可以被视为互相关伪随机数。
[0003]由于协议的参与方互不信任,且往往都是通过远程信道进行连接,如何生成互相关伪随机数并让参与方获取适当的互相关伪随机数需要经过仔细考虑。目前,一种普遍的做法是让协议的各个参与方运行一个简单的安全多方计算协议,这个协议的作用就是让各个参与方得到相应的互相关伪随机数,而在这个协议中,各个参与方的输入与计算函数时的输入无关,因此这个协议的运行可以在参与方得到函数输入之前,也就是计算的离线阶段(offline phase)。另一种做法是使用半可信硬件,通过向可信硬件输入互相关伪随机数的生成种子和各个参与方需要获取的互相关伪随机数,可以使得半可信硬件直接向各个参与方输出相应的互相关伪随机数。
[0004]然而,在实现本专利技术的过程中,专利技术人发现现有技术中至少存在如下问题:
[0005]对于使用安全多方计算协议生成互相关伪随机数的技术,这一方法需要的通讯量大、通讯轮次多,在实际运行过程中耗时长,导致参与方需要在正式计算前运行协议生成互相关伪随机数,而无法做到在需要进行计算时直接执行用于计算的安全多方计算协议,并且,生成的互相关伪随机数需要在存储介质中长期保存,造成较大的开销;对于使用半可信硬件生成互相关伪随机数的技术,这一方法引入了额外的可信根,依赖于半可信硬件会正确生成互相关伪随机数并输出结果的假设,但如果这一假设不成立,就会影响整体安全多方计算协议的正确性。总的来说,现有技术或是存在通讯量大、通讯轮次多、耗时长的问题,或是存在获取的互相关伪随机数正确性无法保证的问题,难以兼顾效率和正确性。

技术实现思路

[0006]本申请实施例的目的是提供基于半可信硬件的互相关伪随机数的远程获取方法及装置,以解决相关技术中存在的无法在低通讯量开销下向远程的参与方传输多项式数量级别的互相关伪随机数的技术问题。
[0007]根据本申请实施例的第一方面,提供一种基于半可信硬件的互相关伪随机数的远程获取方法,应用于半可信硬件,包括:
[0008]获取发送方的随机种子和接收方的选择数;
[0009]根据所述随机种子和预定互相关伪随机数种类,生成若干第一互相关伪随机数和
第一承诺种子;
[0010]根据所述若干第一互相关伪随机数和第一承诺种子,利用承诺机制生成第一承诺值和第一打开值;
[0011]根据所述第一承诺值和选择数,生成梅克尔证明;
[0012]将所述选择数对应的第一互相关伪随机数、第一承诺值、第一打开值和梅克尔证明发送至接收方,以使得接收方根据发送方发送的梅克尔根哈希和所述梅克尔证明对所述第一承诺值进行验证并根据验证通过后的所述第一承诺值和第一打开值对所述选择数对应的互相关伪随机数进行验证。
[0013]进一步地,获取发送方的随机种子和接收方的选择数,包括:
[0014]接收发送方的加密随机种子和接收方的随机数;
[0015]根据发送方和半可信硬件的对称密钥,对所述加密随机种子进行解密;
[0016]对解密得到的结果进行验证;
[0017]若验证通过,则获得发送方的随机种子。
[0018]进一步地,根据所述随机种子和预定互相关伪随机数种类,生成若干第一互相关伪随机数和第一承诺种子,包括:
[0019]将所述随机种子扩展为第一伪随机种子和第二伪随机种子;
[0020]根据所述预定互相关伪随机数种类和第一伪随机种子,生成若干第一互相关伪随机数;
[0021]根据所述第二伪随机种子,生成若干第一承诺种子,其中所述第一承诺种子的数量与所述第一互相关伪随机数的数量相同。
[0022]根据本申请实施例的第二方面,提供一种基于半可信硬件的互相关伪随机数的远程获取装置,应用于半可信硬件,包括:
[0023]第一获取模块,用于获取发送方的随机种子和接收方的选择数;
[0024]第一生成模块,用于根据所述随机种子和预定互相关伪随机数种类,生成若干第一互相关伪随机数和第一承诺种子;
[0025]第二生成模块,用于根据所述若干第一互相关伪随机数和第一承诺种子,利用承诺机制生成第一承诺值和第一打开值;
[0026]第三生成模块,用于根据所述第一承诺值和选择数,生成梅克尔证明;
[0027]第一发送模块,用于将所述选择数对应的第一互相关伪随机数、第一承诺值、第一打开值和梅克尔证明发送至接收方,以使得接收方根据发送方发送的梅克尔根哈希和所述梅克尔证明对所述第一承诺值进行验证并根据验证通过后的所述第一承诺值和第一打开值对所述选择数对应的互相关伪随机数进行验证。
[0028]根据本申请实施例的第三方面,提供一种基于半可信硬件的互相关伪随机数的远程获取方法,应用于发送方,包括:
[0029]对所述半可信硬件进行验证并得到与所述半可信硬件共享的对称密钥;
[0030]根据所述对称密钥,对随机种子进行加密并发送至接收方,以使得接收方将发送方的加密随机种子和接收方的选择数发送至半可信硬件,从而使得所述半可信硬件获取发送方的随机种子和接收方的选择数;根据所述随机种子和预定互相关伪随机数种类,生成若干第一互相关伪随机数和第一承诺种子;根据所述若干第一互相关伪随机数和第一承诺
种子,利用承诺机制生成第一承诺值和第一打开值;根据所述第一承诺值和选择数,生成梅克尔证明;将所述选择数对应的第一互相关伪随机数、第一承诺值、第一打开值和梅克尔证明发送至接收方;
[0031]根据所述随机种子和预定互相关伪随机数种类,生成若干第二互相关伪随机数和第二承诺种子;
[0032]根据所述若干第二互相关伪随机数和第二承诺种子,生成第二承诺值;
[0033]根据所述第二承诺值,生成梅克尔根哈希;
[0034]将所述梅克尔根哈希发送至接收方,以使得接收方根据发送方发送的梅克尔根哈希和所述梅克尔证明对所述第一承诺值进行验证并根据验证通过后的所述第一承诺值和第一打开值对所述选择数对应的互相关伪随机数进行验证。
[0035]根据本申请实施例的第四方面,提供一种基于半可信硬件的互相关伪随机数的远程获取装置,应用于发送方,包括:
[0036]第一验证模块,用于对所述半可信硬件进行验证并得到与所述半可信硬件共本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于半可信硬件的互相关伪随机数的远程获取方法,其特征在于,应用于半可信硬件,包括:获取发送方的随机种子和接收方的选择数;根据所述随机种子和预定互相关伪随机数种类,生成若干第一互相关伪随机数和第一承诺种子;根据所述若干第一互相关伪随机数和第一承诺种子,利用承诺机制生成第一承诺值和第一打开值;根据所述第一承诺值和选择数,生成梅克尔证明;将所述选择数对应的第一互相关伪随机数、第一承诺值、第一打开值和梅克尔证明发送至接收方,以使得接收方根据发送方发送的梅克尔根哈希和所述梅克尔证明对所述第一承诺值进行验证并根据验证通过后的所述第一承诺值和第一打开值对所述选择数对应的互相关伪随机数进行验证。2.根据权利要求1所述的方法,其特征在于,获取发送方的随机种子和接收方的选择数,包括:接收发送方的加密随机种子和接收方的随机数;根据发送方和半可信硬件的对称密钥,对所述加密随机种子进行解密;对解密得到的结果进行验证;若验证通过,则获得发送方的随机种子。3.根据权利要求1所述的方法,其特征在于,根据所述随机种子和预定互相关伪随机数种类,生成若干第一互相关伪随机数和第一承诺种子,包括:将所述随机种子扩展为第一伪随机种子和第二伪随机种子;根据所述预定互相关伪随机数种类和第一伪随机种子,生成若干第一互相关伪随机数;根据所述第二伪随机种子,生成若干第一承诺种子,其中所述第一承诺种子的数量与所述第一互相关伪随机数的数量相同。4.一种基于半可信硬件的互相关伪随机数的远程获取装置,其特征在于,应用于半可信硬件,包括:第一获取模块,用于获取发送方的随机种子和接收方的选择数;第一生成模块,用于根据所述随机种子和预定互相关伪随机数种类,生成若干第一互相关伪随机数和第一承诺种子;第二生成模块,用于根据所述若干第一互相关伪随机数和第一承诺种子,利用承诺机制生成第一承诺值和第一打开值;第三生成模块,用于根据所述第一承诺值和选择数,生成梅克尔证明;第一发送模块,用于将所述选择数对应的第一互相关伪随机数、第一承诺值、第一打开值和梅克尔证明发送至接收方,以使得接收方根据发送方发送的梅克尔根哈希和所述梅克尔证明对所述第一承诺值进行验证并根据验证通过后的所述第一承诺值和第一打开值对所述选择数对应的互相关伪随机数进行验证。5.一种基于半可信硬件的互相关伪随机数的远程获取方法,其特征在于,应用于发送方,包括:
对所述半可信硬件进行验证并得到与所述半可信硬件共享的对称密钥;根据所述对称密钥,对随机种子进行加密并发送至接收方,以使得接收方将发送方的加密随机种子和接收方的选择数发送至半可信硬件,从而使得所述半可信硬件获取发送方的随机种子和接收方的选择数;根据所述随机种子和预定互相关伪随机数种类,生成若干第一互相关伪随机数和第一承诺种子;根据所述若干第一互相关伪随机数和第一承诺种子,利用承诺机制生成第一承诺值和第一打开值;根据所述第一承诺值和选择数,生成梅克尔证明;将所述选择数对应的第一互相关伪随机数、第一承诺值、第一打开值和梅克尔证明发送至接收方;根据所述随机种子和预定互相关伪随机数种类,生成若干第二互相关伪随机数和第二承诺种子;根据所述若干第二互相关伪随机数和第二承诺种子,生成第二承诺值;根据所述第二承诺值,生成梅克尔根哈希;将所述梅克尔根哈希发送至接收方,以使得接收方根据发送方发送的梅克尔根哈希和所述梅克尔证明对所述第一承诺值进行验证并根据验证通过后的所述第一承诺值和第一打开值对所述选择数对应的互相关伪随机数进行验证。6.一种基于...

【专利技术属性】
技术研发人员:张秉晟卢益彪刘巍然任奎
申请(专利权)人:浙江大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1