Author: Jean-Paul Kogelman 2013-07-19 17:46:44
Published on: 2013-07-19T17:46:44+00:00
The proposal by Jean-Paul Kogelman outlines a method for encoding and encrypting a Bitcoin Hierarchical Deterministic (HD) Wallet master seed. This method is intended for use on paper wallets, and each encoded master seed contains all the information required to verify and reconstitute an HD wallet, except for the optional passphrase. The encrypted version uses salting and scrypt to resist brute-force attacks.The extended private keys proposed in BIP 0032 do not offer any form of security as they are long, fixed-length records. Therefore, the proposed method provides two encoding methodologies in three lengths each, resulting in a compact representation of the master seed that is easier to handle. Additionally, a two-factor version of the master seed record allows for safe storage and the creation of paper wallets by third parties.The resulting Base58Check-encoded string starts with either "WS" for clear master seed records or "ws" for two-factor master seed records. There are six different object identifier prefixes resulting from the two seed record representations with three lengths each. The proposal involves using various functions and definitions such as AES256Encrypt, AES256Decrypt, SHA256, RIPEMD160, scrypt, HMAC-SHA512, Base58Check, G, N, etc.To implement the proposal with alt-chains, suggestions are given. The proposal also suggests a modification to BIP0038, which proposes a way to encrypt and protect Bitcoin private keys with a passphrase. The proposed modification is to allow the creation of encoded master seeds that do not start with "WS" or "ws". However, this proposal does not cover separate Bitcoin testnet representations of encoded master seeds.The proposal provides four test vectors that demonstrate the use of the proposed modifications. Each test vector includes a seed, clear representation, password, encrypted representation, address, xprv, and xpub. The proposal acknowledges Mike Caldwell for BIP 0038, which heavily inspired this proposal. Additionally, the proposal includes links to related BIPs: BIP 0032 Hierarchical Deterministic Wallets and BIP 0038 Passphrase-protected private key.
Updated on: 2023-06-07T14:04:52.820885+00:00