Proof of work (POW): o que é e como funciona?

3 de outubro de 2021, por Jaíne Jehniffer

Tempo de leitura médio: 7 min, 53 seg


O proof of work é um mecanismo de consenso usado nas aprovações das transações, por várias criptomoedas no processo de mineração.

Dessa maneira, para que cada bloco seja aceito na rede, os mineradores precisam concluir o proof of work e verificarem as transações do bloco.  

Além disso, o proof of work contribui com a segurança da rede ao impedir o gasto-duplo. Sendo que quanto maior for a rede, maior é a segurança proporcionada pelo proof of work, já que em caso de fraude a pessoa precisa fraudar o bloco atual e os anteriores.

O que é proof of work?

O proof of work (POW) ou prova de trabalho, é um tipo de mecanismo de consenso utilizado na mineração de criptomoedas, como o Bitcoin e o Ether. O proof of work usado pelo Bitcoin cumpre tanto a função de consenso na rede, quanto garante a segurança.

O consenso é usado nas aprovações das transações, já a segurança proporcionada pela prova de trabalho evita o chamado problema de gasto-duplo. O POW, da maneira em que conhecemos atualmente, foi desenvolvido por Satoshi Nakamoto, juntamente com o Bitcoin.

A inspiração para a criação do proof of work, deriva de um mecanismo chamado Hashcash, desenvolvido pelo criptógrafo britânico Adam Back, em 1997. O objetivo desse mecanismo era combater o envio de e-mail em massa, isto é, os spams.

Proof of work (POW): o que é e como funciona

Criptonizando

Em resumo, no sistema desenvolvido por Back, cada vez que um e-mail era enviado, o remetente tinha que realizar uma verificação computacional antes do envio. Para a pessoa que enviava somente uma mensagem, a verificação era rápida. No entanto, quanto mais e-mails, a pessoa enviasse, mais difícil se tornaria a verificação.

Portanto, por meio do mecanismo Hashcash, o envio de spams era dificultado. Antes disso, em 1993 já tinha sido publicado um artigo de Cynthia Dwork e Moni Naor onde era vinculado às funções da memória para combater o spam.

Basicamente, o objetivo era introduzir o método que combatesse os spams enviados usando a energia do computador. Já em 1999, Markus Jakobsson e Ari Juels publicaram o artigo intitulado proof of work and bread pudding protocols (Prova de trabalho e protocolos de pudim de pão), onde o termo proof of work foi introduzido.

Mecanismo de consenso

Atualmente, a blockchain do Bitcoin realiza mais de 250 mil transações por dia, uma das redes mais usadas no mundo. Entretanto, as transações não são instantâneas, já que para ser efetivada, cada transação deve ser aprovada na blockchain, por meio de um processo que demora cerca de 10 minutos. 

O problema é que, para que as transações sejam confirmadas, elas devem ser aprovadas pelos membros da rede. Sendo que os nós completos ou full nodes são alguns dos membros que fazem a validação dessas transações. 

Proof of work (POW): o que é e como funciona

The Cap

Cada um dos nós conta com uma cópia da blockchain do Bitcoin e essas cópias ficam armazenadas em computadores que são atualizados em tempo real. Como a blockchain é pública, qualquer usuário pode fazer a verificação das transações e os nós podem ainda validar as transações.

A questão é que existem aproximadamente 10,5 mil nós no mundo e não existe nenhuma empresa ou pessoa que coordene o trabalho dos nós, já que o Bitcoin é descentralizado. Desse modo, o proof of work é o mecanismo usado para conseguir um consenso.

Hashes

Os nós iniciam uma comunicação, sempre que uma transação é realizada. Através dela as informações sobre a transação são transferidas e os outros nós fazem a verificação para determinar se a transação realmente aconteceu.

Se a transação for aprovada ela é enviada para a mempool, que funciona como um tipo de fila de espera das transações. Dessa maneira, quando chegar a vez da transação, ela será aprovada e inserida no bloco.

Nairametrics

Existe um identificador (chamado de hash) formado por números e letras em cada transação, que serve para confirmar a autenticidade da operação. Os blocos também contam com um hash que serve para identificar o conjunto de transações do bloco.

Além disso, cada bloco inserido na blockchain carrega o seu próprio hash e o hash do bloco anterior. Sendo assim, é por meio dos hashes que os mineradores e nós conseguem identificar se as transações fazem parte da sequência original da rede, proporcionando segurança.

Como funciona a segurança da rede?

O tipo de fraude mais comum que podem tentar na rede, é o do gasto-duplo. Em síntese, isso ocorre quando o mesmo usuário tenta gastar duas vezes o mesmo Bitcoin. Para impedir esse tipo de fraude e proporcionar segurança na rede é que o proof of work é utilizado.

Nesse sentido, na mineração por meio da prova de trabalho, o usuário deve provar que gastou uma certa quantidade de energia na criação do bloco. Essa energia é gasta com o poder computacional, o que exige um grande gasto de energia.

Inclusive, é por este motivo que as máquinas de mineração de Bitcoin gastam tanta energia e a mineração está se tornando cada dia mais um processo realizado somente por centrais especiais de mineração. Apesar disso, o POW permite que qualquer pessoa com poder computacional minere Bitcoins.

Jv driver

Na prática, a mineração de Bitcoins parece uma mistura entre caça ao tesouro e jogos de loteria. Isso porque, cada mineradora usa o seu poder de processamento para procurar o hash do bloco antes das outras. Quando uma encontra, ela sinaliza para o resto da rede e as outras máquinas passam a verificar o bloco apresentado.

As mineradoras utilizam o hash do bloco anterior como prova de que o bloco faz parte da rede, logo, o hash encontrado funciona como uma prova de que o minerador dedicou trabalho e poder computacional para encontrar o bloco.

Se o hash apresentado não estiver de acordo com o bloco anterior, o bloco minerado é descartado e se torna um bloco-órfão. Ou seja, esse bloco é isolado da rede pois é considerado como um bloco falso. Já o minerador que tentou encontrá-lo terá gasto em vão o seu poder computacional e energia.

Validação e recompensa

No processo de mineração ocorre a geração de um número aleatório chamado de nonce. Esse número é adicionado no final de cada bloco minerado juntamente com a hash do bloco.

Nesse sentido, o minerador tem a função de encontrar o valor do nonce, que será adicionado ao bloco com as demais informações. A procura do nonce funciona por meio da tentativa e erro, onde a máquina do minerador realiza diversos cálculos até encontrá-lo. Enfim, um bloco é composto por:

  • Hash do bloco;
  • Número nonce;
  • Informações aprovadas pelos nós.

Pymnts

Na prática, depois que a solução do POW é encontrada, o minerador criou um novo bloco. Logo, ele envia o bloco para os nós da rede que irão fazer a verificação individualmente. Mesmo que a verificação seja individual, os nós trabalham de maneira conjunta por meio da sua conexão com a blockchain.

Se os nós confirmarem que o bloco é autêntico, ele é adicionado na sequência da blockchain e a primeira transação no bloco irá resultar na criação de Bitcoins que serão enviados como recompensa ao minerador. Por outro lado, se algum dos nós identificar um indício de fraude, ele avisa ao resto da rede. Caso a fraude seja confirmada, o minerador não recebe sua recompensa.

O proof of work e a segurança do Bitcoin

O proof of work contribui com a segurança do Bitcoin, já que ele impede o gasto-duplo. Sendo que essa segurança tende a se elevar de acordo com o crescimento da rede. Sendo assim, quanto maior for a rede, maior será a segurança para os usuários. 

A blockchain do Bitcoin cresce um pouco mais a cada bloco adicionado, já que cada bloco adiciona aproximadamente 1MB de espaço na blockchain e cada bloco é minerado a cada 10 minutos. Dessa forma, hoje em dia é preciso de cerca de 330 gigabytes para armazenar a blockchain completa. 

Proof of work (POW): o que é e como funciona

Criptofacil

Nesse sentido, a rede Bitcoin é considerada bastante segura. Afinal de contas, para fraudar o bloco atual, a pessoa teria que fraudar todos os blocos anteriores antes que os fizessem a verificação através do proof of work. Além disso, como o Bitcoin é descentralizado, existem milhares de usuários em todo o mundo que estão de olho em tentativas de fraude.

Na prática, um fraudador precisaria reunir a metade mais um de todo o poder da rede para poder fraudar um bloco. Porém, como o Bitcoin é descentralizado e possui um grande poder, é muito improvável que uma pessoa consiga fazer isso.

Enfim, agora que você conhece o proof of work, não deixe de aprender sobre algumas das criptos disponíveis no mercado, tais como Dogecoin, Stellar, PeercoinBitcoin Cash, o que é? Mineração, diferenças entre BTC e como comprar

Imagens: Criptonizando, The Cap, Suno, Nairametrics, Jv driver, Pymnts e Criptofacil