paint-brush
Ethereum Basics - And How It Differs From Other Blockchainsby@kshitiz
493 reads
493 reads

Ethereum Basics - And How It Differs From Other Blockchains

by Kshitiz.ethDecember 25th, 2021
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

The Consensus Algorithm runs on a consensus algorithm called Proof of Work. It is the most decentralized consensus algorithm because, in theory, it is resistant to Sybil attacks. In practice, a group of miners can join forces to increase their influence over the network. This is a known attack and is called a 51% attack. However, there are ways to prevent attacks like this by incentivizing miners to work together by paying them more per block. This has its own problems because it increases the total cost of running a node.
featured image - Ethereum Basics - And How It Differs From Other Blockchains
Kshitiz.eth HackerNoon profile picture


To understand why this is the case, let's look at the different aspects of the Ethereum blockchain:

  1. Its Consensus Algorithm

  2. Its Virtual Machine

  3. Its Address Format

  4. Its Data Transport

  5. Its Data Structure

  6. Its Application Programming Interface


Next, we'll examine the challenges of each of these areas and what the future holds in terms of web3 compatibility.


  1. Consensus

The Ethereum blockchain runs on a consensus algorithm called Proof of Work. Proof of Work is based on the idea that the computational power you can bring to the network is directly proportional to your influence over it.

Because the cost of acquiring this power is high, i.e. the purchase of computer equipment and electricity, it should come as no surprise that those who have more power have more influence.

As a result, those who have more influence are more likely to have their transactions confirmed by other nodes.

But this influence can be manipulated. A Sybil attack is when an individual or group creates multiple identities in order to gain more influence over the network.

The good news is that Proof of Work is the most decentralized consensus algorithm because, in theory, it is resistant to Sybil attacks. However, in practice, it is not.

For example, a group of miners can join forces to increase their influence over the network.

This is a known attack and is called a 51% attack. Now, there are ways to prevent attacks like this. For example, you can incentivize miners to work together by paying them more per block.

However, this has its own problems. For instance, it increases the total cost of running a node.

If a node can't afford the higher rewards, it will likely be forced to drop out of the network.

This is called the “nothing at stake problem”.

And the good news is that one day there will be a solution for it.


  1. Virtual Machine

The virtual machine is the engine that runs smart contracts. It is the software that validates and executes the code that makes the virtual machine run. The Ethereum virtual machine is a complex piece of software. It's not just a simple text interpreter for Ethereum smart contracts.

It is more like a giant knowledge database that stores the history of all transactions since Ethereum's inception. It does this by taking the state of the blockchain and keeping track of each transaction and the state of the blockchain at the time of the transaction.

So, when a smart contract runs, the VM is able to access any and all of the data that has happened since its inception. This makes it exceedingly difficult to hack the blockchain.

It is like trying to hack into a giant database. The security of the Ethereum blockchain is based on this technology.

It is a smart contract virtual machine that is Turing Complete.

Turing Complete is a fancy way of saying that the machine is able to execute any conceivable program. This means that it can create and run any app.

Because of this, the Ethereum virtual machine is the most advanced and secure virtual machine in existence.

However, as you can probably guess, it is also extremely complicated.


  1. Address Format

The Ethereum address format is different from the traditional address format.

For example, Bitcoin addresses are based on a public key and a hash of the public key.

In contrast, Ethereum addresses are based on a combination of a public key, a private key and a nonce.

The Ethereum address format

The public key is the address that you share with the world.

The private key is the one that you keep to yourself and never share.

The nonce is technically a nonce and not a key, but it contains the information that is used to derive your private key.


  1. Data Transport

The Ethereum blockchain is not just a data structure. It is also a data transport. This means that it is able to communicate with the outside world. This is done by using Application Programming Interfaces (APIs) and Web3.

Web3 is a set of libraries that allows the blockchain to communicate with applications and the outside world.

This is an incredibly powerful feature.

These Web3 libraries allow us to create all kinds of applications that interact with the blockchain, such as wallets, exchanges, games, and other apps.

However, because Web3 was built on top of HTTP and JSON, it has its own set of limitations.


  1. Data Structure

All of the information that the blockchain stores is stored in the form of data structures called blocks. Each block contains a set of information that is used for different purposes.

For example, the block contains information about transactions that have occurred on the blockchain. This includes the value and the address of the sender and the receiver.

It also includes the state of the blockchain at the time of the transaction and the nonce of the sender.

The nonce is a variable that is used to derive a private key from the public key that is contained in the block. The block also contains information about the miners and the number of confirmations for each block. The block also contains the hash of the previous block.

And this hash is used to confirm the validity of the block. The block also contains the root of a Merkle Tree. This tree contains the state of the blockchain at the time of each block.

And it is used to determine the state of the blockchain at the time of the block.

Finally, the block contains the timestamp at which the block was created. And this is used to determine when the block was created. The block also contains a nonce. This nonce is used to generate the private key. And the private key is used to sign the block.

Technically, the block is signed by the public key, which is the address of the sender.

The private key is the key that is used to decrypt the message that the public key sends to the blockchain.

So, when a private key is used to sign a block, it is just sending a message to the blockchain.

This message is the signature of the block. However, the signature is not stored on the blockchain. This is because the signature can be used to recreate the private key. So, instead of storing the signature, the message is stored in the block. The format of a block in the Ethereum blockchain


  1. Application Programming Interface

Because the blockchain uses Web3 and HTTP, it can communicate with applications through an application programming interface (API). This is a set of functions that allow you to control the blockchain.

For example, the Web3 API can be used to control many aspects of the blockchain. You can create, deploy, and execute smart contracts using this API. You can also use the API to interact with the blockchain and its data. This means that you can query the blockchain and retrieve data from it.

The data you retrieve can then be used by applications. For example, you can use this API to create a wallet. This means that you can store your Ether in a smart contract and then query the blockchain to retrieve it. This is how the MyEtherWallet works.

An example of the MyEtherWallet

You can also use the API to create applications that interact with the blockchain.

For example, you can create an Ethereum exchange that will allow you to buy and sell Ether.

You can also create an Ethereum game and use the API to create an API that allows you to interact with it.

As you can see, the API is incredibly powerful and it has enabled a whole new era of decentralized blockchain applications. But the API is also incredibly complicated.

And the more features that are added to the API, the more complicated it becomes.

This means that not all applications can use the API. And this is a problem.

In the next section, we will see how this complexity affects future compatibility with the Ethereum blockchain.


Ethereum's Future

There is no doubt that Ethereum is the most powerful public blockchain in existence.

And it is also the most popular.

In fact, it is the only blockchain that can be used to create decentralized applications.

However, it may not be the most reliable.

This is because Ethereum suffers from some serious scalability issues.

Right now, the blockchain can only handle about 20 transactions per second.

And this number is only going to get worse as the blockchain grows.

Therefore, it may not be the most scalable blockchain either.

That being said, there are solutions to these problems.

For example, the Ethereum Foundation recently released a new blockchain called Ethereum 2.0.

This new blockchain will solve Ethereum's scalability issues by sharding the blockchain.