Ir al contenido principal

RPC de capa X

Con Quicknode, tendrás acceso a nuestra red global X Layer, que siempre redirige tus solicitudes de API a la ubicación disponible más cercana, lo que garantiza una baja latencia y las velocidades más rápidas.

¿Qué es X Layer?

X Layer es una solución de capa 2 de tipo «rollup de conocimiento cero» (zkRollup) para Ethereum, basada en la tecnología zkEVM. Utiliza un enfoque de pruebas híbridas: genera pruebas STARK para la ejecución y, a continuación, las envuelve de forma recursiva en una prueba SNARK para permitir una verificación eficiente en la cadena. Esto garantiza que las transacciones sean matemáticamente válidas, al tiempo que se mantiene la seguridad de Ethereum.

A diferencia de los rollups optimistas, X Layer no requiere períodos de desafío para las retiradas, ya que las pruebas de validez proporcionan certeza criptográfica una vez enviadas. La finalidad depende de los intervalos de envío de las pruebas —normalmente minutos en lugar de días—, pero sigue siendo más rápida que en los rollups optimistas. Los costes de transacción se reducen significativamente en comparación con la red principal de Ethereum, gracias al agrupamiento de transacciones y a la compresión de los datos de llamada.

X Layer logra compatibilidad a nivel de bytecode con la Máquina Virtual de Ethereum (EVM). Esta arquitectura zkEVM es compatible con casi todos los códigos de operación y precompilados de la EVM, con solo pequeñas diferencias en casos excepcionales, como los costes de gas. Esto garantiza que la mayoría de los contratos inteligentes y aplicaciones existentes de Ethereum puedan implementarse sin modificaciones, lo que preserva una amplia compatibilidad con el entorno de ejecución, las herramientas y el ecosistema de desarrolladores de Ethereum, al tiempo que ofrece garantías de seguridad de conocimiento cero.

Interacción con la capa X

X Layer es totalmente compatible con la interfaz estándar JSON-RPC de Ethereum y, al mismo tiempo, ofrece funcionalidades adicionales específicas de la Capa 2. Esto garantiza una compatibilidad total con las herramientas existentes de Ethereum, de modo que los desarrolladores pueden utilizar X Layer sin problemas con herramientas como MetaMask, Hardhat, Foundry y las bibliotecas Web3 sin necesidad de modificar el código.

Con la API de X Layer, puedes:

  • Ejecutar todos los métodos JSON-RPC estándar de Ethereum (eth_call, eth_sendTransaction, eth_getBalance)
  • Acceder a los métodos específicos de la capa X para operaciones de rollup (por ejemplo, consultar el estado de las pruebas y las interacciones con el puente)
  • Consultar la actividad del puente, los envíos por lotes y el estado de la verificación de pruebas
  • Suscríbete a eventos L2 en tiempo real a través de conexiones WebSocket
  • Utiliza las herramientas de seguimiento e inspección disponibles para realizar una depuración más exhaustiva de la cadena de bloques

Puedes conectarte a la API de las siguientes formas:

  • Ejecución de un nodo local de X Layer
  • Utilizar un proveedor de alojamiento, como un punto de conexión de Quicknode X Layer, que ofrece acceso a la red principal de X Layer con gran fiabilidad, datos archivados y un rendimiento mejorado

Redes compatibles

Quicknode ofrece acceso a las siguientes redes de capa X:

Red principal
Tipo:Producción
ID de la cadena:
196
HTTP:
WSS:
Archivo:
Poda:Ninguna
Red de pruebas
Tipo:Red de pruebas
ID de la cadena:
1952
HTTP:
WSS:
Archivo:
Poda:Ninguna
Nota:

XLayer utiliza una «regénesis» en el bloque 42,810,021. Los datos históricos anteriores a este bloque están disponibles, pero se almacenan en nodos antiguos y se redirigen automáticamente cuando se indica un número de bloque concreto en métodos como eth_getBlockByNumber, eth_getBalance, y debug_trace*.

El bloque 42.810.021 en sí mismo es imposible de rastrear y puede devolver {"code":4444,"message":"pruned history unavailable"}.

Requisitos de los nodos de transacción

X Layer utiliza dos clientes de nodo diferentes , separados en el límite de la regeneración (bloque 42 810 021):

  • Bloque 42,810,021 y antes — Requiere un cdk-Erigon nodo. Los nodos Geth devuelven null para estas transacciones históricas.
  • Después del bloque 42,810,021 — Requiere un Geth nodo. Los nodos de Erigon devuelven null para estas transacciones actuales.

Para consultar datos anteriores a la regeneración, incluye el x-qn-altura encabezado con el número de bloque de destino en tu solicitud para que se redirija al cdk-Erigon nodo. Sin este encabezado, las solicitudes se dirigen por defecto al Geth nodo, por lo que el encabezado no es necesario para los bloques posteriores a la regeneración.

Ejemplo anterior a la Regénesis (cdk-Erigon, bloque ≤ 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"}'

Ejemplo posterior a la regeneración (Geth, bloque > 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"}'
Comparte este documento