一种基于茫然传输算法的协同秘密分享方法及装置、系统、介质制造方法及图纸

技术编号:24175969 阅读:42 留言:0更新日期:2020-05-16 04:38
本发明专利技术涉及分布式计算技术领域,更具体的说,涉及一种基于茫然传输算法的协同秘密分享方法及装置、系统、介质。本方法包括以下步骤:S1第一通信方和第二通信方分别获取乘法分解的第一秘密分量和第二秘密分量,选取公共参数;S2第二通信方,基于SM2算法计算得到混淆因子集合,发给第一通信方;S3第一通信方,计算随机参数和加密结果集合,并发送给第二通信方,第一通信方计算得到加法分解的第一分解分量;S4第二通信方,根据随机参数和加密结果集合,计算分享参数集合,计算得到加法分解的第二分解分量。本发明专利技术采用茫然传输算法,在不需要安全信道的条件下,高效率地实现安全两方计算,实现对共享秘密数据的变换与计算。

A cooperative secret sharing method based on bemused transmission algorithm and its device, system and medium

【技术实现步骤摘要】
一种基于茫然传输算法的协同秘密分享方法及装置、系统、介质
本专利技术涉及分布式计算
,更具体的说,涉及一种基于茫然传输算法的协同秘密分享方法及装置、系统、介质。
技术介绍
安全多方计算(SecureMulti-PartyComputation,SMC)是解决一组互不信任的参与方之间保护隐私的协同计算问题,SMC要确保输入的独立性、计算的正确性、去中心化等特征,同时不泄露各输入值给参与计算的其他成员。主要是针对无可信第三方的情况下,如何安全地计算一个约定函数的问题,同时要求每个参与主体除了计算结果外不能得到其他实体任何的输入信息。安全多方计算在电子选举、电子投票、电子拍卖、秘密共享、门限签名等场景中有着重要的作用。在两方安全计算协议中,通信实体Alice和Bob可以将共享的秘密进行不同的分解,常见的两种方式是乘法分解和加法分解,而在两种分解方式之间进行转换,是安全两方计算必须解决的常见问题。安全多方计算协议有很多构造方法,譬如可以基于半同态加密来实现,也可以基于茫然传输(ObliviousTransfer,简称OT)来实现。茫然传输(OT)是一种基本密码学原语,被广泛的用于安全多方计算等领域。OT最早在1981年被MichaelO.Rabin提出,Rabin的OT协议方案是基于RSA加密体系构造的,在协议中发送者S发送一个信息m给接收者R,接收者R以1/2的概率接受信息m。所以在协议交互的结束的时候,S并不知道R是否接受了消息。OT协议的另一种形式是发送者S发送了2个消息m1和m2,接收者R可以获得其中一个消息m1或m2,但是无法获得另一个未选择的消息,而发送者S也无法获知接收者R选择了哪一个消息。然而OT协议普遍存在运算量大、执行效率低的问题。
技术实现思路
本专利技术的目的是提供一种基于茫然传输算法的协同秘密分享方法及装置、系统、介质,解决现有技术中两个参与方之间将共享秘密的乘法分解转换为加法分解的低安全性和低效率问题。为了实现上述目的,本专利技术提供了一种基于茫然传输算法的协同秘密分享方法,包括以下步骤:S1第一通信方持有的第一秘密分量A∈{0,1}l,第二通信方持有的第二秘密分量B∈{0,1}l,l为第一秘密分量A和第二秘密分量B的比特长度,第一秘密分量A和第二秘密分量B构成共享秘密S的乘法分解;第一通信方和第二通信方在椭圆曲线E上随机选取一个群元素P作为公共参数;S2第二通信方,基于SM2算法计算得到混淆因子集合{Ui}={U1,U2,…,Ul},所述混淆因子集合{Ui}中每一个元素Ui与第二秘密分量B中的1个比特相对应;第二通信方,将混淆因子集合的计算结果{Ui}发给第一通信方;S3第一通信方,接收混淆因子集合{Ui};第一通信方,选择l个随机数x1,x2,…,xl,根据随机参数VaP和混淆因子集合{Ui},对随机数xi,i∈{1,2,…,l}与第一秘密分量A形成的第一集合{<sj,s′j>}的每一个元素分别加密计算,得到加密结果集合{<Xj,X′j>},j∈{1,2,…,l};第一通信方,计算得到第一分解分量x:第一通信方,将随机参数Va和加密结果集合{<Xj,X′j>}发送给第二通信方;S4第二通信方接收随机参数Va和加密结果集合{<Xj,X′j>};根据随机参数Va和加密结果集合{<Xj,X′j>},计算分享参数集合{ti},所述分享参数集合{ti}中每一个元素ti与第二秘密分量B中的1个比特相对应;第二通信方,计算得到第二分解分量y:第一分解分量和第二分解分量构成共享秘密S的加法分解。在一实施例中,所述步骤S1中,第一通信方和第二通信方通过密钥协商算法,协商选取公共参数。在一实施例中,所述步骤S2中,混淆因子集合{Ui}的计算方法,进一步包括以下步骤:S21第二通信方选择l个随机数m1,m2,…,mi,…ml;S22第二通信方从第二秘密分量B中提取每一个比特bi∈{0,1},i∈{1,2,…,l};S23第二通信方根据比特bi的值来决定计算Ui的计算公式:若bi=0,计算Ui=[mi]G;若bi=1,计算Ui=P-[mi]G;其中,G是椭圆曲线E的基点,P是协商选取的公共参数,[mi]G代表基点G的mi倍点。在一实施例中,所述步骤S3中,随机参数Va、VaP和第一集合{<sj,s′j>}通过以下步骤获得:根据第一秘密分量A,计算得到第一集合{<sj,s′j>},j∈{1,2,…,l},其中第j个元素<sj,s′j>的计算公式为:选取1个比特长度为l的随机数a∈{0,1}l,计算得到随机参数Va和VaP,其中随机参数Va和VaP的计算公式为:在一实施例中,所述步骤S3中,第一集合{<sj,s′j>}的每一个元素分别加密计算,得到加密结果集合{<Xj,X′j>},第j个元素<Xj,X′j>的计算公式:在一实施例中,所述步骤S4中,分享参数集合{ti}的计算方法,进一步包括以下步骤:S411第二通信方从第二秘密分量B中提取每一个比特bi∈{0,1},i∈{1,2,…,l};S412第二通信方根据比特bi的值来决定计算分享参数集合{ti}的计算公式:若bi=0,计算:若bi=1,计算:在一实施例中,所述步骤S3中,第一集合{<sj,s′j>}的每一个元素分别加密计算,得到加密结果集合{<Xj,X′j>},第j个元素<Xj,X′j>的计算公式:在一实施例中,所述步骤S4中,分享参数集合{ti}的计算方法,进一步包括以下步骤:S421第二通信方从第二秘密分量B中提取每一个比特bi∈{0,1},i∈{1,2,…,l};S422第二通信方根据比特bi的值来决定计算分享参数集合{ti}的计算公式:若bi=0,计算若bi=1,计算在一实施例中,所述步骤S3中,第一集合{<sj,s′j>}的每一个元素分别加密计算,得到加密结果集合{<Xj,X′j>},第j个元素<Xj,X′j>的计算公式:在一实施例中,所述步骤S4中,分享参数集合{ti}的计算方法,进一步包括以下步骤:S431第二通信方从第二秘密分量B中提取每一个比特bi∈{0,1},i∈{1,2,…,l};S432第二通信方根据比特bi的值来决定计算分享参数集合{ti}的计算公式:若bi=0,计算:若bi=1,计算:在一实施例中,所述第一分解分量x设为固定值。为了实现上述目的,本专利技术提供了一种基于茫然传输算法的协同秘密分享装置,包括第一通信方和第二通信方:所述第一通信方本文档来自技高网
...

【技术保护点】
1.一种基于茫然传输算法的协同秘密分享方法,其特征在于,包括以下步骤:/nS1第一通信方持有的第一秘密分量A∈{0,1}

【技术特征摘要】
1.一种基于茫然传输算法的协同秘密分享方法,其特征在于,包括以下步骤:
S1第一通信方持有的第一秘密分量A∈{0,1}l,第二通信方持有的第二秘密分量B∈{0,1}l,l为第一秘密分量A和第二秘密分量B的比特长度,第一秘密分量A和第二秘密分量B构成共享秘密S的乘法分解;
第一通信方和第二通信方在椭圆曲线E上随机选取一个群元素P作为公共参数;
S2第二通信方,基于SM2算法计算得到混淆因子集合{Ui}={U1,U2,...,Ui},所述混淆因子集合{Ui}中每一个元素Ui与第二秘密分量B中的1个比特相对应;
第二通信方,将混淆因子集合的计算结果{Ui}发给第一通信方;
S3第一通信方,接收混淆因子集合{Ui};
第一通信方,选择l个随机数x1,x2,...,xl,根据随机参数VaP和混淆因子集合{Ui},对随机数xi,i∈{1,2,…,l}与第一秘密分量A形成的第一集合{<sj,s′j>}的每一个元素分别加密计算,得到加密结果集合{<Xj,X′j>},j∈{1,2,…,l};
第一通信方,计算得到第一分解分量x:
第一通信方,将随机参数Va和加密结果集合{<Xj,X′j>}发送给第二通信方;
S4第二通信方,接收随机参数Va和加密结果集合{<Xj,X′j>};
根据随机参数Va和加密结果集合{<Xj,X′j>},计算分享参数集合{ti},所述分享参数集合{ti}中每一个元素ti与第二秘密分量B中的1个比特相对应;
第二通信方,计算得到第二分解分量y:第一分解分量x和第二分解分量y构成共享秘密S的加法分解。


2.根据权利要求1所述的基于茫然传输算法的协同秘密分享方法,其特征在于,所述步骤S1中,第一通信方和第二通信方通过密钥协商算法,协商选取公共参数。


3.根据权利要求1所述的基于茫然传输算法的协同秘密分享方法,其特征在于,所述步骤S2中,混淆因子集合{Ui}的计算方法,进一步包括以下步骤:
S21第二通信方选择l个随机数m1,m2,...,mi,...ml;
S22第二通信方从第二秘密分量B中提取每一个比特bi∈{0,1},i∈{1,2,…,l};
S23第二通信方根据比特bi的值来决定计算Ui的计算公式:
若bi=0,计算Ui=[mi]G;
若bi=1,计算Ui=P-[mi]G;
其中,G是椭圆曲线E的基点,P是协商选取的公共参数,[mi]G代表基点G的mi倍点。


4.根据权利要求1所述的基于茫然传输算法的协同秘密分享方法,其特征在于,所述步骤S3中,随机参数Va、VaP和第一集合{<sj,s′j>}通过以下步骤获得:
根据第一秘密分量A,计算得到第一集合{<sj,s′j)},j∈{1,2,…,l},其中第j个元素<sj,s′j>的计算公式为:



选取1个比特长度为l的随机数a∈{0,1}l,计算得到随机参数Va和VaP,其中随机参数Va和VaP的计算公式为:





5.根据权利要求4所述的基于茫然传输算法的协同秘密分享方法,其特征在于,所述步骤S3中,第一集合{<sj,s′j>}的每一个元素分别加密计算,得到加密结果集合{<Xj,X′j>},第j个元素<Xj,X′j>的计算公式:





6.根据权利要求5所述的基于茫然传输算法的协同秘密分享方法,其特征在于,所述步骤S4中,分享参数集合{ti}的计算方法,进一步包括以下步骤:
S411第二通信方从第二秘密分量B中提取每一个比特bi∈{0,1},i∈{1,2,…,l};
S412第二通信方根据比特bi的值来决定计算分享参数集合{ti}的计算公式:
若bi=0,计算:
若bi=1,计算:


7.根据权利要求4所述的基于茫然传输算法的协同秘密分享方法,其特征在于,所述步骤S3中,第一集合{<sj,s′j>}的每一个元素分别加密计算,得到加密结果集合{<Xj,X′j>},第j个元素<Xj,X′j>的计算公式:





8.根据权利要求7所述的基于茫然传输算法的协同秘密分享方法,其特征在于,所述步骤S4中,分享参数集合{ti}的计算方法,进一步包括以下步骤:
S421第二通信方从第二秘密分量B中提取每一个比特bi∈{0,1},i∈{1,2,…,l};
S422第二通信方根据比特bi的值来决定计算分享参数集合{ti}的计算公式:
若bi=0,计算
若bi=1,计算


9.根据权利要求4所述的基于茫然传输算法的协同秘密分享方法,其特征在于,所述步骤S3中,第一集合{<sj,s′j>}的每一个元素分别加密计算,得到加密结果集合{<Xj,X′j>},第j个元素<Xj,X′j>的计算公式:





10.根据权利要求9所述的基于茫然传输算法的协同秘密分享方法,其特征在于,所述步骤S3中,分享参数集合{ti}的计算方法,进一步包括以下步骤:
S431第二通信方从第二秘密分量B中提取每一个比特bi∈{0,1},i∈{1,2,…,l};
S432第二通信方根据比特bi的值来决定计算分享参数集合{ti}的计算公式:
若bi=0,计算:
若bi=1,计算:


11.根据权利要求1所述的基于茫然传输算法的协同秘密分享方法,其特征在于,所述第一分解分量x设为固定值。


12.一种基于茫然传输算法的协同秘密分享装置,其特征在于,包括第一通信方和第二通...

【专利技术属性】
技术研发人员:崔久强徐祺余力张永雪许学文
申请(专利权)人:上海市数字证书认证中心有限公司
类型:发明
国别省市:上海;31

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

1