RPC da Camada X
O que é o X Layer?
A X Layer é uma solução de Camada 2 do tipo rollup de conhecimento zero (zkRollup) para a Ethereum, desenvolvida com base na tecnologia zkEVM. Utiliza uma abordagem de provas híbridas — gerando provas STARK para a execução e, em seguida, envolvendo-as recursivamente numa prova SNARK para uma verificação eficiente na cadeia. Isto garante que as transações são matematicamente válidas, ao mesmo tempo que herdam a segurança da Ethereum.
Ao contrário dos rollups otimistas, a X Layer não requer períodos de desafio para os levantamentos, uma vez que as provas de validade proporcionam certeza criptográfica assim que são submetidas. A finalidade depende dos intervalos de submissão das provas — normalmente minutos, em vez de dias —, mas continua a ser mais rápida do que nos rollups otimistas. Os custos de transação são significativamente reduzidos em comparação com a rede principal da Ethereum, com poupanças resultantes do agrupamento de transações e da compressão dos calldata.
A X Layer alcança compatibilidade ao nível do bytecode com a Máquina Virtual Ethereum (EVM). Esta arquitetura zkEVM suporta quase todos os códigos de operação (opcodes) e pré-compilações da EVM, apresentando apenas diferenças menores em casos pontuais, como os custos de gás. Isto garante que a maioria dos contratos inteligentes e aplicações existentes da Ethereum possam ser implementados sem modificações, preservando uma ampla compatibilidade com o ambiente de execução, as ferramentas e o ecossistema de programadores da Ethereum, ao mesmo tempo que proporciona garantias de segurança de conhecimento zero.
Interagir com a Camada X
A X Layer suporta na íntegra a interface JSON-RPC padrão da Ethereum, ao mesmo tempo que oferece funcionalidades adicionais específicas da Camada 2. Isto garante uma compatibilidade total com as ferramentas existentes da Ethereum, permitindo que os programadores utilizem a X Layer de forma integrada com ferramentas como o MetaMask, o Hardhat, o Foundry e as bibliotecas Web3, sem necessidade de alterações no código.
Com a API X Layer, pode:
- Executar todos os métodos JSON-RPC padrão da Ethereum (
eth_call,eth_sendTransaction,eth_getBalance) - Aceder a métodos específicos da Camada X para operações de rollup (por exemplo, consultar o estado das provas e as interações com a ponte)
- Consultar a atividade da ponte, os envios em lote e o estado da verificação das provas
- Subscreva eventos L2 em tempo real através de ligações WebSocket
- Utilize as ferramentas de rastreio e inspeção disponíveis para uma depuração mais aprofundada da blockchain
Pode ligar-se à API das seguintes formas:
- Executar um nó local da Camada X
- Utilizar um fornecedor de serviços alojados, como um ponto de acesso Quicknode X Layer, que proporciona acesso à Mainnet da X Layer com elevada fiabilidade, dados arquivados e desempenho melhorado
Redes compatíveis
A Quicknode disponibiliza acesso às seguintes redes da Camada X:
O XLayer utiliza uma regeneração por bloco 42,810,021. Os dados históricos anteriores a este bloco estão disponíveis, mas encontram-se armazenados em nós antigos e são encaminhados automaticamente quando se indica um número de bloco específico em métodos como eth_getBlockByNumber, eth_getBalance, e debug_trace*.
O próprio bloco 42 810 021 é impossível de localizar e pode ser devolvido {"code":4444,"message":"pruned history unavailable"}.
O X Layer utiliza dois clientes de nó diferentes , separados no limite da re-génese (bloco 42 810 021):
- Bloco
42,810,021e antes disso — Requer um cdk-Erigon nó. Os nós Geth devolvemnullrelativamente a estas transações históricas. - Após o bloco
42,810,021— Requer um Geth nó. Os nós Erigon devolvemnullpara estas transações atuais.
Para consultar dados anteriores à regeneração, inclua o x-qn-height cabeçalho com o número do bloco de destino no seu pedido, para o encaminhar para o cdk-Erigon nó. Sem este cabeçalho, os pedidos são encaminhados por predefinição para o Geth nó, pelo que o cabeçalho não é necessário para os blocos posteriores à regeneração.
Exemplo anterior à Regénese (cdk-Erigon, bloco ≤ 42 810 021):
curl --location 'https://docs-demo.xlayer-mainnet.quiknode.pro/' \
--header 'Content-Type: application/json' \
--header 'x-qn-height: 42810020' \
--data '{"method":"eth_getBlockByNumber","params":["0x28D3AA4",false],"id":1,"jsonrpc":"2.0"}'
Exemplo pós-Regenesis (Geth, bloco > 42 810 021):
curl --location 'https://docs-demo.xlayer-mainnet.quiknode.pro/' \
--header 'Content-Type: application/json' \
--data '{"method":"eth_getBlockByNumber","params":["0x28D3AA6",false],"id":1,"jsonrpc":"2.0"}'
Referência completa para programadores que desenvolvem na Camada X com o Quicknode:
Início Rápido
Comece a utilizar o X Layer rapidamente. Siga o nosso guia de início rápido passo a passo para configurar o seu endpoint e efetuar o seu primeiro pedido de API.
Pontos de acesso do prestador
Saiba como configurar e gerir os seus terminais X Layer para obter um desempenho e uma fiabilidade ótimos.
Visão geral da API
Explore as APIs suportadas, as redes, os produtos Quicknode e as funcionalidades avançadas das APIs para criar aplicações poderosas.
Mercado
Descubra e integre complementos e ferramentas poderosas do Quicknode Marketplace para melhorar as suas aplicações web3.
Segurança de terminais
Proteja os seus terminais através da autenticação, da criação de listas de autorização e das melhores práticas de segurança.
Códigos de erro
Compreender os códigos de erro mais comuns e os passos para a resolução de problemas nas solicitações da API X Layer.