in

Bug destrói criptomoeda e deixa prejuízo de 60 milhões de dólares

Um bug destruiu a criptomoeda YAM lançada há apenas 2 dias!

Uma vida curta e trágica. Assim podemos descrever a breve história de mais uma criptomoeda que veio com bug em apenas uma linha do código que foi capaz de destruí-la por completo em apenas 35 minutos. E o pior: o bug destrói a criptomoeda e deixa um prejuízo de 60 milhões de dólares em pouco mais de  meia hora. Foi isso o que ocorreu com a nova criptomoeda chamada YAM.

Logo na estreia, ela possuía capitalização de mercado de US$ 60 milhões, mas um bug de uma única linha no código causou o colapso da moeda e a capitalização de mercado do YAM caiu para zero em apenas 35 minutos.

O YAM era um experimento financeiro descentralizado, portanto, usava um sistema de governança (para fazer alterações de protocolo). Ele foi baseado no chamado protocolo de cultivo de safra (yield farming protocol), em que os tokens deveriam manter a paridade com o dólar americano seguindo algumas regras específicas.

Bug destrói criptomoeda e deixa prejuízo de 60 milhões de dólares. O que aconteceu?

Bug destrói criptomoeda e deixa prejuízo de 60 milhões de dólares

Por volta das 18h UTC, na quarta-feira, 12 de agosto, a equipe descobriu um bug no contrato de rebase do YAM que emitiria muito mais moedas YAM do que pretendia vender. Isso resultou no envio de uma grande quantidade de YAM para a reserva do protocolo, explicou o projeto YAM em uma postagem do blog.

Esses tokens pertenciam ao próprio contrato de governança e, portanto, não podiam votar. Como eles existem e não podem votar, é impossível atingir a participação mínima. Isso significa que a governança está permanentemente desativada e todos os outros tokens mantidos pelos contratos de governança estão permanentemente bloqueados.

Em suma, a moeda perdeu o controle de seu recurso de governança em cadeia. O código não tinha sido auditado adequadamente devido à sua relativa novidade e o bug fazia com que o protocolo continuasse imprimindo tokens YAM “falsos”, o que acabou impedindo os detentores de tokens de tomar qualquer decisão.

Sobre o Bug

O problema estava presente nesta linha de código a seguir:

totalSupply = initSupply.mul(yamsScalingFactor);

Porém, deveria ser algo assim:

totalSupply = initSupply.mul(yamsScalingFactor).div(BASE);

A equipe diz que quase todos os tokens Curve de $ 750.000 armazenados na tesouraria do projeto foram bloqueados pela falha do código. Esses ativos pretendem servir como moeda de reserva para apoiar o valor dos tokens YAM.

Todos os esforços para recuperar o controle do tesouro do YAM falharam. Então, o cofundador do YAM, Brock Elmore tweetou um pedido de desculpas:

A equipe diz que quase todos os tokens Curve de $ 750.000 armazenados na tesouraria do projeto foram bloqueados pela falha do código. Esses ativos pretendem servir como moeda de reserva para apoiar o valor dos tokens YAM.

Tentativas fracassadas

Todos os esforços para recuperar o controle do tesouro do YAM falharam. Então, o cofundador do YAM, Brock Elmore tweetou um pedido de desculpas:

Havia quase 29 milhões de tokens do YAM em circulação. A certa altura, o projeto chegou a atingir uma capitalização de mercado de cerca de US $ 525 milhões. Mesmo agora, a moeda parece ter um valor de cerca de US $ 29 milhões, ou seja, se você conseguir encontrar algum comprador do YAM.

De qualquer forma, o projeto anunciou um plano de migração para o YAM 2.0. Você pode encontrar todos os detalhes relacionados aqui.