WARNING: DO NOT USE BEACON GENERATED VALUES AS SECRET CRYPTOGRAPHIC KEYS.
A required library :code:pycryptodome
is used with :code:nistbeacon
.
Ubuntu, and other Linux-based users should have :code:python3-dev
installed.
.. code:: bash
apt-get install python3-dev
nistbeacon
To install the beacon library, simply use :code:pip
:
.. code:: bash
pip install nistbeacon
It is easy to use the beacon. Most queries are performed through
:code:NistBeacon
which produces :code:NistBeaconValue
objects.
.. code:: python
from nistbeacon import NistBeacon
# In the examples below I will be using 1447873020
# as my <timestamp> when required
# Current Record (or next closest)
# https://beacon.nist.gov/rest/record/<timestamp>
record = NistBeacon.get_record(1447873020)
# Previous Record
# https://beacon.nist.gov/rest/record/previous/<timestamp>
prev_record = NistBeacon.get_previous(1447873020)
# Next Record
# https://beacon.nist.gov/rest/record/next/<timestamp>
next_record = NistBeacon.get_next(1447873020)
# First Record
# https://beacon.nist.gov/rest/record/1378395540
first_record = NistBeacon.get_first_record(download=True)
# Last Record
# https://beacon.nist.gov/rest/record/last
last_record = NistBeacon.get_last_record()
# Verify the record and the record chain
record_chain_result = NistBeacon.chain_check(1447873020)
Please refer to the
official documentation <https://urda.github.io/nistbeacon/>
_
to dive deeper into :code:NistBeacon
and :code:NistBeaconValue
objects.
Please refer to the
CONTRIBUTING <https://github.com/urda/nistbeacon/blob/master/.github/CONTRIBUTING.md>
_
document on GitHub
+---------+-----------------+--------------------+----------------------+ | Branch | Linting Checks | Testing Status | Code Coverage Status | +=========+=================+====================+======================+ | Master | |MasterLint| | |MasterTesting| | |MasterCoverage| | +---------+-----------------+--------------------+----------------------+
NIST Randomness Beacon Homepage <https://beacon.nist.gov/home>
_NIST Beacon REST API <https://beacon.nist.gov/record/0.1/beacon-0.1.0.xsd>
_.. |MasterCoverage| image:: https://codecov.io/gh/urda/nistbeacon/branch/master/graph/badge.svg?branch=master .. |MasterLint| image:: https://github.com/urda/nistbeacon/workflows/Linting%20Checks/badge.svg?branch=master .. |MasterTesting| image:: https://github.com/urda/nistbeacon/workflows/Comprehensive%20Testing/badge.svg?branch=master