Bitcoin has been critiqued by those in the altcoin community for the past few years over its inability to host smart contracts. But recent work from developers at Suredbits, Crypto Garage and Atomic Loans — along with efforts from some independent contributors — on Discreet Log Contracts (DLCs) is bringing smart contracting to Bitcoin and will quell some of these critics. DLCs are uniquely positioned to bring smart contracting to Bitcoin using oracle contracts that are much more private and scalable than previously thought possible.
DLCs are Bitcoin-based contracts that use one or many oracle signatures for enforcement. The
After a recent DLC redesign, they were changed to use a 2-of-2 multisig that pays out directly to a user’s wallet instead of paying to a tweaked public key. This old design required a penalty mechanism similar to that of the Lightning Network, which made it take more block space and be less private. This redesign is made possible by using adaptor signatures and making the adaptor point based on the oracle’s expected signature. What this basically means is that each party gives each other invalid transaction signatures that can only be made valid in conjunction with the oracle signature.
To make this recent bet between Stewart and Dorier possible, a lot of progress has been made in developing a standard for DLCs as well as building software according to these standards. DLC developers have been working on this standard heavily since the beginning of this year. Along with this specification, they have been building compatible software; so far there are four major implementations being worked on:
The teams working on DLCs have lots of plans for the future of the technology. Today, DLCs have only been implemented for onchain transactions. One of the most obvious improvements for DLCs would be to put them on the Lightning Network!
There are two planned ways to put DLCs on Lightning. One is by making them only usable between parties who already have Lightning channels open between one another, which could be done today but would require a lot of work done by the different Lightning implementations to add support for DLCs.
And this could be obsoleted by the second way to do Lightning DLCs, however there are some caveats. This second way to do Lightning DLCs likely won’t be possible until after
There are other general improvements to DLCs that can be made possible in the future as well. One major idea is to give the user the ability to use multiple oracles for a given contract instead of just one. This would allow users to distribute trust between multiple oracles, instead of having a single point of failure for their contracts.
And other small improvements can be made come Taproot! With Taproot, we can make multisig transactions look like everyday, single sig transactions. Applying this to DLCs, we can make them have a smaller on-chain footprint and make them look like any other standard single sig transaction, thus saving users on fees and privacy!
DLCs are a pivotal new way to bring smart contracting to Bitcoin and we are extremely excited to see continued development with them. If you are interested in knowing more about DLCs, check out
This is a guest post by Ben Carman, a developer with Suredbits. Opinions expressed are entirely his own and do not necessarily reflect those of BTC Inc or Bitcoin Magazine.