22 Junho 2021 19:42

Dificuldade de criptomoeda

Qual é a dificuldade de criptomoeda?

A dificuldade da criptomoeda é uma medida de quão difícil é extrair um bloco em um blockchain para uma criptomoeda específica. Uma alta dificuldade de criptomoeda significa que é necessário um poder de computação adicional para verificar as transações inseridas em um blockchain – um processo chamado mineração.

A dificuldade da criptomoeda é um parâmetro que o bitcoin e outras criptomoedas usam para manter estável o tempo médio entre os blocos à medida que o poder de hash da rede muda. A dificuldade da criptomoeda é importante, pois uma dificuldade elevada pode ajudar a proteger a rede blockchain contra ataques maliciosos.

Principais vantagens

  • A dificuldade da criptomoeda é uma medida de quão difícil é extrair um bloco em um blockchain para uma criptomoeda específica.
  • Uma alta dificuldade de criptomoeda significa que é necessário um poder de computação adicional para verificar as transações inseridas em um blockchain.
  • Quanto maior a dificuldade necessária para criar um bloco, aumenta a segurança de uma rede de criptomoedas, pois os invasores precisam de enormes recursos para assumir o controle.

Compreendendo a dificuldade de criptomoeda

Bitcoin e outras criptomoedas que usam  blockchains de prova de trabalho são mantidas durante o processo de mineração. Os mineiros verificam as transações que são feitas em um blockchain e desempenham as funções de auditores para evitar fraudes e garantir a legitimidade das transações. A mineração foi concebida pelo fundador do bitcoin,  Satoshi Nakamoto.

Nesse sistema, os mineiros – que executam o software da criptomoeda em seus computadores – competem para encontrar um novo bloco, adicionando o lote mais recente de dados de transação à cadeia. Quando transações suficientes foram verificadas, um novo bloco é adicionado ao blockchain. Os mineiros podem receber uma taxa por seus esforços, mas existem outros requisitos antes que um mineiro possa receber uma compensação, se houver. A extensão do poder de computação necessária para extrair um bloco é representada pela dificuldade de criptomoeda. O tempo que leva para encontrar um novo bloco está sujeito ao nível de dificuldade da criptomoeda e chance aleatória.

Para medir a dificuldade de criptomoeda de um novo bloco, é importante entender o poder do hash, que representa o poder computacional combinado usado para minerar e processar as transações no blockchain.

Hashes aleatórios

Um hash é um código alfanumérico usado para representar palavras ou dados. Os mineiros pegam um lote de dados de transação e os executam por meio de um algoritmo de hash, uma função unilateral que – dado um determinado conjunto de dados – sempre produzirá a mesma saída, mas cuja saída não pode ser revertida para mostrar os dados originais. Algoritmos de hash são usados ​​para criar esses códigos de hash aleatórios. Antes que novos dados possam ser adicionados a um blockchain, os mineiros devem competir para produzir um hash que seja menor ou igual a um valor numérico chamado hash de destino.

Os mineiros realizam o processo de hash alterando um único valor, chamado nonce – ou um número usado uma vez – e cada vez que o nonce é alterado, um novo hash é criado com seu próprio conjunto de números. Não há como prever o que será um hash e, como cada conjunto de dados tem apenas uma saída para uma determinada função de hash, os mineiros devem repetir o processo de adicionar um novo nonce aos dados até que atendam ao requisito de hash.

Dificuldade de criptomoeda

O requisito que um hash deve atender corresponde à dificuldade. Um hash válido deve estar abaixo de um determinado valor de destino definido automaticamente (e ajustado periodicamente) pelo protocolo da criptomoeda. Quanto menor o valor alvo, mais repetições da função hash um minerador deve passar para obter um resultado aceitável – em outras palavras, maior a dificuldade. Um minerador pode, em teoria, ter sorte e obter um hash válido para um determinado bloco na primeira tentativa. No entanto, com o tempo, a maior dificuldade significa que os mineiros devem passar por mais nonces  por bloco, em média.

Indivíduos e organizações contribuem com seu poder computacional por meio de suas plataformas de mineração para processar os dados e produzir os hashes. O poder de hash de uma rede de criptomoeda representa as taxas de hash totais de todas as plataformas de mineração. A taxa de hash é o número de hashes que podem ser calculados por segundo.

Como cada hash é criado aleatoriamente, podem ser necessários milhões de palpites ou hashes antes que o requisito de hash alvo seja atendido e novas moedas de criptomoeda sejam cunhadas para o minerador bem-sucedido. Só então as transações são adicionadas a um novo bloco dentro do blockchain. De certa forma, o processo de hashing é semelhante a um sistema de loteria. Como resultado, novas moedas são emitidas por meio desse processo de mineração.



Quanto mais alta a taxa de hash, mais difícil será para um fraudador obter o controle do blockchain, pois mais potência de hash é necessária. Em outras palavras, quanto maior a dificuldade, mais segura é a rede.

Benefícios da dificuldade de criptomoeda

Alguém pode se perguntar por que os participantes de uma rede estabeleceriam uma dificuldade maior de criptomoeda se o resultado significasse os mineiros repetindo a mesma função indefinidamente. Existem dois benefícios principais para a dificuldade de criptomoeda.

Uma taxa constante de novos blocos

O white paper bitcoin de Satoshi Nakamoto explica como a dificuldade da prova de trabalho ajuda a gerar uma produção estável de novos blocos adicionados ao blockchain.

“Para compensar o aumento da velocidade do hardware e o interesse variável na execução de nós ao longo do tempo, a dificuldade de prova de trabalho é determinada por uma média móvel visando um número médio de blocos por hora. Se eles forem gerados muito rápido, a dificuldade aumenta. ”

Bitcoin é projetado para adicionar um novo bloco ao blockchain a cada 10 minutos, em média. Outras criptomoedas visam blocos mais frequentes; litecoin, por exemplo, visa 2,5 minutos. O problema é que a quantidade de poder de computação que os mineradores da rede controlam coletivamente pode variar enormemente.

Quando Satoshi Nakamoto extraiu o primeiro bloco, havia apenas uma máquina na rede – provavelmente um simples laptop ou desktop. Hoje, há uma série de fazendas ASIC do tamanho de um depósito. ASICs são máquinas projetadas especificamente para limpar as funções hash o mais rápido possível.

Para garantir que a rede produza um novo bloco a uma taxa média constante, o software é configurado para ajustar automaticamente o hash de destino para cima ou para baixo, o que resulta em dificuldade menor ou maior, respectivamente. Quando Nakamoto extraiu o bloco de gênese, a dificuldade do bitcoin era uma delas.

Segurança de rede

A taxa geral de hash fornece informações sobre a segurança de uma rede de criptomoeda, pois os fraudadores ou malfeitores precisariam superar o poder total do hash da rede para assumir o controle de um ataque malicioso. Computadores especialmente projetados são usados ​​para executar funções de hashing, que são capazes de fazer trilhões de suposições a cada segundo para resolver o problema de hashing.

Quanto maior a dificuldade de criptomoeda, mais suposições ou hashes são necessários para atingir o requisito de hash de destino. Como resultado, esse processo torna muito difícil e caro para os invasores obterem o controle majoritário – chamado de 51% maioria – de uma rede blockchain.

Exemplo de dificuldade de criptomoeda

Em 2 de abril de 2021, a dificuldade de criptomoeda para bitcoin era de 23,14 trilhões. Se compararmos a mudança na dificuldade, podemos ver que em 1º de abril de 2018, a dificuldade do bitcoin era de 3,51 trilhões.

O gráfico abaixo mostra a mudança de dificuldade do bitcoin ao longo dos anos: