CN109861822A - 一种区块链系统中可控消息交易加密的方法 - Google Patents
一种区块链系统中可控消息交易加密的方法 Download PDFInfo
- Publication number
- CN109861822A CN109861822A CN201811440509.2A CN201811440509A CN109861822A CN 109861822 A CN109861822 A CN 109861822A CN 201811440509 A CN201811440509 A CN 201811440509A CN 109861822 A CN109861822 A CN 109861822A
- Authority
- CN
- China
- Prior art keywords
- transaction
- message
- key
- catenary system
- block catenary
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种区块链系统中可控消息交易加密的方法,针对于现有区块链系统中存在的加密保护控制需求,主要解决的技术问题如下:(1)区块链系统中交易发送方无法获知接收方是否已对消息进行了读取;(2)区块链系统中的交易发送方无法对已发送的交易内容进行控制,例如取消接收方的阅读权限。本发明的积极效果是:发送方在区块链系统中发送交易时,可以通过接收方的签名公钥和选取的变量生成消息交易密钥,对交易数据进行加密;接收方可以根据自己的签名私钥,并在区块链共识节点的配合下完成消息交易密钥的恢复,对交易数据进行解密;发送方可以通过查链确认接收方是否已经获得了消息交易;发送方可取消接收方对于消息交易的读取权利。
Description
技术领域
本发明涉及一种区块链系统中可控消息交易加密的方法。
背景技术
目前大部分区块链系统中交易内容以明文形式存储在账簿中,例如比特币、以太坊等,发送用户无法知道接收用户是否已读取了交易,更无法对消息内容进行控制。还有一小部分对交易内容进行了部分隐藏,例如零币系统、门罗币系统,但使用较为复杂,效率较低。
发明内容
为了克服现有技术的上述缺点,本发明提供了一种区块链系统中可控消息交易加密的方法,针对于现有区块链系统中存在的加密保护控制需求,主要解决的技术问题如下:
(1)区块链系统中交易发送方无法获知接收方是否已对消息进行了读取;
(2)区块链系统中的交易发送方无法对已发送的交易内容进行控制,例如取消接收方的阅读权限。
本发明解决其技术问题所采用的技术方案是:一种区块链系统中可控消息交易加密的方法,包括如下内容:
一、系统根据SM2公钥算法产生系统公共的椭圆曲线E,基点G=(x,y),模数n;
二、为区块链节点分配公私钥对为(Pi,si);
三、发送方A发送消息交易时,对消息msg进行加密得到Emsg,并打包得到str,然后使用A的签名私钥SA对str进行签名得到Sig,然后发送交易(str,Sig,PB,z),其中:交易对象公钥地址为PB,z为交易状态值;
四、所有区块链节点在收到交易后,验证签名Sig是否正确,如果正确且交易状态为可读时,则进行共识记链;
五、接收方B在获取消息交易时,向区块链系统发起消息获取请求,并对请求使用PB对应的私钥SB进行签名;
六、在经过区块链节点对签名进行验证后,如果交易状态值为可读,则B在区块链共识节点的配合下完成消息交易密钥的恢复,对Emsg进行解密,得到消息msg。
与现有技术相比,本发明的积极效果是:
(1)发送方在区块链系统中发送交易时,可以通过接收方的签名公钥和选取的变量生成消息交易密钥,对交易数据进行加密;
(2)接收方可以根据自己的签名私钥,并在区块链共识节点的配合下完成消息交易密钥的恢复,对交易数据进行解密;
(3)发送方可以通过查链确认接收方是否已经获得了消息交易;
(4)发送方可取消接收方对于消息交易的读取权利。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1为消息交易发送流程图;
图2为消息交易获取流程图。
具体实施方式
本发明使用的公钥签名算法为SM2签名算法(GM/T 0003),使用的加密算法为SM4加密算法(GM/T 0002),使用的哈希算法为SM3哈希算法(GM/T0004)。
本发明的技术方案实施前需要系统根据SM2公钥算法产生系统公共的椭圆曲线E,基点G=(x,y),模数n。
系统相关参数:
(1)区块链网络中的节点为CN1到CNn,网络的共识门限为k/n(即有n个节点,每次共识至少有k个节点同意,便可记链),其中k≤n;
(2)区块链网络中的共识节点产生加密公私钥对(Pi,si),其中Pi公开,1≤i≤n;
(3)用户A向用户B发送消息为msg,用户A的签名公私钥为(PA,SA),PA公开,用户B的签名公私钥为(PB,SB),PB公开;
本发明的技术方案共分为两个阶段:消息安全加密交互记账、消息获取请求。
阶段一:消息交易发送(附图1)
1.1A随机产生r,计算R=[r]G,计算Q1=[r]PB=(Q1x,Q1y);
1.2A随机产生s,计算key=SM3(Q1x||Q1y||s);
1.3A随机选取一个GF(n)上的k-1次多项式f(x),使得f(0)=s;
1.4A随机产生n个互不相同的非零元素xi,其中1≤i≤n;
1.5A计算yi=f(xi),分别用Pi对xi和yi进行加密,生成密文为Exi和Eyi;
1.6A使用SM4算法将key作为密钥加密消息msg为Emsg;
1.7A打包交易为str=(Emsg,Ex1,Ey1,…,Exn,Eyn,R),使用sA对str进行签名为Sig,交易对象公钥地址为PB,发送交易(str,Sig,PB,1)。
注:(str,Sig,PB,1)中的1为交易状态值,在本方法中共有1和2两种状态,1代表可读,2代表不可读。
所有区块链节点在收到交易后,通过验证签名Sig是否正确,发起共识投票,投票通过后,便将(str,Sig,PB)记录到区块链账簿上。
阶段二:消息交易获取(附图2)
2.1B向区块链系统发起消息获取请求,并对请求使用PB对应的私钥sB进行签名;
2.2区块链节点验证签名的正确性,同时查看交易状态值,如果签名正确且交易状态值为1便使用自己的加密私钥si,解密获得交易(str,Sig,PB)中对应的xi和yi,使用PB加密xi和yi附在验证末尾,最终进行共识记链;
2.3区块链节点共识投票,投票通过后,区块链上至少将记录k个使用PB加密的Exi和Eyi;
2.4PB读取区块链上的Exi和Eyi,解密获得相应的xi和yi;
2.5PB计算
2.6PB计算Q2=[sB]R=(Q2x,Q2y),计算key=SM3(Q2x||Q2y||s);
2.7使用SM4算法将key作为密钥解密消息Emsg为msg。
阶段三:消息交易状态更改
3.1用户A向区块链系统发起交易状态更改请求,并使用sA对其进行签名;
3.2区块链节点验证用户签名的正确性,如果正确,则将交易(str,Sig,PB,1)中的交易状态由“1”改为“2”,并共识记链。
Claims (6)
1.一种区块链系统中可控消息交易加密的方法,其特征在于:包括如下内容:
一、系统根据SM2公钥算法产生系统公共的椭圆曲线E,基点G=(x,y),模数n;
二、为区块链节点分配公私钥对为(Pi,si);
三、发送方A发送消息交易时,对消息msg进行加密得到Emsg,并打包得到str,然后使用A的签名私钥SA对str进行签名得到Sig,然后发送交易(str,Sig,PB,z),其中:交易对象公钥地址为PB,z为交易状态值;
四、所有区块链节点在收到交易后,验证签名Sig是否正确,如果正确且交易状态为可读时,则进行共识记链;
五、接收方B在获取消息交易时,向区块链系统发起消息获取请求,并对请求使用PB对应的私钥SB进行签名;
六、在经过区块链节点对签名进行验证后,如果交易状态值为可读,则B在区块链共识节点的配合下完成消息交易密钥的恢复,对Emsg进行解密,得到消息msg。
2.根据权利要求1所述的一种区块链系统中可控消息交易加密的方法,其特征在于:发送方A对消息msg进行加密的方法为:
1)A随机产生r,计算R=[r]G,计算Q1=[r]PB=(Q1x,Q1y),其中PB为接收方B的签名公钥;
2)A随机产生s,计算key=SM3(Q1x||Q1y||s);
3)A随机选取一个GF(n)上的k-1次多项式f(x),使得f(0)=s;
4)A随机产生n个互不相同的非零元素xi,其中1≤i≤n;
5)A计算yi=f(xi),分别用Pi对xi和yi进行加密,生成密文为Exi和Eyi;
6)A使用SM4算法将key作为密钥对msg进行加密得到Emsg。
3.根据权利要求2所述的一种区块链系统中可控消息交易加密的方法,其特征在于:所述str=(Emsg,Ex1,Ey1,…,Exn,Eyn,R)。
4.根据权利要求3所述的一种区块链系统中可控消息交易加密的方法,其特征在于:区块链节点进行共识记链的流程为:使用自己的加密私钥si,解密获得交易(str,Sig,PB)中对应的xi和yi,使用PB加密xi和yi附在验证末尾,进行共识记链;在共识投票通过后,区块链上至少将记录k个使用PB加密的Exi和Eyi。
5.根据权利要求4所述的一种区块链系统中可控消息交易加密的方法,其特征在于:B对Emsg进行解密的方法为:
1)B读取区块链上的Exi和Eyi,使用sB解密获得相应的xi和yi;
2)B计算
3)B计算Q2=[SB]R=(Q2x,Q2y),计算key=SM3(Q2x||Q2y||s);
4)B使用SM4算法将key作为密钥解密消息Emsg得到msg。
6.根据权利要求1所述的一种区块链系统中可控消息交易加密的方法,其特征在于:发送方A对消息交易状态的更改流程为:
1)A向区块链系统发起交易状态更改请求,并使用SA对其进行签名;
2)区块链节点验证用户签名的正确性后,将交易(str,Sig,PB,z)中的交易状态值z由可读修改为不可读,并共识记链。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811440509.2A CN109861822B (zh) | 2018-11-29 | 2018-11-29 | 一种区块链系统中可控消息交易加密的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811440509.2A CN109861822B (zh) | 2018-11-29 | 2018-11-29 | 一种区块链系统中可控消息交易加密的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109861822A true CN109861822A (zh) | 2019-06-07 |
CN109861822B CN109861822B (zh) | 2021-09-10 |
Family
ID=66890385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811440509.2A Active CN109861822B (zh) | 2018-11-29 | 2018-11-29 | 一种区块链系统中可控消息交易加密的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109861822B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110493178A (zh) * | 2019-07-03 | 2019-11-22 | 特斯联(北京)科技有限公司 | 一种大数据加密共享方法及系统 |
CN111818031A (zh) * | 2020-06-30 | 2020-10-23 | 郑州信大先进技术研究院 | 基于区块链的隐蔽通信消息安全编码方法、系统和介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170091756A1 (en) * | 2015-07-14 | 2017-03-30 | Fmr Llc | Point-to-Point Transaction Guidance Apparatuses, Methods and Systems |
CN106934619A (zh) * | 2017-03-13 | 2017-07-07 | 杭州复杂美科技有限公司 | 一种交易记录的方法及系统 |
US20180183768A1 (en) * | 2016-04-01 | 2018-06-28 | Jpmorgan Chase Bank, N.A. | Systems and methods for privacy in distributed ledger transactions |
CN108335425A (zh) * | 2018-02-01 | 2018-07-27 | 深圳市轱辘车联数据技术有限公司 | 一种基于区块链的车辆信息处理方法及服务器 |
CN108696518A (zh) * | 2018-05-09 | 2018-10-23 | 深圳壹账通智能科技有限公司 | 区块链上用户通信加密方法、装置、终端设备及存储介质 |
CN108694668A (zh) * | 2018-06-15 | 2018-10-23 | 腾讯科技(深圳)有限公司 | 数字资产交易方法、装置、介质以及设备 |
CN108768607A (zh) * | 2018-05-14 | 2018-11-06 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 一种基于区块链的投票方法、装置、设备及介质 |
-
2018
- 2018-11-29 CN CN201811440509.2A patent/CN109861822B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170091756A1 (en) * | 2015-07-14 | 2017-03-30 | Fmr Llc | Point-to-Point Transaction Guidance Apparatuses, Methods and Systems |
US20180183768A1 (en) * | 2016-04-01 | 2018-06-28 | Jpmorgan Chase Bank, N.A. | Systems and methods for privacy in distributed ledger transactions |
CN106934619A (zh) * | 2017-03-13 | 2017-07-07 | 杭州复杂美科技有限公司 | 一种交易记录的方法及系统 |
CN108335425A (zh) * | 2018-02-01 | 2018-07-27 | 深圳市轱辘车联数据技术有限公司 | 一种基于区块链的车辆信息处理方法及服务器 |
CN108696518A (zh) * | 2018-05-09 | 2018-10-23 | 深圳壹账通智能科技有限公司 | 区块链上用户通信加密方法、装置、终端设备及存储介质 |
CN108768607A (zh) * | 2018-05-14 | 2018-11-06 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 一种基于区块链的投票方法、装置、设备及介质 |
CN108694668A (zh) * | 2018-06-15 | 2018-10-23 | 腾讯科技(深圳)有限公司 | 数字资产交易方法、装置、介质以及设备 |
Non-Patent Citations (1)
Title |
---|
韩爽等: "区块链技术在数字资产安全交易中的应用", 《计算机系统应用》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110493178A (zh) * | 2019-07-03 | 2019-11-22 | 特斯联(北京)科技有限公司 | 一种大数据加密共享方法及系统 |
CN111818031A (zh) * | 2020-06-30 | 2020-10-23 | 郑州信大先进技术研究院 | 基于区块链的隐蔽通信消息安全编码方法、系统和介质 |
CN111818031B (zh) * | 2020-06-30 | 2022-06-24 | 郑州信大先进技术研究院 | 基于区块链的隐蔽通信消息安全编码方法、系统和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109861822B (zh) | 2021-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3349393B1 (en) | Mutual authentication of confidential communication | |
CN114730420A (zh) | 用于生成签名的系统和方法 | |
CN102098157B (zh) | 一种基于无证书公共密钥基础结构用于加强客户/服务器通讯协议安全性的系统和方法 | |
CN107392603B (zh) | 使用数字货币的交易方法和装置 | |
US11223486B2 (en) | Digital signature method, device, and system | |
CN105162599B (zh) | 一种数据传输系统及其传输方法 | |
US20180324176A1 (en) | Generation of shared secrets using pairwise implicit certificates | |
US9705683B2 (en) | Verifiable implicit certificates | |
CN111769938B (zh) | 一种区块链传感器的密钥管理系统、数据验证系统 | |
US8806206B2 (en) | Cooperation method and system of hardware secure units, and application device | |
EP2707991A1 (en) | Use of non-interactive identity based key agreement derived secret keys with authenticated encryption | |
CN110336673B (zh) | 一种基于隐私保护的区块链设计方法 | |
CN109670826A (zh) | 基于非对称密钥池的抗量子计算区块链交易方法 | |
CN105391554A (zh) | 一种采用密文实现指纹匹配的方法和系统 | |
CN110597836A (zh) | 基于区块链网络的信息查询请求响应方法及装置 | |
CN104243493A (zh) | 一种网络身份认证方法及系统 | |
KR20220017621A (ko) | 타원곡선암호 기반의 일회용 키와 루트 시그니처를 이용한 블록체인 통신 시스템 및 방법 | |
CN114448641A (zh) | 一种隐私加密方法、电子设备、存储介质以及芯片 | |
CN109861822A (zh) | 一种区块链系统中可控消息交易加密的方法 | |
CN107147494A (zh) | 一种基于链式相控加密操作的量子双重签名的方法 | |
CN110572257B (zh) | 基于身份的数据来源鉴别方法和系统 | |
CN108768958B (zh) | 基于第三方不泄露被验信息的数据完整性和来源的验证方法 | |
CN109102294A (zh) | 信息传输方法和装置 | |
CN109670827A (zh) | 基于对称密钥池的抗量子计算区块链交易方法 | |
JP2513169B2 (ja) | 利用者認証方法 |
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 |