Inmetro's Randomness Beacon is a web service, part of the SICCCiber project's effort to generate reliable and public sources of random numbers
Currently, they are generated by using a simple Photonic TRNG (True Random Number Generator) method. The key purpose is to define and construct a system based on quantum entanglement for generating the random numbers:
PLEASE, DO NOT USE THE BEACON GENERATED VALUES AS CRYPTOGRAPHIC KEYS.
Inmetro's Randomness Beacon is a web service, part of the SICCCiber project's effort to generate reliable and public sources of random numbers. Contact us for more details
In addition to the beacon, we developed two application prototypes using VDF. A prototype for combining beacons and a public api where any user can contribute values to generate a new random number. Both can be found here.
The service is available via a public REST API. Consumers need to provide a pulse generation time in POSIX format. See http://en.wikipedia.org/wiki/Unix_time for more information and http://www.epochconverter.com for an online timestamp converter.
Pulse at a specific time (or next closest):
beacon.inmetro.gov.br/beacon/2.1/pulse/time/<timestamp>
Example: beacon.inmetro.gov.br/beacon/2.1/pulse/time/1742165940000
Previous Pulse:
beacon.inmetro.gov.br/beacon/2.1/pulse/time/previous/<timestamp>
Example: beacon.inmetro.gov.br/beacon/2.1/pulse/time/previous/1742165940000
Next Pulse :
beacon.inmetro.gov.br/beacon/2.1/pulse/time/next/<timestamp>
Example: beacon.inmetro.gov.br/beacon/2.1/pulse/time/next/1742165940000
Last Available Pulse:
beacon.inmetro.gov.br/beacon/2.1/pulse
Example: beacon.inmetro.gov.br/beacon/2.1/pulse
First Pulse of the first Chain:
beacon.inmetro.gov.br/beacon/2.1/chain/1/pulse/1
Example: beacon.inmetro.gov.br/beacon/2.1/chain/1/pulse/1
Pulse <pulseIndex> in the chain <chainIndex>:
beacon.inmetro.gov.br/beacon/2.1/chain/<chainIndex>/pulse/<pulseIndex>
Example: beacon.inmetro.gov.br/beacon/2.1/chain/2/pulse/370109
Sequence of Pulses between two Timestamps:
beacon.inmetro.gov.br/beacon/2.1/skiplist/time/<startTimestamp>/<endTimestamp>
Example: beacon/2.1/skiplist/time/1703089020000/1742166000000
Short Sequence of Pulses in a chain according to an anchor and target pulses based on their timestamps:
beacon.inmetro.gov.br/beacon/2.1/skiplist?anchorTime=<startTimestamp>&targetTime=<endTimestamp>&chainId=
Example: beacon/2.1/skiplist?targetTime=1703089020000&anchorTime=1742166000000&chainId=2
Short Sequence of Pulses in a chain according to an anchor and target pulses based on their indexes:
beacon.inmetro.gov.br/beacon/2.1/skiplist?anchorTime=<startTimestamp>&targetTime=<endTimestamp>&chainId=
Example: beacon/2.1/skiplist?targetId=1&anchorId=370110&chainId=2
If a request for a Pulse results in no found Pulse, a 404 response is returned.