Loom, Encoding Time as Data

by Solana Foundation

Loom, Encoding Time as Data

A new approach to scaling blockchain

Disclaimer

All claims and content in this article are done with the author’s best effort. It is up to the reader to check and validate their accuracy and truthfulness. Furthermore nothing in this article constitutes a solicitation for investment.

Loom, Encoding Time as Data

Scaling blockchain is a hard problem. Not only is scaling throughput hard, but any high performance blockchain has to deal with an ever increasing mountain of data. Scaling bitcoin to just 25,000 transactions per second would create a petabyte of data each year.

We solve both of the problems by solving for time. The key innovation proposed by Loom is Proof of History — encoding passage of time as data into the ledger. Loom uses strong assumption of time to construct simpler and more efficient consensus and storage protocols.

Bitcoin and Proof of Work ledgers are a data structure that requires a lot of electricity to reproduce. You can look at the data and know how many terawatts of power was used to create it. When you look at a Proof of History ledger, you know how much time has been spent in producing it.

Bitcoin is also a historical record of sorts, people have built notarization services on top of it. You can take a document, hash it, and insert it into a block in the bitcoin blockchain, and it would require an attack on the entire bitcoin network to reverse that block. Since each bitcoin block is produced every 10 minutes you will always have “proof” of when your document was published.

A Proof of History ledger is a historical record that can record an event every microsecond. This record requires no trust, and can be cheaply and quickly verified by everyone in the world

Proof of History

Proof of History works by looping a cryptographic hash function like a sha256 over itself, taking its own output as the next input. The process generates a sample of the current output and the number of times it has been looped.

These samples of hashes are “ticks” of time in a Proof of History ledger. Only a single computer core can generate this data, but you can use many cores in parallel to verify. So a ledger with 1 second of ticks can be verified by a modern GPU in 0.25 milliseconds. By appending data to the state and recording it into the ledger we can guarantee that this data was created sometime before the next tick was generated.

For the entire network, and the entire world, we only need 1 single computer core to generate a Proof of History.

Loom has a theoretical max of 710,000 transactions per second on a 1 gigabit network without data partitioning, side chains, multi chains, shards etc..

Learn more about Loom checkout https://loomprotocol.com