FairCoin is an innovative blockchain technology, performing better than BitCoin and most AltCoins: it requires less energy, enables faster transactions and is redistributing a very low fee. It has been built with a clear value set in mind to bridge economic gaps on a regional and global level.
Here we explain the history, how you can participate to shape the future of this cryptocurrency and which mechanisms we have designed to be able to adjust a few operation parameters, to maximise independence, to avoid any deadlocks or blockchain splitting and how we have prepared the nodes for smooth operations for ages.
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 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 Fair.Coop ecosystem, whereas no one has more than 600.000
- 32,5 million are owned by people who are active in the fair.coop ecosystem
- 11.5 million are in the hands of fair.coop 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 has been changed on July 18th, 2017 from Proof-of-Stake to Proof-of-Cooperation. It requires wallet holders simply to upgrade their software. All coins have been transferred.
Instead of thousands of computers competing to solve difficult validation puzzles and 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 introduce a certain level of trust and democratic values even on 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 just can adjust some parameters, but not stop or split the blockchain (like an equalizer on an amplifier that adopts the acoustics of the room situation, but does not stop playing the music).
What is the Proof-of-Cooperation innovation?
Instead of competing for a difficult puzzle to calculate to legitimize a block, the CVNs cooperate in a round-robin way. This reduces energy costs tremendously and does not require mining anymore. The CVN operators get a very little fee (0,1 ¢ per transaction) to prevent spam and to cover part of the electricity and connectivity costs. Furthermore, Chain Administrators are obliged to adapt some parameters in the blockchain 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 next block except the next CVN ID.
Candidates 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 a mail to cvn [ät] fair-coin.org
Why do you charge a small fee per transaction?
Short answer: To secure smooth operation of the blockchain network we have built in a fee of about 0,2 Euro-Cent per transaction. So 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 disc 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 are charged at least some up to hundred 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 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 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 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 such as Bittrex 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 material 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 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 11 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 bump or clatter if you do not care, but it does not fade away.
How to become a FairCoin chain admin?
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
- must be proposed by two people, who have to have met the new chain admin at least once in person (web-of-trust)
- should agree to values such as fairness, cooperation, circumspection, justice, equality, ecology.
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 are not paid.
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 is getting public that more than five chain admins would break out and not follow 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 way all other cryptocurrencies patch any severe or unforeseen problem which may occur during their lifecycle. 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 operation parameters.
Where and when does the assembly meet?
Currently, the Fair.Coop assembly meets every month on the 3rd Thursday by chatting on Telegram in the FairCoop Assembly Group. Here is a list of all groups. Send a message to , if you would like to join. We are considering to move to a self-hosted chat service. Announcements of changes to the time or place of the assembly are being published in the Fair.Coop website. Important decisions can be stored in the blockchain as short text documents. In future, we may show them on wallets too.
Why did you choose blockchain as technology?
FairCoin is the first blockchain with a human touch and clear values in mind. As 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 a 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 even make the nework 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 rise an issue in github for comments.
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 are not 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.
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 you lock it 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 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 in 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. Even 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 less 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 cryptocurrency markets like bittrex, you can sell FairCoins (marked red) or bid to buy FairCoins (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, you better do not ask when there are already many sell orders. In general, we recommend to buy and sell FairCoins within the FairCoin community.