Glosario cripto
Contrato con bloqueo de tiempo y hash (HTLC)
Un HTLC bloquea fondos de modo que el destinatario debe revelar un secreto antes de un plazo para cobrarlos; si no, el remitente recupera el dinero.
Un HTLC combina dos condiciones. El bloqueo por hash indica que puede reclamar los fondos quien presente la preimagen de un hash concreto, un valor secreto. El bloqueo de tiempo indica que, si nadie lo hace antes de cierta altura de bloque o fecha, el remitente original puede recuperarlos. O se revela el secreto y el pago se completa, o vence el plazo y se cancela.
Esta construcción sencilla hace posible el enrutamiento en Lightning. Cuando Alicia paga a Carol a través de Bob, Alicia bloquea fondos para Bob y Bob bloquea fondos para Carol, todo bajo el mismo hash. Carol revela el secreto para cobrar, lo que permite a Bob cobrar a Alicia, así que ningún intermediario puede quedarse los fondos. La misma idea permite los intercambios atómicos entre cadenas y los submarine swaps entre Lightning y bitcoin en cadena.
Los HTLC tienen puntos débiles. Si un pago falla a mitad de ruta, los fondos pueden quedar bloqueados hasta que expire el plazo, algo que los atacantes aprovechan para atascar canales. Como todos los saltos usan el mismo hash, los pagos pueden correlacionarse, un problema de privacidad que diseños más nuevos basados en contratos con bloqueo por punto intentan resolver.
Ejemplo
En un intercambio atómico, Alicia bloquea BTC con un HTLC y Bob bloquea LTC con el mismo hash; cuando Alicia revela el secreto para cobrar los LTC, Bob lo usa para cobrar los BTC.
