Saltar al contenido
Guia Bitcoins

Qué es SegWit

¿Qué es SegWit?

SegWit o Segregated Witness es un formato de transacción alternativo propuesto por Blockstream y la empresa de desarrollo de software para Bitcoin Core mining implementado en la cadena de bloques de Bitcoin (BTC) mediante una bifurcación suave el 24 de agosto de 2017 y también adoptado por las criptomonedas alternativas Litecoin, DigiByte y Vertcoin.

Se presentó bajo el nombre formal de “Segregated Witness (Consensus Layer)” a través de la “Propuesta para mejorar Bitcoin BIP141”.

Su principal objetivo es resolver el problema de la maleabilidad de las transacciones y mitigar el impacto negativo del límite de tamaño de bloque en la velocidad de procesamiento de las transacciones de la red Bitcoin (BTC). Esto se resuelve dividiendo la transacción en dos segmentos, eliminando la firma de desbloqueo (a la que llama “datos de testigos”) de su ubicación original y añadiéndola como una estructura separada al final. Además, envía el segmento de datos original como de costumbre, mientras que el segmento “testigo” cuenta como una cuarta parte de su tamaño real.

Segregated Witness (Segwit) o testigo segregado en español, es un tenedor diseñado por el núcleo de Bitcoin en forma de transacción Bitcoin, que funciona como una aplicación que involucra nodos, mineros y gestores de carteras que separa la firma de las transacciones, mejorando la gestión de la red a nivel de tráfico e incluso de bloques con datos, lo que implicaría un menor uso de banda ancha para las operaciones.

Qué es un Segwit

En resumen, aumenta el número de transacciones, la rapidez de la verificación y los recursos normalmente utilizados.

SegWit entró en funcionamiento el 16 de noviembre de 2016, y su implementación ofrece soluciones de seguridad que evitan ataques a la flexibilidad de las transacciones de terceros y permiten un aumento de las transacciones por bloque.

Antecedentes del SegWit

Bitcoin establece sus transacciones en un registro público, descentralizado y transparente que se actualiza mediante la adición retroactiva de bloques de datos vinculados mediante el uso de hashes criptográficos. Cada bloque de datos almacena información sobre quién envía y recibe bitcoins, así como la firma criptográfica que aprueba cada transacción. Aunque originalmente había un tamaño máximo de bloque debido a la sospecha de que un atacante pudiera intentar ejecutar un ataque DDoS de Satoshi Nakamoto, decidió añadir un máximo de 1 MB de tamaño de bloque como medida preventiva temporal. El propósito de esto era que si un atacante intentaba saturar la red, su acción sería detectada instantáneamente y su ataque sería rechazado.

Como consecuencia de esta característica, a medida que aumentaba la demanda de espacio en la cadena, ésta comenzó a escasear debido a esta limitación.

Problemas de escalabilidad y maleabilidad de SegWit

Según la perspectiva de Bitcoin Core, el diseño actual de la cadena de bloques de Bitcoin tiene dos defectos principales:

Qué es un Segwit

Escalabilidad:

Se añaden nuevos bloques al registrador a intervalos aleatorios que duran un promedio de 10 minutos. Esto, junto con el límite de tamaño de bloque, limita el número de operaciones que se pueden liquidar. Debido a la negativa de elevar los bloques por encima de 1 MB mediante una horquilla rígida (como recomendó Satoshi en 2010 y como hizo Bitcoin Money), se planteó la necesidad de resolver este problema pasando a la ejecución masiva de transacciones fuera de la cadena, a la aceptación de transacciones sin esperar a su inclusión en el registro (llamada 0-conf o confirmación de transacción cero), y/o a otros cambios radicales en el protocolo, como es el caso de las operaciones FlexTrans (Flexible), que propone llevar a cabo las muchas transacciones de menor tamaño, modificando la forma en que están descritas a un sistema de etiquetaje, lo que permite realizar más transacciones por bloque, lo que permite realizar más transacciones por transacción, permitiendo más transacciones por transacción.

Maleabilidad:

El problema de maleabilidad de las transacciones sugiere que aunque cada transacción está firmada criptográficamente, esta firma no cubre todos los datos de la transacción, lo que permite varias formas diferentes de perder o robar bitcoins. Aunque se han propuesto varias soluciones diferentes, el problema sigue existiendo.