On January 3, 2009, at 18:15:05 GMT, Satoshi Nakamoto made history by mining the Bitcoin blockchain’s first block–known as the genesis block–for 50 BTC. Now, the Factom team hopes to make history again with the release of their own own genesis block, bringing new life to the original ledger.
Factom is a protocol and peer-to-peer network which maintains a data layer on top of the Bitcoin blockchain. Network files and applications are distilled to a single numerical hash value via Merkle trees, then inserted into the blockchain via a Bitcoin transaction. This allows a process known as proof of existence, wherein the authenticity of a file can later be determined by hashing again and comparing to the original.
Many applications of Factom have already been discovered and applied. It can be used to verify health records, property titles, and even other blockchains, all of which have their own distinct Factom chain. It’s conceivable that all public data will one day be hashed into the Bitcoin blockchain, an ultimate ledger forever preserved by the most powerful computer network in the world.
Building the Block
The problem, however, is getting started. Step one was to raise development funds, which Factom did in abundance: 2,278 BTC in their initial token crowdsale with Koinify. Their for-profit start up Factom Inc. raised over $1 million in an investment round, and reports clients like the Honduran government.
Now it’s just a matter of launching the Factom network, which is powered by a decentralized group of servers working for Factom tokens (Factoids). Factoids are required by users on the network to purchase Entry Credits–tickets to submit data for hashing–making them necessary for a self-sustaining ecosystem. As such, the blockchain which tracks them must be the first Factom chain created.
That blockchain must begin with a genesis block, from which all other blocks are generated. They assume everything it says to be canon, so nobody can mine a block that omits or falsifies transactions. The genesis block, however, has to trust its source, and so the developers have taken extreme measures to ensure their data is correct.
They get Koinify’s record of crowdsale customers, who bought how many Factoids, and where their bitcoins went. They then use an Ethereum script to scrape data from blockchain.info and confirm the Bitcoin balances are correct, while running a local btcd node that can detect if a hacker has altered the information. Each Factoid address will be allotted the specified number of Factoids, and the original buyer will (hopefully) still have the private key.
Now Factom is in the process of personally verifying the Early Contributors, whose contributions were not recorded on the blockchain (sweat equity). Then the data just needs to be hashed together via Merkle tree to its root, which is the block’s header. “This was a trustless way to make sure that no one was doing a man in the middle attack on the genesis block creation process,” said Brian Deery–Factom’s Chief Scientist–in an email to NewsBTC. “All 3 methods agreed with each other.”
Once the Factom team has assembled all of the data and hashed it into the genesis block, it’s time to build the blockchain. That requires releasing it on the Internet, which they’re doing in 3 stages called “milestones.” Each one unlocks ⅓ of the funds from the Factoid crowdsale, to make it more difficult for them to abscond with the coins.
The first milestone is to get the software up and running. Using a central server, they will broadcast the genesis block, accept user Entries to the Factom chain, hash them together and then insert that hash into the Bitcoin blockchain. If their central server is hacked, any alteration to the Factom chain will fail the comparison test between its stored hash value and Bitcoin’s.
To reach milestone two, Factom must deploy its storefront, a convenient user interface for selling Factoids or converting them to Entry Credits. They will then appoint 8 federated servers, which will work together to hash Entries into the blockchain. They will start earning Factoids, distributing control of the token supply.
Finally they will reach the third and final milestone, the complete decentralization of the Factom network. The number of federated servers will rise to 16, and they will be elected by Factom clients and users. By then there will be multiple Factom chains and a well-developed Factoid economy.
Milestone one is almost upon us. Milestones two and three are expected in the winter and spring, respectively, with Factom running in full swing before 2016 is over. It should be interesting to watch it grow.