A Zero Knowledge app for Vendor Credentialing in Healthcare powered by MINA Protocol and zk-SNARKs.
This project is the first step in a real practical use of zero knowledge in healthcare. I've worked in Healthcare for several years as a service engineer. All service workers know the pain point in the redundant vendor credentialing process every and throughout the year. Multiple instances of personal and medical records are created and uploading to various systems in order to receive the credentials to access the hospitals. This project looks to reduce and/or eliminate the point of creating and uploading multiple instances of private records. Leveraging ZK technology, only specific information and be shared to the verify instead of a full copy of the record.
MINA's protocol makes this project possible to create a project that is able to document any relevant information into a off-chain Merkle Tree process while generating a final proof or the root to be stored on-chain. The project provides a demo of verifying different pieces of information on a simulated medical record. The project makes use of the assert methods to verify a proof and also allows for updating records off-chain while only storing minimal data of the root on-chain.
This project utilizes MINA protocol starting with it's MINA zkApp CLI. I started learning how to build with MINA and utilized a boilerplate Merkle Tree sample from the documentation. MINA uses SnarkyJS which allows to program with Typescript. A lot of time was spent going through the tutorials of the documentation and there are many improvements that could go along in the future especially utilizing recursion into the program.