6 stable releases
1.1.7 | May 16, 2024 |
---|---|
1.1.6 | Jul 22, 2021 |
#70 in #bitcoin
529 downloads per month
44KB
720 lines
encrypt38
Command line tool to encrypt and decrypt bitcoin private keys with bip-0038 standard.
Basic usage
$ encrypt38 -p Satoshi KwYgW8gcxj1JWJXhPSu4Fqwzfhp5Yfi42mdYmMa4XqK7NJxXUSK7
6PYLtMnXvfG3oJde97zRyLYFZCYizPU5T3LwgdYJz1fRhh16bU7u6PPmY7
$ encrypt38 -p Satoshi 6PYLtMnXvfG3oJde97zRyLYFZCYizPU5T3LwgdYJz1fRhh16bU7u6PPmY7
09c2686880095b1a4c249ee3ac4eea8a014f11e6f986d0b5025ac1f39afbd9ae
KwYgW8gcxj1JWJXhPSu4Fqwzfhp5Yfi42mdYmMa4XqK7NJxXUSK7
Disclaimer
-
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).
Features
-
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).
Help
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).
Usage: encrypt38 [OPTIONS] -p <passphrase> [PRIVATE_KEY]
Arguments:
[PRIVATE_KEY] Hexadecimal, wif or encrypted private key
Options:
-s <separator> Specify character (or string) to separate verbose result
-p <passphrase> Used to encrypt and decrypt the private key (required)
-u, --uncompressed Encrypted private key to generate uncompressed address
-v, --verbose Show possible address and public key when decrypting
-h, --help Print help
-V, --version Print version
Installation
You have to install rust and a linker if you don't already have them.
$ cargo install encrypt38
Dependencies
~8.5MB
~129K SLoC