Skip to content

Instantly share code, notes, and snippets.

@gadiener
Last active October 11, 2024 18:04
Show Gist options
  • Save gadiener/ebec8b39b15293fbc438b2d21b211dfe to your computer and use it in GitHub Desktop.
Save gadiener/ebec8b39b15293fbc438b2d21b211dfe 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
@mrd19x
Copy link

mrd19x commented Oct 11, 2024

+1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment