El descuento de testigo se refiere a la reducción de los datos “peso” dada a la parte del testigo de una transacción de bitcoin, la parte que contiene las firmas utilizadas para demostrar la propiedad. Implementado como parte de la actualización de testigos segregados (SEGWIT) 2017, este descuento redujo efectivamente las tarifas para las transacciones de SEGWIT haciendo que los datos de los testigos cuenten menos al calcular el tamaño total de una transacción.
En términos más simples, los datos de los testigos obtienen un descuento del 75%, lo que significa que solo cuenta como una cuarta parte de su tamaño real al determinar cuánto espacio ocupa en un bloque de bitcoin. Esto permite más transacciones por bloque y reduce los costos para los usuarios que adoptan billeteras habilitadas para SEGWIT.
Pero, ¿por qué existe el descuento de testigos en primer lugar? ¿Cuál es el punto de dar a los datos de los testigos este tratamiento especial? La respuesta se vincula con los desafíos de escalabilidad de larga data de Bitcoin y la necesidad de aumentar la capacidad de transacción sin revisar la red con una horquilla dura arriesgada. En este artículo, exploramos el propósito detrás del descuento de testigos, cómo funciona y por qué continúa importando hoy.
Control de llave
- Descuento de testigo: Un descuento aplicado al tamaño de la parte “testigo” (o firma) de una transacción de bitcoin, reduciendo las tarifas.
- Parte de segwit: El descuento de los testigos es parte del testigo segregado (SEGWIT), que resolvió el problema de maleabilidad de transacciones de larga data y aumentó efectivamente el tamaño del bloque de Bitcoin.
- Escalabilidad: Ayuda a que las transacciones de bitcoin sean más eficientes, lo que permite más transacciones por bloque.
Propósito del descuento de testigos
El descuento del testigo se introdujo como parte de SEGWIT, una actualización importante del protocolo de bitcoin que separó los datos de la transacción en dos partes: los datos de transacciones centrales y los datos de los testigos (principalmente firmas digitales). En esencia, los datos de los testigos recibieron un “descuento” en términos de cuánto cuenta para el tamaño general del bloque.
Antes de Segwit, el tamaño del bloque de Bitcoin se limitó a 1 MB. Segwit trajo un aumento del tamaño de bloque indirecto al aplicar un “peso” más bajo a los datos de los testigos, lo que permite más transacciones por bloque sin exceder el límite de 1 MB para los nodos que no son segwit.
El descuento del testigo logra un objetivo crucial: permite que más transacciones se ajusten a un bloque mientras mantiene la compatibilidad con nodos más antiguos que no se han actualizado a Segwit.
Cómo funciona
Cuando se produce una transacción de bitcoin, se registran los elementos centrales de esa transacción, como la cantidad de bitcoin y las direcciones involucradas. Sin embargo, hay otro componente llamado “testigo”, que almacena las firmas que demuestran la propiedad del bitcoin transferido.
- Pre-segwit: Antes de Segwit, todas las partes de una transacción fueron tratadas por igual en términos de cuánto espacio consumieron en un bloque.
- Post-segwit: Después de Segwit, los datos de los testigos (firmas) se almacenaron por separado del resto de los datos de transacción. Esta separación permite que más transacciones se ajusten a un bloque, ya que a los datos del testigo se les asigna un peso más bajo, lo que le da un descuento del 75%. Una transacción completa bajo Segwit, que anteriormente podría asumir, digamos, 300 bytes, ahora solo contribuye con una cantidad menor de ese tamaño al peso total del bloque.
Esto reduce las tarifas para los usuarios que optan por las billeteras habilitadas para SEGWIT ya que las tarifas se calculan en función del tamaño virtual de la transacción, que ahora descuenta los datos de los testigos.
Historia y justificación
La historia detrás del descuento de testigos se remonta a las guerras de tamaño de bloque en 2015-2017. En ese momento, la comunidad de Bitcoin estaba envuelta en acalorados debates sobre cómo escalar la red. Los tamaños de bloque más grandes permitirían más transacciones por bloque, pero aumentar el tamaño del bloque directamente (a través de una horquilla dura) fue controvertido. Se arriesgó a centralizar la red, ya que los bloques más grandes son más difíciles de propagar y almacenar nodos con menos ancho de banda y almacenamiento.
Segwitpropuesto por Pieter Wuille, se introdujo como un compromiso. Abordó el problema de escala creando un espacio de bloque más “efectivo” sin requerir una horquilla dura. Aquí es donde el descuento de testigos se volvió importante. Al descartar los datos de los testigos, Segwit amplió efectivamente el número de transacciones que podrían caber en un bloque mientras se mantiene la compatibilidad hacia atrás.
En términos más simples, Segwit permitió que Bitcoin tuviera su pastel y también lo comiera: más transacciones por bloque sin el riesgo de desestabilizar la red.
Pros y contras
Pros:
- Mayor eficiencia de bloqueo: El descuento de testigos permite más transacciones por bloque, aumentando indirectamente el tamaño del bloque de Bitcoin al tiempo que lo mantiene con nodos no actualizados.
- Tarifas más bajas para los usuarios de Segwit: Dado que los datos de los testigos tienen menos peso, las transacciones SEGWIT tienden a ser de menor tamaño, lo que significa tarifas de transacción más bajas para los usuarios.
- Seguridad mejorada: Segwit resolvió el problema de maleabilidad de la transacción, haciendo que las transacciones de bitcoin sean más seguras, lo cual es especialmente importante para soluciones de segunda capa como la red Lightning.
- Escalabilidad mejorada: Al reducir la carga de datos en cada transacción, el descuento del testigo mejora la escalabilidad de la red de bitcoin.
Contras:
- Complejidad: La implementación de Segwit, incluido el descuento de testigos, agrega capas de complejidad al protocolo, que algunos puristas en la comunidad consideran innecesarios.
- No completamente adoptado: Si bien el descuento de testigos alentó el uso de Segwit, muchas billeteras e intercambios han tardado en adoptarlo, lo que significa que sus beneficios no tienen experiencia universalmente.
Descuento de testigos versus aumento del tamaño del bloque
Uno de los principales debates en la saga de escala de bitcoins era si aumentar el tamaño del bloque directamente o implementar una solución como SEGWIT, que aumentó indirectamente el tamaño del bloque. Entonces, ¿cómo se compara el descuento del testigo con simplemente aumentar el tamaño del bloque?
Aumento del tamaño del bloque:
- Aumento directo en el número de transacciones que puede contener un bloque.
- Aumenta la carga de los nodos, lo que requiere más almacenamiento y ancho de banda para mantenerse al día con la red.
- Requiere una horquilla dura, que puede dividir la red (como se ve en el caso de Bitcoin Cash).
Descuento de testigos (segwit):
- Logra un resultado similar (mayor capacidad de transacción) sin una horquilla dura.
- Reduce los costos de transacción para los usuarios que aprovechan SEGWIT.
- No imponen cargas adicionales en los nodos, lo que lo hace más sostenible a largo plazo.
Esencialmente, el descuento de testigos logra el objetivo de más transacciones por bloque sin comprometer la descentralización de Bitcoin, un principio clave de la filosofía de diseño de la red.
Preguntas frecuentes (preguntas frecuentes)
¿Por qué el descuento de testigos es del 75%?
El descuento del 75% de los testigos existe porque los datos de los testigos, que incluyen firmas digitales, no contribuyen al tamaño a largo plazo del conjunto UTXO que los nodos deben almacenar permanentemente. Dado que estos datos solo se necesitan para la validación de transacciones y se pueden descartar después, tiene un impacto más bajo en los recursos de nodo en comparación con los datos de no testimonio.
Con la actualización de SEGWIT, el tamaño de la transacción se mide en unidades de peso (WU) en lugar de bytes. Los datos de no testigo se asignan un peso de 4 wu por byte, mientras que los datos de los testigos se asignan 1 wu por byte, una relación 1: 4. Esto significa que los datos de los testigos se cuentan efectivamente como el 25% de su tamaño original, lo que resulta en un descuento del 75%.
La elección de la ponderación 1: 4 fue un equilibrio deliberado entre incentivar la adopción de Segwit, preservar la eficiencia de la red y mantener la seguridad. Permite más transacciones por bloque, al tiempo que garantiza la compatibilidad con las reglas previas al segwit, mejorando la escalabilidad de Bitcoin sin sacrificar la descentralización.
¿El descuento del testigo significa que los bloques de Segwit son más grandes?
Sí, en la práctica, los bloques de Segwit pueden ser más grandes que el límite de bloque de 1 MB previo al segwit. Sin embargo, la forma en que se calcula el peso del bloque significa que los bloques de Segwit son más eficientes para almacenar datos, por lo que más transacciones, que no cuentan tanto peso como antes, pueden caber en un bloque.
¿Qué sucede si no uso Segwit?
Las transacciones no segwit no se benefician del descuento de testigos, lo que significa que ocupan más espacio en un bloque y generalmente incurren en tarifas más altas. Sin embargo, todavía son completamente válidos y pueden ser procesados por la red.
¿Es el descuento de testigos aquí para quedarse?
A partir de ahora, no hay planes para eliminar el descuento de testigos. Sigue siendo una parte crítica de la estrategia de escalabilidad de Bitcoin y se considera ampliamente un éxito en la mejora de la eficiencia de la red sin comprometer la descentralización o la seguridad.