Simplicity: Jets Release

A new developer preview of Simplicity introducing jets to streamline contract development

An Intro to Simplicity

  • Introspection: allowing contracts to observe and control the amounts and destinations of transactions based on spend criteria.
  • Generality: supports any program a developer can think of, while still guaranteeing the verifiability of resource costs.
  • Extensibility: even new library-level functionality can be implemented in Simplicity itself—for example, Schnorr signatures.
  • Vaults: users can secure their coins by requiring a devaulting withdrawal notice period before moving to their final destination. During the devaulting stage they can approve or cancel the withdrawal. This means that even if keys are stolen, an attacker cannot abscond with coins without giving the user sufficient time to detect and block the theft.
  • Limit order swaps: a limitation of swaps made using the Liquid Swap Tool is the atomic swap contract only supports the execution of a trade of a fixed amount of an asset. A partial order match requires a new contract to be created. With Simplicity, traders can set up far more flexible swap contracts that support partially-filled orders. This enables the generation of “limit orders” with reduced settlement risk — useful for building P2P and non-custodial asset exchanges. Even more advanced uses are possible, including algorithmic trading or even smart contract-based derivatives.

History

The Advent of Jets

Simplicity on Bitcoin

Simplicity-based Schnorr signatures: jets vs no jets

Simplicity on Elements & Liquid

Future Work

  • Implementing Taproot on Liquid.
  • Cleaning up our Elements branch and updating Simplicity to build on Taproot, which provides a more flexible script-updating mechanism than raw SegWit.
  • Determining an accurate cost model for Simplicity programs, starting from the formal Bit Machine (as in Section 3.5.2 of the Simplicity Tech Report) but modified to take account of jets. Similarly, designing an update mechanism to allow these costs to change as new jets are implemented.
  • Completing the implementation of Simplicity, including all resource estimation features, anti-denial-of-service mitigations, and finalizing the canonical program representation.

To keep up with the latest Simplicity developments, make sure you sign up for our official newsletter or subscribe to the simplicity-dev mailing list.

Our CEO, Adam Back, will be presenting a webinar on basics of Simplicity on the 8th of April at 16:00 UTC. It’ll be a great chance for bitcoiners to get their questions answered, so make sure you don’t miss it!

Register here!

Developers who want to explore potential uses of Simplicity are encouraged to check out either of the Bitcoin or Elements branches and start playing around, but we’d stress that for now, this should only be attempted by expert users.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Blockstream

Blockstream is the global leader in Bitcoin & blockchain technology, making financial markets more efficient by reducing reliance on trust.