Hardware Provider Onboarding
Learn how to register as a hardware provider for a Layer 1 blockchain.
Last updated
Learn how to register as a hardware provider for a Layer 1 blockchain.
Last updated
This guide is the first step in onboarding as a hardware provider for a Layer 1 blockchain network. It walks you through setting up your environment, generating node keys, securely backing them up, and registering with the Hypha system.
The next guide in this series will walk you through the process of running a Layer 1 node.
Before proceeding, ensure the following dependencies are installed on your system:
1.23 or higher: Required to build Tartarus.
Follow to install the correct version.
We do not recommend installing via Ubuntu Apt repositories. These typically provide outdated versions that are not supported.
Important Compatibility Notes:
Go 1.22 and below are untested and may not work as expected.
C Compiler ( or ): Necessary for building dependencies.
: A lightweight JSON processor used by the scripts.
Follow these steps to install it:
After successful compilation, you should see the tartarus
executable in your current directory.
Before uploading node keys, you must first create a Hypha account. Run the signup script provided in the Tartarus repository:
The script will prompt you for:
Your email address
A password (make sure to use a unique password not used elsewhere)
Password confirmation
After signing up, you'll receive a verification email. You must verify your email address before proceeding.
Before you can generate and upload keys, you need a Hardware Provider ID. This ID will be assigned to you by the system administrators. Please contact the administrators to get your Hardware Provider ID.
Node keys are cryptographic credentials used to operate L1 nodes. These keys enable secure communication, authentication, and participation in consensus mechanisms. Each node requires a unique set of keys, which are stored in a nodes.json
file.
Tartarus supports multiple output formats. You can choose between JSON, CSV, or an AvalancheGo-compatible directory.
To generate these keys, follow the steps below:
Run the following command using the Tartarus executable:
Be sure to replace <number_of_nodes>
with how many nodes you want to generate, and <your_prefix>
with your assigned prefix.
Replace <number_of_nodes>
with the number of nodes allocated to you. (e.g., 10
)
Replace <your_prefix>
with your assigned prefix. This prefix ensures uniqueness across the network. (e.g., GGP
)
The -o
flag specifies the output file (nodes.json
) where the generated keys will be stored.
Note: The Hypha team will provide your assigned prefix and the number of nodes (allocated number).
Note: Key generation may take some time depending on the number of keys. With prefixes, it typically takes around 1 second per key.
Ensure your output file (CSV or JSON file) or AvalancheGo-compatible directory is created and contains the expected number of keys.
CSV file (default):
Contains node ID, certificate, key, and BLS information
Suitable for spreadsheet analysis
JSON file:
Contains the same information in JSON format
Required for uploading to the system
AvalancheGo-compatible directory:
Creates a directory with staker.crt
, staker.key
, and signer.key
files
Ready to use with AvalancheGo nodes
Do not use the same keys on both Avalanche Mainnet and Fuji testnet. Always generate new keys for each network to ensure security and isolation.
Once you have generated your node keys, you can upload them to the system:
Be sure to replace YOUR_HARDWARE_PROVIDER_ID
with your hardware provider ID.
Required flags for upload:
-d, --data-file
: Path to your JSON file containing node data
--hp-id
: Your Hardware Provider ID (assigned by administrators)
Optional flags:
-e, --email
: Your email address (will prompt if not provided)
--password
: Your password (will prompt securely if not provided)
--network
: Network for the nodes (default: "fuji")
--include-secrets
: Include staker cert, staker key, and BLS private key in the upload
--batch-size
: Number of nodes to upload in each batch (default: 25)
Keep your generated keys secure and never share them
Use a unique password for your account
The BLS private key is particularly sensitive and should be protected
Consider using the --include-secrets
flag only when necessary
By following this guide, node providers can use Tartarus to generate the necessary NodeID
s and BLS keys, and upload them to the appropriate backend system for their Layer 1 blockchain (such as the Hypha Provider Manager).
Always treat your private keys with extreme care, and ensure they are securely backed up.
For instructions on running an L1 node, see the Running an L1 Node for L1Marketplace guide.
is a NodeID and key generation tool that simplifies the creation of node keys for Avalanche L1s. Tartarus generates node IDs with customizable prefixes and saves them in a JSON or CSV file compatible with AvalancheGo.
Clone the Tartarus repository from and change the branch to update-db
If you encounter any issues, refer to the provided scripts or consult the documentation. You can also reach out to Hypha support via or the Live Support Chat available on the .