Análisis completo de la escalabilidad off-chain: desde estado del canal hasta Lighting Network

Profundidad de análisis de la expansión off-chain

1. La necesidad de la expansión

El futuro de la blockchain es una gran visión: descentralización, seguridad y escalabilidad; pero a menudo la blockchain solo puede lograr dos de estos, y satisfacer estos tres requisitos se conoce como el problema del triángulo imposible de la blockchain. Durante años, las personas han estado explorando cómo resolver este dilema, cómo aumentar la capacidad de procesamiento y la velocidad de las transacciones de la blockchain garantizando al mismo tiempo la descentralización y la seguridad, es decir, resolver el problema de escalabilidad, que es uno de los temas candentes en el desarrollo actual de la blockchain.

Definamos primero de manera general la descentralización, la seguridad y la escalabilidad de la blockchain:

  • Descentralización: Cualquier persona puede convertirse en un nodo para participar en la producción y verificación del sistema blockchain; cuanto mayor sea el número de nodos, mayor será el grado de descentralización, asegurando así que la red no esté controlada por un pequeño grupo de grandes participantes centralizados.
  • Seguridad: Cuanto mayor sea el costo para obtener el control del sistema de blockchain, mayor será la seguridad, por lo que la cadena puede resistir ataques de un mayor porcentaje de participantes.
  • Escalabilidad: la capacidad de la blockchain para procesar una gran cantidad de transacciones.

La primera bifurcación dura significativa de la red Bitcoin surgió del problema de escalabilidad. A medida que aumentaba el número de usuarios y el volumen de transacciones de Bitcoin, la red de Bitcoin, con un límite de 1MB por bloque, comenzó a enfrentar problemas de congestión; desde 2015, la comunidad de Bitcoin ha tenido desacuerdos sobre el problema de escalabilidad, donde una parte, representada por Bitcoin ABC, apoya la expansión del tamaño de los bloques, mientras que la otra parte, representada por Bitcoin Core, aboga por el uso de la solución Segwit para optimizar la estructura de la cadena principal. El 1 de agosto de 2017, Bitcoin ABC lanzó su sistema cliente de 8MB, lo que provocó la primera bifurcación dura significativa en la historia de Bitcoin y dio lugar a la creación de la nueva criptomoneda BCH.

Igualmente, la red de Ethereum también optó por sacrificar una parte de la escalabilidad para garantizar la seguridad y descentralización de la red; aunque la red de Ethereum no ha limitado el volumen de transacciones como lo ha hecho la red de Bitcoin a través de restricciones en el tamaño de los bloques, sino que ha cambiado de forma indirecta a establecer un límite en las tarifas de combustible que puede contener un único bloque, el objetivo sigue siendo lograr un Consenso Sin Confianza y asegurar una amplia distribución de nodos ( ya sea eliminando o aumentando el límite, se eliminarán muchos nodos más pequeños con ancho de banda, almacenamiento y capacidad de cálculo insuficientes ).

Desde CryptoKitties en 2017, el verano de DeFi, hasta el surgimiento posterior de aplicaciones en cadena como GameFi y NFT, la demanda del mercado por un mayor throughput ha ido en aumento. Sin embargo, incluso Ethereum, que es Turing completo, solo puede procesar entre 15 y 45 transacciones por segundo ( TPS ), lo que ha resultado en un aumento continuo de los costos de transacción, tiempos de liquidación más largos y la dificultad para que la mayoría de Dapps soporten los costos operativos. La red en su conjunto se ha vuelto lenta y cara para los usuarios, y el problema de la escalabilidad de blockchain necesita ser abordado urgentemente. La solución ideal para la escalabilidad es: aumentar la velocidad de transacción de la red blockchain ( un tiempo de finalización más corto ) y un throughput de transacción ( un TPS más alto ) sin sacrificar la descentralización y la seguridad.

2. Tipos de soluciones de escalabilidad

Dividimos los planes de expansión en dos categorías principales: expansión en cadena y expansión off-chain, basándonos en el criterio de "si se cambia una capa de la red principal".

2.1 Escalabilidad en cadena

Concepto clave: una solución para lograr la escalabilidad mediante el cambio de una capa del protocolo de la red principal, la principal solución actual es el sharding.

La escalabilidad en cadena tiene varias soluciones, este artículo no se expandirá, a continuación se enumeran brevemente dos soluciones:

  • La opción uno es expandir el espacio del bloque, es decir, aumentar la cantidad de transacciones empaquetadas en cada bloque, pero esto aumentará los requisitos para los dispositivos de nodos de alto rendimiento, elevará la barrera de entrada para los nodos y reducirá el grado de "descentralización".
  • La opción dos es el sharding, que divide el libro mayor de la blockchain en varias partes, donde no todos los nodos participan en el registro de todas las transacciones, sino que diferentes fragmentos, es decir, diferentes nodos, son responsables de diferentes registros. El cálculo en paralelo puede manejar múltiples transacciones simultáneamente; esto puede reducir la presión de cálculo en los nodos y el umbral de entrada, aumentando la velocidad de procesamiento de transacciones y el grado de descentralización; pero esto significa que la potencia de cálculo de toda la red se dispersa, lo que puede disminuir la "seguridad" de toda la red.

Cambiar el código del protocolo de la capa principal de la red puede tener efectos negativos impredecibles, ya que cualquier pequeño fallo de seguridad en la capa subyacente puede amenazar gravemente la seguridad de toda la red, lo que podría llevar a la red a realizar un fork o interrumpir la actualización de reparación. Por ejemplo, el incidente de la vulnerabilidad de inflación de Zcash en 2018: el código de Zcash se basa en modificaciones del código de la versión 0.11.2 de Bitcoin. En 2018, un ingeniero descubrió una grave vulnerabilidad en el código subyacente, que permitía la emisión ilimitada de tokens; el equipo dedicó 8 meses a repararla en secreto, y solo después de corregir la vulnerabilidad se hizo pública la información sobre el incidente.

2.2 off-chain expansión

Concepto clave: solución de escalado que no altera el protocolo de la capa uno existente.

Las soluciones de escalado off-chain se pueden subdividir en Layer2 y otras soluciones:

Informe de investigación en profundidad: Análisis completo de la expansión off-chain

3. Profundidad de la solución de escalado off-chain

Canales de Estado 3.1

3.1.1 Resumen

Los canales de estado establecen que los usuarios solo necesitan interactuar con la cadena principal cuando el canal se abre, se cierra o se resuelve una disputa, y las interacciones entre usuarios se llevan a cabo fuera de la cadena, para reducir el tiempo y el costo monetario de las transacciones de los usuarios, y permitir que el número de transacciones no tenga límite.

Los canales de estado son protocolos P2P simples, adecuados para "aplicaciones basadas en turnos", como un juego de ajedrez entre dos personas. Cada canal es gestionado por un contrato inteligente de múltiples firmas que se ejecuta en la cadena principal, el cual controla los activos depositados en el canal, verifica las actualizaciones de estado y arbitra disputas entre los participantes ( según las pruebas de fraude ) con firma y sello de tiempo. Después de que los participantes despliegan el contrato en la red blockchain, depositan una cantidad de fondos y los bloquean, y una vez que ambas partes firman y confirman, el canal se abre oficialmente. El canal permite transacciones gratuitas fuera de la cadena de forma ilimitada entre los participantes ( siempre que el valor neto de sus transferencias no exceda el total de tokens depositados ). Los participantes se turnan para enviar actualizaciones de estado al otro, esperando la confirmación de la firma de la otra parte. Una vez que la otra parte confirma con su firma, la actualización de estado se considera completada. Normalmente, las actualizaciones de estado acordadas por ambas partes no se cargan en la cadena principal, solo se depende de la confirmación de la cadena principal en caso de disputas o al cerrar el canal. Si se necesita cerrar el canal, cualquiera de los participantes puede presentar una solicitud de transacción en la cadena principal; si la solicitud de salida recibe la aprobación por firma unánime de todos, se ejecuta inmediatamente en la cadena, es decir, el contrato inteligente distribuye los fondos bloqueados restantes según el saldo de cada participante en el estado final del canal; si otros participantes no firman la aprobación, todos deben esperar el final del "período de desafío" para recibir los fondos restantes.

En resumen, el esquema de canales de estado puede reducir significativamente la carga computacional de la cadena principal, mejorar la velocidad de las transacciones y disminuir los costos de transacción.

3.1.2 Línea de tiempo

  • 2015/02, Joseph Poon y Thaddeus Dryja publicaron un borrador del libro blanco de la red Lightning.
  • En noviembre de 2015, Jeff Coleman resumió sistemáticamente el concepto de State Channel por primera vez, proponiendo que el Payment Channel de Bitcoin es un subcaso dentro del concepto de State Channel.
  • 2016/01, Joseph Poon y Thaddeus Dryja publicaron oficialmente el libro blanco "The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments" proponiendo el esquema de escalabilidad de la red Lightning de Bitcoin Payment Channel(, este esquema se utiliza únicamente para procesar pagos de transferencia en la red de Bitcoin.
  • En noviembre de 2017, se propuso la primera especificación de diseño sobre State Channel basada en el marco de Payment Channel llamada Sprites.
  • 2018/06, Counterfactual propuso un diseño de Canales de Estado Generalizados muy detallado, que es el primer diseño completamente relacionado con los canales de estado.
  • 2018/10, el artículo Generalised State Channel Networks propuso los conceptos de State Channel Networks y Virtual Channels.
  • 2019/02, el concepto de canales de estado se expandió a N-Party Channels, Nitro es el primer protocolo basado en esta idea.
  • 2019/10, Pisa para resolver el problema de que todos los participantes necesitan estar en línea de forma continua, amplió el concepto de Watchtowers.
  • 2020/03, Hydra propuso Canales Isomórficos Rápidos.

)# 3.1.3 Principio técnico

La figura 1 muestra el flujo de trabajo tradicional en la cadena: Alice y Bob interactúan con el contrato inteligente desplegado en la red principal, los usuarios cambian el estado del contrato inteligente enviando transacciones a la cadena. La desventaja es que trae los problemas de tiempo y costo discutidos anteriormente.

![Informe de investigación de profundidad de diez mil palabras: Análisis completo de la expansión off-chain]###https://img-cdn.gateio.im/webp-social/moments-087d35594a04d33375b8199b93eb355e.webp(

La Figura 2 muestra el flujo de trabajo general que la mayoría de los protocolos de canales de estado siguen: en un escenario optimista, Alice y Bob necesitan realizar las mismas operaciones que antes, pero esta vez utilizan un canal de estado en lugar de interactuar con un contrato en cadena.

  • Primer paso, Alice y Bob interactúan depositando fondos desde su EOA personal a la dirección del contrato en cadena ), 1,2(, estos fondos quedan bloqueados en el contrato hasta que el canal se cierre, momento en el cual el saldo se devuelve al usuario; después de que ambos firmen la confirmación, el canal de estado entre ambos se abre oficialmente.
  • El segundo paso, Alice y Bob pueden llevar a cabo un número ilimitado de transacciones off-chain a través de este canal ) línea azul discontinua (, los participantes se comunican entre sí a través de mensajes firmados criptográficamente ) en lugar de comunicarse con la red blockchain (. Ambos usuarios deben firmar cada transacción para evitar el doble gasto malicioso. A través de estos mensajes, proponen actualizaciones del estado de sus cuentas y aceptan las actualizaciones de estado propuestas por la otra parte.
  • Tercer paso, si Alice quiere cerrar el canal y finalizar la transacción con Bob, Alice necesita enviar al contrato el estado final de su cuenta ) interacción 3(, si Bob firma y aprueba, el contrato liberará los fondos bloqueados según el estado final y los devolverá al usuario correspondiente ) interacción 4,5(. Si Bob no responde con la firma, el contrato liberará los fondos bloqueados y los devolverá al usuario correspondiente al final del período de desafío.

![Informe de investigación en profundidad: Análisis completo de la expansión off-chain])https://img-cdn.gateio.im/webp-social/moments-ead28de03be9fc22dcfe3f679ee36bc5.webp(

La figura 3 muestra el flujo de trabajo del canal de estado en un escenario pesimista: al principio, dos participantes depositan fondos ) interacciones 1, 2(, y luego comienzan a intercambiar actualizaciones de estado ) línea azul discontinua (. Supongamos que en algún momento, Bob no responde a la firma de actualización de estado enviada por Alice ) interacción 3(, en este momento, Alice puede iniciar un desafío ) interacción 4( al presentar su último estado válido al contrato, este estado válido también incluye la firma anterior de Bob, demostrando así que la última transacción ya recibió la aprobación de Bob y que el estado final ha sido confirmado por Bob. Luego, el contrato permite a Bob responder durante un período de tiempo presentando el siguiente estado al contrato; si Bob responde, ambos pueden continuar realizando transacciones dentro del canal de estado; si Bob no responde dentro de ese período de tiempo, el contrato cierra automáticamente el canal de estado y devuelve los fondos a Alice ) interacción 5(.

![Informe de investigación en profundidad: Análisis completo de la expansión off-chain])https://img-cdn.gateio.im/webp-social/moments-ad088ac016d75b1ae0b0eda699e74709.webp(

)# 3.1.4 Ventajas y desventajas

Ventajas:

  • Inmediatez: las transacciones off-chain se pueden confirmar de inmediato, sin necesidad de esperar la confirmación de bloques.
  • Alta Profundidad: solo se necesita interactuar con la red principal cuando se abren y cierran los canales, lo que mejora significativamente la profundidad.
  • Bajo costo: las transacciones off-chain no requieren pagar tarifas de minería, solo se necesita pagar una pequeña cantidad de tarifas al abrir y cerrar el canal.
  • Privacidad: el contenido de las transacciones off-chain no se registrará en la cadena, solo el estado final será enviado a la mainnet.

Desventajas:

  • Complejidad: La implementación y el uso de los canales de estado son bastante complejos.
  • Liquidez bloqueada: se requiere bloquear una cierta cantidad de fondos por adelantado
  • Requisitos en línea: los participantes deben permanecer en línea para responder al estado más reciente
  • Alcance limitado: principalmente aplicable a escenarios de interacción frecuente entre ambas partes

3.1.5 Aplicación

Red Lightning de Bitcoin:

Resumen: La red Lightning es un canal de pagos de bajo valor en la red de Bitcoin, cuya evolución técnica general ha pasado por: 2/2 construcción de pagos unidireccionales con múltiples firmas.

Ver originales
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Recompensa
  • 5
  • Compartir
Comentar
0/400
SignatureAnxietyvip
· 07-10 17:02
¿Es interesante que cada persona tenga un off-chain?
Ver originalesResponder0
ReverseFOMOguyvip
· 07-09 23:05
El dilema del triángulo no es tan fácil de resolver. Ampliar la capacidad tarde o temprano requerirá compromisos.
Ver originalesResponder0
GasFeeDodgervip
· 07-08 08:47
¿Otra vez hablando del problema del triángulo? ¿Están locos?
Ver originalesResponder0
EntryPositionAnalystvip
· 07-08 08:43
Ríndete, ¿qué estás luchando? ¿Entiendes la Unholy Trinity?
Ver originalesResponder0
ChainSauceMastervip
· 07-08 08:42
¿Quién entiende después de que hablas tanto?
Ver originalesResponder0
  • Anclado
Opere con criptomonedas en cualquier momento y lugar
qrCode
Escanee para descargar la aplicación Gate
Comunidad
Español
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)