Are you a Web3 developer? Help us improve the Chiliz Chain docs! Share your opinion
in less than 2 minutes
Chiliz Chain Developer Docs
Chiliz ChainBlock ExplorerCommunitySocios.com
Português do Brasil
Português do Brasil
  • Documentação para desenvolvedores da Chiliz Chain
  • Início Rápido
    • Chiliz Chain em poucas palavras
    • Conectar-se ao Mainnet e Testnet
    • Obtenha tokens de testnet
      • Obtenha testCHZs com o Faucet da Tatum
    • Implantar e verificar um contrato
      • Implantar com Remix IDE
        • Contrato inteligente ERC-20
      • Implantar com thirdweb
      • Verificar com Chiliscan
      • Verificar com Chiliz Block Explorer
    • Executar um Nó da Chiliz Chain
    • Curso online gratuito
    • Endereços de Alocação de Suprimento Inflacionário
  • Aprender
    • Sobre a Chiliz Chain
      • 2024 Dragon8 hard fork
      • Chiliz Labs
    • Chiliz Bridge
      • Como fazer a bridge dos seus CHZ
    • Staking na Chiliz Chain
      • Faça Stake do seu CHZ
      • Desfazer o Stake do seu CHZ
      • Recompensas de Staking
      • Fazendo Staking de CHZ com sua Ledger
    • Torne-se um Validador
      • Executar um Nó de Validador
      • Slashing de Validadores
  • Desenvolver
    • Básico
      • Use MetaMask
        • Instalar MetaMask
        • Conectar Chiliz Chain ao MetaMask
      • Conectar à Chiliz Chain
        • Conectar usando RPC
        • Executar um Nó da Chiliz Chain
        • Use uma carteira de hardware
      • Block Explorers
      • Spicy Faucets
        • Obtenha testCHZs com o Faucet da Tatum
        • Obtenha testCHZs com o Spicy Faucet
        • Obtenha Fan Tokens de teste com o Spicy Faucet
    • Avançado
      • Como usar Account Abstraction
      • Como usar um Oracle
      • Como usar um RNG
Powered by GitBook
On this page
  • O que é Account Abstraction?
  • O que isso significa para os desenvolvedores da Chiliz Chain?
  • Como fazer isso usando o Biconomy?

Was this helpful?

  1. Desenvolver
  2. Avançado

Como usar Account Abstraction

Last updated 10 months ago

Was this helpful?

O que é Account Abstraction?

Account Abstraction é uma tecnologia blockchain que permite aos usuários usar contratos inteligentes como suas contas, tornando-os totalmente programáveis.

Ela visa tornar as contas de usuários mais flexíveis e funcionais, aprimorando assim a experiência do usuário.

O que isso significa para os desenvolvedores da Chiliz Chain?

Implementando AA, os desenvolvedores podem melhorar a experiência do usuário de seu projeto: interações mais simples com a Chiliz Chain significam um aplicativo mais amigável ao usuário.

Como fazer isso usando o Biconomy?

Biconomy fornece um SDK completo de Account Abstraction, que fornece acesso a Smart Accounts:

De acordo com o próprio Biconomy, existem 4 maneiras de aproveitar sua pilha de AA na Chiliz Chain:

  • Transações sem gás

  • Transações em lote

  • Carteiras de contratos inteligentes (incluindo login social)

  • Módulos incluindo chaves de sessão, validador multichain, recuperação de conta e muito mais!

Biconomy tem uma página de início rápido útil:

O código de exemplo usa a rede Polygon Mumbai, e você pode adaptá-lo para Chiliz, assim:

import {
  Hex,
  createWalletClient,
  encodeFunctionData,
  http,
  parseAbi,
  zeroAddress,
} from "viem";
import { privateKeyToAccount } from "viem/accounts";
import { ChainId } from '@biconomy/core-types'
import { createSmartAccountClient } from "@biconomy/account";

const bundlerUrl =
  "https://bundler.biconomy.io/api/v2/80001/nJPK7B3ru.dd7f7861-190d-41bd-af80-6877f74b8f44"; // Found at https://dashboard.biconomy.io

export const createAccountAndMintNft = async () => {
  // ----- 1. Generate EOA from private key
  const account = privateKeyToAccount("0x" + "PRIVATE_KEY");
  const client = createWalletClient({
    account,
    chainId: ChainId.CHILIZ_TESTNET, // or ChainId.CHILIZ_MAINNET,
    transport: http(),
  });
  const eoa = client.account.address;
  console.log(`EOA address: ${eoa}`);

  // ------ 2. Create biconomy smart account instance
  const smartAccount = await createSmartAccountClient({
    signer: client,
    bundlerUrl,
  });
  const saAddress = await smartAccount.getAccountAddress();
  console.log("SA Address", saAddress);
};
createAccountAndMintNft();

Lembre-se dos IDs da Chiliz Chain:

  • CHILIZ_MAINNET = 88888

  • CHILIZ_TESTNET = 88882

Além disso, ao trabalhar com o Biconomy, note que a Chiliz tem seu próprio endereço de entrypoint, tanto para mainnet quanto para testnet: 0x00000061FEfce24A79343c27127435286BB7A4E1

Isso é importante ao usar o Biconomy Bundler ou Paymaster.

// CC2 has its own entrypoint address
const CHILIZ_BUNDLER_ENTRYPOINT_ADDRESS='0x00000061FEfce24A79343c27127435286BB7A4E1'

const bundler = new Bundler({
    bundlerUrl: `https://bundler.biconomy.io/api/v2/${ChainId.CHILIZ_TESTNET}/nJPK7B3ru.dd7f7861-190d-41bd-af80-6877f74b8f44`,
    chainId: ChainId.CHILIZ_TESTNET,
    entryPointAddress: CHILIZ_BUNDLER_ENTRYPOINT_ADDRESS,
})
https://docs.biconomy.io/account
https://docs.biconomy.io/quickstart