A Traceable and Verifiable Tobacco Products Logistics System with GPS and RFID Technologies
Abstract
:1. Introduction
1.1. Background
1.2. Related Works
2. Preliminary
2.1. Consortium Blockchain and Smart Contract
2.2. ECDSA
2.3. BAN Logic
2.4. Threat Model
- (1)
- Data integrity issues: All data stored with the system must be integrated. The system must ensure that the data will not be modified by anyone during the transmission and storing process.
- (2)
- Decentralized database: The blockchain center can be known as the decentralized database, with multiple agencies maintaining the same ledger or data in different locations. Once the data are verified and added to the blockchain, the block is chained with a timestamp and the previous block hash value; every modification with the blockchain needs to be verified. Therefore, it is hard to change the data in the blockchain center, and the decentralization characteristics can achieve data transparency and reliability.
- (3)
- Decentralized authentication: The authentication inherits the decentralized database’s characteristics. This is more secure than the general database that is set up with the central server architecture.
- (4)
- Message repudiation issues: To ensure the undeniable transmission of the message sent by the sender, a signature mechanism needs to be implemented to prove the message is signed by the sender.
- (5)
- Message transmission issues: The system must be ensured that the message will not be intercepted and altered during transmission.
- (6)
- Tobacco product counterfeiting issues: The counterfeiting of tobacco products can harm the health of the smoker, they never know the legal origin and quality of the products. Furthermore, the counterfeiting products will also cause the original manufacturer to lose their reputation.
- (7)
- Tobacco product tracking issues: These issues are linked to counterfeit issues. The government needs a complete tracking system to manage the logistics status of tobacco products.
- (8)
- Fair arbitration: Every system that is managed or used by a human with multiple parties cannot avoid dispute. To avoid disputing the legality of tobacco products, fair arbitration should be considered to clarify smuggled tobacco products.
- (9)
- Known attacks:
- Man-in-the-middle attack: The sender needs to communicate to the receiver, the attacker intercepts the message in the middle, then the attacker is able to obtain the message from the sender and resend the same message to the receiver. Therefore, the message will be exposed, because the attack can easily obtain the content of the message in the middle.
- Replay attack: The attacker sniffs the message sent by the sender, so the attackers can replay the message.
3. The Proposed Scheme
3.1. System Architecture
- ID Issuer (IDI): An official organization authorized by the government of the country. They receive the application of the tobacco products’ ID from the manufacturer. This party checks the validity of the manufacturer; if they are a legal company, a list of tobacco products will be generated by the chaincode in the blockchain center.
- Tobacco ID Tag (TID): A unique ID issued by the ID issuer. The ID is a sticker-based material with a RFID tag. Every pack of legal tobacco products should have one ID tag to prevent smuggled products.
- Mobile reader (MR): A mobile device that can read tobacco ID tags and can position the location with GPS. Every party involved in the logistics phase must have at least one MR such as the manufacturer, logistics, distributor, or retailer. These parties need to log in to the MR with their private key. Every TID on the tobacco products should be scanned by MR when the tobacco products are produced, sent, or received by the shipper or recipient.
- Competent authorities (CA): Multiple official organizations that are authorized by the government of the country such as the Food and Drug Administration (FDA), Federal Trade Commission (FTC), Tobacco Tax, Trade Bureau (TTB), etc. Every CA must have the ledger in the blockchain center to ensure and verify the integrity of the data. The CA that provide the permits for the production of tobacco products have the highest authority and mainly deal with any connection from other parties.
- Manufacturer (MF): A company that produces tobacco products; it can also be a tobacco importer. Before producing tobacco products, they need to apply the product’s ID from the ID Issuer. The ID that is applied and obtained from the IDI should be applied to the tobacco package.
- Blockchain Center (BCC): The blockchain that records the logistics information of the tobacco products. When a manufacturer needs to produce tobacco products, they need to apply an ID from the IDI, the ID is generated from the BCC’s chaincode, then the TID is sent to IDI via CA before finally going to the MF. Every record of the tobacco products will need to be chained with the given ID. The chaincode in the BCC keeps checking the number of tobaccos during the logistics.
- Distributor (DI): A company buying a large number of tobacco products from the MF is known as a wholesaler. They are also sellers who sell products to retailers.
- Logistics (LG): A company responsible for transporting the tobacco products. They mostly use trucks to transport the products. All products entering or leaving the transportation need to scan the logistics information via MR to BCC and chain it, for example, the ID, timestamp, and GPS location.
- Retailer (RT): A shop or store selling the unit packet of tobacco products to the consumer.
- Consumer (CS): An ordinary person that needs to buy tobacco products from the retailer.
- Arbitrator (AB): An official agent that is able to use a mobile device with the Internet to find counterfeit or illegal tobacco products whether the tobacco products are in retailers, distributors, etc.
- Auditors (AU): A third-party agency. If either party is unsure of the legal source of the tobacco products, the auditors have the right to prove if there are any problems in the logistics process.
- Step 1.
- All parties involved in the tobacco products logistics chain must register an account from the BCC to obtain a unique ID and a private and public key pair.
- Step 2.
- When the manufacturer needs to produce a batch of tobacco products, they need to apply to the IDI for the ID to every pack, batch, or any aggregation level of the tobacco products.
- Step 3.
- The IDI sends the application to the CA, then the CA requests from the BCC to execute a chaincode. The BCC responds to the IDI with a list of IDs that corresponds to every pack of tobacco products.
- Step 4.
- The IDI approves the application from the MF and responds a list of IDs to them.
- Step 5.
- After receiving the IDs, MF produces tobacco products. Every pack of tobacco products needs to send the GPS location, ID, the timestamp of production, and the MF’s ID by the MR to the CA, then the information is sent and chained in the BCC.
- Step 6.
- The MF requests LG to deliver the products to the DI to distribute the tobacco products.
- Step 7.
- When LG receive the products, they need to scan and send the products’ GPS location, ID, timestamp, and LG ID to the CA, then the information is sent and chained in the BCC.
- Step 8.
- After LG arrive at the DI, the information of the GPS location, ID, timestamp, and LG ID also needs to be sent and chained in the BCC via CA.
- Step 9.
- DI needs to scan and send the products’ GPS location, ID, timestamp, and DI’s ID to CA, the information is sent and chained in the BCC.
- Step 10.
- DI needs LG to deliver the products while the DI sells the tobacco products to the RT.
- Step 11.
- Once LG receives the products from the DI, they need to scan and send the products’ GPS location, ID, timestamp, and LG ID to the CA, then the information is sent and chained in the BCC.
- Step 12.
- LG delivers the tobacco products to the RT, the information of the GPS location, ID, timestamp, and LG ID also needs to be sent and chained in the BCC via the CA.
- Step 13.
- To ensure the validity and total amount, the RT requests to scan and send the products’ GPS location, ID, timestamp, and RT ID to the CA in the last logistics session, then the information is sent and chained in the BCC. Next, the retailer starts to sell tobacco products to the consumers.
- Step 14.
- A consumer goes to a retailer to buy tobacco products. The consumer needs to provide their ID for the legal transaction.
- Step 15.
- RT sends all the transactional information including the CS ID, transaction ID, RT ID, and timestamp to the CA, then the transactional information is sent and chained in the BCC.
- Step 16.
- The transaction is done between the RT and CS. The tobacco product is traced until this step.
- Step 17.
- If any party has a dispute or doubts the legality of the tobacco product, the party can submit an arbitration request to the arbitrator.
- Step 18.
- The details of the tobacco products’ logistic records were chained in the BCC, and the AB can retrieve and verify the logistics record from the BCC.
3.2. Notation
X is the identity, issued by blockchain center. The format of the ID is [random serial number + timestamp] (total 144 bits) | |
Y is the tobacco identity, which is issued by ID issuer. The format of the ID is [random serial numbers + ID Issuer ID + manufacturer ID + manufacturing timestamp] (total 224 bits) | |
A k-bit of prime number | |
Finite group of | |
The elliptic curve defined on finite group | |
A generating point based on the elliptic curve | |
The ith random value on the elliptic curve | |
Elliptic curve signature value of X | |
An ECDSA signature value of X | |
The ECDSA’s private key of party X | |
The ECDSA’s public key of party X | |
The public key of party X, issued by the BCC | |
The private key of party X, issued by the BCC | |
The ith ciphertext of X | |
One way hash function | |
The ith hash value of X | |
The ith timestamp | |
The threshold for checking the validity of a timestamp | |
The ith message from a sender | |
Encrypt/decrypt message M with a public key or private key of party X | |
Verify that F1 is equal to F2 or not |
3.3. Initialization Phase
3.4. Registration Phase
- Step 1.
- AP provides the primary information (e.g., name, role) and sends a registration request to the BCC.
- Step 2.
- BCC generates an ECDSA private key and calculates public key
- Step 3.
- AP receives and keeps the parameters for signing the signature message.
Algorithm 1. Chaincode registration of the proposed scheme. |
var AP []AP_Information func Registration (X_name string, X_detail string, var X_role RoleType) (UID string) { UID = GenerateUniqueID() AP = append (AP, AP_Information{ ID: UID, Name: X_name, Detail: X_detail, Role: X_role, }) return UID } |
3.5. Authentication Phase
- Step 1.
- Firstly, user A chooses a random number , then generates the message:
- Step 2.
- IDI receives the message at and uses its private key to decrypt :
- Step 3.
- User A receives the message at , then decrypts the cipher message by its private key:
Algorithm 2. Authentication of the proposed scheme. |
func Sign (h string, k string, d string) (r string, s string) { (x, y) = k * G; r = x % n s = (h + r * d)/x % n return r, s } func Verify (h string, r string, s string) (result string) { u1 = h/s % n u2 = r/s % n (x, y) = u1 * G + u2 * Q if x == r { return “valid” }else{ return “invalid” } } |
3.6. Issuing ID and Manufacture Phase
- Step 1.
- Before the MF starts manufacturing the tobacco products, they need to send an application to the IDI to get a obtain of TID. First, the MF chooses a random number , then generates the message with the number and information of the tobacco products:
- Step 2.
- IDI receives the message at and uses its private key to decrypt :
- Step 3.
- Once CA receives the message at , then decrypt the cipher message by its private key:
- Step 4.
- IDI receives the message at , then decrypts the cipher message by its private key:
- Step 4.
- MF receives the message from IDI, then decrypts the cipher message by its private key:
Algorithm 3. Chaincode of issuing ID and manufacture of the proposed scheme. |
var TP []Tobacco_Product count:= 0 func IDIssue (Info string, string ID_MF, int num, string CA_Signature, IDI_Signature string, MF_Signature string) (list_TID []string){ for i:= 0; i < num; i++ { count = count + 1 TP = append (TP, new Tobacco_Product{ TID: GenerateTID(), Product_Information: Info, Generate_Datetime: time.Now(), Manufacturer_ID: MID, CA_Signature: CA_Signature, IDI_Signature: IDI_Signature, MF_Signature: MF_Signature }) list_TID = append(list_TID, TP[count].TID) } return list_TID } func Manufacture ( ID_MF string, TID string, GPSLoc string){ index:= SearchTID(TP, TID) TP[index].Manufacturing_Datetime = time.Now() TP[index].Factory_ID = ID_MF TP[index].GPSLocation = GPSLoc } |
3.7. Logistics Phase
- Step 1.
- When the SHP needs to ship a batch of tobacco products to the RCP, SHP must ship via LG. Initially, SHP selects a random number and generates a message with a list of TID:
- Step 2.
- LG receives the message at , then decrypts the cipher message by its private key:
- Step 3.
- SHP receives the message from LG, then uses its private key to decrypt the cipher message:
Algorithm 4. Chaincode of logistics of the proposed scheme. |
func Shipping ( ID_SHP string, ID_RCP string, TIDs []string, GPSLoc string, Signature string) { for i:= 0; i < TIDs.Length; i++ { index:= SearchTID(TIDs[i]); TP[index].TransportRecord.Shipper_ID = ID_SHP TP[index].TransportRecord.Shipper_GPSLocation = GPSLoc TP[index].TransportRecord.Shipper_Datetime = time.Now() TP[index].TransportRecord.Recipient_ID = ID_LG TP[index].TransportRecord.SHP_Signature = Signature } } func Receiving ( ID_SHP string, ID_RCP string, TIDs []string, GPSLoc string, Signature string) { for i:= 0; i < TIDs.Length; i++ { index:= SearchTID(TIDs[i]) TP[index].TransportRecord.Recipient_GPSLocation = GPSLoc TP[index].TransportRecord.Recipient_Datetime = time.Now() TP[index].TransportRecord.RCP_Signature = Signature } } |
- Step 1.
- When LG arrives at the RCP location, LG starts communication and sends the batch of tobacco products to RCP. First, LG selects a random number and generates a message with a list of TID:
- Step 2.
- RCP receives the message at , then decrypts the cipher message by its private key:
- Step 3.
- LG receives the message, then uses its private key to decrypt the cipher message:
3.8. Consumption Phase
- Step 1.
- CS goes into the RT location and selects one or more tobacco products, then proceeds to the checkout process.
- Step 2.
- RT starts the checkout process. First, the RT scans the TID of chosen tobacco products from CS. Then, RT selects a random number and generates a message with a list of TID:
- Step 3.
- CA receives the message at , then decrypts the cipher message by its private key:
- Step 4.
- RT receives the message, then uses its private key to decrypt the cipher message:
- Step 5.
- RT gives the printed invoice and tobacco products to the CS, then the transaction is completed.
Algorithm 5. Chaincode of consumption of the proposed scheme. |
func Purchase ( ID_RT string, TIDs []string, Price []float, GPSLoc string) (Purchase_ID []string, Payment_DT []time.Time){ for i:= 0; i < TIDs.Length; i++ { index:= SearchTID(TIDs[i]) TP[index].Retailer_ID = ID_RT TP[index].Payment_Datetime = time.Now() TP[index].Payment_GPSLocation = GPSLoc TP[index].Purchase_ID = GeneratePurchaseID() TP[index].Payment_Price = Price[i] Purchase_ID = append(Purchase_ID, TP[index].Purchase_ID) Payment_Datetime = append(Payment_Datetime, TP[index].Payment_DT) } return Purchase_IDs } |
3.9. Verification Phase (Consumer-End)
- Step 1.
- Consumers are required to provide the consumption information by mobile application such as the tobacco ID (TID), retailer ID, purchase ID, and the timestamp purchase that is printed in the invoice.
- Step 2.
- The application executes a chaincode “GetTobaccoInfo”, as shown in Algorithm 6.
- Step 3.
- If the TID is valid, the BCC returns the tobacco detailed information. Otherwise, the BCC returns that the TID is not valid, so we can determine that this is an illegal tobacco product or trade.
- Step 4.
- The mobile application shows the results of the chaincode, where consumers can obtain the legality and logistics status of the tobacco products.
Algorithm 6. Chaincode verification of the proposed scheme. |
func GetTobaccoInfo (TID string, RetailerID string, PurchaseID string, PurchaseDateTime time.Time) (result string){ index:= SearchTID(TID) if index >= 0 && TP[index]. Retailer_ID == RetailerID && TP[index]. Purchase_ID == PurchaseID && TP[index]. Payment_Datetime == PurchaseDateTime { result = TP[index]’s information }else{ result = “Tobacco invalid” } return result } func Verification (string ID_AP, string TID, RoleType type) (Is_legal bool){ index:= SearchTID(TID) if type == RoleType.Manufacturer { If ID_AP!= TP[index].Manufacturer_ID { return false } }else{ last_index:= len(TransportRecord)-1 If ID_AP!= TP[index].TransportRecord[last_index].Recipient_ID { return false } } return true } |
3.10. Verification Phase (Auditor-End)
- Step 1.
- AU uses the MR to scan the TID of tobacco products randomly from the company such as a retailer, logistics, distributor, or manufacturer.
- Step 2.
- The application will send the selected tobacco ID, company ID, and its role type to CA.
- Step 3.
- CA triggers a chaincode “Verification” in the BCC to verify the legality of tobacco products, where the chaincode is shown in Algorithm 6.
- Step 4.
- BCC returns the legality result to the CA.
- Step 5.
- CA responds to the result to the AU, if it is not legal, then the AU enforces the law on the illegal tobacco product and company.
3.11. Arbitration Phase
- Step 1.
- AP provides the specific tobacco products’ TID to the AU.
- Step 2.
- AU sends a request message with their signature and TID to the BCC.
- Step 3.
- BCC checks the signature; if the signature is valid, then the AU responds to a list of signatures to the AU.
- Step 4.
- The AU starts to check the validity of signatures.
- If the RT signature is illegal, then the record is forged by the RT.
- Then, the AU extracts the list of the “Transport Record” of tobacco information and obtains the RCP and SHP signature.
- If the RCP signature is illegal, then the record is forged by the RCP.
- If the SHP signature is illegal, then the record is forged by the SHP.
- Confirm that the record is the last data of the list of “Transport Record”. If it is not, go to step 4b, otherwise go to the next step.
- If the MF signature is illegal, then the record is forged by the MF.
- If there are no illegal signatures, then the logistics record is legal and verified by the AU.
4. Security Analysis
4.1. Mutual Authentication
The message X is encrypted by a key K | |
P and Q use a shared key SK to communicate | |
P believes X (belief rule) | |
P sees X (seeing rule) | |
P once said X (message meaning rule) | |
P has jurisdiction over X (jurisdiction rule) | |
The message X is new (freshness rule) |
- G1:
- G2:
- G3:
- G4:
- G5:
- G6:
- G7:
- G8:
- M1: UserA→UserB
- M2: UserB→UserA
- A1:
- A2:
- A3:
- A4:
- A5:
- A6:
- A7:
- A8:
- User B authenticates user A
By M1 and the seeing rule, derive: | |
(Statement 1) | |
By A2 and the freshness rule, derive: | |
(Statement 2) | |
By (Statement 1) and the message meaning rule derive: | |
(Statement 3) | |
By (Statement 2), (Statement 3) and the nonce verification rule, derive: | |
(Statement 4) | |
By (Statement 4) and the belief rule, derive (G4): | |
(Statement 5) | |
By (Statement 5), A6, and the jurisdiction rule, derive (G3): | |
(Statement 6) | |
By (Statement 4) and the belief rule, derive (G8): | |
(Statement 7) | |
By (Statement 7), A8, and the belief rule, derive (G7): | |
(Statement 8) |
- b.
- User A authenticates user B
By M1 and the seeing rule, derive: | |
(Statement 9) | |
By A3 and the freshness rule, derive: | |
(Statement 10) | |
By (Statement 9) and the message meaning rule derive: | |
(Statement 11) | |
By (Statement 10), (Statement 11) and the nonce verification rule, derive: | |
(Statement 12) | |
By (Statement 12) and the belief rule, derive (G2): | |
(Statement 13) | |
By (Statement 13), A5 and the jurisdiction rule, derive (G1): | |
(Statement 14) | |
By (Statement 12) and the belief rule, derive (G6): | |
(Statement 15) | |
By (Statement 15), A7, and the belief rule, derive (G5): | |
(Statement 16) |
4.2. Unforgeable Record
4.3. Non-Repudiation
4.4. Integrity
4.5. Resist Known Attacks
4.5.1. Replay Attack
4.5.2. Main-in-the-Middle Attack (MITM)
5. Discussion
5.1. Computation Cost
5.2. Communication Performance
5.3. Comparison
6. Conclusions
- (1)
- Clarifies the Hyperledger Fabric architecture and applies the blockchain technology to the field of transporting tobacco products.
- (2)
- The proposed blockchain-based system synchronizes the logistics record in the ledger via a secure private channel. Tobacco products are hard to forge or smuggle by a malicious party.
- (3)
- A verification phase was designed to provide consumers and auditors with the ability to check the legality of tobacco products. When illegal tobacco products are found, the access party can raise any doubts and the arbitrator can find out which party acted illegally in the logistics process.
- (4)
- Compared with the EU’s scheme, the access party can scan the TID and update to the blockchain during the logistics phase, so the mechanism provides a flexible way to update the logistics records to the blockchain.
- (5)
- Provide security verification and simulation against known threats or attacks.
- (6)
- Use BAN Logic to prove the security of mutual authentication.
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- CTP Glossary|FDA—Tobacco Product. Available online: https://www.fda.gov/tobacco-products/compliance-enforcement-training/ctp-glossary#:~:text=Tobacco%20product%20%2D%20 (accessed on 12 March 2021).
- WHO—Tobacco. Available online: https://www.who.int/en/news-room/fact-sheets/detail/tobacco (accessed on 12 March 2021).
- WHO Framework Convention on Tobacco Control; World Health Organization: Geneva, Switzerland, 2003.
- Joossens, L.; Raw, M. From cigarette smuggling to illicit tobacco trade: Table 1. Tob. Control 2012, 21, 230–234. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Implementation Analysis Regarding the Technical Specifications and Other Key Elements for a Future EU System for Traceability and Security Features in the Field of Tobacco Products: Final Report; Consumers, Health, Agriculture and Food Executive Agency, Health Unit: Luxembourg, 2018; p. 114.
- Products, Guidance & Regulations|FDA. Available online: https://www.fda.gov/tobacco-products/products-guidance-regulations (accessed on 12 March 2021).
- GS1 Barcodes—Standards. Available online: https://www.gs1.org/standards/barcodes (accessed on 12 March 2021).
- Azevedo, S.G.; Carvalho, H. Contribution of RFID technology to better management of fashion supply chains. Int. J. Retail. Distrib. Manag. 2012, 40, 128–156. [Google Scholar] [CrossRef]
- Wyld, D.C. Death sticks and taxes: RFID tagging of cigarettes. Int. J. Retail. Distrib. Manag. 2008, 36, 571–582. [Google Scholar] [CrossRef]
- Kamilaris, A.; Fonts, A.; Prenafeta-Boldύ, F.X. The rise of blockchain technology in agriculture and food supply chains. Trends Food Sci. Technol. 2019, 91, 640–652. [Google Scholar] [CrossRef] [Green Version]
- Wang, S.; Tao, Y.; Wang, G. UHF RFID Tag for Integration into a Cigarette Pack. IEEE Antennas Wirel. Propag. Lett. 2011, 10, 1433–1436. [Google Scholar] [CrossRef]
- Shi, J.; Li, Y.; He, W.; Sim, D. SecTTS: A secure track & trace system for RFID-enabled supply chains. Comput. Ind. 2012, 63, 574–585. [Google Scholar] [CrossRef]
- Prasanna, K.; Hemalatha, M. RFID GPS and GSM based logistics vehicle load balancing and tracking mechanism. Procedia Eng. 2012, 30, 726–729. [Google Scholar] [CrossRef] [Green Version]
- Li, Y.; Xu, L.; Zhao, S. Tobacco Logistics Retroactive System Research Based on RFID Technology. Internet Things Cloud Comput. 2016, 4, 39. [Google Scholar] [CrossRef] [Green Version]
- Liu, H.; Li, Z.; Cao, N. Framework Design of Financial Service Platform for Tobacco Supply Chain Based on Blockchain. In Proceedings of the International Conference on Algorithms and Architectures for Parallel Processing, Guangzhou, China, 15–17 November 2018; pp. 145–150. [Google Scholar]
- Humayun, M.; Jhanjhi, N.; Hamid, B.; Ahmed, G. Emerging Smart Logistics and Transportation Using IoT and Blockchain. IEEE Internet Things Mag. 2020, 3, 58–62. [Google Scholar] [CrossRef]
- Nakamoto, S. Bitcoin: A Peer-to-Peer Electronic Cash System. 2019. Available online: https://bitcoin.org/bitcoin.pdf (accessed on 11 February 2012).
- Buterin, V. A next-generation smart contract and decentralized application platform. Ethereum White Paper 2014, 3, 36. [Google Scholar]
- Wang, Y.-C.; Chen, C.-L.; Deng, Y.-Y. Authorization Mechanism Based on Blockchain Technology for Protecting Museum-Digital Property Rights. Appl. Sci. 2021, 11, 1085. [Google Scholar] [CrossRef]
- Chen, C.-L.; Deng, Y.-Y.; Weng, W.; Zhou, M.; Sun, H. A blockchain-based intelligent anti-switch package in tracing logistics system. J. Supercomput. 2021, 1–42. [Google Scholar] [CrossRef]
- Wang, Y.-C.; Chen, C.-L.; Deng, Y.-Y. Museum-Authorization of Digital Rights: A Sustainable and Traceable Cultural Relics Exhibition Mechanism. Sustainability 2021, 13, 2046. [Google Scholar] [CrossRef]
- Chen, C.-L.; Lin, C.-Y.; Chiang, M.-L.; Deng, Y.-Y.; Chen, P.; Chiu, Y.-J. A Traceable Online Will System Based on Blockchain and Smart Contract Technology. Symmetry 2021, 13, 466. [Google Scholar] [CrossRef]
- Chen, C.-L.; Chiang, M.-L.; Deng, Y.-Y.; Weng, W.; Wang, K.; Liu, C.-C. A Traceable Firearm Management System Based on Blockchain and IoT Technology. Symmetry 2021, 13, 439. [Google Scholar] [CrossRef]
- Kwak, K.H.; Kong, J.T.; Cho, S.I.; Phuong, H.T.; Gim, G.Y. A Study on the Design of Efficient Private Blockchain. In Artificial Intelligence: Foundations, Theory, and Algorithms; Springer Science and Business Media LLC: Berlin/Heidelberg, Germany, 2018; pp. 93–121. [Google Scholar]
- Li, Z.; Kang, J.; Yu, R.; Ye, D.; Deng, Q.; Zhang, Y. Consortium Blockchain for Secure Energy Trading in Industrial Internet of Things. IEEE Trans. Ind. Inform. 2017, 14, 1. [Google Scholar] [CrossRef] [Green Version]
- Mingxiao, D.; Xiaofeng, M.; Zhe, Z.; Xiangwei, W.; Qijun, C. A review on consensus algorithm of blockchain. In Proceedings of the 2017 IEEE International Conference on Systems, Man, and Cybernetics (SMC), Banff, AB, Canada, 5–8 October 2017; pp. 2567–2572. [Google Scholar]
- Androulaki, E.; Barger, A.; Bortnikov, V.; Cachin, C.; Christidis, K.; Caro, A.D.; Enyeart, D.; Ferris, C.; Laventman, G.; Manevich, Y.; et al. Hyperledger fabric: A distributed operating system for permissioned blockchains. In Proceedings of the Thirteenth EuroSys Conference, Porto, Portugal, 23–26 April 2018. [Google Scholar]
- How Fabric Networks Are Structured—Hyperledger-Fabricdocs Main Documentation. Available online: https://hyperledger-fabric.readthedocs.io/en/latest/network/network.html (accessed on 30 April 2021).
- Vanstone, S. Responses to NIST’s proposal. Commun. ACM 1992, 35, 50–52. [Google Scholar]
- Johnson, D.; Menezes, A.; Vanstone, S. The Elliptic Curve Digital Signature Algorithm (ECDSA). Int. J. Inf. Secur. 2001, 1, 36–63. [Google Scholar] [CrossRef]
- Elaine Barker, A.R. Transitioning the Use of Cryptographic Algorithms and Key Lengths; National Institute of Standards and Technology, Computer Security Division, Information Technology Laboratory: Gaithersburg, MD, USA, 2019.
- Burrows, M.; Abadi, M.; Needham, R.M. A logic of authentication. ACM Trans. Comput. Syst. 1990, 8, 18–36. [Google Scholar] [CrossRef]
- Kaur, K.; Kumar, S.; Baliyan, A. 5G: A new era of wireless communication. Int. J. Inf. Technol. 2020, 12, 619–624. [Google Scholar] [CrossRef]
Authors | Year | Objective | Technologies | 1 | 2 | 3 | 4 | 5 | 6 |
---|---|---|---|---|---|---|---|---|---|
Wyld [9] | 2008 | RFID tag sticks to cigarettes and taxes | RFID | N | Y | N | N | Y | N |
Wang et al. [11] | 2011 | RFID tag integration into a cigarette pack | RFID | N | Y | N | N | Y | N |
Carvalho et al. [8] | 2012 | Deploy RFID to fashion supply chains | RFID | N | N | Y | Y | Y | N |
Shi et al. [12] | 2012 | Track and trace system for supply chains | RFID | N | N | Y | Y | Y | Y |
Prasanna et al. [13] | 2012 | Logistics vehicle load balancing and tracking mechanism | RFID, GPS, GSM | N | N | Y | Y | Y | N |
Li et al. [14] | 2016 | Tobacco logistics retroactive system | RFID, database | N | Y | Y | Y | Y | N |
Liu et al. [15] | 2018 | Financial service platform for tobacco supply chain | Blockchain | Y | Y | Y | N | N | N |
Humayun et al. [16] | 2020 | Smart logistics and transportation using IoT and Blockchain | Blockchain, IoT | Y | N | Y | Y | N | N |
Phase | Party | Verification Function | |
---|---|---|---|
Sender | Receiver | ||
Authentication Phase | A | B | |
B | A | ||
Issuing and Manufacture Phase | MF | IDI | |
IDI | CA | ||
CA | IDI | ||
IDI | MF | ||
Logistics Phase (Shipping) | SHP | LG | |
LG | SHP | ||
Logistics Phase (Receiving) | LG | RCP | |
RCP | LG | ||
Consumption Phase | RT | CA | |
CA | RT |
Phase | Party | Signature | |
---|---|---|---|
Sender | Receiver | ||
Authentication Phase | A | B | |
B | A | ||
Issuing and Manufacture Phase | MF | IDI | |
IDI | CA | ||
CA | IDI | ||
IDI | MF | ||
Logistics Phase (Shipping) | SHP | LG | |
LG | SHP | ||
Logistics Phase (Receiving) | LG | RCP | |
RCP | LG | ||
Consumption Phase | RT | CA | |
CA | RT |
Phase | 1st Role | 2nd Role | 3rd Role |
---|---|---|---|
Authentication Phase | User A: 2Tasy + 2Th + 2Tadd + 1Tsub + 4Tmul + 3Tdiv | User B: 2Tasy + 2Th + 2Tadd + 1Tsub + 3Tmul + 3Tdiv | N/A |
Issuing and Manufacture Phase | Manufacturer: 2Tasy + 2Th + 2Tadd + 1Tsub + 4Tmul + 3Tdiv | IDI Issuer: 4Tasy + 4Th + 4Tadd + 2Tsub + 6Tmul + 6Tdiv | Competent Authorities: 2Tasy + 2Th + 2Tadd + 1Tsub + 3Tmul + 3Tdiv |
Logistics Phase (Shipping) | Shipper: 2Tasy + 2Th + 2Tadd + 1Tsub + 4Tmul + 3Tdiv | Logistics: 2Tasy + 2Th + 2Tadd + 1Tsub + 3Tmul + 3Tdiv | N/A |
Logistics Phase (Receiving) | Logistics: 2Tasy + 2Th + 2Tadd + 1Tsub + 4Tmul + 3Tdiv | Recipient: 2Tasy + 2Th + 2Tadd + 1Tsub + 3Tmul + 3Tdiv | N/A |
Consumption Phase | Consumer: N/A | Retailer: 2Tasy + 2Th + 2Tadd + 1Tsub + 4Tmul + 3Tdiv | Competent Authorities: 2Tasy + 2Th + 2Tadd + 1Tsub + 3Tmul + 3Tdiv |
Message Length | 4G (100 Mbps) | 5G (20 Gbps) | |
---|---|---|---|
Authentication Phase | 3648 bits | 36 µs | 0.18 µs |
Issuing and Manufacture Phase | 7296 bits | 71 µs | 0.36 µs |
Logistics Phase (Shipping) | 3648 bits | 36 µs | 0.18 µs |
Logistics Phase (Receiving) | 3648 bits | 36 µs | 0.18 µs |
Consumption Phase | 3648 bits | 36 µs | 0.18 µs |
EU’s Scheme [5] | Our Scheme | |
---|---|---|
Database | General database | Blockchain-based Decentralized ledger |
Flexibility | Low | High |
Data integrity | Low | High |
Message non-repudiation | N/A | High |
Traceable record | Yes | Yes |
Verifiable record | No | Yes |
Tampering data | Easy | Hard |
Tracking record establishment | Pre-set routing | Update routing dynamically |
Security analysis | Yes | Yes |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Chen, C.-L.; Lim, Z.-Y.; Liao, H.-C.; Deng, Y.-Y.; Chen, P. A Traceable and Verifiable Tobacco Products Logistics System with GPS and RFID Technologies. Appl. Sci. 2021, 11, 4939. https://doi.org/10.3390/app11114939
Chen C-L, Lim Z-Y, Liao H-C, Deng Y-Y, Chen P. A Traceable and Verifiable Tobacco Products Logistics System with GPS and RFID Technologies. Applied Sciences. 2021; 11(11):4939. https://doi.org/10.3390/app11114939
Chicago/Turabian StyleChen, Chin-Ling, Zi-Yi Lim, Hsien-Chou Liao, Yong-Yuan Deng, and Peizhi Chen. 2021. "A Traceable and Verifiable Tobacco Products Logistics System with GPS and RFID Technologies" Applied Sciences 11, no. 11: 4939. https://doi.org/10.3390/app11114939
APA StyleChen, C. -L., Lim, Z. -Y., Liao, H. -C., Deng, Y. -Y., & Chen, P. (2021). A Traceable and Verifiable Tobacco Products Logistics System with GPS and RFID Technologies. Applied Sciences, 11(11), 4939. https://doi.org/10.3390/app11114939