What is UTXOs ?

UTXOs, or Unspent Transaction Outputs, are a fundamental concept in many proof-of-work (PoW) blockchains like Bitcoin, Litecoin, and Zcash. In simple terms, a UTXO represents a chunk of cryptocurrency that has been received but not yet spent. Each transaction consumes one or more UTXOs as inputs and creates new UTXOs as outputs. This system ensures that coins are not double-spent and that the blockchain can track the flow of assets precisely.

In the context of zlink.cash, UTXOs play a crucial role in enabling private transactions:

  • Encrypted UTXOs: zlink.cash uses encrypted UTXOs to track a user’s balance within shielded pools. These UTXOs store information about deposited assets in a way that is private and secure, preventing outsiders from knowing the exact balances of individual users.

  • Building zkProofs: Encrypted UTXOs are also essential for generating zero-knowledge proofs (zkProofs). When a user wants to withdraw or transfer assets, zkProofs verify that the user controls the correct amount of funds without revealing which UTXOs belong to them.

  • Private Balance Tracking: By combining UTXOs with shielded pools and zkProofs, zlink.cash allows users to track their balances and perform transactions in a completely private and verifiable manner.

zlink.cash leverages the UTXO model not just for security, but also to enable privacy and cryptographic verification. Each encrypted UTXO acts as a building block in the shielded system, helping to maintain both confidentiality and integrity of user funds on-chain.

UTXOs = {amount:bigint,nonce:bigint,token:address}
//amount = Rmount present in input that can be spent
//nonce = Random number for unique commitment
//token = ERC20 Token address, address(0) for native token
//shieldedAddress = hash(PublicAddress,Signature)
//shieldedAddressHash = hash(shieldedAddress)
//precommitment = hash(shieldedAddressHash,nonce)
//commitment = hash(precommitment,amount,tokenAddress) //onchain
//nullifier = hash(commitment,signature)//signature act as private key

Last updated