To operate effectively, your DA signer needs to run a DA node to verify encoded blob data, sign it, and store it for future farming and rewards. Currently, to run a DA Node on Testnet, users must stake 10 OG tokens. These can be obtained through our or via rewards from running Storage Nodes or Validator Nodes. For official deployed contract addresses, visit .
Generate BLS private key, if you don't have one. It will register the signer information in DA contract when you first run DA node
You must back up your BLS key.
cargo run --bin key-gen
Edit the configuration file (replace your <public_ip/dns>, signer_bls_private_key, signer_eth_private_key, miner_eth_private_key)
nano $HOME/0g-da-node/config.toml
log_level = "info"
data_path = "./db/"
# path to downloaded params folder
encoder_params_dir = "params/"
# grpc server listen address
grpc_listen_address = "0.0.0.0:34000"
# chain eth rpc endpoint
eth_rpc_endpoint = "https://evmrpc-testnet.0g.ai"
# public grpc service socket address to register in DA contract
# ip:34000 (keep same port as the grpc listen address)
# or if you have dns, fill your dns
socket_address = "<public_ip/dns>:34000"
# data availability contract to interact with
da_entrance_address = "0xE75A073dA5bb7b0eC622170Fd268f35E675a957B"
# deployed block number of da entrance contract
start_block_number = 326165
# signer BLS private key
signer_bls_private_key = ""
# signer eth account private key
signer_eth_private_key = ""
# miner eth account private key, (could be the same as 'signer_eth_private_key', but not recommended)
miner_eth_private_key = ""
# whether to enable data availability sampling
enable_das = "true"