A brief technical review of Algorand

After going deep down the rabbit hole on Bitcoin’s UTXOs, Cardano’s EUTXOs, and Ethereum’s Accounting based model, I became curious to see how Algorand operated. I’d heard some pretty good things about the project and wanted to know more. So in today’s post we shall take a brief look at some of the technical aspects of Algorand.

Background

Algorand was founded in 2017 by the Turing Award winner and MIT Professor, Silvio Micali, who has a a long background in cryptography including a lot of cryptographic features that make up current blockchains. Silvio was basically a Professor of crypto, before crypto. He designed Algorand to overcome perceived flaws in the Bitcoin blockchain. Algorand went public in May 2019 and has been gaining momentum since then.

Consensus

Algorand uses a decentralized Byzantine Agreement protocol that leverages pure proof of stake (Pure POS). It’s actually not too disimilar to Cardano except it does not use delegated POS. Every token holder is a validator with their influence being proportional to their Algo holdings. That being said, within the consensus mechanism they do randomly select a pool of users for validation:

“Although very fast, protocol BA⋆ would benefit from further speed when played by millions of users. Accordingly, Algorand chooses the players of BA to be
a much smaller subset of the set of all users. To avoid a different kind of concentration-of-power problem, each new block Br will be constructed and agreed upon, via a new execution of BA⋆ by a separate set of selected verifiers, SVr

Algorand, Chen, Micali, May 2017, pg. 4-5

The need to have a small number of validators is required for speed, but knowing the validators up front can pose a security risk, hence why Algorand took the approach of a randomly selecting from the total pool, vs. randomly selecting from a delegated pool as is the case of Cardano. This is why Algorand purports to use a “pure proof-of-stake” model.

Accounting model

Algorand is not UTXO based like Cardano or Bitcoin. Instead it follows an account based model similar to Ethereum, yet also embodying the idea of stateless transactions similar to the UTXO model.

On the other hand, Algorand’s paradigm of stateless contracts diverges from Ethereum’s stateful contracts: rather, it resembles Bitcoin’s, where contracts are
based upon custom transaction redeem conditions. Besides these differences, Algorand natively features user-defined assets, while other platforms render them
as smart contracts (e.g., by implementing ERC20 and ERC721 interfaces in Ethereum). Overall, these differences demand for a formal model that is substantially different from the models devised for the other blockchain platforms

A formal model of Algorand smart contracts, Bartoletti1 et. al (2021), pg 18)

There is a lot to unpack in this paper and I’ve only been able to briefly ski through it. It does sound impressive I will say. I suspect the size of the Algorand blockchain may be growing at a much faster rate than Cardano’s as a result but could not find any immediate stats to back this up, save for this unverified comment:

“Roughly, running the mainnet for a year was ~120GB. The vast majority of that space is the consumed by the block certificates and not the transactions themselves.”

Alogrand forum

If this is correct then this is significantly larger than Cardano’s footprint of ~9gb. This isn’t necessarily a problem for Algorand as their consensus mechanism will still remain fast. Though I do wonder what the size will be like 5 or 10 years time, and whether it will matter.

The fundamental difference is really the choice of UTXO vs a stateless Account based model. UTXO certainly does make it harder to do certain things, where as others would be made simpler. Reading Alogrand’s whitepaper on smart contracts is certainly a good start, but it would be good to see more research performed on the benefits/drawbacks of the different accounting models with regards to smart contracts. Or alternatively – let’s wait a year and see what the quality of Dapps look like on both chains.

Published by ReddSpark

Follow me on Twitter: https://twitter.com/Reddspark1

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: