CN113902384B - 一种基于rfid和智能合约的溯源方法及系统 - Google Patents

一种基于rfid和智能合约的溯源方法及系统 Download PDF

Info

Publication number
CN113902384B
CN113902384B CN202111494814.1A CN202111494814A CN113902384B CN 113902384 B CN113902384 B CN 113902384B CN 202111494814 A CN202111494814 A CN 202111494814A CN 113902384 B CN113902384 B CN 113902384B
Authority
CN
China
Prior art keywords
node
link
rfid
circulation
nonce
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
Application number
CN202111494814.1A
Other languages
English (en)
Other versions
CN113902384A (zh
Inventor
陈政霖
郑飞州
陈胜俭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Youkegu Technology Co ltd
Original Assignee
Guangzhou Youkegu Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Youkegu Technology Co ltd filed Critical Guangzhou Youkegu Technology Co ltd
Priority to CN202111494814.1A priority Critical patent/CN113902384B/zh
Publication of CN113902384A publication Critical patent/CN113902384A/zh
Application granted granted Critical
Publication of CN113902384B publication Critical patent/CN113902384B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping
    • G06Q10/0833Tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K17/00Methods 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/0022Methods 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 provisions for transferring data to distant stations, e.g. from a sensing device
    • G06K17/0029Methods 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 provisions for transferring data to distant stations, e.g. from a sensing device the arrangement being specially adapted for wireless interrogation of grouped or bundled articles tagged with wireless record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/018Certifying business or products
    • G06Q30/0185Product, service or business identity fraud
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Strategic Management (AREA)
  • Computer Hardware Design (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Marketing (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Human Resources & Organizations (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供的一种基于RFID和智能合约的溯源方法,包括:在物品开始流通前,上游节点将合法的EPC码写入待流通物品的RFID标签内;在区块链网络的世界状态树上创建一个账号;上游节点根据业务需求确定进行下一环节处理的节点的物理身份;第i个环节的流通节点收到所述商品时,通过RFID读写设备读取RFID标内的kpub、存入其中的数组E和元数据meta;第i个环节的流通节点将RFID标签和商品发往下一节点;第i个环节的流通节点将kpub、EPC码、Ei和函数write()发到区块链网络,区块链网络调用智能合约进行验证后,将Ei写进智能合约的数据区中。

Description

一种基于RFID和智能合约的溯源方法及系统
技术领域
本发明涉及RFID技术领域,更具体地,涉及一种基于RFID和智能合约的溯源方法及系统。
背景技术
在供应链管理或需要涉及流程复杂、参与主体众多的商品生产、物流等领域,如何保证产品或零部件完好且安全地准时送达下一级处理节点,以防止假货的掺入和相关人员的造假,是目前亟需解决的难题。目前,不同细分领域的研究人员从各自的专业领域出发,提出了初步可行的商品追溯和流程管理方法,其中较为有效的是以区块链技术为中心的智能合约、多方安全计算等密码学相关算法,另外,随着基于RFID技术的物品识别方法的应用普及,大内存容量的RFID标签也有望成为产品溯源场景的有效辅助工具。
区块链技术以其具有的不可抵赖和不可篡改性,成为商品溯源和防伪领域的重要新兴方法。其主要通过将每次的交易或每个环节的操作进行数字签名,并将交易和其签名进行上链操作来实现可信性。数字签名方法确保了每个交易都有密码学安全的确切生成者,不相关的节点或用户无法伪造上链前的交易信息,从而初步保证各个交易的不可伪造和不可抵赖。另外,各个阶段的交易通过区块链平台按照区块的形式组织起来,该链式结构的任何一个区块如果被恶意修改,全网诚实节点都可以及时发现,这就可以防止数据被恶意删改的风险。
目前的基于区块链技术的溯源及安全管理方法大多基于上述思路进行改进,或是增加一些辅助技术进行安全优化。比如中国专利公布号为“CN106779737A”的专利申请提出将私链和公链相结合的溯源防伪方法。用户在将交易发往公链的同时也将其副本保存在本地的私链里,在交易进行的每个环节,各个相关方都可以将公链上的数据的关键字段与本地私链的进行比对,若发现数据不匹配,则表明数据被恶意篡改,从而增强商品流转信息的可信性与实时性。
但上述方法仍存在一个较大的问题,由于私链是完全由单个用户或节点控制的区块链系统,包括与某个特定的物流过程相关联的其他任何节点都无权访问,这种将关联交易进行孤立切割的方法存在安全隐患。
比如上游的某个节点将交易上链后,如果长时间不在线,那么恶意节点对交易的恶意篡改将无法被及时发现,交易过程仍然存在被下游节点错误执行的可能,存在分叉的风险。同时,这类方法只能保证“链上”信息的可信性,上链信息通常是实际商品的一些属性,如价格、名称、重量等,无法保证链下商品的可信性。
发明内容
本发明的发明目的在于提供一种基于RFID和智能合约的溯源方法,本方法以链下的RFID标签为载体的业务流转过程的建链策略,确保溯源过程的完整性和可信性。且应用智能合约准入策略,确保链上备份数据的可信性。
为实现以上发明目的,采用的技术方案是:
一种基于RFID和智能合约的溯源方法,包括:
1)在物品开始流通前,上游节点将合法的EPC码写入待流通物品的RFID标签内;在区块链网络的世界状态树上创建一个账号,所述账号的值为上游节点的公钥
Figure 100002_DEST_PATH_IMAGE001
;在该账号下生成控制对所述EPC码进行授权访问的智能合约,所述智能合约以所述EPC码为索引进行查找;
其中所述智能合约包括数据区和代码区,数据区为溯源数组E,E的第
Figure 100002_DEST_PATH_IMAGE002
个元素
Figure 100002_DEST_PATH_IMAGE003
表示第
Figure 819653DEST_PATH_IMAGE002
个环节的流通节点的前一个物流环节的所有数据的哈希值,
Figure 100002_DEST_PATH_IMAGE004
表示第
Figure 81001DEST_PATH_IMAGE002
个环节的流通节点操作完成时间,
Figure 100002_DEST_PATH_IMAGE005
表示第
Figure 595159DEST_PATH_IMAGE002
个环节的流通节点指定下一环节有权限进行操作的节点的公钥,
Figure 100002_DEST_PATH_IMAGE006
表示第
Figure 337506DEST_PATH_IMAGE002
个环节的流通节点对
Figure 100002_DEST_PATH_IMAGE007
Figure 823982DEST_PATH_IMAGE004
Figure 177603DEST_PATH_IMAGE005
合成的字符串的哈希值
Figure 100002_DEST_PATH_IMAGE008
进行的数字签名;代码区包含至少一个函数,所述函数供合法节点调用用于对节点进行鉴权操作后写入新的元素
Figure 100002_DEST_PATH_IMAGE009
,所述函数记作write(),其参数为调用该函数的节点的公钥和待写入的数据;
2)上游节点根据业务需求确定进行下一环节处理的节点的物理身份,然后从证书颁发中心或本地缓存的证书目录中查找与节点对应的公钥
Figure 320002DEST_PATH_IMAGE005
,记录当前的处理时间
Figure 925427DEST_PATH_IMAGE004
,计算前一个物流环节的所有数据的哈希值
Figure 797568DEST_PATH_IMAGE007
,以及计算当前环节的数字签名
Figure 56511DEST_PATH_IMAGE006
Figure 217365DEST_PATH_IMAGE002
的初始值为1;
3)上游节点将其公钥
Figure 154710DEST_PATH_IMAGE001
、EPC码、
Figure 100002_DEST_PATH_IMAGE010
和函数write()发到区块链网络;
4)区块链网络上的节点收到所述上游节点发送的数据后,依次根据
Figure 146936DEST_PATH_IMAGE001
、EPC查找到对应智能合约,并调用函数write()传入参数
Figure 983305DEST_PATH_IMAGE001
Figure 490510DEST_PATH_IMAGE009
;函数write()检查
Figure 172158DEST_PATH_IMAGE001
是否为该世界状态树的账号的公钥,若是则将
Figure 18892DEST_PATH_IMAGE009
写入智能合约数据区的第
Figure 885216DEST_PATH_IMAGE002
个数组元素中;
5)上游节点在所述RFID标签内分出三块存储区,分别存储
Figure 755083DEST_PATH_IMAGE001
、数组E和元数据meta,其中E的长度为
Figure 100002_DEST_PATH_IMAGE011
,并将
Figure 568319DEST_PATH_IMAGE001
Figure 3979DEST_PATH_IMAGE009
通过标签读写设备写入该RFID标签内;meta包含三个字段nonce、
Figure 100002_DEST_PATH_IMAGE012
Figure 100002_DEST_PATH_IMAGE013
,其中nonce表示当前节点处于第nonce个物流环节,
Figure 665641DEST_PATH_IMAGE012
表示对nonce的签名,
Figure 350700DEST_PATH_IMAGE013
为验证签名用的公钥;上游节点将nonce置为1,并使用其私钥对nonce进行签名,传入
Figure 170888DEST_PATH_IMAGE012
,并将自身的公钥写入
Figure 929897DEST_PATH_IMAGE013
;将商品及其附着的RFID标签发往公钥为
Figure 403604DEST_PATH_IMAGE005
的节点;
6)令
Figure 100002_DEST_PATH_IMAGE014
,第
Figure 451325DEST_PATH_IMAGE002
个环节的流通节点收到所述商品时,通过RFID读写设备读取RFID标内的
Figure 809625DEST_PATH_IMAGE001
、存入其中的数组E和元数据meta;
61)若E已被填满,则依次验证数组E中的每个数组元素,验证meta的签名数据是否正确,以及确定
Figure 100002_DEST_PATH_IMAGE015
;若通过验证,则第
Figure 219878DEST_PATH_IMAGE002
个环节的流通节点将标签内的nonce值增1,对nonce进行签名传入
Figure 598907DEST_PATH_IMAGE012
,并将自身公钥传入
Figure 927733DEST_PATH_IMAGE013
62)若E未被填满,则依次验证数组E中的每个数组元素,验证meta的签名数据是否正确,以及确定
Figure 100002_DEST_PATH_IMAGE016
,以及满足
Figure 100002_DEST_PATH_IMAGE017
若通过验证,第
Figure 824144DEST_PATH_IMAGE002
个环节的流通节点将标签内的nonce值增一,对nonce进行签名传入
Figure 26587DEST_PATH_IMAGE012
,并将自身的公钥传入
Figure 842096DEST_PATH_IMAGE013
,第
Figure 661147DEST_PATH_IMAGE002
个环节的流通节点计算
Figure 220305DEST_PATH_IMAGE009
,并写入RFID标签内;
7)第
Figure 73991DEST_PATH_IMAGE002
个环节的流通节点将RFID标签和商品发往下一节点;
8)第
Figure 794823DEST_PATH_IMAGE002
个环节的流通节点将
Figure 835591DEST_PATH_IMAGE001
、EPC码、
Figure 932860DEST_PATH_IMAGE009
和函数write()发到区块链网络,区块链网络调用智能合约进行验证后,将
Figure 641053DEST_PATH_IMAGE009
写进智能合约的数据区中;
9)跳转6)。
同时,本发明还提供了一种基于RFID和智能合约的溯源系统,其具体的方案如下:
包括上游节点、流通节点和终端节点;所述上游节点、流通节点和终端节点内存储有程序,所述上游节点、流通节点和终端节点内的程序运行时,执行以上的基于RFID和智能合约的溯源方法的步骤。
与现有技术相比,本发明的有益效果是:
本发明提供的基于RFID和智能合约的溯源方法能够提高物流环节的全程可追踪性和可信性,特别在整个过程的流程比较复杂且节点所处网络环境较差时。传统的溯源方法常常需要在节点和区块链网络间进行多轮通信,可信性严重依赖区块链节点的可信性。本发明则在链下即可离线完成链式溯源过程,大量的链上共识与智能合约的执行过程则可在网络环境良好时补充进行。在最坏的情况下,物流过程中的某个节点将标签内的所有溯源数据全部删除,但其若想伪造足够长度的溯源数据,则需要联合足够多的节点一起作恶才可能欺骗下游节点。若物流链条较长,在实际生产环境中几乎无法伪造,从而增强了溯源过程的强可信性。
附图说明
图1为基于RFID和智能合约的溯源方法的流程示意图。
图2为溯源系统的整体拓扑结构示意图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
以下结合附图和实施例对本发明做进一步的阐述。
实施例1
图1为基于RFID和智能合约的溯源方法的流程示意图。如图1所示,本发明提供的方法包括以下步骤:
(1)初始化:各企业或流通节点的主体单位组建面向商品流通场景的联盟链,并且向联盟链的证书颁发中心申请各自的数字证书,数字证书的字段至少包含节点物理身份(比如企业名)、节点类型、证书颁发时间。数字证书将一个随机的字符串(即公钥)与各个节点的物理身份唯一地绑定起来,实现在区块链网络里可信地标识任一节点的功能。其中,节点类型包括上游节点、流通节点、终端节点,在这三种类型的内部可根据具体商品内容进行进一步细分。
(2)在物品开始流通前,上游节点将合法的EPC码写入待流通物品的RFID标签内,在区块链网络的世界状态树上创建一个账号,该账号的值为上游节点的公钥
Figure 798365DEST_PATH_IMAGE001
。然后在该账号下生成一个控制对该EPC码进行授权访问的智能合约,该智能合约以该EPC码为索引进行查找。
智能合约包括数据区和代码区,其中数据区是一个溯源数组E,E的第
Figure 594938DEST_PATH_IMAGE002
个元素
Figure 495898DEST_PATH_IMAGE009
是如下数据的集合:
Figure 793018DEST_PATH_IMAGE007
表示第
Figure 121231DEST_PATH_IMAGE002
个环节的流通节点的前一个物流环节的所有数据的哈希值,
Figure 136592DEST_PATH_IMAGE004
表示第
Figure 575664DEST_PATH_IMAGE002
个环节的流通节点操作完成时间,
Figure 992870DEST_PATH_IMAGE005
表示第
Figure 491984DEST_PATH_IMAGE002
个环节的流通节点指定下一环节有权限进行操作的节点的公钥,
Figure 994641DEST_PATH_IMAGE006
表示第
Figure 237403DEST_PATH_IMAGE002
个环节的流通节点对
Figure 774695DEST_PATH_IMAGE007
Figure 179131DEST_PATH_IMAGE004
Figure 434663DEST_PATH_IMAGE005
合成的字符串的哈希值
Figure 215538DEST_PATH_IMAGE008
进行的数字签名;
Figure 100002_DEST_PATH_IMAGE018
,在具体实施时,hash函数可以是任何一种成熟的商用哈希函数,concat函数表示将其变量按照从左到右的顺序进行字符拼接后得到的字符串;在具体实施时可根据业务需求采用相应的成熟的商用签名算法。其中,每个环节的哈希操作的计算方法如下:
Figure 100002_DEST_PATH_IMAGE019
(公式1)
代码区包含至少一个函数,该函数供合法节点调用用于对节点进行鉴权操作后,写入新的元素E,记作write(),其参数为调用该函数的节点的公钥和待写入的数据。
(3)上游节点根据业务需求,确定可进行下一环节处理的节点的物理身份,然后从证书颁发中心或本地缓存的证书目录中,查找与该物理身份对应的公钥
Figure DEST_PATH_IMAGE020
,记下当前的处理时间
Figure DEST_PATH_IMAGE021
,然后根据上述公式计算
Figure DEST_PATH_IMAGE022
,最后计算
Figure DEST_PATH_IMAGE023
(4)上游节点将其公钥
Figure 948614DEST_PATH_IMAGE001
、EPC码、
Figure DEST_PATH_IMAGE024
和函数write()发到区块链网络。
(5)区块链网络上的节点收到所述数据,依次根据
Figure 930476DEST_PATH_IMAGE001
、EPC找到对应智能合约,调用函数write(),并传入参数
Figure 407725DEST_PATH_IMAGE001
Figure DEST_PATH_IMAGE025
。函数write()检查
Figure 664394DEST_PATH_IMAGE001
是否为该世界状态树的账号的公钥,若是,则将
Figure 35333DEST_PATH_IMAGE025
写入智能合约的数据区的第一个数组元素中。
(6)上游节点在该RFID标签内分出三块存储区,分别存储
Figure 922517DEST_PATH_IMAGE001
、数组E和元数据meta,其中E的长度为
Figure 480537DEST_PATH_IMAGE011
,并将
Figure 744160DEST_PATH_IMAGE001
Figure 969605DEST_PATH_IMAGE025
通过标签读写设备写入该RFID标签内。meta包含三个字段,其中一个为nonce,表示当前节点处于第nonce个物流环节,一个为对nonce的签名
Figure 18901DEST_PATH_IMAGE012
,另一个为验证签名用的公钥
Figure 595376DEST_PATH_IMAGE013
。上游节点将nonce置为1,并使用其私钥对nonce进行签名,传入
Figure 397110DEST_PATH_IMAGE012
,并将自身的公钥写入
Figure 477062DEST_PATH_IMAGE013
。最后将商品及其附着的RFID标签发往公钥为
Figure 237207DEST_PATH_IMAGE020
的节点。
(7)后面第i个环节的任何一个节点收到该商品时,都会通过RFID读写设备读取标签的里的
Figure 35399DEST_PATH_IMAGE001
、存入其中的数组E和元数据meta。
(7.1)如果此时E已被填满,本环节节点则通过上游节点所默认使用的哈希算法和签名算法,依次验证每个数组元素,然后验证meta里签名数据是否正确,以及确定
Figure 640824DEST_PATH_IMAGE015
(7.2)如果E未被填满,则除了进行(7.1)的步骤外,还需满足
Figure 309703DEST_PATH_IMAGE016
,以及满足
Figure 240749DEST_PATH_IMAGE017
(公式2)
(8.1)若步骤(7.1)通过验证,当前环节的节点将标签内的nonce值增一,对nonce进行签名传入
Figure 526237DEST_PATH_IMAGE012
,并将自身的公钥传入
Figure 669774DEST_PATH_IMAGE013
(8.2)若步骤(7.2)通过验证,除了进行(8.1)的操作外,当前节点还需对
Figure 724317DEST_PATH_IMAGE009
进行计算,并写入标签内。
(9)当前环节的节点将标签和商品发往下一节点。
(10)当前环节的节点将
Figure 560686DEST_PATH_IMAGE001
、EPC码、
Figure 67891DEST_PATH_IMAGE009
和函数write()发到区块链网络,区块链网络调用智能合约进行验证后,将
Figure 15119DEST_PATH_IMAGE009
写进智能合约数据区中。
图2为溯源系统的整体拓扑结构示意图。溯源系统在运行的过程中,各个节点依次向RFID标签添加链式溯源数组,以及向区块链网络调用智能合约。
实施例2
本实施例对本发明的基于RFID和智能合约的溯源方法提供了如下的物流场景:
物流过程开始前,每个参与方都向证书授权中心申请一个数字证书,比如生产企业的数字证书举例为{ABC工厂,上游节点,2021年1月3日,ABC工厂的公钥
Figure 189748DEST_PATH_IMAGE001
,…,发证中心的签名},每个节点都可以通过企业名称查找到其公钥,也可以通过公钥查找企业名称。对于一些所处网络环境较差的中间物流节点,其预先下载所有参与方的证书,而不用每次都向授权中心通过网络请求获取。
ABC工厂将合法的EPC码写入待流通物品的RFID标签内,在区块链网络内创建以该EPC码为索引的智能合约。然后其根据实际业务需求,确定将本商品发往EDF物流站;然后向授权中心或本地缓存的证书集合中查找EDF物流站的公钥
Figure 928509DEST_PATH_IMAGE020
,按照(公式1)生成哈希值,并生成溯源数组的第一个元素
Figure 188589DEST_PATH_IMAGE025
,另外生成meta,其中nonce=1,对nonce签名得
Figure 673928DEST_PATH_IMAGE012
,并将自身的公钥传入
Figure 703064DEST_PATH_IMAGE013
ABC工厂并行进行如下操作:
1、通过标签读写设备将
Figure 615657DEST_PATH_IMAGE001
、EPC码、
Figure 363033DEST_PATH_IMAGE025
写入RFID标签;
2、调用区块链网络的函数write(),传入参数
Figure 652063DEST_PATH_IMAGE001
、EPC码、
Figure 535705DEST_PATH_IMAGE025
函数write()的基本逻辑是判断节点是否有权限对数组E进行新增元素的操作,比如写第一个元素时,只有合约创建者有权限,后续的元素写操作都只能由数组E的最后一个元素的公钥的所有者可写。根据业务需求,可对函数write()进行额外的准入策略控制。
当EDF物流站收到来自ABC工厂的商品,其先读取标签内的
Figure 884778DEST_PATH_IMAGE001
、数组E和元数据meta,使用
Figure 853871DEST_PATH_IMAGE001
Figure 681013DEST_PATH_IMAGE025
内的签名字段以及meta内的签名字段进行验签操作,以及进行一些业务相关的验证操作。并根据物流实际情况,选取GHI物流站作为下一节点,从本地证书集合中获得GHI物流站的公钥
Figure DEST_PATH_IMAGE026
,然后生成
Figure DEST_PATH_IMAGE027
,若标签的存储空间足够,则将
Figure 622424DEST_PATH_IMAGE027
写入标签。同时,修改meta中的nonce=2,对nonce签名得
Figure 876819DEST_PATH_IMAGE012
,并将自身的公钥传入
Figure 333208DEST_PATH_IMAGE013
EDF物流站将货物发给GHI物流站,然后在网络质量较好的情况下,调用区块链网络的write(),传入参数
Figure 966970DEST_PATH_IMAGE001
、EPC码、
Figure 825205DEST_PATH_IMAGE027
GHI物流站进行同样的操作,直到最后一个节点。
通过这样的操作,溯源数组内的各个元素实际上形成了一条面向该商品的流转过程的区块链,实现了离线情况下的建链和验证过程。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

Claims (5)

1.一种基于RFID和智能合约的溯源方法,其特征在于:包括:
1)在物品开始流通前,上游节点将合法的EPC码写入待流通物品的RFID标签内;在区块链网络的世界状态树上创建一个账号,所述账号的值为上游节点的公钥
Figure DEST_PATH_IMAGE001
;在该账号下生成控制对所述EPC码进行授权访问的智能合约,所述智能合约以所述EPC码为索引进行查找;
其中所述智能合约包括数据区和代码区,数据区为溯源数组E,E的第
Figure DEST_PATH_IMAGE002
个元素
Figure DEST_PATH_IMAGE003
表示第
Figure 735914DEST_PATH_IMAGE002
个环节的流通节点的前一个物流环节的所有数据的哈希值,
Figure DEST_PATH_IMAGE004
表示第
Figure 554965DEST_PATH_IMAGE002
个环节的流通节点操作完成时间,
Figure DEST_PATH_IMAGE005
表示第
Figure 255068DEST_PATH_IMAGE002
个环节的流通节点指定下一环节有权限进行操作的节点的公钥,
Figure DEST_PATH_IMAGE006
表示第
Figure 631124DEST_PATH_IMAGE002
个环节的流通节点对
Figure DEST_PATH_IMAGE007
Figure 758480DEST_PATH_IMAGE004
Figure 127144DEST_PATH_IMAGE005
合成的字符串的哈希值
Figure DEST_PATH_IMAGE008
进行的数字签名;代码区包含至少一个函数,所述函数供合法节点调用用于对节点进行鉴权操作后写入新的元素
Figure DEST_PATH_IMAGE009
,所述函数记作write(),其参数为调用该函数的节点的公钥和待写入的数据;
2)上游节点根据业务需求确定进行下一环节处理的节点的物理身份,然后从证书颁发中心或本地缓存的证书目录中查找与节点对应的公钥
Figure 99780DEST_PATH_IMAGE005
,记录当前的处理时间
Figure 604710DEST_PATH_IMAGE004
,计算前一个物流环节的所有数据的哈希值
Figure 699705DEST_PATH_IMAGE007
,以及计算当前环节的数字签名
Figure 555666DEST_PATH_IMAGE006
Figure 128730DEST_PATH_IMAGE002
的初始值为1;
3)上游节点将其公钥
Figure 753746DEST_PATH_IMAGE001
、EPC码、
Figure DEST_PATH_IMAGE010
和函数write()发到区块链网络;
4)区块链网络上的节点收到所述上游节点发送的数据后,依次根据
Figure 488484DEST_PATH_IMAGE001
、EPC查找到对应智能合约,并调用函数write()传入参数
Figure 566161DEST_PATH_IMAGE001
Figure 208495DEST_PATH_IMAGE009
;函数write()检查
Figure 685088DEST_PATH_IMAGE001
是否为该世界状态树的账号的公钥,若是则将
Figure 121886DEST_PATH_IMAGE009
写入智能合约数据区的第
Figure 686859DEST_PATH_IMAGE002
个数组元素中;
5)上游节点在所述RFID标签内分出三块存储区,分别存储
Figure 867305DEST_PATH_IMAGE001
、数组E和元数据meta,其中E的长度为
Figure DEST_PATH_IMAGE011
,并将
Figure 935755DEST_PATH_IMAGE001
Figure 543454DEST_PATH_IMAGE009
通过标签读写设备写入该RFID标签内;meta包含三个字段nonce、
Figure DEST_PATH_IMAGE012
Figure DEST_PATH_IMAGE013
,其中nonce表示当前节点处于第nonce个物流环节,
Figure 533407DEST_PATH_IMAGE012
表示对nonce的签名,
Figure 986385DEST_PATH_IMAGE013
为验证签名用的公钥;上游节点将nonce置为1,并使用其私钥对nonce进行签名,传入
Figure 706079DEST_PATH_IMAGE012
,并将自身的公钥写入
Figure 219100DEST_PATH_IMAGE013
;将商品及其附着的RFID标签发往公钥为
Figure 758666DEST_PATH_IMAGE005
的节点;
6)令
Figure DEST_PATH_IMAGE014
,第
Figure 749756DEST_PATH_IMAGE002
个环节的流通节点收到所述商品时,通过RFID读写设备读取RFID标内的
Figure 855115DEST_PATH_IMAGE001
、存入其中的数组E和元数据meta;
61)若E已被填满,则依次验证数组E中的每个数组元素,验证meta的签名数据是否正确,以及确定
Figure DEST_PATH_IMAGE015
;若通过验证,则第
Figure 479650DEST_PATH_IMAGE002
个环节的流通节点将标签内的nonce值增1,对nonce进行签名传入
Figure 240933DEST_PATH_IMAGE012
,并将自身公钥传入
Figure 566872DEST_PATH_IMAGE013
62)若E未被填满,则依次验证数组E中的每个数组元素,验证meta的签名数据是否正确,以及确定
Figure DEST_PATH_IMAGE016
,以及满足
Figure DEST_PATH_IMAGE017
若通过验证,第
Figure 136524DEST_PATH_IMAGE002
个环节的流通节点将标签内的nonce值增一,对nonce进行签名传入
Figure 256927DEST_PATH_IMAGE012
,并将自身的公钥传入
Figure 567823DEST_PATH_IMAGE013
,第
Figure 431874DEST_PATH_IMAGE002
个环节的流通节点计算
Figure 449508DEST_PATH_IMAGE009
,并写入RFID标签内;
7)第
Figure 6391DEST_PATH_IMAGE002
个环节的流通节点将RFID标签和商品发往下一节点;
8)第
Figure 742266DEST_PATH_IMAGE002
个环节的流通节点将
Figure 144429DEST_PATH_IMAGE001
、EPC码、
Figure 282149DEST_PATH_IMAGE009
和函数write()发到区块链网络,区块链网络调用智能合约进行验证后,将
Figure 7004DEST_PATH_IMAGE009
写进智能合约的数据区中;
9)跳转6)。
2.根据权利要求1所述的基于RFID和智能合约的溯源方法,其特征在于:在物品开始流通前,各企业或流通节点的主体单位组建面向商品流通场景的联盟链,并且向联盟链的证书颁发中心申请各自的数字证书;数字证书的字段至少包含节点物理身份、节点类型、证书颁发时间。
3.根据权利要求1所述的基于RFID和智能合约的溯源方法,其特征在于:所述62)中,第
Figure 964596DEST_PATH_IMAGE002
个环节的流通节点计算前一个物流环节的所有数据的哈希值
Figure 436028DEST_PATH_IMAGE007
的具体过程如下:
Figure DEST_PATH_IMAGE018
其中concat函数表示将其变量按照从左到右的顺序进行字符拼接后得到的字符串。
4.根据权利要求3所述的基于RFID和智能合约的溯源方法,其特征在于:所述
Figure 897097DEST_PATH_IMAGE007
Figure 530203DEST_PATH_IMAGE004
Figure 240670DEST_PATH_IMAGE005
合成的字符串的哈希值
Figure 250215DEST_PATH_IMAGE008
表示如下:
Figure DEST_PATH_IMAGE019
5.一种基于RFID和智能合约的溯源系统,其特征在于:包括上游节点、流通节点和终端节点;所述上游节点、流通节点和终端节点内存储有程序,所述上游节点、流通节点和终端节点内的程序运行时,执行权利要求1-4任一项所述基于RFID和智能合约的溯源方法的操作。
CN202111494814.1A 2021-12-09 2021-12-09 一种基于rfid和智能合约的溯源方法及系统 Active CN113902384B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111494814.1A CN113902384B (zh) 2021-12-09 2021-12-09 一种基于rfid和智能合约的溯源方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111494814.1A CN113902384B (zh) 2021-12-09 2021-12-09 一种基于rfid和智能合约的溯源方法及系统

Publications (2)

Publication Number Publication Date
CN113902384A CN113902384A (zh) 2022-01-07
CN113902384B true CN113902384B (zh) 2022-03-11

Family

ID=79025799

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111494814.1A Active CN113902384B (zh) 2021-12-09 2021-12-09 一种基于rfid和智能合约的溯源方法及系统

Country Status (1)

Country Link
CN (1) CN113902384B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114186653B (zh) * 2022-02-14 2022-05-31 杭州天谷信息科技有限公司 一种物流电子合同的履约方法、装置、设备及存储介质
CN114663119B (zh) * 2022-05-25 2022-10-11 南京金宁汇科技有限公司 一种基于联盟链智能合约的供应链溯源管理方法及系统
CN117725954B (zh) * 2024-02-18 2024-06-07 韶山盈芯物联网科技有限公司 一种基于rfid的数字化供应链数据管理方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018075403A1 (en) * 2016-10-17 2018-04-26 Chronicled, Inc. Open registry for provenance and tracking of goods in the supply chain
CN109961294A (zh) * 2017-12-21 2019-07-02 深圳市优权天成科技有限公司 基于区块链的商品确权及所有权转移方法和系统
CN111639729A (zh) * 2020-05-28 2020-09-08 深圳威尔智能系统有限公司 基于rfid和区块链的防伪溯源方法
CN112950229A (zh) * 2021-03-15 2021-06-11 杭州云象网络技术有限公司 区块链复合溯源方法及溯源与标识解析系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10938579B2 (en) * 2019-03-01 2021-03-02 Keir Finlow-Bates Radio frequency identification tag one-way authentication using a one-time password pad and a blockchain
CN111181946B (zh) * 2019-12-24 2021-05-18 浙江大学 一种基于区块链和物联网的可信溯源系统及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018075403A1 (en) * 2016-10-17 2018-04-26 Chronicled, Inc. Open registry for provenance and tracking of goods in the supply chain
CN109961294A (zh) * 2017-12-21 2019-07-02 深圳市优权天成科技有限公司 基于区块链的商品确权及所有权转移方法和系统
CN111639729A (zh) * 2020-05-28 2020-09-08 深圳威尔智能系统有限公司 基于rfid和区块链的防伪溯源方法
CN112950229A (zh) * 2021-03-15 2021-06-11 杭州云象网络技术有限公司 区块链复合溯源方法及溯源与标识解析系统

Also Published As

Publication number Publication date
CN113902384A (zh) 2022-01-07

Similar Documents

Publication Publication Date Title
CN113902384B (zh) 一种基于rfid和智能合约的溯源方法及系统
CN109034833B (zh) 一种基于区块链的产品追溯信息管理系统及方法
CN110033243B (zh) 基于区块链智能合约的主链存证方法、系统及存储介质
CN111324881B (zh) 一种融合Kerberos认证服务器与区块链的数据安全分享系统及方法
CN112149073B (zh) 一种锥体区块链管理方法及系统
CN110717759A (zh) 一种跨链锚定的区块链异构系统
CN109523280A (zh) 一种区块链上基于所有权的溯源防伪方法
CN108876381A (zh) 基于智能合约的安全交易方法
CN111865985A (zh) 一种基于区块链的供应链金融数据维护方法
CN111723126B (zh) 基于区块链的冷热时序数据分类处理方法及存储系统
CN112149077B (zh) 基于区块链技术的供应链票据方法、系统和计算机设备
CN107256243A (zh) 一种基于多重哈希算法的数据存取证方法及其装置
CN110264042A (zh) 一种项目管理的方法及相关装置
CN111597167A (zh) 一种应用区块链技术的大数据管理系统及方法
CN114078061A (zh) 一种基于区块链的电力核心数据溯源系统
CN111464310B (zh) 一种联盟链与Polkadot链混合链实现方法
Cui et al. Protecting vaccine safety: An improved, blockchain-based, storage-efficient scheme
CN113205345A (zh) 一种基于以太坊区块链技术的农产品凭证追溯系统及其追溯方法
CN112507377A (zh) 基于差分隐私的区块链赋能供应链系统关键信息保护方法
CN110555783B (zh) 一种基于区块链的电力营销数据保护方法及系统
CN113256470A (zh) 一种基于区块链的武器装备管理系统及方法
CN110413697B (zh) 一种基于区块链的公益善款数据存储方法及系统
KR20190086301A (ko) 블록 체인을 이용한 분산 데이터베이스 시스템 및 방법
CN112966049B (zh) 一种基于区块链的资产管理系统
Hilal et al. Investigating the failure of the blockchain technology and suggested recommendations

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
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A Traceability Method and System Based on RFID and Smart Contracts

Effective date of registration: 20230825

Granted publication date: 20220311

Pledgee: Guangzhou Rural Commercial Bank Co.,Ltd. Huaxia Branch

Pledgor: Guangzhou youkegu Technology Co.,Ltd.

Registration number: Y2023980053830