CN113034146A - 基于区块链的通信方法、***、电子装置和存储介质 - Google Patents

基于区块链的通信方法、***、电子装置和存储介质 Download PDF

Info

Publication number
CN113034146A
CN113034146A CN202110573040.5A CN202110573040A CN113034146A CN 113034146 A CN113034146 A CN 113034146A CN 202110573040 A CN202110573040 A CN 202110573040A CN 113034146 A CN113034146 A CN 113034146A
Authority
CN
China
Prior art keywords
block chain
sender
blockchain
transaction request
information
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
CN202110573040.5A
Other languages
English (en)
Other versions
CN113034146B (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.)
Hangzhou Yunxiang Network Technology Co Ltd
Original Assignee
Hangzhou Yunxiang Network Technology Co Ltd
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 Hangzhou Yunxiang Network Technology Co Ltd filed Critical Hangzhou Yunxiang Network Technology Co Ltd
Priority to CN202110573040.5A priority Critical patent/CN113034146B/zh
Publication of CN113034146A publication Critical patent/CN113034146A/zh
Application granted granted Critical
Publication of CN113034146B publication Critical patent/CN113034146B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Finance (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本申请涉及一种基于区块链的通信方法、***、电子装置和存储介质,其中,该基于区块链的通信方法包括:区块链中与发送方对应的发送节点获取发送方的交易请求,并将交易请求发送至区块链的所有区块链节点,区块链节点对交易请求进行共识,其中,交易请求根据发送方与接收方之间的通信信息生成;在区块链节点对交易请求作出响应之后,区块链发送交易中止命令并生成中止信息,停止共识,其中,区块链节点中的至少一个节点根据中止信息获取通信信息。通过本申请,解决了相关技术中基于区块链的持久化实现不同节点之间的通信过程,对于区块链的存储资源消耗非常大的问题,实现了不用将通信信息进行存储,节省了区块链的存储资源,降低了存储成本。

Description

基于区块链的通信方法、***、电子装置和存储介质
技术领域
本申请涉及区块链技术领域,特别是涉及基于区块链的通信方法、***、电子装置和存储介质。
背景技术
通常情况下,企业通过区块链技术为数据资产增信提供保障机制,进一步地,还可以通过区块链的可信网络实现企业之间的数据协同及业务协同。在相关技术中,企业之间通过区块链节点实现通信的机制如下,基于上链过程,区块链的每个节点监听感兴趣数据的变化,然后将发生变化的数据以消息生产者的形式推送到消息中间件中,由消息中间件的消费者主动获取感兴趣数据最终实现消息接收,其中,消息中间件的消费者可以为企业的业务***。
然而,由于通信过程需要有完备的应答机制才能满足通信的最基本需求,而区块链资源本身宝贵,每一笔持久化的数据都会占用区块链中的存储资源,所以基于区块链持久化来实现通信的方法效率较低,且无论在点对点通信还是群组通信的场景中,对于整条区块链的存储成本消耗和网络资源消耗都非常大,影响业务信息吞吐量。
目前针对相关技术中基于区块链的持久化实现不同节点之间的通信过程,对于区块链的存储资源消耗非常大的问题,尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种基于区块链的通信方法、***、电子装置和存储介质,以至少解决相关技术中基于区块链的持久化实现不同节点之间的通信过程,对于区块链的存储资源消耗非常大的问题。
第一方面,本申请实施例提供了一种基于区块链的通信方法,包括:
区块链中与发送方对应的发送节点获取所述发送方的交易请求,并将所述交易请求发送至所述区块链的所有区块链节点,所述区块链节点对所述交易请求进行共识,其中,所述交易请求根据所述发送方与接收方之间的通信信息生成;
在所述区块链节点对所述交易请求作出响应之后,所述区块链发送交易中止命令并生成中止信息,停止所述共识,其中,所述区块链节点中的至少一个节点根据所述中止信息获取所述通信信息。
在其中一些实施例中,所述区块链中与发送方对应的发送节点获取所述发送方的交易请求,并将所述交易请求发送至所述区块链的所有区块链节点包括:
所述区块链根据智能合约获取多个发送方的交易请求。
在其中一些实施例中,在所述区块链中与发送方对应的发送节点获取所述发送方的交易请求,并将所述交易请求发送至所述区块链的所有区块链节点之前,所述方法包括:
所述发送方根据智能合约确定至少一个接收节点,其中,所述接收节点能够对所述通信信息进行解密。
在其中一些实施例中,在所述区块链中与发送方对应的发送节点获取所述发送方的交易请求,并将所述交易请求发送至所述区块链的所有区块链节点之前,所述方法包括:
所述发送方从所述区块链中的智能合约获取业务信息,根据所述业务信息获取与所述业务信息对应的业务标识;
所述发送方基于所述业务标识获取所述通信信息。
在其中一些实施例中,在所述区块链中与发送方对应的发送节点获取所述发送方的交易请求,并将所述交易请求发送至所述区块链的所有区块链节点之前,所述方法还包括:
所述发送方从所述区块链的智能合约中获取所述区块链节点的用户信息;
所述发送方获取与所述用户信息对应的加密信息,根据所述加密信息对所述通信信息进行至少部分加密。
在其中一些实施例中,所述获取所述通信信息包括:
所述区块链节点中的接收节点根据私钥对所述通信信息进行至少部分解密。
在其中一些实施例中,在所述停止所述共识之后,所述方法包括:
所述区块链节点进行事务回滚。
第二方面,本申请实施例提供了一种基于区块链的通信***,包括区块链、发送方和接收方:
所述区块链中与所述发送方对应的发送节点获取所述发送方的交易请求,并将所述交易请求发送至所述区块链的所有区块链节点,所述区块链节点对所述交易请求进行共识,其中,所述交易请求根据所述发送方与所述接收方之间的通信信息生成,所述区块链节点包括与所述接收方对应的接收节点;
在所述区块链节点对所述交易请求作出响应之后,所述区块链发送交易中止命令并生成中止信息,停止所述共识,其中,所述区块链节点中的至少一个节点根据所述中止信息获取所述通信信息。
第三方面,本申请实施例提供了一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的基于区块链的通信方法的步骤。
第四方面,本申请实施例提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的基于区块链的通信方法。
相比于相关技术,本申请实施例提供的基于区块链的通信方法,通过区块链中与发送方对应的发送节点获取发送方的交易请求,并将交易请求发送至区块链的所有区块链节点,区块链节点对交易请求进行共识,其中,交易请求根据发送方与接收方之间的通信信息生成;在区块链节点对交易请求作出响应之后,区块链发送交易中止命令并生成中止信息,停止共识,其中,区块链节点中的至少一个节点根据中止信息获取通信信息,解决了相关技术中基于区块链的持久化实现不同节点之间的通信过程,对于区块链的存储资源消耗非常大的问题,实现了不用将通信信息进行存储,节省了区块链的存储资源,降低了存储成本。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的基于区块链的通信方法的流程图;
图2是根据本申请实施例的另一种基于区块链的通信方法的流程图;
图3是根据本申请实施例的再一种基于区块链的通信方法的流程图;
图4为本申请实施例的基于区块链的通信方法的终端的硬件结构框图;
图5是根据本申请实施例的基于区块链的通信***的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指大于或者等于两个。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
区块链是一种分布式数据库,存储于其中的数据或信息,具有不可伪造,可追溯的特性。区块链节点间的通信方式通常包括以下场景:1、通过将每个节点关心的数据进行上链,从而实现对这些数据的变化进行监听,发生变更的信息将以消息生产者的形式推送到消息中间件中,由消息中间件的消费者主动获取关心的数据,最终实现消息接收,其中,消息中间件的消费者可以为各个节点的业务***;2、区块链中的所有业务接入方长时间轮巡自己的区块链节点服务,筛选交易以及智能合约数据,当自身关心的数据发生变化,获取业务变量并存储在自己的***中,然后进行后续的业务步骤;3、在联盟链中,联盟链的成员方依靠区块链打破原有机构间的信息孤岛,实现信息共享,从而进行业务协同。为了保证数据交互安全,往往放弃原有的互联网对接方式,区块链网络成了机构间协同的唯一通道。对于联盟链,可以在区块链网络以外开辟专有通信网络进行通信。
然而上述通信途径均存在问题,对于场景1,由于网络故障等原因,通信本身是不可靠的,而且通信需要有完备的应答机制才能满足最基本的需求。但是区块链的存储资源本身宝贵,如果在区块链中同时存储业务信息和通信信息,不稳定的通信信息被持久化后会作为数据资产的一部分,且因通信信息容易出错,所以会影响区块链上所有节点的数据资产的有效性。进一步地,借助区块链持久化来实现通信过程,本身通信的效率较低且无论在点对点通信还是群组通信的场景中,对于整条区块链的存储成本消耗以及对网络资源的消耗都非常大,从而影响业务信息吞吐量。以联盟链为例,为了尽可能的节约联盟链存储成本,则需要设计最小通信成本的交易结构与智能合约的运算逻辑。通过这种方式可以降低轮巡节点交易信息与合约数据带来的接入方服务及区块链节点服务的算力,但由于区块链中需要单独提供持久化的通信信息存储方式实现通信,联盟链随着接入方的增加,与业务无关的通信信息的存储成本则会大幅增加。而且通信本身具有不稳定性,消息中间件与节点间的数据最终一致性无法保证,消息传递的可靠性也无法保证,为了保证消息的妥善投递需配合多次重试及应答机制,通信复杂度上升,对于联盟链而言,实现成本极高。
对于场景2,区块链节点的业务接入方长时间轮巡,需要消耗节点算力查询智能合约账本及交易信息,会大量消耗节点算力及业务***资源。以联盟链为例,若联盟链中节点个数为n,则联盟链每时每刻为了获取已经变化的且需要关注的业务数据,则需要消耗n倍的区块链节点资源,以及n倍的业务***资源之和。
对于场景3,通过区块链外专属的通信网络进行通信时,与区块链相关的业务信息是通过公共网络进行传递的,在原有通信不可靠的基础上,需要围绕区块链网络搭建较为复杂的企业间通信专网。在区块链外构建专属的通信网络,会导致通信信息无法与区块链上的数据进行联动,因此会导致通信网络的业务属性大大降低。
本申请提供的基于区块链的通信方法,可以应用在公有区块链中,也可以应用在联盟链中,在解决上述通信过程不可靠的同时,还可以解决对区块链中存储资源消耗较大的问题。
本实施例提供了一种基于区块链的通信方法。图1是根据本申请实施例的基于区块链的通信方法的流程图,如图1所示,该方法包括如下步骤:
步骤S110,区块链中与发送方对应的发送节点获取发送方的交易请求,并将交易请求发送至该区块链的所有区块链节点,区块链节点对交易请求进行共识,其中,交易请求根据发送方与接收方之间的通信信息生成。
在需要进行业务往来的两方或者多方进行通信时,发送通信信息的一方或者多方为发送方,接收通信信息的一方或者多方为接收方,区块链中所有的区块链节点都可以接收到交易请求,包括与发送方对应的发送节点。但是可能只有部分区块链节点能够真正查阅交易请求中的通信信息,当然,也可能所有的区块链节点都能够查阅通信信息,这些能够真正查阅通信信息的区块链节点为与接收方对应的接收节点。发送方在区块链中存在对应的发送节点以实现交易请求的转发,本申请中的发送方和接收方的数量均可以为一个或者多个。其中,节点对区块链上的交易具有投票资格,为可以为共同参与维护统一数据账本的服务器,还可以自由访问且获得区块链中数据的历史记录及执行结果。通信信息包括与区块链对应的交易信息和存储在智能合约中的业务信息,其中,交易信息为区块链对交易的记录,可以为计算后得到的哈希值,业务信息为和发送方、接收方相关的业务数据。
在发送节点接收到来自发送方的通信信息之后,便向所有的区块链节点发起交易请求,开始通信过程,发送节点自身也会接收到该交易请求。本申请中,需要所有的区块链节点对通信过程进行共识,其中,共识是一种投票机制,用于完成对区块链中交易的验证和确认,可以在很短的时间内完成,在共识过程中,可以记录接收节点的所有信息,在得到发送方和接收节点公认的记录策略之后,才能最终达成一致。需要说明的是,所有的区块链节点均会接收到该交易请求,并对该交易请求进行共识。
具体地,与交易请求对应的交易信息中包括通信信息。
步骤S120,在区块链节点对交易请求作出响应之后,区块链发送交易中止命令并生成中止信息,停止共识,其中,区块链节点中的至少一个节点根据中止信息获取通信信息。
区块链节点在接收到交易请求后,通过共识对交易请求作出响应。具体地,各个区块链节点对交易请求这一步骤进行共识,在共识完成后,认为所有的区块链节点已对交易请求作出响应。
在获取到接收节点对交易请求作出的响应之后,区块链的处理中心向各个区块链节点发送交易中止命令,中止此次交易过程,具体地,可以预先对智能合约进行相应的更新,写入停止共识的命令,以通过执行智能合约时发送交易中止命令。区块链在发送交易中止命令的同时,根据通信信息生成中止信息,所以中止信息中包含了通信信息。在各个区块链节点接收到该交易中止命令之后,至少一个区块链节点可以通过中止信息获取通信信息,然后根据通信信息获取业务信息,实现业务操作。需要说明的是,在接收到交易中止命令之后,各个区块链节点对“中止信息”实现共识,以停止对此次交易过程的共识。
本申请中,由于各个区块链节点没有对整个交易过程完成共识,阻止了数据落地,因此交易过程被中断,阻止了通信信息在区块链中的持久化,从而阻止了通信信息存储在区块链中,节省了区块链中的存储空间。
然而,即使共识交易过程被中断,但是区块链节点已经获取到了通信信息,所以部分或者所有的区块链节点可以从通信信息中获取业务信息,最终完成与业务信息对应的业务操作。
需要说明的是,在区块链中,对交易过程进行共识包括多个阶段:例如,发起交易请求阶段,对交易数据进行多轮验证和确认阶段,向区块链提交以实现交易数据的持久化阶段。其中,只有完成最后的“向区块链最终提交”步骤,才能实现交易数据在区块链中的存储,即实现持久化。进一步地,每一个步骤也都需要参与交易的各个节点进行共识,在各个节点达成共识之后,才能进行下一个步骤。具体地,本申请中,即完成了交易请求或者对交易数据进行多轮验证和确认的阶段,而没有进行向区块链提交以实现交易数据的持久化阶段,所以可以实现在获取到通信信息的同时,不对其进行存储。
本申请中,通过上述步骤S110和步骤S120,在区块链节点对交易请求作出响应之后,在确认存储之前,区块链发出交易中止命令,停止区块链节点对交易过程的共识,避免通信信息被存储在区块链中,解决了相关技术中基于区块链的持久化实现的通信过程,对于区块链的存储资源消耗非常大的问题,实现了不用将通信信息进行存储,节省了区块链的存储资源,降低了存储成本。
本申请中的基于区块链的通信方法依赖共识机制实现,但并不实现完全的共识过程,所以可以称为一种“半共识”机制,该“半共识”机制仅仅缺少最终的数据持久化过程,所以仍然具有共识机制的可靠性,同时“半共识”机制阻止了通信信息这一非业务数据存储上链,降低了整条区块链中存储资源的消耗,大大降低了存储成本。
在其中一些实施例中,区块链可以根据智能合约获取多个发送方的交易请求,以实现多个发送方与至少一个接收方之间的通信。具体地,需要进行通信的各个发送方均可以通过智能合约发起对接收方的通信过程,而区块链也可以依赖于智能合约接收多个发起方用于进行通信的交易请求,其中,智能合约是一种以信息化方式传播、验证或执行合同的计算机协议,智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。
进一步地,在其中一些实施例中,由于智能合约中会记录和业务操作相关的区块链节点,所以发送方根据智能合约确定至少一个接收节点,其中,接收节点能够对通信信息进行解密,以实现业务操作,最终实现发送方和接收方的通信。因此,本申请中的基于区块链的通信方法可以依赖智能合约实现一对一、一对多或者多对多的通信。
在其中一些实施例中,图2是根据本申请实施例的另一种基于区块链的通信方法的流程图,如图2所示,该方法还包括如下步骤:
步骤S210,发送方从区块链中的智能合约获取业务信息,根据业务信息获取与业务信息对应的业务标识。
通常情况下,智能合约中会存储着业务信息,该业务信息对应一个业务标识,该业务标识为代表业务信息的索引,例如标识符(identifier,简称为ID)。其中,业务标识可以直接存储在智能合约中。
步骤S220,发送方基于业务标识获取通信信息。
发送方在获取到业务标识之后,可以由业务标识生成通信信息,然后与接收节点进行通信。进一步地,在其他实施例中,通信信息可以由业务标识与交易信息生成。
接收节点在接收到通信信息之后,根据通信信息中的业务标识,在智能合约中查找对应的业务信息,从而完成业务操作。
通过上述步骤S210和步骤S220,发送方基于业务标识生成通信信息,由于业务标识的数据量大小远远小于业务信息,所以发送方在不用将所有的业务信息进行通信传递的情况下,实现发送方的最小投递,可以大大减小发送方与接收节点之间进行通信时所消耗的通信资源,例如带宽和中央处理器(Central Processing Unit,简称为CPU),从而降低成本,同时可以提高数据传输效率与安全性。
在其中一些实施例中,发送方可以基于智能合约中的用户信息对通信信息进行加密,以提高通信信息的安全性。具体为,发送方从区块链的智能合约中获取与区块链节点对应的各个用户的用户信息,其中,用户信息用于确定与区块链节点对应的用户查看通信信息的权限,例如,一些用户的权限决定其只能接收到通信信息,却无法查看该通信信息,一些用户可以查看该通信信息中的部分信息,一些用户可以查看所有的通信信息,其中,能够查阅至少部分通信信息的用户为通信信息的接收方,与接收方对应的区块链节点为接收节点。具体地,实现上述不同的接收方对通信信息的可查看范围不同的方法如下,发送方获取与用户信息对应的加密信息,例如,可以从智能合约中获取与用户信息对应的公钥,然后根据加密信息对通信信息进行至少部分加密。
进一步地,在各个区块链节点收到加密后的通信信息之后,区块链节点中的接收节点使用自己的私钥对通信信息进行解密,由于用户权限不同,接收节点对通信信息的解密为至少部分解密,即一些接收节点在解密后可以查看到所有的通信信息,一些接收节点在解密后只能查看部分通信信息,接收节点之外的区块链节点无法解密通信信息。本实施例中依据用户信息包含的权限,针对不同的接收节点,对通信信息进行不同程度的加密,实现通信信息的细粒度加密过程,保证通信信息可以安全推送至各个接收节点,提高各个接收节点的利用率。需要说明的是,发起方对通信信息进行加密时使用的公钥与接收方进行解密时的私钥对应。
在其中一些实施例中,图3是根据本申请实施例的再一种基于区块链的通信方法的流程图,如图3所示,该方法包括如下步骤:
步骤S310,与发送方对应的发送节点通过智能合约获取各个区块链节点的公钥,根据公钥对通信信息进行加密;
步骤S320,发送节点向各个区块链节点发起与通信信息对应的上链请求;
步骤S330,各个区块链节点响应该上链请求;
步骤S340,在各个区块链节点响应上链请求之后,区块链发送上链中止命令并生成中止信息,中止此次上链过程,通过智能合约触发事务回滚;其中,中止信息中包括通信信息;
其中,事务是一组组合成逻辑工作单元的操作,虽然***中可能会出错,但事务将控制和维护事务中每个操作的一致性和完整性,回滚是指恢复到事务开始前的状态;
在其他实施例中,区块链还可以发送异常状态以中止交易过程;
步骤S350,各个区块链节点在接收到上链中止命令之后,响应事务回滚;
步骤S360,在区块链节点的事务回滚结束之后,区块链结束上链过程;
步骤S370,区块链节点中的接收节点在事务回滚状态下,根据步骤S340中接收到的通信信息,获取业务信息,通过智能合约实现业务操作。
通过上述步骤S310至步骤S370,本申请基于区块链中各个节点对数据的共识持久化需要经过多个阶段才能最后提交的特性,在区块链中的交易过程即将完成时,驱动智能合约放弃持久化,阻止发送方与接收方之间的通信信息持久化,实现各个区块链节点的状态进行事务回滚。在通信过程中,由于各个区块链节点并未完成通信信息的打包落盘,无法完成在智能合约中的记账,则各个区块链节点不会对通信信息付出存储成本,整个通信过程不会为区块链带来存储压力,从而实现区块链上各个节点间的无成本通信。
需要说明的是,在上述流程中或者附图的流程图中示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请提供的方法实施例可以在终端、计算机或者类似的运算装置中执行。以运行在终端上为例,图4为本申请实施例的基于区块链的通信方法的终端的硬件结构框图。如图4所示,终端40可以包括一个或多个(图4中仅示出一个)处理器402(处理器402可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器404,可选地,上述终端还可以包括用于通信功能的传输设备406以及输入输出设备408。本领域普通技术人员可以理解,图4所示的结构仅为示意,其并不对上述终端的结构造成限定。例如,终端40还可包括比图4中所示更多或者更少的组件,或者具有与图4所示不同的配置。
存储器404可用于存储控制程序,例如,应用软件的软件程序以及模块,如本申请实施例中的基于区块链的通信方法对应的控制程序,处理器402通过运行存储在存储器404内的控制程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器404可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器404可进一步包括相对于处理器402远程设置的存储器,这些远程存储器可以通过网络连接至终端40。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备406用于经由一个网络接收或者发送数据。上述的网络具体实例可包括终端40的通信供应商提供的无线网络。在一个实例中,传输设备406包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备406可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
本实施例还提供了一种基于区块链的通信***,该***用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图5是根据本申请实施例的基于区块链的通信***的结构框图,如图5所示,该***包括区块链51、发送方52和接收方53:区块链51中与发送方52对应的发送节点获取发送方52的交易请求,并将交易请求发送至区块链51的所有区块链节点,区块链节点对交易请求进行共识,其中,交易请求根据发送方52与接收方53之间的通信信息生成,区块链节点包括与接收方53对应的接收节点;在区块链节点对交易请求作出响应之后,区块链51发送交易中止命令并生成中止信息,停止共识,其中,区块链节点中的至少一个节点根据中止信息获取通信信息。
通过上述***,在区块链节点对交易请求作出响应之后,区块链在对通信信息进行存储之前,发出交易中止命令,停止各个区块链节点对交易过程的共识,避免通信信息被存储在区块链中,解决了相关技术中基于区块链的持久化实现不同节点之间的通信过程,对于区块链的存储资源消耗非常大的问题,实现了不用将通信信息进行存储,节省了区块链的存储资源,降低了存储成本。
需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
本实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,区块链中与发送方对应的发送节点获取发送方的交易请求,并将交易请求发送至区块链的所有区块链节点,区块链节点对交易请求进行共识,其中,交易请求根据发送方与接收方之间的通信信息生成;
S2,在区块链节点对交易请求作出响应之后,区块链发送交易中止命令并生成中止信息,停止共识,其中,区块链节点中的至少一个节点根据中止信息获取通信信息。
需要说明的是,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
另外,结合上述实施例中的基于区块链的通信方法,本申请实施例可提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种基于区块链的通信方法的步骤。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种基于区块链的通信方法,其特征在于,包括:
区块链中与发送方对应的发送节点获取所述发送方的交易请求,并将所述交易请求发送至所述区块链的所有区块链节点,所述区块链节点对所述交易请求进行共识,其中,所述交易请求根据所述发送方与接收方之间的通信信息生成;
在所述区块链节点对所述交易请求作出响应之后,所述区块链发送交易中止命令并生成中止信息,停止所述共识,其中,所述区块链节点中的至少一个节点根据所述中止信息获取所述通信信息。
2.根据权利要求1所述的基于区块链的通信方法,其特征在于,所述区块链中与发送方对应的发送节点获取所述发送方的交易请求,并将所述交易请求发送至所述区块链的所有区块链节点包括:
所述区块链根据智能合约获取多个发送方的交易请求。
3.根据权利要求1或2所述的基于区块链的通信方法,其特征在于,在所述区块链中与发送方对应的发送节点获取所述发送方的交易请求,并将所述交易请求发送至所述区块链的所有区块链节点之前,所述方法包括:
所述发送方根据智能合约确定至少一个接收节点,其中,所述接收节点能够对所述通信信息进行解密。
4.根据权利要求1所述的基于区块链的通信方法,其特征在于,在所述区块链中与发送方对应的发送节点获取所述发送方的交易请求,并将所述交易请求发送至所述区块链的所有区块链节点之前,所述方法包括:
所述发送方从所述区块链中的智能合约获取业务信息,根据所述业务信息获取与所述业务信息对应的业务标识;
所述发送方基于所述业务标识获取所述通信信息。
5.根据权利要求1所述的基于区块链的通信方法,其特征在于,在所述区块链中与发送方对应的发送节点获取所述发送方的交易请求,并将所述交易请求发送至所述区块链的所有区块链节点之前,所述方法还包括:
所述发送方从所述区块链的智能合约中获取所述区块链节点的用户信息;
所述发送方获取与所述用户信息对应的加密信息,根据所述加密信息对所述通信信息进行至少部分加密。
6.根据权利要求5所述的基于区块链的通信方法,其特征在于,所述获取所述通信信息包括:
所述区块链节点中的接收节点根据私钥对所述通信信息进行至少部分解密。
7.根据权利要求1所述的基于区块链的通信方法,其特征在于,在所述停止所述共识之后,所述方法包括:
所述区块链节点进行事务回滚。
8.一种基于区块链的通信***,其特征在于,包括区块链、发送方和接收方;
所述区块链中与所述发送方对应的发送节点获取所述发送方的交易请求,并将所述交易请求发送至所述区块链的所有区块链节点,所述区块链节点对所述交易请求进行共识,其中,所述交易请求根据所述发送方与所述接收方之间的通信信息生成,所述区块链节点包括与所述接收方对应的接收节点;
在所述区块链节点对所述交易请求作出响应之后,所述区块链发送交易中止命令并生成中止信息,停止所述共识,其中,所述区块链节点中的至少一个节点根据所述中止信息获取所述通信信息。
9.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7中任一项所述的基于区块链的通信方法。
10.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行权利要求1至7中任一项所述的基于区块链的通信方法的步骤。
CN202110573040.5A 2021-05-25 2021-05-25 基于区块链的通信方法、***、电子装置和存储介质 Active CN113034146B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110573040.5A CN113034146B (zh) 2021-05-25 2021-05-25 基于区块链的通信方法、***、电子装置和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110573040.5A CN113034146B (zh) 2021-05-25 2021-05-25 基于区块链的通信方法、***、电子装置和存储介质

Publications (2)

Publication Number Publication Date
CN113034146A true CN113034146A (zh) 2021-06-25
CN113034146B CN113034146B (zh) 2021-08-17

Family

ID=76455854

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110573040.5A Active CN113034146B (zh) 2021-05-25 2021-05-25 基于区块链的通信方法、***、电子装置和存储介质

Country Status (1)

Country Link
CN (1) CN113034146B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105976231A (zh) * 2016-06-24 2016-09-28 深圳前海微众银行股份有限公司 基于区块链智能合约的资产管理方法及节点
CN106603698A (zh) * 2016-12-28 2017-04-26 北京果仁宝科技有限公司 基于dpos的区块链共识方法和节点
CN108737435A (zh) * 2018-05-30 2018-11-02 阿里巴巴集团控股有限公司 一种账户初始化方法和装置
CN109117097A (zh) * 2018-09-05 2019-01-01 深圳正品创想科技有限公司 一种基于区块链的数据存储方法及***
CN110198233A (zh) * 2019-05-09 2019-09-03 中国人民解放军国防科技大学 基于可信执行环境和有向无环图的区块链共识方法及***
CN110543788A (zh) * 2019-09-11 2019-12-06 腾讯科技(深圳)有限公司 数据存储方法、装置、计算机可读存储介质和计算机设备
CN110990855A (zh) * 2019-12-02 2020-04-10 中国银行股份有限公司 区块链信息记录和查询方法、装置、***
CN111680050A (zh) * 2020-05-25 2020-09-18 杭州趣链科技有限公司 一种联盟链数据的分片处理方法、设备和存储介质
CN111865608A (zh) * 2020-07-02 2020-10-30 南京邮电大学 一种应用于联盟链的共识机制运行方法
CN112163240A (zh) * 2020-10-21 2021-01-01 汪金玲 一种基于区块链的分布式政务架构统一方法及***

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105976231A (zh) * 2016-06-24 2016-09-28 深圳前海微众银行股份有限公司 基于区块链智能合约的资产管理方法及节点
CN106603698A (zh) * 2016-12-28 2017-04-26 北京果仁宝科技有限公司 基于dpos的区块链共识方法和节点
CN108737435A (zh) * 2018-05-30 2018-11-02 阿里巴巴集团控股有限公司 一种账户初始化方法和装置
CN109117097A (zh) * 2018-09-05 2019-01-01 深圳正品创想科技有限公司 一种基于区块链的数据存储方法及***
CN110198233A (zh) * 2019-05-09 2019-09-03 中国人民解放军国防科技大学 基于可信执行环境和有向无环图的区块链共识方法及***
CN110543788A (zh) * 2019-09-11 2019-12-06 腾讯科技(深圳)有限公司 数据存储方法、装置、计算机可读存储介质和计算机设备
CN110990855A (zh) * 2019-12-02 2020-04-10 中国银行股份有限公司 区块链信息记录和查询方法、装置、***
CN111680050A (zh) * 2020-05-25 2020-09-18 杭州趣链科技有限公司 一种联盟链数据的分片处理方法、设备和存储介质
CN111865608A (zh) * 2020-07-02 2020-10-30 南京邮电大学 一种应用于联盟链的共识机制运行方法
CN112163240A (zh) * 2020-10-21 2021-01-01 汪金玲 一种基于区块链的分布式政务架构统一方法及***

Also Published As

Publication number Publication date
CN113034146B (zh) 2021-08-17

Similar Documents

Publication Publication Date Title
TWI662435B (zh) 分散式系統及訊息處理方法
CN112994892B (zh) 跨链交互方法、装置、***和电子设备
CA2980911C (en) Systems and methods for guaranteeing delivery of pushed data to remote clients
TW201919363A (zh) 量子金鑰的分發系統及其分發方法和資料處理方法
CN110601816B (zh) 一种区块链***中轻量级节点控制方法及装置
US20230123241A1 (en) Security authentication method and apparatus thereof, and electronic device
Tiloca et al. Axiom: DTLS-based secure IoT group communication
US11616747B1 (en) Systems and methods for multi-agent messaging
US20220158836A1 (en) Fork Processing Method And Blockchain Node
WO2018094677A1 (zh) 低功耗蓝牙ble设备、数据更新***及方法
US20220272511A1 (en) Subscription data management method and apparatus
US20200007660A1 (en) Demand response event dissemination system and method
WO2024001022A1 (zh) 跨子网调用
CN112822177A (zh) 数据传输方法、装置、设备和存储介质
US11695751B2 (en) Peer-to-peer notification system
KR20220074971A (ko) 블록체인 기반 데이터 프로세싱 방법, 장치 및 디바이스, 그리고 판독가능 저장 매체
US20140019763A1 (en) Methods and apparatus for authentication
CN103858389A (zh) 一种传输会话的方法、客户端及Push服务器
CN113034146B (zh) 基于区块链的通信方法、***、电子装置和存储介质
RU2647687C2 (ru) Устройство мониторинга, использующее множество серверов, оптимизированных для разных типов связи
CN116192927A (zh) 基于SaaS服务的数据传输方法、装置、计算机设备和介质
EP3085061A1 (en) Methods, an online object, a web-based message exchange server, a mobile device, a target offline object, a network and a computer program product
US20140280787A1 (en) Auditable distribution of a data file
CN114222290A (zh) 通信方法、装置、设备及存储介质
KR101888952B1 (ko) 클라이언트 및 클라이언트의 동작 방법

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