O setor de blockchain está recebendo uma atenção significativa com os desenvolvimentos contínuos em blockchain, Bitcoin, Ethereum, criptomoedas e ICOs. Isso me levou a escrever este tutorial, o primeiro de uma série projetada para ajudar as pessoas a entenderem como usar a tecnologia blockchain e as criptomoedas para criar aplicativos impactantes.
Neste tutorial, meu objetivo é orientá-lo através de todo o processo, desde a configuração da sua conta até a emissão do seu primeiro token na rede de teste do Ethereum usando um único contrato inteligente e Metamask. Este token funcionará como um token ERC20 padrão na rede de teste Ethereum, equipado com recursos principais que podem servir como uma base versátil para aplicações mais complexas além de transferências simples.
Antes de criar seu próprio token ERC20, você precisa preparar o seguinte:
ERC significa Ethereum Request for Comment, sendo 20 o número de identificação da proposta. O objetivo do ERC-20 é aprimorar a rede Ethereum. É um dos mais significativos padrões ERC e se tornou o arcabouço técnico para criar tokens na blockchain Ethereum por meio de contratos inteligentes. O ERC-20 estabelece um conjunto de regras que todos os tokens baseados em Ethereum devem seguir, definindo-os como ativos baseados em blockchain que podem ser enviados e recebidos, têm valor, operam na blockchain Ethereum e incorrem em taxas de gás para transações.
Em 2015, o desenvolvedor alemão Fabian Vogelsteller contribuiu para a história do Ethereum comentando na página GitHub do projeto. Este foi seu 20º comentário, durante o qual ele mencionou pela primeira vez o ERC-20. À medida que o Ethereum se expandia rapidamente, o ERC-20 foi introduzido como uma solução para os desafios de escalabilidade da rede.
O reconhecimento formal e a adoção do ERC-20 como uma Proposta de Melhoria do Ethereum (EIP-20), co-autoria de Vogelsteller e do co-fundador da Ethereum, Vitalik Buterin, ocorreram no final de 2017.
Antes do padrão ERC-20, os criadores de tokens tinham que começar do zero, o que levava a inconsistências entre diferentes tokens. Os desenvolvedores precisavam entender completamente o código do contrato inteligente de outros tokens devido à ausência de uma estrutura padronizada, complicando as coisas para as carteiras e exchanges que tinham que revisar o código de cada token para oferecer suporte. Adicionar novos tokens às aplicações se tornou uma tarefa complexa.
Com a introdução do padrão ERC-20, suas características padronizadas, interoperabilidade e transferibilidade permitiram que carteiras e exchanges integrassem vários tokens e facilitassem trocas entre eles facilmente. Os contratos inteligentes empregados em tokens ERC-20 podem executar automaticamente e fazer cumprir transações financeiras complexas, o que é essencial para plataformas DeFi. Nessas plataformas, os tokens podem representar vários instrumentos financeiros, como empréstimos ou participações em pools de liquidez.
O padrão ERC-20 especifica seis funções obrigatórias e três opcionais que os contratos inteligentes devem implementar.
Aqui estão as funções necessárias e suas descrições:
Além das funções essenciais mencionadas anteriormente, existem funções opcionais adicionais que podem melhorar a usabilidade do token:
Se você está familiarizado com programação orientada a objetos, pode pensar em ERC-20 como uma interface. Para tornar seu token um token ERC-20, você deve implementar a interface ERC-20, que exige que você inclua essas seis funções essenciais. Essencialmente, a interface ERC-20 serve como um modelo e qualquer contrato que pretenda ser classificado como um token ERC-20 deve projetar e implementar suas funções usando este modelo.
Para iniciar a implantação do seu contrato na rede de teste Ethereum Sepolia, é necessário instalar o MetaMaskextensão do navegador ou use outra carteira Web3, como Phantom, ou qualquer carteira compatível com WalletConnect. Depois de configurar sua carteira, você precisará obter um pouco de ETH de teste. Você pode obter isso de Faucet Ethereum Sepolia, que é especificamente projetada para a rede de teste Ethereum Sepolia. Obter testes ETH é simples: basta visitar o site do faucet, conectar seu endereço de carteira ou inserir seu endereço e seguir as instruções. Você também pode compartilhar um tweet para recompensas extras, ou pode selecionar a opção 'Não, obrigado, apenas me envie 0,05 ETH' para receber seu test ETH diretamente. No entanto, tenha em mente que você precisa ter pelo menos 0,001 ETH em sua conta da Ethereum mainnet para usar o faucet de moeda de teste QuickNode.
Existem muitos tokens que cumprem o padrão ERC20 atualmente em execução na blockchain Ethereum, desenvolvidos por vários grupos. Essas implementações diferem; algumas se concentram em minimizar os custos de gás, enquanto outras priorizam aprimorar a segurança. Para criar um token forte e seguro, muitos desenvolvedores optam pelo padrão de token ERC20 da OpenZeppelin. A OpenZeppelin é uma biblioteca de contratos inteligentes reutilizáveis e amplamente testada pela comunidade, que inclui um framework de token ERC20 confiável e seguro. Isso garante que o desenvolvimento do token seja compatível e seguro, tornando-o a escolha preferida de muitos desenvolvedores de tokens hoje.
Para facilidade e segurança, vamos usar o OpenZeppelin ERC-20contrato para criar nosso token neste guia. Com o OpenZeppelin, não precisamos escrever a interface ERC-20 inteira; simplesmente importamos o contrato da biblioteca e utilizamos suas funções. Neste caso, emitiremos 1 milhão de tokens ERC-20 chamados MNT.
Em seguida, vá para o Ethereum RemixAbra o IDE (ambiente de desenvolvimento integrado para Ethereum que suporta a linguagem de programação Solidity) e crie um novo arquivo Solidity, como - MyNewToken.sol.
Por favor, cole o seguinte código no seu novo script Solidity:
// SPDX-License-Identifier: MIT pragma solidez ^0.8.20;
importar@openzeppelin/contratos/token/ERC20/ERC20.sol”;
contrato MyNewToken é ERC20 { constructor() ERC20(“MyNewToken”, “MNT”) { _mint(msg.sender, 1000000 (10 *uint256(decimais()))); } }
Aqui está o que o código faz:
O comentário SPDX-License-Identifier indica a licença sob a qual o contrato é liberado.
A diretiva pragma especifica a versão do compilador que será utilizada.
O contrato ERC20 é importado do OpenZeppelin e serve como a base para o seu token.
MyNewToken é o nome do seu contrato, que herda do contrato ERC20.
A função do construtor inicializa seu token com o nome (“MyNewToken”) e o símbolo (“MNT”).
A função _mint dentro do construtor cria o fornecimento inicial de tokens. Neste caso, 1 milhão de tokens são criados e atribuídos ao endereço que implanta o contrato. O número total de tokens é ajustado de acordo com o valor de casas decimais, que tem o valor padrão de 18 na implementação do OpenZeppelin.
Como importamos o contrato inteligente ERC20 do OpenZeppelin e o contrato MyNewToken herda dele, não há necessidade de definir todas as funções por conta própria. Todas as funções definidas no contrato ERC20 estão incluídas no contrato MyNewToken. Se você deseja ver uma versão mais detalhada do código completo ERC-20, pode consultar.este arquivo.
Agora, reserve um tempo para personalizar o contrato inteligente de acordo com suas necessidades. Você também pode alterar o nome do token e o símbolo modificando esta seção: ERC20(“MeuNovoToken”, “MNT”).
Depois de personalizar seu contrato inteligente, o próximo passo é compilá-lo.
Passo 1: Clique no botão do Compilador Solidity. Verifique a versão do compilador e certifique-se de que o contrato correto esteja selecionado. Como seu contrato inteligente inclui a linha pragma solidity ^0.8.20;, a versão do compilador deve ser pelo menos 0.8.20. Em seguida, clique no botão Compilar MyNewToken.sol. Se tudo correr bem, você verá uma marca de seleção verde no botão de compilação.
Passo 2: Navegue até a guia Deploy & Run Transactions. Na seção Ambiente, escolha a opção Provedor Injetado para implantação. Antes de prosseguir, certifique-se de que o seu MetaMask está configurado para a rede de teste Sepolia e de que você selecionou o contrato MyNewToken para implantação. Por fim, clique no botão Deploy para implantar o seu contrato.
Se você não tem certeza de como alternar as redes, abra a extensão MetaMask, clique no seletor de rede no canto superior esquerdo e escolha Sepolia. Se não estiver visível, verifique se a opção 'Mostrar redes de teste' está habilitada. Para obter instruções sobre como adicionar a URL RPC QuickNode ao MetaMask, consulte o Guia QuickNode.
Passo 3: Confirme a transação no MetaMask:
Parabéns! Seu contrato de token agora foi implantado com sucesso na rede de testes Ethereum Sepolia e você oficialmente possui seu primeiro token!
O setor de blockchain está recebendo uma atenção significativa com os desenvolvimentos contínuos em blockchain, Bitcoin, Ethereum, criptomoedas e ICOs. Isso me levou a escrever este tutorial, o primeiro de uma série projetada para ajudar as pessoas a entenderem como usar a tecnologia blockchain e as criptomoedas para criar aplicativos impactantes.
Neste tutorial, meu objetivo é orientá-lo através de todo o processo, desde a configuração da sua conta até a emissão do seu primeiro token na rede de teste do Ethereum usando um único contrato inteligente e Metamask. Este token funcionará como um token ERC20 padrão na rede de teste Ethereum, equipado com recursos principais que podem servir como uma base versátil para aplicações mais complexas além de transferências simples.
Antes de criar seu próprio token ERC20, você precisa preparar o seguinte:
ERC significa Ethereum Request for Comment, sendo 20 o número de identificação da proposta. O objetivo do ERC-20 é aprimorar a rede Ethereum. É um dos mais significativos padrões ERC e se tornou o arcabouço técnico para criar tokens na blockchain Ethereum por meio de contratos inteligentes. O ERC-20 estabelece um conjunto de regras que todos os tokens baseados em Ethereum devem seguir, definindo-os como ativos baseados em blockchain que podem ser enviados e recebidos, têm valor, operam na blockchain Ethereum e incorrem em taxas de gás para transações.
Em 2015, o desenvolvedor alemão Fabian Vogelsteller contribuiu para a história do Ethereum comentando na página GitHub do projeto. Este foi seu 20º comentário, durante o qual ele mencionou pela primeira vez o ERC-20. À medida que o Ethereum se expandia rapidamente, o ERC-20 foi introduzido como uma solução para os desafios de escalabilidade da rede.
O reconhecimento formal e a adoção do ERC-20 como uma Proposta de Melhoria do Ethereum (EIP-20), co-autoria de Vogelsteller e do co-fundador da Ethereum, Vitalik Buterin, ocorreram no final de 2017.
Antes do padrão ERC-20, os criadores de tokens tinham que começar do zero, o que levava a inconsistências entre diferentes tokens. Os desenvolvedores precisavam entender completamente o código do contrato inteligente de outros tokens devido à ausência de uma estrutura padronizada, complicando as coisas para as carteiras e exchanges que tinham que revisar o código de cada token para oferecer suporte. Adicionar novos tokens às aplicações se tornou uma tarefa complexa.
Com a introdução do padrão ERC-20, suas características padronizadas, interoperabilidade e transferibilidade permitiram que carteiras e exchanges integrassem vários tokens e facilitassem trocas entre eles facilmente. Os contratos inteligentes empregados em tokens ERC-20 podem executar automaticamente e fazer cumprir transações financeiras complexas, o que é essencial para plataformas DeFi. Nessas plataformas, os tokens podem representar vários instrumentos financeiros, como empréstimos ou participações em pools de liquidez.
O padrão ERC-20 especifica seis funções obrigatórias e três opcionais que os contratos inteligentes devem implementar.
Aqui estão as funções necessárias e suas descrições:
Além das funções essenciais mencionadas anteriormente, existem funções opcionais adicionais que podem melhorar a usabilidade do token:
Se você está familiarizado com programação orientada a objetos, pode pensar em ERC-20 como uma interface. Para tornar seu token um token ERC-20, você deve implementar a interface ERC-20, que exige que você inclua essas seis funções essenciais. Essencialmente, a interface ERC-20 serve como um modelo e qualquer contrato que pretenda ser classificado como um token ERC-20 deve projetar e implementar suas funções usando este modelo.
Para iniciar a implantação do seu contrato na rede de teste Ethereum Sepolia, é necessário instalar o MetaMaskextensão do navegador ou use outra carteira Web3, como Phantom, ou qualquer carteira compatível com WalletConnect. Depois de configurar sua carteira, você precisará obter um pouco de ETH de teste. Você pode obter isso de Faucet Ethereum Sepolia, que é especificamente projetada para a rede de teste Ethereum Sepolia. Obter testes ETH é simples: basta visitar o site do faucet, conectar seu endereço de carteira ou inserir seu endereço e seguir as instruções. Você também pode compartilhar um tweet para recompensas extras, ou pode selecionar a opção 'Não, obrigado, apenas me envie 0,05 ETH' para receber seu test ETH diretamente. No entanto, tenha em mente que você precisa ter pelo menos 0,001 ETH em sua conta da Ethereum mainnet para usar o faucet de moeda de teste QuickNode.
Existem muitos tokens que cumprem o padrão ERC20 atualmente em execução na blockchain Ethereum, desenvolvidos por vários grupos. Essas implementações diferem; algumas se concentram em minimizar os custos de gás, enquanto outras priorizam aprimorar a segurança. Para criar um token forte e seguro, muitos desenvolvedores optam pelo padrão de token ERC20 da OpenZeppelin. A OpenZeppelin é uma biblioteca de contratos inteligentes reutilizáveis e amplamente testada pela comunidade, que inclui um framework de token ERC20 confiável e seguro. Isso garante que o desenvolvimento do token seja compatível e seguro, tornando-o a escolha preferida de muitos desenvolvedores de tokens hoje.
Para facilidade e segurança, vamos usar o OpenZeppelin ERC-20contrato para criar nosso token neste guia. Com o OpenZeppelin, não precisamos escrever a interface ERC-20 inteira; simplesmente importamos o contrato da biblioteca e utilizamos suas funções. Neste caso, emitiremos 1 milhão de tokens ERC-20 chamados MNT.
Em seguida, vá para o Ethereum RemixAbra o IDE (ambiente de desenvolvimento integrado para Ethereum que suporta a linguagem de programação Solidity) e crie um novo arquivo Solidity, como - MyNewToken.sol.
Por favor, cole o seguinte código no seu novo script Solidity:
// SPDX-License-Identifier: MIT pragma solidez ^0.8.20;
importar@openzeppelin/contratos/token/ERC20/ERC20.sol”;
contrato MyNewToken é ERC20 { constructor() ERC20(“MyNewToken”, “MNT”) { _mint(msg.sender, 1000000 (10 *uint256(decimais()))); } }
Aqui está o que o código faz:
O comentário SPDX-License-Identifier indica a licença sob a qual o contrato é liberado.
A diretiva pragma especifica a versão do compilador que será utilizada.
O contrato ERC20 é importado do OpenZeppelin e serve como a base para o seu token.
MyNewToken é o nome do seu contrato, que herda do contrato ERC20.
A função do construtor inicializa seu token com o nome (“MyNewToken”) e o símbolo (“MNT”).
A função _mint dentro do construtor cria o fornecimento inicial de tokens. Neste caso, 1 milhão de tokens são criados e atribuídos ao endereço que implanta o contrato. O número total de tokens é ajustado de acordo com o valor de casas decimais, que tem o valor padrão de 18 na implementação do OpenZeppelin.
Como importamos o contrato inteligente ERC20 do OpenZeppelin e o contrato MyNewToken herda dele, não há necessidade de definir todas as funções por conta própria. Todas as funções definidas no contrato ERC20 estão incluídas no contrato MyNewToken. Se você deseja ver uma versão mais detalhada do código completo ERC-20, pode consultar.este arquivo.
Agora, reserve um tempo para personalizar o contrato inteligente de acordo com suas necessidades. Você também pode alterar o nome do token e o símbolo modificando esta seção: ERC20(“MeuNovoToken”, “MNT”).
Depois de personalizar seu contrato inteligente, o próximo passo é compilá-lo.
Passo 1: Clique no botão do Compilador Solidity. Verifique a versão do compilador e certifique-se de que o contrato correto esteja selecionado. Como seu contrato inteligente inclui a linha pragma solidity ^0.8.20;, a versão do compilador deve ser pelo menos 0.8.20. Em seguida, clique no botão Compilar MyNewToken.sol. Se tudo correr bem, você verá uma marca de seleção verde no botão de compilação.
Passo 2: Navegue até a guia Deploy & Run Transactions. Na seção Ambiente, escolha a opção Provedor Injetado para implantação. Antes de prosseguir, certifique-se de que o seu MetaMask está configurado para a rede de teste Sepolia e de que você selecionou o contrato MyNewToken para implantação. Por fim, clique no botão Deploy para implantar o seu contrato.
Se você não tem certeza de como alternar as redes, abra a extensão MetaMask, clique no seletor de rede no canto superior esquerdo e escolha Sepolia. Se não estiver visível, verifique se a opção 'Mostrar redes de teste' está habilitada. Para obter instruções sobre como adicionar a URL RPC QuickNode ao MetaMask, consulte o Guia QuickNode.
Passo 3: Confirme a transação no MetaMask:
Parabéns! Seu contrato de token agora foi implantado com sucesso na rede de testes Ethereum Sepolia e você oficialmente possui seu primeiro token!