CN108898031A - 一种基于ecc算法的盲签名的区块链设计方法 - Google Patents
一种基于ecc算法的盲签名的区块链设计方法 Download PDFInfo
- Publication number
- CN108898031A CN108898031A CN201810784739.4A CN201810784739A CN108898031A CN 108898031 A CN108898031 A CN 108898031A CN 201810784739 A CN201810784739 A CN 201810784739A CN 108898031 A CN108898031 A CN 108898031A
- Authority
- CN
- China
- Prior art keywords
- signature
- block chain
- node
- proxy signature
- proxy
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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/6245—Protecting personal data, e.g. for financial or medical purposes
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Medical Informatics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供一种基于ECC算法的盲签名的区块链设计方法,属于密码学和区块链的交叉技术领域,本发明在现有区块链部署过程中,利用go语言实现盲签名算法,将原有的签名流程进行改造,将盲签名模块加入到区块链代码中进行部署,完成区块链的盲签名改造。基于盲签名具备数字签名的防伪造、抗抵赖特性,同时可以使消息盲化,不会泄露签名者泄露任何消息内容和信息;签名者也不可能根据参数对所签名的内容进行逆推,能很好的应用于区块链系统中。
Description
技术领域
本发明涉及密码学和区块链的交叉技术,尤其涉及一种基于ECC算法的盲签名的区块链设计方法。
背景技术
区块链是一种由多方共同维护、以块状链结构存储数据,使用密码学来保证传输和访问安全,能够实现一直存储、无法篡改。所有交易均在区块链内广播,节点之间通过共识机制形成共识。节点成员可根据权限查阅相关交易记录,但任何节点都无法轻易控制和更改整个网络的数据。由于其去中心化、防篡改、匿名化等特性,交易信任由机器和算法决定,交易过程由程序自动执行,可有限降低信任和价值传递成本,许多发达国家和科技公司纷纷开始了对区块链的研究,并开始实际应用。
盲签名是为了不向签名者泄露请求签名者的身份信息,消息发送者采用零知识向量证明协议隐藏身份信息。基于盲签名具备数字签名的防伪造、抗抵赖特性,同时可以使消息盲化,不会泄露签名者泄露任何消息内容和信息;签名者也不可能根据参数对所签名的内容进行逆推,能很好的应用于区块链系统中。主流区块链均采用非对称加密算法中,加密效率和安全性比较高的ECC算法,因此需实现基于ECC的盲签名。
区块链环境下,必须要实现身份匿名、不可链接性以及依靠数字签名来保证信息的不可抵赖性等安全要求,提出了基于盲签名的区块链设计方案。
发明内容
为了解决以上技术问题,本发明提出了一种基于ECC算法的盲签名的区块链设计方法。基于ECC算法进行盲化处理,保证相关信息在其他节点的密文处理;同时基于零知识向技术,保证签名的可验证性。
在hyperleger中,交易内容需由背书节点背书后,再交给客户端,最终由客户端将结果发送给共识模块达成共识。在背书过程中,背书节点需要对提交的交易进行签名操作。考虑到一些敏感数据的安全性,使用盲签名方式可以使背书节点在不知道交易的具体内容情况下完成背书的签名操作。针对区块链中上述影响场景,设计盲签名的区块链处理方式显得十分必要。
本发明的技术方案是:
一种基于ECC算法的盲签名的区块链设计方法,
1)在区块链的需要签名的应用场景中,在消息进行签名前,首先对消息进行盲化,盲化基于椭圆曲线离线对数问题,使进行签名的节点无法破解原文;
2)、背书节点或者签名节点利用零知识技术来证明信息的真实值,并且根据发起方传递过来的盲化的原文进行签名;
3)、发起交易的节点或者客户端利用零知识向量对签名节点或者背书节点通过RPC协议传回的签名进行签证;该过程中,信息一直以盲文在区跨链网络中传输,达到保密的要求。
具体实现过程如下:
1、为区块链客户端或者节点利用ECC算法产生公私密钥对,也可从第三方CA机构获取数字证书,数字证书中包含密钥对。使用的公共参数如下:G(x1,y1)作为基点,EP(a,b)为有限群,n为群阶,并且nG=∞,∞为无穷远点。
2、当交易发起者发起数字签名交易时,签名节点会产生随机数i,i∈Fp,并计算出点R1=iG,签名者发送R1给交易发起者
3、发送者对要发送内容进行盲化操作,具体如下:
发送者在Fp随机选择点G′(x1,y1),其中x1为盲因子,然后进行计算:
R=x1 -1R1计算点R的坐标(x0,y0);再计算r=x0modn;m′=x1rm+y1
发送者将盲化信息发送给签名者
4、签名者收到m′后,进行签名后的消息s′=dsm′+i,将s′发送给发起者
5、发起者收到签名s’后,计算出真实签名值S=x1 -1s′G-x1 -1y1Ps,(R,S)为最终签名值,PS为签名者公钥
6、验证签名值:通过式子S=rmPSR进行签名验证,通过计算满足上述条件验证通过
在现有区块链部署过程中,利用go语言实现盲签名算法,将原有的签名流程进行改造,将盲签名模块加入到区块链代码中进行部署,完成区块链的盲签名改造。
区块链是一种由多方共同维护、以块状链结构存储数据,使用密码学来保证传输和访问安全,能够实现一致存储、无法篡改。
由于其去中心化、抗抵赖等特性,可有效降低信任成本和提高价值传递效率,成为计算机相关领域的热点。盲签名是为了不向签名者泄露请求签名者的身份信息,消息发送者采用零知识向量证明协议隐藏身份信息。基于盲签名具备数字签名的防伪造、抗抵赖特性,同时可以使消息盲化,不会泄露签名者泄露任何消息内容和信息;签名者也不可能根据参数对所签名的内容进行逆推,能很好的应用于区块链系统中。
附图说明
图1是盲签名流程图示意图。
具体实施方式
下面对本发明的内容进行更加详细的阐述:
本发明提出了一种基于ECC算法的盲签名的区块链设计方法,主要包括以下几个步骤:
1)利用go语言实现盲签名代码;
2)选择hyperledger代码源码,在源码中进行改造,在背书节点进行数字签名的地方改为采用盲签名方式;
3)重新编译hyperledger源码,进行打包部署;
4)部署完毕上线运行,完成改造。
具体实现过程如下:
1)、为区块链客户端或者节点利用ECC算法产生公私密钥对,也可从第三方CA机构获取数字证书,数字证书中包含密钥对;使用的公共参数如下:G(x1,y1)作为基点,EP(a,b)为有限群,n为群阶,并且nG=∞,∞为无穷远点;
2)、当交易发起者发起数字签名交易时,签名节点会产生随机数i,i∈Fp,并计算出点R1=iG,签名者发送R1给交易发起者;
3)、发送者对要发送内容进行盲化操作,具体如下:
发送者在Fp随机选择点G′(x1,y1),其中x1为盲因子,然后进行计算:
R=x1 -1R1计算点R的坐标(x0,y0);再计算r=x0modn;m′=x1rm+y1发送者将盲化信息发送给签名者;
4)、签名者收到m′后,进行签名后的消息s′=dsm′+i,将s′发送给发起者;
5)、发起者收到签名s’后,计算出真实签名值S=x1 -1s′G-x1 -1y1Ps,(R,S)为最终签名值,PS为签名者公钥;
6、验证签名值:通过式子S=rmPSR进行签名验证,通过计算满足上述条件验证通过。
在区块链中需要其他节点进行背书或者签名的消息,基于ECC算法进行盲化处理,保证相关信息在其他节点的密文处理,增加了区块链的安全性和防止基于签名值的逆向推导。
Claims (4)
1.一种基于ECC算法的盲签名的区块链设计方法,其特征在于,
1)在区块链的需要签名的应用场景中,在消息进行签名前,首先对消息进行盲化,盲化基于椭圆曲线离线对数问题,使进行签名的节点无法破解原文;
2)、背书节点或者签名节点利用零知识技术来证明信息的真实值,并且根据发起方传递过来的盲化的原文进行签名;
3)、发起交易的节点或者客户端利用零知识向量对签名节点或者背书节点通过RPC协议传回的签名进行签证;该过程中,信息一直以盲文在区跨链网络中传输,达到保密的要求。
2.根据权利要求1所述的方法,其特征在于,
在现有区块链部署过程中,利用go语言实现盲签名算法,将原有的签名流程进行改造,将盲签名模块加入到区块链代码中进行部署,完成区块链的盲签名改造。
3.根据权利要求2所述的方法,其特征在于,
主要包括如下步骤:
1)利用go语言实现盲签名代码;
2)选择hyperledger代码源码,在源码中进行改造,在背书节点进行数字签名的地方改为采用盲签名方式;
3)重新编译hyperledger源码,进行打包部署;
4)部署完毕上线运行,完成改造。
4.根据权利要求3所述的方法,其特征在于,
具体实现过程如下:
1)、为区块链客户端或者节点利用ECC算法产生公私密钥对,也可从第三方CA机构获取数字证书,数字证书中包含密钥对;使用的公共参数如下:G(x1,y1)作为基点,EP(a,b)为有限群,n为群阶,并且nG=∞,∞为无穷远点;
2)、当交易发起者发起数字签名交易时,签名节点会产生随机数i,i∈Fp,并计算出点R1=iG,签名者发送R1给交易发起者;
3)、发送者对要发送内容进行盲化操作,具体如下:
发送者在Fp随机选择点G′(x1,y1),其中x1为盲因子,然后进行计算:
R=x1 -1R1计算点R的坐标(x0,y0);再计算r=x0modn;m′=x1rm+y1
发送者将盲化信息发送给签名者;
4)、签名者收到m′后,进行签名后的消息s′=dsm′+i,将s′发送给发起者;
5)、发起者收到签名s’后,计算出真实签名值S=x1 -1s′G-x1 -1y1Ps,(R,S)为最终签名值,PS为签名者公钥;
6)、验证签名值:通过式子S=rmPSR进行签名验证,通过计算满足上述条件验证通过。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810784739.4A CN108898031A (zh) | 2018-07-17 | 2018-07-17 | 一种基于ecc算法的盲签名的区块链设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810784739.4A CN108898031A (zh) | 2018-07-17 | 2018-07-17 | 一种基于ecc算法的盲签名的区块链设计方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108898031A true CN108898031A (zh) | 2018-11-27 |
Family
ID=64349975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810784739.4A Pending CN108898031A (zh) | 2018-07-17 | 2018-07-17 | 一种基于ecc算法的盲签名的区块链设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108898031A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111539729A (zh) * | 2020-05-21 | 2020-08-14 | 北京俩撇科技有限公司 | 一种基于区块链的交易验签方法及装置 |
CN111740833A (zh) * | 2019-04-16 | 2020-10-02 | 北京沃东天骏信息技术有限公司 | 一种区块链网络的签名方法、节点、系统及存储介质 |
CN111784338A (zh) * | 2019-04-10 | 2020-10-16 | 北京沃东天骏信息技术有限公司 | 信息处理方法、装置、系统及存储介质 |
CN112769793A (zh) * | 2020-12-30 | 2021-05-07 | 航天信息股份有限公司 | 区块链设计方法、存储介质及电子设备 |
CN113098684A (zh) * | 2021-03-26 | 2021-07-09 | 国网河南省电力公司电力科学研究院 | 一种面向智能电网的不可追踪盲签名方法和系统 |
CN114333137A (zh) * | 2021-12-16 | 2022-04-12 | 复旦大学 | 基于部分盲签名与区块链的匿名和抗胁迫电子投票系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106296138A (zh) * | 2016-08-09 | 2017-01-04 | 西安电子科技大学 | 基于部分盲签名技术的比特币支付系统及其方法 |
CN107040383A (zh) * | 2017-04-24 | 2017-08-11 | 中山大学 | 一种基于区块链的盲可验证加密签名方法 |
-
2018
- 2018-07-17 CN CN201810784739.4A patent/CN108898031A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106296138A (zh) * | 2016-08-09 | 2017-01-04 | 西安电子科技大学 | 基于部分盲签名技术的比特币支付系统及其方法 |
CN107040383A (zh) * | 2017-04-24 | 2017-08-11 | 中山大学 | 一种基于区块链的盲可验证加密签名方法 |
Non-Patent Citations (1)
Title |
---|
白永祥: "基于ECC和零知识证明的盲签名方案设计与实现", 《通信技术》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111784338A (zh) * | 2019-04-10 | 2020-10-16 | 北京沃东天骏信息技术有限公司 | 信息处理方法、装置、系统及存储介质 |
CN111784338B (zh) * | 2019-04-10 | 2024-10-18 | 北京沃东天骏信息技术有限公司 | 信息处理方法、装置、系统及存储介质 |
CN111740833A (zh) * | 2019-04-16 | 2020-10-02 | 北京沃东天骏信息技术有限公司 | 一种区块链网络的签名方法、节点、系统及存储介质 |
CN111740833B (zh) * | 2019-04-16 | 2023-09-05 | 北京沃东天骏信息技术有限公司 | 一种区块链网络的签名方法、节点、系统及存储介质 |
CN111539729A (zh) * | 2020-05-21 | 2020-08-14 | 北京俩撇科技有限公司 | 一种基于区块链的交易验签方法及装置 |
CN112769793A (zh) * | 2020-12-30 | 2021-05-07 | 航天信息股份有限公司 | 区块链设计方法、存储介质及电子设备 |
CN113098684A (zh) * | 2021-03-26 | 2021-07-09 | 国网河南省电力公司电力科学研究院 | 一种面向智能电网的不可追踪盲签名方法和系统 |
CN114333137A (zh) * | 2021-12-16 | 2022-04-12 | 复旦大学 | 基于部分盲签名与区块链的匿名和抗胁迫电子投票系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108898031A (zh) | 一种基于ecc算法的盲签名的区块链设计方法 | |
US12021987B2 (en) | Methods for secure cryptogram generation | |
US20220058655A1 (en) | Authentication system | |
CN112950367B (zh) | 生成和执行智能合约交易的方法及装置 | |
US9160530B2 (en) | Method and apparatus for verifiable generation of public keys | |
EP2737656B1 (en) | Credential validation | |
CN113569294B (zh) | 一种零知识证明方法及装置、电子设备、存储介质 | |
US8122245B2 (en) | Anonymity revocation | |
RU2019111926A (ru) | Система и способ для защиты информации | |
CN111340494B (zh) | 资产类型一致性证据生成、交易、交易验证方法及系统 | |
US20200295934A1 (en) | Joint blind key escrow | |
CN111211910B (zh) | 基于秘密共享公钥池的抗量子计算ca及证书颁发系统及其颁发和验证方法 | |
JPH0512321A (ja) | 認証方式 | |
US9860069B2 (en) | Group signature using a pseudonym | |
CN109547206A (zh) | 数字证书的处理方法及相关装置 | |
CN112380584B (zh) | 区块链数据更新方法、装置、电子设备和存储介质 | |
CN104012036B (zh) | 组合式数字证书 | |
US9215230B2 (en) | Method for authentication, RF chip document, RF chip reader and computer program products | |
Anikin et al. | Symmetric encryption with key distribution based on neural networks | |
CN111064574A (zh) | 数字证书生成方法、认证方法及电子设备 | |
CN114389810B (zh) | 证明生成方法及装置、电子设备、存储介质 | |
GB2313272A (en) | Digital signature protocol with reduced bandwidth | |
CN109766716A (zh) | 一种基于可信计算的匿名双向认证方法 | |
CN110324149B (zh) | 一种多方共识签名后的证据固定验证方法 | |
CN116662950A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181127 |
|
RJ01 | Rejection of invention patent application after publication |