Ataque de 51%? Do que você está falando?
Um ataque de 51%, ou ataque majoritário, é um caso quando um usuário ou um grupo de usuários controlam a maioria do poder de mineração.
Os hackers recebem energia suficiente para controlar a maioria dos eventos na rede.
Eles podem monopolizar a geração de novos blocos e receber recompensas, uma vez que são capazes de impedir que outros mineradores completem os blocos.
Eles têm o poder de reverter transações.
Imaginemos que Alice enviou para Bob uma certa quantia em dinheiro usando a blockchain. Alice está envolvida no caso de ataque de 51%, mas Bob não está. Essa transação é colocada no bloco. Mas os hackers não permitem que o dinheiro seja transferido. Existe um "fork" (bifurcação) acontecendo na cadeia.
Além disso, os mineradores se juntam a uma das centrais. E como eles têm a maior parte do poder computacional , sua cadeia contém mais blocos.
Na rede, um "ramo" que dura mais permanece, já um mais curto é rejeitado. Portanto, a transação entre Alice e Bob não ocorre. Bob não recebe o dinheiro.
Seguindo estas etapas, os hackers podem reverter as transações.
O ataque de 51% não é uma opção lucrativa. Exige uma enorme quantidade de poder de mineração. E, uma vez que toda a atividade é exposta publicamente, todos podem tomar conhecimento de tudo, a rede é considerada comprometida, o que leva à saída de usuários. Isso inevitavelmente derrubará o preço da criptomoeda. Como consequência, os fundos perdem o seu valor.
Existe alguma falha no algoritmo de consenso PoW?
As principais desvantagens são os enormes gastos, "inutilidade" de cálculos e ataque de 51%.
Despesas enormes. A mineração requer hardware de computador altamente especializado para executar os complicados algoritmos. Os custos são incontroláveis. A mineração está se tornando possível apenas para centrais especiais de mineração. Essas máquinas especializadas consomem grandes quantidades de eletricidade para executar esse aumento de custos. Grandes custos ameaçam a centralização do sistema, uma vez que beneficiam o governo. É bem fácil de se ver isso no caso do Bitcoin.
"Inutilidade" dos cálculos. Os mineradores trabalham muito para gerar blocos e isso consome muita energia. No entanto, seus cálculos não são aplicáveis em nenhum outro lugar. Eles garantem a segurança da rede, mas não podem ser aplicados a negócios, ciência ou qualquer outro campo.
Primeiramente, por que usar um algoritmo de consenso PoW?
Os principais benefícios são a defesa a ataques DoS e o baixo impacto da participação nas possibilidades de mineração.
Defesa contra ataques DoS - A PoW impõe alguns limites às ações na rede. Eles precisam de enormes esforços para serem executados. O ataque eficiente requer muita energia computacional e muito tempo para fazer os cálculos. Portanto, o ataque é possível, mas é inútil, pois os custos são muito elevados.
Possibilidades de mineração - Não importa quanto dinheiro você tenha em sua carteira. O que importa é ter grande poder computacional para resolver os enigmas e formar novos blocos. Assim, os detentores de enormes quantidades de dinheiro não são responsáveis por tomar decisões por toda a rede.
Onde a PoW é normalmente implementada?
A prova de trabalho é usada em diversas criptomoedas.
A aplicação mais famosa da PoW é no Bitcoin. Foi o Bitcoin que lançou as bases para esse tipo de consenso. O enigma é o "Hashcash". Este algoritmo permite mudar a complexidade de um enigma com base no poder total da rede. O tempo médio de formação do bloco é de 10 minutos. As criptomoedas baseadas em Bitcoin, como o Litecoin, possuem um sistema bem similar.
Outro grande projeto com PoW é o Ethereum. Dado que quase três dos quatro projetos são implementados na plataforma Ethereum, é seguro dizer que a maioria dos aplicativos de blockchain usam o modelo de consenso PoW.
Como este algoritmo é implementado à blockchain?
Mineradores resolvem o enigma, formam o novo bloco e confirmam as transações.
O quão complexo será um enigma depende do número de usuários, da energia atual e da carga da rede. O hash de cada bloco contém o hash do bloco anterior, o que aumenta a segurança e evita qualquer violação de bloco.
Se um minerador conseguir resolver o enigma, um novo bloco é formado. As transações são colocadas neste bloco e consideradas confirmadas.
Como isso é possível?
O trabalho preciso e a velocidade do sistema blockchain dependem disso.
Mas o problema não deve ser complicado demais. Se for, a geração de blocos levará muito tempo. As transações ficam presas sem execução e, como resultado, o fluxo de trabalho trava por algum tempo. Se o problema não puder ser resolvido em um período definido, a geração de blocos será uma espécie de milagre.
Mas se o problema for muito fácil ele fica propenso a vulnerabilidades e poderão haver ataques DoS e de spam.
A solução precisa ser facilmente verificada. Caso contrário, nem todos os nodes serão capazes de analisar se os cálculos estão corretos.
Então você terá que confiar em outros nodes ou violar uma das características mais importantes da blockchain - a transparência.
O que você quer dizer com "enigma matemático?"
Enigma matemático é uma questão que requer muita energia computacional para ser resolvida.
Existem muitas delas, por exemplo:
- função hash , ou como encontrar a entrada conhecendo a saída.
- faturização inteira , em outras palavras, como apresentar um número como uma multiplicação de outros dois números.
- Guia didático do protocolo puzzle . Se o servidor suspeitar de um ataque DoS, ele requer um cálculo de funções de hash, para alguns nodes (computadores que efetuam a matemática) em uma ordem definida. Neste caso, é um problema de "como encontrar uma cadeia de valores de função hash".
A resposta ao problema da PoW ou a equação matemática é chamada de hash .
À medida que a rede cresce, as dificuldades dos enigmas aumentam cada vez mais. Os algoritmos precisam de mais e mais poder de hash para resolver o problema. Portanto, a complexidade da tarefa é uma questão delicada.
O que é "prova de trabalho"?
"Prova do trabalho" (Proof-of-Work na versão em inglês) ou PoW, é o algoritmo de consenso original em uma rede blockchain.
Na blockchain, este algoritmo é usado para confirmar transações e produzir novos blocos para a cadeia. Com a PoW, os mineradores competem entre si para completar as transações e serem recompensados.
Em uma rede, usuários negocam entre si outros tokens digitais. Um ledger descentralizado reúne todas as transações dos blocos.No entanto, deve-se ter cuidado para confirmar as transações e organizar os blocos.
Esta responsabilidade é produzida por computadores especiais e por pessoas chamadas mineradores. O processo é chamado mineração.
Os princípios mais importantes do trabalho são um um complicado enigma matemático e a possibilidade de provar a solução rapidamente.