É o primeiro ataque ou hack conhecido pelo Bitcoin e descoberto por quem foi a primeira pessoa a receber uma transação de bitcoin, Hal Finney. O hack ou ataque de Finney, como foi nomeado em sua homenagem, é um tipo muito especial de ataque de gasto duplo que afeta o Bitcoin e qualquer criptomoeda derivada dele.
EO primeiro destinatário de uma transação Bitcoin foi Hal Finney e foi ele quem primeiro falou do lançamento do Bitcoin. Ele também foi o primeiro a sugerir a possibilidade de um ataque de gasto duplo no Bitcoin. Por esse motivo, esse ataque foi nomeado como Finney Hack ou Finney Attack em sua homenagem.
O corte ou ataque de Finney é um tipo de hack ou ataque de gastos duplos O que pode acontecer quando uma pessoa aceita uma transação não confirmada na rede. Finney explicou que um minerador pode gerar um bloco onde incluirá uma transação de um endereço A para outro endereço B, onde ambos os endereços pertencem a ele. Em seguida, você fará outro pagamento com as mesmas moedas, enviando do endereço A para o endereço C (que pertence a outro usuário). Se o referido usuário aceitar a transação sem confirmações da rede, o invasor pode liberar o bloco onde está incluída sua transação inicial. Isso invalida a transação feita ao comerciante, permitindo que o invasor duplique os gastos.
Como é executado um hack ou ataque de Finney?
Executar esse tipo de ataque de gasto duplo não é uma tarefa fácil. Ao contrário, é muito difícil de executar porque implica que o atacante é um minerador capaz de extrair o bloco onde sua transação será validada. Além disso, você precisa de um comerciante para aceitar uma transação sem confirmações da rede. Juntar essas duas condições é bastante difícil. No entanto, em teoria, é possível realizá-lo mesmo quando você tem menos de 51% do poder de hash da rede. Vamos ver como esse ataque é executado em 3 etapas:
Quando o atacante é bem sucedido, significa que ele executou um hack ou ataque de Finney. No entanto, dependendo do poder de hash do mineiro, é improvável que este ataque seja executado. Assim, quanto menor o poder hashrate do mineiro, menores as chances de ele executá-lo com sucesso. Por outro lado, o ataque falhará se outro bloco for encontrado na rede no momento em que o invasor leva um tempo para encontrar um bloco até que a transação seja gerada para o comerciante e o comerciante o aceite.
Portanto, executar esse tipo de ataque com gasto duplo requer tempo cuidadoso e muita paciência por parte do invasor. Como é preciso esperar para encontrar um bloco, o que pode levar muito tempo, principalmente considerando o número de mineradores e a dificuldade da rede. Além disso, o atacante deve poder comprar algo bom ou pagar por um serviço de um comerciante em alguns minutos. Como mencionamos, se outro minerador encontrar e transmitir outro bloco, a transação para o comerciante será incluída e seu ataque falhará.
Quem é suscetível a um ataque de Finney?
Se uma pessoa ou comerciante aceitar pagamentos por transação não confirmados, você poderá estar sujeito a esse ataque. Por exemplo, uma loja com serviços online, como baixar jogos de vídeo que aceitam criptomoedas e que permitem o download imediato, pode ser suscetível a esses tipos de ataques. Também é provável que ocorra nos supermercados, embora o tempo de compra não seja exato neles. Isso ocorre porque pode haver muitas pessoas na fila de pagamentos, o que impede que um invasor use o tempo a seu favor.
Quanto você sabe, cryptonuta?
O ataque de Finney não foi corrigido porque os desenvolvedores não podem fazer isso?FALSO!
O ataque Finney é fácil de corrigir no nível do código, mas, apesar disso, os desenvolvedores não o fizeram por um motivo poderoso: requer uma mudança que muda drasticamente a maneira como o consenso é tratado na rede e pode ter efeitos indesejáveis. . Por esse motivo e considerando que a descentralização e o aumento do poder de mineração tornam extremamente difícil explorar essa fraqueza, os desenvolvedores de Bitcoin ignoraram o bug em favor de deixar as coisas como estão. Afinal "Se funcionar, não toque nele."
Como se proteger de um ataque de Finney?
A primeira recomendação é esperar pelo menos 6 confirmações na rede Bitcoin para considerar uma transação como segura e irreversível.. Apesar da descentralização da rede ter crescido tanto que, na grande maioria dos casos com 1 ou 2, pode até ser suficiente, podendo até avaliar o número de confirmações com base no valor transacionado.
Por exemplo, se você aceitar menos de € 100, com uma confirmação pode ser suficiente porque o custo do ataque seria enormemente maior. Teoria dos Jogos y el Equilíbrio de Nash nunca favorecerá a execução do ataque.
Como mencionamos em artigos anteriores sobre transações irreversíveis, As transações Bitcoin serão irreversíveis à medida que novos blocos forem gerados nos quais a transação inclui. Refletindo cada novo bloco como uma confirmação da transação incluída. No entanto, para quantias consideráveis, é recomendável aguardar 6 confirmações para garantir que a transação seja praticamente impossível de reverter. Para o que permanece sob risco de um usuário ou comerciante, aceite transações não confirmadas por outra pessoa.
Se um invasor pretende usar o ataque de Finney para obter algum ativo ilíquido, é difícil corresponder a necessidade desse ativo com a busca de um bloco. No entanto, se você o usar como uma maneira de obter algo líquido, como trocar bitcoins por outra moeda, sempre haverá uma oportunidade de se perceber. Mas é provável que o comerciante tenha solicitado várias confirmações para realizar a ação. Portanto, na prática, é bastante difícil e improvável alcançar algo assim.