All projects
OneShot
A decentralised prediction market that combines World ID's proof of humanness with the Chainlink Confidential Runtime Environment (CRE). We solve two common pain points in traditional prediction markets: capital determinism and voting privacy leakage.
Prediction Markets DeFi & Tokenization CRE & AI Risk & Compliance Privacy World Tenderly Thirdweb
What it is
OneShot is a decentralised prediction market combining World ID's proof of humanness with the Chainlink Confidential Runtime Environment (CRE). Traditional prediction markets suffer from two fundamental flaws: capital determinism (he who has the most money shouts the loudest) and a total lack of privacy (all bets are entirely transparent on-chain). We solve this through a "one person, one vote" system with absolute privacy.
Here is how it works:
- Sybil Resistance: Users access our Mini App within the World App. They authenticate seamlessly via World ID, ensuring every participant is a genuine, unique human being.
- Absolute Privacy: When placing a wager, the frontend encrypts the data using RSA-OAEP with the CRE public key. The backend solely handles ciphertext, whilst the blockchain records only a hash to guarantee immutability.
- Confidential Settlement: Only the Chainlink CRE Trusted Execution Environment (TEE) holds the private key to decrypt these predictions. Upon market closure, the TEE retrieves the result, decrypts the wagers, calculates the distribution, and dispatches the multi-chain payout (Base, Arbitrum, Optimism, World Chain) back to the Vault contracts.
How it Works
- Frontend (Mini App): Next.js (App Router) alongside MiniKit JS, delivering a native, limitless experience directly within the World App.
- Backend: Next.js API Routes coupled with Turso (libSQL) as a distributed edge database, handling World ID verification and the blind storage of ciphertext.
- Smart Contracts: Developed in Solidity using Foundry. The MarketRegistry, BetIngress, and Vault contracts are deployed across four testnets.
- Confidential Compute: Implemented via TypeScript and the @chainlink/cre-sdk to author TEE workflows, integrating the Web Crypto API for end-to-end encryption.
Links
Created by
- Yu-Cheng Liao