From fbad0632a749aec8eb4fb16e611967dc61c39126 Mon Sep 17 00:00:00 2001 From: ryan Date: Wed, 17 Jan 2024 21:35:01 -0500 Subject: [PATCH] *: use full BIP-0032 and BIP-0039 names --- README.md | 10 +++++----- crates/keyfork/src/cli/recover.rs | 4 ++-- crates/util/keyfork-prompt/src/validators.rs | 2 +- docs/src/dev-guide/provisioners.md | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index af3c218..fedee5a 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,12 @@ # keyfork # An opinionated and modular toolchain for generating and managing a wide range -of cryptographic keys offline and on smartcards from a shared bip39 mnemonic +of cryptographic keys offline and on smartcards from a shared BIP-0039 mnemonic phrase. Keyfork can be used by organizations and solo users, for the purposes of disaster recovery, cold storage, and reproducibility of private keys and secret -data. Keyfork achieves this by using a bip32 seed loaded into an agent to +data. Keyfork achieves this by using a BIP-0032 seed loaded into an agent to generate deterministic and unique keypairs. This ensures only the agent has control over the mnemonic itself, and other components can request deterministic data. The seed can be split using the Keyfork Shard mechanism, @@ -57,8 +57,8 @@ Note: The following features are proposed, and may not yet be implemented. * Config file and 24 word mnemonic phrase to recover *every* key * Shard mechanism allows for "M-of-N" recovery of seed if lost * Unpredictable - * Generate a BIP39 phrase from OS or physicalized entropy - * Provide and use BIP39 passphrase from user supplied entropy + * Generate a BIP-0039 phrase from OS or physicalized entropy + * Provide and use BIP-0039 passphrase from user supplied entropy * Read up on [milksad](https://milksad.info) to understand why this matters! * Deterministic * Given the same seed, repeated derivation requests will be reproducible @@ -230,7 +230,7 @@ keyfork version keyfork help Show this text. keyfork [command] - Commands receive bip32 root as stdin + Commands receive BIP-0032 root as stdin Commands return output and config data as json over stdout back to keyfork keyfork [command] help Show help for a particular sub-command diff --git a/crates/keyfork/src/cli/recover.rs b/crates/keyfork/src/cli/recover.rs index d8b6274..af59a2a 100644 --- a/crates/keyfork/src/cli/recover.rs +++ b/crates/keyfork/src/cli/recover.rs @@ -27,8 +27,8 @@ pub enum RecoverSubcommands { } impl RecoverSubcommands { - /// Return the 128-bit or 256-bit entropy for a bip39 mnemonic. This is _not_ the same as the - /// 512-bit seed used by bip32. + /// Return the 128-bit or 256-bit entropy for a BIP-0039 mnemonic. This is _not_ the same as + /// the 512-bit seed used by BIP-0032. fn handle(&self) -> Result> { match self { RecoverSubcommands::Shard { diff --git a/crates/util/keyfork-prompt/src/validators.rs b/crates/util/keyfork-prompt/src/validators.rs index 833c2ae..e05e21f 100644 --- a/crates/util/keyfork-prompt/src/validators.rs +++ b/crates/util/keyfork-prompt/src/validators.rs @@ -142,7 +142,7 @@ pub mod mnemonic { } } - /// A mnemonic of a given choice of lengths. For example, a 128-bit or 256-bit bip32 seed. + /// A mnemonic of a given choice of lengths. For example, a 128-bit or 256-bit BIP-0032 seed. #[derive(thiserror::Error, Debug)] pub enum MnemonicChoiceValidationError { /// The provided mnemonic did not match any of the valid ranges. diff --git a/docs/src/dev-guide/provisioners.md b/docs/src/dev-guide/provisioners.md index 60b5297..32eccca 100644 --- a/docs/src/dev-guide/provisioners.md +++ b/docs/src/dev-guide/provisioners.md @@ -9,7 +9,7 @@ particular mechanism) to an external source, such as a smart card. Provisioners should hardcode at least one path index (such as `7366512`, for "PGP") specific to the usage of the key to be provisioned (and such index should be recorded in the keyfork-path-data crate), and accept at least one index to use as what -bip32 calls an "account". While some users may never practically make use of +BIP-0032 calls an "account". While some users may never practically make use of multiple accounts, having the option to specify multiple accounts is important. ## Plumbing