基于区块链与物联网标识的溯源方法及系统与流程

文档序号:15079436发布日期:2018-08-03 12:05阅读:195来源:国知局

本发明涉及物联网技术领域,尤其涉及一种基于区块链与物联网标识的溯源方法及系统。



背景技术:

当今社会,食品安全、假冒伪劣商品越来越受到企业、政府、消费者重视,对于企业方来说可以拿出最客观真实的资料证明自己生产的商品具有长期优秀的品质,并且企业以主动、透明的姿态迎接消费者和社会各方面的监督和考验,增强了企业的责任感,发挥了企业自我监督的主观能动性,对于监管方来说可以预防重大安全事故,对于消费者来说在面对琳琅满目的商品时能够更准确地选择出真正优质放心的商品。

在商品供应链管理中,我们通常对于跟踪的商品在其整个全生命周期中进行实时流通信息的录入以便进行追溯管理。比如,在零售行业,针对每个商品如盒装牛奶在生产阶段时赋予其自己的标识,在商品流经途中,商品流经不同的企业,不同的企业会有其自己的信息化系统,企业基于商品标识将商品溯源信息采集并录入到其自己的信息化系统,这些大量的信息对于生产企业来说又是不可控的。

因此,在实际应用中如何在查询商品溯源信息时准确定位到商品流通过程中的溯源信息并且保证商品溯源信息的真实性和防篡改,以及如何通过根据某件商品的标识查询历史记录的信息,以便让消费者获取其在整个全生命周期的真实的溯源信息,是目前需要解决的一个难题。



技术实现要素:

本发明提供一种基于区块链与物联网标识相结合的溯源方法及相应的系统。

第一方面,本发明提供一种基于区块链与物联网标识相结合的溯源方法,所述方法包括如下步骤:

当前记账节点生成包含商品标识的当前商品的溯源数据,并将所述溯源数据提交至该记账节点对应的服务器;

当前记账节点依据所述溯源数据生成溯源记录,并将所述溯源记录提交至区块链中并广播;

数据处理节点验证所述溯源记录的有效性,当验证通过时,将所述溯源记录存入区块链以使得所述数据处理节点接收客户端发送的标识查询请求后查询所述溯源记录并反馈查询结果。

具体的,所述溯源数据包括如下一项或多项:

商品转出方的身份信息及其区块链账户地址、商品转入方的身份信息及其区块链账户地址、商品转移的时间、被转移商品的数量。

具体的,所述溯源记录包括如下一项或多项:

所述溯源数据的哈希值、当前记账节点对应服务器的地址标识、商品转出方的区块链账户地址、商品转入方的区块链账户地址、生成所述溯源记录的时间戳。

优选的,所述数据处理节点验证所述溯源记录的有效性,当验证通过时,将所述溯源记录存入区块链以使得所述数据处理节点接收客户端发送的标识查询请求后查询所述溯源记录并反馈查询结果,具体包括:

接收来自验证节点对所述溯源记录的验证结果;

采用共识算法检测所述验证结果得到共识结果;

当检测到所述验证结果的数量达到预设阈值时,判断所述共识结果为达成共识,则验证通过,并将所述溯源记录存入区块链中并广播;

否则,判断所述共识结果为不能达成共识,则验证不通过,并舍弃所述溯源记录。

具体的,所述接收来自验证节点对所述溯源记录的验证结果,具体包括:

验证节点获取所述溯源记录后,依据所述商品标识验证所述溯源记录的有效性,若验证通过,则将所述溯源记录存入该验证节点对应的区块中并广播验证结果。

优选的,所述验证节点获取所述溯源记录后,依据所述商品标识验证所述溯源记录的有效性,具体包括:

所述验证节点依据所述溯源记录中的当前记账节点对应的服务器的地址标识获取所述溯源数据;

所述验证节点依据所述溯源记录中的商品标识查询区块链中的历史记录以获取各历史溯源数据并对各历史溯源数据进行整合;

依据各所述历史溯源数据验证所述溯源记录的有效性。

具体的,所述验证节点依据所述溯源记录中的商品标识查询区块链中的历史记录以获取各历史溯源数据并对各历史溯源数据进行整合,具体包括:

所述验证节点依据所述商品标识查询区块链以获取与所述商品标识对应的各历史溯源记录;

所述验证节点依据各历史溯源记录获取与所述商品标识对应的各服务器的地址标识的集合,并依据该地址标识的集合获取该商品对应的各历史溯源数据。

具体的,还包括:

首个记账节点生成包含所述商品标识的首个溯源数据,并将所述首个溯源数据提交至所述首个记账节点对应的服务器;

首个记账节点将所述首个溯源记录提交至区块链中并广播。

优选的,所述首个溯源数据包括如下任意一项或多项:

商品首次转移的转入方及其身份信息、商品首次转移的时间、商品首次转移的数量。

具体的,所述首次溯源记录包括如下任意一项或多项:

所述首次溯源数据的哈希值、所述首个记账节点对应的服务器的地址、商品首次转入方的区块链账户地址、生成所述首次溯源记录的时间戳。

具体的,所述数据处理节点验证所述溯源记录的有效性,当验证通过时,将所述溯源记录存入区块链以使得所述数据处理节点接收客户端发送的标识查询请求后查询所述溯源记录并反馈查询结果,具体还包括:

所述数据处理节点接收用户端发送的携带所述商品标识的标识查询请求,并响应于所述标识查询请求查询区块链以获取历史溯源数据,将所述各历史溯源数据整合生成所述查询结果。

优选的,所述响应于所述标识查询请求查询区块链以获取历史溯源数据,将所述各历史溯源数据整合生成所述查询结果,具体包括:

依据所述商品标识查询区块链,以获取与所述商品标识对应的各历史溯源记录;

依据所述各历史溯源记录获取与商品标识对应的各服务器的地址标识的集合;

向各服务器的地址标识集合中各地址标识所指向的服务器获取与所述商品标识对应的各历史溯源数据。

具体的,所述向各服务器的地址标识集合中各地址标识所指向的服务器获取与所述商品标识对应的各历史溯源数据之后,还包括:

依据各历史溯源记录中所述溯源数据的哈希值判断获取到的各服务器中的溯源数据的有效性;

若存在一个区块中记录的溯源数据的哈希值与该区块对应的节点的服务器中的溯源数据的哈希值不同,则判断该区块对应的节点的服务器中的溯源数据无效,否则,判断其为有效。

具体的,所述记账节点为所述当前商品所流经的节点,其生成所述当前商品的溯源记录并将该溯源记录存入区块链,所述验证节点为对所述记账节点生成的溯源记录进行验证并储存的节点。

具体的,还包括:

各节点实时向区块链获取当前商品的各溯源记录以更新存储于自身区块中的溯源记录。

第二方面,本发明提供一种基于区块链与物联网标识相结合的溯源系统,所述系统包括交互模块以及区块链模块,所述区块链模块包括记账节点、数据处理节点以及验证节点,各个模块及节点具体执行如下内容:

记账节点:生成包含商品标识的当前商品的溯源数据,并将所述溯源数据提交至该记账节点对应的服务器;生成包含所述当前商品的溯源数据的哈希值及所述当前记账节点对应的服务器地址的溯源记录,并将所述溯源记录提交至区块链中;

数据处理节点:证所述溯源记录的有效性,当验证通过时,将所述溯源记录存入区块链;

验证节点:获取所述溯源记录后,依据所述商品标识验证所述溯源记录的有效性,若验证通过,则将所述溯源记录存入该验证节点对应的区块中并广播验证结果;

交互模块:提供与区块链交互的模块的第一交互接口,并提供与各节点对应的服务器交互的第二交互接口。

相比现有技术,本发明提供的方案有以下优点:

本发明提供一种基于区块链与物联网标识相结合的溯源方法,通过当前记账节点生成包含商品标识的当前商品的溯源数据,并将所述当前商品的溯源数据提交至自己的服务器,同时生成包含所述当前商品的溯源数据的哈希值及所述当前记账节点对应的服务器地址的溯源记录,并依据所述溯源记录创建当前区块后存入区块链中并广播;数据处理节点依据共识算法验证所述溯源记录是否得到预设数量的验证节点的共识,若验证通过,则向区块链广播该共识结果,以使得其他记账节点依据该共识结果将溯源记录存入自身的区块中。本发明上述方案解决了供应链管理过程中商品溯源全产业链多个参与方的情况下溯源信息查询与信息防伪造、防篡改问题。

本发明通过共识算法验证所述溯源记录是否得到预设数量的验证节点的共识,大部分节点对溯源映射记录进行PBFT共识验证,保障了溯源记录的不可伪造、不可篡改。在查询溯源记录时,根据商品标识,在区块链模块中获取与所述商品标识对应的所有信息服务器地址集合,根据获取的信息服务器地址集合发起相应的查询请求得到最终查询的标识的所有溯源数据。

本发明可以进行商品供应链中大量多个参与方协同进行商品流通时的商品的溯源信息的查询,让消费者根据该件商品标识进行查询以获取其在整个生命周期的完整的溯源数据,杜绝商品的溯源记录被篡改,提高商品溯源的安全性。

本发明旨在提供一个更加合理的标识信息注册和查询的方法,解决供应链管理过程中商品溯源全产业链多个参与方的情况下溯源信息查询与信息防伪造、防篡改问题。

本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明的一种基于区块链与物联网标识相结合的溯源方法一种实施例流程框图;

图2为本发明的一种基于区块链与物联网标识相结合的溯源系统一种实施例流程框图;

图3为本发明的一种基于区块链与物联网标识相结合的溯源系统中所述区块链模块的流程框图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

请参阅图1,本发明所提供的一种基于区块链与物联网标识相结合的溯源方法,具体的一种实施方式中,具体包括如下步骤:

S11、当前记账节点生成包含商品标识信息的当前商品的溯源数据,并将所述溯源数据提交至该记账节点对应的服务器。

本发明实施例中,各个节点可以是不同的企业、同一企业内不同的参与人、不同的地点、同一企业内不同的参与地点。所述记账节点为生成商品的溯源数据以及溯源记录的节点并将所述溯源记录提交至区块链的节点。所述商品标识为商品在生成阶段被赋予的唯一性标识信息,在商品的流经途中,商品流经不同的企业,不同的企业可以基于该标识信息将商品的溯源数据采集并录入企业自身的信息化系统中,该标识信息也用于查询商品的溯源数据以便于商品流经到消费者手中时,消费者可以通过该标识信息对商品的各个阶段的溯源数据进行查询。

本发明实施例中,所述溯源数据包括如下一项或多项:商品转出方的身份信息及其区块链账户地址、商品转入方的身份信息及其区块链账户地址、商品转移的时间、被转移商品的数量。所述身份信息为用户真实的业务身份。

进一步的,所述当前记账节点将所述溯源数据提交至其对应的的服务器之后,所述当前记账节点对应的的服务器中记录了所述溯源数据的完整数据、所述商品转入方与转出方的区块链账户地址一各自的身份信息,具体包括商品转入方与转出方的真实的业务身份和区块链账户地址对应关系以及用户真实身份之间的业务关系等。

本发明实施例中,所述当前商品被生产企业生产出来之后,所述生产企业对应的节点即本发明所述首个记账节点为所述当前商品添加标识信息。所述首个记账节点还生成包含所述商品标识的首个溯源数据,并将所述首个溯源数据提交至所述首个记账节点对应的服务器;首个记账节点将所述首个溯源记录提交至区块链中并广播。

具体的,所述首个溯源数据包括如下任意一项或多项:商品首次转移的转入方及其身份信息、商品首次转移的时间、商品首次转移的数量。所述首次溯源记录包括如下任意一项或多项:所述首次溯源数据的哈希值、所述首个记账节点对应的服务器的地址、商品首次转入方的区块链账户地址、生成所述首次溯源记录的时间戳。由于对于首个记账节点来说所述当前商品被生产出来,所以没有商品转出方及其区块链账户地址。

S12、当前记账节点依据所述溯源数据生成所述溯源记录,并将所述溯源记录提交至区块链中并广播。

本发明实施例中,所述溯源记录包括如下一项或多项:所述溯源数据的哈希值、当前记账节点对应服务器的地址标识、商品转出方的区块链账户地址、商品转入方的区块链账户地址、生成所述溯源记录的时间戳。所述记账节点为所述当前商品的溯源记录并将该溯源记录存入区块链的节点,所述验证节点为对所述记账节点生成的溯源记录进行验证并储存的节点。

所述当前节点对应的服务器地址用于指向当前节点对应的服务器,所述当前记账节点对应的服务器可提供当前记账节点所提交的当前溯源事件对应的所述溯源数据的完整数据。

本发明实施例中,通过向区块链提交所述溯源记录向区块链注册,以使得区块链中的各验证节点对所提交的所述溯源记录进行验证,进一步的,区块链的数据处理节点检测所述各验证节点的验证结果,通过检测各验证节点广播的验证结果,依据共识算法判断所述溯源记录是否得到预设数量的验证节点的共识。

本发明实施例中,各验证节点通过交互模块提供的接口向区块链进行注册,提交所述溯源记录。

S13、数据处理节点验证所述当前溯源记录的有效性,当验证通过时,将所述当前溯源记录存入区块链以使得所述数据处理节点接收客户端发送的标识查询请求后查询所述溯源记录并反馈查询结果。

本发明实施例中,所述记账节点将商品的溯源记录提交至区块链中并广播,所述验证节点获取该溯源记录后对该溯源记录进行验证并广播其验证结果,所述数据处理节点检测各验证节点的验证结果,依据共识算法判断所述溯源记录是否得到预设数量的验证节点的共识,若是,则将所述溯源记录的共识结果在区块链中广播。所述记账节点、验证节点以及数据处理节点同属于区块链模块,所述验证节点负责对所述记账节点提交的溯源数据进行验证,而数据处理节点负责对验证节点的验证结果进行处理以确定所述记账节点提交的溯源记录是否可以被其他记账节点所接收并存入其对应的区块中。

本发明实施例中,所述当前记账节点将所述溯源记录提交至所述区块链之后,先通过各验证节点对所述溯源记录进行初次的验证,若验证通过,则各验证节点将所述溯源记录打包进自己的区块中并向区块链广播其已经接受该溯源记录的验证结果。

进一步的,所述数据处理节点进一步对所述溯源记录进行验证,其具体的验证机制是通过共识算法进行验证。具体的,所述数据处理节点检测各验证节点的验证结果,通过获取各验证节点的验证结果,采用共识算法检测所述验证结果得到共识结果。

具体的,所述区块链的各验证节点对所述溯源记录进行验证的步骤如下:

验证节点获取所述当前溯源记录后,依据所述商品标识信息验证所述当前溯源记录的有效性,若验证通过,则将所述当前溯源记录存入该验证节点对应的区块中并广播该验证事件的验证结果。

具体的,所述验证节点依据所述当前溯源记录中的当前记账节点对应的服务器的地址标识获取所述当前溯源数据;所述验证节点依据所述当前溯源记录中的商品标识信息查询区块链中的历史记录以获取各历史溯源数据并对各历史溯源数据进行整合;依据各所述历史溯源数据验证所述当前溯源记录的有效性。

进一步的,所述验证节点依据所述商品标识信息查询区块链以获取与所述商品标识信息对应的各历史溯源记录;所述验证节点依据各历史溯源记录获取与所述商品标识对应的各服务器的地址标识的集合,并依据该地址标识的集合获取该商品对应的各历史溯源数据。

所述验证节点对各历史溯源数据进行整合后依据整合后的历史溯源数据验证所述溯源记录的有效性。在验证过程中,可根据时间戳、商品转出方的身份信息、商品转入方的身份信息、生成的签名信息进行基于商品数量、商量流转地点、商品转移事件发生的时间、用户业务身份等进行校验溯源记录的真实性。

进一步的,所述数据处理节点检测各验证节点的验证结果,接收来自验证节点对所述当前溯源记录的验证结果;采用共识算法检测所述验证结果得到共识结果;当检测到所述验证结果的数量达到预设阈值时,判断所述共识结果为达成共识,则验证通过,并将所述当前溯源记录存入区块链中并广播;否则,判断所述共识结果为不能达成共识,则验证不通过,并舍弃所述当前溯源记录。

本发明实施例中,所述数据处理节点广播所述共识结果后,其他记账节点则将所述溯源记录打包进自己的区块,所述溯源记录被其他记账节点打包进自己的区块,以便所述数据处理节点接收客户端发送的标识查询请求后查询所述溯源记录并反馈查询结果。

本发明实施例中,各个记账节点所提交的溯源记录通过区块链的共识算法的验证之后,所述溯源记录会被区块链系统的所有节点接受并且形成一个个区块加入到区块链中,这样一个个区块形成了一条链,这些区块基于前后区块的哈希值有效连接起来。当用户端比如消费终端需要对某个商品的溯源数据进行查询时,其可以通过输入该商品对应的标识信息进行查询,所述区块链模块接收该商品标识之后依据该商品标识进行查询区块链记录并返回与该商品的标识对应的所有溯源数据。

具体的,所述并响应于该查询请求反馈与所述商品标识对应的各历史溯源数据,具体包括:

所述数据处理节点依据所述商品标识查询区块链,以获取与所述商品标识对应的各历史溯源记录;

依据所述各历史溯源记录获取各历史溯源记录中的服务器的地址标识并整合生成所述商品标识对应的服务器的地址标识的集合;

向服务器的地址标识集合中各地址标识所指向的服务器获取与所述商品标识对应的各历史溯源数据并对各溯源数据进行整合。

本发明实施例中,所述数据处理节点向各服务器获取与所述商品标识对应的各历史溯源数据之后,还需要对各历史溯源数据的可靠性进行验证,以确定存储于各服务器中的溯源数据是否被篡改过。

一种可能的设计中,本发明优选以下方案对各服务器中获取的溯源数据进行验证:

所述数据处理节点依据各历史溯源记录中所述溯源数据的哈希值判断获取到的各服务器中的溯源数据的有效性。

具体的,若所述数据处理节点检测到存在一个区块中记录的溯源数据的哈希值与该区块对应的节点的服务器中的溯源数据的哈希值不同,则判断该区块对应的节点的服务器中的溯源数据无效,则该区块对应的节点的服务器中的溯源数据被篡改,否则,判断其为有效。

本发明实施例中,所述记账节点为生成所述当前商品的溯源记录并将该溯源记录存入区块链的节点,所述验证节点为对所述记账节点生成的溯源记录进行验证并储存的节点。区块链模块中的所有节点都会定时的去向全网同步溯源映射记录数据。

参考图2及图3所示,本发明还提供一种基于区块链与物联网标识相结合的溯源系统,一种实施例中,所述系统包括区块链模块11以及交互模块12,所述区块链模块11包括记账节点111、数据处理节点112,验证节点113,其中,

记账节点111:生成包含商品标识信息的当前商品的当前溯源数据,并将所述当前溯源数据提交至该记账节点对应的服务器;生成包含所述当前商品的溯源数据的哈希值及所述当前记账节点对应的服务器地址的当前溯源记录,并将所述当前溯源记录提交至区块链中。

本发明实施例中,各个节点可以是不同的企业、同一企业内不同的参与人、不同的地点、同一企业内不同的参与地点。所述记账节点为生成商品的溯源数据以及溯源记录的节点并将所述溯源记录提交至区块链的节点。

本发明实施例中,所述溯源数据包括如下一项或多项:商品转出方的身份信息及其区块链账户地址、商品转入方的身份信息及其区块链账户地址、商品转移的时间、被转移商品的数量。所述身份信息为用户真实的业务身份。

进一步的,所述当前记账节点将所述溯源数据提交至其对应的的服务器之后,所述当前记账节点对应的的服务器中记录了所述溯源数据的完整数据、所述商品转入方与转出方的区块链账户地址一各自的身份信息,具体包括商品转入方与转出方的真实的业务身份和区块链账户地址对应关系以及用户真实身份之间的业务关系等。

本发明实施例中,所述当前商品被生产企业生产出来之后,所述生产企业对应的节点即本发明所述首个记账节点为所述当前商品添加标识信息。所述首个记账节点还生成包含所述商品标识的首个溯源数据,并将所述首个溯源数据提交至所述首个记账节点对应的服务器;首个记账节点将所述首个溯源记录提交至区块链中并广播。

具体的,所述首个溯源数据包括如下任意一项或多项:商品首次转移的转入方及其身份信息、商品首次转移的时间、商品首次转移的数量。所述首次溯源记录包括如下任意一项或多项:所述首次溯源数据的哈希值、所述首个记账节点对应的服务器的地址、商品首次转入方的区块链账户地址、生成所述首次溯源记录的时间戳。由于对于首个记账节点来说所述当前商品被生产出来,所以没有商品转出方及其区块链账户地址。

本发明实施例中,所述溯源记录还包括如下一项或多项:

商品转出方的区块链账户地址、商品转入方的区块链账户地址、生成所述溯源记录的时间戳。所述记账节点为所述当前商品的溯源记录并将该溯源记录存入区块链的节点,所述验证节点为对所述记账节点生成的溯源记录进行验证并储存的节点。

所述当前节点对应的服务器地址用于指向当前节点对应的服务器,所述当前记账节点对应的服务器可提供当前记账节点所提交的当前溯源事件对应的所述溯源数据的完整数据。

本发明实施例中,通过向区块链提交所述溯源记录向区块链注册,以使得区块链中的各验证节点对所提交的所述溯源记录进行验证,进一步的,区块链的数据处理节点检测所述各验证节点的验证结果,采用共识算法检测所述验证结果得到共识结果;当检测到所述验证结果的数量达到预设阈值时,判断所述共识结果为达成共识,则验证通过,并将所述当前溯源记录存入区块链并广播中并广播;否则,判断所述共识结果为不能达成共识,则验证不通过,并舍弃所述当前溯源记录。

本发明实施例中,通过交互模块提供的接口向区块链进行注册,提交所述溯源记录。

数据处理节点112:依据共识算法验证所述当前溯源记录是否得到预设数量的验证节点的共识,若验证通过,则向区块链广播该共识结果,以使得其他记账节点依据该共识结果将当前溯源记录存入自身的区块中。

本发明实施例中,所述当前记账节点将所述溯源记录提交至所述区块链之后,先通过各验证节点对所述溯源记录进行初次的验证,若验证通过,则各验证节点将所述溯源记录打包进自己的区块中并向区块链广播其已经接受该溯源记录的验证结果。

进一步的,所述数据处理节点进一步对所述溯源记录进行验证,其具体的验证机制是通过共识算法进行验证。具体的,所述数据处理节点接收来自验证节点对所述溯源记录的验证结果;采用共识算法检测所述验证结果得到共识结果;当检测到所述验证结果的数量达到预设阈值时,判断所述共识结果为达成共识,则验证通过,并将所述溯源记录存入区块链中并广播;否则,判断所述共识结果为不能达成共识,则验证不通过,并舍弃所述溯源记录。

进一步的,其他记账节点获取所述共识结果之后,将所述溯源记录存入自身的区块中。

本发明实施例中,所述数据处理节点还用于接收用户端发送的携带所述商品标识的查询请求,并响应于该查询请求反馈与所述商品标识对应的查询结果,所述查询结果包括与所述商品标识对应的历史溯源数据。

本发明实施例中,各个记账节点所提交的溯源记录通过区块链的共识算法的验证之后,所述溯源记录会被区块链系统的所有节点接受并且形成一个个区块加入到区块链中,这样一个个区块形成了一条链,这些区块基于前后区块的哈希值有效连接起来。当用户端比如消费终端需要对某个商品的溯源数据进行查询时,其可以通过输入该商品对应的标识信息进行查询,所述区块链模块接收该商品标识之后依据该商品标识进行查询区块链记录并返回与该商品的标识对应的所有溯源数据。

具体的,所述并响应于该查询请求反馈与所述商品标识对应的各历史溯源数据,具体包括:

所述数据处理节点依据所述商品标识查询区块链,以获取与所述商品标识对应的各历史溯源记录;

依据所述各历史溯源记录获取各历史溯源记录中的服务器的地址标识并整合生成所述商品标识对应的服务器的地址标识的集合;

向服务器的地址标识集合中各地址标识所指向的服务器获取与所述商品标识对应的各历史溯源数据并对各溯源数据进行整合以生成所述查询结果。

本发明实施例中,所述数据处理节点向各服务器获取与所述商品标识对应的各历史溯源数据之后,还需要对各历史溯源数据的可靠性进行验证,以确定存储于各服务器中的溯源数据是否被篡改过。

一种可能的设计中,本发明优选以下方案对各服务器中获取的溯源数据进行验证:

所述数据处理节点依据各历史溯源记录中所述溯源数据的哈希值判断获取到的各服务器中的溯源数据的有效性。

具体的,若所述数据处理节点检测到存在一个区块中记录的溯源数据的哈希值与该区块对应的节点的服务器中的溯源数据的哈希值不同,则判断该区块对应的节点的服务器中的溯源数据无效,则该区块对应的节点的服务器中的溯源数据被篡改,否则,判断其为有效。

本发明实施例中,区块链模块中的所有节点都会定时的去向全网同步溯源映射记录数据。

验证节点113:获取所述当前溯源记录后,依据所述商品标识信息验证所述当前溯源记录的有效性,若验证通过,则将所述当前溯源记录存入该验证节点对应的区块中并广播验证结果。

本发明实施例中,所述验证节点主要执行对个记账节点所提交的溯源记录进行初步的验证,当验证通过时将所述溯源记录打包进自己的区块,以便所述数据处理节点获取各所述验证节点的验证结果进行基于共识算法的进一步验证。

具体的,所述区块链的各验证节点对所述溯源记录进行验证的步骤如下:

所述区块链的各验证节点获取所述溯源记录,并依据所述商品标识验证所述溯源记录的有效性,若验证通过,则将所述溯源记录存入该验证节点对应的区块中并广播验证结果。

进一步的,所述各验证节点获取所述溯源记录后,依据所述商品标识验证所述溯源记录的有效性,具体包括:

所述验证节点依据所述溯源记录中的当前记账节点对应的服务器的地址标识向所述地址标识所指向的服务器获取所述溯源数据;

所述验证节点依据所述商品标识查询区块链以获取与所述商品标识对应的各历史溯源记录;

所述验证节点依据各历史溯源记录获取提供所述商品的各历史溯源数据的服务器的地址标识的集合,并依据该地址标识的集合向各个地址标识所指向的服务器获取该商品对应的各历史溯源数据;

所述验证节点对各历史溯源数据进行整合后依据整合后的历史溯源数据验证所述溯源记录的有效性。在验证过程中,可根据时间戳、商品转出方的身份信息、商品转入方的身份信息、生成的签名信息进行基于商品数量、商量流转地点、商品转移事件发生的时间、用户业务身份等进行校验溯源记录的真实性。

交互模块12:提供与区块链交互的模块的第一交互接口,并提供与各节点对应的服务器交互的第二交互接口。

本发明实施例中,所述交互模块提供与区块链模块的第一交互接口以使得各节点通过该第一接口向区块链进行注册,以及与各节点对应的服务器的第二交互接口以使得各节点通过该第二交互接口向各服务器获取溯源数据,各节点对应的服务器与所述交互模块之间通过所述第二交互接口关联。

所述交互模块还需要提供交互接口配合区块链模块一起进行后续商品标识的查询以获取溯源数据。此外,所述交互模块还负责区块链账户地址所对应的参与者商品转出方以及商品转入方的身份信息管理,包括商品转出方以及商品转入方真实的业务身份和区块链地址对应关系维护以及商品转出方以及商品转入方真实身份之间的业务关系等,并且在授权的情况下,监管和审计所述溯源数据的提交情况。

综合上述实施例可知,本发明最大的有益效果在于:

本发明提供一种基于区块链与物联网标识相结合的溯源方法,通过当前记账节点生成包含商品标识的当前商品的溯源数据,并将所述当前商品的溯源数据提交至自己的服务器,同时生成包含所述当前商品的溯源数据的哈希值及所述当前记账节点对应的服务器地址的溯源记录,并依据所述溯源记录创建当前区块后存入区块链中并广播;数据处理节点依据共识算法验证所述溯源记录是否得到预设数量的验证节点的共识,若验证通过,则向区块链广播该共识结果,以使得其他记账节点依据该共识结果将溯源记录存入自身的区块中。本发明上述方案解决了供应链管理过程中商品溯源全产业链多个参与方的情况下溯源信息查询与信息防伪造、防篡改问题。

本发明可以进行商品供应链中大量多个参与方协同进行商品流通时的商品的溯源信息的查询,让消费者根据该件商品标识进行查询以获取其在整个生命周期的完整的溯源数据,杜绝商品的溯源记录被篡改,提高商品溯源的安全性。

本领域普通技术人员可以理解上述实施例的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或光盘等。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上对本发明所提供的一种基于区块链与物联网标识的溯源方法及系统进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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