To understand what cryptocurrency complexity is, we must first take a quick look at how Proof-of-Work blockchains function. Such systems are supported by a mining account, with miners competing against each other for a limited reward per block. They must solve a cryptographic problem, the complexity of which increases as the power of the network increases.
As the cryptocurrency grows in popularity, the number of computers participating in its network increases. This leads to an increase in the hash power of the network, then there is an aggregate computing power that is used for mining and transaction processing in the blockchain. You can learn more about mining and hashrate from our articles on these topics.
Cryptocurrency difficulty is a measure of how long and how difficult it is to solve a complex cryptographic puzzle and thus mine a block. Mining difficulty is very important as it ensures a constant supply rate.
High complexity means that mining the same same number of blocks requires more computing power. It also means that the network is more secure against attacks.
DIFFICULTY ADJUSTMENT
Each block in the blockchain is generated at a certain speed, which is determined by the blockchain protocol. This rhythm must remain constant. That is why bitcoin and other cryptocurrencies use this parameter to maintain a stable average time between blocks when the hashpower of the network in question changes. The difficulty of mining in the network increases and over time and decreases as it depends on the number of participating miners.
In the case of Ethereum, it is automatically adjusted to keep the processing time of one block at the level of about 15 seconds. Such adjustments can be both increasing and in side down, depending on the number of participating miners and their cumulative hash power.
Miners with large computing power can break the average time of 15 seconds. Without this adjustment, a miner with sufficient processing power could mining a large number of blocks. To avoid this, the complexity of the math problem being solved is increased and the block time is stabilized at an average of 15 seconds.
For example, if the Ethereum network generates new blocks in less than 15 seconds, the difficulty is automatically adjusted upwards. If on the contrary, it generates blocks more slowly than it would would be, then there is more than 15 seconds, then mining difficulty is reduced.