CN110740033B - 一种基于秘密共享技术的区块链多方数据共享方法 - Google Patents

一种基于秘密共享技术的区块链多方数据共享方法 Download PDF

Info

Publication number
CN110740033B
CN110740033B CN201910764618.8A CN201910764618A CN110740033B CN 110740033 B CN110740033 B CN 110740033B CN 201910764618 A CN201910764618 A CN 201910764618A CN 110740033 B CN110740033 B CN 110740033B
Authority
CN
China
Prior art keywords
data
block chain
participant
participants
sharing
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.)
Active
Application number
CN201910764618.8A
Other languages
English (en)
Other versions
CN110740033A (zh
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.)
Hangzhou Yunxiang Network Technology Co Ltd
Original Assignee
Hangzhou Yunxiang Network 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 Hangzhou Yunxiang Network Technology Co Ltd filed Critical Hangzhou Yunxiang Network Technology Co Ltd
Priority to CN201910764618.8A priority Critical patent/CN110740033B/zh
Publication of CN110740033A publication Critical patent/CN110740033A/zh
Application granted granted Critical
Publication of CN110740033B publication Critical patent/CN110740033B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • H04L9/3073Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing

Abstract

本发明公开了一种基于秘密共享技术的区块链多方数据共享方法。实现步骤包括:(1)结合双线性映射和同态加密性质实现多方密钥协商与分配;(2)采用同态秘密共享方法实现区块链中多方关联参与者协作数据共享;(3)验证和恢复数据。本发明基于区块链实现了多方数据共享,能够实现基于区块链多方之间的动态数据共享,即实现区块链交易相关方之间的数据通信,无关方参与简单验证,即交易无关方不需获取和处理完整数据,从而实现区块链上的动态数据共享,实现了区块链上子任务分配,以提高区块链节点间的工作效率,对完善区块链的建设具有一定参考价值。

Description

一种基于秘密共享技术的区块链多方数据共享方法
技术领域
本发明属于区块链技术领域,具体涉及一种基于秘密共享技术的区块链多方数据共享方法。
技术背景
区块链的加密技术采用对称加密算法和非对称加密算法对不同应用场景的区块链进行数据保护,区块链的数字签名技术实现(人与设备)身份认证功能,身份认证与授权是数据安全的重要防线,是确保数据通信安全的基本措施,现有的区块链技术尚处在发展阶段,技术并不成熟,也就有必要引入其他技术方案来完善这些问题。秘密共享技术是密码学的一种重要的技术,是目前比较成熟的密码学技术之一。基于传统密码学和博弈论,Halpem和Teague提出理性秘密共享和安全多方计算(SMC)的概念,解决了经典的秘密共享方案事先不能采取任何保护措施确保参与者不会背离协议的问题。在理性秘密共享方案中,理性的参与者不知道实际秘密重构轮数的情况下,协议须运行多轮。Nojoumian等人提出的无条件安全的社交秘密共享方案中,参与者的权重会随着时间而进行调整。Kawachi等人提出了可应用于信道并保持严格纳什均衡的理性秘密共享方案的一般构造方法。然而以上理性秘密共享方案均需运行多轮协议来保证参与者之间的公平,运算效率低下。
双线性映射在多方安全计算和数据协作共享中发挥了关键的作用。线性映射是构造签名的重要工具,双线性映射构造的签名方案具有签字短、安全、高效等特点,利用双线性映射结构构造的数据协作共享方案现已得到了广泛的应用。同态加密是Rivcst等人1978年提出的。同态加密允许用户直接执行特定密文的代数操作,得到结果,并在此结果的基础上对相同的明文加密结果执行相同的操作,因此降低了密钥丢失的问题,目前广泛应用于数字货币加密及密钥加密领域。在区块链的运行中,加密方法配合不同的数据共享模型可以确保数据的安全而有效的传输。目前,在不同场景应用不同的加密方法已经可以确保数据在区块链上的共享,但是各种安全隐患和黑客攻击造成损失的事件仍然存在,所以应用于区块链中解决数据安全问题依然是值得研究的重点问题。如何安全有效对数据进行共享的问题的进一步解决,以及任何具有参考价值的方案的提出都会对区块链技术产生重要影响。因此,双线性映射技术和同态加密技术的各种加密方式逐渐应用到秘密共享技术方案中。
随着信息化技术的快速发展,互联网快速普及,全球数据呈现增长迅猛、海量汇集的特点,对经济发展、社会治理、国家管理、生活娱乐都产生了重大的影响。现阶段数据发展面临数据开放共享流通困难,数据安全与隐私保护困难等挑战。区块链是一种不可篡改的数据库存储技术,海量区块数据集合包含着每一笔交易的全部历史,本质上是一个共享的可靠数据库,这个数据库的维护是去中心化、去信任的,加密技术和数字签名技术又进一步保证了区块链在通信过程中的数据安全,正是数据资源流通、隐私保护的重要支撑,但是区块链数据统计分析的能力较弱,在有效将数据进行协作共享方面还存在诸多问题。
发明内容
本发明基于上述背景和现有技术所存在的问题,拟设计一种基于秘密共享的区块链多方数据共享方法,这种方法运用了秘密共享技术、双线性映射技术和同态加密技术实现区块链数据安全有效的共享。针对现有秘密共享方案不能实现安全的秘密重构以及不能有效保证参与者之间的公平性等问题,本发明基于同态加密技术和区块链技术对数据进行隐私保护;针对容易受到中间人攻击的可能性,引入认证密钥协商协议,此协议采用双线性映射的方法,为区块链构造高效的签名方案;针对区块链数据传输过程中存在恶意节点对数据的窃取、伪造和修改行为,本发明基于区块链元数据对数据文件的安全性进行了验证。基于这些方法的应用能够实现区块链多方之间的动态数据共享,即实现区块链交易相关方之间的数据通信,无关方参与简单验证,即交易无关方不需获取和处理完整数据,从而实现区块链上的动态数据共享,实现了区块链上子任务分配,以提高区块链节点间的工作效率,对完善区块链的建设具有一定参考价值。
本发明的数据共享方案涉及:数据分发者D,参与者P,访问结构T,数据空间,子份额空间T’,数据分发算法和数据重构算法。方案中,任意大于等于t个参与者合作可重构数据,少于t个参与者不能推导出任何有效信息,即利用随机值隐藏参与者子份额信息,最终参与者能公平地重构出秘密而不依赖于任何可信第三方。
一种区块链数据共享机制的实现方法,其实现数据共享的过程如下:
(1)结合双线性映射和同态加密性质实现多方密钥协商与分配;
(2)采用同态秘密共享方法实现区块链中多方关联参与者协作数据共享;
(3)数据的验证和恢复。
优选的是,其中,利用区块链存储数据不可篡改和可溯源的特性,结合双线性映射构造读取数据的密钥分发方法,符号说明:G1和G2是两个阶位素数q的乘法循环群,e:G1×G2→G2,g是G1的生成元;sigi(m)表示参与者签名;
Figure GDA0003634092710000031
表示参与者的公钥加密算法,
Figure GDA0003634092710000032
表示参与者的私钥加密算法;H为Hash函数;Zn是n的整数集合。实现步骤的具体说明如下:
1.1将总私钥s分配成n份(n≥3,为整数),参与者Pn利用随机数生成器生成随机数当做己方选择的私钥si并保存。其中,需要t-1(3≤t≤n)个其他私钥聚合才能解密密文c(每个子私钥可以解密相应子数据密文);
1.2数据中心计算
Figure GDA0003634092710000033
并分成n份发送给其他用户Pj(1≤j≤n,j≠i),发送的消息为sigi(H(mi))和
Figure GDA0003634092710000034
其中
Figure GDA0003634092710000035
这相当于用户把自己的公钥分发给了系统中参与数据共享的每个Pi,没有参与的用户不需要处理,其中
Figure GDA0003634092710000036
要写入区块链账本;
1.3Pi收到上一轮发来的消息,先验证签名,再解密得到每个参与者的
Figure GDA0003634092710000037
然后选择一个随机数ri计算
Figure GDA0003634092710000038
将sigi(H(mi’))和H(Zi),sigi(H(mi”))和H(Mi)分别发送给参与者Pi-1和Pi-2,其中
Figure GDA0003634092710000039
Figure GDA00036340927100000310
并将交易记录及H(Zi)、H(Mi)写入账本;
1.4利用加密系统具有的同态性质,加密子私钥的步骤包括:
Figure GDA0003634092710000041
Figure GDA0003634092710000042
其中si-1,si-2表示要加密的的私钥;r1,r2∈Zn *是随机选择的常数;a为常数;
1.5参与者Pi按照1.4的方式得到
Figure GDA0003634092710000043
计算会话密钥份额
Figure GDA0003634092710000044
将sigi(mi”’)和H(ki)(i≠j,i,j=1,2,……,n),其中
Figure GDA0003634092710000045
分别发送给Pj(1≤j≤n,j≠i);
1.6Pi得到ki后,计算会话密钥
Figure GDA0003634092710000046
优选的是,为了保护用户数据的隐私和防篡改性能,需对数据进行加密,并将其散列值存储在区块链中,加密数据可防止未经授权的用户访问数据,并将数据的哈希值存储到区块中防止信息被篡改。若加密数据需要某方共同维护,则需要一定数量的参与方检查加密的数据。符号说明:数据分发者D,参与者P,访问结构Г,数据空间S,子份额空间T,秘密分发算法和秘密重构算法。将要涉及的符号说明:p、q为大素数,且q|p-1,g∈Zq *为q阶生成元,伪数据子份额di’,验证信息
Figure GDA0003634092710000047
k=0,1,……,t-1,并将验证信息发送给接收方,验证信息不会泄露任何关于共享数据子份额di的任何信息,在有限域GF(P)上的交易f,数据元素a,其中a∈S。(2)采用同态加密的性质,构造了数据共享的隐私协议,具体实现步骤如下:
2.1n个参与者的集合P被分为l等级,即
Figure GDA0003634092710000048
其中
Figure GDA0003634092710000049
令th为等级Ph的门限值,h=0,1,……,l。Pi接收来自分发者的di’和
Figure GDA00036340927100000410
其中k=0,1,……,t-1;
2.2参与者Pi分别拥有密钥对(Pi.ki,Pi.si),其中i=1,2,……,n;由Pi兑换账本中未兑换的交易fi j,并设置押金金额,i,j∈{1,2,……,n},i≠j;
2.3定义时间戳。一系列时间戳确保共享过程顺序进行,包括:P个参与者在时间结束注册时间tfr之前完成注册并设置押金,在开始协议时间tbp之前开始执行协议,在结束确认时间tfc之前完成承诺,则已承诺的参与者赎回押金;在tfo时间公开承诺的参与者也可以赎回押金,并在此时公开伪数据子份额d’i
2.4分发者从有限域GF(P)中随机选取t-1个数据元素a1,a2,……,at-1构造t-1次多项式F(x)=a0+a1x+……+at-1xt-1,计算伪数据子份额
Figure GDA0003634092710000051
并将d’i发送给参与者Pi,其中
Figure GDA0003634092710000052
Figure GDA0003634092710000053
是函数F(x)的th-1次求导,t-1=0。根据:
c=EPK(m)=gmrn mod n2 (3)
其中明文m∈Zn,c为加密后的密文,公钥ki=(g,n),r∈Zn *随机选择(Zn *表示Zn中可逆元素的乘法群),由用户私有。每个参与者Pi∈P加密子密文vu并将密文EPK(vk)传输到数据分发者D;
2.5本发明的加密系统具有同态性质,可得:
Figure GDA0003634092710000054
Figure GDA0003634092710000055
其中mi-1,mi-2表示要加密的的子密文;r1,r2∈Zn *是随机选择的常数;a为常数;
2.6数据分发者D将验证信息αk和随机值r发送给Pi,D选择至少t-1个用户,并将双重加密密文C发送给这些参与者:
Figure GDA0003634092710000056
2.7计算C的部分密文CKi,D计算部分密文CD,结合从其他用户得到的t-1个其他的部分密文,得到密文和
Figure GDA0003634092710000057
同时公开伪数据子份额d’i
2.8所有的Pi获得伪数据子份额d’i并基于Birkhoff插值法重构出伪数据d’,由此参与者Pi解密得到数据
Figure GDA0003634092710000058
其中,数据分发算法包括步骤2.1-2.6,数据重构算法包括步骤:2.7-2.8。
进一步地,定义一系列时间戳确保共享过程顺序进行。在结束公开时间tfo后,所述2.7中正确公开伪数据子份额d’i的参与者Pi满足等式
Figure GDA0003634092710000059
可获取押金。
进一步地,所述2.8中Birkhoff插值法重构出数据条件为:访问结构满足
Figure GDA0003634092710000061
其中V为总密文。
优选的是,本发明通过区块链中Merkle哈希树生成根哈希,一方面可作为当前状态下数据文件的唯一身份证明,也可以用以证明数据的完整性检验的参数。当参与者上传一个数据文件时,生成一条对应的事务信息,这个信息经过验证会被添加到区块链中,并且不可篡改。本发明基于上述密钥密钥协商与分配方法和限定数据共享机制产生的一个个子数据对数据文件的安全性进行验证,这个过程类似于常见的区块链交易系统中的数据验证,并对部分损坏或丢失的数据进行恢复(子数据易于恢复)。其具体实现步骤如下:
3.1参与者Pi拥有子数据份额di并将di及其验证信息进行全网广播;
3.2当Pj|j≠i收到di的验证请求后,对其进行验证,并得到验证结果;
3.3判断验证结果,并做出相应操作:结果为真则暂时将该di存储在区块链的预一致性验证区块中;结果为假则丢弃并记录损坏Pi的信息;
3.4由主参与者PLi对当前区块进行封装,并在通过验证后同步到其他参与者;
3.5恢复损坏数据,区块链上存有数据副本,并将数据副本同步到损坏参与者节点Pi
进一步地,3.2的验证内容主要包括:此次操作的合法性(操作权限验证及副本验证等)。
本发明括以下有益效果:
1.实现区块链交易相关方之间的数据通信,从而实现区块链上的动态数据共享;
2.实现区块链上子任务分配,从而使得节点的工作效率提高,
3.无关方参与简单验证并不获取完数据,减少了区块链节点的工作量,对完善区块链的建设具有一定参考价值。
附图说明
图1为本发明实施例的流程示意图;
图2为数据验证与恢复的过程。
具体实施方式
为了清晰地阐述本发明,使本发明实施例的目的、技术方案和优点更加清楚,下面结合了本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。下面将附图结合具体实施方式对本发明的技术加以详细说明。
实施例1:
图1示出了根据本发明的一种实现形式,示出了基于秘密共享技术的区块链多方数据共享的主要过程,其主要实现步骤包括:
(1)参与者Pi多方密钥协商与分配;
(2)授权的Pi获得会话密钥ki,无授权的用户申请授权或者不参与此次数据共享;
(3)根据参与者人数,制定多方限定的数据共享协议,保证数据共享过程的稳定与数据安全;
(4)采用同态秘密共享方法实现区块链中多方关联参与者协作共享数据;
(5)数据通过计算
Figure GDA0003634092710000071
验证每个参与者共享数据的完成承诺状态,满足条件的参与者可以重构出数据并获取押金,不满足条件的参与者也获取押金,但不能够重构出完整数据。
详细地来说,(1)和(2)中实现参与者Pi多方密钥协商与分配的步骤为:令G1和G2是两个阶位素数q的乘法循环群,令e:G1×G2→G2,g是G1的生成元;sigi(m)表示参与者签名;
Figure GDA0003634092710000081
表示公钥加密算法,
Figure GDA0003634092710000082
表示私钥加密算法;H为Hash函数;Zn是n的整数集合。利用区块链存储数据不可篡改和可溯源的特性,结合双线性映射构造读取数据的密钥分发方法的实现步骤如下:
第1步:将总私钥s(表示为s1,s2……sn)分配成n份(n≥3,为整数),参与者Pn利用随机数生成器生成随机数当做己方选择的私钥si并保存;
第2步:计算
Figure GDA0003634092710000083
分成n份发送给其他参与者Pj(1≤j≤n,j≠i),发送的消息为sigi(H(mi))和
Figure GDA0003634092710000084
其中
Figure GDA0003634092710000085
第3步:Pi收到上一轮发来的消息,先验证签名,再解密得到每个参与者的
Figure GDA0003634092710000086
选择一个随机数ri计算
Figure GDA0003634092710000087
将sigi(H(mi’))和H(Zi),sigi(H(mi”))和H(Mi)分别发送给参与者Pi-1和Pi-2,其中
Figure GDA0003634092710000088
Figure GDA0003634092710000089
并将交易记录及H(Zi)、H(Mi)写入账本;
第4步:利用加密系统的同态性质,加密子私钥;
第5步:参与者Pi按照第4步的方式得到
Figure GDA00036340927100000810
计算会话密钥份额
Figure GDA00036340927100000811
将sigi(mi”’)和H(ki)(i≠j,i,j=1,2,……,n),其中
Figure GDA00036340927100000812
分别发送给参与者Pj(1≤j≤n,j≠i);
第6步:参与者Pi得到ki后,计算会话密钥
Figure GDA00036340927100000813
详细地来说,(3)、(4)、(5)基于区块链地多方数据共享的实现,采用同态加密的性质,构造了数据共享的隐私协议,具体实现步骤包括:
第1步:n个参与者的集合P被分为l等级,即
Figure GDA00036340927100000814
其中
Figure GDA00036340927100000815
令th为等级Ph的门限值,h=0,1,……,l。参与者Pi分别拥有密钥对(Pi.si,Pi.ki),其中i=1,2,……,n;Pi接收来自分发者的si’和
Figure GDA00036340927100000816
其中k=0,1,……,t-1;
第2步:Pi拥有密钥对(Pi.ki,Pi.si),由Pi兑换账本包含未兑换的交易fi j,并设置押金金额,i,j∈{1,2,……,n},i≠j;
第3步:定义时间戳。一系列时间戳确保共享过程顺序进行,包括:P个参与者在时间结束注册时间tfr之前完成注册并设置押金,在开始协议时间tbp之前开始执行协议,在结束确认时间tfc之前完成承诺,则已承诺的参与者赎回押金;在tfo时间公开承诺的参与者也可以赎回押金,并在此时公开伪数据子份额d’i
第4步:分发者D从有限域中随机选取t-1个数据元素a1,a2,……,at-1构造t-1次多项式F(x)=a0+a1x+……+at-1xt-1,计算伪数据子份额
Figure GDA0003634092710000091
并将d’i发送给参与者Pi,其中
Figure GDA0003634092710000092
Figure GDA0003634092710000093
是函数F(x)的th-1次求导,t-1=0。利用公钥加密明文,其中明文m∈Zn,c为加密后的密文,公钥ki=(g,n),r∈Zn *随机选择(Zn *表示Zn中可逆元素的乘法群),由用户私有。每个参与者Pi∈P加密子密文vu并将密文EPK(vk)传输到数据分发者D;
第5步:利用加密系统的同态性质,加密子密文;
第6步:数据分发者D将验证信息和随机值r发送给Pi,D选择至少t-1个用户,并将双重加密密文C发送给Pi
第7步:分别计算C的部分密文
Figure GDA0003634092710000094
D计算部分密文CD,结合从其他用户得到的t-1个其他的部分密文,得到密文和
Figure GDA0003634092710000095
并公开伪数据子份额d’i
第8步:所有的Pi获得伪数据子份额d’i并重构出伪数据d’,由此参与者Pi解密得到秘密
Figure GDA0003634092710000096
其中,第3步定义一系列时间戳确保共享过程顺序进行:在结束公开时间后,所述2.7中正确公开伪数据子份额d’i的参与者Pi满足等式
Figure GDA0003634092710000097
可获取押金。
实施例2:
图2示出了根据本发明的一种实现形式,示出了基于以上密钥加密操作和完成制定数据共享协议中,还包括对子数据进行验证的过程,以保证共享的数据的正确性。区块链中Merkle哈希树生成根哈希,一方面可作为当前状态下数据文件的唯一身份证明,也可以用以证明数据的完整性检验的参数。验证过程类似于常见的区块链交易验证。本发明将一个数据整体进行分配成子数据,子数据相较于整体的数据更易于恢复,因此本发明还包括对损坏或丢失的数据进行恢复的操作。数据验证和恢复的具体实现过程包括:
1.1参与者Pi拥有子数据份额di并将di及其验证信息进行全网广播;
1.2当Pj|j≠i收到di的验证请求后,对其进行验证,包括此次操作的合法性(操作权限验证及副本验证等),并得到验证结果;
1.3判断验证结果:结果为真则暂时将该di存储在区块链的预一致性验证区块中;结果为假则丢弃并记录损坏Pi的信息;
1.4由主参与者PLi对当前区块进行封装,并在通过验证后同步到其他参与者;
1.5恢复损坏数据,区块链上存有数据副本,并将数据副本同步到损坏参与者节点Pi
上述对实施例的描述是为便于本技术领域的普通技术人员能理解和应用本发明。熟悉本领域技术的人员显然可以容易地对上述实施例做出各种修改,并把在此说明的一般原理应用到其他实施例中而不必经过创造性的劳动。因此,本发明不限于上述实施例,本领域技术人员根据本发明的揭示,对于本发明做出的改进和修改都应该在本发明的保护范围之内。

Claims (6)

1.一种基于秘密共享技术的区块链多方数据共享方法,其特征在于,实现步骤包括:
(1)结合双线性映射和同态加密性质实现多方密钥协商与分配,其中,在所述步骤(1)内,G1和G2为两个阶位素数q的乘法循环群,e:G1×G2→G2,g为G1的生成元,sigi(m)为参与者签名,
Figure FDA0003634092700000011
为公钥加密算法,
Figure FDA0003634092700000012
为私钥加密算法,H为Hash函数,Zn是n的整数集合,具体实现步骤包括:
1.1将总私钥s分配成n份,所有参与者Pn利用随机数生成器生成随机数当做私钥si并保存,其中,n≥3,且为整数;
1.2数据分发者D计算私钥的生成元
Figure FDA0003634092700000013
并将其分成n份发送给其他参与者Pj(1≤j≤n,j≠i),发送的消息为sigi(H(mi))和
Figure FDA0003634092700000014
1.3每个参与者Pi收到上一轮发来的消息,先验证签名,再解密得到Pi
Figure FDA0003634092700000015
选择一个随机数ri计算
Figure FDA0003634092700000016
将sigi(H(mi’))和H(Zi),sigi(H(mi”))和H(Mi)分别发送给参与者Pi-1和Pi-2,其中,
Figure FDA0003634092700000017
Figure FDA0003634092700000018
并将交易记录及H(Zi)、H(Mi)写入账本;
1.4利用加密系统的同态性质加密子私钥;
1.5Pi按照加密子私钥的方式得到
Figure FDA0003634092700000019
计算会话密钥份额
Figure FDA00036340927000000110
将sigi(mi”’)和H(ki)(i≠j,i,j=1,2,……,n)分别发送给其他参与者Pj(1≤j≤n,j≠i),其中,
Figure FDA00036340927000000111
1.6Pi得到ki后,计算会话密钥;
(2)采用同态秘密共享方法实现区块链中多方关联参与者协作数据共享,其中,所述步骤(2)中:数据分发者D,参与者P,访问结构Г,数据空间S,子份额空间T,数据分发算法和数据重构算法;p、q为大素数,且q|p-1,g∈Zq *为q阶生成元,数据子份额d,d∈S,伪数据子份额di’,验证信息
Figure FDA00036340927000000112
并将验证信息发送给接收方,验证信息不会泄露任何关于共享数据子份额di的任何信息,在有限域GF(P)上的交易f,数据元素a;具体实现步骤如下:
2.1n个参与者的集合被分为l等级,Pi接收来自D的di’和
Figure FDA0003634092700000021
Figure FDA0003634092700000022
2.2Pi拥有密钥对(Pi.ki,Pi.si),其中,i=1,2,……,n;由Pi兑换账本中未兑换的交易,并设置押金金额;
2.3定义时间戳,一系列时间戳确保共享过程顺序进行,包括:P个参与者在时间结束注册时间tfr之前完成注册并设置押金,在开始协议时间tbp之前开始执行协议,在结束确认时间tfc之前完成承诺,则已承诺的参与者赎回押金;在tfo时间公开承诺的参与者也可以赎回押金,并在此时公开伪数据子份额d’i
2.4D从有限域中随机选取t-1个数据元素a1,a2,……,at-1构造t-1次多项式,计算di’,并将d’i发送给参与者Pi,其中,
Figure FDA0003634092700000023
Figure FDA0003634092700000024
是函数F(x)的th-1次求导,t-1=0,根据:c=EPK(m)=gmrnmodn2
其中,明文m∈Zn,c为加密后的密文,公钥ki=(g,n),r∈Zn *随机选择,Zn *表示Zn中可逆元素的乘法群,每个参与者Pi∈P加密子密文vu将密文EPK(vk)传输到D;
2.5利用加密系统具有的同态性质加密子密文;
2.6D将αk和随机值r发送给Pi,D选择至少t-1个参与者,并将双重加密密文C发送给Pi
2.7计算C的部分密文
Figure FDA0003634092700000025
D计算部分密文CD,结合从其他参与者得到的t-1个其他的部分密文,得到密文和,并公开d’i,在tfo后,当公开伪数据子份额d’i的参与者Pi满足等式
Figure FDA0003634092700000031
则获取押金;
2.8所有的Pi获得d’i并基于Birkhoff插值法重构出伪数据d’,由此参与者Pi解密得到秘密;
其中,数据分发算法包括2.1-2.6,数据重构算法包括:2.7-2.8;
(3)验证和恢复数据。
2.根据权利要求1所述基于秘密共享技术的区块链多方数据共享方法,其特征在于,需要t-1个其他私钥聚合解密密文c,每个子私钥si可以解密相应的子数据,3≤t≤n。
3.根据权利要求1所述基于秘密共享技术的区块链多方数据共享方法,其特征在于,所述1.2中,参与者把自己的公钥分发给了系统中参与数据共享的每个参与者,没有申请参与的参与者是看不到的;其中的
Figure FDA0003634092700000032
被写入区块链账本。
4.根据权利要求1所述基于秘密共享技术的区块链多方数据共享方法,其特征在于,所述2.1令th为等级Ph的门限值,h=0,1,……,l;Pi分别拥有密钥对(Pi.ki,Pi.si),i=1,2,……,n。
5.根据权利要求1所述基于秘密共享技术的区块链多方数据共享方法,其特征在于,所述Birkhoff插值法重构出数据的条件为:访问结构满足
Figure FDA0003634092700000033
其中,V为总密文。
6.根据权利要求1所述基于秘密共享技术的区块链多方数据共享方法,其特征在于,所述步骤(3)中验证和恢复数据的具体实现步骤包括:
3.1Pi拥有di并将di及其验证信息进行全网广播;
3.2当Pj|j≠i收到di的验证请求后,对其进行验证,并得到验证结果;
3.3判断验证结果,并做出相应操作:结果为真则暂时将该di存储在区块链的预一致性验证区块中,结果为假则丢弃并记录损坏Pi的信息;
3.4由主参与者PLi对当前区块进行封装,并在通过验证后同步到其他参与者;
3.5恢复损坏数据,区块链上存有数据副本,并将数据副本同步到损坏参与者节点Pi
CN201910764618.8A 2019-08-19 2019-08-19 一种基于秘密共享技术的区块链多方数据共享方法 Active CN110740033B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910764618.8A CN110740033B (zh) 2019-08-19 2019-08-19 一种基于秘密共享技术的区块链多方数据共享方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910764618.8A CN110740033B (zh) 2019-08-19 2019-08-19 一种基于秘密共享技术的区块链多方数据共享方法

Publications (2)

Publication Number Publication Date
CN110740033A CN110740033A (zh) 2020-01-31
CN110740033B true CN110740033B (zh) 2022-07-19

Family

ID=69267676

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910764618.8A Active CN110740033B (zh) 2019-08-19 2019-08-19 一种基于秘密共享技术的区块链多方数据共享方法

Country Status (1)

Country Link
CN (1) CN110740033B (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111415718B (zh) * 2020-02-29 2024-02-09 沈培君 一种基于区块链和条件代理重加密的电子处方共享方法
CN111475567B (zh) * 2020-03-09 2021-07-23 上海能链众合科技有限公司 一种物联网数据顺序记录方法
CN111404950B (zh) * 2020-03-23 2021-12-10 腾讯科技(深圳)有限公司 一种基于区块链网络的信息共享方法、装置和相关设备
CN111447057B (zh) * 2020-03-25 2023-04-28 南方电网科学研究院有限责任公司 一种基于门限秘密共享技术的安全存储方法及设备
CN111565175B (zh) * 2020-04-22 2022-04-05 辽宁大学 基于iota的平面型命名数据网络安全防御方法
CN111523896B (zh) * 2020-05-06 2023-05-30 杭州复杂美科技有限公司 防攻击方法、设备和存储介质
CN111935067A (zh) * 2020-06-10 2020-11-13 陈瑞安 一种基于云计算技术的企业用户身份认证系统
CN112398648B (zh) * 2020-11-05 2023-12-29 华控清交信息科技(北京)有限公司 一种密钥管理方法、装置和用于密钥管理的装置
CN112468293B (zh) * 2020-11-19 2022-06-17 苏州浪潮智能科技有限公司 一种身份认证方法、系统、设备及计算机可读存储介质
CN112600791B (zh) * 2020-11-23 2022-11-04 贵州财经大学 面向理性用户的秘密重构方法、计算机设备、介质及终端
CN112527898B (zh) * 2020-12-03 2022-06-07 杭州趣链科技有限公司 安全计算方法、装置、计算机及存储介质
CN112685783B (zh) * 2021-01-05 2024-02-27 西安电子科技大学 金融许可区块链中支持隐私保护的数据共享方法
CN112953712B (zh) * 2021-02-19 2022-10-18 昆明理工大学 一种基于零知识证明和同态加密的数据跨链共享方法
CN113438070B (zh) * 2021-05-25 2023-07-21 中国科学院计算技术研究所 基于capss的区块链密钥恢复方法及系统
CN113449336B (zh) * 2021-06-11 2022-11-04 电子科技大学 一种在区块链中基于安全多方隐私保护的共享数据处理方法
CN113660226A (zh) * 2021-07-30 2021-11-16 国网天津市电力公司 一种基于区块链的能源数据可信共享系统和方法
CN113870964B (zh) * 2021-09-14 2023-04-07 西南交通大学 一种基于区块链的医疗数据共享加密方法
CN113746621B (zh) * 2021-11-08 2022-01-04 湖南宸瀚信息科技有限责任公司 一种基于区块链技术的多链架构信息共享系统
CN114584374B (zh) * 2022-03-04 2023-11-21 内蒙古蒙嘟嘟科技服务有限公司 一种基于区块链的大数据隐私共享安全保护系统及方法
CN114520720B (zh) * 2022-03-22 2023-06-16 暨南大学 一种基于tls协议的多方认证区块链数据上链方法
CN115297118B (zh) * 2022-10-09 2023-01-31 北京航空航天大学杭州创新研究院 一种基于区块链的数据共享方法及数据共享系统
CN116506123B (zh) * 2023-06-27 2023-09-15 广州信安数据有限公司 基于公约协议的多主体数据共同体构建方法、介质及系统
CN116614320B (zh) * 2023-07-20 2023-09-12 北京交通大学 基于工业互联网三层通信架构的加密通信方法及相关设备

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100966071B1 (ko) * 2007-12-18 2010-06-28 한국전자통신연구원 겹선형 사상을 이용한 다자간 키 공유 방법 및 그 시스템
EP3343830B1 (en) * 2015-10-08 2019-07-17 Mitsubishi Electric Corporation Encryption system, homomorphic signature method, and homomorphic signature program
CN106503994B (zh) * 2016-11-02 2020-07-28 西安电子科技大学 基于属性加密的区块链隐私数据访问控制方法
CN108418783B (zh) * 2017-09-01 2021-03-19 矩阵元技术(深圳)有限公司 一种保护区块链智能合约隐私的方法、介质
CN109040057B (zh) * 2018-07-26 2020-12-01 百色学院 一种基于区块链的多密钥分级保护隐私系统及方法
CN109120398B (zh) * 2018-08-03 2021-07-27 河南师范大学 一种基于区块链系统的秘密共享方法与装置
CN110098919B (zh) * 2019-04-26 2021-06-25 西安电子科技大学 基于区块链的数据权限的获取方法

Also Published As

Publication number Publication date
CN110740033A (zh) 2020-01-31

Similar Documents

Publication Publication Date Title
CN110740033B (zh) 一种基于秘密共享技术的区块链多方数据共享方法
CN113037460B (zh) 基于同态加密和秘密共享的联邦学习隐私保护方法
CN108418686A (zh) 一种多分布式的sm9解密方法与介质及密钥生成方法
CN108667625B (zh) 协同sm2的数字签名方法
CN114157427B (zh) 基于sm2数字签名的门限签名方法
CN107707358A (zh) 一种ec‑kcdsa数字签名生成方法及系统
CN107947913A (zh) 一种基于身份的匿名认证方法与系统
CN101431414A (zh) 基于身份的认证群组密钥管理方法
CN111162912B (zh) 一种适用于区块链的验证方法、装置及存储介质
CN111159745B (zh) 一种适用于区块链的验证方法及装置
CN109768863A (zh) 一种基于椭圆曲线的区块链密钥共享和动态更新方法
CN104754570B (zh) 一种基于移动互联网络的密钥分发和重构方法与装置
CN113886856A (zh) 基于区块链的双重可验证云存储方法
CN114255034A (zh) 一种基于区块链的可验证公平性的电子投票方法
CN112152813B (zh) 一种支持隐私保护的无证书内容提取签密方法
CN111030821B (zh) 一种基于双线性映射技术的联盟链的加密方法
CN107888380A (zh) 一种两方分布式基于身份的rsa数字签名生成方法与系统
CN114666032A (zh) 基于同态加密的区块链交易数据隐私保护方法
CN114124346B (zh) 一种利用区块链背书机制实现ElGamal多重解密的方法
CN111737748B (zh) 一种应用于区块链的数据解密方法、装置及存储介质
CN113343261A (zh) 一种基于门限审计的交易隐私保护协议
CN112019335A (zh) 一种基于sm2算法的多方协同加解密方法及装置、系统、介质
CN113055392B (zh) 一种基于区块链的统一身份认证方法
CN115378640B (zh) 一种基于联盟链的跨链数据安全共享方法
KR102546762B1 (ko) 블룸 필터를 이용한 블록체인에서의 다중 서명 지갑 시스템

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
GR01 Patent grant
GR01 Patent grant