CN110889695A - 基于安全多方计算保存和恢复隐私数据的方法和装置 - Google Patents

基于安全多方计算保存和恢复隐私数据的方法和装置 Download PDF

Info

Publication number
CN110889695A
CN110889695A CN201911167253.7A CN201911167253A CN110889695A CN 110889695 A CN110889695 A CN 110889695A CN 201911167253 A CN201911167253 A CN 201911167253A CN 110889695 A CN110889695 A CN 110889695A
Authority
CN
China
Prior art keywords
data
packet
packets
private
hash value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911167253.7A
Other languages
English (en)
Inventor
左军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN201911167253.7A priority Critical patent/CN110889695A/zh
Publication of CN110889695A publication Critical patent/CN110889695A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Bioethics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Accounting & Taxation (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

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

Description

基于安全多方计算保存和恢复隐私数据的方法和装置
技术领域
本说明书实施例涉及安全多方计算技术领域,更具体地,涉及一种基于安全多方计算保存和恢复隐私数据的方法和装置。
背景技术
近来,随着区块链落地到各个实际应用场景中,越来越多的用户拥有区块链中的账户,即,拥有与该账户对应的一对公私钥,其中,私钥用于进行数字签名,公钥用于验证签名。区块链的用户需要保存好其私钥,否则,其账户将不能继续使用。通常,区块链的用户可通过多种方式保存其私钥,如将私钥保存在软件或硬件形式的私钥钱包中,或者用户可通过密钥管理机构进行密钥托管。然而,目前已有的私钥保存方式仍然存在私钥丢失无法找回的风险。
因此,需要一种更有效的保存和恢复隐私数据的方案。
发明内容
本说明书实施例旨在提供一种更有效的保存和恢复隐私数据的方案,以解决现有技术中的不足。
为实现上述目的,本说明书一个方面提供一种基于安全多方计算保存隐私数据的方法,所述方法由所述隐私数据的数据拥有方的设备执行,包括:
对于所述隐私数据中包括的第一连续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个数据包各自对应的分片获取所述第一连续t位数据。
在一个实施例中,所述明文数据中还包括设备指纹信息,其中,所述验证单元还配置为,对于m个数据包中的每个数据包,验证该数据包中的第一哈希值与该数据包中的分片是否相对应,并验证该数据包中的设备指纹信息与当前设备的指纹信息是否一致,以确定该数据包是否有效。
在一个实施例中,所述每个数据包中还包括所述密文数据的哈希值,其中,所述第一获取单元包括,获取子单元,配置为,从n个数据保存方中的p个数据保存方各自的设备获取p个数据包;验证子单元,配置为,对于所述p个数据包中的每个数据包,基于该数据包中的密文数据及其哈希值,对该数据包进行有效性验证,其中,n≤p≤m,
其中,所述解密单元还配置为,在验证所述p个数据包中的m个数据包有效的情况中,对所述m个数据包中各个数据包包括的密文数据分别解密。
在一个实施例中,所述隐私数据包括连续排列的多个连续多位数据,每个数据包中还包括以下至少一项:与所述第一连续t位数据对应的哈希值、所述第一连续t位数据在所述多个连续多位数据中的排列顺序、分片总数、最少恢复分片数目、和所述隐私数据对应的哈希值,其中,所述验证子单元还配置为,基于所述至少一项对该数据包进行有效性验证。
在一个实施例中,所述第二获取单元还包括,恢复子单元,配置为,基于秘密分享算法,通过所述至少k个数据包各自包括的分片恢复第一数据;验证子单元,配置为,基于与所述第一连续t位数据对应的哈希值对所述第一数据进行验证;获取子单元,配置为,在对所述第一数据的验证通过的情况中,基于所述第一数据获取所述第一连续t位数据。
本说明书另一方面提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行上述任一项方法。
本说明书另一方面提供一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述任一项方法。
通过根据本说明书实施例的基于秘密分享的保存和恢复隐私数据的方案,通过在秘密分享数据包中包括密文数据,从而使得例如执行该过程的APP即使获取至少k个数据包,也不能恢复隐私数据,提高了分片传输安全性,另外,通过在数据包中加入隐私数据拥有方的设备指纹信息,使得仅允许该数据拥有方进行对隐私数据的恢复,从而提高了隐私数据保存和恢复的安全可靠性。
附图说明
通过结合附图描述本说明书实施例,可以使得本说明书实施例更加清楚:
图1示出根据本说明书实施例的基于秘密分享保存隐私数据的场景示意图;
图2示出根据本说明书实施例的一种基于安全多方计算保存隐私数据的方法流程图;
图3示出根据本说明书实施例的一种基于安全多方计算恢复隐私数据的方法流程图;
图4示出根据本说明书实施例的一种基于安全多方计算保存隐私数据的装置400;
图5示出根据本说明书实施例的一种基于安全多方计算恢复隐私数据的装置500。
具体实施方式
下面将结合附图描述本说明书实施例。
图1示出根据本说明书实施例的基于秘密分享保存隐私数据的场景示意图。如图中所示,在该场景中包括数据拥有方A的设备和三个数据保存方B、C、D、E各自的设备,可以理解,这里仅示意示出四个数据保存方,在实际应用中,可根据场景需要和相应的秘密分享算法设定至少两个数据保存方,以用于实施根据本说明书实施例的方案。所述数据拥有方A具备其隐私数据,其将通过所述四个数据保存方B、C、D、E保存其隐私数据,而同时使得对B、C、D、E方都隐藏其隐私数据。
具体是,在A方设备中,例如具有作为隐私数据的区块链私钥。通常,区块链私钥包括预定数目的一长串字符,例如该私钥包括256位的二进制数、或者64位的十六进制数,在该情况中,用户通常很难通过记忆记住该私钥,而需要通过特定的私钥保管方法来保管该私钥,以在私钥丢失的情况下可从保管的私钥重新获取该私钥。在本说明书实施例中,可将该私钥看作包括多个顺序排列的元素的数组,每个元素为与该私钥中的预定数目的连续位对应的数值。例如,每个元素可以为该私钥的256位的二进制数中每四位对应的数字,即该数字在0到15之间,通过以十六进制数表示,该数字可以为0到9和A到F中的任一字符。也就是说,该私钥可以表示为包括顺序排列的64个元素的数组,每个元素为0到9和A到F中的任一字符的ASCII码值。从而,可将该数组中的每个元素视为秘密以通过本说明书实施例的方法进行秘密分享。例如,对于该数组中的第一元素,可通过例如拉格朗日插值算法将该元素分为例如四个分片,其中,该第一元素即为预定拉格朗日多项式的常数项。
A方基于所述四个分片,可获取对应的四个数据包,每个数据包中包括密文数据,该密文数据对应的明文数据例如包括:与该数据包对应的分片、该分片的哈希值。在一个实施例中,该明文数据中还包括A方设备的指纹信息,以在恢复数据时确保仅可由A方设备进行数据的恢复。
另外,每个数据包中还可以包括一些验证数据,所述验证数据用于验证所述密文数据的有效性、所述数据包的有效性、基于所述分片恢复的所述第一元素的有效性、以及所述私钥的有效性,等等。在获取四个数据包之后,A方可将该四个数据包分别发送给B方、C方、D方、E方。类似地,A方可将针对私钥中其它元素获取的数据包也分别发送给B方、C方、D方、E方,从而起到保存其私钥的目的。
A方在丢失其私钥的情况中,对于上述数组中的每个元素,例如可从B方、C方、D方、E方中的至少三方中获取其数据包,在获取该三个数据包之后,A方可首先本地预存的解密密钥对各个数据包的密文数据分别解密,以获取各个数据包的分片和对应的哈希值,对于,每个数据包,使用其中的哈希值对相应的分片进行验证,从而可验证对该数据包的解密是否成功。在确定所述m个数据包中的至少k个数据包有效的情况中,可基于秘密分享算法,通过所述至少k个数据包各自对应的分片获取所述第一连续t位数据。
可以理解,上述参考图1的描述仅仅为示意性的,而不是限定性的,例如,所述秘密分享算法不限于上述拉格朗日插值算法,另外,所述元素不限于为每四位对应的数值,而可以为每字节的数值(即该数值在0到255之间),等等。下面将详细描述上述保存和恢复隐私数据的过程。
图2示出根据本说明书实施例的一种基于安全多方计算保存隐私数据的方法流程图,所述方法由所述隐私数据的数据拥有方的设备执行,包括:
步骤S202,对于所述隐私数据中包括的第一连续t位数据,基于秘密分享算法获取n个分片,所述秘密分享算法使得所述第一连续t位数据能够基于所述n个分片中的至少k个分片获取,其中,n为大于等于2的自然数,t为小于等于所述隐私数据位数的预定位数;
步骤S204,获取与所述n个分片分别对应的n个数据包,每个数据包中包括其密文数据,所述密文数据对应的明文数据中包括:相应的分片、以及该分片的哈希值;
步骤S206,将所述n个数据包分别提供给n个数据保存方各自的设备。
首先,在步骤S202,对于所述隐私数据中包括的第一连续t位数据,基于秘密分享算法获取n个分片,所述秘密分享算法使得所述第一连续t位数据能够基于所述n个分片中的至少k个分片获取,其中,n为大于等于2的自然数,t为小于等于所述隐私数据位数的预定位数。
该方法可由隐私数据的数据拥有方的设备执行,该设备可以为计算机、智能手机、平板等具有相应计算能力的设备,在此不作限定。
所述隐私数据可以为二进制数、十进制数、十六进制数等等,在此不作限定。所述t的取值可以预定为小于等于所述隐私数据位数的任一数值,在此不作限定。例如,如上文所述,所述数据拥有方为A方,所述隐私数据为用户A的区块链私钥。通常,私钥为256位的二进制数,从而t可以取1、2、…、256中的任一数值。在一个实施例中,为了便于计算,可将私钥划分为连续排列的32个字节,即每个字节包括8位,从而,可对该32个字节依次执行图2所示方法,在该情况中,也就是说t=8。在一个实施例中,可将私钥以64位16进制数标识,从而,可对于该16进制数中的每位字符依次执行图2所示方法,在该情况中,t=1。可以理解,在本说明书实施例中,不限于将私钥划分为连续排列的多个具有相同位数的数据,也可以划分为连续排列的多个具有不同位数的数据,例如,可将私钥划分为8个16位数据和16个8位数据,并对该24个多位数据依次执行图2所示方法。
对于通过如上所述获取的第一连续t位数据,其总是可以转换为具体的数值。例如,其可以直接转换为十进制数,或者,当t=4时,所述第一连续t为数据实际对应于十六进制数的一个字符,从而可将该第一连续t位数据转换为相应字符的ASCII码值。
从而,在获取第一连续t位数据对应的数值之后,可基于秘密分享算法获取与该第一连续t位数据对应的n个分片,所述秘密分享算法使得可通过所述n个分片中的至少k个分片恢复出所述第一连续t位数据。
现有技术中已经开发了多种用于实现上述目的的秘密分享算法,例如,拉格朗日插值算法,下文中将以拉格朗日插值算法为例描述图2所示方法,可以理解,在本说明书实施例中,所述秘密分享算法不限于为拉格朗日插值算法,而可以为现有技术中已知的任一种秘密分享算法。
在拉格朗日插值算法中,可以以与所述第一连续t位数据相关联的数值为预定拉格朗日多项式中的常数项a0,例如,a0为第一连续t位数据本身对应的数值,或者a0为第一连续t位数据对应的字符的ASCII码值,或者a0为与第一连续t位数据具有预定函数关系的数值。再通过随机获取该拉格朗日多项式中的参数ak-1、ak-2、…、a1,从而可获取如公式(1)所示的拉格朗日多项式:
y=ak-1xk-1+ak-2xk-2+…+a1x+a0 (1)
可随机获取n个x值:x1、x2、…、xn,其中,n≥k,通过将该n个x值分别代入公式(1),从而可分别计算出相应的y值:y1、y2、…、yn,由该n个x值和n个y值可获取二维空间中的n个点:(x1,y1)、(x2,y2)、…、(xn,yn),通过上述获取该n个点的过程可知,通过该n个点中的任意k个点进行求解,可解出公式(1)中的参数a0、a1、…、ak-2、ak-1。也就是说,在该拉格朗日插值算法中,所述n个点各自的坐标即为与所述第一连续t位数据对应的n个分片,通过n个点中的任意k个点的坐标可求解出a0,从而可获取所述第一连续t位数据。
在步骤S204,获取与所述n个分片分别对应的n个数据包,每个数据包中包括其密文数据,所述密文数据对应的明文数据中包括:相应的分片、以及该分片的哈希值。
在如上所述获取与所述第一连续t位数据对应的n个分片之后,可基于该n个分片构建与第一连续t位数据对应的n个数据包。每个数据包例如具有如下面的表1所示的数据结构:
密文 8762AB9483…
表1
在一个实施例中,A方通过其预先获取的密钥对如表2所示的明文数据进行加密而获取:
分片 (x<sub>i</sub>,y<sub>i</sub>)
分片哈希值 398c79a664
表2
所述分片数据哈希值可通过预定算法进行计算,例如可对xi与yi相加获取的值取哈希,从而获取分片数据哈希值。
在进行加密的过程中,例如可以以预定字节数(例如16字节)表示表2中的每个格中的内容,并将与所述四个格对应的各个16字节按照预定顺序排列为字符串,从而可通过预定加密算法对该字符串进行加密,以获取表1中的密文数据。
所述加密算法可以为对称加密算法或非对称加密算法。对于上述n个分片,A方可使用同样的密钥对其加密,或者,A方也可以使用不同的密钥对其分别加密,以增强加密的可靠性。
在一个实施例中,所述明文数据还可以如表3所示:
分片 (x<sub>i</sub>,y<sub>i</sub>)
分片哈希值 398c79a664…
设备指纹信息 7a13bf03b5…
表3
其中,所述设备指纹信息即为A方执行该方法的设备的指纹信息,通过在A方设备中的特定APP中实施图2所示方法,该APP可根据设备执行环境生成设备的指纹信息,例如,对设备的MAC地址取哈希值以作为所述指纹信息,以用于生成所述密文数据。
在一个实施例中,每个数据包例如具有如下面的表4所示的数据结构:
密文 8762AB9483…
密文哈希值 93a56c8356…
表4
通过在数据包中包括密文哈希值,从而在通过所述数据包恢复数据时,可在对密文解密前使用密文哈希值对密文进行验证,在验证不通过的情况中,将不再使用该数据包用于数据恢复。
在一个实施例中,每个数据包例如具有如下面的表5所示的数据结构:
密文 8762AB9483…
密文哈希值 93a56c8356…
第一连续t位数据的排列顺序 2
最少恢复分片数目 k
总分片数目 n
与第一连续t位数据对应的哈希值 C91946DA90…
隐私数据哈希值 7a13bf03b5…
表5
可以理解,所述数据包中的数据结构可以为多种形式,例如,数据包中除了包括所述密文数据之外,还可以包括表5中的其它项数据中的至少一项数据。其中,所述隐私数据哈希值也可以通过预定算法进行计算,例如,可对该隐私数据的各位的值的和取哈希,从而获取隐私数据哈希值,或者可对该隐私数据直接取哈希,从而获取隐私数据哈希值。所述与第一连续t位数据对应的哈希值例如可以为上述公式(1)中a0的哈希值。
通过使得数据包具有表5所示的数据结构,当在恢复所述第一连续t位数据时获取至少k个数据包之后,除了通过密文哈希值对密文数据进行验证之外,还可以通过比较每个数据包中的与第一连续t位数据对应的哈希值、第一连续t位数据的排列顺序、最少恢复分片数目、总分片数目和隐私数据哈希值是否相同,来验证各个分片是否有效。另外,在通过至少k个分片恢复出第一连续t位数据之后,除了计算该恢复的数据的哈希值以与分片中的与第一连续t位数据对应的哈希值进行比较之外,还可以在恢复出该隐私数据包括的全部连续多位数据、且基于各个多位数据的排列顺序恢复出该隐私数据之后,计算与该恢复的隐私数据对应的哈希值,并将该哈希值与任一分片中的隐私数据哈希值进行比较,以确定该恢复的隐私数据是否为原始的隐私数据。
在一个实施例中,每个分片例如具有如下面的表6所示的数据结构:
8762AB9483…
93a56c8356…
2
k
n
C91946DA90…
7a13bf03b5…
表6
在表6中包括表5中各项的内容而不包括各项的名称,数据拥有方A可在本地保存表6中各行对应的各项的名称,并在恢复数据中基于各项的内容进行上述验证,从而可增加验证的可靠性。
可以理解,上述表1~6仅仅示意示出了所述数据包可具有的数据结构,而不用于限制所述数据包的数据结构,所述数据包可根据具体场景的需要和秘密分享算法的不同设置特定的数据结构,在此不作限定。
在步骤S206,将所述n个数据包分别提供给n个数据保存方各自的设备。
在获取所述n个数据包之后,可将该n个数据包分别发送给n个数据保存方各自的设备。所述n个数据保存方可以为A方的信任方或不信任方。由于在本说明书实施例中,通过如上所述基于秘密分享算法获取隐私数据中的任一连续多位数据的分片,并使得各个数据包具有如上所述的数据结构,从而,各个数据保存方凭其自身接收的数据包并不能恢复出相应的连续多位数据,并且即使任一数据保存方对其数据包进行了改动并发送给A方以用于数据恢复,A方可基于该数据包中的数据结构验证出该改动,并取消使用该数据包的数据恢复,从而保证了数据恢复的可靠性。
在一个实施例中,所述A方和其它数据保存方(例如图1中所示的B、C、D、E方)例如可通过可信或不可信的APP进行该步骤中的数据发送,从而使得B、C、D、E方可分别从A方获取一个数据包。在该实施例中,由于A方可通过所述APP分别向B、C、D、E方发送包括密文的数据包,从而使得即使所述APP截取了所述n个数据包,其也不能基于该n个数据包恢复出A方的原始数据。
在一个实施例中,在需要在所述密文对应的明文中包括设备的指纹信息的情况中,A方需要通过特定的APP进行该方法,从而使得可通过该APP获取设备的指纹信息并在将对包括该指纹信息的明文进行加密。在后续通过数据包恢复数据的过程中,仍需要通过该特定APP进行数据的恢复,从而该APP可采集数据恢复设备的指纹信息以与数据包中的指纹信息进行比较。
可以理解,在所述隐私数据被划分为多个连续多位数据,并对该多个连续多位数据分别进行秘密分享的情况中,对于不同的连续多位数据,可通过不同的n个数据保存方进行对该数据的保存,从而增加保存该隐私数据的可靠性。
图3示出根据本说明书实施例的一种基于安全多方计算恢复隐私数据的方法流程图,其中,所述隐私数据中包括第一连续t位数据,与所述第一连续t位数据对应的n个真实数据包分别保存在n个数据保存方各自的设备中,所述n个真实数据包与基于秘密分享算法获取的n个分片分别对应,每个真实数据包中包括密文数据,所述密文数据对应的明文数据中包括:相应的分片、以及该分片的哈希值,其中,所述第一连续t位数据能够基于所述n个分片中的至少k个分片获取,其中n为大于等于2的自然数,t为小于等于所述隐私数据位数的预定位数,所述方法由所述隐私数据的数据拥有方的设备执行,包括:
步骤S302,从n个数据保存方中的m个数据保存方各自的设备获取m个数据包,其中n≤m≤k;
步骤S304,对所述m个数据包中各个数据包包括的密文数据分别解密,以获取各个数据包的分片、以及对应的第一哈希值;
步骤S306,对于m个数据包中的每个数据包,验证该数据包中的第一哈希值与该数据包中的分片是否相对应,以确定该数据包是否有效;
步骤S308,在确定所述m个数据包中的至少k个数据包有效的情况中,基于秘密分享算法,通过所述至少k个数据包各自对应的分片获取所述第一连续t位数据。
在如上文所述,A方通过B、C、D、E方保存其隐私数据(例如私钥之后),在A方丢失其私钥的情况中,A方可通过B、C、D、E方恢复其隐私数据。
具体是,在步骤S302,从n个数据保存方中的m个数据保存方各自的设备获取m个数据包,其中n≤m≤k。
从上文中已知,对于隐私数据中的第一连续t位数据,例如B、C、D、E方分别保存了与该第一连续t位数据对应的一个数据包,即n=4,假设预设k=3,则m可以等于3或4。从而基于上述公式(1)可得,只要从B、C、D、E方中任意三方各自的设备获取其数据包,则可以进行对第一连续t位数据的恢复。
与上文A方向各方发送数据包类似地,A方例如可通过可信或不可信的APP从B、C、D、E方中的任意三方各自的设备接收相应的数据包。
在步骤S304,对所述m个数据包中各个数据包包括的密文数据分别解密,以获取各个数据包的分片、以及对应的第一哈希值。
如上文所述,A方通过预先获取的密钥对相应的明文数据进行加密从而获取各个密文数据,并且所述明文数据中包括相应的分片、以及该分片的哈希值。从而,A方在接收到m个数据包之后,可使用预先获取的用于对各个数据包进行解密的密钥分别对该m个数据包各自的密文数据进行解密。在一个实施例中,所述密文数据通过对称加密的形式加密,因此,对其解密的密钥与对其加密的密钥是相同的。在一个实施例中,所述密文数据通过非对称加密的形式加密,因此,对其解密的密钥为非对称密钥中的私钥。在一个实施例中,对m个密文数据进行解密的各个密钥各不相同。在一个实施例中,对m个数据进行解密的密钥可以为相同的密钥。每个密文数据在被解密之后,可恢复出该数据包对应的分片、及哈希值(即所述第一哈希值)。
在步骤S306,对于m个数据包中的每个数据包,验证该数据包中的第一哈希值与该数据包中的分片是否相对应,以确定该数据包是否有效。
也就是说,对于m个数据包中的每个数据表,验证该数据表的第一哈希值是否为该数据包的分片的哈希值。具体是,可计算该分片的哈希值,并将其与所述第一哈希值进行比较,如果相同,则可验证该第一哈希值与该分片相对应。在验证该第一哈希值与该分片相对应的情况中,即可验证该数据包有效。
在一个实施例中,如表3中所示,在所述明文数据中还包括设备指纹信息,从而,该方法还包括,在验证该数据包中的第一哈希值与该数据包中的分片是否相对应之后,还验证当前设备的指纹信息与所述明文数据中包括的设备指纹信息是否一致,以验证该数据包是否有效。通过该过程,可使得仅允许预定设备(例如A方设备)来执行数据恢复过程,进一步提高了隐私数据的安全性。
在步骤S308,在确定所述m个数据包中的至少k个数据包有效的情况中,基于秘密分享算法,通过所述至少k个数据包各自对应的分片获取所述第一连续t位数据。
在确定所述m个数据包中的至少k个数据包有效的情况中,可基于上文中的公式(1)恢复出a0,从而可基于a0获取第一连续t位数据。如图3中所示,如果在该有效性验证中,不能获取至少k个有效数据包,则将没有足够的数据来求解出公式(1)中的a0,因此该数据恢复过程失败并结束。
在一个实施例中,如上文所述,各个数据包具有如表4、表5或表6所示的数据结构,在该情况中,可首先从n个数据保存方中的p个数据保存方各自的设备获取p个数据包(n≤p≤m),之后,可基于数据结构中的各项对各个数据包进行有效性验证,例如,可基于以下至少一项进行所述有效性验证:密文数据哈希值、与所述第一连续t位数据对应的哈希值、所述第一连续t位数据在所述多个连续多位数据中的排列顺序、分片总数、最少恢复分片数目、和所述隐私数据对应的哈希值。具体是,通过各个数据包中包括的相应的密文哈希值验证该数据包中的密文数据来确定该数据包是否有效,并通过验证各个数据包的以下至少一项是否分别一致来确定各个数据包是否有效:与所述第一连续t位数据对应的哈希值、所述第一连续t位数据在所述多个连续多位数据中的排列顺序、分片总数、最少恢复分片数目、和所述隐私数据对应的哈希值。
在验证所述p个数据包中的m个数据包有效的情况中,可对所述m个数据包中各个数据包包括的密文数据分别解密。在基于秘密分享算法,通过所述至少k个数据包各自包括的分片恢复出第一数据(即上述a0)之后,可基于与所述第一连续t位数据对应的哈希值对所述第一数据进行验证,在对所述第一数据的验证通过的情况中,基于所述第一数据获取所述第一连续t位数据。例如,与所述第一连续t位数据对应的哈希值为a0的哈希值,从而在验证第一数据的哈希值等于a0的哈希值的情况中,可基于a0与第一连续t位数据的关联关系,获取所述第一连续t位数据。
在一个实施例,在通过图3所示方法恢复所述隐私数据包括的每个连续多位数据,并基于各个连续多位数据的排列顺序恢复所述隐私数据之后,可基于各个连续多位数据对应的任一数据包中包括的隐私数据哈希值进行对恢复的隐私数据的验证,在验证通过之后,可确定恢复的隐私数据为A方初始的隐私数据,在验证不通过的情况中,可结束该恢复过程,并指示恢复失败。
图4示出根据本说明书实施例的一种基于安全多方计算保存隐私数据的装置400,所述装置部署在所述隐私数据的数据拥有方的设备中,包括:
第一获取单元41,配置为,对于所述隐私数据中包括的第一连续t位数据,基于秘密分享算法获取n个分片,所述秘密分享算法使得所述第一连续t位数据能够基于所述n个分片中的至少k个分片获取,其中,n为大于等于2的自然数,t为小于等于所述隐私数据位数的预定位数;
第二获取单元42,配置为,获取与所述n个分片分别对应的n个数据包,每个数据包中包括其密文数据,所述密文数据对应的明文数据中包括:相应的分片、以及该分片的哈希值;
提供单元43,配置为,将所述n个数据包分别提供给n个数据保存方各自的设备。
图5示出根据本说明书实施例的一种基于安全多方计算恢复隐私数据的装置500,其中,所述隐私数据中包括第一连续t位数据,与所述第一连续t位数据对应的n个真实数据包分别保存在n个数据保存方各自的设备中,所述n个真实数据包与基于秘密分享算法获取的n个分片分别对应,每个真实数据包中包括密文数据,所述密文数据对应的明文数据中包括:相应的分片、以及该分片的哈希值,其中,所述第一连续t位数据能够基于所述n个分片中的至少k个分片获取,其中n为大于等于2的自然数,t为小于等于所述隐私数据位数的预定位数,所述装置部署在所述隐私数据的数据拥有方的设备中,包括:
第一获取单元51,配置为,从n个数据保存方中的m个数据保存方各自的设备获取m个数据包,其中n≤m≤k;
解密单元52,配置为,对所述m个数据包中各个数据包包括的密文数据分别解密,以获取各个数据包的分片、以及对应的第一哈希值;
验证单元53,配置为,对于m个数据包中的每个数据包,验证该数据包中的第一哈希值与该数据包中的分片是否相对应,以确定该数据包是否有效;
第二获取单元54,配置为,在确定所述m个数据包中的至少k个数据包有效的情况中,基于秘密分享算法,通过所述至少k个数据包各自对应的分片获取所述第一连续t位数据。
在一个实施例中,所述明文数据中还包括设备指纹信息,其中,所述验证单元53还配置为,对于m个数据包中的每个数据包,验证该数据包中的第一哈希值与该数据包中的分片是否相对应,并验证该数据包中的设备指纹信息与当前设备的指纹信息是否一致,以确定该数据包是否有效。
在一个实施例中,所述每个数据包中还包括所述密文数据的哈希值,其中,所述第一获取单元51包括,获取子单元511,配置为,从n个数据保存方中的p个数据保存方各自的设备获取p个数据包;验证子单元512,配置为,对于所述p个数据包中的每个数据包,基于该数据包中的密文数据及其哈希值,对该数据包进行有效性验证,其中,n≤p≤m,其中,所述解密单元52还配置为,在验证所述p个数据包中的m个数据包有效的情况中,对所述m个数据包中各个数据包包括的密文数据分别解密。
在一个实施例中,所述隐私数据包括连续排列的多个连续多位数据,每个数据包中还包括以下至少一项:与所述第一连续t位数据对应的哈希值、所述第一连续t位数据在所述多个连续多位数据中的排列顺序、分片总数、最少恢复分片数目、和所述隐私数据对应的哈希值,其中,所述验证子单元512还配置为,基于所述至少一项对该数据包进行有效性验证。
在一个实施例中,所述第二获取单元54还包括,恢复子单元541,配置为,基于秘密分享算法,通过所述至少k个数据包各自包括的分片恢复第一数据;验证子单元542,配置为,基于与所述第一连续t位数据对应的哈希值对所述第一数据进行验证;获取子单元543,配置为,在对所述第一数据的验证通过的情况中,基于所述第一数据获取所述第一连续t位数据。
本说明书另一方面提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行上述任一项方法。
本说明书另一方面提供一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述任一项方法。
通过根据本说明书实施例的基于秘密分享的保存和恢复隐私数据的方案,通过在秘密分享数据包中包括密文数据,从而使得例如执行该过程的APP即使获取至少k个数据包,也不能恢复隐私数据,提高了分片传输安全性,另外,通过在数据包中加入隐私数据拥有方的设备指纹信息,使得仅允许该数据拥有方进行对隐私数据的恢复,从而提高了隐私数据保存和恢复的安全可靠性。
需要理解,本文中的“第一”,“第二”等描述,仅仅为了描述的简单而对相似概念进行区分,并不具有其他限定作用。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域普通技术人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执轨道,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执轨道的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (24)

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位数据,基于秘密分享算法获取n个分片,所述秘密分享算法使得所述第一连续t位数据能够基于所述n个分片中的至少k个分片获取,其中,n为大于等于2的自然数,t为小于等于所述隐私数据位数的预定位数;
第二获取单元,配置为,获取与所述n个分片分别对应的n个数据包,每个数据包中包括其密文数据,所述密文数据对应的明文数据中包括:相应的分片、以及该分片的哈希值;
提供单元,配置为,将所述n个数据包分别提供给n个数据保存方各自的设备。
13.根据权利要求12所述的装置,其中,所述密文数据通过使用对称密钥或不对称密钥中的公钥对相应的明文数据加密获取。
14.根据权利要求12所述的装置,其中,所述明文数据中还包括设备指纹信息。
15.根据权利要求12所述的装置,其中,所述每个数据包中还包括所述密文数据的哈希值。
16.根据权利要求12所述的装置,其中,所述隐私数据为所述数据拥有方的区块链账户私钥。
17.根据权利要求16所述的装置,其中,所述私钥包括连续排列的多个连续多位数据,每个数据包中还包括以下至少一项:与所述第一连续t位数据对应的哈希值、所述第一连续t位数据在所述多个连续多位数据中的排列顺序、分片总数、最少恢复分片数目、和所述隐私数据对应的哈希值。
18.一种基于安全多方计算恢复隐私数据的装置,其中,所述隐私数据中包括第一连续t位数据,与所述第一连续t位数据对应的n个真实数据包分别保存在n个数据保存方各自的设备中,所述n个真实数据包与基于秘密分享算法获取的n个分片分别对应,每个真实数据包中包括密文数据,所述密文数据对应的明文数据中包括:相应的分片、以及该分片的哈希值,其中,所述第一连续t位数据能够基于所述n个分片中的至少k个分片获取,其中n为大于等于2的自然数,t为小于等于所述隐私数据位数的预定位数,所述装置部署在所述隐私数据的数据拥有方的设备中,包括:
第一获取单元,配置为,从n个数据保存方中的m个数据保存方各自的设备获取m个数据包,其中n≤m≤k;
解密单元,配置为,对所述m个数据包中各个数据包包括的密文数据分别解密,以获取各个数据包的分片、以及对应的第一哈希值;
验证单元,配置为,对于m个数据包中的每个数据包,验证该数据包中的第一哈希值与该数据包中的分片是否相对应,以确定该数据包是否有效;
第二获取单元,配置为,在确定所述m个数据包中的至少k个数据包有效的情况中,基于秘密分享算法,通过所述至少k个数据包各自对应的分片获取所述第一连续t位数据。
19.根据权利要求18所述的装置,其中,所述明文数据中还包括设备指纹信息,其中,所述验证单元还配置为,对于m个数据包中的每个数据包,验证该数据包中的第一哈希值与该数据包中的分片是否相对应,并验证该数据包中的设备指纹信息与当前设备的指纹信息是否一致,以确定该数据包是否有效。
20.根据权利要求18所述的装置,所述每个数据包中还包括所述密文数据的哈希值,其中,所述第一获取单元包括,获取子单元,配置为,从n个数据保存方中的p个数据保存方各自的设备获取p个数据包;验证子单元,配置为,对于所述p个数据包中的每个数据包,基于该数据包中的密文数据及其哈希值,对该数据包进行有效性验证,其中,n≤p≤m,
其中,所述解密单元还配置为,在验证所述p个数据包中的m个数据包有效的情况中,对所述m个数据包中各个数据包包括的密文数据分别解密。
21.根据权利要求20所述的装置,所述隐私数据包括连续排列的多个连续多位数据,每个数据包中还包括以下至少一项:与所述第一连续t位数据对应的哈希值、所述第一连续t位数据在所述多个连续多位数据中的排列顺序、分片总数、最少恢复分片数目、和所述隐私数据对应的哈希值,其中,所述验证子单元还配置为,基于所述至少一项对该数据包进行有效性验证。
22.根据权利要求18所述的方法,其中,所述第二获取单元还包括,恢复子单元,配置为,基于秘密分享算法,通过所述至少k个数据包各自包括的分片恢复第一数据;验证子单元,配置为,基于与所述第一连续t位数据对应的哈希值对所述第一数据进行验证;获取子单元,配置为,在对所述第一数据的验证通过的情况中,基于所述第一数据获取所述第一连续t位数据。
23.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-11中任一项的所述的方法。
24.一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-11中任一项所述的方法。
CN201911167253.7A 2019-11-25 2019-11-25 基于安全多方计算保存和恢复隐私数据的方法和装置 Pending CN110889695A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911167253.7A CN110889695A (zh) 2019-11-25 2019-11-25 基于安全多方计算保存和恢复隐私数据的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911167253.7A CN110889695A (zh) 2019-11-25 2019-11-25 基于安全多方计算保存和恢复隐私数据的方法和装置

Publications (1)

Publication Number Publication Date
CN110889695A true CN110889695A (zh) 2020-03-17

Family

ID=69748672

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911167253.7A Pending CN110889695A (zh) 2019-11-25 2019-11-25 基于安全多方计算保存和恢复隐私数据的方法和装置

Country Status (1)

Country Link
CN (1) CN110889695A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112507360A (zh) * 2020-12-10 2021-03-16 浙商银行股份有限公司 基于门限签名和预言机的区块链数据上链方法及装置
CN113935057A (zh) * 2021-12-14 2022-01-14 北京中科金财科技股份有限公司 一种基于门限的同态加密隐私保护装置及方法
CN116684094A (zh) * 2023-08-01 2023-09-01 华控清交信息科技(北京)有限公司 一种数据处理方法、装置、系统和可读存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100031128A1 (en) * 2006-10-24 2010-02-04 Satoshi Obana Shared information generating apparatus and recovering apparatus
US20120243679A1 (en) * 2009-12-22 2012-09-27 Nec Corporation Verification device, secret information restoration device, verification method, program, and secret sharing system
CN103118089A (zh) * 2013-01-22 2013-05-22 华中科技大学 一种基于多个云存储系统的安全存储方法及其系统
CN105959115A (zh) * 2016-07-19 2016-09-21 贵州大学 面向多方容错授权的公开可验证大数据交易方法
CN106357401A (zh) * 2016-11-11 2017-01-25 武汉理工大学 一种私钥存储及使用方法
CN107623569A (zh) * 2017-09-30 2018-01-23 矩阵元技术(深圳)有限公司 基于秘密共享技术的区块链密钥托管和恢复方法、装置
CN110297831A (zh) * 2019-07-01 2019-10-01 电子科技大学 一种基于门限秘密共享的区块链分片存储方法
CN110348229A (zh) * 2019-06-11 2019-10-18 北京思源互联科技有限公司 数据的加密方法及装置、数据的解密方法及装置

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100031128A1 (en) * 2006-10-24 2010-02-04 Satoshi Obana Shared information generating apparatus and recovering apparatus
US20120243679A1 (en) * 2009-12-22 2012-09-27 Nec Corporation Verification device, secret information restoration device, verification method, program, and secret sharing system
CN103118089A (zh) * 2013-01-22 2013-05-22 华中科技大学 一种基于多个云存储系统的安全存储方法及其系统
CN105959115A (zh) * 2016-07-19 2016-09-21 贵州大学 面向多方容错授权的公开可验证大数据交易方法
CN106357401A (zh) * 2016-11-11 2017-01-25 武汉理工大学 一种私钥存储及使用方法
CN107623569A (zh) * 2017-09-30 2018-01-23 矩阵元技术(深圳)有限公司 基于秘密共享技术的区块链密钥托管和恢复方法、装置
CN110348229A (zh) * 2019-06-11 2019-10-18 北京思源互联科技有限公司 数据的加密方法及装置、数据的解密方法及装置
CN110297831A (zh) * 2019-07-01 2019-10-01 电子科技大学 一种基于门限秘密共享的区块链分片存储方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112507360A (zh) * 2020-12-10 2021-03-16 浙商银行股份有限公司 基于门限签名和预言机的区块链数据上链方法及装置
CN113935057A (zh) * 2021-12-14 2022-01-14 北京中科金财科技股份有限公司 一种基于门限的同态加密隐私保护装置及方法
CN116684094A (zh) * 2023-08-01 2023-09-01 华控清交信息科技(北京)有限公司 一种数据处理方法、装置、系统和可读存储介质
CN116684094B (zh) * 2023-08-01 2023-10-24 华控清交信息科技(北京)有限公司 一种数据处理方法、装置、系统和可读存储介质

Similar Documents

Publication Publication Date Title
CN105760764B (zh) 一种嵌入式存储设备文件的加解密方法、装置及终端
CN101401141B (zh) 信息处理系统以及信息处理方法
US8892881B2 (en) Split key secure access system
US20190140819A1 (en) System and method for mekle puzzles symeteric key establishment and generation of lamport merkle signatures
CN111079128A (zh) 一种数据处理方法、装置、电子设备以及存储介质
CN110059458B (zh) 一种用户口令加密认证方法、装置及系统
CN110889695A (zh) 基于安全多方计算保存和恢复隐私数据的方法和装置
CN110969431A (zh) 区块链数字币私钥的安全托管方法、设备和系统
CN112115461B (zh) 设备认证方法、装置、计算机设备和存储介质
US11436946B2 (en) Encryption device, encryption method, decryption device, and decryption method
US11368312B2 (en) Signature generation and verification system
CN113726725A (zh) 一种数据加解密方法、装置、电子设备及存储介质
CN113098675B (zh) 基于多项式完全同态的二进制数据加密系统及方法
CN114205142B (zh) 数据传输方法、装置、电子设备和存储介质
CN111314050A (zh) 一种加解密方法及装置
Sharma et al. Analysis of AES Encryption with ECC
CN110909387B (zh) 基于安全多方计算保存和恢复隐私数据的方法和装置
CN110941854B (zh) 基于安全多方计算保存和恢复隐私数据的方法和装置
WO2015166701A1 (ja) 暗号化方法、プログラム、および、システム
WO2018047120A1 (en) A system and method for data block modification detection and authentication codes
CN116248316A (zh) 文件加密方法、文件解密方法、装置及存储介质
CN115632765A (zh) 加密方法、解密方法、装置、电子设备及存储介质
CN114422209A (zh) 一种数据处理的方法、装置及存储介质
JP2005114870A (ja) 暗号通信システム
Savitri et al. Efficient technique image encryption with cipher block chaining and gingerbreadman map

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40025342

Country of ref document: HK

RJ01 Rejection of invention patent application after publication

Application publication date: 20200317

RJ01 Rejection of invention patent application after publication