CN109474589B - 基于以太坊的隐私保护传输方法 - Google Patents

基于以太坊的隐私保护传输方法 Download PDF

Info

Publication number
CN109474589B
CN109474589B CN201811306097.3A CN201811306097A CN109474589B CN 109474589 B CN109474589 B CN 109474589B CN 201811306097 A CN201811306097 A CN 201811306097A CN 109474589 B CN109474589 B CN 109474589B
Authority
CN
China
Prior art keywords
message
information
transaction
receiver
message sender
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
CN201811306097.3A
Other languages
English (en)
Other versions
CN109474589A (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.)
Jiangsu University
Original Assignee
Jiangsu University
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 Jiangsu University filed Critical Jiangsu University
Priority to CN201811306097.3A priority Critical patent/CN109474589B/zh
Publication of CN109474589A publication Critical patent/CN109474589A/zh
Application granted granted Critical
Publication of CN109474589B publication Critical patent/CN109474589B/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • 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
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • 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

Abstract

本发明公开一种基于以太坊的隐私保护传输方法,包括系统初始化、消息发送方计算隐匿地址、消息发送方加密信息、消息发送方打包信息并发送交易到网络、消息接收方查找并恢复信息。本发明使用交易来存储和传递消息。在消息传输过程中,消息发送方使用接收方的公钥信息和随机数计算消息地址和消息加密密钥,保证了只有拥有正确的私钥信息的接收方才能定位到该交易并解密恢复信息,从而实现消息传输过程中的隐私保护。

Description

基于以太坊的隐私保护传输方法
技术领域
本发明涉及安全的数据传输技术,尤其是涉及一种基于以太坊的具有隐私保护的隐匿信息传输方法。
背景技术
区块链技术最早是由中本聪在一篇名为“比特币:一种点对点电子现金系统”的论文中提出。比特币系统是一种去中心化的电子现金系统,它解决了在没有中心机构的情况下,总量恒定的数字资产的发行和流通问题。比特币白皮书的问世,也标志着比特币的底层技术,区块链的诞生。
区块链技术是一种分布式的数据库,用于记录点对点网络中的交易。网络中的每一个参与方(也被称为“矿工”)都有一个账本的备份。在区块链网络中,没有中心化的机构,并且没有一个单一的节点可以控制整个网络。区块链是由一系列相互关联的区块构成的长链,每个区块由前一个区块产生,每个区块中有一个或多个交易,由矿工通过共识机制将交易添加到区块并发布到网络中。进一步地,区块链技术采用加密哈希算法,保证了每个区块中的交易都是不可篡改的。
随着区块链技术的发展,区块链越来越受到学术界和工业界的关注,并且涌现出一大批成功的区块链项目,比如以太坊、EOS、门罗币等。区块链技术也已经与多个行业结合,比如区块链与分布式存储技术结合的Storj、IPFS,区块链技术与物流系统结合的区块链溯源技术等。
以太坊是一个开源的区块链技术平台,内置有图灵完备编程语言的区块链,以太坊具有很高的灵活性和适应性,开发者可以在以太坊上创建合约和去中心化应用,并在其中设立他们自由定义的所有权规则、交易方式和状态转换函数。
但是,以太坊区块中的交易都是公开的,任何人,不管是交易参与者,还是外部观察者、攻击者,都可以获取交易的具体信息,包括交易发送方、交易接收方、交易金额,造成用户隐私信息的泄露。
发明内容
发明目的:本发明的目的在于解决现有技术中存在的不足,提供一种基于以太坊的隐私保护传输方法。
技术方案:本发明的一种基于以太坊的隐私保护传输方法,包括消息发送方、消息接收方和以太坊网络三个实体;所述消息发送方加密消息、计算隐匿标签并将消息打包发送到以太坊网络;所述以太坊网络提供系统服务,并负责存储和维护区块;所述消息接收方查找并恢复发送给该实体的信息;具体包括以下步骤:(1)系统初始化:
(1.1)用户Ui输入系统参数G,其中G=(x,-4/5)是椭圆曲线-x2+y2=1+dx2y2的一个基点,d=-121665/121666;
(1.2)用户Ui选取随机数
Figure BDA0001853645720000021
作为私钥对(ai,bi),并计算公钥对(Ai,Bi),其中Ai=aiG,Bi=biG;
(1.3)用户Ui通过交易将公钥对(Ai,Bi)发送到以太坊网络,并用安全的方式存储私钥对(ai,bi)(例如安全地存储到本地文件,防止丢失或者被别人偷取);
(2)消息发送方计算隐匿标签;
(3)消息发送方加密信息;
(4)消息发送方打包交易并发送交易到网络;
(5)消息接收方查找并恢复信息。
进一步的,步骤(2)的详细过程如下:
(2.1)消息发送方μi获取消息接收方μj的公钥对(Aj,Bj),选取随机数
Figure BDA0001853645720000022
并计算隐匿标签ST=Hs(rτAj)G,其中Hs为加密哈希函数Hs:{0,1}*→Fq
(2.2)消息发送方μi计算交易公钥Rτ=rτG,消息加密密钥PKSA=Hs(rτAj)G+Bj
进一步的,所述步骤(3)中消息发送方μi使用对称加密算法计算
Figure BDA0001853645720000023
其中,msg为明文信息,c1为加密后的信息。
进一步的,所述步骤(4)中消息发送方μi打包交易Rτ||ST||c1并广播到以太坊,然后矿工验证交易,并将交易打包进区块,c1为加密后的信息,Rτ=rτG,
Figure BDA0001853645720000031
进一步的,所述步骤(5)的详细过程如下:
(5.1)消息接收方μj检查新生成区块中的每一个交易,提取交易的交易公钥Rτ,并使用私钥对(aj,bj)计算ST′=Hs(ajRτ)G,Rτ=rτG,
Figure BDA0001853645720000032
(5.2)消息接收方μj判断ST′=ST是否成立,若等式成立,表明消息接收方μj为授权的接收方;
(5.3)消息接收方μj计算对应的解密密钥SKSA=Hs(ajRτ)+bj并使用SKSA解密信息
Figure BDA0001853645720000033
有益效果:与现有技术相比,本发明具有以下优点:
(1)在消息传递过程中,本发明的消息发送方在以太坊中创建一个隐匿标签,消息接收方为获取该消息,需要扫描每一个新增的交易,并计算相应解密信息。由于椭圆曲线离散对数问题求解的困难性,没有正确的私钥对很难计算出正确的隐匿标签。由此保证了只有正确的接收方才能接收到该信息。
(3)在现有的以太坊中,每一笔交易都是透明可见的,这会造成隐私泄露问题(包括接收方的地址和交易的具体内容)。为解决该问题,本发明使用隐匿标签和对称加密来实现交易的不可追踪性和不可连接性,从而实现对用户隐私的保护。
附图说明
图1是本发明实施例中的系统结构图;
图2是本发明中隐匿信息发送过程示意图;
图3是本发明中隐匿信息查找和接收过程示意图;
图4是实施例中四组实验在不同尝试次数下的时间开销对比示意图。
具体实施方式
下面对本发明技术方案进行详细说明,但是本发明的保护范围不局限于所述实施例。
如图1所示,本发明的一种基于以太坊的隐私保护传输方法,包括三个实体:消息发送方、消息接收方和以太坊网络。
消息发送方是消息的发出者,负责对消息进行加密、计算隐匿标签并将消息打包发送到以太坊网络;以太坊网络提供系统服务,并负责存储和维护区块;消息接收方查找并恢复发送给该实体的信息。
总体来说,本发明中使用区块链交易来存储和传递消息,并进一步地通过隐藏交易来隐藏信息传递。消息发送方使用接收方的公钥信息和随机数计算隐匿标签和加密公钥,对于消息接收方,只有知晓正确的私钥对才能正确的计算出消息存储地址、定位到该信息并计算出消息解密密钥。
本发明具体包括以下过程为:
1)系统初始化:
1.1)用户Ui输入系统参数G,其中G=(x,-4/5)是椭圆曲线-x2+y2=1+dx2y2的一个基点,d=-121665/121666;
1.2)用户Ui选取随机数
Figure BDA0001853645720000041
作为私钥对(ai,bi),并计算公钥对(Ai,Bi),其中Ai=aiG,Bi=biG;
1.3)用户Ui通过交易将公钥对(Ai,Bi)发送到以太坊,并用安全的方式存储私钥对(ai,bi)。
2)消息发送方计算隐匿标签:
2.1)消息发送方μi获取接收方μj的公钥对(Aj,Bj),选取随机数
Figure BDA0001853645720000042
并计算隐匿标签ST=Hs(rτAj)G,其中Hs为加密哈希函数Hs:{0,1}*→Fq
2.2)如图2所示,消息发送方μi计算交易公钥Rτ=rτG,消息加密密钥PKSA=Hs(rτAj)G+Bj
3)消息发送方加密信息:消息发送方μi使用对称加密算法计算
Figure BDA0001853645720000043
其中,msg为明文信息,c1为加密后的信息。
4)消息发送方打包交易并发送交易到网络:消息发送方μi如图2所示打包交易Rτ||ST||c1并广播到以太坊。矿工验证交易,并将交易打包进区块。
5)接收方查找和恢复交易:
5.1)消息接收方μj检查每一个交易,提取交易的交易公钥Rτ,并使用私钥对(aj,bj)计算ST′=Hs(ajRτ)G;
5.2)如图3所示,接收方μj判断ST′=ST是否成立,若等式成立,表明消息接收方μj为授权的接收方;
5.3)消息接收方μj计算对应的解密密钥SKSA=Hs(ajRτ)+bj并使用SKSA解密信息
Figure BDA0001853645720000051
实施例
为评估本发明的性能表现,本实施例在本地部署以太坊测试网络(Ganache),并在测试网络中执行本发明的隐私保护传输方法。在Ganache中,区块链出块时间设为0。因此在评估系统性能表现时,无需考虑以太坊中复杂网络的影响和挖矿耗时。在本实施例中,数据发送方/接收方程序运行在配置为AMD Althlon M320(2.1GHz)处理器,4GB RAM,Manjaro操作系统,802.11bgn无线网卡的电脑中。Ganache网络运行在配置为4核心AMD A10-5800k(3.8GHz)处理器,8GB RAM,Windows 10操作系统,Gigabit以太网络适配器的电脑。
在本实施例中,采取160位ECC算法来实施信息隐匿过程,并对该过程中时间开销进行测量。其中,传输信息长度为80字节。
实施例性能评估:图4为该实施例中四组实验在不同尝试次数下的时间开销,对应的gas开销为63850。
通过上述实施例可以看出,本发明提供一种基于以太坊的交易隐藏策略,并使用交易来存储和传递消息。在消息传输过程中,消息发送方使用接收方的公钥信息和随机数计算消息地址和消息加密密钥,保证只有拥有正确的私钥信息的接收方才能定位到该交易并解密恢复信息,从而实现消息传输过程中的隐私保护。

Claims (1)

1.一种基于以太坊的隐私保护传输方法,其特征在于:包括消息发送方、消息接收方和以太坊网络三个实体;所述消息发送方负责加密消息、计算隐匿标签并将消息打包发送到以太坊网络;所述以太坊网络提供系统服务,并负责存储和维护区块;所述消息接收方查找并恢复发送给消息接收方的信息;具体包括以下步骤:
(1)系统初始化:
(1.1)用户Ui输入系统参数G,其中G=(x,-4/5)是椭圆曲线-x2+y2=1+dx2y2的一个基点,d=-121665/121666;
(1.2)用户Ui选取随机数
Figure FDA0002452862500000011
作为私钥对(ai,bi),并计算用户Ui的公钥对(Ai,Bi),其中Ai=aiG,Bi=biG;
(1.3)用户Ui通过交易将公钥对(Ai,Bi)发送到以太坊网络,并用安全的方式存储用户Ui的私钥对(ai,bi);
(2)消息发送方计算隐匿标签:
(2.1)消息发送方μi获取消息接收方μj的公钥对(Aj,Bj),选取随机数
Figure FDA0002452862500000012
并计算隐匿标签
Figure FDA0002452862500000013
其中
Figure FDA0002452862500000014
为加密哈希函数
Figure FDA0002452862500000015
(2.2)消息发送方μi计算交易公钥
Figure FDA0002452862500000016
消息加密密钥
Figure FDA0002452862500000017
(3)消息发送方加密信息;消息发送方μi使用对称加密算法计算
Figure FDA0002452862500000018
其中,msg为明文信息,c1为加密后的信息;
(4)消息发送方打包交易并发送到网络;消息发送方μi打包交易
Figure FDA0002452862500000019
并广播到以太坊,然后矿工验证交易,并将交易打包进区块,c1为加密后的信息,
Figure FDA00024528625000000110
(5)消息接收方查找并恢复信息:
(5.1)消息接收方μj检查新生成区块中的每一个交易,提取交易的交易公钥
Figure FDA0002452862500000021
并使用私钥对(aj,bj)计算
Figure FDA0002452862500000022
(5.2)消息接收方μj判断ST′=ST是否成立,若等式成立,表明消息接收方μj为授权的接收方;
(5.3)消息接收方μj计算对应的解密密钥
Figure FDA0002452862500000023
并使用SKSA解密信息
Figure FDA0002452862500000024
CN201811306097.3A 2018-11-05 2018-11-05 基于以太坊的隐私保护传输方法 Active CN109474589B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811306097.3A CN109474589B (zh) 2018-11-05 2018-11-05 基于以太坊的隐私保护传输方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811306097.3A CN109474589B (zh) 2018-11-05 2018-11-05 基于以太坊的隐私保护传输方法

Publications (2)

Publication Number Publication Date
CN109474589A CN109474589A (zh) 2019-03-15
CN109474589B true CN109474589B (zh) 2020-12-01

Family

ID=65666962

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811306097.3A Active CN109474589B (zh) 2018-11-05 2018-11-05 基于以太坊的隐私保护传输方法

Country Status (1)

Country Link
CN (1) CN109474589B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110519059B (zh) * 2019-09-29 2023-05-05 四川师范大学 一种基于双线性映射的区块链双密钥隐匿地址处理方法
CN110675265B (zh) * 2019-09-29 2022-07-08 四川师范大学 无临时密钥泄露的区块链双密钥隐匿地址协议的实现方法
CN111654484B (zh) * 2020-05-26 2022-02-15 扬州大学 基于whisper协议的以太坊隐蔽通信方法
CN113630247A (zh) * 2021-08-14 2021-11-09 永旗(北京)科技有限公司 一种区块链节点间的通信方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106503098A (zh) * 2016-10-14 2017-03-15 中金云金融(北京)大数据科技股份有限公司 内置于Paas服务层的区块链云服务框架系统
CN107040383A (zh) * 2017-04-24 2017-08-11 中山大学 一种基于区块链的盲可验证加密签名方法
WO2017145048A1 (en) * 2016-02-23 2017-08-31 nChain Holdings Limited Cryptographic method and system for secure extraction of data from a blockchain

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2673842C1 (ru) * 2015-03-20 2018-11-30 Ривец Корп. Автоматическая аттестация сохранности устройства с применением цепочки блоков
US20170243193A1 (en) * 2016-02-18 2017-08-24 Skuchain, Inc. Hybrid blockchain
CN106682520A (zh) * 2016-11-17 2017-05-17 精硕科技(北京)股份有限公司 数据交易方法及数据交易系统
GB201705858D0 (en) * 2017-04-11 2017-05-24 Nchain Holdings Ltd Computer-implemented system and method
CN107342858B (zh) * 2017-07-05 2019-09-10 武汉凤链科技有限公司 一种基于可信环境的智能合约保护方法和系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017145048A1 (en) * 2016-02-23 2017-08-31 nChain Holdings Limited Cryptographic method and system for secure extraction of data from a blockchain
CN106503098A (zh) * 2016-10-14 2017-03-15 中金云金融(北京)大数据科技股份有限公司 内置于Paas服务层的区块链云服务框架系统
CN107040383A (zh) * 2017-04-24 2017-08-11 中山大学 一种基于区块链的盲可验证加密签名方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"A Blockchain-Based Framework for Data Sharing With Fine-Grained Access Control in Decentralized Storage Systems";SHANGPING WANG等;《IEEE Access》;20180730;全文 *
"WSN中基于椭圆曲线的可追踪匿名认证方案";常芬等;《计算机研究与发展》;20170915;全文 *

Also Published As

Publication number Publication date
CN109474589A (zh) 2019-03-15

Similar Documents

Publication Publication Date Title
CN109474589B (zh) 基于以太坊的隐私保护传输方法
JP6941183B2 (ja) データのトークン化
US9647845B2 (en) Key downloading method, management method, downloading management method, device and system
CN1871810B (zh) 认证系统和远隔分散保存系统
CN100561916C (zh) 一种更新认证密钥的方法和系统
US20170237553A1 (en) METHOD AND APPARATUS FOR PROVIDING A UNIVERSAL DETERMINISTICALLY REPRODUCIBLE CRYPTOGRAPHIC KEY-PAIR REPRESENTATION FOR ALL SKUs, SHIPPING CARTONS, AND ITEMS
JP5562687B2 (ja) 第1のユーザによって第2のユーザに送信される通信の安全化
CN108780548A (zh) 将椭圆曲线加密用于个人装置安全以共享秘密
CN108809646A (zh) 安全共享密钥共享系统及方法
JP6417036B2 (ja) 事前共有鍵に基づくエンティティ認証方法及び装置
CN103118027A (zh) 基于国密算法建立tls通道的方法
CN101296075B (zh) 一种基于椭圆曲线的身份认证系统
CN103338215A (zh) 基于国密算法建立tls通道的方法
CN110597836B (zh) 基于区块链网络的信息查询请求响应方法及装置
CN111327419B (zh) 基于秘密共享的抗量子计算区块链的方法及系统
CN110061957A (zh) 数据加密、解密方法、用户端、服务器及数据管理系统
CN106161472A (zh) 一种数据加密的方法、装置及系统
US9553729B2 (en) Authentication method between a reader and a radio tag
JP2014175970A (ja) 情報配信システム、情報処理装置及びプログラム
CN101296072A (zh) 一种椭圆曲线上的共享密钥产生方法
CN116830523A (zh) 阈值密钥交换
WO2014030706A1 (ja) 暗号化データベースシステム、クライアント装置およびサーバ、暗号化データ加算方法およびプログラム
CN117220865A (zh) 经纬度加密方法、经纬度校验方法、装置及可读存储介质
CN110557247B (zh) 基于身份的区块链方法和系统
US7424114B2 (en) Method for enhancing security of public key encryption schemas

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