基于安全多方计算保存和恢复隐私数据的方法和装置制造方法及图纸

技术编号:23513507 阅读:32 留言:0更新日期:2020-03-18 00:33
本说明书实施例提供了一种基于安全多方计算保存和恢复隐私数据的方法和装置,其可用于区块链私钥存储过程中的隐私保护。所述恢复隐私数据的方法包括:从n个数据保存方中的m个数据保存方各自的设备获取m个数据包,其中n≤m≤k;对所述m个数据包中各个数据包包括的密文数据分别解密,以获取各个数据包的分片、以及对应的第一哈希值;对于m个数据包中的每个数据包,验证该数据包中的第一哈希值与该数据包中的分片是否相对应,以确定该数据包是否有效;在确定所述m个数据包中的至少k个数据包有效的情况中,基于秘密分享算法,通过所述至少k个数据包各自对应的分片获取所述第一连续t位数据。

A method and device for saving and restoring privacy data based on secure multiparty computing

【技术实现步骤摘要】
基于安全多方计算保存和恢复隐私数据的方法和装置
本说明书实施例涉及安全多方计算
,更具体地,涉及一种基于安全多方计算保存和恢复隐私数据的方法和装置。
技术介绍
近来,随着区块链落地到各个实际应用场景中,越来越多的用户拥有区块链中的账户,即,拥有与该账户对应的一对公私钥,其中,私钥用于进行数字签名,公钥用于验证签名。区块链的用户需要保存好其私钥,否则,其账户将不能继续使用。通常,区块链的用户可通过多种方式保存其私钥,如将私钥保存在软件或硬件形式的私钥钱包中,或者用户可通过密钥管理机构进行密钥托管。然而,目前已有的私钥保存方式仍然存在私钥丢失无法找回的风险。因此,需要一种更有效的保存和恢复隐私数据的方案。
技术实现思路
本说明书实施例旨在提供一种更有效的保存和恢复隐私数据的方案,以解决现有技术中的不足。为实现上述目的,本说明书一个方面提供一种基于安全多方计算保存隐私数据的方法,所述方法由所述隐私数据的数据拥有方的设备执行,包括:对于所述隐私数据中包括的第一连续t位数据,基于秘密分享算法获取n个分片,所述秘密分享算法使得所述第一连续t位数据能够基于所述n个分片中的至少k个分片获取,其中,n为大于等于2的自然数,t为小于等于所述隐私数据位数的预定位数;获取与所述n个分片分别对应的n个数据包,每个数据包中包括其密文数据,所述密文数据对应的明文数据中包括:相应的分片、以及该分片的哈希值;将所述n个数据包分别提供给n个数据保存方各自的设备。在一个实施例中,所述密文数据通过使用对称密钥或不对称密钥中的公钥对相应的明文数据加密获取。在一个实施例中,所述明文数据中还包括设备指纹信息。在一个实施例中,所述每个数据包中还包括所述密文数据的哈希值。在一个实施例中,所述隐私数据为所述数据拥有方的区块链账户私钥。在一个实施例中,所述私钥包括连续排列的多个连续多位数据,每个数据包中还包括以下至少一项:与所述第一连续t位数据对应的哈希值、所述第一连续t位数据在所述多个连续多位数据中的排列顺序、分片总数、最少恢复分片数目、和所述隐私数据对应的哈希值。本说明书另一方面提供一种基于安全多方计算恢复隐私数据的方法,其中,所述隐私数据中包括第一连续t位数据,与所述第一连续t位数据对应的n个真实数据包分别保存在n个数据保存方各自的设备中,所述n个真实数据包与基于秘密分享算法获取的n个分片分别对应,每个真实数据包中包括密文数据,所述密文数据对应的明文数据中包括:相应的分片、以及该分片的哈希值,其中,所述第一连续t位数据能够基于所述n个分片中的至少k个分片获取,其中n为大于等于2的自然数,t为小于等于所述隐私数据位数的预定位数,所述方法由所述隐私数据的数据拥有方的设备执行,包括:从n个数据保存方中的m个数据保存方各自的设备获取m个数据包,其中n≤m≤k;对所述m个数据包中各个数据包包括的密文数据分别解密,以获取各个数据包的分片、以及对应的第一哈希值;对于m个数据包中的每个数据包,验证该数据包中的第一哈希值与该数据包中的分片是否相对应,以确定该数据包是否有效;在确定所述m个数据包中的至少k个数据包有效的情况中,基于秘密分享算法,通过所述至少k个数据包各自对应的分片获取所述第一连续t位数据。在一个实施例中,所述明文数据中还包括设备指纹信息,其中,对于m个数据包中的每个数据包,验证该数据包中的第一哈希值与该数据包中的分片是否相对应,以确定该数据包是否有效包括,对于m个数据包中的每个数据包,验证该数据包中的第一哈希值与该数据包中的分片是否相对应,并验证该数据包中的设备指纹信息与当前设备的指纹信息是否一致,以确定该数据包是否有效。在一个实施例中,所述每个数据包中还包括所述密文数据的哈希值,其中,从n个数据保存方中的m个数据保存方各自的设备获取m个数据包包括,从n个数据保存方中的p个数据保存方各自的设备获取p个数据包;对于所述p个数据包中的每个数据包,基于该数据包中的密文数据及其哈希值,对该数据包进行有效性验证,其中,n≤p≤m,其中,对所述m个数据包中各个数据包包括的密文数据分别解密包括,在验证所述p个数据包中的m个数据包有效的情况中,对所述m个数据包中各个数据包包括的密文数据分别解密。在一个实施例中,所述隐私数据包括连续排列的多个连续多位数据,每个数据包中还包括以下至少一项:与所述第一连续t位数据对应的哈希值、所述第一连续t位数据在所述多个连续多位数据中的排列顺序、分片总数、最少恢复分片数目、和所述隐私数据对应的哈希值,其中,对该数据包进行有效性验证还包括,基于所述至少一项对该数据包进行有效性验证。在一个实施例中,基于秘密分享算法,通过所述至少k个数据包各自对应的分片获取所述第一连续t位数据包括,基于秘密分享算法,通过所述至少k个数据包各自包括的分片恢复第一数据;基于与所述第一连续t位数据对应的哈希值对所述第一数据进行验证;在对所述第一数据的验证通过的情况中,基于所述第一数据获取所述第一连续t位数据。本说明书另一方面提供一种基于安全多方计算保存隐私数据的装置,所述装置部署在所述隐私数据的数据拥有方的设备中,包括:第一获取单元,配置为,对于所述隐私数据中包括的第一连续t位数据,基于秘密分享算法获取n个分片,所述秘密分享算法使得所述第一连续t位数据能够基于所述n个分片中的至少k个分片获取,其中,n为大于等于2的自然数,t为小于等于所述隐私数据位数的预定位数;第二获取单元,配置为,获取与所述n个分片分别对应的n个数据包,每个数据包中包括其密文数据,所述密文数据对应的明文数据中包括:相应的分片、以及该分片的哈希值;提供单元,配置为,将所述n个数据包分别提供给n个数据保存方各自的设备。本说明书另一方面提供一种基于安全多方计算恢复隐私数据的装置,其中,所述隐私数据中包括第一连续t位数据,与所述第一连续t位数据对应的n个真实数据包分别保存在n个数据保存方各自的设备中,所述n个真实数据包与基于秘密分享算法获取的n个分片分别对应,每个真实数据包中包括密文数据,所述密文数据对应的明文数据中包括:相应的分片、以及该分片的哈希值,其中,所述第一连续t位数据能够基于所述n个分片中的至少k个分片获取,其中n为大于等于2的自然数,t为小于等于所述隐私数据位数的预定位数,所述装置部署在所述隐私数据的数据拥有方的设备中,包括:第一获取单元,配置为,从n个数据保存方中的m个数据保存方各自的设备获取m个数据包,其中n≤m≤k;解密单元,配置为,对所述m个数据包中各个数据包包括的密文数据分别解密,以获取各个数据包的分片、以及对应的第一哈希值;验证单元,配置为,对于m个数据包中的每个数据包,验证该数据包中的第一哈希值与该数据包中的分片是否相对应,以确定该数据包是否有效;第二获取单元,配置为,在确定所述m个数据包中的至少k个数据包有效的情况中,基于秘密分享算法,通过所述至少k个数据包各自对应的分片获取所述第一连本文档来自技高网...

【技术保护点】
1.一种基于安全多方计算保存隐私数据的方法,所述方法由所述隐私数据的数据拥有方的设备执行,包括:/n对于所述隐私数据中包括的第一连续t位数据,基于秘密分享算法获取n个分片,所述秘密分享算法使得所述第一连续t位数据能够基于所述n个分片中的至少k个分片获取,其中,n为大于等于2的自然数,t为小于等于所述隐私数据位数的预定位数;/n获取与所述n个分片分别对应的n个数据包,每个数据包中包括其密文数据,所述密文数据对应的明文数据中包括:相应的分片、以及该分片的哈希值;/n将所述n个数据包分别提供给n个数据保存方各自的设备。/n

【技术特征摘要】
1.一种基于安全多方计算保存隐私数据的方法,所述方法由所述隐私数据的数据拥有方的设备执行,包括:
对于所述隐私数据中包括的第一连续t位数据,基于秘密分享算法获取n个分片,所述秘密分享算法使得所述第一连续t位数据能够基于所述n个分片中的至少k个分片获取,其中,n为大于等于2的自然数,t为小于等于所述隐私数据位数的预定位数;
获取与所述n个分片分别对应的n个数据包,每个数据包中包括其密文数据,所述密文数据对应的明文数据中包括:相应的分片、以及该分片的哈希值;
将所述n个数据包分别提供给n个数据保存方各自的设备。


2.根据权利要求1所述的方法,其中,所述密文数据通过使用对称密钥或不对称密钥中的公钥对相应的明文数据加密获取。


3.根据权利要求1所述的方法,其中,所述明文数据中还包括设备指纹信息。


4.根据权利要求1所述的方法,其中,所述每个数据包中还包括所述密文数据的哈希值。


5.根据权利要求1所述的方法,其中,所述隐私数据为所述数据拥有方的区块链账户私钥。


6.根据权利要求5所述的方法,其中,所述私钥包括连续排列的多个连续多位数据,每个数据包中还包括以下至少一项:与所述第一连续t位数据对应的哈希值、所述第一连续t位数据在所述多个连续多位数据中的排列顺序、分片总数、最少恢复分片数目、和所述隐私数据对应的哈希值。


7.一种基于安全多方计算恢复隐私数据的方法,其中,所述隐私数据中包括第一连续t位数据,与所述第一连续t位数据对应的n个真实数据包分别保存在n个数据保存方各自的设备中,所述n个真实数据包与基于秘密分享算法获取的n个分片分别对应,每个真实数据包中包括密文数据,所述密文数据对应的明文数据中包括:相应的分片、以及该分片的哈希值,其中,所述第一连续t位数据能够基于所述n个分片中的至少k个分片获取,其中n为大于等于2的自然数,t为小于等于所述隐私数据位数的预定位数,所述方法由所述隐私数据的数据拥有方的设备执行,包括:
从n个数据保存方中的m个数据保存方各自的设备获取m个数据包,其中n≤m≤k;
对所述m个数据包中各个数据包包括的密文数据分别解密,以获取各个数据包的分片、以及对应的第一哈希值;
对于m个数据包中的每个数据包,验证该数据包中的第一哈希值与该数据包中的分片是否相对应,以确定该数据包是否有效;
在确定所述m个数据包中的至少k个数据包有效的情况中,基于秘密分享算法,通过所述至少k个数据包各自对应的分片获取所述第一连续t位数据。


8.根据权利要求7所述的方法,其中,所述明文数据中还包括设备指纹信息,其中,对于m个数据包中的每个数据包,验证该数据包中的第一哈希值与该数据包中的分片是否相对应,以确定该数据包是否有效包括,对于m个数据包中的每个数据包,验证该数据包中的第一哈希值与该数据包中的分片是否相对应,并验证该数据包中的设备指纹信息与当前设备的指纹信息是否一致,以确定该数据包是否有效。


9.根据权利要求7所述的方法,所述每个数据包中还包括所述密文数据的哈希值,其中,从n个数据保存方中的m个数据保存方各自的设备获取m个数据包包括,从n个数据保存方中的p个数据保存方各自的设备获取p个数据包;对于所述p个数据包中的每个数据包,基于该数据包中的密文数据及其哈希值,对该数据包进行有效性验证,其中,n≤p≤m,
其中,对所述m个数据包中各个数据包包括的密文数据分别解密包括,在验证所述p个数据包中的m个数据包有效的情况中,对所述m个数据包中各个数据包包括的密文数据分别解密。


10.根据权利要求9所述的方法,所述隐私数据包括连续排列的多个连续多位数据,每个数据包中还包括以下至少一项:与所述第一连续t位数据对应的哈希值、所述第一连续t位数据在所述多个连续多位数据中的排列顺序、分片总数、最少恢复分片数目、和所述隐私数据对应的哈希值,其中,对该数据包进行有效性验证还包括,基于所述至少一项对该数据包进行有效性验证。


11.根据权利要求7所述的方法,其中,基于秘密分享算法,通过所述至少k个数据包各自对应的分片获取所述第一连续t位数据包括,基于秘密分享算法,通过所述至少k个数据包各自包括的分片恢复第一数据;基于与所述第一连续t位数据对应的哈希值对所述第一数据进行验证;在对所述第一数据的验证通过的情况中,基于所述第一数据获取所述第一连续t位数据。


12.一种基于安全多方计算保存隐私数据的装置,所述装置部署在所述隐私数据的数据拥有方的设备中,包括:
第一获取单元,配置为,对于所述隐私数据中包括的第一连续t位数据,基于秘密...

【专利技术属性】
技术研发人员:左军
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:浙江;33

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

1