Blockchain for Supply Chain Traceability
Blockchain for Supply Chain Traceability
Authorized licensed use limited to: ULAKBIM UASL - SELCUK UNIVERSITESI. Downloaded on November 17,2022 at 00:19:57 UTC from IEEE Xplore. Restrictions apply.
features [11] of practical relevance, such as digital identity data tampering on product manufacturing logs and logis-
management and quality monitoring. Moreover, these solutions tic information.
do not consider the existing logistic behavioral patterns of real- • Verifiability and Transparency: All logistic data and
world scenarios, where supply chain flows form a complex manufacturing procedure logs are recorded in blockchain.
directed acyclic graph (DAG). To the best of our knowledge, The transaction data and signatures in blockchain are
only [7] and [9] in the existing blockchain-based solutions publicly verifiable, which also increases the trust among
consider a supply chain with a DAG structure. Besides, none the stakeholders in the supply chain and reduces the
of them explicitly implements multi-hop tracing and considers efforts on regulation enforcement.
how to trace product without unique identifier (UID). These • Efficient: We employ a multi-layer blockchain architec-
features are essential in anti-counterfeiting scenarios in reality. ture, which reduces the complexity of consensus among
We worked closely with drug manufacturers and whole- nodes, and to improve the overall efficiency of the system.
salers in China to develop a blockchain-based supply chain Also, we develop tracing algorithms with logarithmic
system for real-world usage. We realize that the common complexity, which allow customers to perform efficient
assumption in existing solutions may not apply to drug manu- origin tracing.
facturing. Specifically, many existing solutions assume the ex-
istence of a UID for each product, which is often unavailable in II. R ELATED W ORK
practice. The Chinese government has strict regulations on the The history of supply chain management system can be
production of packing materials of drug products [12]. Each traced back to 1985 when Cash [15] reviewed on how inter-
modification of the packing contents, including description organizational systems (IOSs) influenced the manufacturing
text, batch number, serial number and expiry date, requires an industry. In its early stage, supply chain management systems
explicit approval by relevant authorities. Indeed, the smallest are designed for reducing transaction cost in the value-added
unit of “tracking” is often a product batch (a product batch chain of manufacturing [1]. In 1997, Choudhury [2] proposed
is a group of identical items produced together; each batch the three common patterns of IOSs, namely, electronic monop-
goes through the same stages in the production process). In olies, multilateral IOSs and electronic dyads. The electronic
case of fault, it is often the smallest unit of recall. Besides dyads pattern is a type of peer-to-peer (P2P) network, where
the pharmaceutical industry, we note that batch production is each organization directly connects with each of its business
also common in the production of electrical goods, clothing, partner through independent electronic links. It is common that
and fast food, etc. Furthermore, there are numerous procedures Electronic Data Interchange (EDI) is adopted as a message
and regulations [13], [14] for the practitioners to follow during standard in electronic dyads.
the production and logistic processes. A robust system for such The word traceability is added into ISO8420:1994 [16]
settings is required to record all essential activities, timestamps for quality management and quality assurance. In 2002, van
and participants for auditing purposes. However, there is no Dorp [17] summarized the development of existing traceability
existing solution considering this scenario. systems. According to van Dorp, traceability can be defined
In this paper, to address the above-mentioned issues, we into the ability of tracking and tracing. In 2008, Benchini et
propose a generic blockchain-based supply chain manage- al. [3] proposed a new supply chain system and modeled the
ment system for traceability, regulation and anti-counterfeiting. behavioral patterns in logistics. Since then, many works [18],
Specifically, the system provides the following features: [19] focused on the food and drug supply chain system.
• Traceability: We identify the real-world requirements Recently, due to the improvement in wireless communication,
from drug industries in China and propose a generic radio frequency identification (RFID) and the Internet of
design for supply chain systems based on blockchain Things (IoT) are introduced to supply chain systems [4], [19],
technology. Our system supports four common logistic [20] as well. Although there are more data to assist the quality
behavioral patterns and supports efficient multi-hop trace- management in supply chain system, there is a trust issue
ability which is new to existing solutions. As an IOS on these centralized systems. Data tampering can be easily
which is hard to consolidate participants during adoption, conducted if a malicious organization wants to circumvent
we define common algorithms and standard interfaces of government regulations.
smart contracts for data interchange. Recently, blockchain-based supply chain systems were pro-
• Accountable: All logistic activities can be tracked in posed to address this issue. In 2017, Chen et al. [11] proposed
the system. We further include identity management to a blockchain-based supply chain quality management frame-
the system, where the authenticity of transactions can work. They described different modules required in the system,
be ensured. Procedure logs of production is recorded including digital identity management, quality monitoring and
for auditing purpose. Unlike existing solutions, message control, logistics planning and demand analysis. In 2018, Hua
authentication in our design is not bound to company et al. [6] proposed a system for agricultural products. However,
level, but it is down to employee level, which is more these systems remain conceptual and no actual implementation
realistic in the auditing processes. is conducted. Drugledger [7] is a blockchain-based system,
• Integrity: We deploy our system on blockchain, which extended from Bitcoin [21]. The system provides traceability
ensures data immutability and integrity. It can prevent and identity management. However, its design relies on the
83
Authorized licensed use limited to: ULAKBIM UASL - SELCUK UNIVERSITESI. Downloaded on November 17,2022 at 00:19:57 UTC from IEEE Xplore. Restrictions apply.
unspent transaction output (UTXO) model and the proposed
data structure does not cater for tracking the internal process
of the organization down to the employee level. Since the
personnel in the manufacturing process may change, it is
hard to define the owner of a transaction output. In 2019,
Aniello et al. [22] proposed to adopt physically unclonable
function (PUF) in blockchain-based supply chain system for
anti-counterfeiting purpose. This technique requires special
hardware, which may hinder its deployment in practice. More
recently, a blockchain token based solution was proposed [9].
It used an Ethereum [23] token standard (ERC721 [24]),
known as Non-Fungible Token (NFT), to keep track of various Fig. 2 Tracing and tracking in a supply chain
logistic activities. Nevertheless, ERC721 standard is originally
intended to record asset ownership only, the design added
quantity to it, which violates the original intention, non-
fungibility, of the token. PharmaCrypt [8] is another recent
blockchain-based drug supply chain system. It requires the
manufacturer to scan barcode for each product and upload
the data of the shipping box to blockchain. This process is
inherently inefficient and not practical when the batch size
is large. In 2021, Musamih et al. [10] proposed another Fig. 3 Basic behavioral patterns of a lot
Ethereum-based solution with implementation details, with
testing and validation. However, both [8] and [10] did not
consider all logistic behavioral patterns in their design, hereby parties. The fields receivedF rom and sentT o are used
could not handle integration and division lots where it is very to record this pattern in our system.
common in reality. Currently, most of the existing blockchain- • Alteration: A lot is altered and processed. Most of the
based solutions are still in prototyping phase and most of manufacturing processes belong to this pattern. In our
them focus on traceability only, with less efforts spent on system, we do not create a new batch. Instead, it is
other essential features, like identity management and quality recorded in the procedure logs of a lot due to performance
monitoring, for supply chain systems. concern.
• Movement: A lot is moved from a source site to a
III. P RELIMINARY
destination site. It represents the internal transfer within
A. Supply Chain System a company between warehouses or the shipment between
In a supply chain management system, traceability of prod- buyer to seller. The relationship is also recorded by
ucts and its activities are the essential requirements [3]. The receivedF rom and sentT o in our system.
tracing unit is commonly called lot, which can be a single To use supply chain management system for assisting
unit of product or a batch of products. Traceability can be regulation enforcement, accountability is the key concern.
further divided into the abilities of lot tracking and lot tracing. Companies need to record all necessary information, such as
Tracking is the ability of keeping track of the flows of lots responsible party in each process and laboratory test results
transporting from upstream to downstream in a supply chain. of products, into the system for periodic auditing and sudden
It is especially important during products recall when a fault inspection from the government agency. However, a malicious
in the manufacturing process is discovered. On the other hand, company can modify the data in a centralized server to
tracing refers to the ability to follow the supply chain upward avoid legal responsibilities. The details of how our system
and determine the source of a lot. This enables customers to leverages blockchain technology to provide authenticity will
have capability to distinguish counterfeit products. The flows be described in section III-B.
of tracking and tracing are shown in Fig. 2. For anti-counterfeiting, it highly relies on product tracing.
The basic lot behaviors can be modeled by four pat- Supply chain system enables customers to trace the source
terns [25], namely, integration, division, alteration and move- and all the materials used for the manufacturing of a product.
ment. They are illustrated in Fig. 3 and described below: Due to division and integration process of lots, a cyclic graph
• Integration: A number of lots are combined into a new of supply chain may be formed. In addition, as discussed
lot. It is a general representation of mixing, assembling before, not all products have a unique serial number. Nonethe-
and packing during manufacturing. The relationship is less, the system must provide multi-hop routing during lot
instantiated by sentT o and madeBy fields of Lot record tracing. Lastly, digital identity of a trusted company, which
in our system. owns relevant certificates issued by government, is important
• Division: A lot is split into multiple new lots. It represents for customers to distinguish between genuine or counterfeit
the splitting of a batch and distributing them to different products.
84
Authorized licensed use limited to: ULAKBIM UASL - SELCUK UNIVERSITESI. Downloaded on November 17,2022 at 00:19:57 UTC from IEEE Xplore. Restrictions apply.
B. Blockchain and Smart Contract
A blockchain is a distributed and append-only ledger which
maintains a growing list of data blocks. Each block contains an
ordered set of transactions (TXs) data, and typically links to
its predecessor through a cryptographic hash pointer [26]. The
authenticity of transactions are ensured by digital signatures.
Public keys of the users are commonly encoded to addresses,
which are also used as user identifiers. Blockchain data is
distributed and synchronised among all full nodes through
a consensus protocol such as proof-of-work (PoW), proof-
of-authorities (PoA) and proof-of-stake (PoS). Each block
and each transaction is validated by all others, before being
added to the chain. Based on the distributed architecture and Fig. 4 An overview of the relationship of entities
cryptographic techniques adopted, blockchain can provide five
properties [26] to supply chain system, namely, immutability,
non-repudiation, integrity, transparency and equal rights. It
helps the implementation of a secure tamper-proof supply
chain system.
Besides the basic assets transfer functionality, blockchain
can have smart contract for building generic applications. It
is a programming script deployed to blockchain and executed
among all network nodes. A smart contract can express
conditions, iterations and complex business logic [26] which
enables developers to implement programmable transactions Fig. 5 Architecture of the system
and develop decentralized applications on top of blockchain.
Based on access control model, blockchain can be classified
to public blockchain and private blockchain; the former is an • Lot: A tracing unit of product in supply chain.
open network that allows any nodes to join and participate • Procedure: An activity associated to a production lot,
in the consensus, and the latter is a close network where which is recorded by an actor and monitored by the
a node requires permission to be granted before joining the regulation authority.
network. Blockchain efficiency is highly dependent on the • Actor: A person or device of a company who executes,
consensus protocol employed, and it is common that permis- records and signs procedure logs for a lot.
sioned blockchain can achieve higher transaction throughput.
B. Our Construction
For instance, Bitcoin [21] can only support a maximum of
7 transactions per second (tps) [27]. Ethereum [23] supports 1) System Architecture: While blockchain provides trust
around 15 tps [27] in public network, while it can reach over and data integrity, its lacks the performance and query han-
100 tps in private network setting [28]. In our implementation, dling capability to act as a centralised database replacement.
we adopt a hybrid blockchain approach, which mixes public Therefore, our system adopts a hybrid blockchain architecture
blockchain and private blockchain. as shown in Fig. 5. The system can be divided into four com-
ponents, namely, a public blockchain, a private blockchain,
IV. D ESIGN OF O UR S YSTEM an Enterprise Resource Planning (ERP) system and a supply
A. Entities Definitions chain explorer.
As mentioned in section III-B, private blockchain has a
Our supply chain system contains the following six key better performance. Our data and smart contracts are mainly
entities, namely, Regulation Authority, Company, Product, Lot, stored in a private blockchain, which is hosted by the par-
Procedure and Actor. An overview of the entities’ relationship ticipating organizations. Companies interact with the private
is shown in Fig. 4. Descriptions of the entities are given below. blockchain through a centralized ERP system. All public data
• Regulation Authority: An organization with regulatory are uploaded to the blockchain, while private data are stored in
authority. Responsible for certifying companies and prod- the database of the ERP system. To prevent collusion among
ucts, monitoring the quality of lots and manufacturing blockchain node participants in a private blockchain network,
procedures. hash of block data are uploaded to a public blockchain
• Company: An organization that interacts with the prod- periodically.
uct lots in a supply chain. It is governed by a regulation Supply Chain Explorer is a client providing traceability
authority. of product lots and showing the certifications of companies.
• Product: A type of goods for sale. Need to follow com- It is a light-weighted client which only read data from the
pliance during the manufacturing and logistic processes. blockchains and smart contracts.
85
Authorized licensed use limited to: ULAKBIM UASL - SELCUK UNIVERSITESI. Downloaded on November 17,2022 at 00:19:57 UTC from IEEE Xplore. Restrictions apply.
2) Digital Identities: Each organization and actor must 6 address [] lots ;
have a digital identity in the system. Each of them must gen- 7 // ...
erate its blockchain key pairs and record its public identifier 8 }
(i.e., account address) in the blockchain. All TXs it makes 9 s t r u c t Actor {
are signed by the corresponding private key before submitting 10 address id ;
to the blockchain network. In order to bind the real identity, 11 ActorType type ;
an organization is responsible to manage its actors’ digital 12 // ...
identities and records their roles in the blockchain. Also, an 13 }
organization publishes its blockchain identifier publicly, e.g., 14 map<s t r i n g , P r o d u c t > p r o d u c t s ;
by uploading it to its official website address. An organization 15 map<s t r i n g , A c t o r > e m p l o y e e s ;
can also attach a digital certificate, issued by a trusted CA, 16 map<s t r i n g , A c t o r > d e v i c e s ;
which is used to generate a signature to its digital identity and 17 map<a d d r e s s , a d d r e s s [] > b a t c h T r a c e ;
uploaded to the blockchain. 18 // ...
3) Data Model and Smart Contracts: To represent the six 19 }
entities defined in section IV-A, we define two smart contracts,
Script 1: Smart contract of organization SCOrganization
namely, SCOrganization and SCLot. The functionality of each
smart contract are described below:
1 c o n t r a c t SCLot i s Owned {
• SCOrganization: (Refer to Script 1) Each deployed
2 s t r u c t Procedure {
SCOrganization represents an individual organization.
3 s t r i n g id ;
The contract extends Owned and Certif iable, which
4 address primary actor ;
allows a declaration of the owner blockchain address
5 address secondary actor ;
and certification address. There are three mapping
6 // ...
fields in the contract, namely, products, employees
7 }
and devices, which are used to store and allow a
8 s t r u c t Log {
quick look-up for the relevant entities. When a product
9 address actor ;
only has a batch ID on its packing, the system uses
10 string content ;
Algorithm 3 T raceByBatch to trace the origin of a lot.
11 unit256 timestamp ;
The field batchT race is used to serve this algorithm.
12 }
When a company receives a lot SCLotf rom and creates
13 a d d r e s s company ;
a contract SCLotnew , it sets SCLotnew .batch =
14 s t r i n g product ;
SCLotf rom .batch and updates the mapping by
15 address batch ;
batchT race[SCLotnew .batch].push(SCLotnew .address ) .
16 a d d r e s s [ ] madeBy ;
The lots fields in the P roduct structure stores all the
17 address receivedFrom ;
logs of that product. The id field of the Actor structure
18 a d d r e s s [ ] sendTo ;
is the blockchain account address of the actor.
19 uint8 status ;
• SCLot: (Refer to Script 2) Each deployed SCLot rep-
20 unit256 quantity ;
resents an individual lot. This smart contract manages
21 Procedure [ ] procedures ;
and represents the lot behavioral patterns. It uses the
22 Log [ ] l o g s ;
fields madeBy, receivedF rom and sentT o to link
23 // ...
other lots and construct a graph of a supply chain. To
24 }
represent integration, we use madeBy and sentT o. To
represent division and movement, we use receivedF rom Script 2: Smart contract of lot SCLot
and sentT o. To represent alteration we append logs
and change the status based on the work flow. The 4) Tracking and Tracing Algorithms: The system pro-
procedures field stores the regulation procedures and vides three algorithms, namely, T rack, T raceByLot and
responsible actors. T raceByBatch. All these algorithms only depend on data
retrieval from smart contract and details are listed below:
As mentioned in section IV-B2, all TXs are signed, and
• Algorithm 1 T rack : IDlot → t takes a lot identifier
thus, the sender of each smart contract’s function execution is
recorded in the blockchain. We use the account address of the IDlot as input and returns a tree t which represents all
organization and the actor for permission checking. downstream lots. It recursively calls the T rack function
and crafts the returned results as a sub-tree of current root
1 c o n t r a c t S C O r g a n i z a t i o n i s Owned , node. The algorithm will only traverse each node once.
2 Certifiable { Thus, the complexity is linear to the size of the result set.
3 enum A c t o r T y p e { Employee , D e v i c e } • Algorithm 2 T raceByLot : IDlot → l takes IDlot
4 s t r u c t Product { as input and returns a list l of lot identifiers, which
5 s t r i n g id ; represents a path of its upstream lots. This algorithm
86
Authorized licensed use limited to: ULAKBIM UASL - SELCUK UNIVERSITESI. Downloaded on November 17,2022 at 00:19:57 UTC from IEEE Xplore. Restrictions apply.
follows the receivedF rom fields of SCLot, recursively In our system, the multimedia files, like the certificate of
appends the result list. The complexity is O(log(n)) company and laboratory test results of product samples, are
where n is the size of the supply chain graph. uploaded to a separate decentralized storage and the link and
• Algorithm 3 T raceByBatch : (IDcompany , IDbatch ) a hash of the file(s) are stored in blockchain.
→ m takes a company identifier IDcompany and a lot
V. I MPLEMENTATION
identifier IDbatch as input. It returns a matrix m, which
represents multiple paths that the specific lot takes to Our system is implemented on a private Ethereum
reach the company. This algorithm is commonly used blockchain network hosted on Alibaba Cloud. We use geth
when a product only print its batch identifier IDbatch version 1.9.14 as Ethereum node client and solidity version
on its packing and customer wants to trace a product 0.4.24 for smart contract implementation. We use swarm
which is bought from IDcompany . This algorithm uses version 0.5.7 for distributed storage on top of Ethereum. The
the assisting mapping SCOrganization#traceBatch ERP system and supply chain explorer are built by Ruby
to query the lots IDs of targeting batch in current on Rails with Ruby version 2.5.1 and Rails version 5.1.6
company. It runs T raceByLot on each item in IDs to and PostgreSQL database version 12.2. The periodic backup
obtain the result. Let b = |IDs| be the branching factor, process of the hybrid blockchain is implemented by schedule
the complexity of T raceByBatch is O(b · log(n)) job and a [Link] script with version 10.16.3 which submits
TXs to public blockchain network.
Algorithm 1 Track(IDlot ) The system is deployed to five Elastic Compute Service
(ECS) instances. Each of them has a 40 GB system disk in
1: Create a tree t and denote the root node as r
Ubuntu 16.04 64-bit. Each server has an Elastic IP address
2: c ← SearchContract(IDlot )
with a 5 MB/s bandwidth. The mining speed of Ethereum
3: r ← IDlot
network is configured to 3 s/block. The five ECS instances are
4: if c = φ then
located in different physical zone and have the specifications
5: for all IDto in [Link] o do
shown in Table I. The responsibility of each server is described
6: tto ← T rack(IDto )
as the follows:
7: Graft tto as a child of r
• Server 1: Host an ERP server, a supply chain explorer
8: end for
server, a PostgreSQL database, a swarm node, a primary
9: end if
Ethereum boot node and an Ethereum Remote Procedure
10: return t
Call (RPC) node.
• Server 2: Host a primary Ethereum mining node.
• Server 3: Host a secondary Ethereum boot node.
Algorithm 2 TraceByLot(IDlot )
• Server 4: Host a secondary Ethereum mining node.
1: l ← [IDlot ] • Server 5: Host a secondary Ethereum mining node.
2: c ← SearchContract(IDlot )
Our system’s performance is evaluated by the test cases
3: if c = φ then
jointly designed with our collaborating industrial partners,
4: return l
based on a drug manufacturing scenario involving manufac-
5: else
turer, distributors and retailers. Each company has multiple
6: return Concat(l, T raceByLot([Link] rom))
work flow stages and processes for a product lot. For example,
7: end if
a manufacturer requires employees to perform eight rounds of
quality assurance and quality control testing during production.
Since our system works on lot (a product batch) instead
Algorithm 3 TraceByBatch(IDcompany , IDbatch )
of a single product unit, the underlying requirement of the
1: m ← new matrix
c ← SearchContract(IDcompany )
1 The design applies to blockchain architectures that support smart contract.
2:
Our implementation is based on Ethereum.
3: if c = φ then
4: IDs ← [Link] race[IDbatch ]
5: size ← |IDs| Name Zone Instance Type CUP Memory
6: for i ← 0 to size − 1 do Server 1
Shenzhen Region
ecs.sn1ne.2xlarge 8 vCPU 16 GB
Zone A
7: m[i] ← T raceByLot(IDs[i]) Shenzhen Region
Server 2 ecs.sn1ne.2xlarge 8 vCPU 16 GB
8: end for Zone A
9: end if Hangzhou Region
Server 3 [Link] 1 vCPU 2 GB
Zone G
10: return m Shenzhen Region
Server 4 [Link] 2 vCPU 4 GB
Zone E
Shenzhen Region
5) External Storage: Currently, most blockchain frame- Server 5
Zone C
[Link] 2 vCPU 4 GB
works do not support TX with large amount of data, meaning
that storing of multimedia files on blockchain is infeasible. TABLE I: Specification of Alibaba Cloud ECS instances
87
Authorized licensed use limited to: ULAKBIM UASL - SELCUK UNIVERSITESI. Downloaded on November 17,2022 at 00:19:57 UTC from IEEE Xplore. Restrictions apply.
[7] [8] [9] [10] Ours
Blockchain Platform Extended Bitcoin Ethereum Ethereum Ethereum Ethereum1
Data Structure UTXO Smart Contract ERC721 Smart Contract Smart Contract
Tracing and Tracking Media TX Event Logs Event Logs Event Logs Smart Contract
Authentication Level Company Company Company Company Actor (Employee or Device)
Supports Quality Management No No No No Yes
Supports Multi-hop Routing Yes No Yes No Yes
Supports Tracing without UID No No No No Yes
TABLE II: Comparison between existing solutions and our proposed design
blockchain is light. A typical scenario of drug selling in blockchain nodes, since hashes of private blockchain
Shanwei City, a manufacturer sells its products to a sole blocks are backup to a public blockchain periodically.
distributor. The distributor sells the drugs to 103 hospitals • Verifiability and Transparency: Our system allows val-
and clinics. The monthly production of a drug can reach 20 idator nodes to join as parts of the private blockchain
milion product units in peak. It is commonly set to 100,000 network, all blockchain TXs are publicly verifiable. Be-
product units per batch. Thus, our system needs to handle 7 sides, all the certifications of products and companies, the
batches per day. The number of trace and track queries, on procedure logs of production and the logistic information
the other hand, depends on the number of product units (e.g., can be retrieved through the smart contract functions, any
each customer may issue a track query when they receive a user can query and verify by itself.
product unit). Nonetheless, the corresponding query is a read- • Efficient: We adopt a hybrid blockchain architecture in
only transaction, and typically no consensus is needed2 . our system to maintain the efficiency. Typically, most
Our measurement on the performance of the system is based smart contract query and TXs are submitted to the pri-
on the average time of common operations. For lot creation, vate blockchain layer, which has significant improvement
the average time is 17.98s, while for recording a stage in the when comparing to directly submit TXs to a public
work flow, the average time is 1.91s. The lot creation time is blockchain. Besides, the proposed tracing algorithms
linear to the number of stages in the work flow. The average (T raceByLot and T raceByBatch) have logarithmic
time for T raceByLot and T raceByBatch is 716.33ms and complexity that allows customer to trace the product ori-
236.01ms respectively. The tracing time is linear to the size gin efficiently for anti-counterfeiting purpose. Moreover,
of result set. The time for a tracking operation is also linear our implementation and testing shows that the system is
to the size of the result set, which is 8.35s for our system. efficient and practical for real-world settings.
VI. E VALUATION B. Comparison
A. System Analysis Table II summarizes the comparison between the existing
Our system is able to achieve the five features, namely, blockchain-based supply chain systems [7]–[10] and our pro-
traceability, accountable, immutable, verifiability and trans- posed design. Most of the existing solutions [8]–[10] were
parency and efficient. built on Ethereum blockchain platform and [7] was built
• Traceability: In our system, all logistic information is on Bitcoin network with extended capabilities. While our
stored in the smart contract in blockchain. A user can proposed system is also implemented on Ethereum, but the
use UID to perform lot tracking and tracing by running design itself is possible to deploy on any blockchain platforms
T rack and T raceByLot algorithms respectively. Also, that supports smart contract. The proposed systems in [8],
the T raceByBatch algorithm supports multi-hop routing [10] and ours adopt smart contracts to store the traceability
for finding multiple possible paths generated due to lot records, while [7] and [9] use UTXO and ERC721 in their
division and lot integration in the practical settings. design respectively. However, the design of [9] violated the
• Accountable: Every interaction with the product lot is original intention of ERC721 token, since a “quantity” field is
recorded in blockchain by executing the log function added. In order to perform tracing or tracking in the system, [7]
in SCProcedure. Moreover, all TXs are signed by the would query TXs from the blockchain. Then, trace through the
private key of actors, entity authentication is guaranteed transaction inputs and outputs. In our design, we direct query
by the digital signatures. Thus, the responsible party(s) of the smart contract instead. For [8]–[10], they use event logs in
a particular stage in the manufacturing and logistic work Ethereum as a tracing media. However, searching in event logs
flow can be traced easily, which is typically important for is slower than directly interact with smart contract. Besides,
regulated industries. this may affect the availability of systems, since indexing event
• Immutable: Data immutability and integrity is achieved logs consumes additional computational and storage resources.
by the immutability property of blockchain. The hybrid In a default setting of Ethereum node, it only indexes one
blockchain architecture further reduces the risk of data year of event logs, which may not suitable for products with
tampering even there is any collusion among the private long expiry day. In additional, unlike the existing solutions
which authenticate users through validating the signatures of
2A read-only transaction can be handled locally by a full node. companies, our system authenticates each actor, employee or
88
Authorized licensed use limited to: ULAKBIM UASL - SELCUK UNIVERSITESI. Downloaded on November 17,2022 at 00:19:57 UTC from IEEE Xplore. Restrictions apply.
device. This increases the accountability and transparency of [8] N. Saxena, I. Thomas, P. Gope, P. Burnap, and N. Kumar, “Pharmacrypt:
Blockchain for critical pharmaceutical industry to counterfeit drugs,”
the system, since every action and procedure are logged in Computer, vol. 53, no. 7, pp. 29–44, 2020.
a more fine-grained manner. In [8] and [10], the proposed [9] M. Westerkamp, F. Victor, and A. Küpper, “Tracing manufacturing
systems do not support multi-hop routing and do not consider processes using blockchain-based token compositions,” Digital
Communications and Networks, vol. 6, no. 2, pp. 167–176,
all logistics behavioral patterns, while [7], [9] and our solution 2020. [Online]. Available: [Link]
do. For customers, it is common that they are not in the pii/S235286481830244X
possession of a unique identifier (UID) for tracing the origin [10] A. Musamih, K. Salah, R. Jayaraman, J. Arshad, M. Debe, Y. Al-
Hammadi, and S. Ellahham, “A blockchain-based approach for drug
of a product. Our proposed system includes an algorithm traceability in healthcare supply chain,” IEEE Access, vol. 9, pp. 9728–
(Algorithm 3) in the smart contract to allow efficient tracing 9743, 2021.
with without UID. Therefore, our system is able to provide a [11] S. Chen, R. Shi, Z. Ren, J. Yan, Y. Shi, and J. Zhang, “A blockchain-
based supply chain quality management framework,” in 2017 IEEE 14th
more complete solution to supply chain management. International Conference on e-Business Engineering (ICEBE), 2017,
Conference Proceedings, pp. 172–176.
VII. C ONCLUSION [12] National Medical Products Administration, China, “Drug administration
law chapter 6 drug packaging management,” 2002, [Online]. Available:
In this article, we propose a blockchain-based supply [Link]
chain management system for traceability, regulation and anti- [13] State Administration for Market Regulation, “Drug registration and
counterfeiting and show that it achieves the common function- management law,” 2020, [Online]. Available: [Link]
nsjg/fgs/202003/t20200330 [Link].
ality requirements for logistic and supply chain systems. We [14] National Medical Products Administration, China, “Drug production
analyzed existing blockchain-based supply chain management management law,” 2020, [Online]. Available: [Link]
solutions and point out their insufficiencies in practical set- yaopin/ypfgwj/ypfgbmgzh/[Link].
[15] J. I. Cash and B. R. Konsynski, “Is redraws competitive boundaries,”
tings. We provide an implementation and evaluation of our Harvard business review, vol. 63, no. 2, pp. 134–142, 1985.
proposed system. Specifically, our system supports quality [16] ISO, “Iso 8402:1994 quality management and quality assurance -
management, multi-hop routing and tracing without unique vocabulary,” 1994.
[17] K. van Dorp, “Tracking and tracing:a structure for development
identifier. The performance of our system is also satisfactory and contemporary practices,” Logistics Information Management,
in a practical environment. Our proposed design is generic. vol. 15, no. 1, pp. 24–33, 2002. [Online]. Available: https:
On one hand, it can be adopted in industries with the same //[Link]/10.1108/09576050210412648
[18] M. Thakur and C. R. Hurburgh, “Framework for implementing
logistic and supply chain requirement. On the other hand, it traceability system in the bulk grain supply chain,” Journal of Food
can be implemented in various blockchain architectures that Engineering, vol. 95, no. 4, pp. 617–626, 2009. [Online]. Available:
support smart contract. [Link]
[19] I.-H. Hong, J.-F. Dang, Y.-H. Tsai, C.-S. Liu, W.-T. Lee, M.-L.
Acknowledgements. Part of this research is supported by Wang, and P.-C. Chen, “An rfid application in the food supply chain:
the Innovation and Technology Fund University-Industry Col- A case study of convenience stores in taiwan,” Journal of Food
laboration Programme and UBI BlockChain Internet Limited Engineering, vol. 106, no. 2, pp. 119–126, 2011. [Online]. Available:
[Link]
(Ref: UIM/331) [20] T. Kelepouris, K. Pramatari, and G. Doukidis, “Rfid-enabled traceability
in the food supply chain,” Industrial Management & data systems, 2007.
R EFERENCES [21] S. Nakamoto, “Bitcoin: A peer-to-peer electronic cash system,”
[1] T. W. Malone, J. Yates, and R. I. Benjamin, “Electronic markets and Bitcoin, vol. 4, 2008, [Online]. Available: [Link]
electronic hierarchies,” Communications of the ACM, vol. 30, no. 6, pp. [Online]. Available: [Link]
484–497, 1987. [22] L. Aniello, B. Halak, P. Chai, R. Dhall, M. Mihalea, and A. Wilczynski,
[2] V. Choudhury, “Strategic choices in the development of “Towards a supply chain management system for counterfeit mitigation
interorganizational information systems,” Information Systems using blockchain and puf,” arXiv preprint arXiv:1908.09585, 2019.
Research, vol. 8, no. 1, pp. 1–24, 1997. [Online]. Available: [23] V. Buterin, “A next-generation smart contract and decentralized appli-
[Link] cation platform,” white paper, vol. 3, no. 37, 2014.
[24] W. Entriken, D. Shirley, J. Evans, and N. Sachs, “Eip-721: Erc-721
[3] A. Bechini, M. G. C. A. Cimino, F. Marcelloni, and A. Tomasi,
non-fungible token standard,” Ethereum Improvement Proposals, 2018,
“Patterns and technologies for enabling supply chain traceability
[Online]. Available: [Link]
through collaborative e-business,” Information and Software Technology,
[25] Committee for Developing Educational Materials for Food Traceability,
vol. 50, no. 4, pp. 342–359, 2008. [Online]. Available: http:
Handbook for Introduction of Food Traceability Systems (Guidelines
//[Link]/science/article/pii/S0950584907000213
for Food Traceability). Food Marketing Research and Information
[4] L. Liu and W. Jia, “Business model for drug supply chain based on
Center (FMRIC), Japan, 2003, [Online]. Available: [Link]
the internet of things,” in 2010 2nd IEEE InternationalConference on
[Link]/j/syouan/seisaku/trace/pdf/handbook [Link]. [Online]. Available:
Network Infrastructure and Digital Content, 2010, pp. 982–986.
[Link] [Link]
[5] M. Garaus and H. Treiblmaier, “The influence of blockchain-based
[26] X. Xu, I. Weber, and M. Staples, Architecture for Blockchain Applica-
food traceability on retailer choice: The mediating role of trust,”
tions, 2019.
Food Control, vol. 129, p. 108082, 2021. [Online]. Available:
[27] I. A. Seres, D. A. Nagy, C. Buckland, and P. Burcsi, “Mixeth: efficient,
[Link]
trustless coin mixing service for ethereum,” in International Conference
[6] J. Hua, X. Wang, M. Kang, H. Wang, and F. Wang, “Blockchain
on Blockchain Economics, Security and Protocols (Tokenomics 2019).
based provenance for agricultural products: A distributed platform with
Schloss Dagstuhl-Leibniz-Zentrum fuer Informatik, 2019.
duplicated and shared bookkeeping,” in 2018 IEEE Intelligent Vehicles
[28] M. Schäffer, M. di Angelo, and G. Salzer, “Performance and scalability
Symposium (IV), 2018, Conference Proceedings, pp. 97–101.
of private ethereum blockchains,” in Business Process Management:
[7] Y. Huang, J. Wu, and C. Long, “Drugledger: A practical blockchain
Blockchain and Central and Eastern Europe Forum, C. Di Ciccio,
system for drug traceability and regulation,” in 2018 IEEE International
R. Gabryelczyk, L. Garcı́a-Bañuelos, T. Hernaus, R. Hull, M. In-
Conference on Internet of Things (iThings) and IEEE Green Computing
dihar Štemberger, A. Kő, and M. Staples, Eds. Cham: Springer
and Communications (GreenCom) and IEEE Cyber, Physical and So-
International Publishing, 2019, pp. 103–118.
cial Computing (CPSCom) and IEEE Smart Data (SmartData), 2018,
Conference Proceedings, pp. 1137–1144.
89
Authorized licensed use limited to: ULAKBIM UASL - SELCUK UNIVERSITESI. Downloaded on November 17,2022 at 00:19:57 UTC from IEEE Xplore. Restrictions apply.