From c0e65a979762b4dfe2488ac72635c275cc531412 Mon Sep 17 00:00:00 2001 From: Sam Ricotta Date: Tue, 17 Dec 2024 17:31:54 +1100 Subject: [PATCH] small changes --- README.md | 7 +++++++ docs/covenant-signer-setup.md | 19 ++++++++++--------- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 5efa787..dcacdd0 100644 --- a/README.md +++ b/README.md @@ -111,3 +111,10 @@ secure Covenant Signer while the emulator handles the blockchain interaction and validation logic. ![Covenant Architecture](./static/covenant.png) + +## Covenant Emulator Stack Setup +To set up your covenant emulator stack, +please follow the instructions in the following documents +(in sequence): +1. [Covenant Signer Setup](./docs/covenant-signer-setup.md) +2. [Covenant Emulator Setup](./docs/covenant-emulator-setup.md) diff --git a/docs/covenant-signer-setup.md b/docs/covenant-signer-setup.md index 7b8386a..65a2d54 100644 --- a/docs/covenant-signer-setup.md +++ b/docs/covenant-signer-setup.md @@ -40,11 +40,11 @@ Schnorr adaptor signatures required for covenant operations. This guide requires that: 1. You have a Bitcoin node setup for the Bitcoin -network you intend to operate your covenant signer on. + network you intend to operate your covenant signer on. 2. You have access to the private Bitcoin key you -set up your covenant with. + set up your covenant with. 3. A connection to a Babylon node. To run your own node, please refer to the -[Babylon Node Setup Guide](https://github.com/babylonlabs-io/networks/blob/main/bbn-test-5/babylon-node/README.md). + [Babylon Node Setup Guide](https://github.com/babylonlabs-io/networks/blob/main/bbn-test-5/babylon-node/README.md). For a refresher on setting up the Bitcoin node, refer to the [deployment guide of your phase-1 covenant signer setup](https://github.com/babylonlabs-io/covenant-signer/blob/main/docs/deployment.md#2-bitcoind-setup). @@ -141,8 +141,9 @@ bitcoin-cli -datadir=./1/ getaddressinfo
| \ jq '.hdkeypath | sub("^m/"; "") | sub("/[^/]+$"; "")' ``` -In the above command, we use the `jq` utility to extract only the relevant `hdkeypath` -information, which in this example is `84h/1h/0h/0/0` (the initial `m/` can be ignored). +In the above command, we use the `jq` utility to extract only the relevant +`hdkeypath` information, which in this example is `84h/1h/0h/0/0` +(the initial `m/` can be ignored). Make note of the `hdkeypath` information - you'll need it later when deriving the covenant private key from the master key for verification purposes. @@ -150,9 +151,9 @@ deriving the covenant private key from the master key for verification purposes. #### Step 3: Retrieve the master private key In this step, -we are going to retrieve the **base58-encoded master private key** from the Bitcoin wallet. -This key will be used to derive the covenant private key, which can then be -imported directly into the Cosmos keyring. +we are going to retrieve the **base58-encoded master private key** from the +Bitcoin wallet. This key will be used to derive the covenant private key, +which can then be imported directly into the Cosmos keyring. The command below will list all descriptors in the wallet with private keys. This will provide you with the descriptor needed to derive the private key. @@ -219,7 +220,7 @@ the child key (second parameter) To verify, you can execute the following: ```shell -bitdoind getaddressinfo
| jq .publickey +bitcoin-cli getaddressinfo
| jq .publickey ``` If the public key matches the `derived_public_key`s output from the