Minting and burning zAssets — a (semi) technical deep dive
It’s 2021 and, by now, we all take decentralized finance for granted. We have platforms like Uniswap, where (if they wish to and liquidity allows it) a user can exchange an exotic token for almost any other without any intermediaries. And, because of the great speed of developments, most would consider these use cases as the most basic manifestation of DeFi.
However, it’s only when you want to venture outside your chain of preference that you remember our industry’s still taking its first steps.
Wrap, wrap, wrap, wrap, wrap
Let’s imagine ourselves in the following scenario, continuing with the Uniswap example: You received a deposit of, let’s say, 100 DAI in your non-custodial wallet and want to trade them for $100 worth of Bitcoin using DeFi. This seems like a piece of unicorn cake, right? Well, not quite so.
Because DAI is an ERC-20 token that runs on the Ethereum blockchain, and Bitcoin runs on its own chain, these two are fundamentally incompatible. To buy “real” Bitcoin, then, you’d have to go through the inefficient process of:
- Finding a counterparty.
- Sending them your DAI to an Ethereum wallet (paying a transaction).
- Having someone verify that you sent your DAI (possibly paying a fee).
- Having the counterparty send you a Bitcoin transaction to a separate Bitcoin wallet (paying a transaction).
- Having someone verify that both transactions were made and closing the channel.
Of course, few users would want to incur such a troublesome process. There are two ways of getting around this difficulty:
- Going through a centralized system: A centralized exchange like Coinbase or Binance can offer DAI/ADA, DAI/DOGE, or DAI/BTC pairs despite all of them existing in chains separate from DAI. This, simply put, is because they control all the funds within their system, which also allows them to connect to multiple chains. The funds move efficiently, but they’re not the property of the users unless they move them into their full custody. Of course, moving them outside of the system often is subject to fees.
- Using wrapped assets: The go-to solution in the decentralized world. Wrapping uses simple smart contracts to “lock” a token away, issuing an additional asset to represent it. In our previous example, you would acquire wBTC (an ERC-20 representation of BTC) instead of BTC. Since the contract to mint wBTC only issues it by locking away real BTC, you’d be able to either keep the wBTC within your wallet (and use it as if it was the real Bitcoin) or enter it into the same system to redeem BTC for it. In theory, users could wrap any asset in any chain to issue wrapped tokens to be used in other chains. You could, in practice, think of your new 0.002 wBTC as an IOU to cash out 0.002 BTC whenever you want to.
(Note: It is worth mentioning that, although wBTC is a good example as the most popular wrapped token, it is not fully decentralized. It, however, uses a custodian that behaves transparently.)
More so, interoperability isn’t the only reason for wrapping
This diagram by TrustWallet illustrates the process of minting wBTC.
In our previous example, the motivation for wrapping a token was purely related to monetary value: You wanted to access Bitcoin’s price without having to operate on two different blockchains since it would be inefficient. We achieved this by obtaining wrapped Bitcoin in the Ethereum chain.
However, chains uphold their own values. Therefore, wrapped tokens gain utility depending on whatever new chain they get to access. By wrapping BTC as wBTC in Ethereum, BTC gains access to the programmability of ERC-20 tokens and the Ethereum ecosystem. This is immensely valuable because our wBTC user now can, among other things, use it for DeFi protocols, liquidity pools, collateralized loans, etc.
And, just as chains have their own values, they also have their faults: For example, Ethereum, just like Bitcoin and others, is almost perfectly transparent, which can cause problems of its own. We’ve written about the importance of privacy in the past, and precisely for these reasons, we think it’s necessary to take ERC-20 assets one step further, wrapping them in a protocol that allows user control over their privacy disclosures.
The beauty of zAssets
As we mentioned, ERC-20 assets, since they live in the Ethereum blockchain, are traceable. This means that, through a single transaction, anyone with sufficient tools and knowledge can extrapolate any user’s entire DeFi history.
We’ve created Panther Protocol to allow users to access DeFi privately, utilizing their tokens within a system that gives them control over who and how they give access to their data. To do this, we’re introducing zAssets: 1-to-1 representations of a given token in a private system.
How does a user mint zAssets?
The process of obtaining zAssets is not opposed to wrapping a token in the way we just explored, although it has a few key distinctions. These differences are mostly related to providing privacy and are therefore worth exploring. Let’s examine the minting of a zAsset within our MVP and look at these privacy features.
Given a user that wants to obscure the transaction history of their USDC by turning it into zUSDC, they would:
- Deposit their USDC into a Panther Vault. Vaults are smart contracts that lock the tokens as collateral while the zAsset exists, similar to what happened to the BTC in the wBTC example. A corresponding amount of zUSDC will then be minted within the Panther Pool. Our pool, in this case, helps users shield their funds to obscure transactions, incentivizing users to add to the pool to support this process. The users would see their balance of zAssets from the Panther wallet, a unique wallet with privacy features.
- The user would now be free to transact with or privately transfer the zUSDC in any way they wanted to. The wallet will allow them to redeem zUSDC for the underlying USDC into a new stealth address generated exclusively for them. They may also deploy any of their USDC into DeFi protocols that accept it. At the time of accessing the underlying USDC, the platform will automatically burn the zAsset to prevent uncollateralized assets from circulating.
- Thanks to Panther’s unique attestation systems, users can choose to disclose metadata of any transaction, for any reason, to anyone, even retroactively. Panther facilitates disclosure of private transactions within Pools, and users can reveal public on-chain transactions in the usual way. Suppose a user wants to withdraw their USDC from a DeFi protocol. In that case, they can deposit it back into a Panther Vault to obscure their DeFi history, then later optionally withdraw into another newly generated stealth address.
Additional considerations on zAssets and their role in the protocol
zAssets provide excellent privacy, which gets progressively better and higher through time and more users joining the network. The Panther protocol ensures that, by rewarding users to provide increased privacy to the network and other parts of the ecosystem, this will represent a net benefit for the privacy of the crypto ecosystem.
zAssets are, thanks to the smart contracts used to lock their collateral, near-perfect reflections of their underlying assets, and therefore maintain their value. Some even argue that locking assets in one chain to place them on another causes the value of the assets to grow due to resulting scarcity on the original chain.
It’s important for users to keep in mind that no DeFi protocol is absent of risk. Although our team dedicates 100% of its time to ensure that everything is up to standard to protect users’ funds, DeFi protocols are best used as highly speculative assets at early stages.
About Panther
Panther is a decentralized protocol that enables interoperable privacy in DeFi using zero-knowledge proofs.
Users can mint fully-collateralized, composable tokens called zAssets, which can be used to execute private, trusted DeFi transactions across multiple blockchains.
Panther helps investors protect their personal financial data and trading strategies, and provides financial institutions with a clear path to compliantly participate in DeFi.