La conexión con Bitcoin

En la sección anterior describimos a Stacks como una capa que aporta funcionalidad de contratos inteligentes a Bitcoin, sin modificar Bitcoin en sí, y explicamos un poco cómo funciona la cadena. Es una gran promesa, pero ¿cómo la cumple Stacks realmente? ¿Y qué hace a Stacks único entre otras capas de Bitcoin y otras cadenas de bloques como Ethereum?

Antes de entrar en los detalles técnicos de cómo funciona Stacks, es importante obtener una visión general de alto nivel del problema que está resolviendo y de cómo lo hace. Profundizaremos en algunos de estos temas a medida que avancemos por la documentación, pero es bueno tener una imagen general para unir todo. Este tema es un poco un agujero de conejo, pero te dará una comprensión en profundidad de exactamente el problema que Stacks busca resolver y cómo lo resuelve.

Entremos en ello.

¿Cuál es el propósito de una capa de Bitcoin?

La descentralización de la confianza es la innovación y la promesa principales de las cadenas de bloques. Incluso en el mundo de las criptomonedas, las fallas recientes en 2022 han sido de entidades centralizadas, lo que resalta aún más la importancia de sistemas que no dependan de intermediarios centralizados “de confianza”. Bitcoin es la cadena de bloques más segura, duradera y valiosa; ya es utilizada como reserva de valor por millones de personas. Es robusto, dinero “duro”, con una propiedad no custodial y ausencia de inflación sin precedentes. La cadena de bloques de Bitcoin también es la mejor capa de liquidación para transacciones, ya que es la más descentralizada, resistente a la censura y duradera.

Sin embargo, Bitcoin es relativamente lento y minimalista por diseño y conservador en su evolución para preservar estas poderosas propiedades. Produce bloques en promedio cada 10 minutos, con solo 5-7 transacciones por segundo. No ofrece soporte nativo para contratos inteligentes totalmente expresivos y, por tanto, para aplicaciones sofisticadas que puedan utilizar sus propiedades. El resultado es que Bitcoin ha permanecido como un activo pasivo en lugar de productivo. A pesar de sus propiedades atractivas y únicas, no ha sido una plataforma para aplicaciones más allá de la reserva de valor y movimientos de dinero poco frecuentes.

Las capas de Bitcoin cambian esto. Las capas de Bitcoin extienden la funcionalidad y el rendimiento de la cadena de bloques de Bitcoin sin requerir cambios en ésta.

¿Cómo definiríamos qué es una capa de Bitcoin?

Es importante definir lo que se entiende por una capa de Bitcoin. Si bien existen varias opiniones matizadas sobre lo que convierte a un sistema en una Capa 2 sobre una Capa 1, estas son las propiedades que creemos que conforman una L2 de Bitcoin ideal y las suposiciones que hacemos:

  1. Proceso de desarrollo de código abierto y descentralizado

  2. Soporte completo de VM y capacidad de programar con lenguajes expresivos de alto nivel

  3. Tiempos rápidos de transacción y de bloques (no hay que esperar 10-30 minutos por bloques de Bitcoin)

  4. Una forma minimizada en confianza para mover BTC entre L1 y L2

  5. BTC como el activo principal desplegado en aplicaciones L2

  6. La capacidad de pagar por transacciones en L2 en BTC

  7. La capacidad de retirar unilateralmente tu BTC de vuelta desde la L2 sin riesgo de contrapartida

Stacks V1 tenía las propiedades 1 y 2, pero le faltaban las demás. La actualización Nakamoto trae las propiedades 3, 4 y 5, con discusiones y trabajo actualmente en curso para lograr la 6. Actualmente, Lightning es la única L2 que tiene la propiedad 7, y la única forma de aprovechar esto verdaderamente es ejecutar tu propio nodo Lightning, una tarea compleja en la que pocos usuarios se involucran. Además, Lightning carece de la propiedad 2, lo que significa que no podemos desbloquear funcionalidad adicional más allá de lo que esa L1 de Bitcoin ya es capaz de hacer.

Es importante reconocer que las L2 de Bitcoin tienen objetivos fundamentalmente diferentes a las L2 en otras L1 como Ethereum. Mientras que la motivación principal para las L2 en Ethereum es mejorar la escalabilidad, las L2 de Bitcoin sirven para mejorar tanto la escalabilidad como la funcionalidad. Esto significa que la capa de Bitcoin no puede verificar la validez de las transacciones que ocurren en L2s como Stacks. En su lugar, la VM de esa capa es responsable del procesamiento y la verificación de transacciones, y de liquidar esas transacciones en Bitcoin para que compartan la misma historia y finalización.

¿Es Stacks una L2 de Bitcoin?

Stacks es una capa de Bitcoin para contratos inteligentes. La clasificación como layer-1 (L1) o layer-2 (L2) o sidechain depende realmente de la definición utilizada. Dicho esto, en términos generales las cadenas L1 son soberanas, lo que significa que (a) tienen su propio presupuesto de seguridad, y (b) pueden sobrevivir sin la necesidad de ninguna otra cadena L1. Las cadenas L2 típicamente no tienen su propio presupuesto de seguridad y comparten la seguridad de la cadena L1 subyacente, y no pueden vivir sin la cadena L1 subyacente. Existen muchos mecanismos de diseño diferentes que las L2 pueden utilizar.

El lanzamiento inicial de Stacks a principios de 2021 tenía un presupuesto de seguridad separado del L1 de Bitcoin. Aunque la capa Stacks no podía funcionar sin el L1 de Bitcoin, los desarrolladores que trabajaban en el proyecto la describieron como un sistema diferente que no encaja perfectamente en las clasificaciones existentes, usando a veces el término capa 1.5 (ver este artículo de Decryptarrow-up-right por ejemplo).

La versión Nakamoto en 2024 permitió que Stacks compartiera el mismo presupuesto de seguridad que Bitcoin. En su lugar, el 100% de la potencia de hash de Bitcoin determinará la finalización en la capa Stacks. Para reorganizar bloques/transacciones de Stacks, el atacante necesitará reorganizar el propio Bitcoin L1 (lo cual es muy difícil de hacer y por lo tanto es una gran propiedad de seguridad para que una capa de Bitcoin la tenga).

La definición de L2 usada en Ethereum y otros ecosistemas más nuevos es diferente y se centra en la capacidad de retirar activos usando únicamente la seguridad de L1 y los mineros de L1. Según esa definición, la capa Stacks no es una L2 clara, dado que el conjunto de firmantes de peg-out determina si los usuarios pueden retirar sBTC. Bitcoin no puede soportar tal verificación sin cambios en el L1 de Bitcoin (lo que podría suceder en el futuro). La definición de L2 de Ethereum tampoco se aplica tan limpiamente a las L2 de Bitcoin, dado que nuevos activos se emiten en las L2 en el caso de Bitcoin y no se emiten en L1 (solo BTC es el activo de L1). Por lo tanto, usar la definición de seguridad de retirar activos no es directamente aplicable dado que los activos se definen y usan en L2s y no se retiran a Bitcoin L1 de todos modos (con la excepción del propio BTC). Más bien, lo que se vuelve más importante es "liquidación en Bitcoin", es decir, si los datos del contrato y el estado están asegurados por el 100% de la potencia de hash de Bitcoin o no.

Recuerda que las L2s en Bitcoin también deben servir el propósito adicional de expandir tanto la funcionalidad como la escalabilidad, lo que significa que las L2s logran objetivos fundamentalmente diferentes según la funcionalidad de la L1.

Usuarios y desarrolladores llaman orgánicamente a Stacks una L2 de Bitcoin, ya que es un concepto más sencillo de entender. Hay ciertas propiedades de la capa Stacks que también ayudan al concepto de Stacks como una L2 de Bitcoin:

1

Finalidad de Bitcoin

El 100% de la potencia de hash de Bitcoin decide el orden de los bloques y la finalización de las transacciones.

2

El consenso se ejecuta en Bitcoin

El consenso de Stacks se ejecuta en Bitcoin L1, y la L2 de Stacks no puede operar ni sobrevivir sin Bitcoin L1.

3

sBTC y unidad económica

Con el peg descentralizado a Bitcoin, sBTC, la mayor parte de la economía en la capa Stacks usará BTC como la unidad económica. Se espera que la mayoría de los usuarios simplemente usen Bitcoin en billeteras y aplicaciones y luego vuelquen su BTC de vuelta a Bitcoin L1.

4

Datos hasheados y almacenados en Bitcoin

Todos los datos y las transacciones en Stacks se hashean automáticamente y se almacenan de forma permanente en Bitcoin L1 en cada bloque de Bitcoin. Cualquiera puede verificar que algunos datos en Stacks son válidos comprobando el hash correspondiente en Bitcoin. Este almacenamiento compacto de hashes en la L1 es algo similar a los rollups (aunque hay otras diferencias). Puedes leer más sobre este proceso en la sección Producción de Bloques .

5

Los contratos pueden leer el estado de Bitcoin

Los contratos en la capa Stacks pueden leer las transacciones de Bitcoin L1 y responder a ellas. Los activos en la capa Stacks pueden moverse simplemente a través de transacciones de Bitcoin L1.

chevron-rightAbordando a los escépticos y críticoshashtag

Dado todos los detalles anteriores, ¿por qué algunas personas pensarían que Stacks no es una L2 de Bitcoin? Hay un par de razones por las que esta pregunta surge a menudo:

  • Material antiguo sobre presupuesto de seguridad: La versión inicial de Stacks (lanzada a principios de 2021) tenía un presupuesto de seguridad separado que cambió para heredar el 100% de la potencia de hash de Bitcoin con el lanzamiento Nakamoto.

  • La definición de retiro de L2 de Ethereum no se mapea con claridad: Según la definición de L2 de Ethereum, un usuario debería poder retirar sus activos de la capa base puramente haciendo una transacción L1 y confiando únicamente en la seguridad de L1 (esto es cierto para Lightning, por ejemplo). Esta definición no se aplica limpiamente a las L2 de Bitcoin porque los activos no están definidos en Bitcoin L1 sino que se definen en las L2. El único activo donde esto importa es el activo BTC pegado desde Bitcoin L1, dada la circunstancia de que todos los demás activos son nativos de las L2 de todos modos. En la próxima versión de Stacks, los usuarios podrán retirar su BTC enviando solo una transacción Bitcoin L1, pero Bitcoin L1 no puede validar esa transacción compleja y la mayoría de los firmantes de peg-out necesitarán firmar la solicitud de peg-out. En un mundo ideal los mineros de Bitcoin podrían validar tales transacciones, pero eso requeriría un cambio en Bitcoin L1. Por lo tanto, el diseño de Stacks se optimiza por un método que es descentralizado y puede desplegarse sin ningún cambio en Bitcoin L1. Si en el futuro es posible realizar cambios en Bitcoin L1, entonces la seguridad de la capa Stacks también podría beneficiarse de ello.

  • Escepticismo sano sobre Bitcoin: Los miembros de la comunidad de Bitcoin generalmente son escépticos respecto a afirmaciones y están atentos a personas que hacen cualquier tipo de reclamo de marketing falso. Esto es generalmente algo saludable para el ecosistema Bitcoin y refuerza su sistema inmunológico. Algunos de estos miembros de la comunidad pueden ser escépticos sobre Stacks como una capa de Bitcoin o L2 hasta que lean completamente los detalles técnicos y el razonamiento. También hay un buen hilo en Twitter sobre este tema.

¿Por qué no usamos entonces el término 'sidechain' para Stacks? Las sidechains en Bitcoin típicamente tienen un presupuesto de seguridad diferente al de Bitcoin L1, típicamente como un subconjunto de mineros de Bitcoin que participan en la sidechain (no siguen la finalidad del 100% de Bitcoin), su consenso se ejecuta en la sidechain (en lugar de ejecutarse en Bitcoin L1), y no publican sus datos/hashes en Bitcoin L1. La capa Stacks no encaja claramente en esa definición dado que el consenso se ejecuta en Bitcoin L1, sigue la finalidad de Bitcoin y publica datos/hashes en L1.

La relación simbiótica entre Stacks y Bitcoin

Stacks y Bitcoin se complementan. Stacks aprovecha la extrema descentralización de Bitcoin, su mecanismo de consenso PoW y su valor como criptomoneda.

Pero Stacks también complementa a Bitcoin al desbloquear casos de uso adicionales, aumentando así su valor con el tiempo. Esto también ayuda a resolver el problema adicional de la mantenibilidad futura de Bitcoin después de que las recompensas de coinbase desaparezcan y Bitcoin tenga que funcionar solo con las comisiones de las transacciones.

Si Bitcoin se considera solo una reserva de valor, la densidad económica, es decir, cuánto valor se intercambia, de cada transacción será mínima. Pero si Bitcoin es la base subyacente para toda una economía descentralizada, esas transacciones se vuelven mucho más valiosas, aumentando las comisiones de transacción. Esto es un incentivo crucial para que los mineros continúen asegurando la red a medida que las recompensas de coinbase disminuyen.

Sobre la creación de una experiencia de desarrollador centrada en Bitcoin

Una de las cosas que le da a la red Stacks sus superpoderes para conectarse con Bitcoin no es solo cómo se conecta a Bitcoin a nivel de protocolo, discutido arriba, sino también cómo podemos utilizar ese Bitcoin a nivel programático.

La experiencia de desarrollador para una L2 de Bitcoin debería abstraer la complejidad de Bitcoin pero también mantener la sensación de construir sobre Bitcoin. Parece una contradicción, pero así es como Stacks lo logra:

1

Sostén los movimientos de bitcoin con sBTC

sBTC desbloquea la programabilidad de Bitcoin. Obtienes expresividad de L2 sin perder las propiedades familiares de Bitcoin: denominación, representación y modelo de confianza.

2

Conéctate directamente a BTCFi

Zest, Bitflow, StackingDAO, Dual Stacking y otros protocolos DeFi importantes en Stacks ofrecen herramientas de desarrollo para aplicaciones inteligentes, composables y centradas en Bitcoin.

3

Una identidad criptográfica

Stacks utiliza la misma primitiva criptográfica — misma curva (secp256k1), mismo hash160 construcción — para derivar direcciones de Stacks. Se formatean de manera diferente (diferentes bytes de versión / codificación), pero debajo: el ancla de identidad es el mismo hash de clave pública de 20 bytes.

Capas diferentes. Misma clave privada criptográfica.

4

Reaccionar al estado de Bitcoin

Una de las características a menudo publicitadas de Clarity es que tiene acceso al estado de la cadena de Bitcoin integrado, pero ¿cómo lo hace realmente? Debido al mecanismo PoX de Stacks, cada bloque de Stacks está conectado a un bloque de Bitcoin, y puede consultar los hashes de cabeceras de bloque de Bitcoin con el get-burn-block-info? función.

Clarity puede leer el estado de Bitcoin directamente. Analizar transacciones BTC. Activar lógica basada en la actividad de Bitcoin.

5

Capturar el tiempo en la L2 a la velocidad de Bitcoin

Los contratos Clarity pueden medir el tiempo por bloques de Bitcoin. Esto no es solo técnico: es simbólico: Como rastrear el tiempo por el sol, confiamos en la cadencia de Bitcoin.


Recursos adicionales

Última actualización

¿Te fue útil?