Cada wallet y cada aplicación que habla con una blockchain lo hace a través de un endpoint RPC. Este artículo explica qué es, cuáles son las contrapartidas de los endpoints públicos y cómo comprobar y añadir uno de forma segura.
Qué es un endpoint RPC
RPC significa llamada a procedimiento remoto (remote procedure call). Un endpoint RPC es una dirección web de un nodo de blockchain que responde preguntas y acepta transacciones. Un nodo es un ordenador que guarda una copia de la cadena.
Por ejemplo, un endpoint puede responder «¿cuál es el saldo de esta dirección?», «¿cuál es el último bloque?» o «¿cuánto costaría esta transacción?». También puede aceptar una transacción firmada y pasarla a la red. En las cadenas de estilo Ethereum, el formato habitual es JSON-RPC sobre HTTPS. Solana usa un formato JSON-RPC similar con sus propios métodos.
Un endpoint no es la cadena en sí. Es una puerta de entrada. Si la puerta es lenta o incorrecta, lo que ves es lento o incorrecto.
Cómo lo usan las wallets y las aplicaciones
Cuando abres una wallet y ves tu saldo, la wallet lo consulta a un endpoint RPC. Cuando pulsas «enviar», la wallet firma la transacción en tu dispositivo y envía los datos firmados al endpoint, que los reenvía a la red. Tus claves privadas nunca van al endpoint. Consulta wallets y claves.
Una wallet viene con un endpoint por defecto para cada cadena. Puedes cambiarlo. En las redes que la wallet no conoce, añades una tú mismo, junto con el ID de cadena (chain ID), el nombre de la red y el símbolo de la moneda.
Proveedores públicos y privados
- Los endpoints públicos son gratuitos y están abiertos a cualquiera. Los gestionan fundaciones, cadenas, comunidades y empresas. Son buenos para un uso ligero.
- Los proveedores privados o de pago te dan tu propia clave de acceso, límites más altos, mejor soporte y, a menudo, un servicio más rápido y estable. Los usan aplicaciones con muchos usuarios.
Los endpoints públicos reparten la capacidad entre todos los usuarios, por lo que son menos predecibles. Un plan de pago te da más control, pero pagas y dependes de una empresa. Para un usuario normal de wallet, un endpoint público suele bastar. Para una aplicación de negocio, uno privado encaja mejor. ChainMonitor no recomienda a ningún proveedor.
Límites de uso
Para protegerse, los endpoints públicos limitan cuántas peticiones puedes hacer por segundo o por día. Si te pasas, responden con un error como «429 too many requests», o te ralentizan. Entonces una wallet puede mostrar un saldo vacío o fallar al enviar. El remedio es esperar, usar otro endpoint o usar un plan privado.
Latencia y retraso de bloques
Dos cifras te dicen lo sano que está un endpoint.
- Latencia: cuánto tarda una petición en recibir respuesta, en milisegundos. Cuanto menor, mejor. Depende de la distancia y de la carga.
- Retraso de bloques (block lag): cuántos bloques va por detrás el endpoint respecto al bloque más reciente de la red. Un endpoint que va unos bloques por detrás muestra saldos antiguos, puede decir que falta una transacción cuando no es así y puede dar estimaciones de comisión erróneas.
¿Por qué puede ir un endpoint por detrás? Su nodo puede haber perdido conexiones, puede estar aún sincronizándose o estar detrás de una caché que se actualiza despacio. Si un saldo de tu wallet parece incorrecto, un endpoint con retraso es una de las primeras cosas que comprobar. También puedes probar la misma dirección en un explorador de bloques.
Privacidad
Un endpoint ve cada petición que envías. Eso incluye tu dirección IP y las direcciones que consultas. El operador puede vincular tu IP con tus direcciones de wallet. Algunos proveedores publican una política de privacidad que dice lo que registran. Otros no.
Para reducir el riesgo:
- Lee la política de seguimiento y registro del proveedor.
- Usa otro endpoint, o una VPN, si no quieres que el operador vea tu dirección IP.
- Recuerda que todas las transacciones acaban siendo públicas en la cadena de todos modos. El riesgo es que se vincule tu identidad con tus direcciones.
- Ejecuta tu propio nodo si la privacidad te importa mucho.
Cómo añadir un RPC personalizado en una wallet
Los detalles varían entre wallets, pero los pasos son parecidos.
- Abre los ajustes de red de la wallet y elige añadir o editar una red.
- Introduce el nombre de la red, la URL del RPC, el ID de cadena, el símbolo de la moneda y, si lo piden, la URL de un explorador de bloques.
- Guarda y cambia a la red.
- Comprueba que tu saldo carga y que la wallet muestra la red correcta.
Toma el ID de cadena de una fuente de confianza. Un ID de cadena erróneo o una dirección RPC falsa pueden mostrar datos falsos. Añade solo endpoints de fuentes en las que confíes.
La página de estado de RPC de ChainMonitor
La página de cadenas lista los endpoints RPC públicos de las cadenas que cubre el sitio. Para cada endpoint, mide:
- Latencia: el tiempo que tarda en responder a una petición.
- Altura de bloque: el número del último bloque que informa el endpoint.
- Retraso: cuántos bloques va por detrás esa altura respecto al bloque más reciente que informan los demás endpoints sanos de la cadena.
La lista se ordena con los más rápidos primero, para que veas de un vistazo cuáles están sanos. Abre una cadena, por ejemplo desde /chains/<id>, para ver sus endpoints en detalle. Cada uno tiene un botón de añadir a la wallet con un clic, que pide a tu wallet que añada esa red con el ID de cadena correcto. Aun así confirmas la solicitud en tu wallet. Comprueba los valores antes de aprobar.
Las cifras son mediciones tomadas desde los servidores del sitio en un momento dado. Tu propia latencia depende de dónde estés. Úsalas como orientación, no como garantía.
Preguntas frecuentes
¿Qué significa RPC en cripto?
Significa llamada a procedimiento remoto. Un endpoint RPC es una dirección web que permite a las wallets y aplicaciones hablar con un nodo de blockchain.
¿Son seguros los endpoints RPC públicos?
No pueden quitarte los fondos, porque la firma se hace en tu wallet. Pero pueden ver tu dirección IP y las direcciones que consultas, y pueden mostrar datos erróneos o antiguos. Usa endpoints de fuentes en las que confíes.
¿Por qué mi wallet muestra un saldo incorrecto?
El endpoint puede ir por detrás de la cadena, estar limitado o estar caído. Cambia a otro endpoint y actualiza. También puedes comprobar la dirección en un explorador.
¿Qué es el retraso de bloques?
Es el número de bloques que un endpoint va por detrás del bloque más reciente. Un retraso grande significa datos antiguos.
¿Necesito mi propio proveedor de RPC?
La mayoría de la gente no. El endpoint por defecto de una wallet es suficiente para el uso normal. Si creas una aplicación o envías muchas peticiones, un plan privado o tu propio nodo puede encajar mejor.