From a8baba422f2c9e3b79506a664db07f491bc48fa0 Mon Sep 17 00:00:00 2001 From: Conor Patrick Date: Fri, 16 Aug 2019 14:03:07 +0800 Subject: [PATCH] add info for rng use --- docs/solo/customization.md | 2 +- docs/solo/solo-extras.md | 19 +++++++++++++++++++ mkdocs.yml | 1 + 3 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 docs/solo/solo-extras.md diff --git a/docs/solo/customization.md b/docs/solo/customization.md index e7d65b2..601a576 100644 --- a/docs/solo/customization.md +++ b/docs/solo/customization.md @@ -19,7 +19,7 @@ and program it. ### Creating your attestation key pair Since we are generating keys, it's important to use a good entropy source. -You can use the True RNG on your Solo device to generate some good random numbers. +You can use the [True RNG on your Solo](/solo/solo-extras) to generate some good random numbers. ``` # Run for 1 second, then hit control-c diff --git a/docs/solo/solo-extras.md b/docs/solo/solo-extras.md new file mode 100644 index 0000000..1d5dd80 --- /dev/null +++ b/docs/solo/solo-extras.md @@ -0,0 +1,19 @@ +# Solo Extras + +## Random number generation + +Solo contains a True Random Number Generator (TRNG). A TRNG is a hardware based mechanism +that leverages natural phenomenon to generate random numbers, which is often better than a traditional +RNG that has state and updates deterministically using cryptographic methods. + +You can easily access the TRNG stream on Solo using our python tool [solo-python](https://github.com/solokeys/solo-python). + +``` +solo key rng raw > random.bin +``` + +Or you can seed the state of the RNG on your kernel (/dev/random). + +``` +solo key rng feedkernel +``` diff --git a/mkdocs.yml b/mkdocs.yml index 642adab..1b45b2f 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -14,6 +14,7 @@ nav: - Programming instructions: solo/programming.md - Bootloader mode: solo/bootloader-mode.md - Customization: solo/customization.md + - Solo Extras: solo/solo-extras.md - Running on Nucleo32 board: solo/nucleo32-board.md - Signed update process: solo/signed-updates.md - Code documentation: solo/code-overview.md