智能跟踪器和产品溯源系统的制作方法

文档序号:21829579发布日期:2020-08-11 21:55阅读:205来源:国知局
智能跟踪器和产品溯源系统的制作方法

本发明涉及电子设备技术领域,特别是涉及一种智能跟踪器和产品溯源系统。



背景技术:

签名/验证是非对称加密技术的一个重要功能。生成一对公私密钥,以私钥签名的数据可以使用对应的公钥验证,验证通过即可确认此签名是由与此公钥对应的私钥所签,以此作为私钥持有者认可被签名数据的证据。

区块链是一种防止篡改数据的技术,可以对一组分为多次添加的数据提供验证。每次向区块链的最末端添加区块时,在新的数据区块中加入前一个区块的哈希值,共同作哈希运算后得到本块的哈希值,新区块就添加好了。要添加下一个区块时同样要向数据区块中加入本区块的哈希值。哈希值可以验证哈希运算的输入数据,当输入数据包含了上一个区块的哈希值,就可以验证上一个区块的哈希运算输入数据,同理可以验证上上个区块的哈希值……如此一直上溯到根区块,可以验证整条区块链上每个区块的输入数据。假如这条链上任何一个区块中的数据或哈希值遭到篡改,重作哈希运算时,得出的哈希值就会与下一个区块中早已保存的哈希值不同,算到最末一个区块,所得的哈希值就会与先前保存的哈希值不同,验证者由此可以发现数据被篡改了。

区块链包括公有与私有。公有区块链的特点是人人都有权添加区块,在每次添加之前要通过共识算法确定谁可以真正添加,而私有区块链的每个区块只有少数人有权添加,无须与公众竞争。公有区块链必须放在人人都可访问的互联网上,私有区块链除放在互联网上之外也可以放在某个私密空间,仅允许少数人访问。

产品溯源是区块链的一个常见应用。消费者通常无法直接从生产商手中购买产品,须经过一级或多级经销商的转手才能买到。则消费者难以确认买到的产品是否由预期的生产商生产。有了区块链之后,可以利用区块链的防篡改功能实行产品溯源,生产商首先将产品生产的信息记在区块链上,之后各级经销商也将买入与卖出产品的信息记在区块链上,至消费者购买时,从区块链上可以查到这件产品的整个历史。表面上看解决了溯源问题,但实际上由于线上与线下操作不同步,无法确定消费者买到的产品是不是区块链上记录的那一件。例如,如果有人用假货将真货换走了,不更新区块链上的数据,消费者就无法单从区块链数据上识破。

加入rfid技术可以在一定程度上改善区块链溯源的效果。rfid通过在产品上安装一个微小芯片,可通过无线接口读取芯片上的数据,数据中含有惟一的uid,由此可以确定芯片的身份,进而确定产品的身份。rfid主要的不足在于,芯片无法感知自身与产品的连接情况,如果有人用假货换走真货,再将真货上的rfid芯片拆下来安装到假货上,芯片和区块链都会对此一无所知。rfid的另一个问题是不能自动结束任务,对于产品溯源的应用,rfid应该在用户购买产品之后失效,但它无法获知任务已结束,如果用户购买服装或者随身物品之后没有自行拆除rfid芯片,芯片照旧工作,则用户出门时可能被广泛存在于各处的读取器获得他的行踪,存在暴露隐私的风险。



技术实现要素:

本发明的目的是针对现有技术的不足,提供一种智能跟踪器和产品溯源/可信物流系统,帮助消费者实现对产品的可靠的溯源和运输。

为解决上述技术问题,本发明提供以下技术方案:

本技术方案的主旨是为目标产品提供一个可信的跟踪器,保证网上的产品溯源数据与网下的产品准确对应。从生产时即令目标产品与智能跟踪器连接在一起,当消费者取得相连接的目标产品与智能跟踪器,只要能够验证智能跟踪器真实且状态正常,即可相信与之相连的目标产品的真实性。

首先是一种智能跟踪器,包括约束体和智能锁,所述智能锁能控制所述智能跟踪器能否与目标产品连接或分离。所述智能跟踪器的工作状态包括备用状态、闭合状态、完成状态、失败状态。当所述智能跟踪器在任务流程之内处于闭合状态时,如果所述智能跟踪器的所述约束体开启,则所述智能跟踪器离开闭合状态,进入完成状态或失败状态,且无法再回到闭合状态。所述智能跟踪器能输出自身的身份标识和状态。

所述约束体是所述智能跟踪器与目标产品连接所用的组件,包括传感器。依目标产品的不同性状,约束体可以有多种形制和尺寸。

所述传感器可以是气压检测器、气体成分检测器、电信号检测器、机电检测器等,能感知所述约束体被打开。

所述智能锁用于控制所述约束体的开闭。当智能锁处于开启状态,可以令目标产品与所述智能跟踪器连接或者分离。当智能锁处于关闭状态,在不损坏目标产品与所述智能跟踪器的条件下不可令目标产品与所述智能跟踪器连接或者分离。智能锁由开启状态到关闭状态的动作为上锁,由关闭状态到开启状态的动作为开锁。

对于任意形状的目标产品,都可以使用包装容器式的约束体,如图2,具体可以是盒状、袋状、瓶状、网状、笼状等,将目标产品装进包装容器式约束体并上锁,目标产品就与所述智能跟踪器连接在一起,可以确保在不损坏目标产品与智能跟踪器的条件下,直到开锁为止,已连接的目标产品与智能跟踪器不会分离。

如果目标产品具有特定形状,也可以使用更小的约束体。例如对于含有环形或哑铃形结构的目标产品,约束体可以是线形(例子之一形似链条锁)。如图2,以线形约束体穿过目标产品的环形结构,绕回并锁定。或者以线形约束体环绕目标产品的哑铃形结构的颈部并锁定。此后目标产品与所述智能跟踪器连接在一起,直到开锁为止,可以确保在不损坏目标产品与智能跟踪器的条件下,目标产品与智能跟踪器不会分离。

如图9,所述智能锁在逻辑上的功能模块包括处理器、存储器和数据接口,在物理上可以集成在同一个芯片里。智能锁能接收并处理外界输入的数据。数据接口可以是各种互联网/局域网接口、各种有线接口、基于电磁波的各种无线接口、触摸屏接口、按键/键盘输入接口、指示灯输出接口、显示屏输出接口、光通信接口、声音接口等。所述智能锁处理外界输入的数据的方法包括签名/验证。

所述智能锁的供电方式可以是内置电源供电或外界电源供电。内置电源可以用电池供电、机械供电、电容器供电、光照供电、化学供电、温差供电、核能供电等。外界电源可以用有线供电、无线供电、机械供电、光照供电、化学供电、温差供电、核能供电等。

根据安全需要,每个所述智能锁对应至少一对公、私密钥,能用于签名/验证运算。其中公钥是对外公开的,可以作为所述智能跟踪器的身份标识,私钥私密保存在智能锁内。

所述智能跟踪器包括四种工作状态,以下用数字0、1、2、-1表示。状态之间的转换关系如图1所示,每个任务流程由0状态开始,其后转换关系如下:

0:备用状态。此时智能锁开启。若连接目标产品并上锁,即进入1状态。

1:闭合状态。此时智能锁关闭。若满足开锁条件即开锁,进入2状态;若未开锁而约束体被打开,即进入-1状态。

2:完成状态。此时智能锁开启。

-1:失败状态。此时智能锁开启与关闭皆可。

所述智能跟踪器的一个任务流程是:目标产品的生产商用一个处于备用状态的智能跟踪器连接目标产品,上锁,令所述智能跟踪器进入闭合状态,所述智能跟踪器与所述目标产品连接在一起。此后生产商将连接了智能跟踪器的目标产品出售给经销商,经销商可能会出售给其他经销商,直到某一级的经销商出售给消费者。消费者检验智能跟踪器的身份与状态,只接受处于闭合状态且未见损坏的智能跟踪器,若检验通过则相信与所述智能跟踪器连接的目标产品的真实性。在上述从生产商到消费者的流通过程中,相连的目标产品与智能跟踪器只有两种可能分离的情况:

1、开锁。此后所述智能跟踪器进入完成状态,在本任务流程之内不能回到闭合状态,造假者无法再将此智能跟踪器连接在假货上去欺骗消费者。

2、不开锁,强行分离。如此必定会损坏目标产品或智能跟踪器。智能跟踪器感知受损则进入失败状态,在本任务流程之内不能回到闭合状态,造假者无法将此智能跟踪器连接在假货上去欺骗消费者。

完成状态与失败状态都是任务流程的终点,至此不能再进入其它状态。如果有重用智能跟踪器的需求,可以由上锁者或智能跟踪器的生产者重置,开启下一个任务流程,不属于当前任务流程。

综上所述,经销商或其他人无法不留痕迹地将智能跟踪器连接的真货换成假货。

目标产品的每一次状态改变,特别是控制人的改变,都记录在区块链上。所述区块链可以是以下三种之一:

第一种是公有区块链,特点是区块按时添加,所有人都有权添加区块,每次添加时依据既定算法(通常是pow或pos)决定谁添加的区块有效,每个区块里可能包括多个智能跟踪器的数据,也可能包括与智能跟踪器无关的其它数据。

第二种和第三种都属于私有区块链,特点是区块按需添加,只有特定的人有权添加区块,其他人只能读。有权添加不同种类区块的人可以不同。每条私有区块链只记录一个智能跟踪器的数据。

第二种区块链与第一种同样外置在互联网上,任何人随时都能访问,二者统称为外置区块链;第三种区块链内置在智能锁里,只有正在与智能锁通信者可以访问,称为内置区块链。

本发明使用公有区块链的方式与现有技术相同。使用第二种和第三种区块链的方式详述如下:

如图3,为每个智能跟踪器单独创建一条区块链。对于可多次使用的智能跟踪器,也可以对它的每个任务流程单独创建一条区块链。第二种区块链外置于互联网上,第三种内置于智能锁里。在生产商为产品连接上智能跟踪器并上锁时,由生产商向所述区块链添加上锁区块,表示一个任务流程开始,在上锁区块中记录产品信息和生产商的公钥。生产商是产品最初的控制人。

每次只有控制人有权添加任务流程内区块。所述任务流程内区块包括上锁区块、变更控制人的区块以及其它记录产品状态变更的区块等,不包括重置区块和结束区块。重置区块和结束区块的添加者始终是所述产品的生产商(上锁者)或所述智能跟踪器的生产者。

在添加区块时,添加者通过对区块作签名证明自己的身份。当前的控制人可以通过添加区块将控制人变更为其他人:在生产商将所述产品交给经销商时,向所述区块链添加区块,在区块中写明将控制人变更为经销商,所述区块中应包含经销商的公钥和生产商的签名。生产商也可以将上锁区块与变更控制人的区块的内容合并成一个区块,一同添加。所述区块添加后,所述区块链的控制人就由生产商变成了经销商,只有经销商有权添加下一个任务流程内区块。

同样地,在经销商将所述产品交给经销商2时,也向所述区块链添加区块,表明将控制人变更为经销商2。只要此区块有经销商的签名,控制人即可由经销商变成经销商2,只有经销商2有权添加下一个任务流程内区块。

产品的每一次控制权转移都通过添加区块记录在区块链上。到某级经销商将产品交给消费者时,也向所述区块链添加区块,表明将控制人变更为消费者。

如上所述,在每条第二种或第三种区块链上,每一个任务流程内区块的添加者都是添加前的目标产品控制人。除了最初的控制人以外,所有控制人的公钥都记录在前一个用于变更控制人的区块中。从根区块一路验证下来,能够得知当前的控制人是谁。目标产品控制人也是所述区块链的控制人。如果任务流程内区块的添加者是当前的控制人则接受新区块,否则拒绝。判断是否接受新加区块的步骤如图7,包括:

1、从所述第二种或第三种区块链的任务流程开始区块(上锁区块)读取每个任务流程的第一个控制人;

2、从所述第二种或第三种区块链的任务流程开始区块往下,对于每个变更所述区块链的控制人的区块,若此区块经过当前控制人签名则变更控制人。

3、至所述区块链末尾,若所述任务流程内区块的添加者为当前控制人,则接受新区块,否则拒绝新区块。

特别是,当一个合法控制人通过添加区块将控制权交给他人之后,如果试图再添加一个任务流程内区块,由于他已不是控制人,新加的区块无效。

在消费者获得所述连接了智能跟踪器的目标产品之后,可通过电脑或手持设备或智能跟踪器自带的输入设备向智能跟踪器输入数据以作检验。智能跟踪器以签名方式证明自己的身份,比rfid直接输出uid更难仿冒。

消费者要对产品和智能跟踪器作两方面的检验:

1、检查产品是否完好,智能跟踪器是否完好且处于闭合状态;

2、检验智能跟踪器是否由消费者预期的生产商上锁。

上述第2方面的检验要求智能跟踪器通过输出数据表明自身身份,可能涉及密码算法,有多种设计方式,一种典型的方法是检验两方面的数据:

2.1、消费者接收智能锁对一组数据的签名,再以所述智能锁标识的公钥验证签名结果,验证通过即可确认所述智能锁的公钥。

2.2、消费者以所述智能锁的公钥向生产商或区块链查询,检查其对应的智能跟踪器是否由预期的生产商上锁。

若上述检验都通过,消费者可以确信产品为真。然后进入开锁流程。

对于只考虑防伪(消费者信任产品)的简单情况,处于闭合状态的智能跟踪器可以由任何人开锁。只要保证开锁后的智能跟踪器不能回到闭合状态,就不会害他人被假货欺骗。但出于其它因素的考虑,消费者也要向智能锁证明自己是合法的开锁者。所述其它因素包括:

1、需要完整统计产品的销售使用历程数据,要获取消费相关信息;

2、防止消费者以外的人随意开锁影响产品销售。

显而易见地,本技术方案除了用于产品溯源,也适用于邮寄等需要可信物流的业务。发件人将智能跟踪器与邮件连接再发出去,通过智能跟踪器确保收件人收到的就是发件人发出的邮件,不会在中途被掉换。在此场景下,为了让发件人确认邮件已达,收件人有必要向智能锁证明自己是合法的开锁者。

下文中,可以将产品溯源业务中的角色名称替换为可信物流中的角色名称。角色名称的对应关系为:

生产商(产品溯源)-发件人(可信物流);

经销商(产品溯源)-承运人(可信物流);

消费者(产品溯源)-收件人(可信物流)。

进一步地,当所述智能跟踪器处于闭合状态时,能通过与外界交换数据判断是否开锁。

消费者向所述智能跟踪器的智能锁输入能证明自己是合法开锁者的数据。智能锁收到数据,验证通过后即开锁,让消费者可以解除目标产品与智能跟踪器的连接。开锁后所述智能跟踪器进入完成状态。

智能锁对消费者(数据输入者)的验证可能涉及密码算法,可以有多种设计方式,举例如下:

方法一,如图4,包括以下步骤:

步骤1.1:接收所述数据输入者输入的经过上锁者签名的开启指令;

步骤1.2:验证所述签名,若验证成功,则开锁。

对于产品溯源业务,上锁者是生产商,开锁者是消费者。数据输入者应当先取得经过上锁者签名的开启指令,以证明自己是上锁者认可的开锁者。数据输入者访问上锁者的服务器,提出签名请求,上锁者接到数据输入者的请求后,通过外置区块链上的记录判断数据输入者是否合法的开锁者,若是即提供经过签名的开启指令,由数据输入者输入智能锁。智能锁以上锁者的公钥验证开启指令,通过则开锁。

这种方法只发送一次数据,有遭到中间人攻击的隐患:如果攻击者挡在数据输入者与智能锁之间,阻断并保存数据输入者向智能锁发送的数据,等数据输入者离开后再用保存的开锁数据开锁,即可窃取产品。

为防止中间人攻击,所述开启指令中应包含由数据输入者或上锁者设定的时间戳,智能锁要检验所述时间戳是否符合智能锁内系统时钟的时间,若两个时间差距较大即认为遭到攻击,拒绝开锁。这种方式必须保证智能锁与上锁者/数据输入者有同步的系统时钟。如果难以保证时钟同步,可以用下面的方法二。

方法二,如图5,包括步骤2.1和步骤2.2:

步骤2.1:执行以下两方面的操作。这两方面操作的次序可以互换,图5的流程是多种可用的次序之一:

第一方面是智能锁接收所述数据输入者的公钥和上锁者对此公钥的签名。

与方法一相似,上锁者通过外置区块链上的记录判断数据输入者是否合法的开锁者,若是则提供签名。

第二方面是智能锁接收所述数据输入者对一组数据的签名。

具体操作可以是,智能锁将一组数据发给数据输入者,数据输入者对所述数据签名并将签名发送到智能锁。

为防范中间人攻击,智能锁应在发送前对所述数据签名,数据输入者验证智能锁的签名通过后,再对所述数据签名并发送到智能锁。

为防范中间人攻击,智能锁从发出数据到接收数据应在正常时间内完成,正常时间一般在2秒之内。如果智能锁在发出数据之后过长时间才收到期待的数据,应考虑受到中间人攻击的风险,拒绝开锁。

步骤2.2:智能锁用所述上锁者的公钥验证所述第一方面接收的签名,用所述数据输入者的公钥验证所述第二方面接收的签名,若两个验证都通过则开锁。

用这种方式,智能锁内部无须保证系统时钟与上锁者/数据输入者同步,只要能记录从输出数据到输入数据之间的时长就能有效避免中间人攻击。

上述两种方法有个共同点,数据输入者在开锁前需要取得上锁者的签名。当数据输入者较多,会对上锁者的服务器构成性能的压力,上锁者一旦宕机将无法完成开锁。要避免这个问题,可以用下面的方法三。

方法三,如图6,包括步骤3.1和步骤3.2:

步骤3.1:智能锁获得两方面的数据。获得这两方面数据的次序可以互换,图6的流程是多种可用的次序之一。

第一方面,智能锁接收数据输入者对一组数据的签名。

具体操作可以是:智能锁将一组数据发给数据输入者。数据输入者对所述数据签名并将签名发送到智能锁。

为防范中间人攻击,智能锁应在发送前对所述数据签名,数据输入者验证智能锁的签名通过后,再对所述数据签名并发送到智能锁。

为防范中间人攻击,智能锁从发出数据到收到数据应在正常时间内完成,正常时间一般在2秒之内。如果智能锁在发出数据之后过长时间才收到期待的数据,应考虑受到中间人攻击的风险,拒绝开锁。

第二方面,智能锁由区块链的记录读取合法开锁者的公钥。

所用的区块链可以是三种区块链中的任意一种。外置区块链的数据可以由数据输入者输入智能锁,在智能锁能上网的条件下也可由智能锁自己上网读取。如果使用公链,由于一次任务流程时间较长,其间添加的公链区块较多,需要验证的区块数量和数据量都会很大,对智能锁的硬件性能要求较高。而使用第二种或第三种区块链可以避免这个问题。

对于第二种或第三种区块链,可通过以下步骤读取合法开锁者的公钥:

一、由上锁区块读取最初的控制人;

二、依次检查每个变更控制人的区块,若有变更之前的控制人的签名则变更控制人;

三、至区块链尾,当前的控制人即是合法开锁者。

步骤3.2:智能锁通过第一方面接收的签名和第二方面读取的公钥判断所述数据输入者是否所述合法开锁者,若是则开锁。具体操作可以是:

1、智能锁用所述合法开锁者的公钥验证所述数据输入者对所述数据的签名,若通过则开锁。否则说明数据输入者不是合法开锁者。

2、智能锁先接收所述数据输入者输入的公钥,判断所述公钥是否与合法开锁者的公钥相同,并以所述数据输入者输入的公钥验证所述数据输入者对所述数据的签名,若验证通过且所述数据输入者输入的公钥确为合法开锁者的公钥则开锁。

方法一与方法二都是由上锁者通过外置区块链上的记录判断数据输入者是否合法的开锁者,方法三将此判断移到智能锁中执行,无需上锁者参与,可以随时执行开锁。如果使用第一种区块链,由于其区块是按时添加,产品从上锁到开锁可能跨越几个月甚至几年的时间,涉及的公链区块数很多,要验证这些区块,对智能锁的计算、存储、通信三方面的性能要求都很高。使用第二种或第三种区块链的情况,如果产品经过两级经销商后来到消费者手中,大概只需要四个区块,每个区块大概只有几百个字节,对智能锁的计算、存储、通信能力的要求都较低。

显而易见地,上面描述的三种方法是智能锁验证消费者的一些典型方法,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以在这些方法的基础上经过微小改动获得更多的方法。

开锁成功后,所述智能跟踪器进入完成状态,消费者可以令它与目标产品分离。在此后使用目标产品的过程中,不会暴露消费者的隐私。而且,在当前任务流程内,智能跟踪器无法从完成状态回到闭合状态,所以智能跟踪器也不会被造假者回收之后用于造假。

如果开锁失败,则所述智能跟踪器仍保持在闭合状态。

进一步地,当所述智能跟踪器处于闭合状态,若所述智能跟踪器检测到自己的约束体被外力强行打开,则所述智能跟踪器进入失败状态。

当所述智能跟踪器处于闭合状态,如果所述智能跟踪器的约束体被外力强行打开,即所述智能跟踪器未经开锁而被与目标产品强行分离,则目标产品可能被取走或替换,不能再保证溯源安全。所述智能跟踪器应进入失败状态,消费者读取到失败状态,即知道目标产品的溯源记录不可信任。

所述智能跟踪器应能检测到其约束体被打开。检测方法可以是物理方法、化学方法和电子方法。

物理方法的例子:在封闭的包装容器式约束体内设置气压检测器,并充入高压气体,密封约束体。当约束体被打开,气压检测器检测到气压降低,所述智能跟踪器即获知约束体被打开。

化学方法的例子:在封闭的包装容器式约束体内设置气体成分检测器,并充入特定成分的气体,密封约束体。对每个约束体充入的气体成分可以不同。当约束体被打开,气体成分检测器检测到气体成分改变,所述智能跟踪器即获知约束体被打开。检验步骤如下:

1、向内置气体成分检测器的容器(容器式约束体)内充入一种气体或多种气体的混合物,封闭所述容器(容器式约束体),以所述气体或气体混合物的成分比例为标准值;

充入的气体成分比例应与空气不同。

2、若检测到所述容器(容器式约束体)内的气体成分比例偏离标准值或由标准值计算所得的预期值,则判定所述容器(容器式约束体)开启。

可以对每件容器充入不同成分比例的气体。也可以对充入气体的成分比例施加随机调节,则只有内置的气体成分检测器能获得气体成分比例的标准值,攻击者不掌握标准值,无法通过制造同样气体成分的环境以避免打开容器被发现。显然,这种方法除了用于所述智能跟踪器,也可用于检测其它密封容器的开启/泄漏。

如果充入的多种气体能发生化学反应,则应根据反应条件与时间,计算出包括初始气体和反应产物的合理预期值。由检测值与预期值的偏离情况判断所述容器开启。

上述物理方法与化学方法可以结合在一起使用。

电子方法的例子之一:在线形约束体中设置一根导线,当约束体被外力切断,导线不能导通,所述智能跟踪器即检测到约束体被打开。

电子方法的例子之二:适用于带有导体网结构的约束体。金属笼/网状约束体本身就是导体网。对于绝缘体构成的约束体,可通过向约束体容器壁上粘贴金属箔构造导体网,或者以导电油墨绘制导体网,须保证当约束体被打开,会改变导体网的等效电路。如图8,导体网可以等效成一个由众多电阻器连接成的网状电路,也可能含有电容器或电感器的等效组件。在导体网上选定输入点和输出点,由输入点输入一种电信号,则输出点会输出特定波形的电信号。输出的波形与输入波形、输入输出点的位置及导体网电路属性有关。上锁后保持输入点和输出点不变,周期性地输入相同的电信号,检查输出电信号的波形。若约束体被打开,则导体网的部分线路被切断,或者原本不相连的线路被导通,造成输出波形发生改变。检测到输出波形改变,所述智能跟踪器即可获知约束体开启。步骤如下:

1、在导体网上确定输入点与输出点,向输入点输入电信号1,以输出点输出的电信号为标准波形;

2、向输入点输入与电信号1相同的电信号,若检测到输出点输出的电信号不同于所述标准波形,则判定所述容器开启。

为达到更好效果,可以向金属笼上的一些交叉点内插入薄片状的绝缘体,如图8,使这些交叉点上原本直接接触导通的两根金属丝不再导通,变成中间通过电容器相连的等效结构。以此方式可以令每件约束体都具有独特的电路属性。出于同样目的,也可以向各种导体网上添加电子元器件。显然,这种方法除了用于所述智能跟踪器,也可用于检测其它带有导体网结构的容器的开启。

检测方法也可以是其它方法。通过上述检测方法,可以保证如有攻击者未经开锁而强行打开约束体窃取/掉换产品,即使事后将约束体恢复原状,消费者仍可通过智能跟踪器的状态异常发现此次攻击。

所述智能跟踪器进入完成状态或失败状态都表示此次任务流程结束,不再应答对智能跟踪器身份的查询,则即使消费者没有移除产品上的智能跟踪器,也不会暴露隐私。

进一步地,在所述智能跟踪器处于闭合状态、完成状态或失败状态时,本次任务的上锁者或所述智能跟踪器的生产者能将所述智能跟踪器重置为备用状态。

所述智能跟踪器能重复使用以降低成本。在每一次任务流程结束,进入完成状态或失败状态后,如果收到上锁者或所述智能跟踪器的生产者发出的重置命令,即可恢复到备用状态,开始下一个任务流程。此外,在智能跟踪器与目标产品连接错误,或者目标产品损坏、过期无法销售而需要回收智能跟踪器的情况下,上锁者或所述智能跟踪器的生产者同样可将智能跟踪器从闭合状态重置为备用状态。每次重置结束当前任务流程,开启新的任务流程。

如果所述智能跟踪器使用第二种或第三种区块链,重置操作对区块链的处理可以是以下两种:

1、在所述智能跟踪器处于闭合状态、完成状态或失败状态时,重置者(上锁者或所述智能跟踪器的生产者)有权重置。重置者在原来的第二种或第三种区块链上添加重置区块,表示结束前一任务流程。之后可以由下一个任务流程的上锁者添加开始任务流程的区块。这种方式是把同一智能跟踪器的不同任务流程记在同一根区块链上。

2、开始下一个任务流程时由上锁者重建一根第二种或第三种区块链,并由重置者向旧的区块链上添加结束区块,表示旧的任务流程结束。每根第二种或第三种区块链对应一个单独的任务流程。

综合在一起,本发明提供一种产品溯源系统,包括所述智能跟踪器和区块链。

所述区块链包括三种,第一种是公有区块链,放在互联网上;第二种是放在互联网上的私有区块链;第三种是放在智能跟踪器里的私有区块链。

生产商为产品连接智能跟踪器,经过一个或多个经销商销售给消费者。若消费者获得产品时,产品与智能跟踪器未损坏,且智能跟踪器处于闭合状态,可以确认此产品从上锁以来未曾与智能跟踪器分离,只要再验证智能跟踪器的上锁者确为生产商,即可放心购买。

同样地,本发明提供一种可信物流系统,包括所述智能跟踪器和区块链。

所述区块链包括三种,第一种是公有区块链,放在互联网上;第二种是放在互联网上的私有区块链;第三种是放在智能跟踪器里的私有区块链。

发件人为货物连接智能跟踪器,经过一个或多个承运人送达收件人。若收件人获得货物时,货物与智能跟踪器未损坏,且智能跟踪器处于闭合状态,可以确认此货物从上锁以来没有与智能跟踪器分离,只要再验证智能跟踪器的上锁者确为发件人,即可放心接收。收件人也应向智能跟踪器证明自己具有开锁的权利,只有智能跟踪器通过接收及验证数据认可收件人确为发件人预设或认可的开锁者,才能正常开锁。

本发明的有益效果是,通过区块链+智能跟踪器结合使用,解决了现有的区块链+rfid溯源技术方案的两个问题。其一,智能跟踪器能感知自身与目标产品的连接状况,如果被强行分离即进入失败状态,杜绝了运输过程中换货的可能;其二,智能跟踪器能获知任务流程的结束,结束时改变状态,可以方便地从产品上移除,即使不移除也不会继续应答外界查询而暴露消费者的隐私。另外,智能跟踪器以签名方式证明自己的身份,比rfid直接输出uid更难仿冒。采用本发明之后,产品销售环节再无安全和隐私的漏洞,可以实现放心的产品溯源。同理,除产品溯源之外,本发明也可用于可信物流的业务需求。

附图说明

为了更清楚地说明本申请发明内容或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请中的智能跟踪器的状态转换图。所述智能跟踪器包括四个状态,实线箭头是一个任务流程之内的转换,虚线箭头是从一个任务流程进入下一个任务流程的转换。

图2是本申请中的智能跟踪器示意图。左侧的约束体为包装容器式(盒状)。右侧的约束体为线形,右侧上部是备用状态,六角星形表示智能锁,长箭头表示线形约束体;右侧下部是以此智能跟踪器连接一个环形目标产品的示意图。

图3是本申请中的第二种或第三种区块链的示意图。中部带箭头的矩形表示区块链,其内的小方块表示区块,每个区块的内容标注在下部虚线矩形框里。

图4是本申请中的智能跟踪器之智能锁验证消费者之方法一的一种流程图。

图5是本申请中的智能跟踪器之智能锁验证消费者之方法二的一种流程图。

图6是本申请中的智能跟踪器之智能锁验证消费者之方法三的一种流程图。

图7是本申请中的第二种或第三种区块链判断是否接受添加区块的流程图。

图8是本申请中的智能跟踪器之约束体导体网等效电路示意图。

图9是本申请中的智能跟踪器之数据功能模块结构图。虚线框内属于智能锁。

具体实施方式

实施例1

本发明提供一种产品溯源系统,包括智能跟踪器和区块链,参与者包括生产商、一级或多级经销商和消费者。一个典型的任务流程如下:

1、生产商生产出产品,将单件产品装进一个处于备用状态的智能跟踪器的包装容器式约束体之内并上锁。生产商为这件产品创建了一条第三种区块链,并添加上锁区块,生产商成为最初的控制人。

2、生产商将连接了智能跟踪器的产品交给第一级经销商,每级经销商可能将它交给下一级经销商。每次转手都由当前控制人在所述第三种区块链上添加区块,记录变更控制人为所述下一级经销商的信息。

3、某级经销商将连接了智能跟踪器的产品交给消费者,在所述第三种区块链上添加区块,记录变更控制人为消费者的信息。

4、消费者检查智能跟踪器与产品,确认没有损坏,且智能跟踪器处于闭合状态,通过电脑或手持设备或智能跟踪器自带的输入设备向连接产品的智能跟踪器输入查询数据,确认智能跟踪器是由预期的生产商上锁,再输入有效的开锁数据,令智能跟踪器开锁并进入完成状态,从智能跟踪器的包装容器式约束体中取出产品。

实施例2

在如实施例1所述的任务流程的上锁到开锁之间,如果智能跟踪器未经开锁与产品被外力分离,智能跟踪器进入失败状态。

实施例3

生产商收回处于闭合状态、完成状态或失败状态的智能跟踪器,向智能跟踪器输入重置指令,令智能跟踪器恢复到备用状态,开始下一个任务流程。

实施例4

智能跟踪器的生产者收回处于闭合状态、完成状态或失败状态的智能跟踪器,向智能跟踪器输入重置数据,令智能跟踪器恢复到备用状态,将它交给其他生产商使用。

实施例5

消费者买到连接了智能跟踪器的产品之后,消费者与智能跟踪器互相验证。消费者确认智能跟踪器处于闭合状态,智能跟踪器与产品完好无损,由区块链数据证实此智能跟踪器的上锁者为正确的生产者,则确认产品为真。

智能跟踪器以方法三验证消费者身份。智能跟踪器向消费者发送一组经过签名的数据并开始计时,消费者以智能跟踪器的公钥验证签名通过,以自己的私钥再对此数据签名,将签名发回到智能跟踪器。智能跟踪器在正常时间之内收到签名,由第二种区块链记录读取合法开锁者的公钥。

第二种区块链保存在互联网上,由消费者将整条链的数据传给智能跟踪器。智能跟踪器从上锁区块读出第一个控制人,之后每遇到一个变更控制人的区块,如果区块有当前控制人的签名,就变更控制人。直到区块链末尾,此时的控制人(以公钥为标识)就是合法开锁者。

以合法开锁者的公钥验证消费者的签名,若通过,说明消费者即是合法开锁者,可以开锁。

实施例6

如果某级经销商用假货换走真货,由于无法分离真货上的智能跟踪器,只能以一个假的智能跟踪器连接假货。消费者检验智能跟踪器的公钥,可知此假智能跟踪器并非由预期的生产商连接,即可判定货是假的。

实施例7

如果某级经销商用假货换走真货,强行分离真货上的智能跟踪器并连接到假货上,智能跟踪器进入失败状态。消费者检验智能跟踪器,读取到失败状态,即可判定货已不可靠。

实施例8

造假者从消费者手中回收用过的智能跟踪器,连接在假货上。智能跟踪器处于完成状态,未经重置无法进入闭合状态。买到假货的消费者检验智能跟踪器,发现状态不是闭合状态,即可判定货已不可靠。

实施例9

捐献者将货物(一包n95口罩)装进一个处于备用状态的智能跟踪器的包装容器式约束体之内并上锁。捐献者将货物信息写在第一种区块链上,寄往武汉某医院。货物经过快递、红会等多次转手来到目标医院,每次转手都将相关信息记在第一种区块链上。医院工作人员用电脑连接包装货物的智能跟踪器,确认智能跟踪器是捐献者发出的,且智能跟踪器与货物没有损坏,且智能跟踪器处于封闭状态,确信货物真实。接着,医院工作人员与智能跟踪器交换数据,通过方法一、方法二、方法三中的一种使智能跟踪器认可医院工作人员的合法开锁者身份,同意开锁并将开锁信息保存在区块链上。于是医院获得物资,捐献者从区块链记录确认所捐物资已安全到达医院。

实施例10

在实施例9中,捐献者使用的智能跟踪器以化学方法检测开启。包装时向智能跟踪器的包装容器式约束体内充入氖气和二氧化碳的混合气,充气量经过随机调节,只有内置于约束体的气体成分检测器知道实际的气体成分比例,其他人,包括捐献者也不知道。密封约束体之后,气体成分检测器以初始的气体成分比例为标准值,一旦检测到气体成分偏离标准值,就令智能跟踪器进入失败状态。中途有攻击者希望以假货换取真货,但无法得知真实的气体成分标准值,依据估计的气体成分部署了一个气体环境,在此环境中打开约束体,由于估计值错误,打开后智能跟踪器的约束体里气体成分发生变化,导致智能跟踪器进入失败状态。医院工作人员收到后,即知货物已不可信。

实施例11

在实施例9中,捐献者使用的智能跟踪器以电子方法检测开启。在金属笼状约束体上的一些金属丝交叉点中插入薄薄的塑料片,使金属笼状约束体的等效电路中含有较多电容器。装入目标产品后,在金属笼上选定输入点和输出点,向输入点输入特定电信号1,令内置于约束体的信号检测器记录输出点输出的电信号并以之为标准波形。除信号检测器以外,其他人,包括捐献者也不知道标准波形是什么。周期性地向输入点输入电信号1,一旦检测到输出点输出的信号不同于标准波形,就令智能跟踪器进入失败状态。中途有攻击者希望以假货换取真货,但无法伪造标准波形,打开约束体时剪断部分金属丝,使金属笼的等效电路发生改变,被信号检测器发现,导致智能跟踪器进入失败状态。医院工作人员收到后,即知货物已不可信。

实施例12

在实施例9中,捐献者使用的智能跟踪器以物理方法检测开启。包装时向智能跟踪器的包装容器式约束体内充气压为1.1个大气压的空气,密封约束体之后,内置于约束体的气压检测器以初始的气体成分比例为标准值,一旦检测到气体成分偏离标准值,就令智能跟踪器进入失败状态。中途有攻击者希望以假货换取真货,打开约束体时令其内气压发生变化,被气压检测器发现,导致智能跟踪器进入失败状态。医院工作人员收到后,即知货物已不可信。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1