CN109360008B - 产品防伪认证更新方法和系统 - Google Patents
产品防伪认证更新方法和系统 Download PDFInfo
- Publication number
- CN109360008B CN109360008B CN201811383665.XA CN201811383665A CN109360008B CN 109360008 B CN109360008 B CN 109360008B CN 201811383665 A CN201811383665 A CN 201811383665A CN 109360008 B CN109360008 B CN 109360008B
- Authority
- CN
- China
- Prior art keywords
- authentication
- data
- enterprise
- electronic tag
- preset
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/018—Certifying business or products
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K17/00—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
- G06K17/0022—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations arrangements or provisious for transferring data to distant stations, e.g. from a sensing device
Abstract
本发明公开一种产品防伪认证更新方法和系统。在认证过程中,联盟链节点判断动态认证数据合法后转发给企业认证端;由企业认证端获得企业端验证结果;然后再由联盟链节点进行验证签名;最后利用公钥验证签名数据并输出验证结果;在更新过程中,由客户端验证工具将动态标签信息数据发送给联盟链节点,联盟链节点判断合法性后再由企业认证端进行判断并生成修改标签状态的脚本命令数据,再经过联盟链节点发送到客户端验证工具,客户端验证工具验签后发送到电子标签,电子标签执行脚本命令数据,实现电子标签信息更新。利用对称密钥对动态数据进行加密原理,通过在电子标签和企业认证端分别设置密钥,通过联盟链平台保证数据传输安全,可以更好地实现对电子标签的认证,保证数据更新的可靠性。
Description
技术领域
本发明涉及产品防伪电子标签认证领域,特别是涉及一种利用区块链与电子标签结合的产品防伪电子标签及其产品防伪方法和系统。
背景技术
通过适当的方式或手段防止产品的伪劣假冒(防伪)是现代产品管理与供应链管理的一种重要手段。防伪技术对遏制赝品制造、提升产品信誉度、保证企业利益、维护市场公平起着举足轻重的作用。
当前主流的产品防伪技术主要分为物理防伪和电子标签防伪两种。下面针对这两种防伪技术进行原理进行简单介绍,并就存在的问题(漏洞)进行简单分析:
1.物理防伪
物理防伪是以防伪标签上存在的物理特征或专门在防伪标签上设置的物理特征作为防伪标识。在进行防伪认证时,将防伪标签上的防伪标识与预先确定的基准标识进行对比;如果防伪标识与基准标识一致或相符,则判断附有该防伪标签的产品为正品;如果相反,则判断附有该防伪标签的产品为赝品。
通过对作为防伪标识物理特征的专门设置,可以实现防伪标识的唯一性;通过对防伪标识物理特征的处理,可以增加防伪标识的复制难度,进而实现物理防伪的可靠性。
目前,根据形成防伪标识的方式、方法不同,有激光防伪、化学油墨防伪、纹理防伪、隐形图像防伪等方式。
2.电子标签防伪
电子标签防伪技术设置电子标签,并在电子标签上设置二维码或其他电子数据信息,电子数据信息含有与产品相关的数据。在验证时,通过读取、识别电子标签上的电子数据获取产品的相关数据;然后将获取数据传送给与预设的企业验证系统;企业验证系统将接收到的数据与其存储的产品基准数据进行对比,根据对比结果的一致性或相符性来区分附着该防伪标签的产品是正品,还是赝品。
虽然现有的防伪技术可以在一定程度上实现区分正品或赝品的目的,但随着缩微技术和复制技术发展,存在被复制的风险。
利用物理防伪的方法,作为防伪标识的物理特征被复制的可能性越来越大。造假者可以通过已知的技术复制具有相同物理特征的防伪标识,并形成具有相同物理特征的赝品标签。将该赝品标签随着(贴在或用其他方式附着)在赝品上,利用现有的验证方式根本无法达到区分正品和雁品的目的。
对于电子标签防伪方法,造假者通过拍照、复印或读取数据后重新生成电子标签的手段得到与正品电子标签一致的赝品标签。以这样的赝品标签为基础,也会把赝品识别为正品,进而无法达到区分正品和雁品的目的。
因此,如何提高防伪的可靠性,仍然是本领域技术人员需要解决的技术难题。
发明内容
本发明针对目前防伪技术的痛点提出了一种创新的产品防伪电子标签认证的方法和系统,即基于区块链、电子标签以及密码学算法的产品防伪电子标签及其认证系统及方法,该产品防伪电子标签及产品防伪方法和系统具有更高的可靠性。
本发明提供的产品防伪认证更新方法中,待验证产品设置有电子标签,所述电子标签包括认证计数器和状态计数器,预置有电子标签认证密钥、认证初始数据和状态机,所述认证初始数据包括电子标签标识号和企业标识号;所述电子标签标识号和企业标识号具有唯一性;所述状态机用来提供电子标签当前的状态信息,即表征该电子标签当前的状态信息;
所述产品防伪认证更新方法包括以下步骤:
S210,电子标签接收包含时间戳的认证触发消息,使认证计数器更新,并形成动态认证数据,利用所述电子标签认证密钥对动态认证数据进行加密,生成基准认证码;所述动态认证数据包含认证触发消息数据、认证初始数据和认证计数器;然后将动态认证数据包传输给客户端验证工具;所述动态认证数据包包括基准认证码和动态认证数据;
S220,客户端验证工具将自身的客户端标识数据和接收到的动态认证数据包传输给预定联盟链平台的预定联盟链节点;所述客户端标识数据包含客户端标识号和客户端认证流水号;
S230,所述预定联盟链节点根据认证初始数据查询预置的企业基准信息数据库,并按预定的策略判断所述认证初始数据是否合法;如果是,则进入步骤S240;
S240,预定联盟链节点将接收到的所述动态认证数据包和客户端标识数据转发给预定的企业认证端;
S250,预定的企业认证端根据动态认证数据包中的认证初始数据获取电子标签标识号,并利用预置的电子标签认证主控密钥对所述电子标签标识号进行密钥分散运算获取电子标签认证密钥,并用该电子标签认证密钥对所述动态认证数据进行加密,获得校准认证码;然后进行数据验证,获得企业端验证结果;然后形成企业端防伪认证数据包并发送到预定联盟链平台的预定联盟链节点;所述企业端防伪认证数据包包括接收到的客户端标识数据、企业端验证结果和利用预置私钥对该企业端验证结果签名所获得的签名数据;所述数据验证包括如下内容的至少一个:
(a)对比基准认证码和校准认证码是否一致;
(b)验证时间戳是否在预定的时间范围内;
(c)判断认证计数器的值是否合法;
S260,所述联盟链平台的预定联盟链节点收到所述企业端防伪认证数据包后,利用预置的公钥对所述企业端防伪认证数据包的签名数据进行验证;如果验证通过,则利用预置的私钥对企业端验证结果和客户端标识数据进行签名,并将签名数据和对应的企业端验证结果保存到所述联盟链防伪认证数据包,并将联盟链防伪认证数据包发送给客户端认证工具,进入步骤S270;
S270,客户端验证工具利用预定公钥验证所述联盟链防伪认证数据包中的签名数据并输出验证结果,若验证成功,向所述电子标签发送包含时间戳的状态更新触发消息,进入步骤S310;即在验证电子标签来自真品时,进入状态更新过程;其中,所述签名数据验证可以包括以下两部分:
(a)企业端验证结果是否一致;
(b)客户端标识数据是否合法。
S310,电子标签接收所述状态更新触发消息后,使状态计数器更新,并形成动态标签信息,利用所述电子标签认证密钥对动态标签信息进行加密,生成基准认证码;所述动态标签信息包含认证触发消息、认证初始数据以及状态计数器;然后将动态标签信息数据包传输给预定客户端验证工具;所述动态标签信息数据包包括基准认证码和动态标签信息;
S320,所述客户端验证工具接收到所述动态标签信息数据包后,形成授权请求命令数据包,并将该授权请求命令数据包发送给预定联盟链平台的预定联盟链节点;所述授权请求命令数据包包括预置的客户端标识数据、修改标签状态命令组及接收到的所述动态标签信息数据包;所述客户端标识数据包括客户端标识号和修改标签状态流水号;
S330,所述预定联盟链节点根据预定的策略判断所述客户端标识数据是否合法;如果是,则将所述授权请求命令数据包(包括动态标签信息数据包、修改标签状态命令组和修改标签状态流水号等数据)转发给预定的企业认证端,并进入步骤S340;
S340,预定的企业认证端根据所述授权请求命令数据包中的认证初始数据数据获取电子标签标识号,并利用预置的电子标签认证主控密钥对所述电子标签标识号进行密钥分散运算获取电子标签认证密钥,并用该电子标签认证密钥对所述动态标签信息进行加密,获得校准认证码;然后进行数据验证,判断电子标签是否合法,如果是,则进入步骤S350;所述数据验证包括如下内容的至少一个:
(a)对比基准认证码和校准认证码是否一致;
(b)验证时间戳是否在预定的时间范围内;
(c)判断状态计数器的值是否合法;当前状态计数器的值是否大于上一次状态计数器的值;
S350,企业认证端根据修改标签状态命令组生成修改标签状态的脚本命令数据,并形成答复信息数据,再将形成的企业端修改指令数据包发送到预定联盟链平台的预定联盟链节点;所述答复信息数据包括企业端验证结果、脚本命令数据和脚本命令数据基准认证码,所述脚本命令数据基准认证码由电子标签认证密钥对脚本命令数据进行加密生成;所述企业端修改指令数据包包括接收到的修改标签状态流水号、答复信息数据和利用预置私钥对该答复信息数据签名所获得的签名数据;
S360,所述联盟链平台的预定联盟链节点收到所述企业端修改指令数据包后,利用预置的公钥对所述企业端修改指令数据包的签名数据进行验证;如果验证通过,则利用预置的私钥对所述答复信息数据和修改标签状态流水号进行签名,获得签名数据,并将答复信息数据和该签名数据保存到联盟链修改指令数据包,进入步骤S370;
S370,利用预定公钥验证所述联盟链修改指令数据包中的签名数据;如果验证通过,则将答复信息数据中的脚本命令数据和脚本命令数据基准认证码发送给所述电子标签,进入步骤S380;
S380,所述电子标签用预置的电子标签认证密钥对脚本命令数据进行加密获得脚本命令数据校准认证码,并根据脚本命令数据包校准认证码和脚本命令数据基准认证码判断所述脚本命令数据的合法性;如是,则执行所述脚本命令数据,更新所述状态机。
利用上述认证方法,利用对称密钥对动态数据进行加密原理,通过在电子标签和企业认证端分别设置密钥,通过联盟链平台保证数据传输安全,可以更好地实现对电子标签的认证;利用上述信息更新方法,电子标签根据状态更新触发消息将动态标签数据包发送给客户端验证工具;客户端验证工具转发数据的同时增加客户端标识数据和修改标签状态命令组;然后由联盟链平台根据客户端标识数据判断客户端验证工具的合法性,进而可以利用联盟链平台保证修订电子标签的客户端验证工具合法性;然后再将相关数据发送给企业认证端,由企业认证端验证电子标签真实性之后,再反馈脚本命令数据,这样可以保证企业认证端对电子标签内置信息的控制性,保证电子标签信息安全可靠性;反馈脚本命令数据时,通过联盟链平台及密钥签名处理,可以保证脚本命令数据的安全性。因此,利用该产品防伪电子标签信息更新方法可以保证电子标签信息数据的安全可靠性,进而为提高防伪的可靠性提供良好前提。先认证,再进行更新,可以保证电子标签数据的安全,避免或减少数据篡改的可能。
进一步的技术方案中,所述步骤S260具体包括以下步骤:
S261,所述联盟链平台的预定联盟链节点收到企业端防伪认证数据包后,利用预置的公钥对所述企业端防伪认证数据包中签名数据进行验证;如果验证通过,则利用预置的私钥对所述企业端验证结果和客户端标识数据进行签名,并将签名数据、企业端验证结果保存到所述联盟链防伪认证数据包中,进入步骤S262;
S262,预定联盟链节点判断所述联盟链防伪认证数据包中的签名数据是否满足预定要求;如果否,则将进入步骤S263;如果是,则进入步骤S264;
S263,预定联盟链节点将所述联盟链防伪认证数据包和所述企业端防伪认证数据包发送给另一预定联盟链节点,该另一预定联盟链节点执行步骤S261和步骤S262;
S254,将所述联盟链防伪认证数据包发送给客户端验证工具。
进一步的可选技术方案中,所述步骤S262中,判断所述防伪认证数据包中的签名数据是否满足预定要求,具体是如下内容之一:
(1)判断形成所述签名数据的联盟链节点是否达到预定的数量;
(2)判断形成所述签名数据的联盟链节点是否包括预定的联盟链节点。
进一步的技术方案中,在所述步骤S270之前,还包括预定联盟链节点将修改标签状态流水号发送给客户端验证工具;
在所述步骤S370还包括:客户端验证工具比对接收到的修改标签状态流水号和保存的修改标签状态流水号是否相同,如果为是,再进入步骤S280。
进一步的可选技术方案中,所述企业基准信息数据库包括企业标识号及对应所述企业标识号存储的电子标签标识号的预定属性;
在所述步骤S230中,根据预定的策略判断认证初始数据的合法性,具体包括,在所述企业基准信息数据库中查询相对应的企业标识号;如果查询到,则基于企业标识号在所述企业基准信息数据库中确定对应存储的电子标签标识号的预定属性,并判断所述电子标签标识号是否满足该预定属性,如果是,则判断所述认证初始数据合法。
进一步的技术方案中,所述电子标签识别号为产品编号,所述电子标签标识号的预定属性为电子标签标识号范围参数;
在所述步骤S230中,判断所述认证初始数据中所述电子标签标识号是否满足该预定属性,具体是,判断所述产品编号是否满足所述电子标签标识号范围参数。
本发明提供的一种产品防伪电子标签包括:
存储单元,用于存储电子标签认证密钥、认证初始数据和状态机,所述认证初始数据包括电子标签标识号和企业标识号;所述电子标签识别号和企业标识号具有唯一性;所述状态机用来提供电子标签当前的状态信息,即表征电子标签当前的状态信息;
通讯单元,用于输出或接收通讯数据;
计数单元,用于根据指令更新认证计数器和状态计数器;
第一处理单元,用于通过通讯单元接收包含时间戳的认证触发消息,并通过计数单元使认证计数器更新;还将认证触发消息数据、认证初始数据和认证计数器打包形成动态认证数据,利用所述电子标签认证密钥对动态认证数据进行加密,生成基准认证码;然后通过通讯单元将动态认证数据包传输给客户端验证工具;所述动态认证数据包包括基准认证码和动态认证数据。
第二处理单元,用于通过通讯单元接收包含时间戳的状态更新触发消息,并使状态计数器更新;并根据所述状态更新触发消息形成状态标签信息,利用所述电子标签认证密钥对状态标签信息进行加密,生成基准认证码;所述动态标签信息包含状态更新触发消息、认证初始数据以及状态计数器;然后将动态标签信息数据包传输给预定客户端验证工具;所述动态标签信息数据包包括基准认证码和动态标签信息;还用于在收到脚本命令数据包和脚本命令数据基准认证码后,用预置的电子标签认证密钥对脚本命令数据进行加密获得脚本命令数据校准认证码,并根据脚本命令数据校准认证码和所述脚本命令数据基准认证码判断脚本命令的合法性;如是,则执行所述脚本命令数据,更新所述状态机。
本发明提供的产品防伪认证更新系统包括电子标签、客户端验证工具、联盟链平台和企业认证端:
所述电子标签附着于待认证产品上,为以上所述的产品防伪电子标签;
客户端验证工具,包括认证程序、数据更新程序、输出模块和通讯模块;
所述认证程序适于被处理器执行如下指令:通过所述通讯模块从所述电子标签中获取所述动态认证数据包,并通过所述通讯模块向预定联盟链平台的预定联盟链节点传输所述动态认证数据包和自身的客户端标识数据;所述客户端标识数据包含客户端标识号和客户端认证流水号;还通过所述通讯模块从所述联盟链平台的预定联盟链节点获取反馈的防伪认证数据包之后,利用预定公钥验证防伪认证数据包中的签名数据,并通过所述输出模块输出验证结果,并向所述电子标签发送包含时间戳的状态更新触发消息;
所述数据更新程序适用于被处理器执行如下指令:通过所述通讯模块从所述电子标签中获取所述动态标签信息数据包,并形成授权请求命令数据包,并将该授权请求命令数据包发送给预定联盟链平台的预定联盟链节点;所述授权请求命令数据包包括预置的客户端标识数据和修改标签状态命令组及接收到的所述动态标签信息数据包;所述客户端标识数据包括客户端标识号和修改标签状态流水号;收到联盟链修改指令数据包后,利用预定公钥验证联盟链修改指令数据包中的签名数据;如果验证通过,则将答复信息数据中中的脚本命令数据和脚本命令数据基准认证码发送给所述电子标签。
联盟链平台,包括通讯相连的多个联盟链节点;至少部分联盟链节点具有存储模块、初步认证程序和验证签名程序;
所述存储模块存储预定企业基准信息数据库;
所述初步认证程序适于被处理器执行如下指令:根据认证初始数据查询预置的企业基准信息数据库,并按预定的策略判断所述认证初始数据是否合法;如果是,则将所述动态认证数据包和客户端标识数据转发给预定的企业认证端;在接收到授权请求命令数据包后,根据预定的策略判断所述客户端标识数据是否合法;如果是,则将所述授权请求命令数据包(包括动态标签信息数据包、修改标签状态命令组和修改标签状态流水号的数据)转发给预定的企业认证端;
所述验证签名程序适于被处理器执行如下指令:收到所述企业认证端所形成的企业防伪认证数据包后,利用预置的公钥对所述企业端防伪认证数据包的签名数据进行验证;如果验证通过,则利用预置的私钥对企业端验证结果和客户端标识数据进行签名,并将获得的签名数据和对应的企业端验证结果保存到所述联盟链防伪认证数据包,并将所述联盟链防伪认证数据包发送给客户端验证工具;收到所述企业认证端所形成的企业端修改指令数据包后,利用预置的公钥对所述企业端修改指令数据包的签名数据进行验证;如果验证通过,则利用预置的私钥对所述答复信息数据和修改标签状态流水号进行签名,并将答复信息数据和签名数据保存到联盟链修改指令数据包,并将所述联盟链修改指令数据包发送客户端验证工具;
企业认证端,包括企业端存储模块、数据认证程序和企业端更新程序;
所述企业端存储模块对应所述认证初始数据预存所述电子标签认证主控密钥;
所述数据认证程序适于被处理器执行如下指令:根据接收到的动态认证数据包中认证初始数据获取电子标签标识号,并利用预置的电子标签认证主控密钥对所述电子标签标识号进行密钥分散方法获取电子标签认证密钥,并用该电子标签认证密钥对所述动态认证数据进行加密,获得校准认证码;然后进行数据验证,获得企业端验证结果;然后形成企业端防伪认证数据包并发送到预定联盟链平台的预定联盟链节点;所述防伪认证数据包包括接收到的客户端标识数据、企业端验证结果和利用预置私钥对该企业端验证结果签名所获得的签名数据。
其中,该数据验证包括如下内容的至少一个:
(a)对比基准认证码和校准认证码是否一致;
(b)验证时间戳是否在预定的时间范围内;
(c)判断认证计数器的值是否合法,即判断认证计数器的值是否大于上一次认证计数器的值。
所述企业端更新程序适于被处理器执行如下指令:根据接收到的所述授权请求命令数据包中的认证初始数据获取电子标签标识号,并利用预置的电子标签认证主控密钥对所述电子标签标识号进行密钥分散方法获取电子标签认证密钥,并用该电子标签认证密钥对所述动态标签信息进行加密,获得校准认证码;然后进行数据验证,判断电子标签是否合法,如果是,根据修改标签状态命令组生成修改标签状态的脚本命令数据,并形成答复信息数据,再将形成的企业端修改指令数据包发送到预定联盟链平台的预定联盟链节点;所述答复信息数据包括企业端验证结果、脚本命令数据和脚本命令数据基准认证码,所述脚本命令数据基准认证码由电子标签认证密钥对脚本命令数据进行加密生成;所述企业端修改指令数据包包括接收到的修改标签状态流水号、答复信息数据和企业认证端利用预置私钥对该答复信息数据签名所获得的签名数据。该数据验证可以包括如下内容:
(a)对比基准认证码和校准认证码是否一致;
(b)验证时间戳是否在预定的时间范围内;
(c)判断状态计数器的值是否合法;
进一步的技术方案中,所述验证签名程序适于被处理器执行如下指令:收到企业端防伪认证数据包后,利用预置的公钥对企业端防伪认证数据包的签名数据进行验证;如果验证通过,则利用预置的私钥对企业端验证结果和客户端标识数据进行签名,并将签名数据、企业端验证结果保存到联盟链防伪认证数据包,并进一步判断形成所述签名数据的联盟链节点是否满足预定要求;如果是,则按预设策略将企业端所述防伪认证数据包和联盟链防伪认证数据包反馈给所述客户端验证工具;如果否,则按预设策略将企业端防伪认证数据包、联盟链防伪认证数据包发送给另一预定的联盟链节点。
可选技术方案中,所述企业基准信息数据库包括多个企业标识号和对应所述企业标识号存储的电子标签标识号的预定属性;
所述初步认证程序被处理器执行判断并按预定的策略判断所述认证初始数据是否合法,具体包括,在所述企业基准信息数据库中查询相对应的企业标识号;如果查询到,再基于企业标识号在所述企业基准信息数据库中确定对应存储的电子标签标识号的预定属性,并判断所述认证初始数据中所述电子标签标识号是否满足该预定属性,如果是,则判断所述认证初始数据合法。
附图说明
图1为本发明实施例一提供的产品防伪认证更新方法整体流程图;
图2为本发明实施例二提供产品防伪认证更新方法中认证过程流程图。
图3为本发明实施例二提供产品防伪认证更新方法中更新过程流程图。
图4为本发明实施例提供的一种产品防伪认证更新系统逻辑框图。
具体实施方式
下面结合附图,对本发明作进一步详细的说明,但该具体实施方式并不用于限定本发明的保护范围。
本文件中,所述“唯一性”为相应验证系统中或验证方法过程中的唯一性。
请参考图1,该图为本发明实施例一提供的产品防伪认证更新方法的流程示意图。
为了实施上述该产品防伪认证更新方法,可以在待验证产品设置电子标签。电子标签可以适合的方式附着在待验证产品上,如可以附着在待验证产品本身上,也可以附着在待验证产品的包装物上,还可以附着在待验证产品的其他伴随物品上。
所述电子标签预置有电子标签认证密钥、认证初始数据和状态机。所述认证初始数据包括电子标签标识号和企业标识号。一般而言,所述电子标签标识号和企业标识号具有唯一性,且电子标签标识号与产品可以具有一一对应关系。在一个实施例中,电子标签标识号可以是产品的生产编号。当然,根据实际需要,认证初始数据还可以包括其他与产品相关的其他信息,如产品名称、产品编号、产品有效期和产品状态信息等等。所述状态机用来提供电子标签当前的状态信息。电子标签还设置有认证计数器和状态计数器,计数器可以进行数值更新。
当然,为了保证电子标签中认证初始数据及电子标签认证密钥安全,防止被任意篡改,可以设置成只读数据,如电子标签标识号、产品名称、产品编号、产品有效期等等;当然,为了更新认证初始数据及电子标签认证密钥的方便,可以将其状态信息设置成可读可写方式;也可以按已知方式设置相应技术措施。
基于该电子标签,本发明实施例一提供的产品防伪认证更新方法包括认证过程和更新过程,先进行认证过程,然后再进入更新过程。
具体可以包括以下步骤:
S210,电子标签接收包含时间戳的认证触发消息,使认证计数器更新,并形成动态认证数据,利用所述电子标签认证密钥对动态认证数据进行加密,生成基准认证码;所述动态认证数据包含认证触发消息数据、认证初始数据和认证计数器;然后将动态认证数据包传输给客户端验证工具;所述动态认证数据包包括基准认证码和动态认证数据;
S220,客户端验证工具将自身的客户端标识数据和接收到的动态认证数据包传输给预定联盟链平台的预定联盟链节点;所述客户端标识数据包含客户端标识号和客户端认证流水号。
认证触发消息可以是时间戳消息,可以由客户端验证工具根据需要生成并发送给电子标签的其他具体消息。客户端验证工具可以是专用设备、安装适合软件或程序的通用设备,还可以是安装适合APP的手机。客户端验证工具与电子标签之间可以利用已知方式进行通讯,发送认证触发消息,还可以采用非接触的方式读取认证初始数据,如NFC(近场通信,Near Field Communication)或RFID(射频识别,Radio Frequency Identification)方式读到认证初始数据。
电子标签认证密钥可以在产品生产或出厂时预置在电子标签的相应单元中。电子标签可以按已知策略生成认证初始数据;认证计数器可以预置数据在电子标签中。本实施例中,认证计数器的值为动态变化数据,电子标签每完成一次认证,认证计数器加1。将上述认证触发消息、认证初始数据和认证计数器形成动态认证数据。应当说明的是,本发明中,动态认证数据不限于包含的数据均为动态数据,也包括至少一个为动态数据的情形,如认证触发消息中的时间戳消息为动态数据。
对于动态认证数据,电子标签可以利用电子标签认证密钥对动态认证数据进行加密,生成基准认证码。根据实际需要,动态认证数据可以包括其他数据或信息。
然后,可以将获取的基准认证码和动态认证数据打包形成动态认证数据包,并将该动态认证数据包发送给客户端验证工具,客户端验证工具再将动态认证数据包和客户端标识数据发送给预定联盟链平台的预定联盟链节点。可以理解,为了保证数据传输的安全与完整,数据传输可以按预先策略及协议对数据进行相应处理。本实施例中,通过客户端验证工具进行转发。
S230,所述预定联盟链节点根据认证初始数据查询预置的企业基准信息数据库,并按预定的策略判断所述认证初始数据是否合法;如果是,则进入步骤S240;
接收数据的具体联盟链节点可以按预先确定策略或方式确定,比如,可以由联盟链平台当前共识周期的主节点接收,还可以按预先选定的顺序向预定联盟链节点传输数据;还可以根据上传设备的属性(设备类型、位置、APP编号)选择接收数据的联盟链节点;还可以在联盟链平台中设置适合的装置,按预定的策略对联盟链节点状态选择适合的联盟链节点接收数据。
本实施例中,以联盟链节点A为例进行说明。应当说明的是,在一个产品防伪认证更新方法实施过程中,数据处理可以由一个联盟链节点进行处理,也可以由不同的联盟链节点进行相应处理,本部分中不再进行区分性描述。
为了保证实施例一中产品防伪认证更新方法的顺利进行,需要在联盟链平台的至少部分联盟链节点中预置基础数据。联盟链节点A可以预置相应单元、软件或指令集,以识别动态认证数据包的数据,并根据预定的策略判断所述认证初始数据是否合法。本实施例中,待验证产品的企业可以在联盟链平台的相应入口进行注册,并上传相应企业信息。在通过联盟链平台的预定机制审核后,相应企业可以上传企业代码或其他数据与企业识别号及电子标签标识号相对应的数据,并按已知区块链技术,在多个联盟链节点中按照预设的共识机制,将相应数据在相应联盟链节点中进行同步,形成企业基准信息数据库;多个企业的企业基准信息数据库(包括完整的企业数据或者企业数据摘要)以区块形式存储并形成区块数据链,以为相应的联盟链节点进一步的数据处理提供数据基础。
当然,联盟链平台也可以根据实际需要对注册企业分配或自动生成相应的企业标识号。
该步骤中,联盟链节点A识别认证初始数据中的所述企业标识号后,可以根据预定的策略判断企业标识号是否合法,即判断是否属于在联盟链平台上注册并经审核通过的企业产品,进行初步的验证。预定的策略可以根据实际需要进行选择,如企业标识号格式是否与联盟链平台预先确定的格式相同或相符,企业标识号是否包括特定的消息字段等等。
本实施例中,联盟链节点A预置有企业基准信息数据库,所述企业基准信息数据库包括企业标识号。这样,在步骤S220中,联盟链节点A可以在企业基准信息数据库中查询相对应的企业标识号;如果查询到,则判断所述企业标识号为合法;如果查询不到,则可以判断该产品生产企业为非法,该企业未在联盟链平台上进行注册并审核通过,直接反馈非法提示,警示验证人,该待验证产品并非该联盟链平台可以验证的产品。这样一方面可以提交验证效率,另一方面避免冗余流程。
本发明实施例中,联盟链平台不仅仅用于验证某一家企业产品真伪,可以用于验证多家企业产品的真伪;因此,相应联盟链节点的企业基准信息数据库中,可以并行存储多个企业的企业标识号或其他认证初始数据。
在联盟链节点A中,通过企业标识号的验证,仅证明待验证产品所属企业为该联盟链平台注册用户,并不能证明该待验证产品为正品或真品;因此,需要进一步验证电子标签标识号是否合法。
本实施例中,联盟链节点A的企业基准信息数据库还包括对应所述企业标识号存储的电子标签标识号的预定属性。在步骤S220中,联盟链节点A还可以基于企业标识号在所述企业基准信息数据库中确定对应存储的电子标签标识号的预定属性,并判断所述认证初始数据中所述电子标签标识号是否满足该预定属性,如果是,则判断电子标签标识号合法。
当然,电子标签标识号的预定属性可以根据实际进行选择,可以是预定字段格式及预定字段的具体数据,也可以是长度、格式等等。本实施例中,电子标签标识号为产品编号;电子标签标识号的预定属性可以为电子标签标识号范围参数,即相应企业可以向联盟链平台上传产品电子标签标识范围;在判断电子标签识别号是否合法时,可以判断认证初始数据中的电子标签标识号是否在上传的电子标签标识号范围之内。如上传的电子标签标识号范围参数为13456—34568。如果认证初始数据中的电子标签编号在该范围之内,就可以判断该电子标签标识号合法;否则,就是非法。
如果判断电子标签标识号为非法,则可以直接反馈非法提示,警示验证人,该待验证产品属于赝品。
如果判断电子标签标识号为合法,则按预设策略将所述认证初始数据转发给预定的企业认证端,并进入步骤S240。企业认证端地址可以按已知技术获取,比如可以在预置的数据库中预存与企业识别号对应的企业认证端地址,根据企业识别号查取企业认证端地址,将接收到的认证初始数据转发给相应企业认证端;还可以将企业认证端地址作为企业识别号,进而,根据企业识别号就可以确定企业认证端地址。
S240,预定联盟链节点将接收到的所述动态认证数据包和客户端标识数据转发给预定的企业认证端。
即初步通过预定联盟链节验证之后,联盟链节点将接收到的数据转发给企业认证端,由企业认证端进行进一步验证。
S250,预定的企业认证端根据动态认证数据包中的认证初始数据数据获取电子标签标识号,并利用预置的电子标签认证主控密钥对所述电子标签标识号进行密钥分散运算获取电子标签认证密钥,并用该电子标签认证密钥对所述动态认证数据进行加密,获得校准认证码;然后进行数据验证,获得企业端验证结果;然后形成企业端防伪认证数据包并发送到预定联盟链平台的预定联盟链节点;所述企业端防伪认证数据包包括接收到的客户端标识数据、企业端验证结果和利用预置私钥对该企业端验证结果签名所获得的签名数据。
所述数据验证包括如下内容的至少一个:
(a)对比基准认证码和校准认证码是否一致;
(b)验证时间戳是否在预定的时间范围内;
(c)判断认证计数器的值是否合法。
企业认证端可以由产品生产企业控制,并保存电子标签认证主控密钥,进而在获得电子标签标识号之后,可以利用电子标签主控密钥基于电子标签标识号分散获得电子标签认证密钥。再利用该电子标签认证密钥对所述动态认证数据进行加密,获得校准认证码;然后可以通过对比基准认证码和校准认证码是否一致,等等验证,判断电子标签是否为自于正品。如果为正品,也未被非法篡改,动态认证数据应该相同,利用相同的加密密钥进行加密计算,获得的认证码应该相同;另外,还可以验证时间戳是否在预定的时间范围内以及认证计数器的值是否大于上一次认证计数器的值,验证电子标签(或产品)是否为正品,进而,获得企业端验证结果,可以实现对电子标签的认证,进而实现对产品真伪的鉴别。
当然,还可以核对动态认证数据中其他产品信息,以强化对电子标签的认证。
然后,企业认证端可以利用预置私钥对该企业端验证结果签名,获得签名数据。并将签名数据、对应的企业端验证结果和收到的客户端标识数据打包,形成所述企业端防伪认证数据包。并将企业端防伪认证数据包发送到预定联盟链平台的预定联盟链节点。
当然,企业端防伪认证数据包可以包含其他数据,如验证历史数据(以往验证时间、次数、位置、方式及其他信息)、电子标签标识号等等。企业端防伪认证数据包包括电子标签标识号可以为输出验证结果提供方便。当然,如果验证失败,企业认证端可以进行相应操作,如进行相应标记、记录或发出提示,以让企业认证端的工作人员知晓。
S260,所述联盟链平台的预定联盟链节点收到所述企业端防伪认证数据包后,利用预置的公钥对所述企业端防伪认证数据包的签名数据进行验证;如果验证通过,则利用预置的私钥对企业端验证结果进和客户端标识数据行签名,并将获得的签名数据和对应的企业端验证结果保存到联盟链防伪认证数据包,并将联盟链防伪认证数据包发送给客户端认证工具,进入步骤S260。
在验证失败的情况下,说明企业端防伪认证数据包可能被伪造及篡改,也可能企业认证端为非法企业认证端;此时,可以反馈非法提示,当然,也可以进行其他相应处理或操作,如向企业认证端发送错误信息,要求企业认证端进行确认或其他相应操作。
可以理解,联盟链平台的预定联盟链节点(如联盟链节点B)的验证签名操作(利用预置的公钥可以对所述企业端防伪认证数据包中的签名数据进行验证,验证企业端防伪认证数据包中签名数据的真实性;如果验证通过,则利用预置的私钥对企业端验证结果和客户端标识数据进行签名,并将形成的签名数据保存到联盟链防伪认证数据包)可以提高联盟链防伪认证数据包安全性,避免或减少对联盟链防伪认证数据包的劫持、伪造及篡改。当然,所述预置的公钥与相应企业认证端签名的私钥可以组成非对称密钥对,非对称密钥对可以在企业在联盟链平台注册时生成,也可以按预定机制自动生成或定期更新。为了数据处理方便,联盟链防伪认证数据包可以具有预定的数据结构。
S270,客户端验证工具利用预定公钥验证联盟链防伪认证数据包的签名数据并输出验证结果,并向所述电子标签发送状态更新触发消息。通过验证联盟链防伪认证数据包的签名数据可以确定企业端验证结果是否一致,并可以判断客户端标识数据是否合法。
收到反馈的联盟链防伪认证数据包后,可以利用预定公钥及客户端标识数据验证防伪认证数据包的签名数据并将验证结果以适当的方式输出,让验证人获取验证结果。
与形成签名数据的方式相对应,具体的验证过程如下:
(1)客户端验证工具用预存的联盟链节点公钥恢复联盟链防伪认证数据包中的签名数据,得到数据的哈希值;
(2)客户端验证工具对客户端标识数据和联盟链防伪认证数据包中的企业验证结果进行哈希运算,得到哈希值与从签名数据中恢复的哈希值比较,若相同,则验证通过,否则,验证失败。
该步骤可以在适当客户端验证工具进行,客户端验证工具可以是专用设备,也可以是安装在手机上的适当APP。当然,预定公钥可以有多个,以与预定联盟链节点上加密私钥形成的非对称密钥对,以验证联盟链节点的签名。这些非对称密钥对可以按预定策略预先生成,也可以按预定机制自动生成或定期更新。参与签名验证的客户端标识数据应该与客户端验证工具最初发给联盟链平台的客户端标识数据相同,所述客户端标识数据包括客户端标识号和客户端认证流水号。
通过上述产品防伪认证过程,基于多重方式保证了电子标签真实性。如果造假者伪造生产企业或电子标签识别号等认证初始数据,即伪造电子标签,通过企业标识号合法性判断及电子标签识别号的合法性判断就可以区分赝品和真品;如果造假者伪造企业认证端,也无法通过联盟链平台的验证;如果真正的电子标签被附着在赝品上,通过验证结果中的验证历史数据(企业认证端保存相同电子标签的签证历史,并在验证结果中包括验证历史数据),也可以输出待验证产品可能为赝品的警示;通过客户端验证工具对联盟链返回的签名数据的验证,可以防止对联盟链防伪认证数据包的重放攻击,所述被签名的数据是包含客户端认证流水号的动态数据。因此,利用该认证过程可以提高防伪的可靠性。
基于一种联盟链平台的预设机制,在任一共识周期内,作为联盟链平台主节点的联盟链节点具有随机性;该随机性也可以保证验证签名操作的可靠性。对于不同具有不同预设机制的联盟链平台,为了避免对联盟链平台的预定联盟链节点攻击或篡改,可以预置相应联盟链节点的选举或指定机制,随机选举或指定相应联盟链节点进行上述验证签名操作。当然,也可以设定预定条件,在满足预定要求的情况下,反馈联盟链防伪认证数据包;未满足预定要求,不反馈联盟链防伪认证数据包。
在通过验证之后,客户端验证工具可以向所述电子标签发送状态更新触发消息,进入更新过程,具体包括以下步骤:
S310,电子标签接收包含时间戳的所述状态更新触发消息,使状态计数器更新,并形成动态标签信息,利用所述电子标签认证密钥对动态标签信息进行加密,生成基准认证码;所述动态标签信息可以包含状态更新触发消息、认证初始数据以及状态计数器;然后将动态标签信息数据包传输给预定客户端验证工具;所述动态标签信息数据包包括基准认证码和动态标签信息。
状态更新触发消息可以包括读取数据指令及时间戳数据,也可以包括由客户端验证工具根据需要生成并发送给电子标签的其他具体消息。
本发明实施例中,客户端验证工具分为两种,一种是只能获取电子标签数据及信息的客户端验证工具,另一种不仅可以获取电子标签数据及信息,还可以发起修改电子标签状态的客户端验证工具。前一种可以分发给消费者用户进行使用,后一种可以由企业授权或制造,由商户(如销售者、代理企业)控制或使用,在销售相应产品时,自动触发更新电子标签信息。
所述动态标签信息包括状态计数器,即本次信息更新的特有编号。电子标签可以按已知策略生成状态计数器;本实施例中,状态计数器为动态变化数据,可以由预置的计数器生成,即电子标签每进行一次状态更新,状态计数器加1。将上述状态更新触发消息、认证初始数据和状态计数器形成动态标签信息数据。应当说明的是,本发明中,动态标签信息不限于包含的数据均为动态数据,也包括至少一个为动态数据的情形,如时间戳消息为动态数据。
电子标签可以利用电子标签认证密钥对动态标签信息进行加密,生成基准认证码。根据实际需要,动态标签信息可以包括其他数据或信息。然后,可以将获取的基准认证码和动态标签信息打包形成动态标签信息数据包,并将该动态标签信息数据包发送或反馈给预定的客户端验证工具。可以理解,为了保证数据传输的安全与完整,数据传输可以按预先策略及协议对数据进行相应处理。
S320,所述客户端验证工具接收到所述动态标签信息数据包后,形成授权请求命令数据包,并将该授权请求命令数据包发送给预定联盟链平台的预定联盟链节点;所述授权请求命令数据包包括预置的客户端标识数据、修改标签状态命令组及接收到的所述动态标签信息数据包;所述客户端标识数据包括客户端标识号和修改标签状态流水号。
客户端验证工具在接收到电子标签所述动态标签数据包后,可以将客户端标识数据、修改标签状态命令组和接收到的所述动态标签信息数据包,打包形成授权请求命令数据包,并将该授权请求命令数据包发送到预定联盟链平台的预定联盟链节点。其中,客户端标识数据中的客户端标识号可以是表征客户端验证工具身份的编号或标记,以便于后续流程中确定其合法性。修改标签状态命令组可以包括要修改的目标状态,当然,也可以包括其他信息,如销售区域、销售时间或其他信息。这些信息可以由客户端验证工具在销售时根据预置的软件或程序自动生成,也可以由销售人员人为设定。如在超市销售待验证产品时,在销售扫描产品时,可以触发相应指令,并生成相应的修改标签状态命令组。当然,根据实际需要,可以使所述授权请求命令数据包包括其他数据及信息,以满足实际需要。
S330,所述预定联盟链节点根据预定的策略判断所述客户端标识数据是否合法;如果是,则将所述授权请求命令数据包(包括动态标签信息数据包、修改标签状态命令组和修改标签状态流水号的数据)转发给预定的企业认证端,并进入步骤S340。
接收数据的具体联盟链节点可以按预先确定策略或方式确定,比如,可以由联盟链平台当前共识周期的主节点接收,还可以按预先选定的顺序向预定联盟链节点传输数据;还可以根据上传设备的属性(设备类型、位置、APP编号)选择接收数据的联盟链节点;还可以在联盟链平台中设置适合的装置,按预定的策略对联盟链节点状态选择适合的联盟链节点接收数据。
为了保证实施例一中产品防伪电子标签信息更新方法的顺利进行,在授权某一个客户端验证工具具有更新电子标签状态信息权限时,可以通过适当的激活过程,同时为该客户端验证工具授予一个身份编号,即客户端标识号,如客户端ID;并将该客户端标识号预置在联盟链平台的至少部分联盟链节点。联盟链节点A可以预置相应单元、软件或指令集,以识别授权请求命令数据包的数据,并根据预定的策略判断所述客户端标识号是否合法。本实施例中,待验证产品的企业可以在联盟链平台的相应入口进行注册,并上传相应企业信息。在通过联盟链平台的预定机制审核后,相应企业可以上传企业代码或其他数据,及与企业标识号(代码)及电子标签标识号相对应的数据,如授权的客户端验证工具清单、客户端验证工具类型及类别(商户或个人)及相应客户端标识号;这些上传的数据可以按已知区块链技术,在多个联盟链节点中按照预设的共识机制,将相应数据在相应联盟链节点中进行同步,形成企业基准信息数据库;多个企业的企业基准信息数据库(包括完整的企业数据或者企业数据摘要)以区块形式存储并形成区块数据链,以为相应的联盟链节点进一步的数据处理提供数据基础。
该步骤中,联盟链节点A识别客户端标识号后,可以根据预定的策略判断企业标识号是否合法,即判断是否属于在联盟链平台上注册企业授权更新状态的客户端验证工具。预定的策略可以根据实际需要进行选择,如客户端标识数据是否与联盟链平台预先确定的格式相同或相符,客户端标识数据是否包括特定的消息字段等等。
本实施例中,联盟链节点A预置有企业基准信息数据库,所述企业基准信息数据库包括客户端标识号。这样,在步骤S330中,联盟链节点A可以在企业基准信息数据库中查询相对应的客户端标识号;如果查询到且在商户验证工具范围内,则判断所述客户端标识号为合法;否则,则可以判断客户端标识号为非法,该客户端验证工具未经合法授权,并直接反馈非法提示。
判断所述客户端标识号为合法的,通过联盟链平台初步验证,将动态标签信息数据包、修改标签状态命令组和修改标签状态流水号转发给预定的企业认证端,由企业认证端对动态标签信息数据包进一步验证并进行相应处理。
本发明实施例中,联盟链平台不仅仅用于验证某一家企业产品真伪,可以用于验证多家企业产品的真伪;因此,相应联盟链节点的企业基准信息数据库中,可以并行存储多个企业的企业标识号或其他认证初始数据。
S340,预定的企业认证端根据所述授权请求命令数据包中的认证初始数据获取电子标签标识号,并利用预置的电子标签认证主控密钥对所述电子标签标识号进行密钥分散运算获取电子标签认证密钥,并用该电子标签认证密钥对所述动态标签信息进行加密,获得校准认证码;然后进行数据验证,判断电子标签是否合法,如果是,则进入步骤S350。
其中,所进行的数据验证包括如下内容的至少一个:
(a)对比基准认证码和校准认证码是否一致;
(b)验证时间戳是否在预定的时间范围内;
(c)判断状态计数器的值是否合法。
企业认证端对应所述认证初始数据预存所述电子标签认证主控密钥。这样,在企业认证端接收所述动态标签数据包和修改标签状态命令组之后,用电子标签主控密钥基于电子标签标识号分散获得电子标签认证密钥获取到电子标签认证密钥,再用该电子标签认证密钥对所述动态标签信息进行加密,获得校准认证码;然后通过对比基准认证码和校准认证码判断动态标签信息数据包是否合法,即判断电子标签是否合法
企业认证端可以由产品生产企业控制,并保存电子标签认证主控密钥,利用电子标签主控密钥基于电子标签标识号分散获得电子标签认证密钥。利用该电子标签认证密钥对所述动态标签信息进行加密,获得校准认证码;然后通过对比基准认证码和校准认证码确定动态标签信息数据包是否合法。如果为否,说明电子标签发送的数据有误。如果二者一致,说明数据是完整且未被篡改,可以进入企业认证端处理阶段,即进入步骤S350。
S350,企业认证端根据修改标签状态命令组生成修改标签状态的脚本命令数据,并形成答复信息数据,再将形成的企业端修改指令数据包发送到预定联盟链平台的预定联盟链节点;所述答复信息数据包括企业端验证结果、脚本命令数据和脚本命令数据基准认证码,所述脚本命令数据基准认证码由电子标签认证密钥对脚本命令数据进行加密生成;所述企业端修改指令数据包包括接收到的修改标签状态流水号、答复信息数据和利用预置私钥对该答复信息数据签名所获得的签名数据。
首先,企业认证端获取客户端验证工具产生的修改标签状态命令组,以确定修改的目标状态信息,并基于这些数据,形成修改标签状态的脚本命令数据;通过执行这些命令可以实现更新电子标签数据的目的。
其次,利用预置电子标签认证主控密钥通过密钥分散计算得到电子标签认证密钥,用该电子标签认证密钥对脚本命令数据进行加密生成脚本命令数据基准认证码;再将该脚本命令数据、脚本命令数据基准认证码和企业验证结果打包形成所述答复信息数据包;再利用预置的私钥对该答复信息数据签名获得的签名数据,再将接收到的修改标签状态流水号、签名数据和答复信息数据包打包形成企业端修改指令数据包,并将该企业端修改指令数据包发送到预定联盟链平台的预定联盟链节点。
可以理解,企业端修改指令数据包可以包括更多数据及信息,本发明实施例中,企业端修改指令数据包由预置的数据结构组成,该数据结构中包括预定的数据段,以方便企业端修改指令数据包的存储、更新及处理。
S360,所述联盟链平台的预定联盟链节点收到所述企业端修改指令数据包后,利用预置的公钥对所述企业端修改指令数据包的签名数据进行验证;如果验证通过,则利用预置的私钥对所述答复信息数据和修改标签状态流水号进行签名获得签名数据,并将答复信息数据和获得的签名数据保存到联盟链修改指令数据包,进入步骤S370。
在验证失败的情况下,说明企业端修改指令数据包可能被伪造及篡改,也可能企业认证端为非法企业认证端;此时,可以反馈非法提示,当然,也可以进行其他相应处理或操作,如向企业认证端发送错误信息,要求企业认证端进行确认或其他相应操作。
可以理解,联盟链平台的预定联盟链节点(如联盟链节点B)的验证签名操作(利用预置的公钥可以对所述企业端复修改指令数据包中的签名数据进行验证,验证企业端修改指令数据包中签名数据的真实性;如果验证通过,则利用预置的私钥对答复信息数据和修改标签状态流水号进行签名,并将形成的签名数据保存到所述联盟链修改指令数据包,使联盟链修改指令数据包中具有多个签名数据)可以提高联盟链修改指令数据包安全性,避免或减少对联盟链修改指令数据包的劫持、伪造及篡改。当然,所述预置的公钥与相应企业认证端签名的私钥可以组成非对称密钥对,非对称密钥对可以在企业在联盟链平台注册时生成,也可以按预定机制自动生成或定期更新。
S370,利用预定公钥验证联盟链修改指令数据包中的签名数据;如果验证通过,则将答复信息数据中的脚本命令数据和脚本命令数据基准认证码发送给所述电子标签,进入步骤S380。
该步骤可以在适当的客户端验证工具进行,如可以在安装适当APP的手机上进行操作。当然,预定公钥可以有多个,以与预定联盟链节点上加密私钥形成的非对称密钥对。这些非对称密钥对可以按预定策略预先生成,也可以按预定机制自动生成或定期更新。
收到反馈的联盟链修改指令数据包后,可以利用预定公钥验证联盟链修改指令数据包的签名数据;如果验证通过,则说明数据来源合法,可以将答复信息数据中的脚本命令数据和脚本命令数据基准认证码发送给所述电子标签,进入步骤S380。具体的验证过程与步骤S270相似,不再赘述。
另外,在所述步骤S370之前,还包括预定联盟链节点将修改标签状态流水号发送给客户端验证工具。在所述步骤S370还包括:客户端验证工具比对接收到的修改标签状态流水号和保存的修改标签状态流水号是否相同,如果为是,再进入步骤S280。这样通过对比确定修改标签状态流水号,避免同一客户验证工具的多次状态更新。
S380,所述电子标签用预置的电子标签认证密钥对脚本命令数据包进行加密获得脚本命令数据校准认证码,并根据脚本命令数据包校准认证码和脚本命令数据基准认证码判断脚本命令数据的合法性;如是,则执行所述脚本命令数据,更新所述状态机。
即通过脚本命令数据校准认证码和脚本命令数据基准认证码判断脚本命令数据的合法性,如果脚本命令数据校准认证码和脚本命令数据基准认证码一致,说明脚本命令数据合法;然后执行所述脚本命令数据包可以实现电子标签信息更新,同时保证更新合法性;如可以将产品“待售”状态,更新为“已售”。这样,如果同一电子标签再进行验证时,可以通过状态变化判断后次验证场景,减少电子标签循环使用的控制。状态更新之后,可以将执行结果反馈或发送给客户端验证工具,以输出相应结果。
当然,如果判断脚本命令数据非法,则可以不执行脚本命令数据,并可以反馈错误或其他提示信息。
利用上述产品防伪电子标签信息更新方法,电子标签根据状态更新触发消息将动态标签信息数据包发送给客户端验证工具;客户端验证工具转发数据的同时增加客户端标识数据和修改标签状态命令组;然后由联盟链平台根据客户端标识数据判断客户端验证工具的合法性,进而可以利用联盟链平台保证修订电子标签的客户端验证工具合法性;然后再将相关数据发送给企业认证端,由企业认证端验证电子标签真实性之后,再反馈脚本命令数据,这样可以保证企业认证端对电子标签内置信息的控制性,保证电子标签信息安全可靠性;反馈脚本命令数据时,通过联盟链平台及密钥签名处理,可以保证脚本命令数据的安全性。因此,利用该产品防伪电子标签信息更新方法可以保证电子标签信息数据的安全可靠性,进而为提高防伪的可靠性提供良好前提。
本实施例中,联盟链节点A的企业基准信息数据库还包括对应所述企业标识号存储的电子标签标识号的预定属性。联盟链节点A还可以基于企业标识号在所述企业基准信息数据库中确定对应存储的电子标签标识号的预定属性,在步骤S330中,可以判断所述认证初始数据中所述电子标签标识号是否满足该预定属性。
当然,电子标签标识号的预定属性可以根据实际进行选择,可以是预定字段格式及预定字段的具体数据,也可以是长度、格式等等。本实施例中,电子标签标识号为产品编号;电子标签标识号的预定属性可以为电子标签标识号范围参数,即相应企业可以向联盟链平台上传产品电子标签标识号范围;在判断电子标签标识号是否合法时,可以判断认证初始数据中的电子标签标识号是否在上传的电子标签标识号范围之内。如上传的电子标签标识号范围参数为13456—34568。如果认证初始数据中的电子标签标识号在该范围之内,就可以判断该电子标签标识号合法;否则,就是非法。
如果判断电子标签标识号为非法,则可以直接反馈非法提示,警示验证人,该待验证产品属于赝品。
如果判断电子标签标识号为合法,则按预设策略将所述动态标签信息数据包和修改标签状态命令组转发给预定的企业认证端,并进入步骤S340。企业认证端地址可以按已知技术获取,比如可以在预置的数据库中预存与企业识别号对应的企业认证端地址,根据企业识别号查取企业认证端地址,将接收到的动态标签信息数据包和修改标签状态命令组转发给相应企业认证端;还可以将企业认证端地址作为企业识别号,进而,根据企业识别号就可以确定企业认证端地址。
请参考图2,该图是本发明实施例二提供产品防伪认证更新方法中认证过程流程图。
与实施例一相比,步骤S260进一步包括以下步骤:
S261,所述联盟链平台的预定联盟链节点收到企业端防伪认证数据包后,利用预置的公钥对企业端防伪认证数据包的签名数据进行验证,验证企业端防伪认证数据包中签名数据的真实性;如果验证通过,则利用预置的私钥对企业端验证结果和客户端标识数据进行签名,将签名数据、企业端验证结果保存到联盟链防伪认证数据包,进入步骤S262。
S262,预定联盟链节点判断所述联盟链防伪认证数据包中形成签名数据的联盟链节点是否满足预定要求;如果否,则将进入步骤S263;如果是,则进入步骤S264。
S263,预定联盟链节点将联盟链防伪认证数据包和企业端防伪认证数据包发送给另一预定联盟链节点,该另一预定联盟链节点执行步骤S261和步骤S262,再次进行签名,形成签名数据,保存到联盟链防伪认证数据包中,更新联盟链防伪认证数据包的数据。
反复进行上述步骤,直至对联盟链防伪认证数据包验证并签名的联盟链节点满足预定要求,进入步骤S264。
S264,反馈联盟链防伪认证数据包,即将所述联盟链防伪认证数据包发送给客户端验证工具。
本发明实施例中,判断对企业端防伪认证数据包验证并签名的联盟链节点是否满足预定要求,具体是,判断形成签名数据的联盟链节点是否达到预定的数量。即企业端验证结果通过多少个联盟链节点的验证签名。如果通过验证签名的联盟链节点达到预定数量,就可以认为,该企业端防伪认证数据包(如企业端验证结果)被篡改的可能性更低,其可能具有更高的可信性,发挥联盟链平台的优势。
判断形成签名数据的联盟链节点是否达到预定的数量可以采用已知的方式。本实施例中,可以在包括企业端防伪认证数据包的消息数据中内嵌指针数据N,每通过一个联盟链节点的验证签名,使N=N+1;并预设预定数量为M(M不小于2)。在判断形成签名数据的联盟链节点是否达到预定的数量时,判断N是否大于等于M;在N大于等于M时,判断形成签名数据的联盟链节点达到预定的数量,执行步骤S264;在N小于M时,判断形成签名数据的联盟链节点未达到预定的数量,执行步骤S263。
当然,也可以根据联盟链节点之间输送数据的特点(如联盟链节点签名数量)确定形成签名数据的联盟链节点的数量,进而判断是否有预定数量的联盟链节点进行验证签名。
利用上述步骤S261和步骤S262,如果联盟链平台中某一联盟链节点对企业端防伪认证数据包(如企业端验证结果)进行了篡改,会导致其他参与验证的联盟链节点无法完成验证签名操作,此时联盟链平台将返回非法信息提示,提醒用户该信息是可疑的,进而利用该产品防伪认证更新方法可以保证验证效果。
当然,判断形成签名数据的联盟链节点是否满足预定要求,还可以采用其他预定策略,如:可以在联盟链平台上设置特定(位置、级别或预定)的联盟链节点,只有通过该特定联盟链节点的验证签名之后才可以执行步骤S264。可以理解,该预定联盟链节点可以为产品企业指定联盟链节点,也可以是专门设置有级别更高的联盟链节点,还可以是按预定机制随机选定的联盟链节点。这样的机制也可以保证验证结果真实性,提高产品防伪电子标签认证的可靠性。
请参考图3,该图是本发明实施例二提供产品防伪认证更新方法中更新过程流程图。与图2所示所述联盟链平台的预定联盟链节点验证签名过程类似,不再详细描述,简单描述如下:
与实施例一相比,步骤S360进一步包括以下步骤:
S361,所述联盟链平台的预定联盟链节点收到企业端修改指令数据包后,利用预置的公钥对企业端修改指令数据包的签名数据进行验证,验证企业端修改指令数据包中签名数据的真实性;如果验证通过,则利用预置的私钥对答复信息数据和修改标签状态流水号进行签名,将签名数据保存到所述联盟链修改指令数据包,进入步骤S362。即联盟链平台的预定联盟链节点通过验证企业认证端签名数据之后,再利用自己预置的私钥对答复信息数据和修改标签状态流水号进行签名,并将形成的签名数据追加到联盟链修改指令数据包中。
为了数据处理方便,可以将联盟链修改指令数据包设置有预定格式,包括联盟链修改指令数据包和多个签名数据字段。对企业端修改指令数据包的签名数据进行验证,可以由联盟边链节点对上一个签名数据进行验证,也可以对所有签名数据进行验证。当然,联盟链节点要预置与相应私钥对应的公钥。
S362,预定联盟链节点判断形成签名数据的联盟链节点是否满足预定要求;如果否,则将进入步骤S363;如果是,则进入步骤S364。具体策略可以根据实际需要选择。可以判断形成签名数据的联盟链节点是否达到预定的数量,也可以判断是否由特定联盟链节点形成签名数据,等等。
S363,预定联盟链节点将联盟链修改指令数据包、企业端修改指令数据包发送给另一预定联盟链节点,该另一预定联盟链节点执行步骤S361和步骤S362,再次进行签名,形成签名数据,并保存到联盟链修改指令数据包中,更新联盟链修改指令数据包的数据。
反复进行上述步骤,直至对联盟链修改指令数据包验证并签名的联盟链节点满足预定要求,进入步骤S364。
S364,反馈联盟链修改指令数据包,即将联盟链修改指令数据包发送给预定客户端验证工具。
在提供上述产品防伪认证更新方法的基础上,本发明实施例还提供一种产品防伪电子标签及包括该电子标签的产品防伪认证更新系统。应当说明的是,本发明提供的产品防伪认证更新方法不限于使用本发明提供的产品防伪电子标签及其认证系统,也可以采用其他相应电子标签及相应的系统实施。
为了节省篇幅,以下对产品防伪认证更新系统实施例描述的同时,对本发明提供产品防伪电子标签进行描述,不再对产品防伪电子标签实施例进行单独描述。
请参考图4,该图为本发明实施例提供的一种产品防伪认证更新系统逻辑框图。
该产品防伪认证更新系统包括电子标签、客户端验证工具、联盟链平台和企业认证端。所述电子标签附着在待验证产品上,可以与待验证产品具有一对一的关系。该电子标签可以包括:
存储单元,用于存储电子标签认证密钥、认证初始数据和状态机,所述认证初始数据包括电子标签标识号和企业标识号;所述电子标签标识号和企业标识号具有唯一性;所述状态机用来提供电子标签当前的状态信息,即表征电子标签当前的状态信息。
通讯单元,用于输出或接收通讯数据。
计数单元,用于根据预定处理单元的指令更新认证计数器和状态计数器。
第一处理单元,用于通过通讯单元接收包含时间戳的认证触发消息,并根据所述认证触发消息触发计数单元进行计数,更新认证标识数据;还将认证触发消息数据、认证初始数据和认证计数器打包形成动态认证数据,利用所述电子标签认证密钥对动态认证数据进行加密,生成基准认证码;然后通过通讯单元将动态认证数据包传输给客户端验证工具;所述动态认证数据包包括基准认证码和动态认证数据。具体参考上述方法中对步骤S210的描述,在此不再赘述。
第二处理单元,用于通过通讯单元接收包含时间戳的状态更新触发消息,并使状态计数器更新,并根据所述状态更新触发消息形成动态标签信息,利用所述电子标签认证密钥对动态标签信息进行加密,生成基准认证码;所述动态标签信息包含状态更新触发消息、认证初始数据以及状态计数器;然后将动态标签信息数据包传输给预定客户端验证工具。其中,所述动态标签信息包含认证初始数据及其他数据;当然,根据实际需要,所述动态标签信息数据包除了包括基准认证码和动态标签信息之外,还可以包括其他数据或信息。具体实施过程可以参考上述方法中步骤S310的内容,不再赘述。
第二处理单元还用于在收到包括脚本命令数据和脚本命令数据基准认证码后,用预置的电子标签认证密钥对脚本命令数据进行加密获得脚本命令数据校准认证码,并根据脚本命令数据校准认证码和所述脚本命令数据基准认证码判断脚本命令数据的合法性;如是,则执行所述脚本命令数据,更新所述状态机。具体可以参考上述方法实施例对步骤S380的描述。
电子标签可以设置电源模块,以为电子标签数据处理提供电能,电源模块可以分别与所述存储单元、通讯单元、计数单元及第一处理单元电连接。
客户端验证工具,设置有认证程序、数据更新程序、输出模块和通讯模块。
所述认证程序适于被处理器执行如下指令:
通过所述通讯模块从所述电子标签中获取所述动态认证数据包,并通过所述通讯模块向预定联盟链平台的预定联盟链节点传输所述动态认证数据包和自身的客户端标识数据;所述客户端标识数据包含客户端标识号和客户端认证流水号。具体工作过程可以参考上述对步骤S220的描述。
所述认证程序还适于被处理器执行如下指令:在通过所述通讯模块从所述联盟链平台的预定联盟链节点获取反馈的联盟链防伪认证数据包之后,利用预定公钥验证联盟链防伪认证数据包中的签名数据,并通过所述输出模块输出验证结果,并向所述电子标签发送包含时间戳的状态更新触发消息。具体工作过程可以参考上述对步骤S270的描述。
所述数据更新程序适用于被处理器执行如下指令:通过所述通讯模块从所述电子标签中获取所述动态标签信息数据包,并形成授权请求命令数据包,并将该授权请求命令数据包发送给预定联盟链平台的预定联盟链节点;所述授权请求命令数据包包括预置的客户端标识数据和修改标签状态命令组及接收到的所述动态标签信息数据包。具体过程可以参考上述方法实施例对步骤S320的描述。其中,客户端标识数据包括客户端标识号和修改标签状态流水号,客户端标识号可以是客户端验证工具的ID,即设备编号,该授权请求命令数据包可以包括其他数据或信息。
所述数据更新程序还用于利用预定公钥验证企业端修改指令数据包中的签名数据;如果验证通过,则将企业端修改指令数据包中的答复信息数据包含的脚本命令数据和脚本命令数据基准认证码发送给所述电子标签。具体实施方式请参考上述方法对步骤中S370的描述。
客户端验证工具可以是专用设备、安装适合软件或程序的通用设备,还可以是安装适合APP的手机。在进行产品防伪电子标签认证操作时,客户端验证工具可以用于向电子标签发送认证触发消息,并可以将接收到的动态认证数据包转发给预定联盟链平台的预定联盟链节点;还可以向电子标签发送状态更新触发消息,并可以将接收到的动态标签信息数据包转发给预定联盟链平台的预定联盟链节点。
电子标签和客户端验证工具应当相互匹配,以进行数据交互。如电子标签可以包括RFID标签;RFID标签可以包括电路单元和天线单元,所述电路单元预置所述认证初始数据。客户端验证工具的通讯模块可以包括读取电路单元和读取天线单元;所述读取天线单元与所述RFID标签的天线单元耦合时,客户端验证工具可以获取所述动态认证数据包,或发送认证触发消息。
联盟链平台,可以包括通讯相连的多个联盟链节点,且至少部分联盟链节点具有存储模块、初步认证程序和验证签名程序,用于进行初步认证及验证签名。
其中,所述存储模块存储预定企业基准信息数据库,数据可以区块方式存储。
所述初步认证程序适于被处理器执行如下指令:根据认证初始数据查询预置的企业基准信息数据库,并按预定的策略判断所述认证初始数据是否合法;如果是,则将所述动态认证数据包和客户端标识数据转发给预定的企业认证端。即可以执行上述产品防伪认证更新方法中的步骤S230、S240,具体不再赘述。
在接收到授权请求命令数据包后,所述初步认证程序可以根据预定的策略判断所述客户端标识数据是否合法;如果是,则将授权请求命令数据包转发给预定的企业认证端,即将所述动态标签信息数据包、修改标签状态命令组和修改标签状态流水号转发给预定的企业认证端。即执行上述产品防伪电子标签信息更新方法中的步骤S330,具体不再赘述。
所述验证签名程序适于被处理器执行如下指令:收到所述企业端防伪认证数据包后,利用预置的公钥对所述企业端防伪认证数据包的签名数据进行验证;如果验证通过,则利用预置的私钥对企业端验证结果和客户端标识数据进行签名,并将签名数据和对应的企业端验证结果保存到联盟链防伪认证数据包,并将所述联盟链防伪认证数据包发送给客户端验证工具。即执行上述产品防伪认证更新方法中的步骤S260。
收到所述企业端修改指令数据包后,所述验证签名程序适于被处理器执行:利用预置的公钥对所述签名数据进行验证;如果验证通过,则利用预置的私钥对所述答复信息数据和修改标签状态流水号进行签名,并将答复信息数据和签名数据保存到联盟链修改指令数据包,并将所述联盟链修改指令数据包发送客户端验证工具。即执行上述产品防伪电子标签信息更新方法中的步骤S360,具体不再赘述。
根据上述描述,可以理解,可以让任一联盟链节点均预置存储模块、初步认证程序和验证签名程序。
企业认证端,可以由相应产品的生产企业控制或持有,作为企业认证端进行使用,以保证相应企业对验证数据控制。
企业认证端可以包括企业端存储模块、数据认证程序和企业端更新程序。
企业端存储模块可以对应所述认证初始数据预存所述电子标签认证主控密钥。
所述数据认证程序适于被处理器执行如下指令:根据接收到的动态认证数据包中认证初始数据获取电子标签标识号,并利用预置的电子标签认证主控密钥对所述电子标签标识号进行密钥分散方法获取电子标签认证密钥,并用该电子标签认证密钥对所述动态认证数据进行加密,获得校准认证码;然后进行数据验证(可以是:通过对比基准认证码和校准认证码是否一致;验证时间戳是否在预定的时间范围内以及判断认证计数器的值是否大于上一次认证计数器的值),获得企业端验证结果;然后形成企业端防伪认证数据包并发送到预定联盟链平台的预定联盟链节点;所述企业端防伪认证数据包包括客户端标识数据、企业端验证结果和利用预置私钥对该企业端验证结果签名所获得的签名数据。即可以执行上述产品防伪认证更新方法中的步骤S250,具体不再赘述。
所述企业端更新程序适于被处理器执行如下指令:根据接收到的所述授权请求命令数据包中的认证初始数据获取电子标签标识号,并利用预置的电子标签认证主控密钥对所述电子标签标识号进行密钥分散方法获取电子标签认证密钥,并用该电子标签认证密钥对所述动态标签信息进行加密,获得校准认证码;然后进行数据验证(可以包括:通过对比基准认证码和校准认证码是否一致;验证时间戳是否在预定的时间范围内以及判断状态计数器的值是否大于上一次状态计数器的值),判断电子标签是否合法,如果是,根据修改标签状态命令组生成修改标签状态的脚本命令数据,并形成答复信息数据,再将形成的企业端修改指令数据包发送到预定联盟链平台的预定联盟链节点;所述答复信息数据包括企业端验证结果、脚本命令数据和脚本命令数据基准认证码,所述脚本命令数据基准认证码由电子标签认证密钥对脚本命令数据进行加密生成;所述企业端修改指令数据包包括修改标签状态流水号、答复信息数据和利用预置私钥对该答复信息数据签名所获得的签名数据。即可以执行上述产品防伪电子标签信息更新方法中的步骤S350,具体不再赘述。
当然,企业认证端可以包括相应的无线或有线的通讯模块,以和联盟链平台进行数据传输。
与上述产品防伪认证更新方法实施例二认证过程相对应,进一步地,所述验证签名程序可以适于被处理器执行如下指令:收到企业端防伪认证数据包后,利用预置的公钥对企业端防伪认证数据包的签名数据进行验证;如果验证通过,则利用预置的私钥对企业端验证结果和客户端标识数据进行签名,并将签名数据、企业端验证结果保存到联盟链防伪认证数据包,并进一步判断形成所述签名数据的联盟链节点是否满足预定要求;如果是,则按预设策略将所述联盟链防伪认证数据包反馈给所述客户端验证工具;如果否,则按预设策略将企业端防伪认证数据包和联盟链防伪认证数据包发送给预定的联盟链节点,对联盟链防伪认证数据包进行更新操作。在进行产品防伪电子标签认证操作时,验证签名程序主要执行上述步骤S261至S264,其工作方式不再赘述。相应的,与更新过程相对应,所述验证签名程序可以适于被处理器执行如下指令:收到企业端修改指令数据包后,利用预置的公钥对企业端修改指令数据包的签名数据进行验证;如果验证通过,则利用预置的私钥对所述答复信息数据和修改标签状态流水号进行签名,并将签名数据、企业端验证结果保存到联盟链修改指令数据包,并进一步判断形成所述签名数据的联盟链节点是否满足预定要求;如果是,则按预设策略将联盟链修改指令数据包反馈给所述客户端验证工具;如果否,则按预设策略将联盟链修改指令数据包、企业端修改指令数据包发送给预定的联盟链节点,对联盟链修改指令数据包进行更新操作。在进行产品防伪电子标签信息更新操作时,验证签名程序主要执行上述产品防伪电子标签信息更新方法中的步骤S361至S364,其工作方式不再赘述。
进一步的实施例中,所述企业基准信息数据库可以包括多个企业标识号和对应所述企业标识号存储的电子标签标识号的预定属性。
相应的,所述初步认证程序被处理器执行,执行判断并按预定的策略判断所述认证初始数据是否合法时,具体可以为:
在所述企业基准信息数据库中查询相对应的企业标识号;如果查询到,再基于企业标识号在所述企业基准信息数据库中确定对应存储的电子标签标识号的预定属性,并判断所述认证初始数据中所述电子标签标识号是否满足该预定属性,如果是,则判断所述认证初始数据合法。
本发明提供的产品防伪认证更新系统实施例中,所述电子标签标识号可以是产品编号。所述企业基准信息数据库中,所述电子标签标识号的预定属性可以是电子标签标识号范围参数。相应的,所述企业认证端验证程序被处理器执行,判断所述认证初始数据中所述电子标签标识号是否满足预定属性时,是判断所述产品编号是否满足所述电子标签标识号范围参数。
利用上述产品防伪认证更新系统进行判断,判断结果相反情况下,可以反馈非法提示;非法提示可以通过客户端验证工具输出。
进一步的实施例中,可以使所述动态标签信息和所述答复信息数据均包含状态更新触发消息数据;状态更新触发消息数据可以包括时间戳,以通过时间戳验证数据真实性。
具体使用本发明提供的产品防伪认证更新系统进行产品防伪电子标签认证的具体流程,可以参考上述对产品防伪认证更新方法流程的描述,在此不再赘述。
以上内容仅是结合本发明实施例对其所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (9)
1.一种产品防伪认证更新方法,其特征在于,待验证产品设置有电子标签,所述电子标签包括认证计数器和状态计数器,预置有电子标签认证密钥、认证初始数据和状态机,所述认证初始数据包括电子标签标识号和企业标识号;所述电子标签标识号和企业标识号具有唯一性;所述状态机表征电子标签当前的状态信息;
所述产品防伪认证更新方法包括以下步骤:
S210,电子标签接收包含时间戳的认证触发消息,使认证计数器更新,并形成动态认证数据,利用所述电子标签认证密钥对动态认证数据进行加密,生成基准认证码;所述动态认证数据包含认证触发消息数据、认证初始数据和认证计数器;然后将动态认证数据包传输给客户端验证工具;所述动态认证数据包包括基准认证码和动态认证数据;
S220,客户端验证工具将自身的客户端标识数据和接收到的动态认证数据包传输给预定联盟链平台的预定联盟链节点;所述客户端标识数据包含客户端标识号和客户端认证流水号;
S230,所述预定联盟链节点根据认证初始数据查询预置的企业基准信息数据库,并按预定的策略判断所述认证初始数据是否合法;如果是,则进入步骤S240;
S240,预定联盟链节点将接收到的所述动态认证数据包和客户端标识数据转发给预定的企业认证端;
S250,预定的企业认证端根据动态认证数据包中的认证初始数据获取电子标签标识号,并利用预置的电子标签认证主控密钥对所述电子标签标识号进行密钥分散运算获取电子标签认证密钥,并用该电子标签认证密钥对所述动态认证数据进行加密,获得校准认证码;然后进行数据验证,获得企业端验证结果;然后形成企业端防伪认证数据包并发送到预定联盟链平台的预定联盟链节点;所述企业端防伪认证数据包包括接收到的客户端标识数据、企业端验证结果和利用预置私钥对该企业端验证结果签名所获得的签名数据;所述数据验证包括如下内容的至少一个:
(a)对比基准认证码和校准认证码是否一致;
(b)验证时间戳是否在预定的时间范围内;
(c)判断认证计数器的值是否合法;
S260,所述联盟链平台的预定联盟链节点收到所述企业端防伪认证数据包后,利用预置的公钥对所述企业端防伪认证数据包的签名数据进行验证;如果验证通过,则利用预置的私钥对企业端验证结果和客户端标识数据进行签名,并将签名数据和对应的企业端验证结果保存到联盟链防伪认证数据包,并将联盟链防伪认证数据包发送给客户端认证工具,进入步骤S270;
S270,客户端验证工具利用预定公钥验证所述联盟链防伪认证数据包中的签名数据并输出验证结果,若验证成功,向所述电子标签发送包含时间戳的状态更新触发消息,进入步骤S310;
S310,电子标签接收所述状态更新触发消息后,使状态计数器更新,并形成动态标签信息,利用所述电子标签认证密钥对动态标签信息进行加密,生成基准认证码;所述动态标签信息包含状态更新触发消息、认证初始数据以及状态计数器;然后将动态标签信息数据包传输给预定客户端验证工具;所述动态标签信息数据包包括基准认证码和动态标签信息;
S320,所述客户端验证工具接收到所述动态标签信息数据包后,形成授权请求命令数据包,并将该授权请求命令数据包发送给预定联盟链平台的预定联盟链节点;所述授权请求命令数据包包括预置的客户端标识数据、修改标签状态命令组及接收到的所述动态标签信息数据包;所述客户端标识数据包括客户端标识号和修改标签状态流水号;
S330,所述预定联盟链节点根据预定的策略判断所述客户端标识数据是否合法;如果是,则将所述授权请求命令数据包转发给预定的企业认证端,并进入步骤S340;
S340,预定的企业认证端根据所述授权请求命令数据包中的认证初始数据获取电子标签标识号,并利用预置的电子标签认证主控密钥对所述电子标签标识号进行密钥分散运算获取电子标签认证密钥,并用该电子标签认证密钥对所述动态标签信息进行加密,获得校准认证码;然后进行数据验证,判断电子标签是否合法,如果是,则进入步骤S350;所述数据验证包括如下内容的至少一个:
(a)对比基准认证码和校准认证码是否一致;
(b)验证时间戳是否在预定的时间范围内;
(c)判断状态计数器的值是否合法;
S350,企业认证端根据修改标签状态命令组生成修改标签状态的脚本命令数据,并形成答复信息数据,再将形成的企业端修改指令数据包发送到预定联盟链平台的预定联盟链节点;所述答复信息数据包括企业端验证结果、脚本命令数据和脚本命令数据基准认证码,所述脚本命令数据基准认证码由电子标签认证密钥对脚本命令数据进行加密生成;所述企业端修改指令数据包包括接收到的修改标签状态流水号、答复信息数据和利用预置私钥对该答复信息数据签名所获得的签名数据;
S360,所述联盟链平台的预定联盟链节点收到所述企业端修改指令数据包后,利用预置的公钥对所述企业端修改指令数据包的签名数据进行验证;如果验证通过,则利用预置的私钥对所述答复信息数据和修改标签状态流水号进行签名,并将答复信息数据和签名数据保存到联盟链修改指令数据包,进入步骤S370;
S370,利用预定公钥验证所述联盟链修改指令数据包中的签名数据;如果验证通过,则将答复信息数据中的脚本命令数据和脚本命令数据基准认证码发送给所述电子标签,进入步骤S380;
S380,所述电子标签用预置的电子标签认证密钥对脚本命令数据进行加密获得脚本命令数据校准认证码,并根据脚本命令数据校准认证码和脚本命令数据基准认证码判断所述脚本命令数据的合法性;如是,则执行所述脚本命令数据,更新所述状态机。
2.根据权利要求1所述的产品防伪认证更新方法,其特征在于,
所述步骤S260具体包括以下步骤:
S261,所述联盟链平台的预定联盟链节点收到企业端防伪认证数据包后,利用预置的公钥对所述企业端防伪认证数据包中签名数据进行验证;如果验证通过,则利用预置的私钥对所述企业端验证结果和客户端标识数据进行签名,并将签名数据、企业端验证结果保存到所述联盟链防伪认证数据包中,进入步骤S262;
S262,预定联盟链节点判断所述联盟链防伪认证数据包中的签名数据是否满足预定要求;如果否,则将进入步骤S263;如果是,则进入步骤S264;
S263,预定联盟链节点将所述联盟链防伪认证数据包和所述企业端防伪认证数据包发送给另一预定联盟链节点,该另一预定联盟链节点执行步骤S261和步骤S262;
S264,将所述联盟链防伪认证数据包发送给客户端验证工具。
3.根据权利要求2所述的产品防伪认证更新方法,其特征在于,
所述步骤S262中,判断所述联盟链防伪认证数据包中的签名数据是否满足预定要求,具体是如下内容之一:
(1)判断形成所述签名数据的联盟链节点是否达到预定的数量;
(2)判断形成所述签名数据的联盟链节点是否包括预定的联盟链节点。
4.根据权利要求1至3任一项所述的产品防伪认证更新方法,其特征在于,在所述步骤S370之前,还包括预定联盟链节点将修改标签状态流水号发送给客户端验证工具;
在所述步骤S370还包括:客户端验证工具比对接收到的修改标签状态流水号和保存的修改标签状态流水号是否相同,如果为是,再进入步骤S280。
5.根据权利要求1至3任一项所述的产品防伪认证更新方法,其特征在于,
所述企业基准信息数据库包括企业标识号及对应所述企业标识号存储的电子标签标识号的预定属性;
在所述步骤S230中,根据预定的策略判断认证初始数据的合法性,具体包括,在所述企业基准信息数据库中查询相对应的企业标识号;如果查询到,则基于企业标识号在所述企业基准信息数据库中确定对应存储的电子标签标识号的预定属性,并判断所述电子标签标识号是否满足该预定属性,如果是,则判断所述认证初始数据合法。
6.根据权利要求5所述的产品防伪认证更新方法,其特征在于,
所述电子标签识别号为产品编号,所述电子标签识别号的预定属性为电子标签编号范围参数;
在所述步骤S230中,判断所述认证初始数据中所述电子标签标识号是否满足该预定属性,具体是,判断所述产品编号是否满足所述电子标签标识号范围参数。
7.一种产品防伪认证更新系统,其特征在于,包括电子标签、客户端验证工具、联盟链平台和企业认证端:
所述电子标签附着于待认证产品上,该电子标签包括:
存储单元,用于存储电子标签认证密钥、认证初始数据和状态机,所述认证初始数据包括电子标签标识号和企业标识号;所述电子标签识别号和企业标识号具有唯一性;所述状态机表征电子标签当前的状态信息;
通讯单元,用于输出或接收通讯数据;
计数单元,用于根据指令更新认证计数器和状态计数器;
第一处理单元,用于通过通讯单元接收包含时间戳的认证触发消息,并使认证计数器更新;还将认证触发消息数据、认证初始数据和认证计数器打包形成动态认证数据,利用所述电子标签认证密钥对动态认证数据进行加密,生成基准认证码;然后通过通讯单元将动态认证数据包传输给客户端验证工具;所述动态认证数据包包括基准认证码和动态认证数据;
第二处理单元,用于通过通讯单元接收包含时间戳的状态更新触发消息,并使状态计数器更新;并根据所述状态更新触发消息形成动态标签信息,利用所述电子标签认证密钥对动态标签信息进行加密,生成基准认证码;所述动态标签信息包含状态更新触发消息、认证初始数据以及状态计数器;然后将动态标签信息数据包传输给预定客户端验证工具;所述动态标签信息数据包包括基准认证码和动态标签信息;还用于在收到脚本命令数据和脚本命令数据基准认证码后,用预置的电子标签认证密钥对脚本命令数据进行加密获得脚本命令数据校准认证码,并根据脚本命令数据校准认证码和所述脚本命令数据基准认证码判断脚本命令的合法性;如是,则执行所述脚本命令数据,更新所述状态机;
客户端验证工具,包括认证程序、数据更新程序、输出模块和通讯模块;
所述认证程序适于被处理器执行如下指令:通过所述通讯模块从所述电子标签中获取所述动态认证数据包,并通过所述通讯模块向预定联盟链平台的预定联盟链节点传输所述动态认证数据包和自身的客户端标识数据;所述客户端标识数据包含客户端标识号和客户端认证流水号;还通过所述通讯模块从所述联盟链平台的预定联盟链节点获取反馈的防伪认证数据包之后,利用预定公钥验证防伪认证数据包中的签名数据,并通过所述输出模块输出验证结果,并向所述电子标签发送包含时间戳的状态更新触发消息;
所述数据更新程序适用于被处理器执行如下指令:通过所述通讯模块从所述电子标签中获取所述动态标签信息数据包,并形成授权请求命令数据包,并将该授权请求命令数据包发送给预定联盟链平台的预定联盟链节点;所述授权请求命令数据包包括预置的客户端标识数据、修改标签状态命令组及接收到的所述动态标签信息数据包;所述客户端标识数据包括客户端标识号和修改标签状态流水号;还用于利用预定公钥验证联盟链修改指令数据包中的签名数据;如果验证通过,则将答复信息数据中的脚本命令数据和脚本命令数据基准认证码发送给所述电子标签;
联盟链平台,包括通讯相连的多个联盟链节点;至少部分联盟链节点具有存储模块、初步认证程序和验证签名程序;
所述存储模块存储预定企业基准信息数据库;
所述初步认证程序适于被处理器执行如下指令:根据认证初始数据查询预置的企业基准信息数据库,并按预定的策略判断所述认证初始数据是否合法;如果是,则将所述动态认证数据包和客户端标识数据转发给预定的企业认证端;在接收到授权请求命令数据包后,根据预定的策略判断所述客户端标识数据是否合法;如果是,则将所述授权请求命令数据包转发给预定的企业认证端;
所述验证签名程序适于被处理器执行如下指令:收到所述企业认证端所形成的企业端防伪认证数据包后,利用预置的公钥对所述企业端防伪认证数据包的签名数据进行验证;如果验证通过,则利用预置的私钥对企业端验证结果和客户端标识数据进行签名,并将签名数据和对应的企业端验证结果保存到联盟链防伪认证数据包,并将所述联盟链防伪认证数据包发送给客户端验证工具;收到所述企业认证端所形成的企业端修改指令数据包后,利用预置的公钥对所述企业端修改指令数据包的签名数据进行验证;如果验证通过,则利用预置的私钥对所述答复信息数据和修改标签状态流水号进行签名,并将答复信息数据和签名数据保存到联盟链修改指令数据包,并将所述联盟链修改指令数据包发送客户端验证工具;
企业认证端,包括企业端存储模块、数据认证程序和企业端更新程序;
企业端存储模块对应所述认证初始数据预存所述电子标签认证主控密钥;
所述数据认证程序适于被处理器执行如下指令:根据接收到的动态认证数据包中认证初始数据获取电子标签标识号,并利用预置的电子标签认证主控密钥对所述电子标签标识号进行密钥分散方法获取电子标签认证密钥,并用该电子标签认证密钥对所述动态认证数据进行加密,获得校准认证码;然后进行数据验证,获得企业端验证结果;然后形成企业端防伪认证数据包并发送到预定联盟链平台的预定联盟链节点;所述企业端防伪认证数据包包括接收到的客户端标识数据、企业端验证结果和利用预置私钥对该企业端验证结果签名所获得的签名数据;其中,该数据验证包括如下内容的至少一个:
(a)对比基准认证码和校准认证码是否一致;
(b)验证时间戳是否在预定的时间范围内;
(c)判断认证计数器的值是否合法;
所述企业端更新程序适于被处理器执行如下指令:根据接收到的所述授权请求命令数据包中的认证初始数据获取电子标签标识号,并利用预置的电子标签认证主控密钥对所述电子标签标识号进行密钥分散方法获取电子标签认证密钥,并用该电子标签认证密钥对所述动态标签信息进行加密,获得校准认证码;然后进行数据验证,判断电子标签是否合法,如果是,根据修改标签状态命令组生成修改标签状态的脚本命令数据,并形成答复信息数据,再将形成的企业端修改指令数据包发送到预定联盟链平台的预定联盟链节点;所述答复信息数据包括企业端验证结果、脚本命令数据和脚本命令数据基准认证码,所述脚本命令数据基准认证码由电子标签认证密钥对脚本命令数据进行加密生成;所述企业端修改指令数据包包括接收到的修改标签状态流水号、答复信息数据和利用预置私钥对该答复信息数据签名所获得的签名数据,该数据验证包括如下内容:
(a)对比基准认证码和校准认证码是否一致;
(b)验证时间戳是否在预定的时间范围内;
(c)判断状态计数器的值是否合法。
8.根据权利要求7所述的产品防伪认证更新系统,其特征在于,所述验证签名程序适于被处理器执行如下指令:收到企业端防伪认证数据包后,利用预置的公钥对企业端防伪认证数据包的签名数据进行验证;如果验证通过,则利用预置的私钥对企业端验证结果和客户端标识数据进行签名,并将签名数据、企业端验证结果保存到联盟链防伪认证数据包,并进一步判断形成所述签名数据的联盟链节点是否满足预定要求;如果是,则按预设策略将所述防伪认证数据包反馈给所述客户端验证工具;如果否,则按预设策略将企业端防伪认证数据包、联盟链防伪认证数据包发送给预定的联盟链节点。
9.根据权利要求7或8所述的产品防伪认证更新系统,其特征在于,
所述企业基准信息数据库包括多个企业标识号和对应所述企业标识号存储的电子标签标识号的预定属性;
所述初步认证程序被处理器执行判断并按预定的策略判断所述认证初始数据是否合法,具体包括,在所述企业基准信息数据库中查询相对应的企业标识号;如果查询到,再基于企业标识号在所述企业基准信息数据库中确定对应存储的电子标签标识号的预定属性,并判断所述认证初始数据中所述电子标签标识号是否满足该预定属性,如果是,则判断所述认证初始数据合法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811383665.XA CN109360008B (zh) | 2018-11-20 | 2018-11-20 | 产品防伪认证更新方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811383665.XA CN109360008B (zh) | 2018-11-20 | 2018-11-20 | 产品防伪认证更新方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109360008A CN109360008A (zh) | 2019-02-19 |
CN109360008B true CN109360008B (zh) | 2021-08-10 |
Family
ID=65332414
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811383665.XA Active CN109360008B (zh) | 2018-11-20 | 2018-11-20 | 产品防伪认证更新方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109360008B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109951294B (zh) * | 2019-02-21 | 2021-12-14 | 中云信安(深圳)科技有限公司 | 电子标签系统中的信息更新管理方法及相关设备 |
CN111143466B (zh) * | 2019-11-12 | 2022-06-24 | 成都四方伟业软件股份有限公司 | 一种基于区块链的数据防伪方法 |
CN112685786A (zh) * | 2021-01-27 | 2021-04-20 | 永辉云金科技有限公司 | 一种金融数据加密、解密方法、系统、设备及存储介质 |
CN113869913B (zh) * | 2021-09-10 | 2023-06-27 | 深圳市太美亚电子科技有限公司 | 防伪方法、服务器、系统和二维码生成方法、电子产品 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102136079A (zh) * | 2011-03-07 | 2011-07-27 | 中兴通讯股份有限公司 | 一种读写器与标签卡之间的动态认证方法及实现装置 |
CN102609846A (zh) * | 2011-03-18 | 2012-07-25 | 诺美网讯应用技术有限公司 | 基于通信网络的防伪验证方法及系统 |
CN104702604A (zh) * | 2015-03-09 | 2015-06-10 | 西安电子科技大学 | 基于简单逻辑加密和时间戳的双向认证方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3066860A2 (en) * | 2013-11-08 | 2016-09-14 | Vattaca, LLC | Authenticating and managing item ownership and authenticity |
US9858569B2 (en) * | 2014-03-21 | 2018-01-02 | Ramanan Navaratnam | Systems and methods in support of authentication of an item |
CN104243164A (zh) * | 2014-08-27 | 2014-12-24 | 韩洪慧 | 一种动态加密非接触式防伪标签及控制方法 |
CN106878318B (zh) * | 2017-03-03 | 2020-01-07 | 上海唯链信息科技有限公司 | 一种区块链实时轮询云端系统 |
CN108650223A (zh) * | 2018-04-02 | 2018-10-12 | 江苏中控安芯信息安全技术有限公司 | 一种网络设备点对点可信认证方法及系统 |
-
2018
- 2018-11-20 CN CN201811383665.XA patent/CN109360008B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102136079A (zh) * | 2011-03-07 | 2011-07-27 | 中兴通讯股份有限公司 | 一种读写器与标签卡之间的动态认证方法及实现装置 |
CN102609846A (zh) * | 2011-03-18 | 2012-07-25 | 诺美网讯应用技术有限公司 | 基于通信网络的防伪验证方法及系统 |
CN104702604A (zh) * | 2015-03-09 | 2015-06-10 | 西安电子科技大学 | 基于简单逻辑加密和时间戳的双向认证方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109360008A (zh) | 2019-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11743054B2 (en) | Method and system for creating and checking the validity of device certificates | |
CN109360008B (zh) | 产品防伪认证更新方法和系统 | |
CN109522988B (zh) | 产品防伪电子标签信息更新方法和系统 | |
US8334757B2 (en) | Controlling data access to and from an RFID device | |
US9858569B2 (en) | Systems and methods in support of authentication of an item | |
Islam et al. | On IC traceability via blockchain | |
US10019530B2 (en) | ID tag authentication system and method | |
TW202042573A (zh) | 準備並執行物體驗證的方法及系統 | |
US20140095398A1 (en) | Double ID Anti-Counterfeit Method and System | |
CN105096134A (zh) | 用于验证数字实体及聚合对象来源的安全方案的系统及方法 | |
WO2019119541A1 (zh) | 基于区块链的商品确权及所有权转移方法和系统 | |
CN112165382B (zh) | 软件授权方法、装置、授权服务端及终端设备 | |
KR20070020680A (ko) | 제품인증 방법 및 그 장치 | |
CN111740841B (zh) | 溯源码的验证方法和装置 | |
WO2017116303A1 (en) | Secure dual-mode anti-counterfeit product authentication methodology and system | |
WO2013075547A1 (zh) | 产品的防伪方法和系统以及身份信息的产生方法和装置 | |
EP3432179B1 (en) | Security tag and electronic system usable with molded case circuit breakers | |
US20180205714A1 (en) | System and Method for Authenticating Electronic Tags | |
CN109583555B (zh) | 产品防伪电子标签认证方法和系统 | |
CN109508560A (zh) | 电子标签离线认证系统及方法 | |
CN109544182B (zh) | 产品防伪验证方法及系统 | |
CN109509007A (zh) | 产品防伪电子标签及电子标签认证方法和系统 | |
CN109543791B (zh) | 产品防伪验证方法和系统 | |
CN109523277B (zh) | 产品防伪电子标签认证方法和系统 | |
CN112862047A (zh) | 双重授权的智能防伪标签生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |