Skip to main content

Open Protocol

The Open Protocol is a variant of Ghost Protocol for public data commitments. Unlike the standard protocol where reveals are private (unlinkable), Open Protocol reveals are public — the data is exposed during reveal. This is useful when you want the integrity guarantees of a Merkle tree commitment without the privacy layer.

When to use Open Protocol

Use caseStandard Ghost ProtocolOpen Protocol
Private token transfersYesNo
Public data provenanceNoYes
Verifiable credentialsSometimesYes
Persistent key storageNoYes
Sealed-then-revealed dataYes (private reveal)Yes (public reveal)

Contracts

ContractAddressPurpose
OpenGhostVault0x45B022fEB169AF906CaBa8086c977AA7b15faAf1Commit and reveal orchestrator
OpenGhostReveal0x70BD6eE41507139285e868a46399104305dF1833Reveal mechanism
OpenCommitmentTree0xE2b33dB178d6201EDd854ED9163B30dcfECC0c48Merkle tree for open commitments
OpenNullifierRegistry0xC1c32f5697d5cfD74c35D1Fd4CF05E1F6d2A90b2Spent nullifier tracking
OpenGhostKeyVault0x4943959c05e028884C1CDd9878c762D785332A67Key management
PersistentKeyVault (v2)0x683B3ff7795D508Ff1e088a08981580e19af7496Persistent key storage

Architecture

The Open Protocol uses separate contracts and a separate Merkle tree from the standard Ghost Protocol. This means:

  • Open commitments don't mix with private commitments
  • The anonymity set is separate
  • A dedicated root updater service maintains the Open Protocol tree

Next steps