Home>Blogs>
Ethereum Algorithm

Ethereum Algorithm

Untitled-design--2-.jpg

Whether you’re just entering the cryptocurrency world, or you’ve been in it for years, I’m sure you’ve heard of Ethereum.

This decentralized open-source technology is responsible for the creation of Ether (ETH), the second most popular crypto coin in the world. The Ethereum protocol powers thousands of blockchain applications.

If you’re interested in the more technical side of Ethereum you may wonder, what is the Ethereum algorithm and how does it work?

Well, Ethereum is a memory-hard algorithm. This means that it needs to read from local memory. Its reading latency will differ depending on the kind of memory used to store a Directed Acyclic Graph (a.k.a. DAG).

A DAG is simply a data structuring tool to record transactions. If a blockchain is made from blocks, DAGs are made from vertices and edges, making the system look more like a graph instead of a chain.

So, here’s how it works:

  • The algorithm requires to generate a DAG on each Epoch
  • With each Epoch, a block number will be generated
  • The block number will provide info to define the size of the DAG

As of today, the size of the DAG is around 5 gigabytes (5GB). It will continue to grow as the Epoch number increases.

Main Algorithm Steps

Here are the main steps of the Ethereum Algorithm:

Keccak sha3 512

//Main rounds iterate over 64 times

for( access_count = 0; access_count < 64; access_count++){

    Read from memory 128 bytes

    fnv_hash function

}

Compression mix function

Sha3 256 hash function

I hope this blog post has been helpful for you and that you now have gained some insight into the functioning of the Ethereum Algorithm. If you need help with your FPGA project, feel free to review the FPGA design and development services that we offer.

AUTHOR

Martin Dejnicki
Martin Dejnicki

Martin is a digital product innovator and pioneer who built and optimized his first website back in 1996 when he was 16 years old. Since then, he has helped many companies win in the digital space, including Walmart, IBM, Rogers, Canada Post, TMX Group and TD Securities. Recently, he worked with the Deploi team to build an elegant publishing platform for creative writers and a novel algorithmic trading platform.