Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
FairCoin2 migration FAQ
FAQ Migration from FairCoin1 to FairCoin2
Note: whenever FairCoin is written in this document it always refers to the version 2. The version 1 will always be denoted as FairCoin1.
What is the difference between FairCoin version 1 and version 2?
In contrast to FairCoin1 which implemented proof-of-stake (PoS) in the creation of new blocks, the new FairCoin software implements the innovative proof-of-cooperation (PoC) algorithm. The FairCoin code base was forked from the Bitcoin v0.12 code base in March 2016, and the PoC algorithm was implemented on this. This new PoC algorithm is based on a group of authenticated nodes called 'Cooperatively Validated Nodes' (CVNs). These nodes cooperate together to create new blocks in a round robin manner. There is no competitive mining or minting going on anymore. Blocks are created at agreed intervals (initially every 3 minutes). Block-creation is effortless and does not waste energy or computing resources. More information about proof-of-cooperation can be found in this document: https://github.com/faircoin/faircoin/blob/master/doc/on-proof-of-cooperation.md.
FairCoin1 and the new FairCoin blockchain have nothing in common other than the balance of the addresses.
In contrast to PoS/PoW coins, in the FairCoin blockchain the money supply is constant. No new coins will be created. The block reward (coinbase transaction) only contains the transaction fees.
When did the FairCoin2 blockchain start and when did the old one end?
On the 18th of July 2017 at 08:00 GMT the new blockchain has been started and prepared for use, without any coin supply. The FairCoin1 chain continued as normal, and remained valid until 15:00 GMT. The first block created immediately after 15:00 GMT marked the end of the FairCoin1 blockchain. This was the last valid block from the old chain.
How were the coins moved to the new blockchain?
The last FairCoin1 block defined the final coin supply. The FairCoin chain administrators then created the final amount of coins in the new chain by co-signing a special coin supply message which is saved in the blockchain. This administrative procedure can take place just once. No further coins can be added to the blockchain in addition to this initial coin supply. We then took a snapshot of all balances at the final block height in the FairCoin1 blockchain and created the corresponding transactions in the new FairCoin blockchain, thereby re-distributing all of the coins in a 1:1 manner.
What happens to old FariCoin1 transaction IDs and block hashes?
Transaction and block hashes created in the FairCoin1 blockchain can not be found in the new one and thus are invalid there.
How are the transaction fees calculated?
In contrast to other crypto currencies the transaction fee in FairCoin is mandatory and is set to a certain value that applies to every transaction. Thus there is no fee market. The fee rate is fixed but can be dynamically adjusted by the chain administrators to fit the current value of FairCoin. The current fee rate (meaning the fee per 1000 bytes) can be retrieved from the wallet by issuing the following RPC command:
The absolute fee that needs to be paid for a transaction depends on its size.
As an example: Say you have a transaction of the size of 226 bytes and a current fee rate of 0.01 FAIR the absolute fee would be calculated like this:
226 / 1000 * 0.01 which gives us 0.00226 FAIR.
When were the balances available in the new blockchain?
The re-distribution transactions were created on the 18th of July at 16:00 GMT in block 160. The exact time was dependant on when the next block after 15:00 GMT was created on the FairCoin1 blockchain. The coin supply transaction needs 1 hour to mature.
Were there any differences in the balances?
No, we created a 1:1 copy of all balances (at the final block height).
Did the number of digits after the comma change?
Yes, FairCoin1 used to have 6 digits after the comma e.g.
1.123456 FAIR. The new FairCoin version now uses 8 digits after the comma e.g.
Did the currency symbol change?
No, it is still the same: FAIR
Will my addresses and private keys still be valid on the new blockchain?
Yes, you can continue to receive coins on your old addresses and send funds you have received on the old blockchain.
Where can I find the source code of FairCoin?
FairCoin is open source software and licensed under the MIT license. The sources are published here: https://github.com/faircoin/faircoin.git
Where can I find the official block explorer?
It's located here: https://chain.fair.to/
Are there official binary releases available?
Yes, pre-built binaries are made available here by the core developer: https://download.faircoin.world/
Who can I contact if I have further questions?
You can read or ask in the FairCoin development group https://fairchat.net/channel/faircoin-development (mirrored on Telegram: https://t.me/joinchat/AAAAAAaikf1QW0Lsw6c8Gg ) Email address: firstname.lastname@example.org
Did the default data directory change?
Yes it did.
- on Linux it changed from
- on Mac OS X it changed from
- on Windows it changed from
How do I migrate/upgrade the FairCoin Core wallet?
You can compile FairCoin from source or use the binaries provided by the development team. When you start the new wallet it first searches for a wallet.dat file in the default directory. If it doesn't find one it searches the old FairCoin1 data directory. If there is a wallet.dat in the FairCoin1 default location it is copied over to the new default location and converted into a new wallet.dat file for FairCoin version 2. During this conversion process all wallet transactions are stripped but the rest of the information is preserved. Please make sure you use the same version of libdb for both wallet versions.