pull down to refresh

Seeing a lot of confusion online about Tether’s USDT coming to bitcoin/lightning via taproot assets and compliance. Questions people seem to have:
  • Tether doesn’t support anything they can’t unilaterally freeze funds on - how can you freeze funds on taproot assets?
  • Taproot assets is fully permissionless, and works on private blockchains like liquid. How can there be compliance with the Travel Rule?
  • How does Tether comply with OFAC compliance if they support a fully permissionless network?
These confusions hinge on a lack of understanding of how taproot assets work. People seem to think it’s a lightning specific protocol, but it isn’t. It’s actually a layer 1 protocol that works with lightning.
So let’s drop lightning for a bit, and talk about taproot assets and universes, the missing piece left out of these conversations.

Understanding Universes in Taproot Assets

Taproot assets used to be called Taro before Lightning Labs got sued into changing the name. Taro was a clever acronym that explains how taproot assets works much better than the current name.
Taproot Asset Representation Overlay. It’s an overlay on top of a bitcoin transaction, where you only store proofs in taproot leaves. The “overlay” data is stored in what’s called a universe, and different assets are stored in different universes. A “universe” is a thing you can run like a blockchain but doesn’t work like one. It contains data like existing users and holders of an asset. You can spin up a public universe, run a local one, clone/sync an existing public universe very much like a blockchain.
Critically, it isn’t one - it’s much more like a git repository.
But universes are just a repository of proofs and proof owners. Very little security exists, because they are reliant on bitcoin for fund transfers.
A bitcoin transaction transfers taproot assets, and the sender publishes proofs to the asset universe to finalize the transaction. The recipient won’t be able to validate the transaction until the universe registers the transaction.
Maybe you can see where I’m going with this from a compliance standpoint.

Compliance Mechanisms in Taproot Assets

Crucially, the bitcoin tx can’t be stopped (because bitcoin), but the centralized universe can be forced not to register certain transfers. This is the angle from which compliance can be enforced.
Simply put, it’s possible for the bitcoin tx to be confirmed without the universe recognizing the fund movement. This doesn’t result in a “fund freeze” like some may have experienced, but rather a disavowing of funds.
It’s possible to clone a universe and run alternates that someone can publish a disavowed transaction to - although this shouldn’t work. Since the value of USDT is dependent on tether’s ability to convert to USD, if tether says “for this specific asset tx, we will not convert back to USD for whichever reason” then anyone who accepts the tx now potentially has an asset that has no value. So - no one ought to accept the asset. Even though the asset still exists, can move unilaterally, and without permission.
In this sense USDT is permissionless in definition because no one can freeze it. But no one can stop tether from disavowing it.
This behavior extends beyond compliance however. You can put any arbitrary rules on any asset and if the asset stops following them, have the universe disavow the asset. Sound familiar? Sounds kind of like covenants! But not very cryptographically guaranteed.

Actual Compliance Considerations

There are at least 2 compliance considerations off the top of my head that might apply to universes.
OFAC compliance
  • OFAC - Office of Foreign Assets Control
  • List of addresses associated with entities the US gov forbids financial relations with
    • Terrorists, narcos, countries, regimes, etc
  • Basically - Do not send or accept money from these banned entities or face up to 20 years in prison
  • The gov really doesn’t mess around with OFAC
Travel Rule Compliance
  • Transfers above a threshold (normally $1,000 USD) must have KYC associated
  • This is typically done by the receiving institution directly checking in with the sending institution via a TRP (Travel Rule Protocol) like coinbase’s TRUST.
  • Universes will likely have to participate, or will be ready to provide relevant info that institutions will use to pipe into TRPs to get KYC, defeating any privacy protocols taproot assets might be built on top of.
Even if a universe doesn’t wish to participate, they’re in what’s called a “Position to know” which is the government’s way of saying “this is a centralized entity I can point a formal gun at, and force compliance.” It’s this specific concern that drives applications to be fully decentralized. Not because decentralization is specifically good and centralization is somehow bad.
It’s a way to get around compliance rules (free money is free of regulatory restrictions).
But really, anyone who is truly concerned about this shouldn’t be using USDT. Tether has long since complied with these restrictions, and many other fully decentralized alternatives have existed for quite some time.

Final Thoughts

USDT isn’t fully permissionless, never has been. Taproot assets may have many usecases, but fundamentally it was built for stablecoins, and this kind of compliance has been a need from day 1.
There are ways to use taproot assets like USDT as a restricted entity, while keeping all the intermediary institutions relatively happy, but I won’t be sharing those hacks in this article. I want Bitcoin to grow, I want lightning to grow, and I want stablecoins to grow.
While I build freedom technologies that my enemies will use, I still hate scammers, terrorists, and I won’t make it easy for them to defraud institutions like my own or my friends.

Need to catch up on Taro/Taproot Assets?

Why do I know so much about this?

I'm ex-lightning labs, and helped review taproot-assets (back when it was called taro). Now I'm working on magnolia, an api driven non-custodial custodian that allows bitcoin businesses to accept fiat without ever touching it. We plan on supporting USDT on lightning because it's pretty cool. Find me on twitter.
157 sats \ 0 replies \ @Scoresby 16h
Great rundown. Thanks for taking the time to write it up. You should publish it again next week during US morning hours. Not too many people get to see things Friday evening.
reply
“While I build freedom technologies that my enemies will use, I still hate scammers, terrorists, and I won’t make it easy for them to defraud institutions like my own or my friends.”
I like this energy
reply
I’m really not a fan of stablecoins. You won’t be either with what is coming soon. The Satoshi is the only real unit of value on this planet. Playing and building with stables is sailing on a sinking ship, on fire.
Liquid assets (shitcoins) cannot be frozen on chain, yet USDT exists here. Aqua Wallet readily converts Vitalik or Sun shitcoin USDT into Liquid versions. How is it compliant? It’s not. None of it is.
reply
Nice try robot...
Lol all comments here not even realize that is a bot posting this...
reply
beep boop bop beep, i am not the bot you seek
reply
You sure, The other posts from this user look organic, but this text does look partially synthetic.
It’s ok to use synthetic text generation (not using advanced tools is just being a caveman), but one should always cite it as such and not pretend to be all your work. I do like to play with concepts in LLMs but do not pass it off as entirely my work.
reply
nah no ai used here. i find it makes articles tough to read.
reply
Doesn't really feel like AI text. I put it into gptzero.me and it came out negative.
reply
LOL using another bot to tell you that is a bot... don't you see the ridiculousness ?
reply
10 sats \ 11 replies \ @0xIlmari 9h
Did you skip the part where I said "doesn't really feel like AI"? I use LLMs a lot and I've gotten very good at detecting AI text.
But that's a "trust me bro" argument, so I backed it up with a gptzero.me check.
Why? Because it is also very good. I tested it extensively, tried to confuse it with mixed synthetic and human text and it wasn't fooled. I have no reason to think it's not an accurate tool.
You behave like a Luddite. You have decreed all AI to be garbage and refuse to use it even if it would help you. For example to retouch your guides and make them more readable.
reply
For example to retouch your guides and make them more readable.
NO! That's the human touch.
refuse to use it even if it would help you
"help" me like this? To became a brainless monkey?
reply
That's semantics. We used to call Quake bots "AI". Don't get tangled up in terminology. See it for what it is (a tool) and what it can do for you.
0 sats \ 1 reply \ @tomlaies 10h
Especially after the first paragraph the post has a LLM like feel to it, I agree.
reply
damn, maybe i was an ai the whole time
reply
Love this.
reply
0 sats \ 0 replies \ @anon 3h
“A bitcoin transaction transfers taproot assets, and the sender publishes proofs to the asset universe to finalize the transaction.” This is only accurate if we are talking about a pocket universe.
The data structure of Taproot Assets involves a few layers of Merkle trees. When you own a Taproot Asset outright you hold all the keys in that set of trees. But in the case of a pocket universe, the asset holder holds the keys at the bottom of that set of trees, but the pocket universe operator holds the keys at the top of that set of Merkle trees. ...it’s sort of a hybrid custodial situation. In this setup it is fair to say that “universe to finalize the transaction.”
However, if you hold an asset outside of a pocket universe, you hold all the keys and you do not need to wait on any universe to finalize the transaction.
Here the naming is a bit confusing. A “pocket universe” is really a very different thing from a general “universe”. A general universe is simply a data store. It is a database where onchain transfer proofs are stored. If you are running a Taproot Assets node, you are running your own universe.
It is accurate to say that a stablecoin issuer could decline to redeem coins that have proofs associated with addresses that they don’t like. That is accurate.
reply
You said "Tether doesn’t support anything they can’t unilaterally freeze funds on". How can they do it on Liquid with all the transactions confidential?
reply
0 sats \ 1 reply \ @Se7enZ 3h
As I understand it, they can't freeze funds on Liquid. Regulated assets with centralized control on Liquid are released as "AMP" assets, and Tether was not release as one of those. Between that, and confidential transactions, it is possible to track transfer of value through addresses between peg-in and peg-out, but you can't see which asset or how much of it are transferred.
USDT on Liquid is not subject to centralized control, but it's not completely untraceable via all heuristics.
reply
Exactly my point. But I think it can be completely untraceable given that a UTXO can confidentially hold BTC or USDT, and people can discretely swap BTC back and forth to LN. By the time some USDT amount shows up at a KYC exchange its history can be totally obfuscated.
One can also privately trade BTC/USDT via our non-KYC exchange.
reply
0 sats \ 0 replies \ @anon 9h
Can I compare a universe with a indexer (like you have for runes, ordinals etc)?
reply
Awesome writeup. What I'm taking away from this is, if I don't touch USDT, OFAC will not try to touch me. And I sure as hell ain't touchin' dat shiz with a ten foot pole.
reply
Compliance compliance compliance.
Let me tell you a tale of a man named Satoshi Nakamoto. He didn’t ask for permission. He didn’t build compliance features into the protocol. He knew what he was building.
reply
Taproot assets used to be called Taro before Lightning Labs got sued into changing the name.
Who sued them, if i may ask?
reply
shitcoin company called Tari Labs lol. dumbass ruling by the judge but it is what it is i guess
reply
Tari Labs, case 3:22-cv-07789-WHO
reply
Great post Great information
reply
it seems like this explanation is somewhat similar to ecash/cashu mints. would you be so kind as to compare and contrast this explanation wrt cashu?