【技术实现步骤摘要】
基于区块链的交易验证方法、装置及区块链系统
[0001]本申请涉及金融领域和区块链
,具体涉及基于区块链的交易验证方法、装置及区块链系统。
技术介绍
[0002]目前区块链中一般使用梅克尔证明方法进行交易的有效性验证,即给定梅克尔路径,并根据梅克尔路径逐层两两计算交易的哈希值得到梅克尔树根。梅克尔树根记录在区块链节点的区块头中。当轻节点需要证明某笔交易确实存在于区块链节点中时,全节点只需要给出梅克尔树上的梅克尔路径,再由轻节点按照给出的梅克尔路径重新算一遍哈希得到梅克尔树根,当校验得到的梅克尔树根和区块头中存储的梅克尔树根一致时,说明该笔交易确实存在。
[0003]梅克尔证明的优点是能减轻轻节点的存储压力和通讯开销,提高支付验证速度。但梅克尔证明也存在一个局限,即若全节点恶意返回交易不存在,则全节点不会给出梅克尔路径,此时轻节点无法判定交易是否确实不存在。即梅克尔证明只能验证肯定性命题,不能验证否定性命题。
技术实现思路
[0004]为了解决现有技术中的问题,本申请提供基于区块链的交易验证方法、 ...
【技术保护点】
【技术特征摘要】
1.一种基于区块链的交易验证方法,其特征在于,包括:向待验证交易对应的全节点发送交易验证请求;接收所述全节点根据所述交易验证请求返回的交易验证信息,所述交易验证信息包括待验证交易对应的布隆过滤器位图、布隆过滤器哈希方法、梅克尔树根以及梅克尔路径结果;根据所述布隆过滤器哈希方法以及所述布隆过滤器位图得到所述待验证交易对应的布隆过滤器验证结果;根据所述梅克尔路径结果以及所述梅克尔树根得到所述待验证交易对应的梅克尔证明结果;根据所述布隆过滤器验证结果以及所述梅克尔证明结果得到所述待验证交易对应的交易验证结果。2.根据权利要求1所述的基于区块链的交易验证方法,其特征在于,所述根据所述梅克尔路径结果以及所述梅克尔树根得到所述待验证交易对应的梅克尔证明结果,包括:判断所述梅克尔路径结果中是否存在梅克尔路径;若梅克尔路径不存在,所述梅克尔证明结果为交易不存在;若梅克尔路径存在,则根据所述梅克尔路径计算所述待验证交易对应的哈希值;根据所述哈希值与所述梅克尔树根是否一致获取所述克尔证明结果;若一致,则所述梅克尔证明结果为交易存在;若不一致,则梅克尔证明结果为交易不存在。3.根据权利要求2所述的基于区块链的交易验证方法,其特征在于,所述根据所述布隆过滤器哈希方法以及所述布隆过滤器位图得到所述待验证交易对应的布隆过滤器验证结果,包括:根据所述布隆过滤器哈希方法对所述待验证交易进行哈希运算,得到所述待验证交易对应的布隆过滤器位图值;根据所述布隆过滤器位图值以及所述布隆过滤器位图得到所述待验证交易对应的布隆过滤器验证结果。4.根据权利要求3所述的基于区块链的交易验证方法,其特征在于,所述根据所述布隆过滤器位图值以及所述布隆过滤器位图得到所述待验证交易对应的布隆过滤器验证结果,包括:将所述布隆过滤器位图值以及所述布隆过滤器位图进行按位与计算,得到按位与结果;判断所述按位与结果与所述布隆过滤器位图是否一致;若一致,则所述布隆过滤器验证结果为交易存在;若不一致,则所述布隆过滤器验证结果为交易不存在。5.根据权利要求4所述的基于区块链的交易验证方法,其特征在于,所述根据所述布隆过滤器验证结果以及所述梅克尔证明结果得到所述待验证交易对应的交易验证结果,包括:若所述梅克尔证明结果及所述布隆过滤器验证结果均为交易存在,则所述交易验证结果为交易存在;若所述布隆过滤器验证结果为交易不存在,则所述交易验证结果为交易不存在。
6.根据权利要求4所述的基于区块链的交易验证方法,其特征在于,所述根据所述布隆过滤器验证结果以及所述梅克尔证明结果得到所述待验证交易对应的交易验证结果,还包括:若所述布隆过滤器验证结果为交易存在且若所述梅克尔证明结果为交易不存在,则根据所述布隆过滤器验证结果以及所述梅克尔证明结果确定所述布隆过滤器的实际误判率;根据所述实际误判率以及所述布隆过滤器的理论误判率确定所述全节点是否可信;若可信,所述交易验证结果为交易不存在;若不可信,所述交易验证结果为交易存在。7.根据权利要求6所述的基于区块链的交易验证方法,其特征在于,所述根据所述布隆过滤器验证结果以及所述梅克尔证明结果确定所述布隆过滤器的实际误判率,包括:统计所述布隆过滤器的成功次数和误判次数,其中,所述成功次数为所述梅克尔证明结果与所述布隆过滤器验证结果均为交易存在的次数,所述误判次数为所述梅克尔证明结果为交易不存在,且所述布隆过滤器验证结果为交易存在的次数;计算所述误判次数与成功次数的比值,得到所述布隆过滤器的实际误判率。8.根据权利要求6所述的基于区块链的交易验证方法,其特征在于,所述根据所述实际误判率以及所述布隆过滤器的理论误判率确定所述全节点是否可信,包括:当所述实际误判率大于所述理论误判率时,所述全节点不可信,否则所述全节点可信。9.一种基于区块链的交易验证方法,其特征在于,包括:接收轻节点发送的待验证交易对应的交易验证请求;根据所述交易验证请求生成交易验证信息,并将所述交易验证信息返回至所述轻节点,以使所述轻节点根据所述交易验证信息中的布隆过滤器哈希方法、布隆过滤器位图、梅克尔路径结果以及梅克尔树根...
【专利技术属性】
技术研发人员:林嘉文,陈金娣,黄剑,杨浩圆,
申请(专利权)人:中国工商银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。