QUANTA Documentation
  • Documentation
  • Introduction
    • Fair Trading Protocol
  • Getting Started
    • Building Source Code
    • Running Quanta Node
    • Running Quanta Wallet
    • Running on Docker
  • Testnet
    • Create account
    • Transfer ETH/ERC-20
    • Become a Block Producer
  • Guides
    • Websockets
    • Trading Bot
  • SDK
    • Javascript
  • API
    • Markets
  • Advanced
    • Issuing your own QUANTA Token
    • Deploy your own exchange on AWS
Powered by GitBook
On this page
  • Creating a witness proposal
  • Voting for Witness
  • Configure Node for Block Production

Was this helpful?

  1. Testnet

Become a Block Producer

PreviousTransfer ETH/ERC-20NextWebsockets

Last updated 6 years ago

Was this helpful?

Participate in consensus and strength our network by operating server to produce nodes.

Basic requirements:

  • Access to data-center fast internet (AWS, Azure, etc)

  • instance or better (3.75GB RAM, and 1 vCPU)

  • 100 GB of storage or greater

  • Provide at least 98%+ uptime

Data-center is not required as long as you have access to high speed internet.

The process

  1. Create a ticket Quanta-core with following .

  2. Announce it our Quanta Telegram community

  3. Reach out to us on Telegram

  4. Once you have enough votes, you will voted in as an active block producer.

Creating a witness proposal

In order to become an active block producer, you must create a witness proposal on the blockchain.

First, upgrade account to be create yourself a witness proposal:

upgrade_account <accountname> true
>>> create_witness <accountname> "https://github.com/quantadex/quanta-core/issues/<your issue>" true
{
  "ref_block_num": 139,
  "ref_block_prefix": 3692461913,
  "relative_expiration": 3,
  "operations": [[
  21,{
    "fee": {
      "amount": 0,
      "asset_id": "1.3.0"
    },
    "witness_account": "1.2.16",
    "url": "url-to-proposal",
    "block_signing_key": "<PUBLIC KEY>",
    "initial_secret": "00000000000000000000000000000000000000000000000000000000"
  }
]
  ],
  "signatures": [
  "1f2ad5597af2ac4bf7a50f1eef2db49c9c0f7616718776624c2c09a2dd72a0c53a26e8c2bc928f783624c4632924330fc03f08345c8f40b9790efa2e4157184a37"
  ]
}

Voting for Witness

vote_for_witness <voting_account> <witness_account> true true

Vote will take effect after the maintenance window:

unlocked >>> get_dynamic_global_properties
get_dynamic_global_properties
{
  "id": "2.1.0",
  "head_block_number": 2283648,
  "head_block_id": "0022d8802b618cf8447ed6f53c78cac25b053341",
  "time": "2019-01-14T22:41:03",  # <-- current time
  "current_witness": "1.6.4",
  "next_maintenance_time": "2019-01-15T00:00:00", # <--- maintenance window
  "last_budget_time": "2019-01-14T00:00:01",
  "witness_budget": 0,
  "accounts_registered_this_interval": 11,
  "recently_missed_count": 3,
  "current_aslot": 2500579,
  "recent_slots_filled": "334793941648020101144837524519280048061",
  "dynamic_flags": 0,
  "last_irreversible_block_num": 2283642
}

Configure Node for Block Production

Configure your config.ini file to specify the node which witness you're producing as, and the block signing key.

witness-id = "1.6.10"
private-key = ["QAH7vQ7GmRSJfDHxKdBmWMeDMFENpmHWKn99J457BNApiX1T5TNM8","5JGi7DM7J8fSTizZ4D9roNgd8dUc5pirUe9taxYCUUsnvQ4zCaQ"]
# Run the node
quanta-node --data-dir data/testnet

m3.medium
Issues
template