README: fixup start of document explaining bip39 and bip32

This commit is contained in:
Ryan Heywood 2024-01-17 21:45:54 -05:00
parent fbad0632a7
commit 0cc47c7e93
Signed by: ryan
GPG Key ID: 8E401478A3FBEF72
1 changed files with 17 additions and 6 deletions

View File

@ -1,16 +1,25 @@
# keyfork # # keyfork #
An opinionated and modular toolchain for generating and managing a wide range An opinionated and modular toolchain for generating and managing a wide range
of cryptographic keys offline and on smartcards from a shared BIP-0039 mnemonic of cryptographic keys offline and on smartcards from a shared [BIP-0039]
phrase. mnemonic phrase. BIP-0039 phrases are used to calculate a [BIP-0032] seed,
which is used for hierarchical deterministic key derivation.
**Note:** The difference between the data encoded in a BIP-0039 mnemonic, and
the BIP-0032 seed, is that a BIP-0039 mnemonic of any length can be used to
generate a BIP-0032 seed of a static length (512 bits). Keyfork makes use of a
BIP-0039 mnemonic and does not accept just a BIP-0032 seed - it will be treated
as the entropy provided for a mnemonic, or rejected outright for being of an
invalid size.
Keyfork can be used by organizations and solo users, for the purposes of Keyfork can be used by organizations and solo users, for the purposes of
disaster recovery, cold storage, and reproducibility of private keys and secret disaster recovery, cold storage, and reproducibility of private keys and secret
data. Keyfork achieves this by using a BIP-0032 seed loaded into an agent to data. Keyfork achieves this by loading a BIP-0032 seed into an agent to
generate deterministic and unique keypairs. This ensures only the agent has generate deterministic and unique keypairs. This ensures only the agent has
control over the mnemonic itself, and other components can request control over the root seed itself, and other components can request
deterministic data. The seed can be split using the Keyfork Shard mechanism, deterministic data. The BIP-0039 data can also be split using the Keyfork Shard
which utilizes Shamir's Secret Sharing to allow "M-of-N" recovery of the seed. mechanism, which utilizes Shamir's Secret Sharing to allow "M-of-N" recovery of
the data.
All crate licenses are notated using the "license" field in their respective All crate licenses are notated using the "license" field in their respective
Cargo.toml. As a general rule, As a general rule, crates with binaries are Cargo.toml. As a general rule, As a general rule, crates with binaries are
@ -217,6 +226,8 @@ which can be opened in-browser by running
`mdbook serve --open docs`. `mdbook serve --open docs`.
[`docs`]: /public/keyfork/src/branch/main/docs/src/SUMMARY.md [`docs`]: /public/keyfork/src/branch/main/docs/src/SUMMARY.md
[BIP-0039]: https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki
[BIP-0032]: https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki
<!-- <!--
``` ```