|
|
(2 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
− | <pre>
| + | Helping with https://en.bitcoin.it/wiki/Signet |
− | #!/bin/sh
| |
| | | |
− | cd ~/src/bitcoin/src
| + | I wish I could squash commits on this wiki like in git :-) |
− | | |
− | ./bitcoind -regtest -daemon=1
| |
− | printf "Waiting for regtest bitcoind to start"
| |
− | while ! ./bitcoin-cli -regtest getconnectioncount 2>/dev/null 1>&2
| |
− | do printf .; sleep 1
| |
− | done; echo
| |
− | | |
− | ./bitcoin-cli -regtest createwallet default >/dev/null 2>&1
| |
− | ./bitcoin-cli -regtest loadwallet default >/dev/null 2>&1
| |
− | ADDR=$(./bitcoin-cli -regtest getnewaddress '' bech32)
| |
− | PRIVKEY=$(./bitcoin-cli -regtest dumpprivkey $ADDR)
| |
− | PUBKEY=$(./bitcoin-cli -regtest getaddressinfo $ADDR | jq -r .pubkey)
| |
− | | |
− | LENX2=$(printf $PUBKEY | wc -c)
| |
− | LEN=$((LENX2/2))
| |
− | LENHEX=$(echo "obase=16; $LEN" | bc)
| |
− | SCRIPT=$(echo 51${LENHEX}${PUBKEY}51ae)
| |
− | | |
− | cat <<EOF
| |
− | ADDR=$ADDR
| |
− | PRIVKEY=$PRIVKEY
| |
− | PUBKEY=$PUBKEY
| |
− | SCRIPT=$SCRIPT
| |
− | EOF
| |
− | | |
− | ./bitcoin-cli -regtest stop 2>&1
| |
− | | |
− | datadir=$HOME/signet-custom-$$
| |
− | mkdir $datadir
| |
− | cat > $datadir/bitcoin.conf <<EOF
| |
− | signet=1
| |
− | [signet]
| |
− | daemon=1
| |
− | signetchallenge=$SCRIPT
| |
− | EOF
| |
− | | |
− | ./bitcoind -datadir=$datadir
| |
− | | |
− | printf "Waiting for custom Signet bitcoind to start"
| |
− | while ! ./bitcoin-cli -datadir=$datadir getconnectioncount 2>/dev/null 1>&2
| |
− | do printf .; sleep 1
| |
− | done; echo
| |
− | | |
− | ./bitcoin-cli -datadir=$datadir createwallet default >/dev/null 2>&1
| |
− | ./bitcoin-cli -datadir=$datadir loadwallet default >/dev/null 2>&1
| |
− | ./bitcoin-cli -datadir=$datadir importprivkey "$PRIVKEY"
| |
− | NADDR=$(./bitcoin-cli -datadir=$datadir getnewaddress)
| |
− | | |
− | # Examples from
| |
− | # https://github.com/bitcoin/bitcoin/pull/19937#issuecomment-696419619
| |
− | | |
− | ../contrib/signet/generate.py --cli="./bitcoin-cli -datadir=$datadir" generate 1 --block-time=1 --address="$NADDR" --grind-cmd='./bitcoin-util grind'
| |
− | #../contrib/signet/generate.py --cli="./bitcoin-cli -datadir=$datadir" generate 1 --block-time=1 --address="$NADDR" --backdate 0
| |
− | #../contrib/signet/generate.py --cli="./bitcoin-cli -datadir=$datadir" generate 1 --block-time=1 --descriptor="wpkh(...)#..." --secondary
| |
− | | |
− | ./bitcoin-cli -datadir=$datadir getblocktemplate '{"rules": ["signet","segwit"]}' \
| |
− | | ../contrib/signet/generate.py --cli="./bitcoin-cli -datadir=$datadir" genpsbt --address="$NADDR" \
| |
− | | ./bitcoin-cli -datadir=$datadir -stdin walletprocesspsbt
| |
− | | |
− | #../contrib/signet/generate.py solvepsbt --grind-cmd='./bitcoin-util grind' | ./bitcoin-cli -datadir=$datadir submitblock
| |
− | | |
− | ./bitcoin-cli -datadir=$datadir stop
| |
− | </pre>
| |