The Solana Foundation has disclosed a critical vulnerability in its privacy-focused Token-22 system that could have enabled unauthorized minting or token withdrawals. The flaw, reported on April 16 via a GitHub advisory from Solana development group Anza, impacted the ZK ElGamal Proof program used for confidential transfers.
Token-22 enables private transfers by encrypting amounts and validating transactions using zero-knowledge proofs (ZKPs), a cryptographic technique that confirms the validity of information without revealing it. However, the vulnerability stemmed from an incomplete hashing process during the Fiat-Shamir transformation, a method used to convert interactive proofs into non-interactive ones for blockchain environments.
Due to missing algebraic elements, a sophisticated attacker could forge invalid ZKPs that would still pass on-chain verification. This opened the door for malicious actions like unauthorized token minting or illicit withdrawals.
The issue was confined to confidential transfers and did not affect standard SPL tokens or the broader Token-2022 logic. Upon discovery, engineers from Anza, Firedancer, and Jito swiftly confirmed the bug and initiated a fix. Patches were quietly distributed to validators starting April 17, with a second patch addressing a related vulnerability later the same day.
Security firms Asymmetric Research, Neodyme, and OtterSec audited the patches. By April 18, a supermajority of validators had implemented the updates. According to the Solana Foundation, there is no evidence the vulnerability was exploited, and all funds remain secure.
This incident underscores the importance of rigorous ZKP implementation in blockchain privacy protocols, particularly as zero-knowledge systems become more integral to maintaining user confidentiality in decentralized finance.
Comment 0