Miga Labs is a research group specialized in next-generation Blockchain technology, focused on consensus protocols and p2p networks.
Miga Labs is a research group specialized in next-generation Blockchain technology, focused on consensus protocols and p2p networks.

Subscribe to migalabs

Subscribe to migalabs
Share Dialog
Share Dialog

Analysis of Ethereum2 Consensus Clients
Ethereum is moving towards a major upgrade that aims at making the network more sustainable, with the transition from Proof-of-Work (PoW) to Proof-of-Stake, and more scalable with the introduction of data sharding. This process started with the deployment of the Beacon Chain in December 2020 and the next step called the Merge which is expected to happen later this year. In this article we look at how far the Ethereum 2 ecosystem has progressed in this transition and how ready is to move to th...

Validators or value-takers?
Diving into the pools and dark forests of PoS Ethereum“The panda will never fulfill his destiny, nor you yours, until you let go of the illusion of control.” - Master OogwayIntroductionIt is not often that fate provides us blockchain analysts with an event as pivotal and rich in data as the Ethereum merge. For this reason, we wasted no time merging (pun intended) minds from Metrika and Miga Labs to assemble a crack team of analysts and engineers ready to delve into this fount of data. Our int...

CL Client Rewards Analysis
When it comes to running a validator in the Ethereum ecosystem, especially after The Merge, it is important to measure its performance, as this will directly impact how many rewards it obtains. Therefore, we have analyzed how many rewards validators obtain, in order to get some hints of their performance in the network.IntroductionFrom a hardware perspective, running a validator in the Ethereum ecosystem requires, nowadays, two different clients. The execution layer (EL) client is in charge o...

Analysis of Ethereum2 Consensus Clients
Ethereum is moving towards a major upgrade that aims at making the network more sustainable, with the transition from Proof-of-Work (PoW) to Proof-of-Stake, and more scalable with the introduction of data sharding. This process started with the deployment of the Beacon Chain in December 2020 and the next step called the Merge which is expected to happen later this year. In this article we look at how far the Ethereum 2 ecosystem has progressed in this transition and how ready is to move to th...

Validators or value-takers?
Diving into the pools and dark forests of PoS Ethereum“The panda will never fulfill his destiny, nor you yours, until you let go of the illusion of control.” - Master OogwayIntroductionIt is not often that fate provides us blockchain analysts with an event as pivotal and rich in data as the Ethereum merge. For this reason, we wasted no time merging (pun intended) minds from Metrika and Miga Labs to assemble a crack team of analysts and engineers ready to delve into this fount of data. Our int...

CL Client Rewards Analysis
When it comes to running a validator in the Ethereum ecosystem, especially after The Merge, it is important to measure its performance, as this will directly impact how many rewards it obtains. Therefore, we have analyzed how many rewards validators obtain, in order to get some hints of their performance in the network.IntroductionFrom a hardware perspective, running a validator in the Ethereum ecosystem requires, nowadays, two different clients. The execution layer (EL) client is in charge o...


<100 subscribers
<100 subscribers
Resilience is very important for the correct functioning of a system. There is no system 100% reliable in the software and electronic field. Having such complex technology like nowadays’ also implies that there will be many points of failure. From the programming frameworks to human coding errors, critical systems need to take care of this to have the minimum risk possible.
Once a program has been thoroughly tested and works well for a given task, it will continue to do so in the future as long as all of the following factors remain the same:
The input
The environment
The expected result (user requirement)
However, this is usually not the case. Every time a rocket is launched to space, the environment changes: different winds, humidity levels, flying objects, air density, human errors, etc. Therefore, we cannot assume that the system will always output the expected results. The same happens in the blockchain ecosystem. Systems evolve and it is important to always keep testing the reliability of new systems being developed.
In the Miga Labs group, we focus on blockchain fault-tolerance to ensure that the performance of a critical system remains the same after a failure in one component. The main objective is that the correct execution of the whole system does not fall when a single component fails. This is strongly related to N-version programming, a paradigm where several independent teams develop a software functionality using the same initial specification. A good example of this concept is NASA’s Space Shuttle. Flight control operations and necessary guidance calculations are performed by 4 different computers, each one of them checking others’ execution and looking for errors.
The main objective is that the correct execution of the whole system does not fall when a single component fails.
Blockchain technology runs on software that is relatively young and prone to errors. Given that the blockchain software usually locks billions in value, it is of critical importance to test and guarantee the robustness of these systems. One way of doing that is making sure that there are different implementations of every protocol specification so that if a bug is found in one implementation, the system and the community can rely on the other one.

In the case of Ethereum2, there are five main consensus layer clients used to interact with the p2p network. Currently, over 60% of the nodes use the same client, which is dangerous for the network. Therefore, the community is making efforts to make the public aware of this issue and revert the situation to have a more diverse and decentralized ecosystem. As players in the blockchain space, we all share the responsibility of disclosing issues when we find them and actively participate to solve them. Therefore, we at Miga Labs would like to make a call to the Ethereum Staking community to make an effort to diversify clients.
Therefore, we at Miga Labs would like to make a call to the Ethereum Staking community to make an effort to diversify clients.
Every human-made system from any domain is vulnerable to failures and errors, from space rockets to blockchain wallets. It is critical to constantly test and measure the reliability of these systems. One way to guarantee resilience is to have multiple components replicating the same functionalities. In the blockchain world, this translates to client diversity. Therefore, it is of paramount importance to work toward a well-balanced blockchain software ecosystem.
Resilience is very important for the correct functioning of a system. There is no system 100% reliable in the software and electronic field. Having such complex technology like nowadays’ also implies that there will be many points of failure. From the programming frameworks to human coding errors, critical systems need to take care of this to have the minimum risk possible.
Once a program has been thoroughly tested and works well for a given task, it will continue to do so in the future as long as all of the following factors remain the same:
The input
The environment
The expected result (user requirement)
However, this is usually not the case. Every time a rocket is launched to space, the environment changes: different winds, humidity levels, flying objects, air density, human errors, etc. Therefore, we cannot assume that the system will always output the expected results. The same happens in the blockchain ecosystem. Systems evolve and it is important to always keep testing the reliability of new systems being developed.
In the Miga Labs group, we focus on blockchain fault-tolerance to ensure that the performance of a critical system remains the same after a failure in one component. The main objective is that the correct execution of the whole system does not fall when a single component fails. This is strongly related to N-version programming, a paradigm where several independent teams develop a software functionality using the same initial specification. A good example of this concept is NASA’s Space Shuttle. Flight control operations and necessary guidance calculations are performed by 4 different computers, each one of them checking others’ execution and looking for errors.
The main objective is that the correct execution of the whole system does not fall when a single component fails.
Blockchain technology runs on software that is relatively young and prone to errors. Given that the blockchain software usually locks billions in value, it is of critical importance to test and guarantee the robustness of these systems. One way of doing that is making sure that there are different implementations of every protocol specification so that if a bug is found in one implementation, the system and the community can rely on the other one.

In the case of Ethereum2, there are five main consensus layer clients used to interact with the p2p network. Currently, over 60% of the nodes use the same client, which is dangerous for the network. Therefore, the community is making efforts to make the public aware of this issue and revert the situation to have a more diverse and decentralized ecosystem. As players in the blockchain space, we all share the responsibility of disclosing issues when we find them and actively participate to solve them. Therefore, we at Miga Labs would like to make a call to the Ethereum Staking community to make an effort to diversify clients.
Therefore, we at Miga Labs would like to make a call to the Ethereum Staking community to make an effort to diversify clients.
Every human-made system from any domain is vulnerable to failures and errors, from space rockets to blockchain wallets. It is critical to constantly test and measure the reliability of these systems. One way to guarantee resilience is to have multiple components replicating the same functionalities. In the blockchain world, this translates to client diversity. Therefore, it is of paramount importance to work toward a well-balanced blockchain software ecosystem.
No activity yet