Parachains
Traducción de Polkadot Wiki “Parachains”
Una parachain (paracadena) es una estructura de datos de específica aplicación que es globalmente coherente y validable por los validadores de la Relay Chain (cadena de retransmisión). Más comúnmente, una parachain tomará la forma de una blockchain, pero no hay una necesidad específica de que sean blockchains reales. Toman su nombre del concepto de cadenas paralelizadas que corren paralelas a la Relay Chain. Debido a su naturaleza paralela, pueden paralelizar el procesamiento de transacciones y lograr la escalabilidad del sistema Polkadot. Comparten la seguridad de toda la red y pueden comunicarse con otras parachains a través de XCMP.
Las parachains son mantenidas por un mantenedor de red conocido como collator (clasificador). La función del nodo collator es mantener un nodo completo de la parachain, retener toda la información necesaria de la parachain y producir nuevos candidatos de bloque para pasar a los validadores de la Relay Chain para su verificación e inclusión en el estado compartido de Polkadot. La incentivación de un nodo collator es un detalle de implementación de la parachain. No es necesario que estén bloqueados en la Relay Chain o posean tokens DOT a menos que así lo estipule la implementación de la parachain.
El Polkadot Host (PH) requiere que las transiciones de estado realizadas en las parachains se especifiquen como un Wasm ejecutable. Las pruebas de las nuevas transiciones de estado que ocurren en una parachain deben validarse con la función de transición de estado registrada (STF) que los validadores almacenan en la Relay Chain antes de que Polkadot reconozca que se ha producido una transición de estado en una parachain. La restricción clave con respecto a la lógica de una parachain es que debe ser verificable por los validadores de Relay Chain. La verificación generalmente toma la forma de una prueba agrupada de una transición de estado conocida como un bloque de Prueba de Verificación (PoV), que se envía a los validadores por uno o más de los collators de la parachain para su verificación.
Economías de Parachain #
Las parachains pueden tener sus propias economías con sus propios tokens nativos. Los esquemas como Proof-of-Stake se utilizan generalmente para seleccionar el conjunto de validadores con el fin de manejar la validación y finalización; no se requerirá que las parachains hagan ninguna de esas cosas. Sin embargo, dado que Polkadot no es demasiado específico sobre lo que puede implementar la parachain, la parachain puede decidir implementar un token de participación, pero generalmente no es necesario.
Los collators pueden ser incentivados mediante la inflación de un token de parachain nativo. Puede haber otras formas de incentivar los nodos collators que no impliquen inflar el token nativo de la parachain.
Las tarifas de transacción en un token nativo de la parachain también pueden ser una opción de implementación de las parachains. Polkadot no establece reglas estrictas ni rápidas sobre cómo las parachains deciden sobre la validez original de las transacciones. Por ejemplo, una parachain puede implementar que las transacciones deban pagar una tarifa mínima a los collators para que sean válidas. The Relay Chain hará cumplir esta validez. De manera similar, una parachain podría no incluir eso en su implementación y Polkadot aún haría cumplir su validez.
No es necesario que las parachains tengan su propio token. Si lo tienen, depende de la parachain preparar la economía de su token, no de Polkadot.
Parachain Hubs #
Si bien Polkadot habilita la funcionalidad de cadena cruzada (crosschain) entre las parachains, necesita que haya cierta latencia entre el envío de un mensaje desde una parachain hasta que la parachain de destino recibe el mensaje. En el escenario optimista, la latencia para este mensaje debe ser de al menos 2 bloques: un bloque para que se envíe el mensaje y un bloque para que la parachain receptora procese y produzca un bloque que actúe sobre el mensaje. Sin embargo, en algunos casos, podemos ver que la latencia de los mensajes es mayor si hay muchos mensajes que están en cola para ser procesados, o si no existen nodos que estén ejecutando ambas redes parachain que puedan chismear rápidamente el mensaje a través del redes.
Debido a la latencia necesaria involucrada en el envío de mensajes entre cadenas, algunas parachains planean convertirse en hubs (centros) para toda una industria. Por ejemplo, un proyecto de parachain, Acala, planea convertirse en un hub para aplicaciones de finanzas descentralizadas (DeFi). Muchas aplicaciones DeFi aprovechan una propiedad conocida como componibilidad, lo que significa que las funciones de una aplicación se pueden componer con otras de manera sinérgica para crear nuevas aplicaciones. Un ejemplo de esto son los flash loans (préstamos flash), que toman prestados fondos para ejecutar alguna lógica en cadena siempre que el préstamo se reembolse al final de la transacción.
Un problema con la latencia entre cadenas significa que la propiedad de componibilidad se debilita entre las parachains en comparación con una sola blockchain. Esta implicación es común a todos los diseños de blockchain fragmentados, incluidos Polkadot, Eth2.0 y otros. La solución a esto es la introducción de hubs parachain que mantienen la propiedad más fuerte de componibilidad de un solo bloque.
Adquisición de Slot de Parachain #
Polkadot admite un número limitado de parachains, que actualmente se estima en unas 100. Como el número de slots (ranuras o espacios) es limitado, hay varias formas de asignarlos:
- Parachains para gobernanza, o parachains de “bien común”
- Parachains concedidas en Subasta
- Parathreads
Las parachains de “bien común” son asignadas por el sistema de gobernanza en cadena de Polkadot y se consideran un “bien común” para la red, como puentes a otras redes o cadenas. Por lo general, se consideran cadenas a nivel de sistema o cadenas de utilidad pública. Por lo general, estos no tienen un modelo económico propio y ayudan a eliminar las transacciones de la Relay Chain, lo que permite un procesamiento de parachain más eficiente.
Las parachains concedidas en subasta se conceden en una subasta sin permiso. Los equipos de Parachain pueden ofertar con sus propios tokens DOT u obtenerlos de la comunidad utilizando la funcionalidad de préstamo colectivo.
Las parathreads tienen la misma API que las parachains, pero están programadas para ejecutarse mediante un sistema de pago por uso con una subasta para cada bloque.
Caducidad del Slot #
Cuando una parachain gana una subasta, los tokens con los que puja se reservan hasta el final del contrato de arrendamiento. Los saldos reservados no son transferibles y no se pueden usar para staking. Al final del contrato de arrendamiento, los tokens se desbloquean. Las parachains que no hayan obtenido un nuevo contrato de arrendamiento para ampliar su espacio se convertirán automáticamente en parathreads.
Parachains de Bien Común #
Las parachains de “bien común” son slots de parachains reservadas para la funcionalidad que beneficia al ecosistema en su conjunto. Al asignar un subconjunto de slots de parachains a cadenas de bien común, toda la red puede obtener el beneficio de valiosas parachains que, de otro modo, no contarían con fondos suficientes debido al problema del usuario gratuito. No se asignan a través del proceso de subasta de parachain, sino mediante el sistema de gobernanza en cadena. Generalmente, el contrato de arrendamiento de una parachain de bien común no vence; solo se eliminaría a través de la gobernanza.
Consulte el artículo del blog de Polkadot y la página de parachains de bien común para obtener más información.
Ejemplos #
Algunos ejemplos de parachains:
- Cadenas de Consorcio Encriptadas: estas son posiblemente cadenas privadas que no filtran ninguna información al público, pero que aún así pueden interactuar sin confianza debido a la naturaleza del protocolo XCMP.
- Cadenas de Alta Frecuencia: estas son cadenas que pueden calcular muchas transacciones en un corto período de tiempo tomando ciertas compensaciones o realizando optimizaciones.
- Cadenas de privacidad: son cadenas que no filtran ninguna información al público mediante el uso de criptografía novedosa.
- Cadenas de contratos inteligentes: estas son cadenas que pueden tener una lógica adicional implementada mediante el despliegue de un código conocido como contratos inteligentes.
PREGUNTAS MÁS FRECUENTES#
¿Qué es el “consenso de parachain”? #
El “consenso de Parachain” es especial porque seguirá la Relay Chain de Polkadot. Las parachains no pueden utilizar otros algoritmos de consenso que proporcionen su propia finalidad. Solo las cadenas soberanas (que deben tender un puente a la Relay Chain a través de una parachain) pueden controlar su propio consenso. Las parachains tienen control sobre cómo se crean los bloques y por quién.
¿Cómo se distribuirán los slots de las parachains? #
Los slots de las parachains se podrán adquirir mediante subasta, consulte el artículo sobre slots de parachains. Además, algunos slots de parachains se reservarán para ejecutar parathreads, cadenas que ofertan por bloque para ser incluidas en la Relay Chain.
¿Qué sucede con las parachains cuando el número de validadores cae por debajo de un cierto umbral?
La proporción mínima segura de validadores por parachain es de 5: 1. Con un conjunto suficientemente grande de validadores, la aleatoriedad de su distribución junto con la disponibilidad y validez garantizará que la seguridad esté a la par. Sin embargo, si hubiera una gran interrupción de un proveedor masivo de servicios en la nube u otra catástrofe de conectividad de red, es razonable esperar que disminuya la cantidad de validadores por cadena.
Dependiendo de cuántos validadores se desconecten, el resultado es diferente.
Si algunos validadores se desconectan, las parachains cuyos grupos de validadores sean demasiado pequeños para validar un bloque omitirán esos bloques. Su velocidad de producción de bloques se reducirá a cualquier incremento de 6 segundos, hasta que la situación se resuelva y el número óptimo de validadores esté nuevamente en el grupo de validadores de esa parachain.
Si entre el 30% y el 50% de los validadores se desconectan, la disponibilidad se verá afectada porque necesitamos dos tercios del conjunto de validadores para respaldar a los candidatos de la parachain. En otras palabras, todas las parachains se detendrán hasta que se resuelva la situación. La finalidad también se detendrá, pero las transacciones de bajo valor en la relay chain deberían ser lo suficientemente seguras para ejecutarse, a pesar de las bifurcaciones comunes. Una vez que el número requerido de validadores esté activo nuevamente, las parachains reanudarán la producción de bloques.
Dado que los collators son nodos completos de la relay chain y la parachain que están ejecutando, podrán reconocer una interrupción tan pronto como se produzca y deberían dejar de producir candidatos de bloque. Del mismo modo, debería ser fácil para ellos reconocer cuándo es seguro reiniciar la producción de bloques, tal vez en función del retraso de la finalidad, el tamaño del conjunto del validador o algún otro factor que aún no se ha decidido dentro de Cumulus.
Kits de Desarrollo de Parachains (PDK) #
Los Kits de Desarrollo de Parachains son un conjunto de herramientas que permiten a los desarrolladores crear sus propias aplicaciones como parachains. Para obtener más información, consulte aquí.
Despliegue de parachains #
Consulte el archivo README del repositorio de Cumulus para obtener información sobre cómo compilar e implementar una parachain.
Recursos#
Polkadot: The Parachain: publicación del blog del cofundador de Polkadot, Rob Habermeier, que introdujo las parachains en 2017 como “una forma más simple de blockchain, que se adhiere a la seguridad proporcionada por una Relay Chain en lugar de proporcionar la suya propia. La Relay Chain proporciona seguridad a las parachains pero también proporciona una garantía de transmisión segura de mensajes entre ellas “.
The Path of a Parachain Block: un recorrido técnico de cómo las parachains interactúan con la Relay Chain.
124Eh963tLZd2gmZZVcTE1C2iiyt4tfsFwadZ4dha4HY6tZD