Panther Protocol Documentation
WebsiteBlogTwitterGovernance ForumVoting
  • 📘Start Here
    • Get Started
    • What is Panther?
    • Who is Panther for?
    • Realized vision and use cases
  • 🔩Panther Core
    • Testnet dApp
    • Mainnet Beta (Canary)
    • Panther Transactions
      • Shielded Pool
      • zAssets
      • zAccount
      • zTrade (OTC Trading)
    • Panther Compliance
      • User Reveals
        • History CSV Export
      • Forensic Reveals
  • 🌌Ecosystem
    • Ecosystem roles
      • Compliance Providers
      • Relayer
      • zMiner
        • Get Started
      • Zone Manager
        • Get Started
    • Fees & Rewards
  • ⚙️Interoperability
    • DeFi Adaptors
      • zSwap
        • Economic optimization of swaps
    • Multi-chain
  • 📚LEARN
    • Glossary
    • UTXOs
      • UTXO Model
      • UTXO Cryptography
      • Merkle Trees
    • ⚗️Cryptographic Primitives
      • ZK proofs
      • ZK SNARKs
        • Groth16
      • Homomorphic encryption
      • Hash functions
      • Poseidon
      • Other Privacy Enhancing Technologies (PETs) used by Panther
      • Elliptic curves
      • Pairings
    • 🔓Security Audits
    • 🤝Community
    • 📚Resources
  • Panther DAO
    • DAO and Decentralization
      • Governance Framework
    • Road to decentralization
      • Decentralization Tool
  • Changelog
    • Product versions
    • Oshiya
    • Panther Testnet
      • Stage 0
      • Stage 1
      • Stage 2
      • Stage 3
      • Stage 4
      • Stage 5
      • Stage 6
      • Stage 7
      • Stage 8
      • Mainnet Beta (Canary)
Powered by GitBook
On this page
  • Introduction
  • Bus tree
  • Taxi tree
Export as PDF
  1. LEARN
  2. UTXOs

Merkle Trees

Merkle trees

PreviousUTXO CryptographyNextCryptographic Primitives

Last updated 11 months ago

Status
Entrypoint

In development on testnet

Introduction

Panther’s architecture includes the following Merkle trees:

  • processes UTXOs collectively by batching them

  • processes UTXOs individually

  • Ferry manages UTXO data in the multi-chain Panther ecosystem

In the dApp, users can choose between batched processing (taking the bus) and fast processing (taking the taxi) from the toggle available under the Fee section when submitting a transaction.

Bus tree

Within the “Bus” tree, each leaf is a commitment to:

  • An “asset” UTXO representing a (or zNFTs) (essentially an “IOU” for the corresponding underlying collateral locked on the Panther Vault)

  • “zAccount” UTXO, a record that keeps information about the owner of a zAccount

The name Bus Tree refers to the UTXOs being committed to the tree in batches of up to 64 UTXOs rather than individually. To get on the “bus”, a UTXO needs to be queued and wait until a processes that queue.

The “bus” approach makes the process more cost-efficient as all UTXOs in a queue share processing costs. As such, the individual cost for a transaction per user is much lower. On the other hand, users are dependent on the zMiner to process the queue. Just as users of a blockchain incentivize miners to pick up their transactions by defining how much they are willing to pay for “gas”, Panther Protocol users define the reward (denominated in $zZKP) that they are willing to pay to the zMiner who processes their UTXOs.

Taxi tree

Taxi tree has been released with of the testnet dApp.

To avoid "waiting for the bus," the Taxi tree allows UTXOs to be processed individually to enable near-instant spending. This removes the wait time required to process a batch, with an extra cost tradeoff.

📚
Shielded Pool
zAsset
zMiner
Stage 5
Bus
Taxi
dApp