Actualización BIP 300 (Drivechains)

Tiempo de lectura: 4 minutos

En anteriores artículos hemos hablado de dos posibles próximas actualizaciones de Bitcoin, tras la ya confirmada actualización de Taproot. Estas son los BIP 118 y 119 (recordemos que todas las propuestas se formalizan en Bitcoin Improvement Proposals). Ambas mejoras son importantes, aunque muy poco controversiales y quizá «aburridas». Pero BIP 300 es diferente.

En este artículo vamos a explorar la propuesta BIP 300, una actualización mucho más controvertidadisruptiva y loca, también conocida como drivechains.

Las drivechains son sidechains o cadenas laterales que funcionan con confianza mínima (menor que las sidechains existentes hoy en día, RSK y Liquid). En otras palabras, son blockchains separadas a la de Bitcoin donde se usa bitcoin como moneda nativa, y no una altcoin.

Debido a esto, bitcoin como activo, podría usarse en diferentes blockchains con diferentes características. Por ejemplo, podría usarse en blockchains al estilo de Ethereum y Zcash. De hecho, ya hay versiones de una drivechain con las características de anonimato de Zcash.

El kid de la cuestión es conseguir transmitir bitcoins entre blockchains y para eso necesitamos que el activo pueda «saltar» de blockchain en blockchain, pudiendo volver a la blockchain principal. Esto lo consiguen las drivechains con el uso del «hashrate escrow» que veremos a continuación.

Actualización BIP 300 (Drivechains)

El problema del puente

Para que podamos usar bitcoin en otra blockchain debe existir una especie de puente entre blockchain principal (mainchain) y blockchain lateral (sidechain), llamado en inglés «two way peg«.

Pasar de mainchain a sidechain es fácil porque otra blockchain puede tener visibilidad sobre Bitcoin. Por ejemplo, yo puedo enviar 1 BTC a la dirección X (una dirección específica que la sidechain monitoriza), la otra blockchain ve la transacción y genera 1 «sideBTC» para mí. El problema es que este sideBTC no está respaldado por BTC, y por lo tanto es una altcoin. Podría estar respaldado si la dirección X perteneciera a un tercero o federación, pero hay que confiar en que te lo devuelvan cuando quieras canjear tu sideBTC.

Es decir, un requisito para las sidechains es que sus bitcoins «laterales» sean intercambiables a una ratio 1:1 por bitcoins en la mainchain, y con la menor confianza posible. Este puente y el camino de sidechain a mainchain es el más difícil porque alguien tiene que «guardar» el BTC.

Como explica el principal desarrollador del BIP 300, Paul Sztorc, el sentido de una sidechain es que los nodos de Bitcoin (ordenadores integrantes de la red P2P) no tienen porqué saber de su existencia. De lo contrario estarían validando sus reglas y hablaríamos de una extensión a Bitcoin (un aumento efectivo al tamaño de bloque).

Veamos un ejemplo para que se vea claro. Un usuario usa el puente para mover 1 BTC a una cadena lateral. Recibe 1 sideBTC en la sidechain, allí gasta 0,5 sideBTC y utiliza el puente de nuevo para canjear sus 0,5 sideBTC restantes por 0,5 BTC.

El problema es que, como ningún nodo de Bitcoin verifica la sidechain, no pueden saber cuánto BTC pertenece a ese usuario. No saben si es 1 BTC o 0,5 BTC como es el caso porque las transacciones de sideBTC ocurren fuera de la blockchain de Bitcoin. El encargado de procesar ese puente podría robar bitcoins y la red no se percataría de esto.

Hashrate Escrow

La solución de Paul Sztorc, que desde su propuesta en 2015 ha generado mucha controversia, es hacer que los mineros procesen el puente. Es decir, los mineros podrían teóricamente robar todo el BTC de las sidechains porque los nodos no saben si el puente se procesa de forma honesta. Parece terrible, ¿verdad?

La idea de los «hashrate escrows» es que los usuarios envían sus monedas a un depósito (escrow) controlado por los mineros para recibir sideBTC. Pero atentos, este depósito de monedas no puede usarse inmediatamente por los mineros. Para «sacar» las monedas de ahí se necesita que más de un 50% de los mineros voten su movimiento durante meses. Con suficientes votos acumulados (en cada bloque hay un voto), esas monedas se pueden gastar.

En otras palabras, si los mineros intentan robar el BTC de las drivechains tendrán que anunciarlo públicamente durante meses y todo el mundo será testigo de sus acciones maliciosas. Aquí podemos empezar a ver la lógica. Lo que Paul dice es: «el bitcoin de las sidechains siempre se puede robar, hagamos un sistema donde robar sea indeseable«.

En caso de que la mayoría de mineros sean honestos, el BTC bloqueado en el depósito iría a los usuarios que hayan canjeado el sideBTC, tras unos meses de votación acumulativa. Para que el intercambio sea más rápido, en la práctica se usarían Atomic Swaps. Es decir, simplemente intercambios de mercado entre BTC y sideBTC (pero siempre estaría la opción de usar el puente para mantener la ratio 1:1).

Actualización BIP 300 (Drivechains)

Teoría de juegos

Un aspecto importante de las drivechains es que pueden proporcionar ingresos a los mineros mediante comisiones de los usuarios. Cuanto más utilidad tenga una sidechain más comisiones generará.

Juntando todas las piezas tenemos que los mineros efectivamente pueden robar el BTC de las drivechains, pero… ¿Realmente es económicamente rentable?

Paul explica que depende de la drivechain y de la reacción del mercado. Si los mineros intentan robar dinero, será totalmente público y el precio podrá reaccionar negativamente. Una reacción negativa en el precio iría en contra de sus propios intereses como mineros de Bitcoin, sería un tiro en el pie. Además estarían perdiendo todas las futuras comisiones que podrían provenir de las drivechains (la gente dejaría de usarlas por ser consideradas inseguras).

Sin embargo, si el mercado no responde negativamente, o lo hace muy poco, es posible que el robo sea económicamente rentable. En este caso Paul argumenta que se dispone del tiempo necesario para defenderse de los mineros.

Plantea que se podría realizar un User Activated Soft Fork (un cambio de las reglas de Bitcoin para rechazar el ataque de los mineros), aunque esto sería arriesgado y probablemente inaceptable. Otra posible interpretación es que, dado que una mayoría de mineros es maliciosa, se puede recurrir a un cambio en el protocolo de minería para expulsar a los mineros, dejando obsoletas sus máquinas de minería. Bajo la amenaza de la comunidad, los mineros serían honestos.

Reflexiones

Por todo esto las drivechains son muy controversiales y no parece claro que el propio mecanismo del precio sea suficiente.

Sin embargo, Paul Sztorc argumenta que una mayoría de mineros puede robar hoy mismo, y sin embargo no ocurre. Los mineros podrían realizar un doble gasto, podrían congelar los fondos de los usuarios (censurando transacciones) hasta que estos paguen grandes comisiones e incluso robar dinero de Lightning Network (censurando la transacción de penalización).

Todo esto es teóricamente posible en Bitcoin. Sin embargo los mineros no quieren destruir su reputación y negocio, por lo que son honestos. Teniendo en cuenta esto, no parece que las drivechains sean nada diferente. Es más, en los ataques mencionados anteriormente no hay tiempo suficiente para reaccionar como comunidad, como sí ocurre en las drivechains.

Este es uno de los motivos que personalmente me hace decantarme más por el BIP 300. Lejos de ser perfecto parece la solución menos mala de la que disponemos y dispondremos en años. Pero siendo realistas es muy poco posible que acabe en Bitcoin, al menos en el corto plazo.

En cualquier caso, esperemos que la comunidad siga con esa insaciable sed de mejorar Bitcoin y ¡podamos seguir trayendo más propuestas en discusión!.


Deja un comentario
La dirección de correo electrónico no será publicada. Los campos obligatorios están marcados *