Los Discrete Log Contracts o DLC, son una propuesta para hacer que Bitcoin tenga implementación smart contract que permita la creación de oráculos blockchain sencillos de implementar, seguros y fáciles de usar.
Los Discrete Log Contracts o DLC, son una propuesta que busca convertir un Bitcoin en una blockchain con medios propios y nativos para crear oráculos blockchains, algo que de momento es imposible de realizar.
La idea detrás de los DLC proviene de la mente de Tadge Dryja del MIT, quien es un conocido desarrollador de Bitcoin y que ha estado detrás de ideas como Lightning Network (LN) y UTreeXO.
Discrete Log Contracts (DLC), la puerta a potentes contratos inteligentes para Bitcoin
Últimamente mucho del desarrollo de Bitcoin está centrado en ofrecer mejoras a su privacidad y a su capacidad de ejecutar scripts más potentes. Mejoras como Taproot y Graftroot apuntan precisamente a esto, y entre ellas llegan los Discrete Log Contracts (DLC). Sin embargo, los DLC tienen un objetivo un poco más específico. Y es que estos, están diseñados para conectar la cadena de bloques de Bitcoin con el mundo fuera de la cadena de bloques. Es decir, los DLC buscan establecer puentes de comunicación que lleven información del mundo real a la blockchain. Para que una vez allí esa información sea procesada por contratos inteligentes dentro de Bitcoin, o cualquier otra cadena de bloques que implemente los DLC.
En tal, es comprensible que conectar la cadena de bloques al mundo real es una funcionalidad muy apreciada por los desarrolladores de aplicaciones descentralizadas. De hecho, las finanzas descentralizadas o DeFi necesitan de este tipo de funciones para poder funcionar de forma correcta. De allí el hecho de que en Ethereum los oráculos sean algo común, porque son estos los que llevan información del mundo real a los protocolos DeFi (o DApps) que se ejecutan en Ethereum y necesitan de estos datos. En ese caso, Chainlink es uno de los proyectos más conocidos de oráculos sobre Ethereum.
Pero Bitcoin, así como muchas criptomonedas derivadas son otra historia, dado que Bitcoin Script está limitado en funciones, este tipo de funciones son casi imposibles de implementar sobre Bitcoin de forma nativa. En su lugar, se hace necesario crear todo un protocolo de segunda capa (como el de RSK o Blockstack) para agregar estas funcionalidades.
Pues bien, la propuesta de Tadge Dryja quiere cambiar esto, y permitir que Bitcoin pueda implementar oráculos de forma nativa en su blockchain. Las posibilidades de esto son muchas. Empezando porque Bitcoin finalmente podría tener un conjunto de aplicaciones descentralizadas DeFi propias. Algo que ampliaría de sobre manera su funcionalidad y masificaría aún más su uso. Por otro lado, generaría problemas si no se solventan los problemas de escalabilidad que sufre Bitcoin.
¿Cómo funciona un DLC?
En el documento técnico presentado por Tadge Dryja, este especifica claramente el funcionamiento básico de los DLC. En primer lugar, debes saber que un DLC es un contrato que tiene valor monetario. Cuando un DLC es creado actúa tres entidades. Dos de ellas, son las partes que están realizando el intercambio, y una tercera parte es el oráculo. Este último es quien dará a conocer los datos necesarios para llevar a cabo la negociación. dependiendo de los datos otorgados por el oráculo, se realiza una distribución de fondos atendiendo a las condiciones estipuladas por el contrato.
Pero es gracias a la estructura de la cadena de bloques, que las partes que actúan en un DLC jamás se conocen como tal. Es más, ni siquiera el oráculo es capaz de obtener dichos datos. Esto garantiza que las operaciones son privadas y seguras, y al mismo tiempo, que dichas operaciones sean descentralizadas. No solo eso, el uso de firmas Schnorr resulta vital en este funcionamiento, y a la vez el uso de tecnologías como Taproot y Graftroot, pues son estas las que amplifican la funcionalidad final de los DLC. Dicho de otra manera, los DLC son una tecnología complementaria a estas otras tecnologías ya mencionadas.
Ahora bien, esto es solo una vista superficial de cómo funciona un DLC, así que ahondemos un poco más sobre esta tecnología. En especial, sobre su apartado “discreto” y lo que permite estas características: las firmas Schnorr.
Firmas Schnorr, y la discreción de los DLC
El funcionamiento de los DLC recae especialmente en las firmas Schnorr. Estas firmas son el método elegido para crear las firmas digitales necesarias para que un contrato multipartita pueda ser ejecutado de forma confiable. Recordemos que las firmas Schnorr son capaces de ejecutar una forma de criptografía conocida como firmas con umbral (threshold signature). Ello significa que, varias partes pueden participar en la firma digital de un contrato o transacciones de criptomonedas. Todo ello sin que ninguna de las partes sepa cuál es la firma de cada una de las partes, ni los datos secretos asociados a dicha firma. De hecho, es la firma de todas las partes la que al final garantiza una firma única y uniforme para el contrato o transacción.
Imagina esto de la siguiente manera:
Dos personas crearán un contrato a futuro de Bitcoin. Ambas partes han decidido crear este contrato y confiar en un oráculo para determinar si en el plazo de tiempo definido en el oráculo se cumplen las condiciones que favorezcan a una u otra de las partes involucradas. En este punto, establecidas las condiciones, se comienza con la creación del DLC. Así cada una de las partes crea su propia firma Schnorr, incluyendo al oráculo.
Una vez se han creado las firmas y firmado el script o smart contract, este se envía a blockchain a la espera de que se cumplan las condiciones. Las condiciones son monitoreadas constantemente por el oráculo, que al término de la operación es consultado por la información necesaria para el cumplimiento del smart contract. Esta información es entregada por el oráculo, junto con su firma Schnorr y una vez se verifica la autenticidad de la información, el DLC activa las condiciones del contrato dada la información recibida. De esta forma, el smart contract creada por las partes en su momento enviará los fondos de acuerdo a lo estipulado, y todo ello sin ninguna intermediación.
En este ejemplo, las firmas Schnorr son vitales porque estas son las que demuestran de forma clara que la información es correcta (en el caso del oráculo) y de que las partes (ganadora o perdedora) han recibido la información y que están de acuerdo con la misma. De hecho, si una de las partes intentara reclamar el dinero sin autorización del oráculo, el dinero podría ir directamente a su contraparte, desmotivando así acciones maliciosas.
Adicionalmente, el hecho de usar firmas Schnorr y de poder unirse con contratos como los impulsados por Taproot y Graftroot solucionan un problema común con los smart contact: la privacidad. Y es que, estas creaciones están pensadas en proteger la misma de la mejor manera posible en todo momento.
Contratos de Registro Discreto (DLC) y Lightning Network
Ahora bien, seguramente la función de los Discrete Log Contracts (DLC) es interesante, pero se presenta un grave problema en el horizonte: la escalabilidad. Pues bien, esto podría no ser un problema del todo, ya que Tadge Dryja ha creado los DLC para que puedan ser ejecutados sobre Lightning Network. ¿Resultado? Las operaciones de DLC pueden realizarse por millas en un canal de Lightning Network dedicado a esta tarea. Y, una vez se llegue al límite del canal, simplemente este se cierra, se emite el bloque en la cadena de bloques de Bitcoin, y se cierran las cuentas para todas las partes involucradas.
De esta manera, sería posible que los DLC puedan realizar miles e incluso cientos de miles de operaciones sin que ello tenga un impacto indeseado sobre la blockchain de Bitcoin. Aunque es cierto, no sería nativo ya.
Incluso, es posible llevar a cabo los DLC a sistemas compatibles con Lightning Network, como es el caso de la Lumino Network de RSK, en donde podría potenciar la funcionalidad de este protocolo de segunda capa de Bitcoin. No solo eso, el sistema podría cambiarse a otras redes o protocolos de segunda capa que cumplan con las funciones HTLC y firmas Schnorr.
Estado actual de los Discrete Log Contracts (DLC)
Pese a todas las bondades y funcionalidades aquí descritas sobre los Discrete Log Contracts (DLC), es triste decir que los DLC aún son una tecnología en desarrollo. De hecho, fue en enero de 2020, cuando se presentó formalmente la primera implementación teórica de los DLC. La implementación la puedes revisar en este GitHub, donde no solo podrás leer el avance actual sino también ayudar a desarrollar esta idea.
Por supuesto, existe gran interés por llevar a cabo este trabajo adelante, y es que permitiría que las criptomonedas como Bitcoin amplíen sus capacidades de forma sin precedentes. Por ejemplo, seríamos capaces de ejecutar aplicaciones DeFi directamente sobre Bitcoin.
Y eso solo sería el comienzo. Lo cierto es que las funcionalidades que los DLC ponen al alcance son muchas. Algo que seguramente aumentará una vez que la tecnología muestre todo el potencial que pueda alcanzar.