SShortSingh.
Back to feed

Browser game Dario Dash uses client-side Groth16 proofs to verify scores on-chain

0
·1 views

Dario Dash is a browser-based endless runner built on the Dusk blockchain that uses zero-knowledge proofs to ensure submitted scores are legitimate. After completing a ranked run, the player's browser generates a Groth16 proof locally using a Circom circuit of roughly 421,000 constraints, covering movement, collisions, item pickups, and scoring rules. The smart contract independently reconstructs public inputs, recomputes the obstacle schedule from the run seed, and verifies the proof before accepting any score. Each seed can only be used once, preventing replay attacks, and the proof is bound to the submitting account to stop players from copying others' valid proofs. Proof generation takes 10 to 60 seconds depending on hardware, and requires downloading an approximately 200 MB proving key that is cached by the browser after the first use.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

Study of 671,000 domains reveals email security gaps threatening AI agent infrastructure

A DNS scan of 671,693 domains conducted on July 25, 2026, found that despite growing DMARC adoption, enforcement rates actually fell by 0.42 percentage points last month as most new records were set to the non-enforcing 'p=none' policy. Of the 468,749 domains publishing DMARC records, only about 49% enforce quarantine or rejection, while roughly 117,000 domains carry records that block nothing and report nothing. Additionally, 166,442 DMARC-publishing domains have no working reporting address, meaning they receive no telemetry about email delivery failures or spoofing attempts. The analysis also challenges the assumption that self-hosted email is obsolete, finding it remains the single largest mail-hosting category at 22.79%, ahead of both Google Workspace and Microsoft 365. These infrastructure weaknesses are particularly relevant as AI agent platforms increasingly rely on email APIs, with their end-users concentrated in the less-protected long tail of the internet.

0
ProgrammingDEV Community ·

What Are Monads? A Beginner's Guide Using Python Inventory Examples

A tutorial published on DEV Community introduces the concept of monads to beginner programmers using a practical Python inventory management example. The guide demonstrates how exception-heavy code can become difficult to manage when multiple operations are chained together. To address this, the author introduces a Result type that represents either success or failure as part of a function's normal return value, avoiding the need for scattered try/catch blocks. The article walks through iterative code improvements, showing how wrapping outputs in a Result object lays the groundwork for understanding monadic patterns. The piece aims to make an abstract functional programming concept accessible without requiring knowledge of category theory.

0
ProgrammingDEV Community ·

Pepper Remastered to offer full-featured software VR without a physical headset

A developer is rebuilding Pepper, a software tool that simulates a VR headset and controllers so users can play SteamVR games using only a keyboard and mouse. The original Pepper was released a few months ago as a limited proof-of-concept using SteamVR's driver system, requiring significant manual setup. The remastered version promises a complete rewrite with improved architecture, better SteamVR compatibility, automatic driver installation, and support for gamepads as virtual controllers. New features will also include custom input mapping, real-time device monitoring, and a dedicated control center for managing settings. The developer is additionally exploring mobile support, with progress being tracked publicly on GitHub.

0
ProgrammingDEV Community ·

DexieCable Offers a Turbo-Free Path to Real-Time UIs in Rails with Inertia

Developers building Rails apps with Inertia.js and component frameworks like Svelte often struggle with real-time data sync outside the Hotwire/Turbo ecosystem. DexieCable is a new library that bridges Rails ActionCable and the browser's IndexedDB via Dexie.js, eliminating the need for manual WebSocket state management. Instead of triggering server round-trips or hand-wiring frontend stores, Rails pushes Dexie write operations directly into IndexedDB over ActionCable. UI components then use Dexie's reactive liveQuery to automatically reflect data changes without any sync boilerplate. The approach decouples data delivery from rendering, reducing server load and UI latency while keeping backend logic concise through ActiveRecord macros.

Browser game Dario Dash uses client-side Groth16 proofs to verify scores on-chain · ShortSingh