Recientemente, Babylon lanzó un evento de participación de Bitcoin en Testnet-4, lo que generó debates comunitarios sobre la participación de Bitcoin. Hoy, el equipo de Chakra Research le explicará las últimas opciones de apuesta de Bitcoin.

En el reciente Testnet-4 de Babylon, el proceso de participación se divide en tres tipos de transacciones: Stake Tx, Unbonding Tx y Slashing Tx. Estas transacciones generan tres tipos de resultados de Bitcoin: resultados de participación, resultados de desvinculación y resultados de reducción. El proceso de conversión se muestra en la siguiente figura.

Transacción de prenda

Las transacciones de apuesta deben incluir dos resultados especiales. Uno es la salida de Taproot que contiene los activos prometidos, que debe contener el script de participación de BTC definido por Babylon. La otra es una salida de cantidad cero que contiene información identificable del compromiso de Babylonian a través de OP_RETURN.

La siguiente imagen muestra un ejemplo de una transacción de participación, donde la primera salida es la salida de participación, la segunda es la salida OP_RETURN y la tercera es la salida de cambio.

Salida de compromiso

El resultado de la apuesta es un resultado de Taproot, como se menciona en el artículo anterior de Chakra:

Hay dos métodos de pago para la salida de Taproot, a saber, la ruta de pago clave y la ruta de pago script. Babylon deshabilitó la ruta de pago clave estableciendo la clave interna en el punto "Nothing Up My Sleeve" (NUMS), haciendo que los resultados de apuesta sean pagaderos solo a través de la ruta de pago programada.

El resultado de la apuesta se puede gastar a través de tres rutas de script, correspondientes al diagrama de proceso:

1. Ruta de bloqueo de tiempo

La ruta de bloqueo de tiempo implementa la función de apuesta y también sirve como garantía de vida.

<Staker_PK> OP_CHECKSIGVERIFY <Timelock_Blocks> OP_CHECKSEQUENCEVERIFY

El script de bloqueo de tiempo bloquea el BTC del apostador durante una cierta cantidad de bloques. Las rutas de bloqueo de tiempo no requieren otras entidades, lo que brinda garantías de vida a los participantes. Incluso si el proveedor final y el comité de contratos se vuelven inactivos, los participantes aún pueden retirar sus activos BTC después del período de bloqueo.

2. Camino no vinculante

Si BTC está bloqueado por un bloqueo de tiempo, ¿cómo pueden los usuarios dejar de apostar antes de tiempo? Babilonia resolvió este problema introduciendo el camino no vinculante.

<StakerPk> OP_CHECKSIGVERIFY <CovenantPk1> OP_CHECKSIG <CovenantPk1> OP_CHECKSIGADD ... <CovenantPkN> OP_CHECKSIGADD <CovenantThreshold> OP_GREATERTHANOREQUAL

Este camino requiere no sólo la firma del apostador, sino también del Comité de Escrituras sobre

Umbral del Pacto

Número de firmas de los miembros. La razón principal para introducir el comité de contratos es crear artificialmente un período de desagregación para evitar que los interesados ​​eludan el castigo a través del camino de desagregación.

3. Camino del castigo

Para garantizar la seguridad de PoS, son necesarias sanciones. Si el proveedor final actúa de mala fe, puede ser necesario confiscar sus propios fondos y los fondos confiados para proporcionar seguridad financiera. Babilonia proporciona la función de castigo al introducir el camino del castigo.

<StakerPk > OP_CHECKSIGVERIFY <FinalityProviderPk > OP_CHECKSIGVERIFY <CovenantPk1 > OP_CHECKSIG <CovenantPk1 > OP_CHECKSIGADD ... <CovenantPkN > OP_CHECKSIGADD <CovenantThreshold > OP_GREATERTHANOREQUAL

Los participantes deben firmar previamente las transacciones de ruta de penalización antes de que el estado de participación cambie a Activo, lo que les impide retener firmas para evitar la pérdida de BTC si el proveedor final actúa de manera maliciosa. Después de recibir la firma del apostador, el comité de escritura primero verifica la firma y, una vez confirmada su validez, publicará su propia firma.

Un comportamiento punible en las apuestas de BTC es que un proveedor de finalidad firme firme dos bloques en conflicto a la misma altura, momento en el que cualquier usuario puede obtener la clave privada del proveedor de finalidad malicioso a través de EOTS. Dado que el participante y el contrato han firmado previamente la transacción de penalización, un usuario que obtiene la clave privada del proveedor de finalidad malicioso puede firmar la transacción y enviar una parte de los fondos comprometidos a la dirección de quema como penalización a través de la ruta de penalización.

Salida OP_RETURN

Si bien la salida de Taproot expresa condiciones de uso complejas en ScriptPubKeys más pequeñas, esto también dificulta distinguir las transacciones de participación de otras transacciones en la red Bitcoin. Por lo tanto, es necesario divulgar información relacionada con las apuestas a través de otros medios para que los usuarios puedan identificar transacciones de penalización basadas en esta información.

Babylon serializa la información que debe divulgarse, incrustándola en el script OP_RETURN y agregándola a otra salida de la transacción de participación. El formato es el que se muestra a continuación y los datos deben corresponder a los datos del script Taproot.

tipo V0OpReturnData estructura { MagicBytes []byte Versión byte StakerPublicKey []byte FinalityProviderPublicKey []byte StakeTime []byte }

Según la instantánea de la transacción anterior, los datos válidos transportados por la salida OP_RETURN son de hecho 4+1+32+32+2=71 bytes en total. En la figura, la FinalityProviderPublicKey de la transacción de compromiso es f4940b238dcd00535fde9730345bab6ff4ea6d413cc3602c4033c10f251c7e81, que pertenece a Chakra.

MagicBytes se utiliza para localizar rápidamente transacciones de apuestas, mientras que Versión es un campo reservado para futuras actualizaciones para una fácil diferenciación.

Según instantáneas de transacciones anteriores, los datos válidos transportados por la salida OP_RETURN suman un total de

4+1+32+32+2=71 Bytes

byte. En la figura, la FinalityProviderPublicKey de la transacción de compromiso es f4940b238dcd00535fde9730345bab6ff4ea6d413cc3602c4033c10f251c7e81, que pertenece a Chakra.

bytes mágicos

Se utiliza para localizar rápidamente transacciones de prenda, mientras que Versión es un campo reservado para futuras actualizaciones para una fácil diferenciación.

Transacción desagregada

Cuando los apostadores quieren desbloquear su BTC apostado anticipadamente, pueden enviar una transacción de desagregación gastando el camino de desagregación en el resultado de la apuesta. La transacción de desvinculación requiere que solo acepte una única transacción de compromiso como entrada y genere un único compromiso en la salida principal del script de desvinculación.

A continuación se muestra una captura de pantalla de la transacción de separación, correspondiente al resultado de participación anterior.

Entre ellos, el penúltimo campo que comienza con '20' es el tapscript de la ruta de desvinculación, y el campo que comienza con 'c1' es la prueba Merkle de la clave interna de Taproot y se puede observar claramente el punto de ruta de desvinculación.

0x50929b74c1a04954b78b4b6035e97a5e078a5a0f28ec96d547bfee9ace803ac0

. En el campo Testigo de la transacción de desagregación podemos observar la firma del apostador y la firma del comité de contrato.

Las salidas no vinculadas se pueden gastar bajo dos condiciones: la ruta de bloqueo de tiempo y la ruta de penalización, las cuales son las mismas rutas en la salida de apuesta. En un nivel alto, la producción desvinculada es un estado intermedio diseñado para evitar que los participantes retiren inmediatamente sus apuestas y escapen del castigo, lo que en última instancia conduce a un estado estable de transacciones de retiro.

acuerdo de penalización

La transacción de penalización toma como entrada una transacción de participación o desvinculación, se gasta a través de la ruta de penalización en el script Taproot y produce dos resultados. Una salida envía BTC parcialmente apostado a una dirección de grabación, mientras que la otra devuelve el BTC restante al apostador.

Más estrictamente hablando, Babylon implementa una confiscación parcial por mala conducta en lugar de quemar todos los BTC apostados por los apostadores a la vez. Este enfoque proporciona una mayor tolerancia a fallas y protege los intereses de las partes interesadas.

Las transacciones de penalización solo pueden ocurrir bajo la firma conjunta del participante, el comité de escritura y el proveedor final. Por lo tanto, incluso si una parte individual se ve comprometida, no provocará el colapso de todo el sistema de apuestas. Las transacciones de castigo actúan como un elemento disuasorio y disuaden financieramente a los actores de comportarse de manera maliciosa. Siempre que las sanciones por mala conducta superen cualquier beneficio potencial, es probable que los participantes cumplan con las reglas.

análisis de seguridad

Hay dos tipos de seguridad asociados con Babylon:

El primer tipo de seguridad concierne al apostador, garantizando que mientras el apostador y su proveedor de finalidad delegado no incurran en ningún comportamiento malicioso, sus activos apostados nunca serán castigados.

El segundo tipo de seguridad involucra al propio sistema PoS, asegurando que si los participantes se comportan de manera maliciosa, el protocolo debe poder identificarlos y castigarlos.

La perspectiva del pignorante

Para los apostadores, una vez que se apuesta BTC a través de la transacción de apuesta de Babylon, solo hay tres formas de transferir fondos.

La primera es una ruta de bloqueo cronometrada, que solo requiere la firma del usuario para gastar. Esto garantiza que incluso si FP y Babylon dejan de operar, los apostadores aún pueden retirar su BTC original una vez finalizado el período de apuesta.

El segundo es la ruta de desvinculación, que actúa como un estado intermedio, creando una salida de desvinculación y permitiendo un tiempo de desvinculación más corto. Esto brinda a los participantes la posibilidad de retirar sus fondos prometidos anticipadamente.

El tercero es el camino de la sanción, que es el único camino que puede perjudicar los intereses de los pignorantes. Si un extraño intentara atacar el camino de la penalización, tendría que proporcionar simultáneamente la firma del apostador, la firma del proveedor de finalidad y la firma del comité de escritura por encima del umbral, lo cual es extremadamente difícil. Incluso si el comité de contratos es malicioso, siempre que el proveedor final sea honesto, el BTC del apostador está seguro.

Perspectiva del sistema PoS

Desde la perspectiva de un sistema PoS, su seguridad proviene de la capacidad de castigar a los proveedores de finalidad cuando se comportan de manera maliciosa.

Babylon adopta el mecanismo EOTS Si el proveedor de finalidad firma dos veces un bloque, cualquier usuario puede extraer la clave privada del proveedor de finalidad de las dos firmas diferentes. Esto les permite firmar y presentar una transacción de penalización con una parte de la penalización correspondiente al BTC de todos los derechos de voto en poder del proveedor final.

Esta medida punitiva desalienta el comportamiento malicioso por parte de los proveedores de finalidad, alineando así sus incentivos con brindar finalidad a los servicios de consenso PoS conectados a Babylon, garantizando la seguridad de los sistemas PoS con grandes cantidades de TVL apostado.

En el futuro, Chakra continuará trabajando con Babylon para lanzar una serie de eventos de participación que brinden a los usuarios múltiples beneficios mientras resuelven desafíos de liquidez e interoperabilidad y desbloquean el tremendo valor de Bitcoin en todos los ecosistemas criptográficos.