Polyhedra

About the Project
A demonstration of Zero-Knowledge Login (zkLogin) implementation on the Sui Blockchain, enabling secure, privacy-preserving authentication via Google, Twitch, and Facebook. This project leverages Zero-Knowledge Proofs (zk-SNARKs) to protect user data while allowing seamless interaction with the Sui network.
Key Purpose
- The primary goal of the zkIdentity project on the Sui Blockchain is to enable secure and privacy-preserving user authentication using familiar platforms like Google, Twitch, and Facebook. By leveraging Zero-Knowledge Proofs (zk-SNARKs), the system ensures that users can interact with the Sui network without exposing their personal data or managing complex cryptographic keys.

Key Features Developed
- ▫️Secure Authentication with Google, Twitch, and Facebook using OpenID Connect (OIDC)
- ▫️Real-Time SUI Balance Tracking for authenticated accounts
- ▫️Transaction Execution on the Sui network using zkLogin signatures
- ▫️Faucet Integration to request SUI tokens on the Sui Devnet
- ▫️Session Management with easy state clearing for better security
Authentication Flow
▫️User Authentication:
The user selects an OpenID provider (Google/Twitch/Facebook) for login.▫️JWT Generation:
After successful authentication, a JWT (JSON Web Token) is generated.▫️Zero-Knowledge Proof Request:
The JWT is sent to the prover service, which returns a Zero-Knowledge Proof.▫️Secure Address Derivation:
The user’s Sui address is derived securely, ensuring no personal data is exposed.▫️Transaction Signing:
Transactions are signed using zkLogin credentials and submitted to the Sui network.
Techsteck
- ▫️Frontend: React, TypeScript
- ▫️Blockchain: Sui Devnet, zkLogin Protocol
- ▫️Authentication: OpenID Connect (OIDC)
- ▫️Cryptography: Zero-Knowledge Proofs (zk-SNARKs)
Conclusion
This approach facilitates seamless onboarding for users, allowing them to engage with decentralized applications on the Sui network without compromising privacy. By abstracting the complexities of key management and ensuring data confidentiality, zkIdentity paves the way for broader adoption of blockchain technologies.