A Blockchain-enabled KYC Verification Process to Avoid Fraudulent Activities
The main aim of KYC is that governments and enterprises need to track customers for illegal and money laundering activities. Moreover, KYC also enables banks to better understand their customers and their financial dealings. This helps them manage their risks and make better decisions.
Challenges in the Traditional KYC process
Every bank has its own KYC process set up, and customers need to do the KYC again and again for each bank. Due to the lack of KYC standards, compiling each request is time-consuming. It becomes irksome for customers to provide the same information to different banking entities and industries. Banks sometimes even follow up with customers to get more details for KYC. A recent study concluded that overheads of KYC in a bank increase the onboarding cost for a customer by 18% and the minimum time required to 26 days.
The blockchain is an immutable distributed ledger shared with everyone involved in the network. Every participant interacts with the blockchain using a public-private cryptographic key combination. Moreover, immutable record storage is provided, which is extremely hard to tamper with.
Banks can utilize the feature set of blockchain to reduce the difficulties faced by the traditional KYC process. A distributed ledger can be set up between all the banks, where one bank can upload the KYC of a customer and other banks can vote on the legitimacy of the customer details. KYC for the customers will be immutably stored on the blockchain and will be accessible to all the banks in the blockchain.
Banks can add customers and their data to the network. Whenever any new data is needed to be appended, the ledger could enable encrypted updates of the data. Banks can modify the data of the customers present in the database. Banks can also view customer data. An admin can track the actions such as upload or approval of KYC documents performed by banks. The admin can block any bank from doing a KYC; the admin can also add new banks or remove untrusted banks from the smart contract. Whenever a new customer enters the system, a bank initiates a KYC request for the customer with the additional data provided by the customer to the bank. Once a KYC request from a customer is added, any bank can upvote or downvote. Customers’ KYC status will be stored on the chain depending on the number of upvotes/downvotes. Banks also report the other banks to make sure that the banks are secure and not tampered with for the KYC process. This rating will help to judge the bank activities and remove the fraudulent bank from our network. The admin can anytime disallow the bank from upvoting/downvoting. Depending on the number of reports and the number of banks present in the network, it will be decided whether any bank is allowed to downvote or upvote. Use the link https://github.com/neetu-sharma/KYC-project to learn more about it.