segwit

¿Qué es «SegWit» y qué importancia tuvo para Bitcoin?

Si Bitcoin es una red bastante estable el día de hoy, es gracias a las distintas actualizaciones que ha atravesado a lo largo de su vida. De todas ellas, «SegWit» es una de las más significativas, gracias al impacto que tuvo en torno a su seguridad y la posibilidad de extender sus usos como activo financiero.

¿Segwit?

SegWit es la abreviación de “Segregated Witness”, una mejora en la red presentada con el nombre técnico de BIP-145. Nació con el propósito de solucionar el problema de maleabilidad que generaba desconfianza en la red e impedía su escalabilidad. Una escalabilidad que, con el incremento de usuarios, se estaba haciendo notar cada vez más con la lentitud en el sistema.

Fue ejecutada el 23 de agosto del 2017 a través de un soft fork, y su solución fue tan efectiva que fue aplicada incluso en otras blockchain como: Litecoin, DigiByte, VertCoin y EOS.

Logo de segwit actualización de bitcoin

¿Cuál era el problema?

Dentro del proceso de confirmación de las transacciones son requeridas unas firmas criptográficas representadas en “hashes”. Estos hashes, por su naturaleza técnica, son susceptibles a manipulaciones al estar dentro del registro de la transacción (también llamado “Árbol de Merkle”).

Si alguien manipulaba un hash antes de que se confirme, todas las transacciones realizadas durante ese periodo de “confirmación” quedarían invalidadas salvo la primera. Esto generaba mecanismos aprovechables por inescrupulosos, o incluso malentendidos, si esta manipulación era casual. A esto, es a lo que se le denomina como maleabilidad.

Así mismo, usar este sistema dentro del bloque limitaba su tamaño a 1 MB, lo cual en conjunto al problema se seguridad, hacía inviable escalar la red. Y es que escalarla, sin resolverlo, era escalar al mismo tiempo el riesgo. Bajo este parámetro entonces, la posibilidad de usar Bitcoin como soporte de un nuevo sistema financiero carecía de futuro.

¿Cuál fue la solución?

Separar las firmas y sus scripts a un bloque distinto en paralelo al del Árbol de Merkle.

De esta manera, las firmas dejan de ser necesarias para el proceso de confirmación de las transacciones y la transacción ocurre de todas maneras incluso si alguien manipula algún hash. 

Así mismo, al liberar espacio, permiten que el bloque pueda alojar más transacciones. De hecho, alcanza un tamaño de 1.8 MB, debido a que las firmas (que ocupan el mayor espacio) son depositadas en un nuevo bloque.

Gracias a esto, no se rompe la regla del límite de 1 MB para el bloque principal, y por ello, no fue necesario recurrir a un hard fork, para implementarlo.

El inicio de la escalabilidad

Por si te lo estabas preguntando, no, el nuevo tamaño de bloque no fue la solución al problema de la escalabilidad, ya que su aporte al tamaño no era realmente significativo.

Fue la solución a maleabilidad la que abrió la puerta a lo otro, puesto que hizo posible el uso de una segunda capa en la red de blockchain. 

Esta característica, es justamente sobre la que se construyó Lightning Network (LN), una tecnología que permite ejecutar hasta 1.000.000 transacciones por segundo, frente a las 7 que la red estándar de Bitcoin soporta. ¿Te imaginas que estas cientos de miles de transacciones fueran invalidadas por una simple manipulación? SegWit otorgó la seguridad para que esto no ocurra. 

De ahí el por qué su impacto ha sido un antes y después en el desarrollo de Bitcoin, que se ha mantenido segura a lo largo de todo este tiempo. Aún tiene problemas pendientes que afrontar, pero al igual que SegWit, otras “BIP” (propuestas de mejoras) están naciendo y siendo testeadas con el objetivo de superarlos.