ETH Global Link: https://ethglobal.com/showcase/inro-rped8
Inro
is a state-of-the-art application dedicated to digital identity verification and privacy preservation. Created during the 2024-CircuitBreaker
hackathon, Inro
seeks to fulfill the societal demand for a secure age verification mechanism in online platforms, adult content access control, among others, without sacrificing user privacy.
Inro
facilitates age verification without revealing personal information, making it ideal for bars, rental shops, and similar establishments. The process is simplified into four steps:
Inro prioritizes privacy, security, and simplicity. The backend leverages the Sindri API for zero-knowledge proofs, with Noir for crafting age verification logic, ensuring only necessary age information is verified. The frontend uses modern JavaScript frameworks, including React Native, for a smooth, cross-platform user experience. The integration of Expo's Native Modules for NFC card scanning exemplifies Inro's innovative use of technology.
To run Inro locally, follow these steps:
Clone the Repository:
git clone https://github.com/knocks-public/2024-CircuitBreaker.git
Install Dependencies:
make install
Deploy Circuit:
make deploy_circuit
Build the Application:
Navigate to packages/frontend
, then:
npm run prebuild
npm run ios
Open Xcode with 2024-CircuitBreaker/packages/frontend/ios/frontend.xcodeproj
.
Start the Application: For development, initiate the Expo development server:
cd packages/frontend
npm run start:dev
Set up the following environment variables:
Copy .env_sample
to .env
and adjust as necessary:
EXPO_PUBLIC_SINDRI_API_KEY
: Your Sindri API key.EXPO_PUBLIC_SINDRI_API_URL
: The Sindri API URL.EXPO_PUBLIC_CIRCUIT_ID
: Your circuit ID for zero-knowledge proofs.LOCAL_IP_ADDR
: Your local IP address (for Expo in Docker+docker-compose setups).Inro
aims
to revolutionize digital identity verification by:
Such innovations are increasingly crucial as the need for robust digital identity management and privacy protection grows.
We welcome contributions. Please submit proposals via pull requests or issues.
Inro
is licensed under the MIT License.