• bitcoinBitcoin (BTC) $ 117,723.00
  • ethereumEthereum (ETH) $ 4,431.28
  • xrpXRP (XRP) $ 3.11
  • tetherTether (USDT) $ 1.00
  • bnbBNB (BNB) $ 836.08
  • solanaSolana (SOL) $ 188.92
  • usd-coinUSDC (USDC) $ 0.999863
  • staked-etherLido Staked Ether (STETH) $ 4,422.34
  • dogecoinDogecoin (DOGE) $ 0.230293
  • cardanoCardano (ADA) $ 0.921143
  • tronTRON (TRX) $ 0.348328
  • wrapped-stethWrapped stETH (WSTETH) $ 5,343.98
  • hyperliquidHyperliquid (HYPE) $ 46.79
  • chainlinkChainlink (LINK) $ 22.86
  • wrapped-bitcoinWrapped Bitcoin (WBTC) $ 117,776.00
  • wrapped-beacon-ethWrapped Beacon ETH (WBETH) $ 4,765.91
  • stellarStellar (XLM) $ 0.427897
  • suiSui (SUI) $ 3.77
  • wrapped-eethWrapped eETH (WEETH) $ 4,749.50
  • bitcoin-cashBitcoin Cash (BCH) $ 584.17
  • ethena-usdeEthena USDe (USDE) $ 1.00
  • hedera-hashgraphHedera (HBAR) $ 0.252034
  • avalanche-2Avalanche (AVAX) $ 24.31
  • wethWETH (WETH) $ 4,433.53
  • litecoinLitecoin (LTC) $ 120.12
  • the-open-networkToncoin (TON) $ 3.45
  • leo-tokenLEO Token (LEO) $ 9.41
  • usdsUSDS (USDS) $ 1.00
  • shiba-inuShiba Inu (SHIB) $ 0.000013
  • binance-bridged-usdt-bnb-smart-chainBinance Bridged USDT (BNB Smart Chain) (BSC-USD) $ 1.00
  • uniswapUniswap (UNI) $ 11.02
  • whitebitWhiteBIT Coin (WBT) $ 44.90
  • coinbase-wrapped-btcCoinbase Wrapped BTC (CBBTC) $ 117,866.00
  • polkadotPolkadot (DOT) $ 3.96
  • ethena-staked-usdeEthena Staked USDe (SUSDE) $ 1.19
  • bitget-tokenBitget Token (BGB) $ 4.64
  • crypto-com-chainCronos (CRO) $ 0.150808
  • ethenaEthena (ENA) $ 0.725270
  • moneroMonero (XMR) $ 257.74
  • pepePepe (PEPE) $ 0.000011
  • aaveAave (AAVE) $ 296.38
  • mantleMantle (MNT) $ 1.33
  • daiDai (DAI) $ 0.999734
  • bittensorBittensor (TAO) $ 374.05
  • nearNEAR Protocol (NEAR) $ 2.75
  • ethereum-classicEthereum Classic (ETC) $ 22.34
  • aptosAptos (APT) $ 4.72
  • ondo-financeOndo (ONDO) $ 1.00
  • pi-networkPi Network (PI) $ 0.381760
  • internet-computerInternet Computer (ICP) $ 5.45
  • jito-staked-solJito Staked SOL (JITOSOL) $ 231.23
  • binance-peg-wethBinance-Peg WETH (WETH) $ 4,431.86
  • arbitrumArbitrum (ARB) $ 0.496806
  • blackrock-usd-institutional-digital-liquidity-fundBlackRock USD Institutional Digital Liquidity Fund (BUIDL) $ 1.00
  • kaspaKaspa (KAS) $ 0.090310
  • algorandAlgorand (ALGO) $ 0.261682
  • okbOKB (OKB) $ 106.13
  • usd1-wlfiUSD1 (USD1) $ 0.999413
  • polygon-ecosystem-tokenPOL (ex-MATIC) (POL) $ 0.237041
  • vechainVeChain (VET) $ 0.024803
  • cosmosCosmos Hub (ATOM) $ 4.58
  • gatechain-tokenGate (GT) $ 17.54
  • pudgy-penguinsPudgy Penguins (PENGU) $ 0.032952
  • rocket-pool-ethRocket Pool ETH (RETH) $ 5,043.47
  • render-tokenRender (RENDER) $ 3.94
  • fasttokenFasttoken (FTN) $ 4.57
  • binance-staked-solBinance Staked SOL (BNSOL) $ 202.09
  • sei-networkSei (SEI) $ 0.324983
  • susdssUSDS (SUSDS) $ 1.06
  • kelp-dao-restaked-ethKelp DAO Restaked ETH (RSETH) $ 4,650.26
  • bonkBonk (BONK) $ 0.000024
  • worldcoin-wldWorldcoin (WLD) $ 0.998273
  • fetch-aiArtificial Superintelligence Alliance (FET) $ 0.707092
  • official-trumpOfficial Trump (TRUMP) $ 9.11
  • jupiter-perpetuals-liquidity-provider-tokenJupiter Perpetuals Liquidity Provider Token (JLP) $ 5.26
  • flare-networksFlare (FLR) $ 0.024830
  • story-2Story (IP) $ 5.77
  • filecoinFilecoin (FIL) $ 2.52
  • stakewise-v3-osethStakeWise Staked ETH (OSETH) $ 4,660.45
  • kucoin-sharesKuCoin (KCS) $ 13.23
  • usdt0USDT0 (USDT0) $ 1.00
  • liquid-staked-ethereumLiquid Staked ETH (LSETH) $ 4,805.70
  • skySky (SKY) $ 0.075205
  • lombard-staked-btcLombard Staked BTC (LBTC) $ 117,832.00
  • jupiter-exchange-solanaJupiter (JUP) $ 0.518324
  • usdtbUSDtb (USDTB) $ 0.999955
  • injective-protocolInjective (INJ) $ 14.74
  • mantle-staked-etherMantle Staked Ether (METH) $ 4,760.66
  • xdce-crowd-saleXDC Network (XDC) $ 0.085528
  • spx6900SPX6900 (SPX) $ 1.49
  • kinetic-staked-hypeKinetiq Staked HYPE (KHYPE) $ 46.76
  • celestiaCelestia (TIA) $ 1.83
  • nexoNEXO (NEXO) $ 1.35
  • falcon-financeFalcon USD (USDF) $ 0.999856
  • hash-2Provenance Blockchain (HASH) $ 0.027809
  • renzo-restaked-ethRenzo Restaked ETH (EZETH) $ 4,674.85
  • polygon-bridged-usdt-polygonPolygon Bridged USDT (Polygon) (USDT) $ 1.00
  • optimismOptimism (OP) $ 0.738450
  • blockstackStacks (STX) $ 0.719016
  • first-digital-usdFirst Digital USD (FDUSD) $ 0.999724
  • lido-daoLido DAO (LDO) $ 1.41
  • tether-goldTether Gold (XAUT) $ 3,339.08
  • pump-funPump.fun (PUMP) $ 0.003464
  • solv-btcSolv Protocol BTC (SOLVBTC) $ 117,559.00
  • curve-dao-tokenCurve DAO (CRV) $ 0.869390
  • aerodrome-financeAerodrome Finance (AERO) $ 1.36
  • paypal-usdPayPal USD (PYUSD) $ 0.999898
  • jupiter-staked-solJupiter Staked SOL (JUPSOL) $ 213.10
  • wbnbWrapped BNB (WBNB) $ 836.00
  • immutable-xImmutable (IMX) $ 0.584580
  • saros-financeSaros (SAROS) $ 0.404934
  • flokiFLOKI (FLOKI) $ 0.000107
  • binance-bridged-usdc-bnb-smart-chainBinance Bridged USDC (BNB Smart Chain) (USDC) $ 1.00
  • syrupusdcSyrupUSDC (SYRUPUSDC) $ 1.12
  • super-oethSuper OETH (SUPEROETH) $ 4,430.79
  • the-graphThe Graph (GRT) $ 0.094850
  • sonic-3Sonic (S) $ 0.306517
  • raydiumRaydium (RAY) $ 3.60
  • arbitrum-bridged-wbtc-arbitrum-oneArbitrum Bridged WBTC (Arbitrum One) (WBTC) $ 117,600.00
  • fartcoinFartcoin (FARTCOIN) $ 0.946424
  • pax-goldPAX Gold (PAXG) $ 3,330.63
  • pancakeswap-tokenPancakeSwap (CAKE) $ 2.74
  • conflux-tokenConflux (CFX) $ 0.179201
  • clbtcclBTC (CLBTC) $ 118,856.00
  • pendlePendle (PENDLE) $ 5.43
  • kaiaKaia (KAIA) $ 0.154266
  • tezosTezos (XTZ) $ 0.846735
  • dogwifcoindogwifhat (WIF) $ 0.885420
  • l2-standard-bridged-weth-baseL2 Standard Bridged WETH (Base) (WETH) $ 4,434.47
  • msolMarinade Staked SOL (MSOL) $ 248.61
  • ethereum-name-serviceEthereum Name Service (ENS) $ 26.43
  • theta-tokenTheta Network (THETA) $ 0.856896
  • cgeth-hashkey-cloudcgETH Hashkey Cloud (CGETH.HASH) $ 4,265.66
  • iotaIOTA (IOTA) $ 0.210747
  • vaultaVaulta (A) $ 0.513608
  • ether-fi-staked-ethether.fi Staked ETH (EETH) $ 4,415.08
  • jasmycoinJasmyCoin (JASMY) $ 0.016445
  • galaGALA (GALA) $ 0.017349
  • virtual-protocolVirtuals Protocol (VIRTUAL) $ 1.20
  • the-sandboxThe Sandbox (SAND) $ 0.297329
  • mantle-restaked-ethMantle Restaked ETH (CMETH) $ 4,768.05
  • pyth-networkPyth Network (PYTH) $ 0.123962
  • ousgOUSG (OUSG) $ 112.20
  • tbtctBTC (TBTC) $ 117,762.00
  • memecoreMemeCore (M) $ 0.411821
  • stader-ethxStader ETHx (ETHX) $ 4,720.63
  • usdx-money-usdxStables Labs USDX (USDX) $ 0.999582
  • bittorrentBitTorrent (BTT) $ 0.00000068
  • ondo-us-dollar-yieldOndo US Dollar Yield (USDY) $ 1.06
  • ripple-usdRipple USD (RLUSD) $ 0.999868
  • morphoMorpho (MORPHO) $ 2.01
  • arbitrum-bridged-weth-arbitrum-oneArbitrum Bridged WETH (Arbitrum One) (WETH) $ 4,433.33
  • vision-3Vision (VSN) $ 0.202964
  • jito-governance-tokenJito (JTO) $ 1.78
  • coinbase-wrapped-staked-ethCoinbase Wrapped Staked ETH (CBETH) $ 4,878.12
  • flowFlow (FLOW) $ 0.393022
  • newton-projectAB (AB) $ 0.008629
  • walrus-2Walrus (WAL) $ 0.434202
  • zcashZcash (ZEC) $ 37.08
  • binance-peg-dogecoinBinance-Peg Dogecoin (DOGE) $ 0.230164
  • swethSwell Ethereum (SWETH) $ 4,774.66
  • bitcoin-avalanche-bridged-btc-bAvalanche Bridged BTC (Avalanche) (BTC.B) $ 117,761.00
  • usual-usdUsual USD (USD0) $ 0.998999
  • decentralandDecentraland (MANA) $ 0.296681
  • keetaKeeta (KTA) $ 1.38
  • bitcoin-svBitcoin SV (BSV) $ 27.81
  • reserve-rights-tokenReserve Rights (RSR) $ 0.009273
  • based-brettBrett (BRETT) $ 0.055220
  • starknetStarknet (STRK) $ 0.138964
  • telcoinTelcoin (TEL) $ 0.005726
  • solv-protocol-solvbtc-bbnSolv Protocol Staked BTC (XSOLVBTC) $ 115,975.00
  • build-onBUILDon (B) $ 0.519712
  • beldexBeldex (BDX) $ 0.072581
  • dydx-chaindYdX (DYDX) $ 0.664818
  • frax-etherFrax Ether (FRXETH) $ 4,390.41
  • usddUSDD (USDD) $ 1.00
  • apecoinApeCoin (APE) $ 0.625159
  • polygon-pos-bridged-weth-polygon-posPolygon PoS Bridged WETH (Polygon POS) (WETH) $ 4,429.06
  • ether-fiEther.fi (ETHFI) $ 1.18
  • coredaoorgCore (CORE) $ 0.491390
  • heliumHelium (HNT) $ 2.65
  • true-usdTrueUSD (TUSD) $ 0.998963
  • syrupMaple Finance (SYRUP) $ 0.440854
  • thorchainTHORChain (RUNE) $ 1.37
  • arweaveArweave (AR) $ 7.34
  • aioz-networkAIOZ Network (AIOZ) $ 0.399475
  • instadappFluid (FLUID) $ 6.96
  • tripTrip (TRIP) $ 15.72
  • apenftAPENFT (NFT) $ 0.00000047
  • zksyncZKsync (ZK) $ 0.063942
  • mog-coinMog Coin (MOG) $ 0.000001
  • compound-governance-tokenCompound (COMP) $ 48.20
  • sun-tokenSun Token (SUN) $ 0.023631
  • neoNEO (NEO) $ 6.36
  • eigenlayerEigenCloud (prev. EigenLayer) (EIGEN) $ 1.37
  • superfarmSuperVerse (SUPER) $ 0.712151
  • chain-2Onyxcoin (XCN) $ 0.012790
  • savings-daiSavings Dai (SDAI) $ 1.16
  • elrond-erd-2MultiversX (EGLD) $ 15.38
  • rekt-4Rekt (REKT) $ 0.000001

Succinct’s SP1 bug sparks transparency debate in ZK security

0 36

Succinct’s SP1 bug sparks transparency debate in ZK security

This is a segment from the 0xResearch newsletter. To read full editions, subscribe.

Succinct’s SP1 ZKVM has come under scrutiny after LambdaClass disclosed a critical security vulnerability in its proof generation. The exploit in version 3 of SP1, discovered in collaboration with 3Mi Labs and Aligned, stemmed from the interaction of two separate security flaws.

Succinct previously disclosed the potential exploit to its customers via Github and Telegram.

Here’s what happened in simple terms:

  1. Missing Verification Step — The system relied on a list to track key proof components but didn’t properly verify that the list was accurate. Consequently, a malicious prover could potentially manipulate it to produce invalid proofs. New checks were added to fix the oversight.
  2. Incomplete Proof Flag — A key part of SP1’s proof-checking system included a flag meant to confirm that a proof was fully executed. However, this flag wasn’t always properly enforced, leading to a potential loophole. Succinct tightened up the checks.
  3. Polynomial Evaluation Issue — An issue found in Plonky3 (a dependency of SP1), meant that it didn’t fully verify all calculations before confirming a proof was valid. Post-patch, all proof components are properly verified.

While the vulnerability was quickly addressed prior to the disclosure, the process has raised concerns about transparency in security practices for zero-knowledge virtual machines (ZKVMs). SP1’s technology is currently underpinning high profile upgrades in rollup infrastructure under development.

  • Mantle Network has integrated SP1 to transition into a zero-knowledge (ZK) validity rollup, aiming to enhance transaction finality times and support institutional-grade asset settlements.
  • The AggLayer employs SP1 to generate pessimistic proofs, ensuring the security of its cross-chain interoperability solutions.
  • Taiko has adopted SP1 as a ZK prover to secure its layer-2 execution, which uses a multi-prover system
  • Soon, a relatively new project, is building an SVM rollup framework that settles to Ethereum with ZK fault proofs powered by SP1, similar to Eclipse, although the latter uses RISC Zero instead.

Transparency and implications

LambdaClass cautioned that the full implications of the flaw required further assessment. Notably, the exploit depended on the interplay between the two issues, meaning that fixing one might not be sufficient to prevent exploitation.

LambdaClass developer known as Fede, highlighted on social media that his team felt compelled to make the disclosure public after perceiving a lack of urgency in Succinct’s communication about the issue.

Succinct’s leadership acted responsibly in fixing the issue, according to Avail’s Anurag Arjun, but he agreed better public disclosure practices are needed.

“ZKVM systems are very new and are constantly being updated, so you’d expect vulnerabilities,” Arjun told Blockworks. “In an open-source setting, anyone can run the prover, and if vulnerabilities aren’t disclosed properly, that’s definitely a risk.”

The Avail team, which uses SP1 for proof generation in its consensus mechanism, was informed about the issue privately ahead of public disclosure, Arjun confirmed.

Avail’s implementation was not exposed to risk, Arjun said, because they rely on Succinct’s proprietary prover, which remains permissioned. Avail’s rollup clients have also not yet begun using its SP1-powered bridge contract, so there was no practical impact.

Meanwhile, defenders of Succinct point out that responsible disclosure typically involves private reporting before public statements to avoid unnecessary panic and potential exploitation.

Succinct’s updated version 4 of SP1 — dubbed Turbo — resolves the identified vulnerability, and downstream projects have begun integrating these fixes.

The case illustrates how even well-audited code can and does contain bugs. As Succinct put it, “while auditors provide valuable insights, they are not infallible, and we remain committed to continuously improving and working hard to ensure our systems are safe and secure for everyone.”

The more explicit, if belated transparency from Succinct drew praise. What remains is the question of how to best balance security, transparency, and user protection. And finding the line between due criticism and toxic infighting.

Source

Leave A Reply

Your email address will not be published.