CN110223064A - 一种基于区块链的不可否认安全数据传输方法 - Google Patents

一种基于区块链的不可否认安全数据传输方法 Download PDF

Info

Publication number
CN110223064A
CN110223064A CN201910448288.1A CN201910448288A CN110223064A CN 110223064 A CN110223064 A CN 110223064A CN 201910448288 A CN201910448288 A CN 201910448288A CN 110223064 A CN110223064 A CN 110223064A
Authority
CN
China
Prior art keywords
recipient
intelligent contract
sender
block chain
ciphertext
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
Application number
CN201910448288.1A
Other languages
English (en)
Other versions
CN110223064B (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.)
Sichuan University
Original Assignee
Sichuan 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 Sichuan University filed Critical Sichuan University
Priority to CN201910448288.1A priority Critical patent/CN110223064B/zh
Publication of CN110223064A publication Critical patent/CN110223064A/zh
Application granted granted Critical
Publication of CN110223064B publication Critical patent/CN110223064B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/3827Use of message hashing
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/18Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
    • 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/32Cryptographic 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/3236Cryptographic 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 using cryptographic hash functions
    • 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/32Cryptographic 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/3247Cryptographic 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Finance (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Power Engineering (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于区块链的不可否认安全数据传输方法,包括步骤:(1)接收方生成临时公私钥对并将公钥及其区块链账户地址发送至发送方;(2)发送方向智能合约上传初始化参数;(3)发送方向智能合约缴纳保证金;(4)接收方向智能合约缴纳保证金;(5)发送方向接收方发送密文和密文哈希值的数字签名;(6)接收方获取密文后向智能合约公开密文哈希值;(7)发送方向智能合约公开使用临时公钥加密密钥所得密文;(8)接收方从区块链获取到第(7)步中的密文,使用临时私钥解密出原始密钥并向智能合约公开密钥哈希值,智能合约返还双方保证金。本发明可用于有效地实现安全数据传输过程中发送方和接收方对传输行为的不可否认性。

Description

一种基于区块链的不可否认安全数据传输方法
技术领域
本发明涉及一种数据传输方法,具体是一种基于区块链的不可否认安全数据传输方法。
背景技术
区块链和智能合约:区块链技术作为一种分布式数字账本技术,借助密码技术,让人们可以在没有中央权威机构监督的情况下,对彼此协作建立起信心,实现在分布式网络里多边交易的去中心化。区块链中所有节点保存有相同的数字账本,账本内容对所有人公开,且数据一旦上链存入账本则不可篡改。目前,全球有数个区块链技术平台,用于研究区块链技术及其应用。支持智能合约的以太坊项目(Ethereum)和超级账本Fabric(Hyperledger Fabric)是其中的代表性平台。智能合约通常由官方支持的特定编程语言编写,代码编译后可部署至区块链实现分布式协作。由于智能合约可以通过特定逻辑,控制其内部函数触发条件而不受任何人管控,因此在研究中常被用于替代可信第三方(TTP)。
不可否认性:不可否认性是数据传输中的一个常见要求,主要分为发送方不可否认性和接收方不可否认性。对于一次特定的两个参与方(发送方和接收方)的数据传输过程,发送方不可否认性表示发送方对于已经将该数据发送至特定接收方这一事实是不可否认的,接收方不可否认性表示接收方对于已从特定发送方接收到该数据这一事实是不可否认的。现有协议或方案的不可否认性多依赖于可信第三方实现,多应用于线上交易过程。例如支付宝(Alipay)本质上就是提供可信第三方的服务,作为卖家和买家之间的中间人,暂存交易钱款,保障双方利益。但目前针对线上P2P数据传输的场景,这样的可信第三方不容易找到。
混合加密数据传输:现有可实现大文件安全传输的方案多使用混合加密系统(Hybrid Cryptosystem)来保证数据在不可信环境中传输时的机密性和完整性。混合加密系统使用对称加密对原始数据进行加密,并使用非对称加密来加密用于对称加密的密钥,进而解决对称加密的密钥难于分发和非对称加密效率较低的问题。
现有的不可否认数据传输方案中,若不引入可信第三方,则数据传输双方需通过数据分片多次传输分别确认、零知识证明、数字签名等来保证双方不可否认性,通常效率较低;若引入可信第三方,则双方可通过可信第三方作为中间人进行交互(如密钥分发,接收确认等),但引入可信第三方会产生额外费用且不易找到符合条件的可信第三方。且上述两种方式均存在需要参与方或可信第三方来保存数据传输的不可否认证据,考虑到业务迁移、存储容量限制或人为的操作失误等,这样的证据不易长期安全保存。
发明内容
本发明所要解决的技术问题是提供一种基于区块链的不可否认安全数据传输方法,基于区块链和智能合约实现,可在保证传输数据的完整性和机密性的同时,实现发送方和接收方对于该数据传输过程的不可否认性。
为解决上述技术问题,本发明采用的技术方案是:
一种基于区块链的不可否认安全数据传输方法,包括以下步骤:
(1)接受方在本地生成一个临时公私钥对(sktem,pktem),并将临时公钥pktem和自己的区块链账户地址AddR通过独立于区块链的普通信道发送至发送方;
(2)数据发送方收到接收方的临时公钥和区块链账户地址后,在本地生成对称加密密钥k和一个随机数L,并使用密钥k加密待发送的文件F得到密文C,另外使用接收方临时公钥pktem对密钥k进行加密得到Ck;然后发送方使用哈希算法计算H(k),H(C)和H(Ck)得到hk,hC和hCk,随后计算H(hk)和H(hC)得到hhk和hhC;所有计算完成后,发送方将hhk,hhC,hCk,L以及参与双方账户区块链账户地址AddS、AddR和接收方临时公钥pktem发送至智能合约初始化一个数据传输实例并进入第(3)步;
(3)初始化交易确认后,发送方向智能合约发送hCk和L,并在交易中附加价值为vS的区块链代币作为保证金来保证其会在后续过程中公开哈希值hCk对应数据;智能合约收到交易后验证交易发起者地址是否为AddS并验证参数hCk和L是否与初始化参数相同,若验证通过则设置一个时限T1并进入第(4)步;
(4)接收方从区块链中获取初始化参数,并在T1规定的时间内将hhk,hhC和L发送至智能合约,同时附加价值为vR的区块链代币作为保证金;接收方向区块链发送此交易表明其接受第(2)步中的初始化参数,同时通过保证金来保证其会在后续过程中向智能合约公开哈希值hhk,hhC对应的原始数据,即密钥和密文的哈希值;智能合约收到交易后验证交易发起者地址是否为AddR并验证参数hhk,hhC和L是否与初始化参数相同,若验证通过则设置另一个时限T2并进入第(5)步;
当存在接收方在时限T1内并未上传合法的参数及保证金至智能合约并通过验证,则接收方被判定为恶意方,流程结束,智能合约将保证金vS返回给发送方;
(5)发送方监听到接收方已将保证金发送至智能合约后,立即使用其私钥对密文哈希值hC进行签名,随后将密文C和数字签名通过独立于区块链的普通信道发送给接收方;
(6)接受方收到密文C及签名后计算密文哈希值H(C)得到hC,随后立即验证签名合法性;若验证通过,接收方在时限T2内发送参数hC和L至智能合约;智能合约收到交易后验证交易发起者地址是否为AddR并判断L值是否与初始化参数相同,然后计算H(hC)并检查其结果是否与参数hhC相同,若所有验证通过则设置另一个时限T3并进入第(7)步;
当存在发送方没有发送密文至接收方或接收方签名验证不通过或接收方收到了密文但不上传密文哈希值,即只要智能合约未能在时限T2内对接收方上传的hC参数验证通过,则智能合约直接返回保证金vS至发送方,vR至接收方,流程结束;
(7)发送方监听到接收方已向智能合约公开密文哈希值后,在时限T3内发送Ck和L至智能合约;智能合约收到交易后首先验证交易发起者地址是否为AddS并验证L值是否与初始化参数相同,然后使用相同哈希算法计算H(Ck)并检查其结果是否与初始化参数hCk相同;若验证通过则设置另一个时限T4并进入第(8)步;
当存在智能合约未能在时限T3内收到发送方上传的合法参数并验证通过,则智能合约判定发送方为恶意方,返回所有的保证金vS+vR至接收方,流程结束;
(8)接收方从区块链中获取到发送方在第(7)步中上传的参数Ck,使用其临时私钥sktem解密得到密钥k'同时计算其哈希值H(k')得到hk',并在时限T4内发送参数hk'和L至智能合约;智能合约收到交易后首先验证交易发起者地址是否为AddR并确认L值是否与初始化参数相同,然后计算H(hk')并检查其结果是否与初始化参数hhk相同并进行如下操作:
若H(hk')=hhk,智能合约同时向发送方返回其保证金vS,向接收方返回其保证金vR,至此全过程正常结束;
当存在智能合约未能在时限T4内收到接收方上传的密钥哈希值和L参数,则智能合约直接判定接收方为恶意方,返回所有的保证金vS+vR至发送方,流程结束。
进一步的,还包括步骤(9):在步骤(8)中,若H(hk')≠hhk,智能合约保存hk',设置另一个时限T5并进入第(9)步,等待接收方申诉;
(9)若接收方在第(8)步中公开接收到的密钥哈希值没有成功兑换回保证金,则接收方可通过在T5规定的时间内将临时私钥sktem和L发送至智能合约进行申诉,收到请求后,首先确认交易发起者地址为AddR并验证参数L是否与初始化参数相同;若验证通过,智能合约使用临时私钥sktem对Ck进行解密得到密钥k”,然后计算H(k”)得到hk”并验证该值与上一步保存的hk'是否相同:
·若hk'=hk”,智能合约判定发送方为恶意方,返回所有的保证金vS+vR至接收方,流程结束;
·若hk'≠hk”,智能合约判定接收方为恶意方,返回所有的保证金vS+vR至发送方,流程结束。
当存在智能合约未能在时限T5内收到接收方上传的临时私钥sktem和L参数,则智能合约判定接收方为恶意方,返回所有的保证金vS+vR至发送方,流程结束。
与现有技术相比,本发明的有益效果是:可用于有效地实现安全数据传输过程中发送方和接收方对传输行为的不可否认性,无须额外第三方参与,且参与方本身无须保存传输行为的不可否认证据,需要追责时只需查询相应区块链记录即可。
附图说明
图1为本发明中发送方和接收方均按方法规定在每一步中进行响应时的流程图;
图2为接收方不按规定在第(4)步中向智能合约发送参数及保证金时的方法流程图;
图3为接收方未在第(6)步中向智能合约公开密文哈希值hC或公开之后未通过智能合约验证时的方法流程图;
图4为发送方不按规定在第(7)步中向智能合约公开密钥非对称加密后的密文Ck时的方法流程图;
图5为接收方不按规定在第(8)步中向智能合约公开密钥哈希值hk时的方法流程图;
图6为发送方在第(2)步中初始化时恶意地上传了不匹配的hhk和hCk值时的方法流程图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细的说明。
先部署智能合约并公开合约地址,需要不可否认地传输数据的参与方可通过该地址调用智能合约中的任意函数。智能合约可应用于多次传输实例,不同的实例使用不同的随机数L标识。考虑存在恶意参与方的情况,一种基于区块链的不可否认安全数据传输方法,包括以下步骤:
(1)接受方在本地生成一个临时公私钥对(sktem,pktem),并将临时公钥pktem和自己的区块链账户地址AddR通过独立于区块链的普通信道发送至发送方。
(2)数据发送方收到接收方的临时公钥和区块链账户地址后,在本地生成对称加密密钥k和一个随机数L,并使用密钥k加密待发送的文件F得到密文C,另外使用接收方临时公钥pktem对密钥k进行加密得到Ck;然后发送方使用哈希算法计算H(k),H(C)和H(Ck)得到hk,hC和hCk,随后计算H(hk)和H(hC)得到hhk和hhC;所有计算完成后,发送方将hhk,hhC,hCk,L以及参与双方账户区块链账户地址AddS、AddR和接收方临时公钥pktem发送至智能合约初始化一个数据传输实例并进入第(3)步。
(3)初始化交易确认后,发送方向智能合约发送hCk和L,并在交易中附加价值为vS的区块链代币作为保证金来保证其会在后续过程中公开哈希值hCk对应数据;智能合约收到交易后验证交易发起者地址是否为AddS并验证参数hCk和L是否与初始化参数相同,若验证通过则设置一个时限T1并进入第(4)步。
(4)接收方从区块链中获取初始化参数,并在T1规定的时间内将hhk,hhC和L发送至智能合约,同时附加价值为vR的区块链代币作为保证金;接收方向区块链发送此交易表明其接受第(2)步中的初始化参数,同时通过保证金来保证其会在后续过程中向智能合约公开哈希值hhk,hhC对应的原始数据,即密钥和密文的哈希值;智能合约收到交易后验证交易发起者地址是否为AddR并验证参数hhk,hhC和L是否与初始化参数相同,若验证通过则设置另一个时限T2并进入第(5)步。
当存在接收方在时限T1内并未上传合法的参数及保证金至智能合约并通过验证,则接收方被判定为恶意方,流程结束,智能合约将保证金vS返回给发送方(如图2所示)。
(5)发送方监听到接收方已将保证金发送至智能合约后,立即使用其私钥对密文哈希值hC进行签名,随后将密文C和数字签名通过独立于区块链的普通信道发送给接收方。
(6)接受方收到密文C及签名后计算密文哈希值H(C)得到hC,随后立即验证签名合法性;若验证通过,接收方在时限T2内发送参数hC和L至智能合约;智能合约收到交易后验证交易发起者地址是否为AddR并判断L值是否与初始化参数相同,然后计算H(hC)并检查其结果是否与参数hhC相同,若所有验证通过则设置另一个时限T3并进入第(7)步。
当存在发送方没有发送密文至接收方或接收方签名验证不通过或接收方收到了密文但不上传密文哈希值,即只要智能合约未能在时限T2内对接收方上传的hC参数验证通过,则智能合约直接返回保证金vS至发送方,vR至接收方,流程结束(如图3所示)。
(7)发送方监听到接收方已向智能合约公开密文哈希值后,在时限T3内发送Ck和L至智能合约;智能合约收到交易后首先验证交易发起者地址是否为AddS并验证L值是否与初始化参数相同,然后使用相同哈希算法计算H(Ck)并检查其结果是否与初始化参数hCk相同;若验证通过则设置另一个时限T4并进入第(8)步。
当存在智能合约未能在时限T3内收到发送方上传的合法参数并验证通过,则智能合约判定发送方为恶意方,返回所有的保证金vS+vR至接收方,流程结束(如图4所示)。
(8)接收方从区块链中获取到发送方在第(7)步中上传的参数Ck,使用其临时私钥sktem解密得到密钥k'同时计算其哈希值H(k')得到hk',并在时限T4内发送参数hk'和L至智能合约;智能合约收到交易后首先验证交易发起者地址是否为AddR并确认L值是否与初始化参数相同,然后计算H(hk')并检查其结果是否与初始化参数hhk相同并进行如下操作:
·若H(hk')=hhk,智能合约同时向发送方返回其保证金vS,向接收方返回其保证金vR;至此全过程正常结束(如图1所示);
·若H(hk')≠hhk,智能合约保存hk',设置另一个时限T5并进入第(9)步,等待申诉。
当存在智能合约未能在时限T4内收到接收方上传的密钥哈希值和L参数,则智能合约直接判定接收方为恶意方,返回所有的保证金vS+vR至发送方,流程结束(如图5所示)。
(9)若接收方在第(8)步中公开接收到的密钥哈希值没有成功兑换回保证金,则接收方可通过在T5规定的时间内将临时私钥sktem和L发送至智能合约进行申诉,收到请求后,首先确认交易发起者地址为AddR并验证参数L是否与初始化参数相同;若验证通过,智能合约使用临时私钥sktem对Ck进行解密得到密钥k”,然后计算H(k”)得到hk”并验证该值与上一步保存的hk'是否相同:
·若hk'=hk”,智能合约判定发送方为恶意方,返回所有的保证金vS+vR至接收方,流程结束(如图6所示);
·若hk'≠hk”,智能合约判定接收方为恶意方,返回所有的保证金vS+vR至发送方,流程结束。
当存在智能合约未能在时限T5内收到接收方上传的临时私钥sktem和L参数,则智能合约判定接收方为恶意方,返回所有的保证金vS+vR至发送方,流程结束。
方法正常结束时(第(8)步中密钥哈希值验证通过),数据传输的不可否认性通过区块链中交易记录的不可篡改性来保证。由于发送方上传了密文和密钥的二次哈希值即双方账户地址,而接收方在后续的步骤中陆续上传了密文和密钥的哈希值,可以保证接收方能够正确恢复出原始文件,且所有的智能合约交易通过一个唯一的随机数L标识,因此发送方和接收方对于此过程都是不可否认的。
本发明方法非正常结束时(除第(8)步中密钥哈希值验证通过正常结束以外的其他所有结束方式),方法运行实例中有且仅有一个恶意的参与方。当该恶意参与方拒绝对某一步骤做出合法的响应时,智能合约将所有的内部保证金返回至另一诚实的参与方。其中一种恶意的情况是,发送方在初始化阶段(第(2)步)上传的hhk、hCk值并不来自于同一密钥k。即发送方对密钥k计算哈希得到hk,随后计算H(hk)得到hhk,但是用接收方临时公钥pktem对另一密钥k'加密得到Ck'并计算哈希得到hCk'。这一情况下,即使接收方在所有步骤中按规定进行响应,其获取的密钥哈希值hk'仍不能兑换回其保证金。因此设计第(9)步用于处理这种情况,即接收方向智能合约公开该临时私钥,智能合约重现解密过程来判断谁是真正的恶意方。
本发明方法所述传输实例的不可否认性通过智能合约对传输行为的记录来实现,区块链中不可篡改的交易记录提供该次传输实例的发送方和参与方不可否认证据,该证据无须数据传输双方另行存储。基于区块链及智能合约实现,智能合约由方案设计者部署,一经部署可供多次数据传输实例使用,不同实例使用不同的随机数L标识。数据传输过程中的安全性通过混合加密保证,即对称加密保护原始数据,非对称加密保护对称加密密钥。

Claims (2)

1.一种基于区块链的不可否认安全数据传输方法,其特征在于,包括以下步骤:
(1)接受方在本地生成一个临时公私钥对(sktem,pktem),并将临时公钥pktem和自己的区块链账户地址AddR通过独立于区块链的普通信道发送至发送方;
(2)数据发送方收到接收方的临时公钥和区块链账户地址后,在本地生成对称加密密钥k和一个随机数L,并使用密钥k加密待发送的文件F得到密文C,另外使用接收方临时公钥pktem对密钥k进行加密得到Ck;然后发送方使用哈希算法计算H(k),H(C)和H(Ck)得到hk,hC和hCk,随后计算H(hk)和H(hC)得到hhk和hhC;所有计算完成后,发送方将hhk,hhC,hCk,L以及参与双方账户区块链账户地址AddS、AddR和接收方临时公钥pktem发送至智能合约初始化一个数据传输实例并进入第(3)步;
(3)初始化交易确认后,发送方向智能合约发送hCk和L,并在交易中附加价值为vS的区块链代币作为保证金来保证其会在后续过程中公开哈希值hCk对应数据;智能合约收到交易后验证交易发起者地址是否为AddS并验证参数hCk和L是否与初始化参数相同,若验证通过则设置一个时限T1并进入第(4)步;
(4)接收方从区块链中获取初始化参数,并在T1规定的时间内将hhk,hhC和L发送至智能合约,同时附加价值为vR的区块链代币作为保证金;接收方向区块链发送此交易表明其接受第(2)步中的初始化参数,同时通过保证金来保证其会在后续过程中向智能合约公开哈希值hhk,hhC对应的原始数据,即密钥和密文的哈希值;智能合约收到交易后验证交易发起者地址是否为AddR并验证参数hhk,hhC和L是否与初始化参数相同,若验证通过则设置另一个时限T2并进入第(5)步;
当存在接收方在时限T1内并未上传合法的参数及保证金至智能合约并通过验证,则接收方被判定为恶意方,流程结束,智能合约将保证金vS返回给发送方;
(5)发送方监听到接收方已将保证金发送至智能合约后,立即使用其私钥对密文哈希值hC进行签名,随后将密文C和数字签名通过独立于区块链的普通信道发送给接收方;
(6)接受方收到密文C及签名后计算密文哈希值H(C)得到hC,随后立即验证签名合法性;若验证通过,接收方在时限T2内发送参数hC和L至智能合约;智能合约收到交易后验证交易发起者地址是否为AddR并判断L值是否与初始化参数相同,然后计算H(hC)并检查其结果是否与参数hhC相同,若所有验证通过则设置另一个时限T3并进入第(7)步;
当存在发送方没有发送密文至接收方或接收方签名验证不通过或接收方收到了密文但不上传密文哈希值,即只要智能合约未能在时限T2内对接收方上传的hC参数验证通过,则智能合约直接返回保证金vS至发送方,vR至接收方,流程结束;
(7)发送方监听到接收方已向智能合约公开密文哈希值后,在时限T3内发送Ck和L至智能合约;智能合约收到交易后首先验证交易发起者地址是否为AddS并验证L值是否与初始化参数相同,然后使用相同哈希算法计算H(Ck)并检查其结果是否与初始化参数hCk相同;若验证通过则设置另一个时限T4并进入第(8)步;
当存在智能合约未能在时限T3内收到发送方上传的合法参数并验证通过,则智能合约判定发送方为恶意方,返回所有的保证金vS+vR至接收方,流程结束;
(8)接收方从区块链中获取到发送方在第(7)步中上传的参数Ck,使用其临时私钥sktem解密得到密钥k'同时计算其哈希值H(k')得到hk',并在时限T4内发送参数hk'和L至智能合约;智能合约收到交易后首先验证交易发起者地址是否为AddR并确认L值是否与初始化参数相同,然后计算H(hk')并检查其结果是否与初始化参数hhk相同并进行如下操作:
若H(hk')=hhk,智能合约同时向发送方返回其保证金vS,向接收方返回其保证金vR,至此全过程正常结束;
当存在智能合约未能在时限T4内收到接收方上传的密钥哈希值和L参数,则智能合约直接判定接收方为恶意方,返回所有的保证金vS+vR至发送方,流程结束。
2.如权利要求1所述的一种基于区块链的不可否认安全数据传输方法,其特征在于,还包括步骤(9):在步骤(8)中,若H(hk')≠hhk,智能合约保存hk',设置另一个时限T5并进入第(9)步,等待申诉;
(9)若接收方在第(8)步中公开接收到的密钥哈希值没有成功兑换回保证金,则接收方可通过在T5规定的时间内将临时私钥sktem和L发送至智能合约进行申诉,收到请求后,首先确认交易发起者地址为AddR并验证参数L是否与初始化参数相同;若验证通过,智能合约使用临时私钥sktem对Ck进行解密得到密钥k”,然后计算H(k”)得到hk”并验证该值与上一步保存的hk'是否相同:
·若hk'=hk”,智能合约判定发送方为恶意方,返回所有的保证金vS+vR至接收方,流程结束;
·若hk'≠hk”,智能合约判定接收方为恶意方,返回所有的保证金vS+vR至发送方,流程结束;
当存在智能合约未能在时限T5内收到接收方上传的临时私钥sktem和L参数,则智能合约判定接收方为恶意方,返回所有的保证金vS+vR至发送方,流程结束。
CN201910448288.1A 2019-05-27 2019-05-27 一种基于区块链的不可否认安全数据传输方法 Active CN110223064B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910448288.1A CN110223064B (zh) 2019-05-27 2019-05-27 一种基于区块链的不可否认安全数据传输方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910448288.1A CN110223064B (zh) 2019-05-27 2019-05-27 一种基于区块链的不可否认安全数据传输方法

Publications (2)

Publication Number Publication Date
CN110223064A true CN110223064A (zh) 2019-09-10
CN110223064B CN110223064B (zh) 2020-07-28

Family

ID=67818685

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910448288.1A Active CN110223064B (zh) 2019-05-27 2019-05-27 一种基于区块链的不可否认安全数据传输方法

Country Status (1)

Country Link
CN (1) CN110223064B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110827028A (zh) * 2019-11-07 2020-02-21 湖北邮电规划设计有限公司 一种基于区块链的数据采集交易系统和方法
CN111429136A (zh) * 2020-03-05 2020-07-17 合肥达朴汇联科技有限公司 一种基于区块链的数据审计方法及装置
CN111586035A (zh) * 2020-05-05 2020-08-25 莆田市烛火信息技术有限公司 一种区块链矿机哈希运算服务方法及系统
CN113515496A (zh) * 2021-05-25 2021-10-19 上海旺链信息科技有限公司 文件传输方法和装置、电子设备及存储介质
WO2022068665A1 (zh) * 2020-09-30 2022-04-07 京东方科技集团股份有限公司 数据通信的方法和电子设备
CN114553431A (zh) * 2022-01-27 2022-05-27 北京信息科技大学 一种具有记忆功能的通信方法及装置
CN115002779A (zh) * 2022-07-29 2022-09-02 杭州宇链科技有限公司 基于区块链和安全芯片的伪基站防治方法和系统
CN115967583A (zh) * 2023-03-16 2023-04-14 安羚科技(杭州)有限公司 基于联盟链的密钥管理系统及方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107342858A (zh) * 2017-07-05 2017-11-10 武汉凤链科技有限公司 一种基于可信环境的智能合约保护方法和系统
US20180308098A1 (en) * 2015-05-05 2018-10-25 ShoCard, Inc. Identity Management Service Using A Block Chain Providing Identity Transactions Between Devices
CN109559122A (zh) * 2018-12-07 2019-04-02 北京瑞卓喜投科技发展有限公司 区块链数据传输方法及区块链数据传输系统
CN109587132A (zh) * 2018-11-29 2019-04-05 苏宁易购集团股份有限公司 一种基于联盟链的数据传递方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180308098A1 (en) * 2015-05-05 2018-10-25 ShoCard, Inc. Identity Management Service Using A Block Chain Providing Identity Transactions Between Devices
CN107342858A (zh) * 2017-07-05 2017-11-10 武汉凤链科技有限公司 一种基于可信环境的智能合约保护方法和系统
CN109587132A (zh) * 2018-11-29 2019-04-05 苏宁易购集团股份有限公司 一种基于联盟链的数据传递方法及装置
CN109559122A (zh) * 2018-12-07 2019-04-02 北京瑞卓喜投科技发展有限公司 区块链数据传输方法及区块链数据传输系统

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110827028A (zh) * 2019-11-07 2020-02-21 湖北邮电规划设计有限公司 一种基于区块链的数据采集交易系统和方法
CN110827028B (zh) * 2019-11-07 2023-08-29 湖北邮电规划设计有限公司 一种基于区块链的数据采集交易系统和方法
CN111429136A (zh) * 2020-03-05 2020-07-17 合肥达朴汇联科技有限公司 一种基于区块链的数据审计方法及装置
CN111429136B (zh) * 2020-03-05 2023-04-28 合肥达朴汇联科技有限公司 一种基于区块链的数据审计方法及装置
CN111586035A (zh) * 2020-05-05 2020-08-25 莆田市烛火信息技术有限公司 一种区块链矿机哈希运算服务方法及系统
CN111586035B (zh) * 2020-05-05 2022-04-19 莆田市烛火信息技术有限公司 一种区块链矿机哈希运算服务方法及系统
WO2022068665A1 (zh) * 2020-09-30 2022-04-07 京东方科技集团股份有限公司 数据通信的方法和电子设备
CN113515496A (zh) * 2021-05-25 2021-10-19 上海旺链信息科技有限公司 文件传输方法和装置、电子设备及存储介质
CN114553431A (zh) * 2022-01-27 2022-05-27 北京信息科技大学 一种具有记忆功能的通信方法及装置
CN115002779A (zh) * 2022-07-29 2022-09-02 杭州宇链科技有限公司 基于区块链和安全芯片的伪基站防治方法和系统
CN115967583A (zh) * 2023-03-16 2023-04-14 安羚科技(杭州)有限公司 基于联盟链的密钥管理系统及方法

Also Published As

Publication number Publication date
CN110223064B (zh) 2020-07-28

Similar Documents

Publication Publication Date Title
CN110223064A (zh) 一种基于区块链的不可否认安全数据传输方法
JP7316295B2 (ja) デジタル資産へのアクセスを移すためのコンピュータ実施方法及びシステム
CN109257182B (zh) 基于同态密码学承诺与零知识范围证明的隐私保护方法
CN107017993A (zh) 一种多方联合密钥产生和数字签名方法及系统
CN109257346B (zh) 基于区块链的隐蔽传输系统
CN106779704A (zh) 一种基于环签名的区块链匿名交易方法
CN109462472A (zh) 数据加密和解密的方法、装置和系统
CN109447647A (zh) 一种基于区块链的安全支付系统
CN109741068B (zh) 网银跨行签约方法、装置及系统
CN107172056A (zh) 一种信道安全确定方法、装置、系统、客户端及服务器
CN108768652A (zh) 一种可抗量子攻击的联盟区块链底层加密方法
CN110599163B (zh) 一种面向区块链交易监管的交易记录外包方法
CN108830587A (zh) 一种基于无证书签名的nfc移动支付方法
US6052787A (en) Process for group-based cryptographic code management between a first computer unit and group computer units
CN113746858A (zh) 一种基于可验证随机函数的跨链通信方法
CN113393225B (zh) 数字货币加密支付方法及系统
CN113657978A (zh) 一种基于区块链和隐私保护的分布式能源拍卖方法及系统
CN113643134B (zh) 基于多密钥同态加密的物联网区块链交易方法及系统
CN111738857B (zh) 应用于区块链的隐匿支付证明的生成与验证方法及装置
US10924278B2 (en) Method and apparatus for authentication and encryption service employing unbreakable encryption
CN115913513B (zh) 支持隐私保护的分布式可信数据交易方法、系统及装置
JP4750274B2 (ja) 鍵共有攻撃防御方法
CN117057921B (zh) 算力交易方法、装置、系统、电子设备及存储介质
CN115580415B (zh) 区块链中数据交互认证方法、装置与系统
CN117094825A (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