O gasto duplo pode corroer toda a confiança em uma criptomoeda, e é por isso que tanto esforço foi feito para garantir que esse tipo de fraude não aconteça.

As transações de criptomoeda são seguras e confiáveis ​​graças à tecnologia blockchain. No entanto, como acontece com a maioria dos sistemas inovadores, o blockchain possui vulnerabilidades exploráveis, que podem levar a gastos duplos. Mas o que é gasto duplo e como ele pode ser evitado?

O que é gasto duplo?

O gasto duplo ocorre quando uma única entidade gasta o mesmo token de criptomoeda mais de uma vez. Isso é causado por uma falha nas moedas digitais que as torna facilmente reproduzíveis.

As informações na rede blockchain podem ser modificadas durante as transações, desde que certas condições sejam atendidas. Quando essas condições são satisfeitas, a alteração blocos de transações pode entrar no blockchain, permitindo que o perpetrador readquira tokens criptográficos gastos anteriormente.

Para entender melhor como isso acontece, aqui está uma descrição simplificada do processo. Quando uma transação é realizada em uma rede blockchain, digamos Bitcoin, ela cria um bloco que contém os dados da transação, os dados do bloco anterior e um carimbo de data/hora. O bloco possui um código criptografado chamado hash.

Crédito da imagem: White paper original do Bitcoin

O pessoas que mineram Bitcoin na rede Bitcoin em seguida, verifique a transação por meio de um algoritmo de consenso de prova de trabalho, feche o bloco e crie um novo bloco. O novo bloco contém o timestamp, o hash do bloco anterior e os novos dados da transação. Posteriormente, o minerador vitorioso recebe recompensas em bloco (BTC) por verificar o hash.

Para executar o gasto duplo com sucesso, o perpetrador precisa minerar um bloco secreto que ultrapasse a criação do bloco real. Para fazer isso, o perpetrador deve introduzir o bloco secreto antes do novo bloco para que a rede, enganado ao pensar que é o último conjunto do bloco crescente, adiciona o bloco falso ao crescente corrente. O perpetrador pode então recuperar os tokens criptográficos usados ​​anteriormente.

Embora o gasto duplo seja um fenômeno bem conhecido no espaço criptográfico, não há nenhum caso documentado. Isso porque a verificação de transações é um processo complexo que requer um tremendo poder computacional. Falsificar ou duplicar um bloco é intenso, pois os perpetradores devem trabalhar à frente de todos os outros mineradores na blockchain.

Por que o gasto duplo é um problema?

O gasto duplo é um insulto à segurança da rede blockchain. Acontece quando há uma fraqueza explorável.

Além disso, a rede blockchain deve ser segura e confiável. Se ocorrer um gasto duplo em uma rede de criptomoedas, isso cria desconfiança para esse criptossistema, desincentivando os investidores. E, eventualmente, o valor do token cairá.

Além disso, gastar em dobro é roubo digital. O hacker ganha enquanto outra pessoa na rede, geralmente um comerciante, perde. O perpetrador mantém a propriedade dos bens do comerciante e do token criptográfico.

Exemplos de ataques de gasto duplo

Existem diferentes formas de ataques de gasto duplo que os criminosos cibernéticos empregam. Aqui estão alguns deles:

51% de ataque

O ataque de 51% é a forma mais amplamente discutida de gasto duplo. Ocorre quando um minerador (ou um grupo de mineradores) controla a maioria (mais de 50%) do poder computacional validando transações na rede.

Quando isso acontece, eles podem ditar transações, criar novos blocos, recuperar criptomoedas já gastas e premiar tokens criptográficos. Isso lhes dá o poder de gastar moedas digitais em dobro.

O ataque de 51% é menos provável de ocorrer em criptomoedas mais estabelecidas, como o Bitcoin. Isso se deve ao grande número de mineradores na rede e ao dificuldade de hash. No entanto, criptomoedas com redes menores, como novas ou bifurcadas, podem estar em risco.

Em 2014, o GHash.io, um pool de mineração que operou de 2013 a 2016, ultrapassou brevemente 51% do poder computacional do Bitcoin no Bitcoin. Este desenvolvimento gerou preocupações significativas sobre a segurança da rede. Então, o Gnash.io limitou voluntariamente seu poder computacional em 39,99% para restaurar a confiança na rede.

Ataque Finney

Esse tipo de ataque de gasto duplo foi popularizado e recebeu o nome de Hal Finney. Em um ataque Finney, um hacker não requer 51% do poder de hash. Para ter sucesso, um comerciante deve aceitar uma transação não verificada do hacker, que é um minerador.

O hacker gera um bloco onde ele credita tokens criptográficos para si mesmo iniciando uma transação do endereço X para o endereço Y (ambos pertencentes a ele) sem transmiti-lo para a rede. Ele passa a fazer outro pagamento com os mesmos tokens criptográficos do endereço X para o endereço Z, que pertence a um comerciante.

Crédito da imagem: Olivier Le Moal/Shutterstock

Se o comerciante aceitar as transações não confirmadas sem verificação do blockchain, o hacker libera o bloco que inclui sua transação inicial. A rede invalida a transação com o comerciante depois que o comerciante libera mercadorias ou serviços para o hacker. Isso permite que o hacker gaste o dobro.

Ataque de corrida

Este ataque é mais fácil de realizar do que os ataques de 51% e Finney. Em um ataque de corrida, existe uma “corrida” entre duas transações.

O hacker usa máquinas diferentes para enviar o mesmo token para dois comerciantes. Se o lojista enviar mercadorias ou serviços antes da confirmação da transação, ele descobrirá que a transação não foi aceita durante o processo de mineração.

Como Blockchain Evita Gastos Duplos

Blockchains protegem contra gastos duplos por meio de algoritmos de consenso, como:

Prova de Trabalho (PoW)

A prova de trabalho é um processo altamente competitivo que requer uma quantidade enorme de energia. Nesse mecanismo de consenso, os mineradores usam computadores complexos para adivinhar o hash dos blocos de transação.

Um hash é um código hexadecimal criptografado e exclusivo de 64 dígitos que toda transação possui. Esse processo gasta poder computacional para provar a autenticidade de uma transação.

Depois que a transação é verificada, o minerador bem-sucedido adiciona a transação ao livro digital descentralizado. Ao final do processo, o minerador bem-sucedido recebe recompensas em bloco no token digital nativo.

Bitcoin, Bitcoin Cash, Litecoin, Monero e Dogecoin são criptomoedas populares que usam esse algoritmo de consenso.

Prova de aposta (PoS)

No Proof-of-Stake, os participantes da rede criptográfica autenticam as transações em bloco e são chamados de validadores. Os validadores oferecem (ou “apostam”) alguns de seus tokens criptográficos em um contrato inteligente para obter o direito de verificar as transações antes de adicioná-las ao crescente blockchain.

A rede seleciona um validador honesto com base em seus tokens apostados e na duração da aposta. Uma vez selecionado, o vencedor verifica a transação, que os outros validadores confirmam.

Assim como PoW, os validadores também recebem uma recompensa na forma de renda depois de autenticar novas transações. Se a rede encontrar algum validador desonesto, ele perderá parte ou todos os seus tokens apostados como penalidade.

Esse processo é mais rápido e requer menos poder computacional e energia do que o PoW. Portanto, os participantes do blockchain podem atuar com eficiência como validadores.

Ethereum 2.0, Cardano, Tezos e Solana usam PoS.

Prova de participação delegada (DPoS)

Esse tipo de algoritmo de consenso PoS exige que os usuários no blockchain usem seus tokens digitais para votar em honestos validadores chamados “delegados”. Um delegado é escolhido aleatoriamente para validar novas transações e adicioná-las ao blockchain.

Após o pagamento, o delegado distribui as recompensas do bloco aos usuários que votaram neles.

As criptomoedas que empregam o algoritmo DPoS incluem EOS, Ark, Tron e Lisk.

Ainda não há caso, mas gastar em dobro é uma possibilidade

Embora não haja casos confirmados, o surgimento de criptos novos e bifurcados e os recentes avanços tecnológicos podem gerar surpresas em dobro. Portanto, você deve se proteger fazendo transações em blockchains de criptomoedas seguras. E, via de regra, espere que os mineradores confirmem as transações antes de liberar seus tokens, bens ou serviços.