基于区块链的数据处理方法、装置、设备以及存储介质制造方法及图纸

技术编号:24466660 阅读:16 留言:0更新日期:2020-06-10 18:49
本申请实施例公开了一种基于区块链的数据处理方法、装置、设备以及存储介质,该方法包括:交易提交节点从交易池获取目标交易数据,并将上述目标交易数据进行压缩得到压缩交易数据;上述交易提交节点将上述压缩交易数据在区块链中进行广播;上述交易提交节点确定上述目标交易数据的交易数据哈希,并将上述目标交易数据的交易数据哈希打包至区块;上述交易提交节点将上述区块进行压缩得到压缩区块,并将上述压缩区块发送至共识节点,以使上述共识节点对上述区块进行验证并在验证通过后将上述区块添加至上述区块链。采用本申请实施例,可提升交易数据的传输速率,减少传输资源消耗,适用性高。

Data processing methods, devices, devices and storage media based on blockchain

【技术实现步骤摘要】
基于区块链的数据处理方法、装置、设备以及存储介质
本申请涉及计算机
,尤其涉及一种基于区块链的数据处理方法、装置、设备以及存储介质。
技术介绍
区块链也被称为分布式账本技术,是一种互联网数据库技术。其特点是去中心化、公开透明,让每个用户均可参与维护数据库记录。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。随着区块链技术在各行各业的应用越来越广泛,区块链节点提交的交易数据的数据量也越来越大,进而带来交易数据传输速率较慢,占用较多的传输资源。因此,如何提升交易数据在区块链中的传输速率成为亟需解决的问题。
技术实现思路
本申请实施例提供一种基于区块链的数据处理方法、装置、设备以及存储介质,可提升交易数据传输速率,提升交易数据处理效率。第一方面,本申请实施例提供一种基于区块链的数据处理方法,该方法包括:交易提交节点从交易池获取目标交易数据,并将上述目标交易数据进行压缩得到压缩交易数据;上述交易提交节点将上述压缩交易数据在区块链中进行广播,以使上述区块链中的其他节点对上述压缩交易数据进行解压缩得到上述目标交易数据;上述交易提交节点确定上述目标交易数据的交易数据哈希,并将上述目标交易数据的交易数据哈希打包至区块;上述交易提交节点将上述区块进行压缩得到压缩区块,并将上述压缩区块发送至共识节点,以使上述共识节点对上述区块进行验证并在验证通过后将上述区块添加至上述区块链。结合第一方面,在一种可能的实施方式中,上述将上述目标交易数据进行压缩得到压缩交易数据包括:上述交易提交节点确定当前待编码字符是否与预设滑动窗口内的已编码字符相匹配,其中,当前待编码字符为上述目标交易数据的第一个待编码字符;若匹配,上述交易提交节点在上述第一个待编码字符之后继续查找最长的匹配字符串,并输出三元符号组(off,len,c),其中off表示上述匹配字符串相对滑动窗的窗口左边界的偏移量,len表示上述匹配字符串的长度,c为与上述匹配字符串相邻的下一个待编码字符;如果未匹配,上述交易提交节点则输出三元符号组(off,len,d),其中d表示上述当前待编码字符;上述交易提交节点将上述预设滑动窗向后移动len+1个字符,继续执行上述确定当前待编码字符是否与预设滑动窗口内的已编码字符相匹配的步骤,直至得到上述目标交易数据对应的多个三元符号组;上述交易提交节点基于哈夫曼编码算法对上述多个三元符号组进行编码得到压缩交易数据。结合第一方面,在一种可能的实施方式中,上述交易提交节点从交易池获取目标交易数据包括:上述交易提交节点每隔预设时间间隔确定交易池中的交易数据数量;当上述交易池中的交易数据数量超过预设数量阈值时,上述交易提交节点从上述交易池中获取与上述预设数量阈值相等的交易数据,并将上述与上述预设数量阈值数量相等的交易数据确定为目标交易数据。第二方面,本申请实施例提供一种基于区块链的数据处理方法,该方法包括:共识节点接收交易提交节点发送的压缩交易数据,上述压缩交易数据由上述交易提交节点对目标交易数据进行压缩后得到;上述共识节点对上述压缩交易数据进行解压缩得到上述目标交易数据;当接收到上述交易提交节点发送的压缩区块时,上述共识节点对上述压缩区块进行解压缩得到区块;上述共识节点确定上述区块中是否存在上述目标交易数据的交易数据哈希;若上述区块中存在上述目标交易数据的交易数据哈希,上述共识节点对上述区块进行验证,并在验证通过后将上述区块添加至区块链。结合第二方面,在一种可能的实施方式中,上述压缩交易数据携带压缩方式标识;上述共识节点对上述压缩交易数据进行解压缩得到目标交易数据包括:上述共识节点根据上述压缩方式标识确定上述压缩交易数据对应的压缩方式;上述交易节点根据上述压缩方式对应的解压缩方式对上述压缩交易数据进行解压缩得到上述目标交易数据。结合第二方面,在一种可能的实施方式中,上述压缩交易数据携带数据校验信息;上述方法还包括:上述共识节点根据上述数据校验信息验证上述目标交易数据是否为完整交易数据;若上述目标交易数据为完整交易数据,上述共识节点则将上述目标交易数据进行存储;若上述目标交易数据为不完整交易数据,上述共识节点则向上述交易提交节点发送第一重传信息以使上述交易提交节点发送第一压缩交易数据。结合第二方面,在一种可能的实施方式中,上述方法还包括:上述共识节点确定上述压缩交易数据是否携带压缩标识,上述压缩标识由上述交易提交节点对上述目标交易数据进行压缩时生成;若确定上述压缩交易数据携带上述压缩标识,上述共识节点则执行上述对上述压缩区块进行解压缩得到区块的步骤,若确定上述压缩交易数据未携带上述压缩标识,上述共识节点则向上述交易提交节点发送第二重传信息以使上述交易提交节点发送第二压缩交易数据。第三方面,本申请实施例提供了一种基于区块链的数据处理装置,该装置包括:第一处理模块,用于从交易池获取目标交易数据,并将上述目标交易数据进行压缩得到压缩交易数据;第一发送模块,用于将上述压缩交易数据在区块链中进行广播,以使上述区块链中的其他节点对上述压缩交易数据进行解压缩得到上述目标交易数据;第二处理模块,用于确定上述目标交易数据的交易数据哈希,并将上述目标交易数据的交易数据哈希打包至区块;第二发送模块,用于将上述区块进行压缩得到压缩区块,并将上述压缩区块发送至共识节点,以使上述共识节点对上述区块进行验证并在验证通过后将上述区块添加至上述区块链。结合第三方面,在一种可能的实施方式中,上述第一处理模块包括:第一确定单元,用于确定当前待编码字符是否与预设滑动窗口内的已编码字符相匹配,其中,当前待编码字符为上述目标交易数据的第一个待编码字符;第一查找单元,用于当匹配时在上述第一个待编码字符之后继续查找最长的匹配字符串,并输出三元符号组(off,len,c),其中off表示上述匹配字符串相对滑动窗的窗口左边界的偏移量,len表示上述匹配字符串的长度,c为与上述匹配字符串相邻的下一个待编码字符;输出单元,用于当未匹配时输出三元符号组(off,len,d),其中d表示上述当前待编码字符;第二查找单元,用于将上述预设滑动窗向后移动len+1个字符,继续执行上述确定当前待编码字符是否与预设滑动窗口内的已编码字符相匹配的步骤,直至得到上述目标交易数据对应的多个三元符号组;第一处理单元,用于基于哈夫曼编码算法对上述多个三元符号组进行编码得到压缩交易数据。结合第三方面,在一种可能的实施方式中,上述第一处理模块包括:第二确定单元,用于每隔预设时间间隔确定交易池中的交易数据数量;获取单元,用于当上述交易池中的交易数据数量超过预设数量阈值时,从上述交易池中获取与上述预设数量阈值相等的交易数据,并将上述与上述预设数量阈值数量相等的交易数据确定为本文档来自技高网...

【技术保护点】
1.一种基于区块链的数据处理方法,其特征在于,所述方法包括:/n交易提交节点从交易池获取目标交易数据,并将所述目标交易数据进行压缩得到压缩交易数据;/n所述交易提交节点将所述压缩交易数据在区块链中进行广播,以使所述区块链中的其他节点对所述压缩交易数据进行解压缩得到所述目标交易数据;/n所述交易提交节点确定所述目标交易数据的交易数据哈希,并将所述目标交易数据的交易数据哈希打包至区块;/n所述交易提交节点将所述区块进行压缩得到压缩区块,并将所述压缩区块发送至共识节点,以使所述共识节点对所述区块进行验证并在验证通过后将所述区块添加至所述区块链。/n

【技术特征摘要】
1.一种基于区块链的数据处理方法,其特征在于,所述方法包括:
交易提交节点从交易池获取目标交易数据,并将所述目标交易数据进行压缩得到压缩交易数据;
所述交易提交节点将所述压缩交易数据在区块链中进行广播,以使所述区块链中的其他节点对所述压缩交易数据进行解压缩得到所述目标交易数据;
所述交易提交节点确定所述目标交易数据的交易数据哈希,并将所述目标交易数据的交易数据哈希打包至区块;
所述交易提交节点将所述区块进行压缩得到压缩区块,并将所述压缩区块发送至共识节点,以使所述共识节点对所述区块进行验证并在验证通过后将所述区块添加至所述区块链。


2.根据权利要求1所述的方法,其特征在于,所述将所述目标交易数据进行压缩得到压缩交易数据包括:
所述交易提交节点确定当前待编码字符是否与预设滑动窗口内的已编码字符相匹配,其中,当前待编码字符为所述目标交易数据的第一个待编码字符;
若匹配,所述交易提交节点在所述第一个待编码字符之后继续查找最长的匹配字符串,并输出三元符号组(off,len,c),其中off表示所述匹配字符串相对滑动窗的窗口左边界的偏移量,len表示所述匹配字符串的长度,c为与所述匹配字符串相邻的下一个待编码字符;
如果未匹配,所述交易提交节点则输出三元符号组(off,len,d),其中d表示所述当前待编码字符;
所述交易提交节点将所述预设滑动窗向后移动len+1个字符,继续执行所述确定当前待编码字符是否与预设滑动窗口内的已编码字符相匹配的步骤,直至得到所述目标交易数据对应的多个三元符号组;
所述交易提交节点基于哈夫曼编码算法对所述多个三元符号组进行编码得到压缩交易数据。


3.根据权利要求1或2所述的方法,其特征在于,所述交易提交节点从交易池获取目标交易数据包括:
所述交易提交节点每隔预设时间间隔确定交易池中的交易数据数量;
当所述交易池中的交易数据数量超过预设数量阈值时,所述交易提交节点从所述交易池中获取与所述预设数量阈值相等的交易数据,并将所述与所述预设数量阈值数量相等的交易数据确定为目标交易数据。


4.一种基于区块链的数据处理方法,其特征在于,所述方法包括:
共识节点接收交易提交节点发送的压缩交易数据,所述压缩交易数据由所述交易提交节点对目标交易数据进行压缩后得到;
所述共识节点对所述压缩交易数据进行解压缩得到所述目标交易数据;
当接收到所述交易提交节点发送的压缩区块时,所述共识节点对所述压缩区块进行解压缩得到区块;
所述共识节点确定所述区块中是否存在所述目标交易数据的交易数据哈希;
若所述区块中存在所述目标交易数据的交易数据哈希,所述共识节点对所述区块进行验证,并在验证通过后将所述区块添加至区块链。


5.根据权利要求4所述的方法,其特征在于,所述压缩交易数据携...

【专利技术属性】
技术研发人员:杨常青周开班时一防朱耿良刘攀刘区城王宗友黄焕坤
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

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

1