Use Zero-knowledge modules

"ZK-SNARKs are a powerful technology. ZK-SNARKs may be to cryptography what transformers are to AI: a general-purpose technology that is so powerful that it will completely steamroll a whole bunch of application-specific techniques for a whole bunch of problems that were developed in the decades prior. " - Vitalik founder of ETH


How do you prove that you know where Waldo is without ruining the game? You could take a cutout, put it over the page, and show Waldo. You can then remove the cutout and the viewer would still not know where he is — this is the essence of ZK-proofs. They let you get 'yes' or 'no' responses for questions where the underlying data should not be revealed.

Examples of this include asking for sensitive data like, age, birthday, credit score, Bitcoin address, etc. The end-user may not want to reveal this information and moreover, your organization may not want the risk of holding this information in its servers.

This is where our module 'zkMe' is used. We allow Zero-Knowledge proofs to run in browser. These proofs are then validated on blockchain where they are also stored. By serving the validation via url, or API call anyone can check the proof in a standard server or in a web browser.

ICME enjoys the unique advantage of using a technology that can make direct HTTP outcalls from a blockchain. This allows us to connect with many datasources without the need of web3 Oracles; vastly reducing development time and reducing the need to trust a third party.