Glosario / Transacciones y comisiones
Unidad de peso
También se conoce como WU.
- ¿Qué es una unidad de peso?
- Una unidad de peso es la unidad contable que reemplazó al byte en el límite de tamaño de bloque de bitcoin y permitió a SegWit aumentar la capacidad sin una bifurcación dura (hard fork), al cobrar los datos de firma a un cuarto de precio.
Se especifica en el BIP-141.
Los nodos no actualizados cuentan los bytes de un bloque sin datos de testigo y rechazan todo lo que pase de 1.000.000, mientras que los nodos actualizados cuentan el peso del bloque y rechazan todo lo que pase de 4.000.000. Los mismos bloques cumplen las dos reglas, y ese es el truco que convirtió a Segregated Witness en una bifurcación blanda (soft fork) cuando se activó en el bloque 481.824, en agosto de 2017. Todo lo que usted paga por mover bitcoin se cobra en esta unidad o en una cuarta parte de ella.
Cómo funciona
La unidad de peso existe porque los nodos que ejecutan software distinto tienen que coincidir en cuándo está lleno un bloque, incluso cuando no ven los mismos bytes.
A un nodo que nunca se actualizó no se le envían datos de testigo en absoluto. Ve el bloque sin datos de testigo y aplica el techo que siempre ha aplicado, 1.000.000 bytes. Un nodo actualizado reconstruye el bloque completo y aplica un techo de 4.000.000 unidades de peso. Si se cobran cuatro unidades por cada byte que no es de testigo y una unidad por cada byte de testigo, las dos comprobaciones nunca pueden discrepar: cualquier bloque que quepa en el presupuesto de peso queda también por debajo de un megabyte una vez eliminados sus datos de testigo. Una regla que nunca hace más que restringir lo que el software antiguo ya acepta es exactamente lo que es una bifurcación blanda, y esta forma de cobrar es lo que permitió que el aumento de capacidad cupiera dentro de una.
La elección de un cuarto no fue arbitraria. Los bytes de testigo son firmas, y las firmas son la parte de una transacción que un nodo puede descartar una vez que el gasto queda enterrado; nunca entran en el conjunto de UTXO, la única estructura que toda máquina que valida tiene que mantener a mano para siempre. Darles un precio bajo empujó a las billeteras hacia un formato que hace crecer más despacio ese conjunto costoso, y lo consiguió haciendo que la opción responsable fuera también la barata.
Un segundo presupuesto se mide en la misma escala y recibe mucha menos atención. BIP141 limita un bloque a 80.000 unidades de operación de firma, y las operaciones heredadas (legacy) cuentan cuatro veces, así que un bloque repleto de multisig de estilo antiguo puede quedarse sin verificaciones de firma antes de quedarse sin espacio.
Por eso la capacidad es un rango y no una cifra. Un bloque de pagos puramente heredados sigue sin poder superar 1.000.000 bytes, mientras que uno cargado de datos de testigo puede acercarse a cuatro megabytes, y la mayoría queda entre uno y dos porque la mayoría de los bloques son una mezcla.
Dónde aparece
Las unidades de peso se muestran junto a cada bloque en todos los exploradores de bloques y son la cifra en función de la cual optimiza en realidad un pool de minería.
Donde se ven con más claridad es en una frase que dejó de ser cierta en agosto de 2017. Bitcoin no tiene un límite de bloque de un megabyte; tiene un presupuesto de cuatro millones de unidades, y la barra de llenado que usted ve en un explorador se mide con respecto a ese presupuesto. Los pools construyen una plantilla llenando el presupuesto con las transacciones candidatas que mejor pagan y reservando una parte para la transacción coinbase, así que un bloque minado suele quedar justo por debajo del tope y no exactamente en él.
Las unidades de peso son también el tema oculto de la discusión más ruidosa de bitcoin. Guardar datos en el espacio de testigo cuesta una cuarta parte de lo que cuestan los mismos bytes en cualquier otro lugar, y esa es precisamente la razón de que las inscripciones vivan ahí. El debate sobre si esos datos deben estar en la cadena es, por debajo del ruido, un debate sobre una proporción que se eligió cuando se redactó BIP141, en 2015.
Para quien compra y conserva, el contacto con esta unidad es indirecto. Usted nunca escribirá una cifra de peso en una billetera, pero la unidad de peso es la razón de que gastar una moneda de formato antiguo cueste más que gastar una moderna.
Unidad de peso frente a peso de bloque
Una unidad de peso es la vara de medir; el peso de bloque es una medición tomada con ella. Las transacciones también se pesan: la cifra de un bloque es la suma del peso de sus transacciones más el encabezado y los contadores, y por eso las dos palabras no son intercambiables. La confusión sale cara cuando alguien lee la cifra de 4.000.000 como un máximo permitido por transacción. No lo es: la política de retransmisión rechaza una transacción estándar individual mucho antes de que se acerque al techo del bloque, y el consenso solo mide el bloque.