Investigación
5
min de lectura
Los Contratos de Registro Discreto (DLCs, por sus siglas en inglés), a veces denominados contratos inteligentes en Bitcoin, son una técnica que permite condicionar los pagos de Bitcoin a datos del mundo real. Los casos de uso típicos incluyen las apuestas deportivas, condicionadas al resultado de un partido, o los contratos de futuros condicionados al precio de un determinado activo. Estos datos del mundo real son proporcionados por los llamados oráculos.
A diferencia de lo que ocurre en Ethereum y blockchains similares, los oráculos y los datos del mundo real en los DLCs están fuera de la cadena (off-chain). Las capacidades de scripting de Bitcoin son limitadas. No es posible llevar directamente datos del mundo real a la blockchain de Bitcoin y trabajar con ellos en el script de Bitcoin. Por lo tanto, en los DLCs, la ejecución del contrato no la gestiona la propia blockchain. Requiere tomar los datos confirmados criptográficamente del oráculo y utilizarlos para finalizar y transmitir la transacción que liquida el contrato.
Por qué usar DLCs
Al condicionar los pagos de Bitcoin a datos externos, se podría considerar el uso de una multifirma 2 de 3, en la que el oráculo posee una clave y actúa como árbitro. Dicha configuración funciona, pero el oráculo debe interactuar con cada contrato, conoce los detalles de cada uno y puede equivocarse, decidiendo el resultado de cada contrato de forma individual, lo que facilita posibles fraudes.
Los DLCs solucionan esto proporcionando:
Escalabilidad: El oráculo no interactúa con ningún contrato. Solo atestigua el resultado de un evento y publica la atestación en algún canal público.
Privacidad: El oráculo no conoce ningún detalle sobre los contratos condicionados a él. De hecho, el oráculo ni siquiera sabe que el contrato existe.
Responsabilidad: Cualquier número de contratos puede condicionarse a un mismo evento. El oráculo no puede atestiguar dos resultados diferentes de un mismo evento sin comprometer su clave privada.
Cómo funciona un DLC
A grandes rasgos, el proceso funciona de la siguiente manera.
Primero, el oráculo define un evento (fecha, sus posibles resultados y la clave pública del evento). Esto se denomina anuncio del oráculo.
Luego, dos partes, digamos Alice y Bob, bloquean sus bitcoins en una dirección multifirma 2 de 2, cada uno con una clave. Esto garantiza que nadie pueda echarse atrás una vez configurado el contrato y que ningún participante individual pueda robar los bitcoins. Esta transacción se denomina transacción de financiación (funding transaction).
Para cada posible resultado del evento, Alice y Bob calculan un valor especial llamado punto de anticipación, utilizando las claves públicas del evento y del oráculo. Estos puntos de anticipación se utilizan para construir las Transacciones de Ejecución del Contrato (CETs, por sus siglas en inglés). Las CETs, en este caso, son transacciones de Bitcoin que se gastan desde la dirección multifirma 2 de 2 hacia Alice y Bob de acuerdo con cada resultado posible).
Cuando ocurre el evento, el oráculo determina su resultado y publica una confirmación llamada atestación del oráculo, utilizando las claves secretas del oráculo y del evento. Alice y Bob la utilizan para desbloquear exactamente una CET y cerrar el contrato.
Nota: Lo que hace especiales a las CETs es que aún no son transacciones válidas. Una CET determinada solo será válida si el oráculo confirma el resultado correspondiente a esa transacción en particular. A menos que el oráculo actúe de forma indebida, solo una CET será válida.
Firmas adaptadoras
El mecanismo criptográfico que hace esto posible se denomina firmas adaptadoras (adaptor signatures).
En lugar de firmar una CET directamente, Alice y Bob crean prefirmas utilizando puntos de anticipación como puntos adaptadores. Una prefirma no es una firma válida. Puede verse como la encriptación de una firma válida. Solo se puede transformar en una firma válida con el conocimiento del llamado secreto adaptador correspondiente al punto adaptador utilizado para crearla.
Cuando el oráculo publica su atestación, esa atestación sirve como el secreto adaptador. Desbloquea exactamente una prefirma, convirtiéndola en una firma válida para la CET correspondiente al resultado real. El contrato se liquida en la cadena (on-chain).
Múltiples oráculos
La seguridad y viabilidad de los DLCs dependen en gran medida de la confiabilidad del oráculo. No se puede evitar por completo el riesgo de que el oráculo deje de responder o se corrompa.
Una mitigación natural es confiar en múltiples oráculos independientes. En un esquema 2 de 3, por ejemplo, Alice y Bob requieren que dos de cada tres oráculos estén de acuerdo antes de que se pueda liquidar un contrato. Esto elimina el punto único de fallo y permite que un oráculo quede inactivo o atestigüe un resultado erróneo sin romper el contrato.
Por qué es importante
Los DLCs permiten condicionar los pagos de Bitcoin a datos del mundo real, de forma privada, escalable y sin confiar en una sola parte. La lógica del contrato permanece fuera de la cadena. La liquidación se realiza en la red de Bitcoin. No es necesario cambiar nada en el propio protocolo de Bitcoin.
Eso es lo que convierte a los DLCs en una auténtica extensión de lo que Bitcoin puede hacer, construida enteramente sobre sus bases criptográficas existentes.



