Skip to content

[Contract] On-Chain RNG via Commit-Reveal Scheme #517

@ayomideadeniran

Description

@ayomideadeniran

[Contract] On-Chain RNG via Commit-Reveal Scheme

🚀 Feature Overview

Because block hashes are manipulatable, implement a secure Random Number Generator using a commit-reveal cryptographic scheme to support fair lotteries and gaming modules.

This is a complex, MVP-critical feature designed to elevate the smart contract architecture and expand the educational modules of the Web3 Student Lab platform.

🛠️ Implementation Requirements

  • Implement a phase-based system (commit phase, reveal phase).\n- Penalize participants who fail to reveal their secrets.\n- Generate the final entropy securely by hashing all revealed secrets.

🔧 Technical Specifications

  • Language/Environment: Rust / Soroban (or Solidity if specifically bridging).
  • Adherence to strict architectural boundaries and gas optimization.
  • High test coverage requirements (>90% unit testing in Rust).
  • Prevent common vectors: Reentrancy, Integer Overflow/Underflow, and Oracle Manipulation.

✅ Acceptance Criteria

  • Contract implemented according to requirements.
  • Comprehensive unit and integration tests passing.
  • Security review completed (no critical vulnerabilities).
  • Comprehensive documentation written using NatSpec/Rustdoc.

🎓 Difficulty Level

Advanced - Requires deep understanding of Web3 security, cryptography, and smart contract design patterns.

⏱️ Timeline

ETA: 3-5 days

🏷️ Labels

contract, cryptography, gaming


Note to Contributors: Break down work into smaller PRs for easier review, focusing on core logic first before adding complex modifiers.

Metadata

Metadata

Labels

Stellar WaveIssues in the Stellar wave program

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions