zmorpheus delivers a pseudonymous, seamless zk-based token-gating solution for real-world use cases of proving ownership of NFTs with privacy with IoT Devices.
[*** Description]
zmorpheus delivers a pseudonymous, seamless zk-based token-gating solution for real-world use cases of proving ownership of NFTs with privacy. Anyone can easily host token-gated events where only those with a particular NFT and participants can prove that they have one of them without revealing their identities. And One more thing, it can be connected to IoT devices, which make it easiler to build token-gated spaces in the real world. In this hackathon, we use smart-lock to demonstrate the interraction with IoT devices.
[*** Motivation]
I have two motivations for this project. First is that zkp should be common good for all developers, not only for specialists. there are several super useful tools, languages, libraries for app developers in which we can make use of ZKP without knowing much about it, such as KZG commitment, Polynomials, Lagrange, plonk, plonky2, halo2, etc.. Second, Ethereum has more potential in the real world with IoT devices, which drives Ethereum as common good not only in the "Web", but also in our real lives.
Semaphore Our product is based on Semaphore. We use semaphore packages, including libraries for frontend, group and base contracts for our smart contracts, and verifiers for onchain verifications. In our case, Semaphore is used for proof of membership. I am really interested in ZKP but really difficult to understand. Especially Halo2. In next hackathon, I would like to challenge Halo2 and implement Circom in Halo2.
Scroll We deployed our zkp verification contracts on Scroll so that you can enjoy zkEVM! Cool! Why I chose Scroll is that they are building zkEVM and they are using Halo2. I watched some tutorial of Halo2 from them and it was amazing. So I would like to try zkEVM.
Polygon We also deployed our zkp verification contracts on Polygon Matic. We wanted to try Polygon zkEVM and compare Scroll but Polygon zkEVM has not yet opend alpa so that we use just Polygon Matic Network. However, I would like to challenge PolygonID in next hackathon.
Graph Protocol We use graph protocol to obtain specific event firing histories so that we can create merkle tree for zk-proof generations in frontend without using backend db or something.
WalletConnect We use WalletConnect to make it easier for users to join Web3 world. WalletConnect makes it possible to interact with Dapps in normal browsers without interacting with annoying not good in-app-browser.