Crate encrypt38[][src]

Expand description

Command line tool to encrypt and decrypt bitcoin private keys with bip-0038 standard.

Basic usage

$ encrypt38 -p Satoshi KwYgW8gcxj1JWJXhPSu4Fqwzfhp5Yfi42mdYmMa4XqK7NJxXUSK7
$ encrypt38 -p Satoshi 6PYLtMnXvfG3oJde97zRyLYFZCYizPU5T3LwgdYJz1fRhh16bU7u6PPmY7


  • Don’t trust, verify

    Compare the results of this tool with others. Verify the implementation (and the tests). Decrypt immediately after an encryption to check the passphrase you typed was the one you wanted. Use at your won risk.

  • Not recommended

    Use this tool only to decrypt keys you already have. The method of keeping private keys encrypted with bip-0038 standard is not recommended anymore (use mnemonic instead).


  • Address

    This tool show the respective address of a decrypted private key in the legacy, segwit-nested and segwit-native formats according to the version prefix of the encrypted private key.

  • Custom separator

    Customization of the default separator of information when decrypting.

  • Decryption

    Insert an encrypted private key 6P... and passphrase do show the private key represented in hexadecimal and the respective address, public key and wif keys.

  • Encryption

    Insert a private key in the form of hexadecimal numbers or wif key and passphrase to show the encrypted private key.

  • Generation (elliptic curve multiplication method)

    Insert a passphrase to create an encrypted private key using pseudo-random number generation and elliptic curve multiplication.

  • Uncompressed address

    This tool is capable of resulting in uncompressed address (mainly for decryption and retro compatibility, not recommended).


encrypt38 1.1.6
Insert encrypted, hexadecimal or wif private key and passphrase to decrypt or
encrypt accordingly. Insert only passphrase to create an encrypted private key
using elliptic curve multiplication (and pseudo-random number generation).

    encrypt38 [FLAGS] [OPTIONS] -p <passphrase> [PRIVATE_KEY]

    -h, --help            Prints help information
    -u, --uncompressed    Encrypted private key to generate uncompressed address
    -V, --version         Prints version information
    -v, --verbose         Show possible address and public key when decrypting

    -p <passphrase>        Used to encrypt and decrypt the private key (required)
    -s <separator>         Specify character (or string) to separate verbose result

    <PRIVATE_KEY>    Hexadecimal, wif or encrypted private key


You have to install rust and a linker if you don’t already have them.

$ cargo install encrypt38