Inspiration
It began with a simple, unpleasant fact - 1 in 10 medicines in developing countries are fake, WHO reports. There are examples of Indonesian citizens suffering serious health issues as a result of counterfeit and contaminated medication. What stood out to us was not the gravity of the situation, but rather a sense of urgency - this should have been solvable years ago with a piece of technology millions of people already carry in their pocket.
We dug into existing solutions for anti-counterfeit checks (QR codes, holograms), and realized the obvious problem with them all - a QR code can easily be photocopied on a fake box of medicine. The 'authentication' process is as good as the security of the QR code itself, which is incredibly low - and that is a vulnerability we plan to address.
What it does
VerifAI Web3 enables a pharmacy customer to scan a medicine box with a smartphone and know immediately if the medicine is real, fake, or suspicious, with checks done in two ways:
- Blockchain batch verification - medicine batches are uploaded to an immutable ledger as they move from producer -> distributor -> pharmacy, ensuring their history is visible and cannot be tampered with.
- AI powered packaging inspection - similar to bank note scanners, an image recognition model analyzes the physical packaging of the medicine for signs of a low quality print, mismatched colors, etc. Combined, these features mean that a counterfeiter can no longer rely on simply copying a QR code to make fake medicine, since their packaging is likely to fail automated inspection by VerifAI's computer vision model - and every scan across VerifAI's network acts as an additional layer of security. ## How we built it (This section will be completed during Phase 2, when the 24 hour construction period begins. Our rough plan is as follows :)
- Frontend: a mobile responsive web application for scanning medicine boxes
- AI: a light computer vision model which detects irregularities in product packaging
- Web3: batch records and scan records uploaded to a testnet blockchain
- Backend: connects the frontend, AI, and web3 to form a cohesive, functioning application
Challenges we encountered
Even before the idea was fully formed, we had to make some difficult tradeoffs that any competitor would also have to make:
- Cold start dilemma: A blockchain based verification system is only useful once many batches have been added to it, but an industry-wide adoption is not likely to happen right away. We had to structure our solution in such a way that it could be adopted at the pharmacy level first, without requiring every single pharmaceutical company to add their batches to VerifAI first.
- AI detection accuracy: For obvious reasons, a detection of a packaging defect has to be a lot more reliable than a 'coin is counterfeit' from a casual scanning app. This requires significantly higher accuracy from the computer vision model, which may be challenging to achieve within the 24 hour construction window.
- Scope creep: It is easy to get caught up in ambition and think "this project could really take off if we built X, Y, Z", but for a prototype it is important to focus on delivering on a narrow set of promised features versus broader, less fleshed out verticals.
What we learned
That the most essential part of any Web3 project is not the blockchain layer, but rather a clear understanding of what the blockchain is protecting, and what it is not capable of protecting. An immutable ledger is not a panacea for counterfeiting - it has to be combined with a different, tangible layer of security, such as computer vision. That is where the true innovation of VerifAI lies - not in the blockchain that everyone can see, but in the ability to build a protection network across all users with verifiable, objective on-chain facts.
What's next for VerifAI Web3
- Pilot with a single local pharmacy/cooperative to verify accuracy
- Further training of the computer vision model on more data
- Possible collaborations with the BPOM (Indonesian drug administration) as traceability requirements become stricter
Built With
- api
- blockchain
- code
- css
- ethereum
- ethers.js
- express.js
- figma
- ipfs
- mongodb
- next.js
- node.js
- opencv
- polygon
- postgresql
- python
- qr
- react
- rest
- solidity
- tailwind
- tensorflow
- web3.js
Log in or sign up for Devpost to join the conversation.