Albatross - An optimistic consensus algorithm

Just sharing maybe worth checking alternative to albatross … https://ipfs.io/ipfs/QmUy4jh5mGNZvLkjies1RWM4YuvJh5o2FYopNPVYwrRVGV
Had been posted by anon on irc

1 Like

Short FAQ

After responding to some great questions that came up in the Nimiq Telegram, I decided to compile a list of the most asked questions and Team Nimiq’s response.

To see the full answers, click the triangle next to the headlines.

Nimiq very much appreciates community feedback and continues to respond to piece of feedback they can (Vid Q&A filmed a while ago, stay tuned!).

Why suddenly PoS? Nimiq has always been PoW.

The mother of all blockchain debates

To put it short: PoW doesn’t scale enough and has relatively slow confirmation times. PoS is more efficient.

Citing the original Nimiq FAQ:

We are very excited about the technology but we feel it still needs more research and testing before being introduced into the worldwide environment. We are considering its use in a later stage of the Nimiq Blockchain but this is yet to be decided.

https://nimiq.com/de/#faq

What if the community doesn’t like PoS? We need democracy.

On the blockchain, majority decides

Albatross is very likely going to be the integral part of Nimiq 2.0, the community does decide if it is activated or not.
Like with every blockchain rule change, either the hashpower or economic majority decides the final outcome. So it is a very much democratic decision.

Why not Cosmos / Tendermint? Who needs more than one second finality?

Decentralization & Efficiency Requirements

TLDR: Tendermint has less validators and a lot higher minimum stake but has instant finalization.
Albatross is faster in the same setting in an optimistic case and about as fast as Tendermint in the secure/adversarial case.

Because Albatross only executes the slow (relatively spoken) pBFT process every epoch instead of each block, it actually has the potential to be faster than Tendermint.

The efficiency advantage comes into play when increasing the number of validators. Cosmos is run by about 100 validators.
While still experimental, we are trying to push for a lot more in an effort to increase decentralization. More validators usually means more overall latency, so Albatross plays a vital role to keep the network fast.

Furthermore we have a hard requirement that browser clients need to sync to the blockchain. We want the least amount of overhead possible. One example is signatures: To my knowledge, Tendermint doesn’t aggregate individual validator signatures while Albatross uses BLS to achieve pretty short proofs. Micro blocks only need one signature done by the verifier.

Tendermint might have an impressive structure (Decoupled P2P + ABCI) but a monolithic stack is just fine for our use case: A payment protocol

And the most important part: Blockchain in the browser (especially P2P over WebRTC) is hard but we already have a working implementation (Nimiq 1.0). Reimplementing all of Tendermint in JS would take way more time than adding a new consensus type on top of our current solution. Writing down just the Albatross consensus is a bit more work than pure pBFT but could pay out a lot more given all the potential benefits.

Why use Rust as a programming language? Isn’t Nimiq supposed to be browser-based?

Forever browser-based & Performance upgrade

Nimiq will stay browser-based and having a Rust implementation won’t change that.

Rust outperforms and has better safety guarantees than JavaScript. Several high-quality blockchain projects are run with a Rust code base.

Being easier to run on the web, JavaScript clients continue to live. The Rust node is currently an optional performance upgrade.
Performance critical parts have never been in JS in the first place. Right now they are C compiled to WebAssembly (a technology enabling near-native performance code in the browser).
In the future, more parts of core might get replaced with Rust/WebAsm to increase performance and loading times.

3 Likes

For me POW is not a solution that will last.
The big problem is the amount of resources (electricity, hardware) that you need to provide those proofs of work.

If we want to make a new payment system for the future I think it should be the most energy efficient as possible.

With POW you waste a terrible amount of energy. And what about all the hardware that big miners will throw away after short time because it has been surpassed by the new one ?

I don’t say that POS is THE only solution but for me POW certainly isn’t viable. At the end we kill our planet for profit like we always did. Is that the revolution we want to build ?

That’s why I was hoping that they would really consider POS in the near future when I first saw it mentioned in the FAQ before the mainnet launch. And I’m really happy to see the progress they are doing in this direction now :smiley:

5 Likes

Algorand is a project to monitor since the PoS algorithm has many similarities with Albatross. The price suffered a fall dump after the mainnet release (-95%):


Some community member are already pushing for a reduction of -60% of the emission rate:

That said there are others factors probably explaining the collapse of the price over such a short period of time:

Algorand did not conduct a private token sale; rather the project completed two rounds of equity fundraising for a total of $66 million. However, early investors that opted to participate as an ‘early node runner’ to validate transaction receive tokens for less than $0.09 (rumored to be as low as $0.05) with vesting over 2 years. Li, whose company specializes in trading crypto including Algo, said he has seen a steady flow of Algo coming across the trading desk every week recently, with nearly all traders looking to sell. The balance of these rewards is around 2.5 billion with more than 3.4 million Algo unlocked daily (~$2.67 million at current prices). Considering that some early investors received these tokens for less than $0.09, they are still seeing returns of more than 800% if they decide to sell immediately. This is likely creating the selling pressure that Li is referencing.