How was FairCoin started?
50 million FairCoins were initially distributed by an "airdrop" to 49,750 addresses on March 2014. Each person was able to claim 1000 FAIR per hour. Automated airdrop claiming methods had no effect, as each IP address could register once per hour, and 2 different captchas had to be solved. These security precautions were hidden until the day of distribution. FairCoin's vast distribution method allowed a good portion of the cryptocurrency community to claim a little bit of the 50,000,000 FairCoins, each.
Who owns FairCoins today?
With the combined Proof-of-Work and Proof-of-Stake mechanism some additional 50.000 FairCoins per month have been given to various minters until 17th of July 2017 as a reward for being online with their wallets. With the introduction of the FairCoin Proof-of-Cooperation mechanism on July 18th, 2017, no more mining is possible.
As of December 2016, about 53 million FairCoins were spread roughly as follows:
- 9 million are owned by people outside the FairCoop ecosystem, where no one has more than 600.000
- 32,5 million are owned by people who are active in the FairCoop ecosystem
- 11.5 million are in the hands of FairCoop funds, whereas 10 million have been donated by Enric Duran
Where can I see the amount per address?
As the blockchain is a public ledger, everybody can see the amount at each address (=accounts) at the block explorer. It shows all transactions and the flow of FairCoins. All addresses for funds are listed in this table. We are planning to extend the block explorer for FairCoin, to allow tagging of addresses and transactions, so any fund could be tracked live at a glance.
Who takes care of FairCoins?
FairCoin is - like most other blockchain technologies - an independent mathematical model which can not be stopped. It is a "common distributed database" and is available to every wallet for adding transactions. Algorithms control, how transactions are confirmed.
In the case of FairCoin, the algorithm was changed on July 18th, 2017 from Proof-of-Stake to Proof-of-Cooperation. It required wallet holders simply to upgrade their software. All coins have been transferred.
Instead of thousands of computers competing to solve difficult validation puzzles (and thereby making the rich richer), cooperatively validated nodes (CVNs) do that job with cooperation in FairCoin. The big difference in FairCoin compared to other crypto currencies is that we have introduced a certain level of trust and democratic values even at the technical level. FairCoin is not trust-less in terms of block creation, but trust-less in terms of transactions.
We are discussing the development of FairCoin in a chat group. In monthly Fair.Coop General Assemblies strategic topics, and decisions to add validated nodes or tasks for chain administrators are being decided.
Chain admins can only adjust some parameters, but not stop or split the blockchain (comparable to an equalizer on an amplifier that adapts to the acoustics of the particular room, but does not stop playing the music).
What is the Proof-of-Cooperation innovation?
Instead of competing to solve a difficult puzzle in order to legitimize a block, the CVNs cooperate in a round-robin way. This reduces energy costs tremendously and no longer requires mining. The CVN operators get a very small fee in order to prevent spam and to cover a part of the electricity and connectivity costs. Furthermore, Chain Administrators are obliged to adapt some parameters in the blockchain to allow for smooth operations for decades, without the need of every participant to update the wallet. This way we may fine tune certain blockchain parameters like block spacing, which may be necessary over a long time. Any change needs to be based on a decision in a FairCoop General Assembly and is being executed by chain administrators with a multi-signature procedure.
Who runs the cooperatively validated nodes?
If you are active in the Fair.Coop network you are kindly invited to run a CVN. The CVNs collaboratively sign to legitimise the next block creator. More technically, they don't sign any following block except the next CVN ID.
Candidates should fill out the application form. Your wallet should be online 24/7 and you should have read the FairCoin White Paper. More information about technical and socio-political preconditions to run a CVN can be found here. If you would like to run a CVN you can also send an email to cvn [ät] fair-coin.org
Why do you charge a small fee per transaction?
Short answer: To secure the smooth operation of the blockchain network we have built in a fee of about 0,2 Euro-Cents per transaction. So for example if you want to empty a wallet with 250 Fair, you can transfer not more than 249,997 Fair.
Long answer: We had decided in June 2016 0,1 FAIR, but revised in the FairCoin assembly in June 2017 that CVN operators only get 0,01 FAIR per 1000 Bytes transaction size to cover expenses for electricity and connectivity. This still prevents people from spamming the blockchain with many small transactions, which would take up a lot of disk space on every node of the FairCoin network. A 'standard' transaction needs ~226 bytes so the fee is 0,00226 FAIR ~ 0,00 3 EUR = 0,3 ¢. A transaction with two inputs (=parents) needs ~373 bytes thus 0,00373 FAIR ~ 0,004 EUR.
The price assembly on 15 Jan 2018 decided: The fee rate is adapted in the same range as the value changes set by the price assembly, if this gap is more than 20% or the price assembly decides not to adapt the fee. The chain admins decide autonomously at what time and date they execute this change as block parameter, they try to do it as soon as possible.
In contrast to Bitcoin (where you can be charged at least some of the time up to hundreds of Euros per transaction), we decided to use an equal mandatory transaction fee for everybody instead of creating a so-called fee market, in which the rich pay more fees so that their transactions are processed quicker than others. In FairCoin we decided that everybody contributes to the blockchain with the same amount of fees per transaction size. The assembly could decide that CVN operators transfer the fees to a common fund, e.g. for basic income. That is really fair, isn't it?
To be honest: We are not a fan of fees, we would rather see zero fees. But we have to avoid a potential "tragedy of the commons". We are working on a micro-transaction framework in the FairChain project that could potentially be integrated into FairCoins. This will take some time to implement and test. We already have some cases for zero fees: wallet to wallet transactions in chipchap and Fairpay payments with a physical card.
Do I have to pay taxes with FairCoin?
According to a decision of the European Court in Luxembourg, exchanging fiat money to cryptocurrencies or vice versa is not subject to value added taxes. However, if you do business with FairCoins, you should treat them like a foreign currency in your books and add the trade value to your accounts or profit and loss statements, from which you calculate all taxes. It is at your own risk if you do tax disobedience with cryptocurrencies.
Are FairCoin payments anonymous?
Only to some degree. The blockchain is a public ledger, where all transactions can be seen by everybody. As soon as you reveal an address, you can be tracked, e.g. when buying or exchanging it to fiat money. In 2016, a U.S. tax authority has enforced an online bank to hand over all addresses.
Why is the transaction volume on exchanges rather low?
FairCoin is designed and used for value exchange with real goods and services, not for speculation. Thus the trade volume on crypto - exchange markets is low compared to other crypto - currencies in relation to its market capitalization.
Where does the money go when I buy at getFairCoin?
getFairCoin is one place to exchange FairCoins from FairCoop. The Euros received are used to exchange back FairCoin to Euro to merchants, if they can't buy e.g. raw materials with FairCoin. We keep buying FairCoin from the markets to be able to supply the demand. Alternatively, you can buy FairCoin at a local node.
What is the task of the FairCoin chain administrators?
FairCoin administrators activate nodes after cooperatively validating the operators and may adjust some technical parameters in the FairCoin blockchain. This happens seldom and is designed thus because of the very long lifecycle of a cryptocurrency. The FairCoin assembly prepares the decisions and the chain administrators are the operators that are executing the decisions (see detailled technical instructions). At least 5 out of 8 chain admins need to agree when performing one of the following tasks:
- add a CVN
- delete a CVN
- change admins list
- change transaction fee (min 0, max 1 FAIR per kB)
- change technical parameters
- block spacing (default is 3 minutes)
- block spacing grace period (default is 1 minute)
- minimum successive hash signatures (default is 10 = minimum half hour online, so that CVN may create a block)
In any blockchain based model, more than 51% nodes are needed to do a software update, in case the algorithm needs to be adapted. With FairCoin, some operation parameters can be set by storing them in the blockchain, if at least five administrators sign within three minutes. A maximum of eleven chain admins can be assigned. At the assembly on 15th of September 2016, eight people have fulfilled the criteria. Therefore 5 of the 8 need to sign each modification. Modifications can not stop the blockchain, but make it run smoother, e.g. if the number of transactions per second is reaching a certain limit (default blocksize is 1,5 MB, which can hold max. 3000 transactions = max. 10,6 transactions per second - FairCoin is the only (!) blockchain which can adjust such a limit, which is always a compromise between speed and storage consumption).
Compare it with an equalizer: if you adjust some frequencies, the sound will be better, depending on the room and music you play. The song may distort if you do not take care, but it does not fade away.
Who are the FairCoin chain admins?
A chain admin must fulfill the following criteria:
- availability within days, in an emergency case within a day
- they need to co-sign within the block spacing time frame
- secure communication channel (now with pgp or Telegram, in future maybe via core wallet blockchain)
- technical skills for Linux terminal handling
- active in FairCoop network and in FairCoin community
- must have read the FairCoin White Paper latest version and be able to answer questions on the Proof-of-Cooperation mechanism
- must be proposed by two people, who have to have met the new chain admin at least once in person (web-of-trust), but without revealing the real identity
- should agree to values such as fairness, cooperation, circumspection, justice, equality, ecology.
The chain admins use two chat channels on two different platforms. They may know each other from their activities in the FairCoop ecosystem, but most have never met in person. The real identities or IP addresses of the chain admins are not known. There is no centralised address book, as FairCoop is not a registered organization nor has a headquarter.
The chain admins are elected in the FairCoop general assembly. If you think you would like to join as a node operator or a chain admin, do not hesitate to contact us at . Chain admins' work is not reimbursed.
Don't have the chain admins too much power?
No. The most harmful thing chain admins could do is trying to earn FairCoins by increasing the transaction fee for CVNs they control (the upper limit of this parameter is 0,2 FAIR per standard transaction). However, if it became known that more than five chain admins wanted to break out and not follow the decisions of the assembly, a new wallet could be issued, re-establishing the rules decided democratically. FairCoin users would need to change their wallet, though, but this is the way all other cryptocurrencies patch any severe or unforeseen problem which may occur during their lifecycle anyway. With chain admins being able to fine-tune some parameters with the move to FairCoin, we likely will never need to change the algorithm again, as they are able to fine-tune operational parameters.
Where and when does the assembly meet?
Currently, the FairCoop assembly meets every month on the 3rd Thursday by chatting on Telegram in the FairCoop Assembly Group mirrored to fairchat (which offers an automatic translation). Here is a list of all chat groups. Send a message to , if you would like to join. Due to banning of Telegram in some coutries (Iran, Russia) we are mirroring some chat channels to fairchat, which is a self-hosted service. Announcements of changes to the time or place of the Assembly are being published in the FairCoop website. Important decisions could be stored in the blockchain as short text documents. In future, we might even show them in wallets too.
Why did you choose blockchain as technology?
FairCoin is the first blockchain with a human touch and clear values in mind. While some may consider this a contradiction to the paradigm of trustlessness in blockchain technology, we think it is an advantage, as we do not need to force users to upgrade the software, if some minor technical parameters need to be adjusted. Using a database like Cyclos instead was not an option, as it has one single point of failure, whereas FairCoin uses a distributed verification mechanism and works also without chain admins.
How are attacks handled?
The peer-to-peer mechanism of blockchain frameworks is very failure proof. Each node (in FairCoin any wallet or CVN is a node) checks the behavior of other connected nodes and ranks them. If the bad behavior of a node exceeds a certain level, then it is disconnected for 24 hours. This also helps to prevent from DDoS attacks.
As CVNs behave like any other nodes and their IP addresses are not listed, they can not be easily identified. The only means to find a potential CVN is to connect to a huge number of nodes and monitor all the packages and determine where you got the block/signature/nonce pool first. This becomes increasingly harder after the number of nodes grows to some thousand.
To make the network even more resilient, in future we could establish a network of full nodes at trusted partners that are very well connected. Selected CVNs could connect to these nodes only, to make them totally invisible.
By keeping the signatures are unencrypted, every node can verify the message's integrity and decides if it will relay it to other hosts or bans the host the forged message was received from.
If you want to analyse the block signing mechanism, have a look at the code and raise an issue in Github for comments.
Is there a risk, that CVNs get attacked to interrupt the blockchain?
You can not easily distinguish regular full nodes from CVNs because both run the exact same software and do the same thing except that CVNs also create blocks. Thus, there is no easy way to directly target a particular CVN. Proof-of-cooperation only defines what node ID is to create the next block and not what IP address it has or where it is located.
Almost all P2P crypto-currencies are vulnerable to DOS attacks. Because the IP addresses of all nodes is public information. Thus, you can flood all the known nodes and interfere with the network. There are currently about 10000 Bitcoin nodes and about 100 FairCoin nodes active. For a serious attacker it wouldn't make any difference if 10000 or 100 nodes are to be attacked.
Nevertheless, we have been discussing this issue. If we'd face such a situation one day we'd inter-connect CVNs directly and/or use well connected proxy nodes on some VPS. This would keep the blockchain running. Remember, the worst case is that an attacker could bring the blockchain to a temporary halt, that's it. It simply would continue when the attack is over.
The PoC-Blockchain needs 70% from all CVNs to be online, what happens if this number cannot be achieved?
The 100% to reach is actually the mean number of signatures over the last 10 blocks. So if we have one long-failing node the 95% become the new 100%. This way we make sure to keep the blockchain running even if we experience several long-failing nodes.
Can the FairCoin blockchain be forked?
It's almost impossible. Forking means that the chain splits up at a certain point. This happens to Bitcoin once in a while when miners create a new block at almost the same time. But in FairCoin, the consensus algorithm determines exactly one CVN which has priority to create the next block. Any block occurring on the network that does not comply with those rules will not be accepted by any other node.
What happens if a CVN fails?
We have three parameters that determine which CVN ID should create the next block.
1. The order (which one has created its last block the furthest in the past)
2. The time since the last block in the blockchain
3. The mean number of signatures contributed to each block since 10 blocks
Each CVN has got 60 seconds to actually create its block. This time span is dynamically adjustable and is called: Block spacing grace period. If a CVN did not make it then the next in the line has to create a block and the one that failed to create its block is skipped.
If a CVN failed to create enough partial signatures within the last 10 block (dynamic parameter: Blocks to consider for signature check) it is also skipped until it has co-signed enough blocks.
As you see, Proof-of-Coperation is much more than just a simple round-robin system.
How does signature validation work?
Now some answers for the crypto geeks: How do CVNs know who should have what key? The list of CVNs is actually embedded in the blockchain. For each one you have its ID and its public key (see the CVN payload blocks and browse to the earliest one). A CVN just happen to have the private key corresponding to its ID. Both pieces of information are embedded in the FASITO. Private keys are generated on the FASITO and are not retrievable.
Why is double spending impossible?
Even if it takes up to 3 minutes, until a transaction is in the blockchain, any transatcion is valid immediately. If anybody would try to duplicate a transaction within the block period timeframe, it would be still rejected by the mempool. Each node has a copy of that mempool and before entering the blockchain the time when a transaction has entered it will be compared with others. In case there is a difference, the CVN that creates the next block will confirm the one it received first. The second one will be stripped off all mempools once the confirming block is received. (txn-mempool-conflict - Transaction rejected by network rules).
To sum up: FairCoin does not support instant transaction confirmation, but we have a very strong additional mechanism to avoid any double spending. Even if we could not think of a hypothetical case of double spending, we recommend to wait at least two confirmations if you transfer big amounts. Watch the block explorer to see your transactions in the unmutable blockchain.
What is a FASITO?
The FAircoin SIgnature TOken is a small hardware device of dedicated wallets connected to a fulll node wallet via a USB cable. A FASITO may serve as a private key storage and for chain signature creation for CVNs and chain admins. The TEENSY board needs a special firmware and we initialize it with a six digit PIN and put three public keys from device admins on it, who could unlock it, if it is locked by entering the wrong password PIN when logging into the wallet. We also put a device private key on the FASITO for authorization requests. The firmware is certainly open source (link is external) and the FairCoin developers offer to CVN operators delivering it pre-seeded. All keys are generated with an initialisation sequence by the CVN operator himself/herself.
Which digital signatures schemes are being used?
We now use EC-Schnorr signatures for two aspects of FairCoin:
1. chain signatures - which legitimise the next creator to create its block
2. block signatures - proof that an actual CVN created the block and not some malicious entity
In this context the current EC-Schnorr implementation is safe to use. It is very efficient and generates shotz signatures. But it can not be used for transaction signing. Here we still use the same elliptic curve signature scheme as Bitcoin does: ECDSA. We are currently looking also at Curve25519.
How resilient are the Cooperatively Validating Nodes?
CVNs behave like any FairCoin node, they create the blocks and bundles them when signed and commits them to the chain. We can even say that CVNs are secretaries, who do not know each other. The consensus is created from the history, so it is clear which CVN is next. The one that creates the block is the furthest in the past. If a CVN is not online (grace period 60 seconds), it is skipped, and all nodes agree to try the next CVN. Each full node validates all messages. 70% of the CVNs need to sign. If fewer than this sign, then no blocks are generated, but non-functioning CVNs that have not answered to more than ten blocks are not taken into account in the 70% ratio.
What are sells and bids?
At only a few cryptocurrency markets you can sell FairCoins (often marked red) or bid to buy FairCoins (often marked green). With asks you are setting sell orders above the current price, with bids you are setting orders which are below the current price for buying.
In order to keep FairCoin stable, it is better not to ask when there are already many sell orders. In general, we recommend to buy and sell FairCoins within the FairCoin community and not a t only markets where speculators try to make a bargain of some bias.