🚦 Inspiration
In Africa, road checks often remain manual and time-consuming, with significant risks of fraud and corruption. Law enforcement lacks modern tools to quickly verify the validity of documents and the identity of drivers.
NFCGuard aims to provide a secure, mobile, and tailored solution that uses NFC technology to digitize and enhance the reliability of these controls.
📱 What it does
NFCGuard is a mobile application designed to facilitate and secure road checks by combining NFC chip reading and access to official databases.
🔍 NFC Driving License Scan
The driver presents their license, equipped with an NFC chip containing a unique identifier. The officer scans this license with the app, which queries a secure API to retrieve the driver’s information: identity, license validity, authorized categories, and history of any infractions.🚗 Vehicle Crisis Card Scan
The vehicle has an NFC card (called the "crisis card") also containing a unique identifier. By scanning it, the app retrieves via API the vehicle and owner data: registration, insurance, technical inspection, control history, etc.✅ Cross-verification and Validation
The app compares driver and vehicle data to verify if the driver is authorized to operate the vehicle. It checks document validity, vehicle condition, and regulatory compliance.⚠️ Infraction and Sanction Management
If one or more infractions are detected or noted by the officer (expired license, uninsured vehicle, etc.), the app allows to:- Select the observed infractions from a clear list.
- Automatically generate an appropriate fine.
- Select the observed infractions from a clear list.
💸 Fine Payment
The officer can record the fine payment directly through the app, with several options adapted to the local context:- Mobile payment via Wave or Orange Money (with integration or simulation of the payment gateway).
- Cash payment, recorded manually.
- Mobile payment via Wave or Orange Money (with integration or simulation of the payment gateway).
📢 Additional Action Management
If the vehicle must be immobilized or sent to impound, the officer can quickly trigger an alert directly from the app, automatically sending a message to the relevant impound service.🗂️ Complete Traceability
Every control is logged in the database with all the following information:- Identity of the officer who performed the control.
- Identity of the driver and vehicle data.
- Date, time, and precise geographic location of the control.
- List of infractions observed.
- Payment information (amount, method, status).
- Additional actions (impound alert, etc.).
- Identity of the officer who performed the control.
This traceability ensures transparency and reliability of the checks, enabling rigorous administrative follow-up and combating abuses.
🏗️ How we built it
- Flutter application using
flutter_nfc_kitfor NFC chip reading. - Spring Boot backend exposing secure REST APIs, with a MySQL database modeling drivers, vehicles, owners, controls, and payments.
- JWT authentication and HTTPS communication to ensure security.
- For hackathon purposes, we used representative data embedded locally, anticipating future connection to official APIs of competent authorities (ministries, police, insurance).
🛠️ Challenges we ran into
- Ensuring compatibility and reliable NFC reading across various devices.
- Securing data exchanges between mobile and server without complicating user experience.
- Accurately modeling the complex relationships between drivers, owners, and vehicles.
- Providing robust operation even with limited network connectivity.
- Integrating mobile payment methods in a realistic test environment.
🎉 Accomplishments that we're proud of
- Smooth workflow allowing successive scanning of two NFC chips.
- Complete and secure traceability of conducted controls.
- Relevant integration of locally used mobile payment solutions.
- Modular, secure, and scalable architecture.
- User-friendly interface adapted to field constraints.
📚 What we learned
- Clear distinction between driver and owner is a key project point.
- Limiting data stored on the NFC chip to a unique identifier enhances security and eases update management.
- Comprehensive traceability is essential to fight corruption and ensure trust.
- Integration of mobile payments is a strong lever for effective sanctions.
- Designing for field use requires balancing ease of use and technical robustness.
🚀 What's next for NFCGuard - Smart Road Enforcement
In a real-world context, NFCGuard will be able to connect to official APIs of national competent authorities to retrieve up-to-date data on drivers and vehicles.
We also plan to add complementary features such as facial recognition, a web dashboard for supervision, and automated infraction management.
Log in or sign up for Devpost to join the conversation.