Our project provides a blockchain-based solution for tracking the supply chain of vaccines, from manufacturer to end user by bringing manufacturers, distributors, healthcare providers, regulators, and consumers under the same platform. We have implemented blockchain technology for tracking down and documenting the vaccination flow from manufacturer to the vaccination center. The blockchain ledger being immutable and distributed based on digital certificates can be advocated for building a vaccine registry for authenticating and verifying vaccines. It provides proof that the received vaccine batches originate from an authentic source and have passed through security checkpoints to reach the final end user. Blockchain technology has the potential to improve the transparency, traceability, and efficiency of vaccine supply chains, ultimately helping to ensure that vaccines reach patients in a timely and effective manner. It also ensures that each transaction is securely recorded and cannot be altered, thereby preventing counterfeiting of drugs and ensuring the safe consumption of pharmaceutical products.
The system is built using Solidity, for developing smart contracts, and JavaScript and HTML for the interface. Using the Truffle framework, the smart contracts deployment is automated. To integrate with the blockchain, the system uses Metamask and Ganache. Metamask is a browser extension that allows users to manage their Ethereum accounts and interact with decentralized applications, while Ganache is a personal blockchain for Ethereum development.
- Manufacturer adds the vaccine details to the blockchain, including the manufactureId, product Name, product SN, product Brand, product Price, manufacture Address and timestamp of adding the transaction block indicating the manufacturingDate.
- The manufacturer address is generated by retrieving the latitudinal and longitudinal coordinates using the HTML Geolocation API and then using the Geoapify reverse geocoding api, the longitudes and latitudes are used to fetch the location.
- A unique identifier is generated using keccak256 hash value of the combination of the productSN, manufactureId, manufacture address and manufacture date and added to a QR code.
- The seller details are registered into blockchain, including the seller name, seller brand, seller code, seller phone number, and seller address with respect to a manufacturer Id.
- The qr code is scanned by the manufacturer to retrieve the productSn. The seller code of the seller to which the product is to be transferred is added. Using the productSn and the SellerCode, the ownership is transferred from manufacture to a seller.
- The manufacturer can retrieve the list of sellers registered with them using their manufacturerId.
- The seller can retrieve and view all the vaccine details that it can sell to the consumers using the seller code.
- The seller sells the vaccines to the consumer by scanning the qr code from the seller's side and retrieving the productSn. Using the productSn and consumer code to which the vaccine is sold to, the transfer of ownership is moved to the consumer.
- The consumer's vaccine purchase history is registered in the blockchain by using the consumer code as a reference. This can be used as a certificate or as a proof of vaccination by verifying the consumer has a record of being vaccinated by the safe vaccines.
- The consumer can verify the vaccine is genuine by scanning the qr code on the vaccine and checking if the unique identifier retrieved is registered with the blockchain.
- The consumer can also verify the vaccine by checking if the productSn retrieved from the identifier is present in the mapped record of vaccines sold by a verified seller.
- If the vaccine is verified, a message displaying “genuine product” will be shown. If not, the message will return “fake product”.