Rogue Docs
  • Rogue Protocol
    • Introduction
  • Rogue Trader
    • Rogue Trader pages
      • Home page
      • Connect wallet page
      • Rogue Index page
      • RogueBot page
      • ROGUE bankroll page
      • High Rollers NFTs page
      • My account page
      • Deposit page
      • Withdraw page
    • Self-custodial & trustless
    • No KYC or geo-blocking
  • Rogue Index
    • Overview
    • Zero house edge betting
    • Binary options reimagined
    • How to play
    • Price update mechanism
    • Bet lifecycle
    • Provably-fair price updates
    • Leaderboard
    • Smart contracts
    • Place bets programmatically
  • RogueBots
    • High volatility token trading
    • RogueBot mechanics
    • RogueBot token pricing
    • RogueBot token page
    • RogueBot trading tools
    • RogueBots list
    • RogueBot 7 day lifespan
    • RogueBot smart contracts
    • Trade tokens programatically
  • ROGUE Bankroll
    • Adding liquidity to bankroll
    • Removing liquidity from bankroll
    • Pool token price calculation
    • Bankroll mechanics
    • Bankroll smart contract
    • Why does the house win?
  • ROGUE Token
    • Native gas token
    • Zero-fee betting token
    • Supply & distribution
    • Public token sale
    • ROGUE information
    • ROGUE bridge
    • Buy ROGUE
    • Earn ROGUE
  • Rogue Chain
    • Arbitrum Orbit AnyTrust
    • Instant time-to-finality
    • Ultra-low gas fees
    • Chain information
    • Block explorer
  • Rogue NFTs
    • Revenue sharing NFTs
    • NFT pricing & availability
    • Get ETH on Arbitrum
    • RHRC smart contracts
    • RHRC information
Powered by GitBook
On this page
  • How Rogue Index Price Updates Are Generated
  • How To Verify Every Price Update on Rogue Index

Was this helpful?

Export as PDF
  1. Rogue Index

Provably-fair price updates

PreviousBet lifecycleNextLeaderboard

Last updated 18 days ago

Was this helpful?

Price updates on Rogue Index are non-deterministic true random numbers, generated and verified by by measuring changes in atmospheric noise caused by thunderstorms.

Gambling games of chance depend on the ability to generate truly random and unpredictable numbers and apply them to the game's possible outcomes. But they also depend on being able to prove to the gambler that the random number was indeed generated randomly in a way that's impossible for the house to influence or interfere with.

Many gambling platforms claim to generate provably-fair random numbers but the mechanism for verifying them is highly complex and requires you to understand and run computer code. As a result, very few people can actually verify the fairness of their games, and its impossible to verify individual results in real-time that went against you.

At Rogue we have created an easy to use system where anyone can instantly verify any random number price update of Rogue Index with a simple click on a link.

How Rogue Index Price Updates Are Generated

Rogue Index uses the highly respected service called to generate price updates that are derived from changes in atmospheric noise caused by thunderstorms. These are known as True random numbers that are completely non-deterministic and cannot be predicted or reproduced, as opposed to Pseudo random numbers that are generated by computer algorithms which are deterministic and can be reproduced given the same initial inputs.

Using changes in atmospheric noise to generate random numbers satisfies the first condition of true randomness. The second condition of being able to prove that it was indeed generated randomly is achieved through random.org's mechanism built specifically for gambling game operators which is described below.

Random.org generates each random number for Rogue on request and makes them available to us through their API along with the following data:

  • timestamp of the request

  • hash of the API key that made the request

  • digitally signed signature by random.org

  • sequential serial number

The timestamp shows when the request was made, the hashed API key proves that Rogue made the request, the signed signature proves that the result came from random.org and the sequential serial number proves that we didn't keep re-rolling the dice and requesting a new random number until we got one that suited us.

Upon receipt of each random number result from random.org we immediately initiate a blockchain transaction to post the result on-chain where it can never be altered or deleted. Players can read this immutable data from the blockchain to determine that the result is genuine and was generated without any possible interference by Rogue.

Players can compare the result that we post on-chain with the same result that random.org posts on a dedicated verification page of their website to confirm they are exactly the same.

How To Verify Every Price Update on Rogue Index

  • On the Rogue Index UI click on the Verify Results tab, see above

  • In this tab you will see a new row being added to the top every time the Rogue Index price updates, which is approximately once every second

  • Every new row starts with a serial number and all serial numbers are sequential

  • YOU WILL NEVER SEE A NON-SEQUENTIAL SERIAL NUMBER ADDED TO THIS TABLE

  • Mouse over the results area which will pause new updates in the tab and prevent new rows being added so you can click on results without them constantly moving away from your cursor

  • Select the price update you want to verify and under the far right column click on the link called Verify Result which will display random.org's verification page for that price update

  • In the above image we clicked on Verify Result in the fourth row down with the serial number 12,421,722 and the price 232,972 and landed on the following verification page on random.org's website, see below:

  • On the above verification page you can see the serial number is 12,421,722 and the price update delivered is 232,972 which is within a range of 500 points above or below the previous price of 233,096, which you can see by the Min and Max values of 232,596 and 233,596.

  • We then clicked on the Tx hash link in the same row and landed on the Logs tab of the roguescan page of the transaction that updated the Rogue Index smart contract with the price 232,972 and serial number 12,421,722 less than a second after the timestamp displayed on the random.org verification page, see below

The above PriceUpdated event is emitted when the updatePrice function is called on the Rogue Index smart contract with the new price update and serial number as function call arguments. Calling the updatePrice function actually triggers the settlement of all unsettled bets that expire at that new serial number and the above Logs tab will show all the BetSettled events and Payout events first and the very last event at the bottom of the page will always be the PriceUpdated event.

This is important because it means that all bets are settled in the exact same transaction that updates the Rogue Index price and serial number in the smart contract that is sent immediately after it is received from random.org.

This makes it literally impossible for anyone to interfere with or manipulate the settlement of any bet without causing the entire updatePrice function to revert which will stop the game and halt all price updates.

random.org
random.org