How Nimiq is Ahead of the Curve — Browser Nodes and Instant Consensus

Talleyrand
3 min readNov 11, 2019

--

The world of cryptocurrencies is hard to navigate between extraordinary claims and buzzwords.

This series of article named How Nimiq Is Ahead of the Curve is meant to expose, in the easiest way possible to understand, the strengths and the philosophy behind Nimiq: a simple, secure and censorship-resistant payment protocol, native to the web.

It is good to note that nothing said here is new and everything explained is available in the whitepaper or the documentation. That said I know the majority of people in the Nimiq community are not “technical” (I am among them) and do not necessarily grasp everything of what is happening under the hood. But this fact alone should not prevent us from trying to understand how Nimiq works at a high level, why it is such a cool enterprise and ultimately appreciate more the efforts and elegance in the work of Team Nimiq, so here we go!

Let’s begin with the common basis of every single cryptocurrency relying on a blockchain: when you decide to send some coins from one address to another on a blockchain (like Nimiq, Bitcoin or Ethereum), you create a transaction authenticated by your signature.
Then this transaction is broadcasted to other nodes (running a similar copy of the ledger each) and finally mined into a “block” which is propagated onto the network until the majority agrees on it.
Past this point the transaction is said to be “validated” and will become part of the ledger hosted by all the nodes in the network.

Now to broadcast transactions you have traditionally two choices: either run your own node and spend hours/days downloading the entire blockchain (or at least a consequent portion of it) to reach consensus, which is notoriously slow and quite cumberstone OR trust on a third party node (a method called SPV — Simplified Payment Verification) to do it for you, this last solution fast but less secure and way less censorship resistant.

Nimiq innovates here by being the first blockchain offering the best of both world. How? Simply by letting you run a node directly in your browser which syncs with the rest of the network in an instant.

To accomplish this feat the Nimiq relies on 3 main components:

  1. The use of WebRTC enabling peer-to-peer connectivity from your browser to the rest of the network, this is what enable you to be a peer in the Nimiq network.
  2. Nano and Pico consensus providing a way to securely sync and obtain the last state of the blockchain in mere seconds by downloading only few kb of datas, these datas act as a cryptographic proof (see NiPoPoW).
  3. A JavaScript codebase (JavaScript is, as of today, the “language of the web”) allowing you to “run” the node directly in-browser.

Now you may wonder “well that’s sweet but what is the point?”. Here is what these properties bring on the table:

  • Firstly, it is more secure but more importantly it is way more censorship-resistant as you do not rely on a third party node to broadcast your transactions.
  • You can build web apps, websites and games connected directly to the Nimiq blockchain with just a script tag and a few lines of javascript. This makes the integration of Nimiq in the existing “Web 2.0” way easier compared to other cryptocurrencies.
  • If you are a web developer and want to integrate Nimiq you don’t have to bother yourself with maintaining a node, SPV security or intermediaries either. Everything will run directly and in a decentralized manner in the user web browser, in short it is completely serverless.

That’s it for browser nodes and instant consensus, in the next article we will talk about two magical Nimiq apps: the Keyguard and the Hub.

--

--