Skip to content

Chain administrators guide

Thomas König edited this page Jun 20, 2017 · 3 revisions

This guide is for the FairCoin chain administrators. It contains all required information to perform their tasks. Every task belongs to a decision made in an open assembly. Chain administrators are trusted representatives and execute these decisions. They must not act on their own.

The procedure of an administration task is to receive the task, review it and make sure to fully understand its meaning and impact, sign the received information using the FairCoin Core wallet and Fasito, and to finally send the signature to the network. Admins coordinate their work on a pre-defined communication channel, currently: the FairCoin Chain Administrators telegram group

System requirements

Chain admins need the following hard- and software to execute their tasks.


  • A computer with one free USB 2.0 port
  • A Fasito (FairCoin signature token)
  • A suitable USB cable


  • An up-to-date Linux operating system.
  • The latest FairCoin Core wallet software available here

System preparation

  • Add the user that runs the wallet to the system group dialout
    Like this: sudo usermod -a -G dialout UserName (replace UserName with your real user name)

Task list

These are all the possible tasks chain admins can perform:

  • change dynamic chain parameters, like block spacing, transaction fee, etc...
  • add a CVN
  • remove a CVN
  • add a chain administrator
  • remove a chain administrator
  • add coin supply

Procedure of an administration task

  1. Connect the Fasito to your system
  2. Start your wallet and make sure it is fully synchronised to the network
  3. Admins receive the task from the Telegram channel. They agree on the piece of data that needs to be signed.
  4. Open the Debug console
  5. Login to Fasito by issuing the following command:
    fasitologin fasito 123456 but replace 123456 with you own PIN code.
  6. After the next block has been created on the network send the admin nonce to the network by issuing:
  7. Depending on the task enter the specific command, like:
    addcvn 0x12345678 042055555555555 This command will return a hash.
  8. Now sign and send this hash, like this:
    fasitosign a907954dc9f48a09757e2dcf62b7af1bd31097635d45596434b6d700e4756eb4
  9. One admin must now send the multi-signed request to the CVNs by issuing the command from step 7 again
  10. Finally log out from Fasito: fasitologout
  11. Fasito can now safely be removed from the port

Examples of task commands

Change dynamic chain parameters

This task needs a description field which has the following form:

serial number URI short description
#00004 Setting the transaction fee...

setchainparameters "{\"blockSpacing\":180,\"blockSpacingGracePeriod\":60,\"description\":\"#00004 Setting the transaction fee to 0.1 FAIR/kb as agreed in the assembly\"}"

Add a CVN

addcvn c 0xc001d00d 04f69bd29a5e2b8d0f5c185fcc421d11556c071788de07d3d194ded04721afaa652ad75a649a0dac8f576e484392af68f5c31ab0ef5e3432baf8b14b6ad8b1262c

Remove a CVN

removecvn c 0xc001d00d

Add a chain administrator

addcvn a 0xad000001 04f69bd29a5e2b8d0f5c185fcc421d11556c071788de07d3d194ded04721afaa652ad75a649a0dac8f576e484392af68f5c31ab0ef5e3432baf8b14b6ad8b1262c

Remove a chain administrator

removecvn a 0xad000001

Add coin supply

addcoinsupply fairCoiXG5xxceRCB1tpWhCZzyRfrXEwNx 99.12345678 "initial coin supply"