Qual é a dificuldade da criptomoeda?
Dificuldade é um parâmetro que o bitcoin e outras criptomoedas usam para manter o tempo médio entre os blocos estável à medida que o poder de hash da rede muda.
Dificuldade em criptomoeda explicada
Bitcoin e outras criptomoedas que usam blockchains de prova de trabalho são mantidas por meio de um processo chamado mineração. Nesse sistema, os mineradores - computadores executando o cliente de software da criptomoeda - competem para encontrar um novo bloco, adicionando o lote mais recente de dados de transações à cadeia. Eles recebem taxas e (em alguns casos) uma recompensa de novos tokens em troca.
O tempo necessário para encontrar um novo bloco está sujeito a dois fatores: chance aleatória e dificuldade. Comece com uma chance aleatória. Os mineradores pegam um lote de dados de transação e os executam por meio de um algoritmo de hash, uma função unidirecional que - dado um conjunto específico de dados - sempre produzirá a mesma saída, mas cuja saída não pode ser revertida para mostrar os dados originais. Não há como prever o que será um hash. Um novo bloco é encontrado quando o hash atende a um determinado requisito. Como cada conjunto de dados possui apenas uma saída para uma determinada função de hash, os mineradores devem adicionar um nonce - um "número usado uma vez" - aos dados para obter um novo hash. Se o resultado ainda não atender ao requisito, o mineiro tenta novamente com um novo nonce.
O requisito que um hash deve atender corresponde à dificuldade: um hash válido deve estar abaixo de um determinado valor alvo definido automaticamente (e ajustado periodicamente) pelo protocolo da criptomoeda. Quanto menor o valor alvo, mais repetições da função hash um mineiro deve passar para obter um resultado aceitável - em outras palavras, maior a dificuldade. Um mineiro pode, em teoria, ter sorte e obter um hash válido para um determinado bloco na primeira tentativa: no entanto, com o tempo, uma dificuldade maior significa que os mineradores precisam conectar mais nonces por bloco, em média.
Que finalidade a dificuldade serve?
Por que definir uma dificuldade maior, se o único resultado prático é que os mineradores devem repetir mais a mesma função? O whitepaper sobre bitcoin explica:
"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 que visa um número médio de blocos por hora. Se eles são gerados muito rapidamente, a dificuldade aumenta. "
O Bitcoin foi projetado para adicionar um novo bloco ao blockchain a cada 10 minutos, em média. (Outras criptomoedas visam blocos mais frequentes; a 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 laptop ou desktop simples. Atualmente, existem várias fazendas ASIC do tamanho de um armazém (ASICs são máquinas projetadas especificamente para executar as funções de 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 alvo para cima ou para baixo, o que resulta em dificuldade menor ou maior, respectivamente. Quando Nakamoto minou o bloco de gênese, a dificuldade do bitcoin foi 1.
Para verificar a dificuldade do bitcoin em tempo real, você pode consultar este gráfico.
No final de julho de 2019, a dificuldade é de 9, 013 trilhões. O gráfico abaixo mostra a mudança de dificuldade do bitcoin ao longo do tempo:
