一种防止仓单重复转移的方法与流程

文档序号:12306366阅读:728来源:国知局

本发明涉及仓单系统技术领域,具体为一种防止仓单重复转移的方法。



背景技术:

物流仓储是现代物流系统中的关键环节,而仓单是指仓储方签发给存储人或货物所有人的记载仓储货物的惟一合法的物权凭证。仓单是仓储合同存在的证明,是货物所有权、提取仓储物的凭证。此外,按照规则签发的仓单可以作为安全可靠的抵押品,存货所有者可以据此向银行等金融机构贷款。而且,仓单作为有价证券进行交易不仅可以提高交易量,还能降低交易成本;为实现上述功能,必须要求仓单具有有效性、可信性、不可篡改性等高安全等级。在基于区块链的仓单系统中,仓单被制作成转移单(转移单上的接收地址即仓单的新的所有者),并且将转移单记录到区块链中。在区块链技术带来的高安全性、可信性的基础上,还必须解决重复转移问题。一种重复转移的情况是,若用户几乎同时在不同节点上使用某个有效转移单向不同地址转移,此时,由于不同节点独立验证,有可能都满足合法转移单要求,因而都得到转发。另一种重复转移的情况是,用户再次使用一个已经转移的仓单信息,即该仓单已不属于该用户,将其转移给新的接收地址。这些重复转移的问题,都属于用户恶意造假,因而产生了无效转移单。



技术实现要素:

本发明的目的在于提供一种防止仓单重复转移的方法,以解决上述背景技术中提出的问题。

为实现上述目的,本发明提供如下技术方案:一种防止仓单重复转移的方法,包括以下步骤:

a、转移单的验证;转移单由某个节点制作后将向全网进行广播。转移单发出后,与源节点最近的节点首先收到该转移单,然后独立验证该转移单的合法性;

b、若转移单所含仓单未经使用并且各项验证通过,则继续转发该转移单;若仓单已使用,则丢弃该转移单;网络中的区块链节点、区块服务节点、仓单签发节点都可以收到该转移单,验证通过后一面继续转发,一面放到本节点的转移单缓冲池中;

c、选举产生的拥有创建区块权力的节点检查是否存在携带同一仓单但接收地址不同的转移单,保留时间戳较前的转移单,定期将缓冲池中保留下来的转移单装配成区块。

优选的,所述步骤a中独立验证如下内容:转移单的语法和数据结构是否正确;来源转移单是否存在;来源转移单是否经篡改;来源转移单中的仓单是否有效;来源转移单中的仓单是否被转移出去;若转移单所含仓单未经使用,并且各项验证通过,则继续转发该转移单;若仓单已使用,则丢弃该转移单。

优选的,所述步骤c中由选举产生的拥有创建区块权力的节点检查仓单重复转移的步骤如下:

(1)本发明所述区块链为私有区块链,创建区块的节点根据选举产生,且每一时刻只有一个创建区块的节点;

(2)所有转移单最终由创建区块节点检查,若存在将同一仓单发送给不同接收地址的转移单,则保留时间戳较前的转移单,丢弃其他重复使用仓单的转移单,然后定期将缓冲池中保留下来的转移单装配成区块。

与现有技术相比,本发明的有益效果是:由于仓单转让、质押及交易中,都需要将其制作成转移单,并将转移单记录到区块链中,本发明能够防止仓单重复转移,即防止仓单的多次恶意使用,保证了仓单交易的有效性。

具体实施方式

下面对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提供如下技术方案:一种防止仓单重复转移的方法,包括以下步骤:

a、转移单的验证;转移单由某个节点制作后将向全网进行广播。转移单发出后,与源节点最近的节点首先收到该转移单,然后独立验证该转移单的合法性;独立验证如下内容:转移单的语法和数据结构是否正确;来源转移单是否存在;来源转移单是否经篡改;来源转移单中的仓单是否有效;来源转移单中的仓单是否被转移出去;

检查仓单是否被转移出去,即仓单是否已经使用,需要采取以下算法:

(1)遍历区块链,获取仓单所属的用户的所有转移单,包括发送出的和接收的;

(2)检查所有接收转移单是否有对应的发送转移,没有发送转移的视为有效转移单,其中携带的仓单为有效仓单;

(3)检查本次转移的仓单是否属于有效仓单,即是否已被发送转移出去。

通过上述检查,避免了仓单的多次重复使用。

b、若转移单所含仓单未经使用并且各项验证通过,则继续转发该转移单;若仓单已使用,则丢弃该转移单;网络中的区块链节点、区块服务节点、仓单签发节点都可以收到该转移单,验证通过后一面继续转发,一面放到本节点的转移单缓冲池中;

c、选举产生的拥有创建区块权力的节点检查是否存在携带同一仓单但接收地址不同的转移单,保留时间戳较前的转移单,定期将缓冲池中保留下来的转移单装配成区块。

为保证本发明中仓单等信息的高度安全性,本发明的区块链采用了私有链的形式,即产生区块的节点都是本系统内部认证的安全节点。与经典区块链技术不同的是,本发明的创建区块的节点是由选举产生的,并且某一时刻只有一个节点拥有创建区块的权力。

假如,用户有一个合法有效的仓单,但试图进行重复使用。该用户几乎同时在不同节点上构造有效转移单(携带上述合法仓单)向不同地址转移,即重复转移。此时,由于不同节点独立验证,有可能都满足合法转移单要求,因而都得到转发。但是,这些携带相同仓单的转移单都会到达相同的区块构造节点。该节点验证时,选择时间戳较前的转移单保留,另一个则视为非法而丢弃。

由于仓单转让、质押及交易中,都需要将其制作成转移单,并将转移单记录到区块链中,本发明能够防止仓单重复转移,即防止仓单的多次恶意使用,保证了仓单交易的有效性。

尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。



技术特征:

技术总结
本发明公开了一种防止仓单重复转移的方法,包括以下步骤:A、转移单的验证;B、若转移单所含仓单未经使用并且各项验证通过,则继续转发该转移单;若仓单已使用,则丢弃该转移单;C、选举产生的拥有创建区块权力的节点,检查是否存在携带同一仓单但接收地址不同的转移单,保留时间戳较前的转移单。由于仓单转让、质押及交易中,都需要将其制作成转移单,并将转移单记录到区块链中,本发明能够防止仓单重复转移,即防止仓单的多次恶意使用,保证了仓单交易的有效性。

技术研发人员:杨波;王文奇
受保护的技术使用者:深圳前海华深安信物联技术有限公司
技术研发日:2017.06.26
技术公布日:2017.10.27
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1