【技术实现步骤摘要】
一种交易检测方法和装置
本说明书实施例涉及区块链
,更具体地,涉及一种交易检测方法和装置。
技术介绍
区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。由于区块链具有去中心化、信息不可篡改、自治性等特性,区块链也受到人们越来越多的重视和应用。在区块链中执行交易之前,需要对交易进行重放检测,以防止相同的交易被重复执行。在相关技术中,使用单线程对多个交易串行进行重放检测。
技术实现思路
本说明书实施例旨在提供一种更有效的交易检测方案,使得提高对交易的重放检测的效率。为实现上述目的,本说明书一个方面提供一种交易检测方法,包括:获取第一交易的特征信息;获取交易信息集合,所述交易信息集合中的每个交易信息对应的交易都具有所述特征信息;在对于所述交易信息集合中的每个交易信息确定所述第一交易不是重放交易 ...
【技术保护点】
1.一种交易检测方法,包括:/n获取第一交易的特征信息;/n获取交易信息集合,所述交易信息集合中的每个交易信息对应的交易都具有所述特征信息;/n在对于所述交易信息集合中的每个交易信息确定所述第一交易不是重放交易的情况中,将所述第一交易的信息加入所述交易信息集合。/n
【技术特征摘要】
1.一种交易检测方法,包括:
获取第一交易的特征信息;
获取交易信息集合,所述交易信息集合中的每个交易信息对应的交易都具有所述特征信息;
在对于所述交易信息集合中的每个交易信息确定所述第一交易不是重放交易的情况中,将所述第一交易的信息加入所述交易信息集合。
2.根据权利要求1所述的方法,其中,所述交易信息集合为交易链表。
3.根据权利要求2所述的方法,其中,将所述第一交易的信息加入所述交易信息集合包括,将所述第一交易的信息写入到所述交易链表的尾部。
4.根据权利要求3所述的方法,其中,将所述第一交易的信息写入到所述交易链表的尾部包括,通过原子写入操作的方式将所述第一交易的信息写入到所述交易链表的尾部。
5.根据权利要求3或4所述的方法,还包括,在写入失败的情况中,并且在相对于所述交易链表中新增加的交易信息确定所述第一交易不是重放交易的情况中,将所述第一交易的信息写入到所述交易链表的尾部。
6.根据权利要求1-4任一项所述的方法,其中,在获取交易信息集合之后,所述方法还包括,在对所述交易信息集合加读锁之后,读取所述交易信息集合中的交易信息,在对所述交易信息集合读取完成之后,对所述交易信息集合释放读锁。
7.根据权利要求6所述的方法,其中,所述交易信息集合中还包括第二交易的信息,所述方法还包括,在确定所述第二交易为重放交易的情况中,在所述交易信息集合的读锁释放之后,对所述交易信息集合加写锁,从所述交易信息集合删除所述第二交易的信息,在所述删除完成之后对所述交易信息集合释放写锁。
8.根据权利要求6所述的方法,还包括:所述交易信息集合还包括各个交易的接收时间,在所述交易信息集合的读锁释放之后,对所述交易信息集合加写锁,从所述交易信息集合删除接收时间早于预定时间的各个交易的信息,在所述删除完成之后对所述交易信息集合释放写锁。
9.根据权利要求1或2所述的方法,其中,获取第一交易的特征信息包括,通过预定散列函数获取第一交易的特征信息,所述预定散列函数用于将任一交易映射为预定数目的特征信息中的一个特征信息。
10.根据权利要求1或2所述的方法,其中,获取交易信息集合包括,确定特征信息归属表中与所述特征信息对应的位置是否已经写入其它交易的标识,如果确定未写入其它交易的标识,在所述位置写入所述第一交易的标识,并确定所述交易信息集合为空集,如果确定已经写入第三交易的标识,基于所述第三交易与所述交易信息集合的对应关系获取所述交易信息集合。
11.根据权利要求7所述的方法,还包括,在确定所述第二交易为重放交易的情况中,在无效交易表中对所述第二交易进行标记。
12.一种交易检测装置,包括:
获取单元,用于获取第一交易的特征信息,以及用于获取交易信息集合,所述交易信息集合中的每个交易信息对应的交易都具有所述特征信息;
加入单...
【专利技术属性】
技术研发人员:刘晓建,
申请(专利权)人:支付宝杭州信息技术有限公司,蚂蚁区块链科技上海有限公司,
类型:发明
国别省市:浙江;33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。