CN110336673A - 一种基于隐私保护的区块链设计方法 - Google Patents
一种基于隐私保护的区块链设计方法 Download PDFInfo
- Publication number
- CN110336673A CN110336673A CN201910475375.6A CN201910475375A CN110336673A CN 110336673 A CN110336673 A CN 110336673A CN 201910475375 A CN201910475375 A CN 201910475375A CN 110336673 A CN110336673 A CN 110336673A
- Authority
- CN
- China
- Prior art keywords
- node
- signature
- catenary system
- elliptic curve
- public key
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
- H04L9/3252—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于隐私保护的区块链设计方法。具体步骤是:区块链***中的节点Ri利用自己的私钥ki对信息mi的Hash函数值签名,同时将信息mi分成l份,分别用l个不同节点的公钥进行加密,并将l个密文分别发送给l个节点;***中的其他节点利用节点Ri的公钥Ki对Ri身份和mi的Hash值进行验证;当仲裁机构需要对mi进行验证时,由选中的l个节点利用各自的私钥分别解密各自收到的密文,并将得到的明文发给仲裁机构,仲裁机构汇总后利用Hash函数验证签名信息mi。与现有技术相比,本发明中在利用椭圆曲线签名算法保证节点不可伪造、不可抵赖交易的同时,利用椭圆曲线加解密算法和Hash函数保证节点的交易信息不被其他节点获得,从而保护其隐私。
Description
技术领域
本发明属于信息安全技术领域,涉及密码学和区块链交叉技术,更具体是涉及一种用于区块链***中的节点信息隐私保护方法。
背景技术
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式,它本质上是一个去中心化的数据库。作为比特币的底层技术,区块链是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链***中交易记录由分布在不同地方的多个节点共同完成,而且每一个节点都记录的是完整的账目,因此它们都可以参与监督交易合法性,同时也可以共同为其作证。这样可以避免单一节点被控制或者被贿赂而记假账的可能性。也由于记账节点足够多,理论上讲除非所有的节点被破坏,否则账目就不会丢失,从而保证了账目数据的安全性。
在通常的区块链***中难以实现对节点交易信息的隐私保护,因为所有交易需要对所有节点公开,以避免记假账的情况。针对这一问题,本发明设计一种基于隐私保护的区块链设计方法,在利用椭圆曲线签名算法保证节点不可伪造、不可抵赖交易的同时,利用椭圆曲线加解密算法和Hash函数保证节点的交易信息不被其他节点获得,从而保护其隐私信息。
发明内容
本发明的目的是针对现有技术存在的缺陷,提出一种具有隐私保护功能的区块链设计方法。
为达到上述目的,本发明采用如下技术方案予以实现。
一种基于隐私保护的区块链设计方法,包括如下步骤:
1、首先由区块链***确定椭圆曲线E的方程为y2=x3+ax+b,椭圆曲线基点G,椭圆曲线阶数为n,并将这些参数告知区块链***中的各节点;
2、区块链***中的各节点确定自己的私钥ki,计算出公钥Ki=kiG,并将公钥Ki告知区块链***中的其他节点;
3、节点Ri利用私钥ki对信息mi的Hash函数值ei签名,其中ei=h(mi),h(.)为Hash函数运算;
4、Ri将mi随机分成l份,得到mi1,mi2,……,mil,mi1+mi2+……+mil=mi,Ri从区块链***中随机选取l个节点R1,R2,……,Rl,分别用每个节点的公钥K1,K2,……,Kl对mi1,mi2,……,mil加密,得到密文(C11,C21),(C12,C22),……,(C1l,C2l);Ri将签名发送给区块链***中的各节点,将密文(C11,C21),(C12,C22),……,(C1l,C2l)分别发送给节点R1,R2,……,Rl;
5、区块链***中的其他节点利用Ri的公钥Ki和签名(t,si,ei)验证节点Ri的身份和签名信息的Hash函数值ei,验证成功则各节点记录相应信息,验证不成功则不记录相应信息;
6、在验证成功的情况下,当仲裁机构A需要验证签名信息mi时,则由节点R1,R2,……,Rl首先分别用自己的私钥k1,k2,……,kl对密文(C11,C21),(C12,C22),……,(C1l,C2l)解密,再分别将得到的明文mi1,mi2,……,mil发送给A,A验证h(mi1+mi2+……+mil)=ei是否成立,成立则mi验证成功。
进一步优选的,步骤3中所述签名的具体内容和方法如下:
Ri选取一个随机数计算riG=(xi,yi),t=ximodn,如果t=0,则重新选取ri,计算ri -1modn,si=ri -1[h(ei)+kit]modn,得到(t,si,ei)即为Ri的签名。
进一步优选的,步骤4中所述加密的具体内容和方法如下:
Ri要对发送点Rj的明文mij时,首先选取一个随机数并将待传输的明文mij编码到椭圆曲线E上一点Mij,再按照如下公式采用椭圆曲线算法进行加密计算:
C1j=qjG
C2j=qjKj+Mij
得到密文(C1j,C2j),其中Kj为节点Rj的公钥。
进一步优选的,步骤5中所述签名验证的具体内容和方法如下:
计算w=si -1modn,u1=h(ei)wmodn,u2=twmodn,u1G+u2Ki=(x0,y0),v=x0modn,如果v=t则签名有效,验证成功,否则签名无效,验证不成功。
进一步优选的,步骤6中所述解密的具体内容和方法中,节点Rj利用自己的私钥kj按照如下公式采用椭圆曲线算法进行解密计算:
Cj=kjC1j=kj(qjG)=qjKj
C2j-Cj=qjKj+Mij-qiKj=Mij
再反编码得到明文mij。
本发明中各节点在验证某个节点Ri的身份和签名信息时,并不是直接对签名信息mi进行验证,而是验证其Hash函数值ei,各节点不能获得mi值。这样即满足了区块链***中身份验证和防伪的需求,又保证了节点签名信息的隐私性。区块链***中被Ri随机选出的l个节点分别可以解密出mi的部分信息,当有仲裁机构需要验证签名信息mi时,所述l个节点将各自解密出的部分信息发送给仲裁结构汇总验证。这样在保护Ri签名信息隐私性的同时,进一步保证了其不可伪造和抵赖。
附图说明
图1为本发明的基于隐私保护的区块链设计方法流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。
如图1所示,为本发明的一种基于隐私保护的区块链设计方法,具体内容和步骤如下:
(1)首先由区块链***确定椭圆曲线E的方程为y2=x3+ax+b,椭圆曲线基点G,椭圆曲线阶数为n,并将这些参数告知区块链***中的各节点;
(2)区块链***中的各节点确定自己的私钥ki,计算出公钥Ki=kiG,并将公钥Ki告知区块链***中的其他节点;
(3)当节点Ri需要对信息mi进行签名时,Ri选取一个随机数计算riG=(xi,yi),t=ximodn,如果t=0,则重新选取ri,计算ri -1modn,计算si=ri -1[h(ei)+kit]modn,其中ei=h(mi),h(.)为Hash函数运算,(t,si,ei)即为Ri的签名;
(4)Ri将mi随机分成l份,得到mi1,mi2,……,mil,mi1+mi2+……+mil=mi,Ri从区块链***中随机选取l个节点R1,R2,……,Rl,分别用每个节点的公钥K1,K2,……,Kl对mi1,mi2,……,mil加密;
加密时Ri首先选取一个随机数并将待传输的明文mij编码到椭圆曲线E上一点Mij,再按照如下公式采用椭圆曲线算法进行加密计算:
C1j=qjG
C2j=qjKj+Mij
得到密文(C1j,C2j),其中Kj为节点Rj的公钥,再进一步得到所有密文(C11,C21),(C12,C22),……,(C1l,C2l);
(5)Ri将签名发送给区块链***中的各节点,将密文(C11,C21),(C12,C22),……,(C1l,C2l)分别发送给节点R1,R2,……,Rl;
(6)区块链***中的其他节点利用Ri的公钥Ki和签名(t,si,ei)验证节点Ri的身份和签名信息的Hash函数值ei,计算w=si -1modn,u1=h(ei)wmodn,u2=twmodn,u1G+u2Ki=(x0,y0),v=x0modn,如果v=t则签名有效,验证成功,各节点记录相应信息,签名无效则验证不成功,不记录相应信息;
(7)在验证成功的情况下当仲裁机构A需要验证签名信息mi时,则由节点R1,R2,……,Rl首先分别用自己的私钥k1,k2,……,kl对密文(C11,C21),(C12,C22),……,(C1l,C2l)解密;
解密时节点Rj利用自己的私钥kj按照如下公式采用椭圆曲线算法进行解密计算:
Cj=kjC1j=kj(qjG)=qjKj
C2j-Cj=qjKj+Mij-qiKj=Mij
再反编码得到明文mij;
节点R1,R2,……,Rl再分别将得到的明文mi1,mi2,……,mil发送给A;
(8)A验证h(mi1+mi2+……+mil)=ei是否成立,成立则mi验证成功。
以上所述,仅为本发明较佳的具体实施方式。当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,任何熟悉本技术领域的技术人员,当可根据本发明作出各种相应的等效改变和变形,都应属于本发明所附的权利要求的保护范围。
Claims (5)
1.一种基于隐私保护的区块链设计方法,用于实现基于椭圆曲线密码机制和Hash函数,其特征在于,包含以下步骤:
(1)由区块链***确定椭圆曲线E的方程为y2=x3+ax+b,椭圆曲线基点G,椭圆曲线阶数为n,并将这些参数告知区块链***中的各节点;
(2)区块链***中的各节点确定自己的私钥ki,计算出公钥Ki=kiG,并将公钥Ki告知区块链***中的其他节点;
(3)节点Ri利用私钥ki对信息mi的Hash函数值ei签名,其中ei=h(mi),h(.)为Hash函数运算;
(4)Ri将mi随机分成l份,得到mi1,mi2,……,mil,mi1+mi2+……+mil=mi,Ri从区块链***中随机选取l个节点R1,R2,……,Rl,分别用每个节点的公钥K1,K2,……,Kl对mi1,mi2,……,mil加密,得到密文(C11,C21),(C12,C22),……,(C1l,C2l);Ri将签名发送给区块链***中的各节点,将密文(C11,C21),(C12,C22),……,(C1l,C2l)分别发送给节点R1,R2,……,Rl;
(5)区块链***中的其他节点利用Ri的公钥Ki和签名(t,si,ei)验证节点Ri的身份和签名信息的Hash函数值ei,验证成功则各节点记录相应信息,验证不成功则不记录相应信息;
(6)在验证成功的情况下,当仲裁机构A需要验证签名信息mi时,则由节点R1,R2,……,Rl首先分别用自己的私钥k1,k2,……,kl对密文(C11,C21),(C12,C22),……,(C1l,C2l)解密,再分别将得到的明文mi1,mi2,……,mil发送给A,A验证h(mi1+mi2+……+mil)=ei是否成立,成立则mi验证成功。
2.根据权利要求1所述的一种基于隐私保护的区块链设计方法,其特征在于,步骤(3)中所述签名的内容和方法如下:
Ri选取一个随机数计算riG=(xi,yi),t=ximodn,当t=0,则重新选取ri,计算ri -1modn,si=ri -1[h(ei)+kit]modn,得到(t,si,ei)即为Ri的签名。
3.根据权利要求1所述的一种基于隐私保护的区块链设计方法,其特征在于,步骤(4)中所述加密的内容和方法如下:
Ri要对发送点Rj的明文mij时,先选取一个随机数并将待传输的明文mij编码到椭圆曲线E上一点Mij,再按照如下公式采用椭圆曲线算法进行加密计算:
C1j=qjG
C2j=qjKj+Mij
得到密文(C1j,C2j),其中Kj为节点Rj的公钥。
4.根据权利要求1所述的一种基于隐私保护的区块链设计方法,其特征在于步骤(5)中所述签名验证的内容和方法如下:
计算w=si -1modn,u1=h(ei)wmodn,u2=twmodn,u1G+u2Ki=(x0,y0),v=x0modn,当v=t则签名有效,验证成功,否则签名无效,验证不成功。
5.根据权利要求1所述的一种基于隐私保护的区块链设计方法,其特征在于步骤(6)中所述解密的内容和方法中,节点Rj利用自己的私钥kj按照如下公式采用椭圆曲线算法进行解密计算:
Cj=kjC1j=kj(qjG)=qjKj
C2j-Cj=qjKj+Mij-qiKj=Mij
再反编码得到明文mij。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910475375.6A CN110336673B (zh) | 2019-06-03 | 2019-06-03 | 一种基于隐私保护的区块链设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910475375.6A CN110336673B (zh) | 2019-06-03 | 2019-06-03 | 一种基于隐私保护的区块链设计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110336673A true CN110336673A (zh) | 2019-10-15 |
CN110336673B CN110336673B (zh) | 2022-03-08 |
Family
ID=68140581
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910475375.6A Active CN110336673B (zh) | 2019-06-03 | 2019-06-03 | 一种基于隐私保护的区块链设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110336673B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110535916A (zh) * | 2019-08-09 | 2019-12-03 | 江苏科技大学 | 一种基于区块链的供应保障管理方法 |
CN111080296A (zh) * | 2019-12-05 | 2020-04-28 | 深圳前海微众银行股份有限公司 | 一种基于区块链***的验证方法及装置 |
CN111738726A (zh) * | 2020-08-04 | 2020-10-02 | 卓尔智联(武汉)研究院有限公司 | 基于区块链的资源核验方法、装置和计算机设备 |
CN112560103A (zh) * | 2020-12-30 | 2021-03-26 | 北京数盾信息科技有限公司 | 一种基于国密的区块链节点密码机 |
WO2022068362A1 (zh) * | 2020-09-29 | 2022-04-07 | 深圳壹账通智能科技有限公司 | 一种基于区块链的信息处理方法、装置、设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6219423B1 (en) * | 1995-12-29 | 2001-04-17 | Intel Corporation | System and method for digitally signing a digital agreement between remotely located nodes |
CN107301521A (zh) * | 2017-06-26 | 2017-10-27 | 深圳前海华深安信物联技术有限公司 | 一种基于区块链的仓单***中加强仓单交易安全性的方法 |
CN109493053A (zh) * | 2018-11-22 | 2019-03-19 | 质数链网科技成都有限公司 | 一种用于联盟区块链***的匿名交易方法 |
CN109587132A (zh) * | 2018-11-29 | 2019-04-05 | 苏宁易购集团股份有限公司 | 一种基于联盟链的数据传递方法及装置 |
CN110603783A (zh) * | 2017-05-05 | 2019-12-20 | 区块链控股有限公司 | 采用可信硬件的安全动态阈值签名方案 |
-
2019
- 2019-06-03 CN CN201910475375.6A patent/CN110336673B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6219423B1 (en) * | 1995-12-29 | 2001-04-17 | Intel Corporation | System and method for digitally signing a digital agreement between remotely located nodes |
CN110603783A (zh) * | 2017-05-05 | 2019-12-20 | 区块链控股有限公司 | 采用可信硬件的安全动态阈值签名方案 |
CN107301521A (zh) * | 2017-06-26 | 2017-10-27 | 深圳前海华深安信物联技术有限公司 | 一种基于区块链的仓单***中加强仓单交易安全性的方法 |
CN109493053A (zh) * | 2018-11-22 | 2019-03-19 | 质数链网科技成都有限公司 | 一种用于联盟区块链***的匿名交易方法 |
CN109587132A (zh) * | 2018-11-29 | 2019-04-05 | 苏宁易购集团股份有限公司 | 一种基于联盟链的数据传递方法及装置 |
Non-Patent Citations (1)
Title |
---|
QIAO KANG.ET: "Blockchain Privacy Protection Scheme Based on Aggregate Signature", 《 2019 IEEE 4TH INTERNATIONAL CONFERENCE ON CLOUD COMPUTING AND BIG DATA ANALYSIS (ICCCBDA)》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110535916A (zh) * | 2019-08-09 | 2019-12-03 | 江苏科技大学 | 一种基于区块链的供应保障管理方法 |
CN110535916B (zh) * | 2019-08-09 | 2022-04-15 | 江苏科技大学 | 一种基于区块链的供应保障管理方法 |
CN111080296A (zh) * | 2019-12-05 | 2020-04-28 | 深圳前海微众银行股份有限公司 | 一种基于区块链***的验证方法及装置 |
CN111080296B (zh) * | 2019-12-05 | 2023-12-01 | 深圳前海微众银行股份有限公司 | 一种基于区块链***的验证方法及装置 |
CN111738726A (zh) * | 2020-08-04 | 2020-10-02 | 卓尔智联(武汉)研究院有限公司 | 基于区块链的资源核验方法、装置和计算机设备 |
CN111738726B (zh) * | 2020-08-04 | 2020-11-20 | 卓尔智联(武汉)研究院有限公司 | 基于区块链的资源核验方法、装置和计算机设备 |
WO2022068362A1 (zh) * | 2020-09-29 | 2022-04-07 | 深圳壹账通智能科技有限公司 | 一种基于区块链的信息处理方法、装置、设备及介质 |
CN112560103A (zh) * | 2020-12-30 | 2021-03-26 | 北京数盾信息科技有限公司 | 一种基于国密的区块链节点密码机 |
Also Published As
Publication number | Publication date |
---|---|
CN110336673B (zh) | 2022-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110336673A (zh) | 一种基于隐私保护的区块链设计方法 | |
AU2004288540B2 (en) | Portable security transaction protocol | |
US8526606B2 (en) | On-demand secure key generation in a vehicle-to-vehicle communication network | |
CN108768652A (zh) | 一种可抗量子攻击的联盟区块链底层加密方法 | |
CN110060403B (zh) | 基于区块链的一人多票电子投票方法及*** | |
CN1922816B (zh) | 单向认证 | |
US9438589B2 (en) | Binding a digital file to a person's identity using biometrics | |
EP0661845B1 (en) | System and method for message authentication in a non-malleable public-key cryptosystem | |
US20120294442A1 (en) | Joint encryption of data | |
CN109918888B (zh) | 基于公钥池的抗量子证书颁发方法及颁发*** | |
CN110830244B (zh) | 基于身份秘密共享和联盟链的抗量子计算车联网方法及*** | |
CN111163109B (zh) | 区块链去中心式节点防仿冒方法 | |
US11165592B2 (en) | Systems and methods for a butterfly key exchange program | |
Shim | Reconstruction of a secure authentication scheme for vehicular ad hoc networks using a binary authentication tree | |
CN110138548B (zh) | 基于非对称密钥池对和dh协议的量子通信服务站密钥协商方法和*** | |
CN111539718A (zh) | 一种基于侧链的区块链跨链身份认证方法 | |
CN109687977A (zh) | 基于多个密钥池的抗量子计算数字签名方法和抗量子计算数字签名*** | |
CN108712259A (zh) | 基于身份的可代理上传数据的云存储高效审计方法 | |
CN113393225A (zh) | 数字货币加密支付方法及*** | |
CN1697376A (zh) | 用集成电路卡对数据进行认证或加密的方法和*** | |
CA2819211A1 (en) | Data encryption | |
CN110098925B (zh) | 基于非对称密钥池对和随机数的量子通信服务站密钥协商方法和*** | |
CN111339509A (zh) | 一种基于侧链的区块链跨链身份认证方法 | |
CN109784920B (zh) | 一种基于区块链的交易信息审计方法及装置 | |
CN102857487A (zh) | 一种远程招标方法及*** |
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 |