decen{BR}

Entenda PoW — O que são algoritmos Proof of Work?

Proof of Work (PoW) é um mecanismo de consenso criptograficamente seguro que garante que os participantes da rede, que não necessariamente se conhecem entre si, são capazes de provar que realizaram uma certa quantidade de trabalho computacional.

Uma das características mais importantes desse tipo de sistema, é que o Proof of Work (PoW) o não requer que os participantes da rede confiem uns nos outros. Tratam-se de sistemas trustless – ou sistemas sem requisito de confiança entre as partes.

Os resultados para um desafio PoW podem ser submetidos anonimamente sem comprometer a integridade do processo.

HashCash

O PoW geralmente é empregado para atrasar os processos com força, garantindo que ninguém possa abusar do tempo de um sistema.

A ideia foi originalmente desenvolvida para aumentar o custo de envio de spam por e-mail, exigindo que cada mensagem inclua um cabeçalho especial mostrando que custou uma certa quantia a ser enviada.

Este sistema, chamado HashCash, foi desenvolvido por Adam Back muitos anos antes do whitepaper Bitcoin ser publicado.

A ideia HashCash acabou por encontrar o seu caminho para o mundo das criptomoedas através do trabalho de Satoshi Nakamoto e os desenvolvedores originais Bitcoin Core (Hal Finney, Nick Szabo, Peter Wuille, entre outros).

Ao exigir provas de que os mineiros tinham realizado uma certa quantidade de trabalho, a rede Bitcoin foi capaz de manter uma quantidade mínima de tempo entre os blocos.

Consenso descentralizado

O consenso descentralizado obtido via Proof of Work (PoW) é considerado um dos principais avanços, se não o mais importante, introduzido pelo Bitcoin.

Na verdade, o consenso PoW é muitas vezes chamado de consenso de Nakamoto como uma homenagem à primeira implementação bem-sucedida.

Tentativas anteriores de criar um livro contábil distribuído confiável não conseguiram encontrar uma solução para o problema de partes desconhecidas e não confiáveis concordarem com um consenso contábil.

Mineração Criptomoeda

Em criptomoedas, Proof of Work (ou PoW para breve) garante que todos estão contribuindo com uma certa quantidade de energia de mineração para a rede. Como o nome indica, o algoritmo força todos os participantes a provar que eles fizeram um certo número de tentativas de resolver o bloco atual.

Ao exigir que a solução de um bloco seja um hash com uma certa quantidade de prefixo zeros, é possível calcular a quantidade média de cálculos necessários por bloco. Essa quantidade é ajustada automaticamente para forçar o sistema a encontrar blocos em intervalos de tempo aproximadamente iguais.

Calculando a dificuldade de resolver um bloco contra a potência computacional de rede estimada, é possível ajustar a rede para encontrar um bloco em intervalos específicos.No Bitcoin Core isso é sintonizado para 10 minutos por bloco em média.

Loteria de mineração

A mineração de Bitcoin é essencialmente uma loteria.

Em teoria, qualquer um poderia resolver um hash de bloco por mero acaso.

O que o Proof of Work (PoW) faz é garantir que o caso médio exija uma certa quantidade de trabalho a ser realizada. Este mecanismo mantém os blocos Bitcoin sintonizados a aproximadamente 10 minutos de distância.

Alguns blocos são encontrados dentro de poucos minutos, enquanto outros demoram um tempo mais. O caso médio permanece muito perto de 10 minutos, mesmo com o rápido desenvolvimento de hardware e software de mineração avançados.

Preocupações ambientais

PoW é considerado ineficiente de energia devido às imensas quantidades de energia necessárias para encontrar a solução para um único bloco Bitcoin (aproximadamente 100 megawatts por moeda).

Isto é devido à natureza de auto-ajuste do Bitcoin, onde a “dificuldade de rede” aumenta com a quantidade de poder computacional atualmente tentando minerar um bloco.

Dificuldade

Bitcoin é capaz de se auto-ajustar para manter um período médio de 10 minutos entre os blocos.

Isto é conseguido por meio de um parâmetro de rede chamado dificuldade de rede.

Dificuldade mede a quantidade de mineiros de trabalho deve provar, a fim de considerar um bloco resolvido. Cada zero necessário para o prefixo de um hash multiplica dificuldade por 256 (2).

Bit a bit, cada zero dobra a quantidade de trabalho necessária em média (um pouco pode ter 2 estados). Uma vez que cada dígito zero contém 8 bits, exigir que cada bit seja zero multiplicará toda a dificuldade de hash por 2.

Ao usar este método engenhoso, simplesmente escolher o número de prefixo zero bits para hashes de bloco define a dificuldade de rede desejada. Se os blocos forem resolvidos muito rapidamente, o Bitcoin auto-ajusta a dificuldade de aumentar o tempo entre os blocos até que esteja perto de 10 minutos novamente.

Os mesmos princípios foram copiados, com pequenas variações, do Bitcoin pela maioria das criptomoedas baseadas em PoW. Estes incluem Litecoin, Monero, Aeon, Dogecoin, todos os forks Bitcoin* e dezenas de outros.

Referências

O que é e como funciona o Proof of Work?

Como funciona o Proof of Work na blockchain do Bitcoin

Sobre @ Autor(@)
Publicado por decen{BR} - decen{BR} é nosso avatar coletivo, @ qual usamos na editoria do site. Normalmente, os conteúdos publicados pel@ decen{BR} são traduções de nosso site parceiro crypto.bi - (ou contribuições indiretas de um de seus autores). Confira nossa página Sobre (menu lateral) para conhecer a nossa equipe! Saiba Mais o Decen{BR}