Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Historical Beacon RNG #376

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from
Draft

Historical Beacon RNG #376

wants to merge 1 commit into from

Conversation

jaybuidl
Copy link
Member

@jaybuidl jaybuidl commented Sep 5, 2024

Adapted from @kevincharm's RandaoAccessor

Specifications

https://docs.google.com/document/d/1hKlzk51z-ULnfSL4sQ7aCl70IQBxObtr1i8ZfsYl6MY/edit

Usage

  1. Court is in Staking phase. The bot calls passPhase(), which makes the RNG emit a Request(_blockNumber) event,
  2. Court is now in Generating phase. The bot listens to the Request event and retrieves the requested block number, then retrieves the block header from RPC with the eth_getblockbynumber method, then RLP-encodes the header using getBlockWithRLP(), finally provides the header to the RNG by calling verifyRecent(),
  3. The bot calls passPhase(), the Court is now in Drawing phase.

@kevincharm
Copy link

Hey! I briefly read through your spec doc. Nowadays it should possible to use IVCs to verify older block hashes (see: https://github.com/arnaucube/hash-chain-sonobe). So you needn't necessarily rely on a third-party. It's still very fiddly, but just wanted to share in case in might be of use :)

Copy link

sonarcloud bot commented Sep 6, 2024

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants