November 25, 2021

By Byron Hambly

Tari Development Update

Layer 2 Progress

The Tari development community is hard at work on the Layer 2 DAN, and this week we take a look at the Covenants RFC and quality of life improvements in the Tari mobile wallet Aurora.

Covenants RFC

Previously we posted the draft for covenants on Tari. After some discussion, RFC-0250 Covenants was published for community feedback.

Let’s take a quick look at the proposal. Covenants allow the spender of a transaction output (UTXO) to place restrictions on how that output can subsequently be spent.

Wait - that sounds like TariScript? Not exactly - the script on a UTXO only restricts how it may be spent in a transaction. Once it is spent, the resulting output has no such restriction. That is the functionality covenants aim to provide.

The proposed implementation will add a covenant field to each transaction input and output. Each covenant is composed of set operations, filtering the output set using a discreet set of rules. If at least one output in the set is matched by the filtering rules, the covenant is upheld and the output can be included in a new transaction and block.

Normal transactions will have the identity (ie. empty) covenant - meaning that no restriction is applied.

An NFT royalty covenant would have to ensure a few things:

  • that the features that define the output are preserved (its unique id and metadata)
  • that the TariScript of the output is preserved (scripting a royalty payment)
  • and that the covenant itself is preserved (ensuring royalties on subsequent transfers)

This does lead to protocol and consensus changes - the covenant must be committed to in the output hash to prevent malleability, and must be validated when entering the mempool and before being included in the blockchain.

More information on the proposed set operation functions and other examples are available in the RFC.

If you have any feedback, please come discuss the Covenants RFC with us on IRC in #tari-dev on Libera.Chat, our Discord server, or Telegram.

Aurora Mobile Wallet

Upcoming version 0.9 of the reference Tari mobile wallet includes a lovely new user experience when entering seed words for recovery.

Since these words are part of predefined lists, it makes sense to assist the user by filtering words as letters are typed.

That means a lot less typing! 2 to 4 letters are enough to find your word and tap the suggestion 😎

See it in action in this video:

You can follow more Aurora development on GitHub:

Happy Thanksgiving 🦃

We’d like to wish everyone a very happy Thanksgiving. We are incredibly grateful for our community. May you be safe and blessed with your family and friends.

Hack on the future of Digital Assets @ Tari

As always, come join us to chat about ongoing development in the dev channel on our Discord server, or on IRC in the #tari-dev channel on the Libera.Chat IRC network.