Haven Protocol
  • Haven Protocol
  • 💻GUI
    • Overview
      • Restore Account
      • Create Account
      • Login
      • Transfer
      • Receive
      • Offshore Exchange
      • Onshore Exchange
      • Nodes
      • Settings
      • Troubleshooting
      • Signature
      • Smart Mining
  • CLI
    • Overview
      • Installation
      • Create Account
      • Restore Account
      • Login
      • Transfer
      • Receive
      • Offshore Exchange
      • Onshore Exchange
      • Nodes
      • Troubleshooting
      • Settings
  • RPC
    • Overview
      • Transfer
      • Transfer Split
      • Offshore
      • Onshore
      • Offshore Transfer
      • Offshore Sweep All
      • Get Offshore Balance
      • Get Transfers
  • FAQ
    • Project Timeline
    • The Protocol
      • What is Haven?
        • What can Haven be used for?
        • How does it work?
          • Transactions
            • What are the transaction fees?
            • How do the transactions work?
          • Haven Assets
            • Can I see the supply of xAssets?
            • What is the supply of XHV and xAssets?
            • How many xAssets will there be?
      • Whats an Oracle?
      • Is Haven private?
        • Why does Haven need privacy?
  • Glossary
  • Overview
    • Airgap
    • Address
    • Address Book
    • Account
    • Atomic Units
    • Block
    • Blockchain
    • Bootstrap Node
    • Bulletproofs
    • Canonically Unique Host
    • Change
    • Clearnet
    • Coinbase
    • Consensus
    • Cryptocurrency
    • Daemon
    • Denomination
    • Destination
    • Encryption
    • Fluffy Blocks
    • Fungibility
    • Kovri
    • Locally Unique Host
    • Mining
    • Mnemonic Seed
    • Node
    • Open Alias
    • Paper Wallet
    • Payment ID's
    • Pedersen Commitments
    • Pruning
    • Random X
    • Remote Node
    • Ring Size
    • RingCT
    • Ring Signatures
    • Scalability
    • Spend Key
    • Stealth Addresses
    • Tail Emission
    • Transactions
    • Unlock Time
    • View Key
    • Wallet
Powered by GitBook
On this page

Was this helpful?

  1. Overview

Pedersen Commitments

PreviousPayment ID'sNextPruning

Last updated 4 years ago

Was this helpful?

The Basics

Pedersen commitments are cryptographic algorythms that allow a prover to commit to a certain value without revealing it or being able to change it.

When you spend Haven, the value of the inputs that you are spending and the value of the outputs you are sending are encrypted and opaque to everyone except the recipient of each of those outputs. Pedersen commitments allow you to send Haven without revealing the value of the transactions. Pedersen commitments also make it possible for people to verify that transactions on the blockchain are valid and not creating Haven out of thin air.

What It Means

As long as the encrypted output amounts created, which include an output for the recipient and a change output back to the sender, and the unencrypted transaction fee is equal to the sum of the inputs that are being spent, it is a legitimate transaction and can be confirmed to not be creating Haven out of thin air.

Pedersen commitments mean that the sums can be verified as being equal, but the Haven value of each of the sums and the Haven value of the inputs and outputs individually are undeterminable. Pedersen commitments also mean that even the ratio of one input to another, or one output to another is undeterminable.

It is unclear which inputs are really being spent as the ring signature lists both the real inputs being spent and decoy inputs, therefore you don't actually know which input Pedersen commitments need to be summed. That's okay, because the @RingCT ring signature only has to prove that for one combination of the inputs the outputs are equal to the sum of the inputs. For mathematical reasons, this is impossible to forge.

In-depth Information

See information in by Shen Noether of the Haven Research Lab.

Ring Confidential Transactions paper