O ano era 2016 e rede Ethereum tinha apenas um ano.

Surge um projeto inovador chamado DAO, que funcionaria como uma espécie de fundo de investimentos em que as decisões seriam tomadas em conjunto. As regras que regiam este DAO eram controladas por um smart-contract rodando na rede Ethereum, de forma semelhante a um programa de computador.

Tudo corria melhor que o esperado, com o projeto levantando mais de USD 150 milhões na rodada inicial de financiamento. Eis que um hacker encontra vulnerabilidades no código do smart-contract e consegue desviar mais USD 50 milhões em Ether.

De lá para cá, aconteceram diversos outros eventos roubos devido a problemas na programação. Por isso, o desenvolvimento de novas projetos conta hoje com processos mais robustos e diversas etapas de verificação.

Segundo a estratégia mais seguida atualmente, o mínimo que se espera é que os desenvolvedores criem um conjunto de testes que cubra 100% do código. Pode parecer que isso seja suficiente, mas não é nem o começo. Testar 100% do código não é nem de perto garantir 100% das combinações possíveis, o que é provavelmente impossível. Por isso, quando os desenvolvedores acreditam ter alcançado uma versão segura, ainda ocorre uma auditoria externa e uma nova rodada de verificações acontece.

Com o aval da auditoria externa, a nova aplicação é então liberada em uma rede de testes. Essa rede é equivalente a “oficial” em termos de funcionamento, mas ainda não existe dinheiro de verdade circulando. Cabe agora a caçadores de recompensa tentar encontrar vulnerabilidades.

O valor da recompensa depende, mas normalmente vai de USD 1.000 a USD 10.000 dependendo da criticidade do problema identificado. Há casos mais extremos. Por exemplo, em fevereiro deste ano, foi pago USD 700.000 como premiação a um programador pela localização de um erro grave.

Na última etapa do desenvolvimento, o smart-contract é liberado na rede oficial, mas ainda com restrições nos valores que pode processar. Após normalmente 3 meses sem incidentes, as limitações são removidas e a aplicação pode enfim funcionar como foi idealizada.

Mesmo com todo esse cuidado, não existem garantias de que não venham a ocorrer incidentes. Por isso, ainda são adotadas medidas de contingência, como a possibilidade de se travar os fundos temporariamente em uma situação de emergência e assim dar tempo para os programadores reagirem.

Todos esses cuidados têm diminuído a ocorrência de roubos grandes, mas o risco ainda existe como em qualquer sistema digital. Por isso, a recomendação geral para os usuários é sempre evitar produtos que rodem em smart-contracts lançados recentemente (menos de 6 meses). Após este período, uma aplicação já pode ser considerada estável e indicada para uso.

Obs: Este artigo é uma réplica da Newsletter da HashInvest disponibilizada por e-mail e publicada aqui com alguns dias de defasagem. Quer receber a Newsletter na íntegra? Assine inserindo o seu e-mail abaixo:


Assine a nossa newsletter
Receba o conteúdo que interessa para o investidor em Criptomoedas!
We respect your privacy. Your information is safe and will never be shared.
Don't miss out. Subscribe today.
×
×
WordPress Popup Plugin