O BNB é realmente um token ERC-20?. Há uma questão que gostaria de trazer aqui. Esta questão foi trazida à luz pela equipe por trás do Futereum, que encontrou um grande bug com o token Binance (BNB) que já deveria ter sido corrigido.
Se você dirigir-se ao Etherscan e procurar o token Binance, poderá ver que ele lê [ERC-20], o que significa que deve obedecer ao padrão ERC-20 lançado pela equipe Open Zeppelin, disponível aqui.
Claro, nenhum padrão é livre de bugs - não importa o quão grande uma equipe é. Apenas no ano passado, foi relatado que havia 130 tokens ERC-20 afetados por um problema onde as funções de transferência de contratos de token não retornaram nada quando chamados. Em essência, como explicado por Lukas Cremer, o problema era:
“O contrato de chamada envia uma chamada externa para o [BadToken], que processa a chamada, faz a transferência e não retorna um valor de retorno booleano. O contrato de chamada agora procura o valor de retorno na memória, mas uma vez que o token não escreveu um valor de retorno, ele tomará o que encontrar nesta posição de memória como o valor de retorno da chamada externa. Isso já é muito ruim: pegar alguns dados que estão em um slot de memória como um valor de retorno não é uma boa idéia.”
Qual o risco?
Como descrito acima, o maior risco é que um contrato inteligente que está esperando uma interface ERC-20 não será capaz de interagir com o contrato do token mais antigo (se compilado com a versão Solidity ≥ 0.4.22). Isso pode significar que os tokens que são enviados para tal contrato ficarão presos lá para sempre, mesmo que o contrato tenha uma função para transferir tokens ERC-20.
O problema parece ser muito maior para a Binance simplesmente porque está construindo sua própria troca descentralizada (DEX) e ecossistema blockchain. Posso pensar em duas situações problemáticas:
Os tokens BNB não podem ser enviados para uma troca descentralizada que compilou um contrato com a versão Solidity ≥ 0.4.22.
Se a Binance usa a mesma lógica de contrato inteligente para criar o Binance DEX, nenhum token ERC-20 funcionaria lá. Claro, isso é puramente especulação, pois a qualidade de desenvolvimento do token BNB não dita a qualidade da Binance.
Possíveis soluções?
Curiosamente, a Binance quer tokens ERC-20 para migrar para sua própria cadeia de blocos, a Binance Chain, o que parece um pouco rebuscado para mim. Estritamente falando, eu não vejo uma boa razão para uma equipe não ir com um protocolo muito mais seguro como Ethereum ou Stellar. A única vantagem que vejo é que os projetos podem ser capazes de economizar alguns (milhões) dólares em taxas de listagem, além disso, eles talvez tenham uma palavra a dizer sobre o consenso blockchain, pois será baseado em DPOs.
Em uma entrevista recente, o fundador da Binance Changpeng 'CZ' Zhao disse:
“A Binance Coin irá migrar para a Cadeia Binance como uma moeda nativa. Também estamos incentivando outros tokens ERC-20 a migrar para Binance Chain. Há muitos benefícios para fazer isso. Binance Chain é uma cadeia mais rápida; é super fácil criar um token na Binance Chain. Não há contratos inteligentes para programar, é mais seguro, há menos espaço para bugs [...]”
Se o objetivo da tecnologia blockchain é aumentar a descentralização, esta parece a maneira errada de promovê-la. Ainda assim, como CZ nos lembrou durante uma entrevista em Ivan on Tech, Binance é uma empresa privada cujo objetivo é ganhar dinheiro (e aposto o máximo possível).
Devemos deixar o futuro das criptomoedas nas mãos de outra empresa privada?
A Binance criou um produto significativo que conecta milhões de usuários todos os dias. Eu mesmo tenho sido um usuário regular da Binance desde a sua criação, e posso dizer com segurança que tem uma das melhores interfaces de usuário lá fora.
Espero que a Binance DEX prove que estou errada e que todo o ecossistema será verdadeiramente descentralizado.
Las Vegas, US, 1st November 2024, Chainwire
From digital art to real-estate assets, NFTs have become a significant attraction for investors who…
Singapore, Singapore, 21st October 2024, Chainwire
HO CHI MINH, Vietnam, 17th October 2024, Chainwire
London, UK, 16th October 2024, Chainwire
Sinagpore, Singapore, 16th October 2024, Chainwire