Coda is a cryptocurrency protocol leveraging the zk-SNARKs cryptographic primitive to achieve a consistently small 22 kB block size regardless of transaction throughput.
Coda’s blockchain design intends to retain both security and decentralized consensus at scale, which is something that existing cryptocurrencies have failed to maintain past a certain transaction volume. Coda plans to achieve this using zero knowledge proofs, which enable the Coda blockchain to remain consistent in size, at a 22 kB regardless of transaction volume and complexity, and uniquely, does not require that transaction history be stored by nodes or any other network participant. Coda’s consensus is designed such that anyone may verify the entire blockchain from a device as simple as a mobile phone, which allows end users to have increased oversight over node transaction processing as compared with other chains that have gradually fallen into centralized mining structures. Coda’s parent company O(1) Labs raised a $3.5 million seed round in May 2018 from well known investors such as Polychain Capital, Fred Ehrsam, and Naval Ravikant. In April 2019 the project raised $15 million in funding from Coinbase Ventures, Paradigm, General Catalyst, Accomplice and others. In 2018, Coda launched a testnet, a programming language called Snarky, a decentralized marketplace where anyone can help compress the blockchain, and open-sourced their protocol progress. The project transitioned from a Proof of Work to a Proof of Stake system called Ouroboros Praos in March 2019.
Coda requires transaction processing nodes to output a SNARK “certificate” ongoing, as proof of the blockchain state. This results in the production of a sequence of SNARK certificates, each small in size (approximately less than a kB), which break verification into small proofs that can then be chained together. Coda’s protocol aggregates these SNARK certificates, and represents their collective computations under a single SNARK certificate. From there, anyone with a mobile phone can verify whether or not these certificates are true, without directly verifying the blockchain itself. The downloadable ~1kB SNARK certificate serves as proof of the state of the blockchain from its genesis block, and includes additional consensus details and specific account information. Though Coda has not yet released details of their token mechanics, they have stated that nodes processing transactions and creating SNARK certificates will be incentivized by transaction fees to do so.
The first version of the Coda platform is focused on peer to peer digital payments, though the project anticipates enabling smart contract functionality down the road, since SNARKs are capable of verifying any type of computation including payments or more complex smart contract code.