You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Pin OpenZeppelin crates to 0.7.3 and update Confidential Token status - #30
openzeppelin/contracts.md and openzeppelin/README.md: pin the OpenZeppelin crates to =0.7.3. 0.7.2 is affected by GHSA-jpg9-m7w4-c7wc in stellar-accounts, and 0.7.3 fixes it. Add a short security note. Fix the repository tree, because confidential/ is now its own package. Update the audit line to v0.8.0.
privacy-zk/README.md: the Confidential Token shipped in OpenZeppelin v0.8.0. Update its status and caution. Pin its links to v0.8.0, and add crates.io, the OpenZeppelin docs page, and the testnet deployment guide. The caution says that proofs are not yet zero-knowledge.
privacy-zk/README.md: add a warning to the UltraHonk verifier. It accepts only non-ZK proofs, so private circuit inputs are not hidden.
Why 0.7.3 and not 0.8.0
0.8.0 has breaking changes: the mint path, opt-in total supply, and the smart account digest.
The Contract Wizard still generates ^0.7.2.
The code examples on these pages use the 0.7 API.
Verification
cargo generate-lockfile with the new block resolves all seven crates to 0.7.3.
All new links return HTTP 200.
Sources: the v0.7.3 and v0.8.0 release notes, the GHSA, the v0.8.0 audit report, the "Zero-knowledge setting" section of the stellar-confidential README, and the ultrahonk-soroban-verifier README.
- Pin the OpenZeppelin crates to 0.7.3. 0.7.2 has GHSA-jpg9-m7w4-c7wc in stellar-accounts.
- Fix the repository tree and the audit line.
- Confidential Token shipped in OpenZeppelin v0.8.0. Update its status, links, and caution.
- Warn that the UltraHonk verifier accepts only non-ZK proofs.
… entry
- Tell smart account owners on 0.7.2 or older to upgrade or redeploy.
- Say in the README entry that Confidential Token proofs are not yet zero-knowledge.
The reason will be displayed to describe this comment to others. Learn more.
🔵 Needs a closer look
The privacy README has unresolved contradictory privacy guidance and unversioned resource links.
No open issues 🎉
2 previously missed issues
In code that hasn't changed since last review
Align the decision guide with the Confidential Token privacy warning
privacy-zk/README.md:68
The new warning is contradicted by the Quick Decision Guide above, which still tells readers to use Confidential Tokens when amounts and balances "must stay private." Because this implementation accepts non-ZK proofs and the warning says privacy is not guaranteed, that rule can steer privacy-sensitive users toward the unsafe option; please qualify or revise the decision-guide entry as well.
Pin resource URLs to the v0.8.0 documentation and crate release
privacy-zk/README.md:73
These newly added resource URLs are unversioned, unlike the GitHub links around them, so they can silently move to documentation or a crate release newer than v0.8.0. The PR says the Confidential Token links should be pinned to v0.8.0; use version-specific docs and crates.io URLs here as well.
Decision guide: fixed in 43c6c2f. The Confidential Tokens entry now points to the warning and says that proofs are not yet zero-knowledge.
Versioned links: the crates.io link now points to 0.8.0 (43c6c2f). The OpenZeppelin docs site has no versioned path for this page (/0.8.0/, /v0.8.0/ and /0.8.x/ return 404), so that link stays unversioned.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
openzeppelin/contracts.mdandopenzeppelin/README.md: pin the OpenZeppelin crates to=0.7.3. 0.7.2 is affected by GHSA-jpg9-m7w4-c7wc instellar-accounts, and 0.7.3 fixes it. Add a short security note. Fix the repository tree, becauseconfidential/is now its own package. Update the audit line to v0.8.0.privacy-zk/README.md: the Confidential Token shipped in OpenZeppelin v0.8.0. Update its status and caution. Pin its links tov0.8.0, and add crates.io, the OpenZeppelin docs page, and the testnet deployment guide. The caution says that proofs are not yet zero-knowledge.privacy-zk/README.md: add a warning to the UltraHonk verifier. It accepts only non-ZK proofs, so private circuit inputs are not hidden.Why 0.7.3 and not 0.8.0
^0.7.2.Verification
cargo generate-lockfilewith the new block resolves all seven crates to 0.7.3.stellar-confidentialREADME, and theultrahonk-soroban-verifierREADME.stellar/stellar-docs#2915 makes the same Confidential Token change in the docs.