基于区块链的交易方法及基于区块链的交易系统技术方案

技术编号:21142647 阅读:22 留言:0更新日期:2019-05-18 05:36
本发明专利技术属于区块链技术领域,涉及基于区块链的交易方法及基于区块链的交易系统。该方法包括:各节点将自己的区块链标识和公钥使用自己的私钥签名后广播到区块链中;某交易节点发起一笔交易,采用密钥计算该笔交易的哈希值,并将交易消息与该初次哈希值使用自己的私钥签名后广播到区块链中;其他节点采用与交易节点的共享会话密钥再次计算该笔交易的哈希值,验证初次哈希值与再次哈希值是否相同,并将验证结果使用自己的私钥签名后广播到区块链中;记账节点在交易节点发起交易的预设时间阈值范围内,统计验证结果通过与否的累计数量,根据验证结果为通过的累计数量建立共识机制。其能降低区块链的通信负担和区块的大小,极大提高区块链的传输效率。

【技术实现步骤摘要】
基于区块链的交易方法及基于区块链的交易系统
本专利技术属于区块链
,具体涉及基于区块链的交易方法及基于区块链的交易系统。
技术介绍
区块链(Blockchain)的基本思想是:通过建立一组互联网上的公共账本,由网络中所有的用户共同在账本上记账与核账,来保证信息的真实性和不可篡改性。顾名思义,“区块”链是因为其存储数据的结构是由网络上一个个“存储区块”组成一根链条,每个区块中包含一定时间内网络中全部的信息交流数据。随着时间推移,这条链会不断增长。区块链本质上是一个去中心化的数据库。狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。目前,区块链普遍通过矿工挖矿的方式争夺记账权,这在目前是最公平的方式。矿工为获得挖矿奖励不断的投入资源进行挖矿,这种机制虽然在一定程度上保证区块链的安全性和持续发展,但与此同时旷工投入的资源越来越多,耗费大量的能源投资收益比越来越低。而且,这种耗费大量算力来争夺记账权的方法,由于目前区块链的公钥和签名长度太长,会增加区块链的通信负担和区块的大小,极大降低区块链的传输效率。
技术实现思路
本专利技术所要解决的技术问题是针对现有技术中上述不足,提供一种基于区块链的交易方法及基于区块链的交易系统,降低区块链的通信负担和区块的大小,极大提高区块链的传输效率。解决本专利技术技术问题所采用的技术方案是该基于区块链的交易方法,其包括步骤:各节点将自己的区块链标识和公钥使用自己的私钥签名后广播到所述区块链中;某交易节点发起一笔交易,采用密钥计算该笔交易的哈希值,并将交易消息与该初次哈希值使用自己的私钥签名后广播到所述区块链中;其他节点采用与所述交易节点的共享会话密钥再次计算该笔交易的哈希值,验证初次哈希值与再次哈希值是否相同,并将验证结果使用自己的私钥签名后广播到所述区块链中;记账节点在所述交易节点发起交易的预设时间阈值范围内,统计所述验证结果通过与否的累计数量,并根据所述验证结果为通过的累计数量建立共识机制。优选的是,在某交易节点发起一笔交易之前,还具有步骤:所述区块链中的任一对节点通过非区块链网络的方式进行密钥交换,建立该对节点之间且仅限于该对节点之间的共享会话密钥;包括:第一节点在所述区块链中发送与第二节点进行通信请求,使用所述第二节点的公钥加密获得第一握手密钥;向所述区块链广播包括所述第二节点的区块链标识、以及所述第一节点的非区块链的来源标识、区块链标识和公钥、所述第一握手密钥的广播消息,所述广播消息使用所述第一节点的私钥进行签名;所述第二节点接收所述第一节点的所述广播消息,按照所述第一节点的所述非区块链的来源标识通过对应的所述非区块链网络,向所述第一节点发送使用所述第一节点的公钥加密后的第二握手密钥;所述第一节点通过所述非区块链网络的方式接收所述第二握手密钥,采用自己的私钥对所述第二握手密钥进行解密;所述第二节点通过所述区块链网络的方式接收所述第一握手密钥,采用自己的私钥对所述第一握手密钥进行解密;所述第一节点根据所述第二握手密钥,按照预先规定的算法得到所述第一节点和所述第二节点之间且仅限于该对节点之间的第一会话密钥;以及,所述第二节点根据所述第一握手密钥,按照预先规定的算法得到所述第一节点和所述第二节点之间且仅限于该对节点之间的第二会话密钥。优选的是,所述非区块链的来源标识包括所述第一节点对应的终端的手机号码、在INTERNET网络中的IP地址、邮箱地址中的至少一项;相应的,所述非区块链网络的方式包括通过移动交换网发送短消息或拨打语音电话的方式、通过IP地址P2P发送的方式、通过邮箱地址发送电子邮箱地址的方式。优选的是,在某交易节点发起一笔交易,采用密钥计算该笔交易的哈希值的步骤中,所述交易节点采用自己与其他节点的所述共享会话密钥计算该笔交易的哈希值;或者,所述交易节点采用随机生成的密钥计算该笔交易的哈希值。优选的是,根据所述验证结果为通过的累计数量建立共识机制的步骤中,包括:当所述验证结果为通过的累计数量达到预设共识阈值比例时,将所述交易消息和在所述预设时间阈值范围内的所有验证通过的消息记录于区块链账本中;否则,拒绝将所述交易消息记录于区块链账本中。一种基于区块链的交易系统,其包括广播模块、交易计算模块、交易验证模块、共识建立模块,其中:所述广播模块,配置为供各节点将自己的区块链标识和公钥使用自己的私钥签名后广播到所述区块链中;所述交易计算模块,配置为供某交易节点发起一笔交易,采用密钥计算该笔交易的哈希值,并将交易消息与该初次哈希值使用自己的私钥签名后通过所述广播模块广播到所述区块链中;所述交易验证模块,配置为供其他节点采用与所述交易节点的共享会话密钥再次计算该笔交易的哈希值,验证初次哈希值与再次哈希值是否相同,并将验证结果使用自己的私钥签名后通过所述广播模块广播到所述区块链中;所述共识建立模块,配置为供记账节点在所述交易节点发起交易的预设时间阈值范围内,统计所述验证结果通过与否的累计数量,并根据所述验证结果为通过的累计数量建立共识机制。优选的是,还包括共享会话密钥建立模块,所述共享会话密钥建立模块包括第一加密单元、第二加密单元、第一解密单元、第二解密单元、第一会话密码单元、第二会话密码单元,其中:所述第一加密单元,配置为在第一节点在所述区块链中发送与第二节点进行通信请求时,使用所述第二节点的公钥加密获得第一握手密钥;所述广播模块,配置为向所述区块链广播包括所述第二节点的区块链标识、以及所述第一节点的非区块链的来源标识、区块链标识和公钥、所述第一握手密钥的广播消息,所述广播消息使用所述第一节点的私钥进行签名;所述第二加密单元,配置为在所述第二节点接收所述第一节点的所述广播消息后,按照所述第一节点的所述非区块链的来源标识通过对应的所述非区块链网络,向所述第一节点发送使用所述第一节点的公钥加密后的第二握手密钥;所述第一解密单元,配置为在所述第一节点通过所述非区块链网络的方式接收所述第二握手密钥后,采用自己的私钥对所述第二握手密钥进行解密;所述第二解密单元,配置为所述第二节点通过所述区块链网络的方式接收所述第一握手密钥后,采用自己的私钥对所述第一握手密钥进行解密;所述第一会话密码单元,配置为供所述第一节点根据所述第二握手密钥,按照预先规定的算法得到所述第一节点和所述第二节点之间且仅限于该对节点之间的第一会话密钥;所述第二会话密码单元,配置为供所述第二节点根据所述第一握手密钥,按照预先规定的算法得到所述第一节点和所述第二节点之间且仅限于该对节点之间的第二会话密钥。优选的是,所述非区块链的来源标识包括所述第一节点对应的终端的手机号码、在INTERNET网络中的IP地址、邮箱地址中的至少一项;相应的,所述非区块链网络的方式包括通过移动交换网发送短消息或拨打语音电话的方式、通过IP地址P2P发送的方式、通过邮箱地址发送电子邮箱地址的方式。优选的是,在所述交易计算模块中,所述交易节本文档来自技高网...

【技术保护点】
1.一种基于区块链的交易方法,其特征在于,包括步骤:各节点将自己的区块链标识和公钥使用自己的私钥签名后广播到所述区块链中;某交易节点发起一笔交易,采用密钥计算该笔交易的哈希值,并将交易消息与该初次哈希值使用自己的私钥签名后广播到所述区块链中;其他节点采用与所述交易节点的共享会话密钥再次计算该笔交易的哈希值,验证初次哈希值与再次哈希值是否相同,并将验证结果使用自己的私钥签名后广播到所述区块链中;记账节点在所述交易节点发起交易的预设时间阈值范围内,统计所述验证结果通过与否的累计数量,并根据所述验证结果为通过的累计数量建立共识机制。

【技术特征摘要】
1.一种基于区块链的交易方法,其特征在于,包括步骤:各节点将自己的区块链标识和公钥使用自己的私钥签名后广播到所述区块链中;某交易节点发起一笔交易,采用密钥计算该笔交易的哈希值,并将交易消息与该初次哈希值使用自己的私钥签名后广播到所述区块链中;其他节点采用与所述交易节点的共享会话密钥再次计算该笔交易的哈希值,验证初次哈希值与再次哈希值是否相同,并将验证结果使用自己的私钥签名后广播到所述区块链中;记账节点在所述交易节点发起交易的预设时间阈值范围内,统计所述验证结果通过与否的累计数量,并根据所述验证结果为通过的累计数量建立共识机制。2.根据权利要求1所述的基于区块链的交易方法,其特征在于,在某交易节点发起一笔交易之前,还具有步骤:所述区块链中的任一对节点通过非区块链网络的方式进行密钥交换,建立该对节点之间且仅限于该对节点之间的共享会话密钥;包括:第一节点在所述区块链中发送与第二节点进行通信请求,使用所述第二节点的公钥加密获得第一握手密钥;向所述区块链广播包括所述第二节点的区块链标识、以及所述第一节点的非区块链的来源标识、区块链标识和公钥、所述第一握手密钥的广播消息,所述广播消息使用所述第一节点的私钥进行签名;所述第二节点接收所述第一节点的所述广播消息,按照所述第一节点的所述非区块链的来源标识通过对应的所述非区块链网络,向所述第一节点发送使用所述第一节点的公钥加密后的第二握手密钥;所述第一节点通过所述非区块链网络的方式接收所述第二握手密钥,采用自己的私钥对所述第二握手密钥进行解密;所述第二节点通过所述区块链网络的方式接收所述第一握手密钥,采用自己的私钥对所述第一握手密钥进行解密;所述第一节点根据所述第二握手密钥,按照预先规定的算法得到所述第一节点和所述第二节点之间且仅限于该对节点之间的第一会话密钥;以及,所述第二节点根据所述第一握手密钥,按照预先规定的算法得到所述第一节点和所述第二节点之间且仅限于该对节点之间的第二会话密钥。3.根据权利要求2所述的基于区块链的交易方法,其特征在于,所述非区块链的来源标识包括所述第一节点对应的终端的手机号码、在INTERNET网络中的IP地址、邮箱地址中的至少一项;相应的,所述非区块链网络的方式包括通过移动交换网发送短消息或拨打语音电话的方式、通过IP地址P2P发送的方式、通过邮箱地址发送电子邮箱地址的方式。4.根据权利要求1所述的基于区块链的交易方法,其特征在于,在某交易节点发起一笔交易,采用密钥计算该笔交易的哈希值的步骤中,所述交易节点采用自己与其他节点的所述共享会话密钥计算该笔交易的哈希值;或者,所述交易节点采用随机生成的密钥计算该笔交易的哈希值。5.根据权利要求1所述的基于区块链的交易方法,其特征在于,根据所述验证结果为通过的累计数量建立共识机制的步骤中,包括:当所述验证结果为通过的累计数量达到预设共识阈值比例时,将所述交易消息和在所述预设时间阈值范围内的所有验证通过的消息记录于区块链账本中;否则,拒绝将所述交易消息记录于区块链账本中。6.一种基于区块链的交易系统,其特征在于,包括广播模块、交易计算模块、交易验证模块、共识建立模块,其中:所述广播模块,配置为供各节点将自己的区...

【专利技术属性】
技术研发人员:田新雪肖征荣马书惠
申请(专利权)人:中国联合网络通信集团有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1