I was referring to this question.

Apparently Factom creates its own "chain" for timestamping purposes, "hashes" the entries, and then stores these hashes on the blockchain, to create an unalterable record.

What would happen if "everyone" in the world did this? Could the blockchain support a million (or a billion) more "Factoms?"

  • 1
    It's, by definition, not an "alternative chain" (it can't do without the Bitcoin blockchain, see answer). More like a "dependant chain" or "child chain" or something like that. So it's not actually Factom that is doing the timestamping (it would need Proof of Work to do that), it uses Bitcoin to do the timestamping. It simply bundles a lot of facts into one hash that gets timestamped on the Bitcoin blockchain.
    – Jannes
    Commented Dec 9, 2015 at 19:31
  • @Jannes: took out the "alternative" part.
    – Tom Au
    Commented Dec 9, 2015 at 21:09

3 Answers 3


Factom stores data in a blockchain that's maintained by their network of federated servers. Tierion lets you create a verifiable record of any data or business process by anchoring your data to the blockchain. No altcoin required.

We've created an open standard called Chainpoint for anchoring data in the blockchain. Like Factom, we use Merkle trees and periodically insert a transaction containing a Merkle root in the Bitcoin blockchain. Unlike Factom, we give you a blockchain receipt that can be stored in your local database and shared with other systems. You stay in control of your data.

If you build an application on Factom, you're dependent on the Factom blockchain. If Factom fails, your application stops working. You have to continually acquire Factoids to write data to Factom. With Tierion, your data and your blockchain receipts can be stored anywhere - even in another decentralized datastore. There is no long-term dependency on Tierion.

I suspect that we'll see many approaches to anchoring data to the blockchain. Each approach will differ to accommodate various use cases. For example, Blockcypher has a free API call that allows you to store data in OP_Return, and Stampery has a product for notarizing documents in the blockchain.

Disclosure: I designed the Factom Explorer and played a key role in the launch of Factom.

  • Welcome to the site. Glad to hear from an expert.
    – Tom Au
    Commented Dec 9, 2015 at 22:01
  • Since any data included in Factom is cryptographically linked to its anchor in Bitcoin (entry->entry block->directory block->bitcoin anchor), you can create blockchain receipts for any data on Factom as well.
    – ThePiachu
    Commented Dec 9, 2015 at 22:34
  • Factom is a distributed protocol. Many independent servers will run the protocol, and it will run even if some fail. With centralized solutions, your applications depend on Tierion the company. No company, no support.
    – PaulSnow
    Commented Dec 10, 2015 at 4:46
  • Factom is censorship resistant. Commits obligate the protocol prior to reveals of your data. Factom has no terms of service you must agree to like Tierion. You cannot be cut off from the protocol with Factom like is possible with Tierion. Tierion is a very nice product, and many people will use their services. Others may find Factom more useful. Depends on the application.
    – PaulSnow
    Commented Dec 10, 2015 at 4:54
  • Factom does NOT require the purchase of factoids to use the protocol. You can use Entry Credits (which are basically a credit balance that isn't transferable, so no need for a wallet) to access the protocol. Factom also creates cryptographic proofs to your data, so your data is secured by Bitcoin over time, not Factom.
    – PaulSnow
    Commented Dec 10, 2015 at 5:14

The way Factom works, they store the merkle root of the various hashes on the blockchain in an OP_RETURN output. This amounts to 80 bytes in the OP_RETURN and the actual transaction is going to be on the order of 500 bytes. The way they scale is that they store the actual merkle tree elsewhere and only put the root into the blockchain, about once per block.

Assuming that everyone uses Factom, this would mean that the blockchain would only get one Factom transaction per block, which is what it's already doing. If there were a million other services using OP_RETURN, then no, currently, the block size is limited to 1MB per block, which can only take about 2000 such transactions per block.

  • The question was (partly) "Could the blockchain support a billion Factoms?" The answer to that would be no, but it doesn't need to (as Jimmy's answer explains and any it's cheaper to combine facts into one or a few "Factom-like services" than into a billion, as every timestamp requires Bitcoin fees. So it will naturally gravitate to only a few services.
    – Jannes
    Commented Dec 9, 2015 at 19:34
  • If you run "Factom on Factom" there is no real limit to how much data you can secure. So if you run a fork of factom, and anchor into Factom, there isn't much of a limit to how much the anchors (~13 Meg placed into Bitcoin by Factom) can secure.
    – PaulSnow
    Commented Dec 10, 2015 at 4:39

Disclosure: I'm a senior developer at Factom.

What you are describing is essentially BitPay's ChainDB - a cryptographic chain of records anchored into the Bitcoin blockchain. Since systems like Factom or ChainDB would ideally only include one anchoring transaction per block into Bitcoin, your upper limit as to how many chains can co-exist is the transaction limit on the Bitcoin blockchain.

However, since such systems should provide cryptographic proof that any data included in them is also included in the Bitcoin blockchain, there is nothing stopping you from creating sub-chains - anchored into Factom or other chains, which are in turn anchored into Bitcoin. The cryptographic proof should work on sub-chains, sub-sub-chains and so on ad infinitum (although the proofs would be getting longer each time). This means that in theory there is no limit as to how many chains can exist, provided you are okay with some of them being moved down to a lower level.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.