O que é o gasto duplo no Bitcoin?

Neste sétimo post da série vamos falar sobre a tentativa de fraude conhecida como gasto duplo.
Para entender os conceitos que serão citados aqui, veja os outros posts da série de introdução ao Bitcoin.
O gasto duplo é uma tentativa maliciosa de alguém que já usou seus Bitcoins em uma transação anterior. A pessoa ignora o bloco que contém essa transação anterior e propor um novo bloco. Portanto, ela tenta usar seus Bitcoins duas vezes.

Lembre-se que o Bitcoin é formado por uma rede peer-to-peer. Então, quando uma pessoa que pagar outra, ela transmite essa informação para todos os nós que formam a rede. Eles criam os blocos de transações para o blockchain. Esse processo é uma parte essencial no funcionamento desse sistema.

Vamos entender o gasto duplo através de um exemplo.

Suponha que Maria pague para José uma certa quantia em Bitcoins. Dessa forma, ela comunica a intenção de fazer essa transação para a rede. Um nó honesto acata aquela transação e a incluí em seu bloco. Lembre-se que a transação é uma mensagem assinada digitalmente pela Maria (através da chave privada), além e conter o endereço público do José e um hash.
Os blocos possuem dois tipos de hash pointers. Além do hash do bloco imediatamente anterior, cada transação também possui um hash que aponta para bloco que contém a transação anterior aquela em questão. Ou seja, é o ponteiro que indica o bloco que contém a transação anterior, da onde aquela quantia em Bitcoins veio. Nesse exemplo, o hash indica o bloco pela qual Maria recebeu esses Bitcoins que agora tenta enviar para José.
A tentativa de ataque duplo tenta “apagar” uma transação na qual aqueles Bitcoins já foram utilizados. Propõe-se um novo bloco que ignora o bloco que contém aquela transação anterior, no qual consta que os Bitcoins já foram utilizados.  É como se o ataque tentasse ignorar aquela parte do histórico da moeda que informa que aquelas moedas já foram gastas. No novo nó malicioso contém uma nova transação que envia os Bitcoins (agora usados duas vezes) para um outro endereço do próprio autor do ataque.
Esta é a forma clássica do ataque de gasto duplo.
Aquele bloco malicioso proposto pela Maria, pode ser aceito ou rejeitado pelos outros nós da rede.  Caso ele seja aceito, isso será demonstrado através da continuação daquela cadeia. Ou seja, o próximo bloco será anexado a esse bloco malicioso. Por outro lado, caso ele seja rejeitado, os nós continuarão a extensão da cadeia de blocos, ignorando o bloco malicioso e continuando de onde quer o último bloco estava. Agora você deve estar se perguntando como essa decisão sobre os blocos é feita? É o que veremos no próximo post. 

Você pode gostar...

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *