Inspiration
We are an experienced blockchain team with a lot of experience in solidity and the EVM ecosystem. Currently, we are focusing our resources on zero-knowledge technology and its applications. In which the problem with shuffle on-chain for poker and blackjack is what we are focusing on researching.
We set two main goals for our product:
- Become a completely transparent virtual casino
- Build a common consensus (which we call proof of shuffle) for casino games integrated with Zoker
What it does
Within the competition, we want to show a complete product that can be ready for launch, so we will focus on building a complete blackjack game entirely on-chain.
Thanks to the use of Circom and the unit matrix, we ensure that the shuffle of the deck is always fair and there is no interference from the dealer.
Hands will not depend on trust in a dealer like traditional game servers.
Players can also livestream their games with their fan community.
How we built it
The logic part is built on an EVM-based smart contract, with the zero-knowledge part created from the Circom framework.
To be able to shuffle on-chain, we will use the following formulas:
In each hand and dealer, the cards will be shuffled by multiplying with the permutations matrix and then encrypted with ElGamal.
shuffle with permutations matrix:

Encrypt each element in the cards array


Decrypt:

And using chainlink-automation to clear abandoned games.
Challenges we ran into
Build my own formula to ensure the integrity of the deck after each shuffle of the hands and dealers. To optimize the number of users transactions, we had to include submit proof in game actions to reduce by 1/3 the number of transactions needed to create
Accomplishments that we're proud of
Time management to be able to submit the product in the most complete way.
What we learned
For a blockchain product to truly be adopted, we cannot focus solely on technology; we need to address the issues that users are facing.
Zoker has addressed the issue of trust between hand and dealer through zero-knowledge technology.
Chainlink Automation
Thanks to chainlink automation, we have greatly improved the UX of the product while keeping our overall decentralized nature.Because it is a ZK product, it requires transactions to be initiated continuously to verify the proof, so in the case of a game where one person cannot continue to create a transaction because of some problem, it will make the other person worse off. got annoyed because the game was interrupted, thanks to chainlink automation we were able to automatically detect faulty games and punish players who left the game
What's next for Zoker
As mentioned above, Zoker will focus on 2 main tasks:
- Become a completely transparent virtual casino
- Build a metachain with my own consensus (which we call proof of shuffle) for casino games integrated with Zoker These are the macro tasks that we have set out. During development, we will rely on market trends to continuously grow users into the ecosystem of Zoker in particular and Theta in general.
References:
- Elgamal formula: https://en.wikipedia.org/wiki/ElGamal_encryption
- Mental Porker: https://en.wikipedia.org/wiki/Mental_poker
Built With
- amazon-web-services
- chainlink-automation
- circom
- node.js
- react
- solidity


Log in or sign up for Devpost to join the conversation.