Skip to content

Instantly share code, notes, and snippets.

@MrThanlon
Forked from gadiener/generate-bitcoin-keys.sh
Created June 29, 2022 05:40
Show Gist options
  • Save MrThanlon/ba7b0fda9208469dcd69c6ac5543a9e9 to your computer and use it in GitHub Desktop.
Save MrThanlon/ba7b0fda9208469dcd69c6ac5543a9e9 to your computer and use it in GitHub Desktop.
OpenSSL commands to create a Bitcoin private/public keys from a ECDSA keypair
#!/bin/sh
PRIVATE_KEY="ECDSA"
PUBLIC_KEY="ECDSA.pub"
BITCOIN_PRIVATE_KEY="bitcoin"
BITCOIN_PUBLIC_KEY="bitcoin.pub"
echo "Generating private key"
openssl ecparam -genkey -name secp256k1 -rand /dev/random -out $PRIVATE_KEY
echo "Generating public key"
openssl ec -in $PRIVATE_KEY -pubout -out $PUBLIC_KEY
echo "Generating Bitcoin private key"
openssl ec -in $PRIVATE_KEY -outform DER|tail -c +8|head -c 32|xxd -p -c 32 > $BITCOIN_PRIVATE_KEY
echo "Generating Bitcoin public key"
openssl ec -in $PRIVATE_KEY -pubout -outform DER|tail -c 65|xxd -p -c 65 > $BITCOIN_PUBLIC_KEY
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment