Examining The Blockchain Trilemma From Algorand's Prism

Examining The Blockchain Trilemma From Algorand’s Prism

In the interview I made last year, I asked a leading cryptocurrency expert Andreas M. Antonopoulos, about whether someone could solve the so-called Blockchain Trilemma – scalability and security without sacrificing
decentralization in the future.

If the consensus algorithm of algorand is pos / proof of stake, then the new block creation & validation reward is proportional on currently owned tokens. This scheme favors the coin creators - in other words the rich gets richer.
New nodes in the blockchain network do not have equal chance of rewards - as the article implies.
Lack of rewards may lead to smaller number of nodes - centralization of the blockchain…

Hi @paul-arssov, let me clarify a few details.
The new block creation & validation is possible to be done by all online coins=participation nodes (you can have also offline coin - which means it is not participating on the consensus for the moment being offline). So, the best possible moment for decentralization in Algorand blockchain would be that all Algo tokens are online and work as participation nodes (10 billion total coins = 10 billion possible participation coins = superb decentralization level).
The rewards - at this moment the rewards are for all Algo tokens (both online and offline) and they are distributed from the incentives and ecosystem support pool (for this moment). So, no extra bonus for participation nodes (online Algos) in the consensus. This is a project with developers and the team behind, so they surely have some economic incentives “not doing it for free” as Satoshi did with Bitcoin (well, he still has around 1 million bitcoin, so…he might cashout one day). The Algorand foundation is distributing the tokens in Dutch auctions.
In other words, 100 new participation nodes (online Algos) have an equal chance of rewards as 100 “original” participation nodes.
In PoS, there is a linear relation to getting rewarded. 100 Algos got 10% rewards and 1000 Algos got also 10% rewards. Yes, the rich get richer, but in a linear way. Is it fair? I do think so.
In PoW, when you have 100x more funds, due to the investments in ASIC miners and formerly newer/better GPUs, you have a 1000x higher chance to mine the next block. The relation is not linear and favors the hardware producers. So rich get even much richer than in PoS and the average Joe has almost no chance to produce a block. But in Algorand, he has.
Thanx you for the query, a valuable one indeed!

I appreciate the detailed replay.
It is good to know that in your PoS implementation the chance of reward is equal between algo nodes owners. In other PoS implementations the chance of reward is proportional on the amount owned/staked - resembling ‘the rich gets richer’.
I am a developer (most likely Dapp side) and may take a look at the Algorand project.

The documents on algorand contradict your claim of equal chance -
https://developer.algorand.org/docs/run-a-node/participate/
… Participation in consensus currently does not affect the proportion of rewards an account receives. Rewards are based on the amount of stake an account has, irrespective of whether the account is marked online or offline…

Most likely insiders of the project do assign amounts for themselves and get most of the rewards. Outsiders have little chance …

I don´t have your point here. If an insider has 1 000 000 Algos and you have 1 Algo, you both get rewarded by 10% yearly stake. That is, I guess, fair enough. You both get the same chance to get rewarded and it is raising linearly. You have an equal chance for a reward.
I wrote that the rewards are for both online and offline Algo tokens. Yes, down below I mentioned 100 participation nodes to get rewarded, but it was because you asked for “new nodes in the blockchain”, so I continue talking about the “participation nodes”, which are in Algorand, the online Algos.

I am not an insider with algorand project. If I run a node and want to get rewards (coins) I will have little chance for it. As your documents state - … Rewards are based on the amount of stake an account has,… By pre-allocating coins to insiders the game is rigged in their favor from the very beginning…

Hi, there are two types of node you can run. Relay node and Participation node. Participation node is simply non-relay node, where you participate on consensus by owning more than 1 Algo. You get rewarded wheter you participate or not, for each Algo you get rewards if you are insider or not. For 10 online Algos as an “insider” you got the same reward as for 10 offline Algos as a newcomer.

I really think you should check Algorand Ambassador Rewards Program where you can grab some Algos for your doing, if you want to be an active member of a community. The projects look for developers also. :blush:

There is a small group of people in the project (investors+developers) who already own millions or billions of algo tokens. Even if I run a node if I have 1000 algo-s I will get 0.00…1% of the reward and the small group will get 99.999…% of the PoS reward.
An ambassador who promotes algo, or a person running a node, or a Dapp developer outside of the project will never be able to catch up to the above small group…

Algorand is not a 51% attack coin. It is approximately 33%. The blockchain assumes that 2/3 of the block producers are honest and not adversarial or Byzantine.

It is currently not possible for anyone to start a relay node. This list is whitelisted and therefore centralized.

Although block production may be purported to be random, it is a 99%-100% certainty that the following addresses will be a block producer at least one time in a minute, if not less.

MVRIQBLUWWI5WTDF76ZE7GJMCVJH3PWN6LMYIQ6LHIXAZGWWSZXLCZE3UM

GVCPSWDNSL54426YL76DZFVIZI5OIDC7WEYSJLBFFEQYPXM7LTGSDGC4SA

It’s not limited to just these addresses. The frequency of a block proposer is proportional to the stake which they hold, to a degree. So although it may be random, if it’s random to only 20 wallets, it doesn’t appear all that random now and it makes guessing who the proposer is all the more easy.

1 Like

Thank you for this point, I will try to find out more about relay nodes. To this moment I found that “there will be opportunities to earn tokens for relay node running in the future. While anyone can run a relay node, the Algorand Foundation has given early supporters around the world who agreed to run relay nodes at network launch the opportunity to earn Algos in exchange. This early support program is closed, but there will be more opportunities in the future.”. And I wouldn’t call that centralized, because it is runned by many relay nodes, not just a few.

About the randomness of the proposing process - yes the addresses with a higher stake are proposing more often, but it goes linearly. And the problem of some attack might be just in the consecutive blocks added, if some node is propossing block a and then a+10, it is irrelevant in my opinion.

“Only a true decentralized system, where the power is really so spread that is going to be essentially practically impossible to attack them all and when you don’t need to trust this or that particular node, is going to bring actually the security we really need and deserve.” - Silvio Micali

“In a centralized blockchain, a central authority always chooses and distributes the next block.” - Silvio Micali

Silvio Micali on committees:

Fixed-Committee Decentralization

In a first approach, the power to choose all new blocks is delegated forever to a small (e.g., 10-, 100-, or 1000-strong) committee , ensuring the integrity of the blockchain as long as the majority of the committee members are honest.

Pros:

  • Efficiency. In the obvious deployment of this approach, each committee member essentially performs the work of the central authority in a centralized blockchain, plus some extra computation and communication, as required to have the whole committee to choose a block based on the actions on individual committee members. This amount of extra work is only proportional to the committee size, and independent on the total number of users in the system. Thus, such a system is scalable.
  • Ease of implementation. Each block chosen by the committee is authenticated if digitally signed by a majority of the committee members. Alternatively, “threshold cryptography” could be used to generate a joint committee public key PK_C, whose secret key is split among committee members. Individual member digital signatures are then translated into a joint digital signature relative to PK_C.

Cons:

  • Very Strong Trust Assumption. Even if the committee may start with a majority of honest members, an adversary could corrupt or bribe most of them over time.
  • Strong Vulnerability . A fixed committee is easy to attack, and an adversary can eventually compromise the majority of the committee members. In addition, an adversary can immediately mount a denial of service attack against the committee members, preventing them from receiving messages from each other, or receiving the new transactions that they should include in new blocks.

Rotating-Committee Decentralization

In another approach, the fixed committee is replaced with a “rotating-committee”. In one example, there is a set of N committees, and, for each new block, one of these committees is randomly selected to choose the block. In another example, after the current committee has chosen a block, a few of its members are removed and a few new members are added.

Of course, this approach requires a secure way to ensure that a “proper committee” is chosen for each new block.

Pros:

  • Efficiency. The efficiency and scalability of this approach is essentially the same as for the fixed-committee system, because the size of each committee can remain approximately the same, independent of the total number of users

Cons:

  • Strong Trust Assumption. In both rotating-committee systems, most committee members remain fixed over a long period of time, and thus one must assume that they remain honest for a long time.
  • Vulnerability . An adversary may not be able to attack most of the users in the system, but could successfully attack the majority of the members of a few, small committees.

The committee of Relay nodes is selected specifically by the Algorand team. This is the hallmark of centralization. Let’s not sugar coat things OK. It may change in the future but current it is a fixed number (adding additional nodes are closed in your own words) thus it is fixed and rotating by virtue of the VRF. However, this group was selected by the Algorand team thus it is not decentralized as only one team approved membership, there was no democratic vote, applying to the process was closed from inception to a select group, and membership is currently exclusive. Cardano and EOS are more decentralized that Algorand currently.

The attack vector is consistently submitting the same proposer and group of approves as they appear by frequency, obtaining or creating a false seed and pseudorandom output, and false transactions. It is an immense amount of work and would have to be executed stunningly fast but it appears to be possible once the proposer and 1k approvers targeted has been achieved. Even then there are some other obstacles and issues I imagine are built into the protocol but speed of execution is one of the largest hurdles. Don’t get me wrong, well thought out design by a super smart guy, but it currently is centralized. You might as well call relay nodes Dash Master Nodes.