No dia 15 de fevereiro, o trader Alex Krüger compartilhou em seu Twitter uma notícia do portal Trust Nodes, que relatava uma série de sete passos utilizado por um usuário para “bugar” contratos inteligentes e obter US$360 mil em Ethereum.
Os passos empregados não constituem um hack, mas só podem ser utilizados se há garantia de sucesso.
Pegando empréstimos
O primeiro passo foi obter um empréstimo relâmpago de 10 mil ETH da plataforma DyDx. Empréstimo relâmpago é quando um empréstimo por meio da stablecoin DAI é feito, e a quantia em DAI é usada para cobrir o antigo contrato.
O usuário então enviou metade do valor para a plataforma Compound e metade para a bZx. Na plataforma Compound, 112 WBTC (token ERC20 pareado com o valor do Bitcoin) foram emprestados, enquanto a mesma quantia em WBTC foi emprestada na bZx. Os 112 WBTC da Compound foram enviados para a Uniswap e um lucro foi obtido, sendo utilizado para pagar o empréstimo de 10 mil ETH.
Parece relativamente fácil, mas todo o procedimento deve ser executado em apenas uma transação, conforme mostra a imagem abaixo:
Confira nossas sugestões de Pre-Sales para investir agora
A operação custou US$8,71 em taxas transacionais, sendo possível apenas por meio da utilização do recurso de empréstimo relâmpago.
Por ser uma funcionalidade nova, poucas pessoas entendem realmente o que ocorre, mas basicamente é a possibilidade de realizar um empréstimo sem colateralizar – contando que ele seja pago na mesma transação.
O usuário então codificou um contrato inteligente, que diz à rede Ethereum que alguém enviará ETH para uma exchange para comprar a criptomoeda em um valor menor, e então venderá a mesma quantia por um preço maior em outra exchange – uma arbitragem. Tendo em vista que as exchanges utilizadas são open source e a rede sabe tudo, entende-se que a verdade sobre a transação é interpretada e então o empréstimo relâmpago pode ser realizado.
Trata-se de um empréstimo sem precisar de crédito, porém, caso as condições do contrato não sejam atendidas, ele é revertido – caso o empréstimo não seja pago na mesma transação, por exemplo.
Na prática, o que o usuário fez foi operar com metade do empréstimo comprado e metade do empréstimo vendido, e essa mecânica dá a oportunidade de arbitragem às pessoas que não possuem crédito.
Entretanto, ainda é cedo para dizer se a funcionalidade de empréstimos relâmpago é realmente algo tão positivo.