diff --git a/docs/bootstrapper.md b/docs/bootstrapper.md index ce637876..43ce1cdd 100644 --- a/docs/bootstrapper.md +++ b/docs/bootstrapper.md @@ -13,7 +13,7 @@ Make sure to have the Blobstream binary installed. Check [the Blobstream binary Before starting the bootstrapper, we will need to init the store: ```ssh -qgb bootstrapper init +blobstream bootstrapper init ``` By default, the store will be created un `~/.bootstrapper`. However, if you want to specify a custom location, you can use the `--home` flag. Or, you can use the following environment variable: @@ -29,7 +29,7 @@ The P2P private key is optional, and a new one will be generated automatically o The `p2p` sub-command will help you set up this key if you want to use a specific one: ```ssh -qgb bootstrapper p2p --help +blobstream bootstrapper p2p --help ``` ### Start the bootstrapper @@ -37,12 +37,12 @@ qgb bootstrapper p2p --help Now that we have the store initialized, we can start the bootstrapper: ```shell -qgb bootstrapper +blobstream bootstrapper Blobstream P2P network bootstrapper command Usage: - qgb bootstrapper [command] + blobstream bootstrapper [command] Aliases: bootstrapper, bs @@ -50,7 +50,7 @@ Aliases: Flags: -h, --help help for bootstrapper -Use "qgb bootstrapper [command] --help" for more information about a command. +Use "blobstream bootstrapper [command] --help" for more information about a command. ``` ### Open the P2P port diff --git a/docs/deploy.md b/docs/deploy.md index a9444ddc..5c007633 100644 --- a/docs/deploy.md +++ b/docs/deploy.md @@ -10,13 +10,13 @@ description: Learn how to deploy the Blobstream smart contract. The `deploy` is a helper command that allows deploying the Blobstream smart contract to a new EVM chain: ```ssh -qgb deploy --help +blobstream deploy --help Deploys the Blobstream contract and initializes it using the provided Celestia chain Usage: - qgb deploy [flags] - qgb deploy [command] + blobstream deploy [flags] + blobstream deploy [command] Available Commands: keys Blobstream keys manager @@ -33,13 +33,13 @@ Make sure to have the Blobstream binary installed. Check [the Blobstream binary In order to deploy a Blobstream smart contract, you will need a funded EVM address and its private key. The `keys` command will help you set up this key: ```ssh -qgb deploy keys --help +blobstream deploy keys --help ``` To import your EVM private key, there is the `import` subcommand to assist you with that: ```ssh -qgb deploy keys evm import --help +blobstream deploy keys evm import --help ``` This subcommand allows you to either import a raw ECDSA private key provided as plaintext, or import it from a file. The files are JSON keystore files encrypted using a passphrase like in [this example](https://geth.ethereum.org/docs/developers/dapp-developer/native-accounts). @@ -47,7 +47,7 @@ This subcommand allows you to either import a raw ECDSA private key provided as After adding the key, you can check that it's added via running: ```ssh -qgb deploy keys evm list +blobstream deploy keys evm list ``` For more information about the `keys` command, check [the `keys` documentation](https://docs.celestia.org/nodes/blobstream-keys). @@ -57,7 +57,7 @@ For more information about the `keys` command, check [the `keys` documentation]( Now, we can deploy the Blobstream contract to a new EVM chain: ```ssh -qgb deploy \ +blobstream deploy \ --evm.chain-id 4 \ --evm.contract-address 0x27a1F8CE94187E4b043f4D57548EF2348Ed556c7 \ --core.grpc.host localhost \ diff --git a/docs/keys.md b/docs/keys.md index 296e868d..720d7c2d 100644 --- a/docs/keys.md +++ b/docs/keys.md @@ -11,7 +11,7 @@ The Blobstream `keys` command allows managing EVM private keys and P2P identitie ## Orchestrator command -The `qgb orchestrator keys` command manages keys for the orchestrator. By default, it uses the orchestrator default home directory to store the keys: `~/.orchestrator/keystore`. However, the default home can be changed either by specifying a different directory using the `--home` flag or setting the following environment variable: +The `blobstream orchestrator keys` command manages keys for the orchestrator. By default, it uses the orchestrator default home directory to store the keys: `~/.orchestrator/keystore`. However, the default home can be changed either by specifying a different directory using the `--home` flag or setting the following environment variable: | Variable | Explanation | Default value | Required | | ------------------- | ----------------------------------- | ----------------- | -------- | @@ -19,7 +19,7 @@ The `qgb orchestrator keys` command manages keys for the orchestrator. By defaul ## Relayer command -The `qgb relayer keys` command manages keys for the relayer. By default, it uses the relayer default home directory to store the keys: `~/.relayer/keystore`. However, the default home can be changed either by specifying a different directory using the `--home` flag or setting the following environment variable: +The `blobstream relayer keys` command manages keys for the relayer. By default, it uses the relayer default home directory to store the keys: `~/.relayer/keystore`. However, the default home can be changed either by specifying a different directory using the `--home` flag or setting the following environment variable: | Variable | Explanation | Default value | Required | | -------------- | ------------------------------ | ------------- | -------- | @@ -27,7 +27,7 @@ The `qgb relayer keys` command manages keys for the relayer. By default, it uses ## Deploy command -The `qgb deploy keys` command manages keys for the deployer. By default, it uses the deployer default home directory to store the keys: `~/.deployer/keystore`. However, the default home can be changed either by specifying a different directory using the `--home` flag or setting the following environment variable: +The `blobstream deploy keys` command manages keys for the deployer. By default, it uses the deployer default home directory to store the keys: `~/.deployer/keystore`. However, the default home can be changed either by specifying a different directory using the `--home` flag or setting the following environment variable: | Variable | Explanation | Default value | Required | | --------------- | ------------------------------------- | ------------- | -------- | @@ -48,12 +48,12 @@ As specified above, aside from the difference in the default home directory, the The examples will use the orchestrator command to access the keys. However, the same behaviour applies to the other commands as well. ```ssh -qgb orchestrator keys --help +blobstream orchestrator keys --help Blobstream keys manager Usage: - qgb orchestrator keys [command] + blobstream orchestrator keys [command] Available Commands: evm Blobstream EVM keys manager @@ -62,7 +62,7 @@ Available Commands: Flags: -h, --help help for keys -Use "qgb orchestrator keys [command] --help" for more information about a command. +Use "blobstream orchestrator keys [command] --help" for more information about a command. ``` ### EVM keystore @@ -72,12 +72,12 @@ The first subcommand of the `keys` command is `evm`. This latter allows managing The EVM keys are `ECDSA` keys using the `secp256k1` curve. The implementation uses `geth` file system keystore [implementation](https://geth.ethereum.org/docs/developers/dapp-developer/native-accounts). Thus, keys can be used interchangeably with any compatible software. ```ssh -qgb orchestrator keys evm --help +blobstream orchestrator keys evm --help Blobstream EVM keys manager Usage: - qgb orchestrator keys evm [command] + blobstream orchestrator keys evm [command] Available Commands: add create a new EVM address @@ -89,7 +89,7 @@ Available Commands: Flags: -h, --help help for evm -Use "qgb orchestrator keys evm [command] --help" for more information about a command. +Use "blobstream orchestrator keys evm [command] --help" for more information about a command. ``` The store also uses the `accounts.StandardScryptN` and `accounts.StandardScryptP` for the `Scrypt` password-based key derivation algorithm to improve its resistance to parallel hardware attacks: @@ -103,12 +103,12 @@ evmKs = keystore.NewKeyStore(evmKeyStorePath(path), keystore.StandardScryptN, ke The `add` subcommand allows creating a new EVM private key and storing it in the keystore: ```ssh -qgb orchestrator keys evm add --help +blobstream orchestrator keys evm add --help create a new EVM address Usage: - qgb orchestrator keys evm add [flags] + blobstream orchestrator keys evm add [flags] ``` The passphrase of the key encryption can be passed as a flag. But it is advised not to pass it as plain text and instead enter it when prompted interactively. @@ -116,7 +116,7 @@ The passphrase of the key encryption can be passed as a flag. But it is advised After creating a new key, you will see its corresponding address printed: ```ssh -qgb orchestrator keys evm add +blobstream orchestrator keys evm add I[2023-04-13|14:16:11.387] successfully opened store path=/home/midnight/.orchestrator I[2023-04-13|14:16:11.387] please provide a passphrase for your account @@ -129,12 +129,12 @@ I[2023-04-13|14:16:30.534] successfully closed store path=/ho The `delete` subcommand allows deleting an EVM private key from store via providing its corresponding address: ```ssh -qgb orchestrator keys evm delete --help +blobstream orchestrator keys evm delete --help delete an EVM addresses from the key store Usage: - qgb orchestrator keys evm delete [flags] + blobstream orchestrator keys evm delete [flags] ``` The provided address should be a `0x` prefixed EVM address. @@ -144,7 +144,7 @@ After running the command, you will be prompted to enter the passphrase for the Then, you will be prompted to confirm that you want to delete that private key. Make sure to verify if you're deleting the right one because once deleted, it can no longer be recovered! ```ssh -qgb orchestrator keys evm delete 0x27a1F8CE94187E4b043f4D57548EF2348Ed556c7 +blobstream orchestrator keys evm delete 0x27a1F8CE94187E4b043f4D57548EF2348Ed556c7 I[2023-04-13|15:01:41.308] successfully opened store path=/home/midnight/.orchestrator I[2023-04-13|15:01:41.309] deleting account address=0x27a1F8CE94187E4b043f4D57548EF2348Ed556c7 @@ -160,7 +160,7 @@ I[2023-04-13|15:01:45.534] successfully closed store path=/ho The `list` subcommand allows listing the existing keys in the keystore: ```ssh -qgb orchestrator keys evm list +blobstream orchestrator keys evm list I[2023-04-13|16:08:45.084] successfully opened store path=/home/midnight/.orchestrator I[2023-04-13|16:08:45.084] listing accounts available in store @@ -175,18 +175,18 @@ You could specify a different home using the `--home` flag to list the keys in a The `update` subcommand allows changing the EVM private key passphrase to a new one. It takes as argument the `0x` prefixed EVM address corresponding to the private key we want to edit. ```ssh -qgb orchestrator evm update --help +blobstream orchestrator evm update --help update an EVM account passphrase Usage: - qgb orchestrator keys evm update [flags] + blobstream orchestrator keys evm update [flags] ``` Example: ```ssh -qgb orchestrator evm update 0x7Dd8F9CAfe6D25165249A454F2d0b72FD149Bbba +blobstream orchestrator evm update 0x7Dd8F9CAfe6D25165249A454F2d0b72FD149Bbba I[2023-04-13|16:21:17.139] successfully opened store path=/home/midnight/.orchestrator I[2023-04-13|16:21:17.140] updating account address=0x7Dd8F9CAfe6D25165249A454F2d0b72FD149Bbba @@ -205,12 +205,12 @@ The `--home` can be specified if the store is not in the default directory. The `import` subcommand allows importing existing private keys into the keystore. It has two subcommands: `ecdsa` and `file`. The first allows importing a private key in plaintext, while the other allows importing a private key from a JSON file secured with a passphrase. ```ssh -qgb orchestrator keys evm import --help +blobstream orchestrator keys evm import --help import evm keys to the keystore Usage: - qgb orchestrator keys evm import [command] + blobstream orchestrator keys evm import [command] Available Commands: ecdsa import an EVM address from an ECDSA private key @@ -219,7 +219,7 @@ Available Commands: Flags: -h, --help help for import -Use "qgb orchestrator keys evm import [command] --help" for more information about a command. +Use "blobstream orchestrator keys evm import [command] --help" for more information about a command. ``` #### EVM: Import ECDSA @@ -229,7 +229,7 @@ For the first one, it takes as argument the private key in plaintext. Then, it p Example: ```ssh -qgb orchestrator keys evm import ecdsa da6ed55cb2894ac2c9c10209c09de8e8b9d109b910338d5bf3d747a7e1fc9eb7 +blobstream orchestrator keys evm import ecdsa da6ed55cb2894ac2c9c10209c09de8e8b9d109b910338d5bf3d747a7e1fc9eb7 I[2023-04-13|17:00:48.617] successfully opened store path=/home/midnight/.orchestrator I[2023-04-13|17:00:48.617] importing account @@ -243,18 +243,18 @@ I[2023-04-13|17:00:51.990] successfully closed store path=/ho For the second, it takes a JSON key file, as defined in [@ethereum/eth-keyfile](https://github.com/ethereum/eth-keyfile), and imports it to your keystore, so it can be used for signatures. ```ssh -qgb orchestrator keys evm import file --help +blobstream orchestrator keys evm import file --help import an EVM address from a file Usage: - qgb orchestrator keys evm import file [flags] + blobstream orchestrator keys evm import file [flags] ``` For example, if we have a file in the current directory containing a private key, we could run the following: ```ssh -qgb orchestrator keys evm import file UTC--2023-04-13T15-00-50.302148204Z--966e6f22781ef6a6a82bbb4db3df8e225dfd9488 +blobstream orchestrator keys evm import file UTC--2023-04-13T15-00-50.302148204Z--966e6f22781ef6a6a82bbb4db3df8e225dfd9488 I[2023-04-13|17:31:53.307] successfully opened store path=/home/midnight/.orchestrator I[2023-04-13|17:31:53.307] importing account @@ -273,12 +273,12 @@ Similar to the above EVM keystore, the P2P store has similar subcommands for han To access the P2P keystore, run the following: ```ssh -qgb orchestrator keys p2p +blobstream orchestrator keys p2p Blobstream p2p keys manager Usage: - qgb orchestrator keys p2p [command] + blobstream orchestrator keys p2p [command] Available Commands: add create a new Ed25519 P2P address @@ -289,7 +289,7 @@ Available Commands: Flags: -h, --help help for p2p -Use "qgb orchestrator keys p2p [command] --help" for more information about a command. +Use "blobstream orchestrator keys p2p [command] --help" for more information about a command. ``` The `orchestrator` could be replaced by `relayer` and the only difference would be the default home directory. Aside from that, all the methods defined for the orchestrator will also work with the relayer. @@ -299,18 +299,18 @@ The `orchestrator` could be replaced by `relayer` and the only difference would The `add` subcommand creates a new p2p key to the p2p store: ```ssh -qgb orchestrator keys p2p add --help +blobstream orchestrator keys p2p add --help create a new Ed25519 P2P address Usage: - qgb orchestrator keys p2p add [flags] + blobstream orchestrator keys p2p add [flags] ``` It takes as argument an optional `` which would be the name that we can use to reference that private key. If not specified, an incremental nickname will be assigned. ```ssh -qgb orchestrator keys p2p add +blobstream orchestrator keys p2p add I[2023-04-13|17:38:17.289] successfully opened store path=/home/midnight/.orchestrator I[2023-04-13|17:38:17.290] generating a new Ed25519 private key nickname=1 @@ -327,12 +327,12 @@ The nickname will be needed in case the orchestrator needs to use a specific pri The `delete` subcommand will delete a P2P private key from store referenced by its nickname: ```ssh -qgb orchestrator keys p2p delete --help +blobstream orchestrator keys p2p delete --help delete an Ed25519 P2P private key from store Usage: - qgb orchestrator keys p2p delete [flags] + blobstream orchestrator keys p2p delete [flags] ``` #### P2P: Import subcommand @@ -340,12 +340,12 @@ Usage: The `import` subcommand will import an existing Ed25519 private key to the store. It takes as argument the nickname that we wish to save the private key under, and the actual private key in hex format without `0x`: ```ssh -qgb orchestrator keys p2p import --help +blobstream orchestrator keys p2p import --help import an existing p2p private key Usage: - qgb orchestrator keys p2p import [flags] + blobstream orchestrator keys p2p import [flags] ``` #### P2P: List subcommand @@ -353,10 +353,10 @@ Usage: The `list` subcommand lists the existing P2P private keys in the store: ```ssh -qgb orchestrator keys p2p list --help +blobstream orchestrator keys p2p list --help list existing p2p addresses Usage: - qgb orchestrator keys p2p list [flags] + blobstream orchestrator keys p2p list [flags] ``` diff --git a/docs/orchestrator.md b/docs/orchestrator.md index 870a6289..f623ee96 100644 --- a/docs/orchestrator.md +++ b/docs/orchestrator.md @@ -55,7 +55,7 @@ Make sure to have the Blobstream binary installed. Check [the Blobstream binary Before starting the orchestrator, we will need to init the store: ```ssh -qgb orchestrator init +blobstream orchestrator init ``` By default, the store will be created under `~/.orchestrator`. However, if you want to specify a custom location, you can use the `--home` flag. Or, you can use the following environment variable: @@ -78,7 +78,7 @@ The P2P private key is optional, and a new one will be generated automatically o The `keys` command will help you set up these keys: ```ssh -qgb orchestrator keys --help +blobstream orchestrator keys --help ``` To add an EVM private key, check the next section. @@ -92,7 +92,7 @@ To register an EVM address for your validator, check the section [Register EVM A To import your EVM private key, there is the `import` subcommand to assist you with that: ```ssh -qgb orchestrator keys evm import --help +blobstream orchestrator keys evm import --help ``` This subcommand allows you to either import a raw ECDSA private key provided as plaintext, or import it from a file. The files are JSON keystore files encrypted using a passphrase like in [this example](https://geth.ethereum.org/docs/developers/dapp-developer/native-accounts). @@ -100,7 +100,7 @@ This subcommand allows you to either import a raw ECDSA private key provided as After adding the key, you can check that it's added via running: ```ssh -qgb orchestrator keys evm list +blobstream orchestrator keys evm list ``` For more information about the `keys` command, check [the `keys` documentation](https://docs.celestia.org/nodes/blobstream-keys). @@ -112,18 +112,18 @@ Now that we have the store initialized, we can start the orchestrator. Make sure The orchestrator accepts the following flags: ```ssh -qgb orchestrator start --help +blobstream orchestrator start --help Starts the Blobstream orchestrator to sign attestations Usage: - qgb orchestrator start [flags] + blobstream orchestrator start [flags] ``` To start the orchestrator in the default home directory, run the following: ```ssh -qgb orchestrator start \ +blobstream orchestrator start \ --core.grpc.host localhost \ --core.grpc.port 9090 \ --core.rpc.host localhost \ @@ -160,13 +160,13 @@ This assumes that you're using the default home directory, the default keystore To check which EVM address is registered for your `valoper` address, run the following: ```ssh -celestia-appd query qgb evm +celestia-appd query blobstream evm ``` Then, to proceed with the edit, run the following command: ```shell -celestia-appd tx qgb register \ +celestia-appd tx blobstream register \ \ \ --fees 30000utia \ @@ -244,11 +244,11 @@ logs: - events: - attributes: - key: action - value: /celestia.qgb.v1.MsgRegisterEVMAddress + value: /celestia.blobstream.v1.MsgRegisterEVMAddress type: message log: "" msg_index: 0 -raw_log: '[{"msg_index":0,"events":[{"type":"message","attributes":[{"key":"action","value":"/celestia.qgb.v1.MsgRegisterEVMAddress"}]}]}]' +raw_log: '[{"msg_index":0,"events":[{"type":"message","attributes":[{"key":"action","value":"/celestia.blobstream.v1.MsgRegisterEVMAddress"}]}]}]' timestamp: "" tx: null txhash: 4199EA959A2CFEFCD4726D8D8F7B536458A46A27318D3483A4E9614F560606BC @@ -257,7 +257,7 @@ txhash: 4199EA959A2CFEFCD4726D8D8F7B536458A46A27318D3483A4E9614F560606BC Now, you can verify that the EVM address has been updated using the following command: ```ssh -celestia-appd query qgb evm +celestia-appd query blobstream evm ``` Now, you can restart the orchestrator, and it should start signing. @@ -278,7 +278,7 @@ After=network.target [Service] Type=simple -ExecStart= orchestrator start --evm.account --evm.passphrase --core.grpc.host --core.grpc.port --core.rpc.host --core.rpc.port --p2p.bootstrappers +ExecStart= orchestrator start --evm.account --evm.passphrase --core.grpc.host --core.grpc.port --core.rpc.host --core.rpc.port --p2p.bootstrappers LimitNOFILE=infinity LimitCORE=infinity Restart=always diff --git a/docs/relayer.md b/docs/relayer.md index 89543744..1afbc822 100644 --- a/docs/relayer.md +++ b/docs/relayer.md @@ -11,7 +11,7 @@ The role of the relayer is to gather attestations' signatures from the orchestra Also, while every validator in the Celestia validator set needs to run an orchestrator, we only need one entity to run the relayer, and it can be anyone. Thus, if you're a validator, most likely you want to read [the orchestrator documentation](https://docs.celestia.org/nodes/blobstream-orchestrator/). -Every relayer needs to target a Blobstream smart contract. This latter can be deployed, if not already, using the `qgb deploy` command. More details in the [Deploy the Blobstream contract guide](https://docs.celestia.org/nodes/blobstream-deploy/). +Every relayer needs to target a Blobstream smart contract. This latter can be deployed, if not already, using the `blobstream deploy` command. More details in the [Deploy the Blobstream contract guide](https://docs.celestia.org/nodes/blobstream-deploy/). ## How it works @@ -45,7 +45,7 @@ Make sure to have the Blobstream binary installed. Check out the [Install the Bl Before starting the relayer, we will need to init the store: ```ssh -qgb relayer init +blobstream relayer init ``` By default, the store will be created un `~/.relayer`. However, if you want to specify a custom location, you can use the `--home` flag. Or, you can use the following environment variable: @@ -68,7 +68,7 @@ The P2P private key is optional, and a new one will be generated automatically o The `keys` command will help you set up these keys: ```ssh -qgb relayer keys --help +blobstream relayer keys --help ``` To add an EVM private key, check the next section. @@ -80,7 +80,7 @@ Because EVM keys are important, we provide a keystore that will help manage them To import your EVM private key, there is the `import` subcommand to assist you with that: ```ssh -qgb relayer keys evm import --help +blobstream relayer keys evm import --help ``` This subcommand allows you to either import a raw ECDSA private key provided as plaintext, or import it from a file. The files are JSON keystore files encrypted using a passphrase like [in this example](https://geth.ethereum.org/docs/developers/dapp-developer/native-accounts). @@ -88,7 +88,7 @@ This subcommand allows you to either import a raw ECDSA private key provided as After adding the key, you can check that it's added via running: ```ssh -qgb relayer keys evm list +blobstream relayer keys evm list ``` For more information about the `keys` command, check [the `keys` documentation](https://docs.celestia.org/nodes/blobstream-keys). @@ -100,18 +100,18 @@ Now that we have the store initialized, and we have a target Blobstream smart co The relayer accepts the following flags: ```ssh -qgb relayer start --help +blobstream relayer start --help Runs the Blobstream relayer to submit attestations to the target EVM chain Usage: - qgb relayer start [flags] + blobstream relayer start [flags] ``` To start the relayer using the default home directory, run the following: ```ssh -/bin/qgb relayer start \ +/bin/blobstream relayer start \ --evm.contract-address=0x27a1F8CE94187E4b043f4D57548EF2348Ed556c7 \ --core.rpc.host=localhost \ --core.rpc.port=26657 \