Corruption is a major problem in developing countries like Nepal. Especially in the License registration process for automobiles, people are found issuing licenses giving bribes to the government officials. Also the fraud detection mechanism of licenses is not well established in the present context. Also for the registration process, people have to stand in a long queue in order to maintain security in the system. We have developed a blockchain-based solution to maintain the integrity and immutability of the different records that are necessary to issue a license like practical trial pass record and written exam record. We have built a smart contract in Ethereum network that automatically issues a license once the essential records are submitted to the blockchain contract so that no middle man can take bribe and mutate the records. A web Dapp is designed to make the registration process simple, secure and transparent. In addition, a Dapp is designed for the traffic police monitoring the trials of automobiles so records can be stored immutably. Once the essential records are recorded in the contract, license is automatically issued involving no middle man in the process hence removing corruption in between process.
Also the icing over the cake is the use of IPFS (a distributed web protocol),the future of web, which is believed to replace the HTTP soon. With the heavy usage of IOT devices , the traffic over the network is escalating and load in server is increasing.IPFS and the Blockchain are a perfect match! We can address large amounts of data with IPFS, and place the immutable, permanent IPFS links into a blockchain transaction. This timestamps and secures your content, without having to put the data itself on the chain.
To detect the fraud in the license, we have developed a Dapp for traffic police by which officers can scan the QR code on the license and immediately detect the genuineness of the license.
The major challenge is adaptability with the Virtual EVM( Ethereum Virtual Machine ) where we faced different issues deploying the smart contract and maintaining accounts. Also the coding in solidity felt a bit complicated because we have to use functions in such a manner that could cost the minimum amount of gas(ether) in the network.
Our other challenge came with the deployment of the account records into IPFS (Inter Planetary File System). The technology is itself new (with alpha version just released in early 2019) and lack support communities. Many bugs are not available in the help communities due to which we have to dig into documentation and find the right code that works with toil.
We faced issue deploying the nodejs server in the AWS as we never have deployed anything over AWS before.
Also the last part of integrating all the code snippets was really challenging. Due to the lack of time, proper error handling codes was not implemented as a result of which we ran into bunch of errors. And the debugging part caused much pain. However we somehow managed to built a working code of our prototype. But , as limited by the time, we failed to implement some add on feature that could make our product better.