Open vs Private: When to Use Each
Choose Standard Ghost Protocol when:
- Privacy is required — token transfers, confidential transactions
- Unlinkability matters — commit and reveal should not be traceable
- Tokens are involved — burn-and-mint operations for GHOST or GhostERC20 tokens
Choose Open Protocol when:
- Data provenance — you want to prove data existed at a certain time (timestamps via block inclusion)
- Public credentials — verifiable credentials that will be revealed publicly
- Persistent keys — encryption keys that need to be accessed repeatedly
- Sealed bids — commit to a value, then reveal it publicly after a deadline
- Attestations — on-chain attestations where the data is eventually public
Combining both protocols
You can use both protocols in the same application:
- Use the Open Protocol to store a public commitment (e.g., a credential hash)
- Use the Standard Ghost Protocol to privately transfer tokens as a reward for the credential
- The two operations are on separate Merkle trees and don't interfere
Summary table
| Feature | Standard | Open |
|---|---|---|
| Token operations | Yes (burn/mint) | No |
| Private reveals | Yes | No |
| Persistent access | No | Yes (access proofs) |
| Separate Merkle tree | CommitmentTree | OpenCommitmentTree |
| Privacy guarantees | Full unlinkability | Data integrity only |