From 051b030a8c454be556420d168412050547a2a76c Mon Sep 17 00:00:00 2001 From: dolled-possum <35582014+dolled-possum@users.noreply.github.com> Date: Wed, 27 Aug 2025 11:53:06 -0400 Subject: [PATCH 1/2] Add --rpc-config format to login.md --- src/getting_started/login.md | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/src/getting_started/login.md b/src/getting_started/login.md index 11e46b5..54eed2e 100644 --- a/src/getting_started/login.md +++ b/src/getting_started/login.md @@ -58,11 +58,32 @@ Options: ``` A home directory must be supplied — where the node will store its files. -The `--rpc` flag is an optional `wss://` WebSocket link to an Ethereum RPC, allowing Hyperdrive to send and receive Ethereum transactions — used in the [identity system](../getting_started/hypermap.md#hns-hyperware-name-system) as mentioned [above](#creating-an-alchemy-account). +The `--rpc` flag is an optional `wss://` WebSocket link to an Ethereum RPC, allowing Hyperdrive to send and receive Ethereum transactions — used in the [identity system](../getting_started/hypermap.md#hns-hyperware-name-system) as mentioned [below](#creating-an-alchemy-account). If this is not supplied, the node will use a set of default RPC providers served by other nodes on the network. +Alternatively, use the `--rpc-config` flag to specify more than one `wss://` provider and/or to include authentication credentials -- see the description below. If the `--port` flag is supplied, Hyperdrive will attempt to bind that port for serving HTTP and will exit if that port is already taken. If no `--port` flag is supplied, Hyperdrive will bind to `8080` if it is available, or the first port above `8080` if not. +
OPTIONAL: The --rpc-config File Format + +If you wish to designate more than one Ethereum RPC providers, or if your provider requires authentication headers, you can replace the `--rpc ` flag with `--rpc-config ` instead, where `` is a file structured as follows: +``` +[ + { + "url": "wss://mytoppriority.eth-provider.net", + "auth": { + "Bearer": "7f94d4799c13" + } + }, + { + "url": "wss://wss://mysecondpriority.unauthenticated-eth.org" + } +] +``` +Your node will attempt to use the Ethereum RPC providers in the order you have listed them. Possible "auth" types are Basic, Bearer, and Raw. +Additionally, you may view, add, and remove RPC providers from a running node at the terminal prompt using the `get-providers`, `add-rpcurl-provider`, and `remove-provider` commands. + +
OPTIONAL: Acquiring an RPC API Key ### Acquiring an RPC API Key From 60c4294ca4628f84e8314fb2ba0a35e601bcc2bf Mon Sep 17 00:00:00 2001 From: Johnathan Reale Date: Wed, 27 Aug 2025 14:30:10 -0400 Subject: [PATCH 2/2] additional info about the possible auth choices --- src/getting_started/login.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/getting_started/login.md b/src/getting_started/login.md index 54eed2e..d1629d6 100644 --- a/src/getting_started/login.md +++ b/src/getting_started/login.md @@ -81,6 +81,10 @@ If you wish to designate more than one Ethereum RPC providers, or if your provid ] ``` Your node will attempt to use the Ethereum RPC providers in the order you have listed them. Possible "auth" types are Basic, Bearer, and Raw. +* `Basic` will base64 encode the string value in the form of `user:password` and generate a header of `Authorization: Basic ` +* `Bearer` will use the value as a bearer token and generate a header of `Authorization: Bearer ` +* `Raw` will use the value directly and generate a header of `Authorization: ` + Additionally, you may view, add, and remove RPC providers from a running node at the terminal prompt using the `get-providers`, `add-rpcurl-provider`, and `remove-provider` commands.