电子通信装置的制造及其应用技术1.本技术涉及区块链与安全计算领域,尤其涉及一种基于区块链的去中心化隐私求交方法及装置、电子设备。背景技术:2.传统的隐私求交方法是中心化的,需要一个参与方作为最终的数据统计者来聚合隐私求交的结果,再发给其他参与方,如果统计者作恶则无法保证结果的安全性。并且无法避免参与方数据恶意扩大的可能性。技术实现要素:3.本技术实施例的目的是提供一种基于区块链的去中心化隐私求交方法及装置、电子设备,以解决相关技术中存在的统计者可能作恶、参与方可能恶意扩大数据的技术问题。4.根据本技术实施例的第一方面,提供一种基于区块链的去中心化隐私求交方法,各参与方同步执行所述方法,该方法包括:5.每一参与方对本参与方持有的样本集合生成承诺列表并上链,用于参与方通过承诺验证其他参与方是否真实拥有样本集合;6.对本参与方持有的每个样本集合中的每个值随机生成一组秘密分享值;7.每个参与方对所有参与方,生成由样本集合和秘密分享构成的点集;8.根据点集,每个参与方对所有参与方分别生成opprf函数;9.每个参与方两两之间运行opprf函数,在接收方对所述承诺列表进行验证后,计算得到所有发送方的针对接收方样本集合中的每一样本的秘密分享集合;10.每个参与方针对本参与方的样本集合和秘密分享集合,生成一个新的点集;11.根据新的点集,生成新的opprf函数并调用智能合约上链;12.调用智能合约向区块链请求发起结果计算,得到隐私求交的结果。13.进一步地,每一参与方对本参与方持有的样本集合生成承诺列表,包括:14.(1.1)由参与隐私求交的所有参与方中的任意一方pi,向区块链发起请求,并发布智能合约到区块链;15.(1.2)接收区块链通知所有方开始执行隐私求交的通知;16.(1.3)所有参与方pi生成承诺列表cmlisti。17.进一步地,所有参与方pi生成承诺列表cmlisti,包括:18.(1.3.1)pi对本参与方持有的样本集合xi中的每个样本和基于该样本数据随机生成的盲化因子r,生成一份承诺19.(1.3.2)将样本集合xi中的所有组合形成一个承诺列表cmlisti;20.(1.3.3)调用智能合约的相关函数,将cmlisti作为公开的信息上链存储,之后所有参与方都能调用智能合约,从链上获取cmlisti。21.进一步地,每个参与方两两之间运行opprf函数,在接收方对所述承诺列表进行验证后,计算得到所有发送方的针对接收方样本集合中的每一样本的秘密分享集合,包括:22.(2.3.1)接收方pj向其他所有参与方pi获取opprf函数fi,j,并调用智能合约,从链上获取pi的承诺列表cmlisti;23.(2.3.2)pj通过零知识证明π,在不公开pi的样本数据和盲化因子r的情况下,证明pi拥有这些数据,能够经过函数得到cm;24.(2.3.3)将每个样本输入到fi,j中,获取n-1个发送方pi的秘密分享值或随机数;25.(2.3.4)将所述函数fi,j的输出与接收方秘密分享值(共n个数据)进行异或操作,得到接收方的基于样本的秘密分享值26.进一步地,向区块链请求发起结果计算,得到隐私求交的结果,包括:27.(3.4.1)由任意想要发起结果计算的参与方pi向区块链发起请求,并发布智能合约到区块链;28.(3.4.2)调用智能合约,从链上获取其他n-1个参与方pj的fj;29.(3.4.3)通过智能合约的相关函数,将本参与方的每个样本输入到fj中,得到对应参与方的秘密分享值或随机数;30.(3.4.4)将函数的输出与本参与方的秘密分享值异或,如果结果等于0,则样本是隐私求交的结果,否则不是;31.(3.4.5)循环执行(3.4.3)到(3.4.4),直到样本集合xi中的每个样本数据都计算完成,得到最后的隐私求交结果集合。32.根据本技术实施例的第二方面,提供一种基于区块链的去中心化隐私求交装置,包括:33.第一生成模块,用于每一参与方对本参与方持有的样本集合生成承诺列表并上链,用于参与方通过承诺验证其他参与方是否真实拥有样本集合;34.第二生成模块,用于对本参与方持有的每个样本集合中的每个值随机生成一组秘密分享值;35.第三生成模块,用于每个参与方对所有参与方,生成由样本集合和秘密分享构成的点集;36.第四生成模块,用于根据点集,每个参与方对所有参与方分别生成opprf函数;37.验证计算模块,用于每个参与方两两之间运行opprf函数,在接收方对所述承诺列表进行验证后,计算得到所有发送方的针对接收方样本集合中的每一样本的秘密分享集合;38.第五生成模块,用于每个参与方针对本参与方的样本集合和秘密分享集合,生成一个新的点集;39.第六生成模块,用于根据新的点集,生成新的opprf函数并调用智能合约上链;40.计算模块,用于调用智能合约,向区块链请求发起结果计算,得到隐私求交的结果。41.根据本技术实施例的第三方面,提供一种电子设备,包括:42.一个或多个处理器;43.存储器,用于存储一个或多个程序;44.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的方法。45.根据本技术实施例的第四方面,提供一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如第一方面所述方法的步骤。46.本技术的实施例提供的技术方案可以包括以下有益效果:47.由上述实施例可知,本技术采用了区块链、承诺和零知识证明的技术手段,解决了传统的中心化隐私求交方法中,统计者可能作恶、参与方可能恶意扩大数据的问题。即保证了所有参与方无法构造虚假的数据参与多方隐私计算,并且所有参与方都可以进行隐私求交结果验算。本发明可以解决传统中心化隐私求交方法的弊端,实现基于区块链的去中心化的隐私求交方法。48.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。附图说明49.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。50.图1是根据一示例性实施例示出的一种基于区块链的去中心化隐私求交方法的流程图。51.图2是根据一示例性实施例示出的一种基于区块链的去中心化隐私求交装置的结构示意图。具体实施方式52.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。53.在本技术使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。54.应当理解,尽管在本技术可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。55.图1是根据一示例性实施例示出的一种基于区块链的去中心化隐私求交方法的流程图,如图1所示,各参与方同步执行所述方法,该方法包括:56.步骤s11,每一参与方对本参与方持有的样本集合生成承诺列表并上链,用于参与方通过承诺验证其他参与方是否真实拥有样本集合;57.步骤s12,对本参与方持有的每个样本集合中的每个值随机生成一组秘密分享值;58.步骤s13,每个参与方对所有参与方,生成由样本集合和秘密分享构成的点集;59.步骤s14,根据点集,每个参与方对所有参与方分别生成opprf函数;60.步骤s15,每个参与方两两之间运行opprf函数,在接收方对所述承诺列表进行验证后,计算得到所有发送方的针对接收方样本集合中的每一样本的秘密分享集合;61.步骤s16,每个参与方针对本参与方的样本集合和秘密分享集合,生成一个新的点集;62.步骤s17,根据新的点集,生成新的opprf函数并调用智能合约上链;63.步骤s18,调用智能合约,向区块链请求发起结果计算,得到隐私求交的结果。64.由上述实施例可知,本技术采用了区块链、承诺和零知识证明的技术手段,解决了传统的中心化隐私求交方法中,统计者可能作恶、参与方可能恶意扩大数据的问题。本发明可以解决传统中心化隐私求交方法的弊端,保证了所有参与方无法构造虚假的数据参与多方隐私计算,并且所有参与方都可以进行隐私求交结果验算。65.在步骤s11的具体实施中,每一参与方对本参与方持有的样本集合生成承诺列表并上链,用于参与方通过承诺验证其他参与方是否真实拥有样本集合;该步骤可以包括以下子步骤:66.步骤s111,由参与隐私求交的所有参与方中的任意一方pi,向区块链发起请求,并发布智能合约到区块链到区块链;67.具体地,由区块链作为控制方,任意想参与隐私求交的参与方在计算开始之前必须调用智能合约,提交发起计算的请求到区块链,使得所述智能合约触发事件通知所有监听该事件的参与方,以达到通知其他所有参与方开始隐私求交计算的目的。68.步骤s112,接收区块链通知所有方开始执行隐私求交的通知;69.具体地,由区块链通知各参与方开始隐私计算,且之后计算过程中的每一步都在区块链上记录,保证整个多方隐私求交过程是安全可审计的,防止抵赖。70.步骤s113,所有参与方pi生成承诺列表cmlisti。具体地,该步骤可以包括以下子步骤:71.步骤s1131,pi对本参与方持有的样本集合xi中的每个样本和基于该样本数据随机生成的盲化因子r,生成一份承诺72.具体地,pi作为承诺方,将本参与方持有的样本集合xi中的每个样本作为消息m,选择随机数r作为盲因子,针对每个样本生成一份承诺m,选择随机数r作为盲因子,针对每个样本生成一份承诺承诺方案具有隐藏性和绑定性,承诺值不会泄露任何关于消息m的信息,并且任意恶意的承诺方都不能将承诺打开为非m的消息且验证通过,即接收方可以确信m是和该承诺对应的消息。通过承诺技术,pi可以向其他参与方声明本参与方真实拥有消息m这条数据。此处承诺技术可以用pedersen承诺实现,但不限于只能通过此技术实现。73.步骤s1132,将样本集合xi中的所有组合形成一个承诺列表cmlisti;74.具体地,该步骤将样本集合中的所有承诺组合形成列表,便于后续其他参与方打开承诺,并对该承诺列表所属的参与方的整个样本集合数据进行验证。75.步骤s1133,调用智能合约的相关函数,将cmlisti作为公开的信息上链存储,之后所有参与方都能调用智能合约,从链上获取cmlisti。76.具体地,通过调用智能合约的存储函数,将承诺列表存储到智能合约的合约状态中,后续计算步骤中其他参与方可以直接调用智能合约的获取函数得到该承诺列表。用区块链智能合约存储该信息,也便于在隐私求交计算结束后进行审计。77.在步骤s12的具体实施中,对本参与方持有的每个样本集合中的每个值随机生成一组秘密分享值;78.具体地,每个参与方使用秘密分享技术拆分样本集合中的每个样本值,这些秘密分享值的异或结果为零。在该步骤中使用该技术可以避免在计算过程中暴露本参与方真实的样本数据,并且使用这些异或值为零的秘密分享值来参与后续的隐私求交计算,是进行多方隐私求交的交集结果计算的前提。79.在步骤s13的具体实施中,每个参与方对所有参与方,生成由样本集合和秘密分享构成的点集;80.具体地,点集使用该点集可以构造步骤s14中的opprf函数。81.在步骤s14的具体实施中,根据点集,每个参与方对所有参与方分别生成opprf函数;82.具体地,设定f={g(x1)=y1,g(x2)=y2,...,g(xk)=yk,g(else)=random}是定义在点集z={(x1,y1),(x2,y2),...,(xk,yk)}上的可编程的不经意伪随机函数opprf,该函数可以实现这样的功能:对z中的每一组点(xk,yk)建立映射关系g(xk)=yk,对不在z中的其他数据建立映射关系g(else)=random。对于任意的输入数据集x={x1,x2,...,xj},f会对x中的每一个输入返回对应的opprf结果。该函数可以通过布谷鸟哈希、混淆电路等方式构造。83.在步骤s15的具体实施中,每个参与方两两之间运行opprf函数,在接收方对所述承诺列表进行验证后,计算得到所有发送方的针对接收方样本集合中的每一样本的秘密分享集合;该步骤可以包括以下子步骤:84.步骤s151,接收方pj向其他所有参与方pi获取opprf函数fi,j,并调用智能合约,从链上获取pi的承诺列表cmlisti;85.具体地,接收方pj获取其他所有参与方的opprf函数和承诺列表,因为在后续步骤s152、s153、s154计算中需要用到该函数与承诺列表。86.步骤s152,pj通过零知识证明π,在不公开pi的样本数据和盲化因子r的情况下,证明pi拥有这些数据,能够经过函数得到cm。通过承诺,各参与方可以确认其他参与隐私求交计算的参与方的数据是真实存在的,而没有恶意扩大数据;87.具体地,该零知识证明π证明如下命题:在不公开消息m和盲化因子r的情况下,证明该参与方拥有这条数据的id和r,使得cm:=commr(m)。通过零知识证明加承诺的机制,各参与方可以在不暴露其他参与方数据的前提下,确认其他参与隐私求交计算的参与方的数据是真实存在的,而没有恶意扩大数据。88.步骤s153,将每个样本输入到fi,j中,获取n-1个发送方pi的秘密分享值或随机数;89.具体地,接收方pj将接收方的样本集合xj中的每一个样本作为输入值,输入由发送方pi为接收方pj构造的opprf函数fi,j中,如果发送方pi拥有这条输入数据,则得到的输出即为发送方pi的秘密分享值否则为随机值。通过这样的操作,可以达到这样的效果:接收方不知道接收方得到的是真实的秘密分享值还是随机值,发送方也不知道接收方是否拥有这条样本,函数的输出将由接收方在步骤s154中进行计算使用。90.步骤s154,将函数的输出与接收方的秘密分享值(共n个数据)进行异或操作,得到接收方的基于样本的秘密分享值91.具体地,该基于样本的秘密分享值将在步骤s16中作为集合的一个元素。92.在步骤s16的具体实施中,每个参与方针对本参与方的样本集合和秘密分享集合,生成一个新的点集zj;93.具体地,每个参与方pj针对本参与方的样本集合和秘密分享集合生成一个新点集步骤s17中,需要使用该点集zj生成新的opprf函数。94.在步骤s17的具体实施中,根据新的点集zj,生成新的opprf函数fj并调用智能合约上链;95.具体地,新的opprf函数fj的生成过程与步骤s14类似,此处不再赘述。在调用智能合约上链过程中,需要调用智能合约的opprf上链存储函数,将opprf作为参数传入智能合约,即将函数fj上链存储。96.在步骤s18的具体实施中,调用智能合约,向区块链请求发起结果计算,得到隐私求交的结果;该步骤可以包括以下子步骤:97.步骤s181,由任意想要发起结果计算的参与方pi调用智能合约向区块链发起请求;98.具体地,任意参与方都可以调用智能合约向区块链发送请求,通过调用智能合约,从链上获取数据计算隐私求交的结果。传统的中心化隐私求交方法需要统计者计算隐私求交的结果,再将结果发送给其他参与方,相比于传统的方法,本专利提出的隐私求交方法实现了去中心化,任意参与方都可以向区块链发起请求并计算结果。同时,想要计算结果的参与方必须先向区块链发起请求,由区块链作为控制方记录这一操作,便于后续审计。99.步骤s182,调用智能合约,从链上获取其他n-1个参与方pj的fj;100.具体地,参与方pi调用智能合约,获取其他n-1个参与方pj的fj,用于步骤s183计算。101.步骤s183,通过智能合约的相关函数,将本参与方的每个样本输入到fj中,得到对应参与方的秘密分享值或随机数;102.具体地,参与方pi通过调用智能合约中的n-1个执行opprf函数fj的相关函数,将本参与方的每个样本作为参数输入该函数,得到结果。103.步骤s184,将函数的输出与本参与方的秘密分享值异或,如果结果等于0,则样本是隐私求交的结果,否则不是;104.具体地,针对本参与方的每个样本将n-1个函数的输出与本参与方的秘密分享值异或,如果所有参与方都拥有该样本,由于每个样本拆分为秘密分享值时的秘密分享值之间异或值为0,异或的结果必然为0,所以样本是隐私求交的结果,否则不是。105.步骤s185,循环执行步骤s183到步骤s184,直到样本集合xi中的每个样本数据都计算完成,得到最后的隐私求交结果集合。106.具体地,为样本集合xi中的每个样本数据重复进行步骤s183到步骤s184的计算,得到该样本是否为隐私求交的结果,将所有结果组成结果集合,就可以得到隐私求交的最终结果。107.与前述的基于区块链的去中心化隐私求交方法的实施例相对应,本技术还提供了基于区块链的去中心化隐私求交装置的实施例。108.图2是根据一示例性实施例示出的一种基于区块链的去中心化隐私求交装置框图。参照图2,该装置包括:109.第一生成模块11,用于每一参与方对本参与方持有的样本集合生成承诺列表并上链,用于参与方通过承诺验证其他参与方是否真实拥有样本集合;110.第二生成模块12,用于对本参与方持有的每个样本集合中的每个值随机生成一组秘密分享值;111.第三生成模块13,用于每个参与方对所有参与方,生成由样本集合和秘密分享构成的点集;112.第四生成模块14,用于根据点集,每个参与方对所有参与方分别生成opprf函数;113.验证计算模块15,用于每个参与方两两之间运行opprf函数,在接收方对所述承诺列表进行验证后,计算得到所有发送方的针对接收方样本集合中的每一样本的秘密分享集合;114.第五生成模块16,用于每个参与方针对本参与方的样本集合和秘密分享集合,生成一个新的点集;115.第六生成模块17,用于根据新的点集,生成新的opprf函数并调用智能合约上链;116.计算模块18,用于调用智能合约,向区块链请求发起结果计算,得到隐私求交的结果。117.关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。118.对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本技术方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。119.相应的,本技术还提供一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述的基于区块链的去中心化隐私求交方法。120.相应的,本技术还提供一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如上述的基于区块链的去中心化隐私求交方法。121.本领域技术人员在考虑说明书及实践这里公开的内容后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由权利要求指出。122.应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求来限制。
图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!
内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!
基于区块链的去中心化隐私求交方法及装置、电子设备
作者:admin
2022-08-31 11:32:33
757
关键词:
电子通信装置的制造及其应用技术
专利技术
- 下一篇: 一种安装座及支架的制作方法
- 上一篇: 一种楼梯立柱头的制作方法