CriptomonedasMineríaTutoriales

Qué es Taproot y cómo mejorará a Bitcoin

La actualización Taproot para Bitcoin supone realizar diferentes cambios en la estructura de las transacciones, mejorando la privacidad, que estas tengan un menor coste y sean más rápidas. Además, realiza cambios en el Script de Bitcoin que permitirá simplificar el despliegue de Smart Contracts.

Qué es Taproot

taproot bitcoin

Es un soft fork (actualización sencilla del software) que añade mejoras en los scripts de Bitcoin permitiendo mejorar la privacidad y simplificar las transacciones complejas. Una transacción en la blockchain de Bitcoin puede integrar funciones complejas como establecer timelocks, multifirma de las transacciones y otras funciones.

Actualmente es muy sencillo ver qué transacciones cuentan o añaden algunos de estos elementos, ya que las transacciones complejas requieren crear varias transacciones. Taproot lo que hará es «enmascarar» todos estos elementos complejos en las transacciones de Bitcoin. La red verá estas transacciones complejas como si fueran transacciones sencillas, aportando aún más privacidad dentro de la red de Bitcoin.ç

Si quieres comprar criptomonedas, te recomendamos hacerlo con Binance, con este link consigues un 20% descuento en las fees. 

La propuesta Taproot fue lanzada en enero de 2018 por Greg Maxwell, un desarrollador de Bitcoin Core. Tras esta propuesta llegó el tiempo de escribir el nuevo código y probarlo en una testnet (red prácticamente igual que Bitcoin donde hacer pruebas sin perjudicar a la red pública). En octubre de 2020, Taproot ya estaba lista y se publicó como una librería de Bitcoin Core, para posteriormente realizarse por parte de Pieter Wuille una «pull request». Esto último es simplemente que los mineros descarguen el software con Taproot integrado y empiecen a crear bloques que señalen el uso de Taproot.

Cómo funciona Taproot

Esta solución lo que modifica es el funcionamiento de los scripts de Bitcoin. El script es una de las pocas líneas de código que se añaden las transacciones, definiendo que parte de los sats se pueden gastar y cuáles se van para los mineros.

Las transacciones de Bitcoin se definen por un conjunto de scripts o condiciones para el pago que se denominan P2SH. Todo el conjunto de elementos establece como serán gastadas las monedas en la siguiente transacción. La seguridad la ponen sistemas de clave asimétrica compuestos por una clave privada y una clave pública generada a raíz de esa clave privada. El destinatario debe usar su firma para demostrar la propiedad de las monedas y poder usarlas.

Además los scripts P2SH tienen la capacidad de modificar o ajustar las acciones, que no es más que establecer restricciones sobre el uso de los bitcoins dentro de la blockchain. Podríamos establecer un bloqueo de tiempo (timelock) que determine cuando los bitcoins pueden ser gastados, como por ejemplo una fecha o un determinado bloque. Además se pueden establecer condiciones como la multifirma, donde se necesitan las claves privadas de varios usuarios para autorizar una transacción.

Pero hay un problema y es la realización de las transacciones. Cuando se autoriza una transacción, las condiciones de la transacción pueden ser vistas por cualquiera, se hayan cumplido estas transacciones o no. Así todas las condiciones establecidas exponen todos los datos a la red para que cualquiera los pueda ver. Esto supone un problema para la privacidad en la red de Bitcoin, ya que todas las wallets soportan multifirma o tiempos de bloqueo.

La integración de Taproot permite mejorar la privacidad de la red, ya que «esconde» todas estas condiciones. Esto supone que únicamente se revela la condición final activada en la transacción, haciendo que una transacción convencional con una enriquecida sean imposibles de distinguir.

Principales implementaciones de Taproot

A continuación os explicamos las principales implementaciones de esta tecnología.

MAST (Merkelized Abstract Syntax Tress)

Quien propone MAST es el desarrollador Johnson Lau en 2016 con su BIP-0114. Esta mejora solo es posible tras la actualización SegWit, que servía como base para futuras mejoras técnicas.

La solución MAST se basa en dos elementos. El primer elemento son los Árboles de Merkle, que es una estructura que combina las transacciones dentro de la blockchain de Bitcoin. Nos ofrecen una gran seguridad, ya que modificar cualquier transacción dentro de esa estructura supondría cambiar el resultado final, haciendo sencilla la detección de posibles manipulaciones. Esto a su vez reduce la cantidad de espacio de almacenamiento de la información en los bloques.

Tenemos en segundo lugar, los Árboles de Sintaxis Abstracta (AST) que se basa en un algoritmo que secciona la información en diferentes partes individuales. Esto permite hacer la información más inteligible y simplifica la clasificación de la información, permitiendo acceder rápidamente a los datos importantes o interesantes de manera ágil. Esto sin necesidad de mostrar públicamente todos los datos que contienen.

La combinación de estos dos elementos permite incluir más información compleja en la blockchain de Bitcoin, pero manteniendo la privacidad y reduciendo la necesidad de espacio. Dicho de otro modo, el tamaño de las transacciones se reduce y caben así más transacciones por bloque.

Mediante esta solución en Taproot, se revela únicamente la condición que se cumple cuando se hace una transacción y el resto de la información permanecen ocultos y protegidos. Esto además permite que los smart contracts construidos en la blockchain de Bitcoin sean más seguros, privados y eficientes. Esto le permitira a su vez la capacidad de competir contra otras blockchain que permiten la integración sencilla de Smart Contracts, como es el caso de Ethereum, por ejemplo.

arbol mast bitcoin

Firmas Schnorr

Esquema de firmas criptográficas que fueron desarrolladas por Claus Schnorr, un prestigioso matemático y criptógrafo alemán. El algoritmo de las firmas Schnorr estaba protegido por una patente hasta el año 2018. Dicho esquema permite una mayor simplicidad y eficiencia, permitiendo la generación de firmas cortas.

Satoshi Nakamoto para Bitcoin opto por el algoritmo de firma digital de curva elíptica (ECDSA) que habría sido elegido debido a que el algoritmo Schnorr se liberaría muy poco antes de la publicación del whitepaper de Bitcoin. Debido a esto Nakamoto habría optado por ECDSA que es una solución compacta, segura y sobre todo de código abierto.

Adoptar ahora las Schnorr Digital Signature Scheme (SDSS) puede ser un gran cambio en la generación de las firmas en Bitcoin y otras blockchains. Esta adopción permite integrar varias claves dentro de una transacción compleja y generar una firma única de salida. La agregación de firmas permite que el uso de múltiples firmas permite terminen generando una única firma de Schnorr.

Schnorr permite que las transacciones sean más rápidas de verificar, permitiendo así que los tiempos de validación de las transacciones sean más rápidas. Una integración que mejorara la capacidad de procesar transacciones en la blockchain de Bitcoin.

firma schorr bitcoin

 

Qué aportará Taproot a Bitcoin

La integración de MAST y Schnorr dentro de Taproot para la blockchain de Bitcoin aporta las siguientes mejoras:

  • Aumenta la privacidad de manera notable al «ocultar» cierta cantidad de datos
  • Se reduce la cantidad de información que se debe transmitir a la red
  • Reduce el coste de validación de las transacciones, en recursos de cómputo y en tiempo.
  • Reduce los tiempos de validación de las transacciones, lo cual podría suponer un aumento en la adopción de Bitcoin como medio de pago
  • Permite añadir más transacciones en un bloque
  • Las fee de las transacciones se podrían reducir de manera notable
  • Aportará mejoras en la escalabilidad de la red de Bitcoin

Además corrige la maleabilidad de las firmas dentro de la red Bitcoin, lo cual suponía un problema de seguridad. Resumiendo mucho, la maleabilidad permite alterar la firma de las transacciones antes de que estas pasen a ser confirmadas. Este tipo de ataque de alteración de la transacción permite simular que la transacción nunca se habría dado. Bitcoin queda expuesto en este caso a un problema de doble gasto que podría supone un problema en la integridad de la blockchain.

Cómo o cuándo se activará Taproot en Bitcoin

Para que se apruebe por parte de los mineros validadores se requiere que el 90% de los bloques estén señalizados como Taproot dentro de una epoch. Una epoch es un conjunto de bloques generados dentro de una misma ventana de dificultad, que en Bitcoin es de 2.016 bloques (unas dos semanas).

Esto no se puede eternizar en el tiempo, estableciéndose que la señalización que aprueba Taproot debe ser antes del 11 de agosto para que la actualización pueda darse en noviembre. Así que cualquier epoch antes del 11 de agosto que tenga un 90% o más de bloques señalizados como Taproot supondrá la adopción de esta solución.

La epoch iniciada en el bloque 685440 del 30/05/2021 a las 03:18 (UTC) inicia un nuevo epoch en el que de los 1329 bloques, 1303 (64.63%) han recibido señalización Taproot (al momento de escribir este texto). Para este epoch se calcula una señalización total superior al 98% de los bloques, lo cual supone una aceptación del soft fork por parte de los nodos mineros. La información está disponible en una web específica donde se puede ver la evolución de Taproot.

Es muy común en Twitter ver a muchos divulgadores de Bitcoin con un bloque en color verde junto a su nombre, lo cual indica un apoyo a la propuesta Taproot

Taproot bloqueado

El pasado 12 de noviembre de 2021 se superaba el 90% de los bloques señalizados para dentro de un mismo epoch. Gracias a esto Taproot ha quedado bloqueado dentro de la blockchain de Bitcoin para ser activado finalmente el próximo mes de noviembre. Concretamente sera activado en el bloque 709.632, que según los calculos se debería minar el próximo 14 de noviembre.

Palabras finales sobre Taproot para Bitcoin

Los dos elementos que se integran dentro de Taproot permitirán mejorar dos aspectos fundamentales dentro de la blockchain de Bitcoin. El primer elemento será la mejora de la privacidad, algo muy demandado por la comunidad. La segunda parte que se mejora es la escalabilidad de Bitcoin, simplificando el proceso de validación de transacciones y permitiendo añadir más transacciones en un bloque.

Te recomendamos este artículo donde explicamos qué es y cómo funciona Bitcoin

Si bien no soluciona todos los problemas de escalabilidad, sí que es un primer paso al simplificar las transacciones y reducir el peso de las mismas. Esto abre la puerta a otras soluciones que permita mejorar la cantidad de transacciones por segundo que puede validar la red. Luego tenemos segundas capas como Lightning Network que aportan mayor capacidad en el uso de Bitcoin como metodo de pago.

Roberto Solé

Técnico Superior en Electrónica y en Energías Renovables, Técnico en Prevención de Riesgos Laborales y Técnico Electricista de Baja Tensión apasionado del hardware y las nuevas tecnologías, además de hodl de Bitcoin. Hace tiempo cruce el Stargate y desde entonces me dedico a la exploración.
Los datos de carácter personal que nos facilite mediante este formulario quedarán registrados en un fichero de Miguel Ángel Navas Carrera, con la finalidad de gestionar los comentarios que realizas en este blog. La legitimación se realiza a través del consentimiento del interesado. Si no se acepta no podrás comentar en este blog. Puedes consultar Política de privacidad. Puede ejercitar los derechos de acceso, rectificación, cancelación y oposición en [email protected]
Botón volver arriba