OpenZeppelin / OpenZeppelin/compact-contracts

Add Confidential Note Fungible Token PublicSupply extension

Open
#740 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

effort: 2-S enhancement feat:token
Dominant language
TypeScript
Stars
55
Forks
29
Avg merge
5d 7h
Merged PRs (30d)
25

Description

🧐 Motivation

The third row of the supply spectrum. Some deployments want a plainly public total and should not pay for ElGamal accounting plus an attestation circuit to get it.

📝 Details

  • New standalone extension: disclosed totalMinted / totalBurned / totalSupply counters, matching the NativeShieldedTokenSupply shape.
  • The privacy trade-off is explicit and opt-in: a public counter leaks every mint and burn as a public delta.
  • Capped supply is easy on this variant (deferred on the encrypted one — it needs a range proof on a ciphertext).

Planned, not in #679 (confidential-note-token.md §0).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with confidential-note-token.md §0 and review the scope distinction from #679. Define the standalone extension around disclosed totalMinted, totalBurned, and totalSupply counters, matching the NativeShieldedTokenSupply shape, and account for the explicitly public mint and burn deltas. Done means the extension supports the stated public counters and capped supply behavior.

Written by the indexing model from the issue text.

Assessment

Domain
blockchain
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.