WEB3DEV

Cover image for Comece a usar o Celo com Pontos de Extremidade RPC da Infura
Diogo Jorge
Diogo Jorge

Posted on

Comece a usar o Celo com Pontos de Extremidade RPC da Infura

Integrar a próxima onda de usuários para Web3 é um empreendimento enorme para o qual muitos projetos no ecossistema estão sendo construídos. Um projeto com uma abordagem única para isso é a Celo, uma rede blockchain de primeira camada. A Celo oferece uma experiência superior ao novo usuário por ser uma blockchain de primeira camada móvel que é fácil de usar com apenas um telefone celular. Seu número de telefone funciona como seu endereço, ao invés de uma sequência complexa de caracteres, e a rede permite aos usuários a opção de pagar taxas de gás com outros tokens além da moeda nativa.

No entanto, a experiência do usuário é apenas um lado da moeda de integração. A experiência do desenvolvedor é outra. Afinal, uma nova rede é tão boa quanto os RPCs que permitem usá-la. Apenas alguns desenvolvedores têm recursos para executar um nó.

A Infura, um dos provedores de nós Web3 mais populares, agora oferece nós RPC da Celo Network para todos os usuários. Portanto, se você deseja começar a desenvolver nessa rede que prioriza dispositivos móveis, nunca houve um momento melhor. Antes de começar a construir, vamos aprender mais sobre a Celo.

Este artigo fornecerá uma visão geral de alto nível da Celo Blockchain Network e como você pode começar a construir nela usando o Infura.

O que é a Celo?

Celo é uma rede de primeira camada de alto rendimento que se concentra em usuários móveis.

Mapear Números de Telefone para Chaves Públicas

A Celo é mais fácil para usuários de telefones móveis do que outras redes. A Celo mapeia números de telefone para chaves públicas, permitindo que os usuários enviem tokens para pessoas que não possuem carteiras. Um protocolo de atestação descentralizado faz o mapeamento e vincula uma conta a um número de telefone. Este serviço nunca recebe o número de telefone em texto não criptografado para manter a privacidade.

Image description

Como resultado, a experiência do usuário é melhor do que a maioria das blockchains, pois todas as interações são feitas por meio de números de telefone, em vez de sequências de mais de 30 caracteres que são facilmente suscetíveis a erros e impossíveis de memorizar.

Pagando taxas de gás com tokens ERC-20

Outro obstáculo da usabilidade é que a maioria das redes exige que os usuários paguem taxas de gás com um token nativo. Isso resulta em usuários trocando outros tokens por tokens nativos apenas para poder enviar transações.

Isso é um problema por dois motivos. Primeiro, ele adiciona uma etapa não trivial a cada transação se o usuário não tiver tokens nativos suficientes. Em segundo lugar, a troca de tokens é tributável em alguns países, então eles precisam manter um registro de cada vez que trocam para um token nativo apenas para cobrir as taxas de gás.

Com a Celo, você pode pagar com qualquer token ERC-20 aprovado atualmente disponível, até mesmo stablecoins, reduzindo mais uma barreira à entrada e tornando os custos mais previsíveis. No entanto, há uma ressalva: as transações pagas com moedas de gás não CELO custarão cerca de 50k de gás adicional. Também é importante observar que existe uma lista governável de moedas aceitas.

Ao desenvolver, a Celo vem com um SDK de dapps chamado ContractKit. Este SDK é um conjunto de pacotes que tornam a construção na Celo mais simples. O Connect, um dos principais pacotes do ContractKit, atua como um wrapper (encapsulador) em torno do web3.js que lida com as diferentes moedas para pagar as taxas.

Você pode definir sua moeda preferida como padrão para todas as transações, como neste exemplo:

import { CeloContract } from "@celo/contractkit"

const accounts = await kit.web3.eth.getAccounts()
kit.defaultAccount = accounts[0]
await kit.setFeeCurrency(CeloContract.StableToken)
Enter fullscreen mode Exit fullscreen mode

Com isso em seu código, você está definindo a moeda-padrão se o campo feeCurrency for deixado em branco ao enviar uma transação. O usuário ainda pode selecionar outra moeda para usar.

O ContractKit vem com uma lista de endereços de contrato que inclui todas as principais moedas da Celo. No exemplo CeloContract.StableToken refere-se a cUSD.

Também é possível definir sua moeda preferida por transação. Neste exemplo, enviamos cUSD e também pagamos com cUSD.

const contract = await kit.contracts.getStableToken() await
contract.transfer(recipientAddress, amount)
  .send({ feeCurrency: contract.address })
Enter fullscreen mode Exit fullscreen mode

A máquina virtual da Celo também é compatível com a EVM, pois se originou como uma bifurcação (fork) do Geth. Essa compatibilidade permite que você reutilize a maioria de suas habilidades de Solidity ao implantar seus contratos inteligentes na Celo. No entanto, existem algumas diferenças notáveis.

A primeira diferença é que os objetos de transação possuem campos adicionais como feeCurrency, gatewayFee e gatewayFeeRecipient. Eles fornecem incentivos de nó-completo e permitem que os usuários paguem suas taxas de gás com tokens diferentes. Isso não afeta você ao migrar contratos inteligentes de Ethereum para Celo, mas pode ser um problema ao migrar de Celo para Ethereum.

A segunda diferença pode ter implicações para seus contratos inteligentes baseados em Ethereum. Os opcodes DIFFICULTY e GASLIMIT não são suportados, e os campos também estão faltando nos cabeçalhos dos blocos.

Uma terceira diferença é que o caminho de derivação-chave é m/44'/52752'/0'/0 e não m/44'/60'/0'/0 como na Ethereum. Essencialmente, esse caminho de derivação permite que as carteiras gerem diferentes chaves a partir de uma frase-semente.

A rede é carbono negativa

A produção de CO2 por redes blockchain tem sido um grande ponto de discussão nos últimos anos. Vindo do Bitcoin, muitas das primeiras redes usaram o algoritmo de consenso Prova de Trabalho (Proof-of-Work) para eliminar os ataques Sybil.

O protocolo Celo usa Prova de Participação tolerante a falhas bizantinas (Proof-of-Stake BFT), que minimiza o uso de energia da rede em mais de 90%. Além disso, ele pode criar um novo bloco em cinco segundos, menos da metade do tempo que o Ethereum precisa.

Além disso, todos os blocos são finalizados imediatamente, para que você e seus usuários não precisem esperar que suas ações sejam escritas na cadeia.

Toda essa otimização ainda produz CO2, então a Celo usa projetos como o Wren, um serviço de assinatura de compensação de carbono que compensa 65,7 toneladas de CO2 mensalmente para obter carbono negativo. Com a proteção de florestas tropicais financiada pela tecnologia, a Celo já economizou mais de 30.000 toneladas de CO2.

Por que usar Celo com Infura?

A Infura oferece RPCs gratuitos para carteiras proeminentes, e muitos grandes projetos Web3 a utilizam como provedora de RPC, incluindo Brave, Uniswap, Compound, Gnosis e Maker, apenas para citar alguns. Além disso, a Infura alcançou 99,99% de tempo de atividade e tempos de resposta cerca de 10 vezes mais rápidos do que outros provedores de serviços, como Alchemy ou Quicknode.

A ConsenSys, a empresa por trás da Infura, também criou e mantém projetos Web3 cruciais, como MetaMask e Truffle Suite. Portanto, o conhecimento compartilhado de criação de carteiras, ferramentas de desenvolvimento e RPCs cria sinergias que você não obterá de nenhum outro provedor de RPC. Isso também significa que você obtém ferramentas confiáveis ​​e complementares de ponta a ponta do conjunto de produtos ConsenSys que se integram perfeitamente aos RPCs Infura.

Com o lançamento dos RPCs da Celo, a Infura agora suporta 10 redes diferentes, para que você possa construir em várias cadeias ao mesmo tempo. O melhor de tudo é que o acesso a essas redes e seus dados arquivados é gratuito!

Resumo

A Celo é uma rede empolgante que aborda os pontos problemáticos da experiência do usuário e do desenvolvedor Web3 com soluções inovadoras. Com sua abordagem mobile-first, os usuários podem interagir com a rede e receber tokens com seu número de telefone em vez de uma carteira criptográfica, facilitando a integração à rede para os recém-chegados à Web3.

Com a opção de pagar taxas de gás com outros tokens em vez da moeda nativa, a Celo também removeu um grande obstáculo no uso diário de uma rede blockchain. Outras redes exigem taxas pagas com um token nativo e potencialmente volátil.

Agora que a Infura oferece nós RPC para a rede Celo, é o momento perfeito para começar a construir nesta rede blockchain que prioriza dispositivos móveis. Para obter mais informações, consulte os documentos do Infura.

O artigo acima foi escrito por Paul McAviney e traduzido por Diogo Jorge. O artigo original pode ser encontrado aqui.

Latest comments (0)