• bitcoinBitcoin (BTC) $ 105,423.00
  • ethereumEthereum (ETH) $ 2,541.53
  • tetherTether (USDT) $ 1.00
  • xrpXRP (XRP) $ 2.14
  • bnbBNB (BNB) $ 653.22
  • solanaSolana (SOL) $ 146.44
  • usd-coinUSDC (USDC) $ 0.999728
  • dogecoinDogecoin (DOGE) $ 0.178229
  • tronTRON (TRX) $ 0.270252
  • staked-etherLido Staked Ether (STETH) $ 2,543.11
  • cardanoCardano (ADA) $ 0.637221
  • hyperliquidHyperliquid (HYPE) $ 41.02
  • wrapped-bitcoinWrapped Bitcoin (WBTC) $ 105,195.00
  • wrapped-stethWrapped stETH (WSTETH) $ 3,050.68
  • suiSui (SUI) $ 3.04
  • chainlinkChainlink (LINK) $ 13.25
  • bitcoin-cashBitcoin Cash (BCH) $ 432.16
  • leo-tokenLEO Token (LEO) $ 9.05
  • stellarStellar (XLM) $ 0.260158
  • avalanche-2Avalanche (AVAX) $ 19.22
  • the-open-networkToncoin (TON) $ 3.01
  • usdsUSDS (USDS) $ 0.999738
  • shiba-inuShiba Inu (SHIB) $ 0.000012
  • wethWETH (WETH) $ 2,544.84
  • wrapped-eethWrapped eETH (WEETH) $ 2,718.62
  • hedera-hashgraphHedera (HBAR) $ 0.156797
  • litecoinLitecoin (LTC) $ 84.87
  • binance-bridged-usdt-bnb-smart-chainBinance Bridged USDT (BNB Smart Chain) (BSC-USD) $ 0.999580
  • ethena-usdeEthena USDe (USDE) $ 1.00
  • polkadotPolkadot (DOT) $ 3.84
  • moneroMonero (XMR) $ 314.21
  • bitget-tokenBitget Token (BGB) $ 4.52
  • whitebitWhiteBIT Coin (WBT) $ 36.32
  • coinbase-wrapped-btcCoinbase Wrapped BTC (CBBTC) $ 105,474.00
  • pepePepe (PEPE) $ 0.000011
  • uniswapUniswap (UNI) $ 7.43
  • aaveAave (AAVE) $ 281.77
  • pi-networkPi Network (PI) $ 0.570437
  • daiDai (DAI) $ 0.999380
  • ethena-staked-usdeEthena Staked USDe (SUSDE) $ 1.18
  • bittensorBittensor (TAO) $ 368.22
  • okbOKB (OKB) $ 51.66
  • blackrock-usd-institutional-digital-liquidity-fundBlackRock USD Institutional Digital Liquidity Fund (BUIDL) $ 1.00
  • internet-computerInternet Computer (ICP) $ 5.43
  • aptosAptos (APT) $ 4.47
  • nearNEAR Protocol (NEAR) $ 2.24
  • crypto-com-chainCronos (CRO) $ 0.090854
  • ethereum-classicEthereum Classic (ETC) $ 16.72
  • jito-staked-solJito Staked SOL (JITOSOL) $ 176.90
  • ondo-financeOndo (ONDO) $ 0.788045
  • susdssUSDS (SUSDS) $ 1.06
  • tokenize-xchangeTokenize Xchange (TKX) $ 29.27
  • usd1-wlfiUSD1 (USD1) $ 0.998081
  • mantleMantle (MNT) $ 0.640357
  • gatechain-tokenGate (GT) $ 17.00
  • kaspaKaspa (KAS) $ 0.077845
  • official-trumpOfficial Trump (TRUMP) $ 9.94
  • vechainVeChain (VET) $ 0.022547
  • fasttokenFasttoken (FTN) $ 4.44
  • cosmosCosmos Hub (ATOM) $ 4.12
  • lombard-staked-btcLombard Staked BTC (LBTC) $ 104,921.00
  • polygon-ecosystem-tokenPOL (ex-MATIC) (POL) $ 0.203116
  • ethenaEthena (ENA) $ 0.292919
  • render-tokenRender (RENDER) $ 3.42
  • skySky (SKY) $ 0.082536
  • fetch-aiArtificial Superintelligence Alliance (FET) $ 0.671559
  • arbitrumArbitrum (ARB) $ 0.343769
  • filecoinFilecoin (FIL) $ 2.43
  • worldcoin-wldWorldcoin (WLD) $ 0.990365
  • algorandAlgorand (ALGO) $ 0.179343
  • binance-peg-wethBinance-Peg WETH (WETH) $ 2,541.16
  • usdt0USDT0 (USDT0) $ 1.00
  • first-digital-usdFirst Digital USD (FDUSD) $ 0.998772
  • jupiter-perpetuals-liquidity-provider-tokenJupiter Perpetuals Liquidity Provider Token (JLP) $ 4.38
  • usdtbUSDtb (USDTB) $ 1.00
  • kucoin-sharesKuCoin (KCS) $ 11.24
  • spx6900SPX6900 (SPX) $ 1.42
  • binance-staked-solBinance Staked SOL (BNSOL) $ 154.15
  • flare-networksFlare (FLR) $ 0.018319
  • nexoNEXO (NEXO) $ 1.22
  • jupiter-exchange-solanaJupiter (JUP) $ 0.413663
  • virtual-protocolVirtuals Protocol (VIRTUAL) $ 1.84
  • rocket-pool-ethRocket Pool ETH (RETH) $ 2,894.42
  • celestiaCelestia (TIA) $ 1.78
  • kelp-dao-restaked-ethKelp DAO Restaked ETH (RSETH) $ 2,662.89
  • fartcoinFartcoin (FARTCOIN) $ 1.16
  • injective-protocolInjective (INJ) $ 11.69
  • bonkBonk (BONK) $ 0.000015
  • story-2Story (IP) $ 3.58
  • sonic-3Sonic (S) $ 0.326706
  • polygon-bridged-usdt-polygonPolygon Bridged USDT (Polygon) (USDT) $ 1.00
  • binance-bridged-usdc-bnb-smart-chainBinance Bridged USDC (BNB Smart Chain) (USDC) $ 0.999257
  • optimismOptimism (OP) $ 0.580421
  • xdce-crowd-saleXDC Network (XDC) $ 0.060369
  • blockstackStacks (STX) $ 0.629510
  • paypal-usdPayPal USD (PYUSD) $ 0.999860
  • mantle-staked-etherMantle Staked Ether (METH) $ 2,714.70
  • sei-networkSei (SEI) $ 0.176306
  • stakewise-v3-osethStakeWise Staked ETH (OSETH) $ 2,666.18
  • kaiaKaia (KAIA) $ 0.157262
  • solv-btcSolv Protocol BTC (SOLVBTC) $ 105,024.00
  • immutable-xImmutable (IMX) $ 0.466382
  • wbnbWrapped BNB (WBNB) $ 652.18
  • arbitrum-bridged-wbtc-arbitrum-oneArbitrum Bridged WBTC (Arbitrum One) (WBTC) $ 105,190.00
  • renzo-restaked-ethRenzo Restaked ETH (EZETH) $ 2,674.84
  • tether-goldTether Gold (XAUT) $ 3,434.48
  • dogwifcoindogwifhat (WIF) $ 0.842092
  • pax-goldPAX Gold (PAXG) $ 3,451.90
  • the-graphThe Graph (GRT) $ 0.087020
  • vaultaVaulta (A) $ 0.528870
  • curve-dao-tokenCurve DAO (CRV) $ 0.607384
  • clbtcclBTC (CLBTC) $ 106,069.00
  • pancakeswap-tokenPancakeSwap (CAKE) $ 2.43
  • flokiFLOKI (FLOKI) $ 0.000079
  • newton-projectAB (AB) $ 0.012057
  • jupiter-staked-solJupiter Staked SOL (JUPSOL) $ 163.09
  • zcashZcash (ZEC) $ 45.39
  • lido-daoLido DAO (LDO) $ 0.807273
  • liquid-staked-ethereumLiquid Staked ETH (LSETH) $ 2,747.37
  • msolMarinade Staked SOL (MSOL) $ 190.53
  • theta-tokenTheta Network (THETA) $ 0.708114
  • ousgOUSG (OUSG) $ 111.40
  • galaGALA (GALA) $ 0.015095
  • usdx-money-usdxStables Labs USDX (USDX) $ 0.999866
  • ethereum-name-serviceEthereum Name Service (ENS) $ 20.04
  • syrupusdcSyrupUSDC (SYRUPUSDC) $ 1.11
  • bittorrentBitTorrent (BTT) $ 0.00000067
  • iotaIOTA (IOTA) $ 0.170779
  • jito-governance-tokenJito (JTO) $ 1.94
  • the-sandboxThe Sandbox (SAND) $ 0.265374
  • jasmycoinJasmyCoin (JASMY) $ 0.013319
  • walrus-2Walrus (WAL) $ 0.468500
  • usual-usdUsual USD (USD0) $ 0.997549
  • polyhedra-networkPolyhedra Network (ZKJ) $ 1.99
  • pyth-networkPyth Network (PYTH) $ 0.106510
  • pudgy-penguinsPudgy Penguins (PENGU) $ 0.009760
  • bitcoin-svBitcoin SV (BSV) $ 30.59
  • pendlePendle (PENDLE) $ 3.74
  • wrapped-hypeWrapped HYPE (WHYPE) $ 41.08
  • raydiumRaydium (RAY) $ 2.09
  • solv-protocol-solvbtc-bbnSolv Protocol Staked BTC (XSOLVBTC) $ 104,624.00
  • tezosTezos (XTZ) $ 0.566073
  • coredaoorgCore (CORE) $ 0.585888
  • ondo-us-dollar-yieldOndo US Dollar Yield (USDY) $ 1.09
  • saros-financeSaros (SAROS) $ 0.221140
  • falcon-financeFalcon USD (USDF) $ 0.997782
  • super-oethSuper OETH (SUPEROETH) $ 2,540.11
  • aerodrome-financeAerodrome Finance (AERO) $ 0.669745
  • flowFlow (FLOW) $ 0.350199
  • l2-standard-bridged-weth-baseL2 Standard Bridged WETH (Base) (WETH) $ 2,543.13
  • tbtctBTC (TBTC) $ 105,233.00
  • cgeth-hashkey-cloudcgETH Hashkey Cloud (CGETH.HASH) $ 2,681.29
  • apecoinApeCoin (APE) $ 0.666894
  • mantle-restaked-ethMantle Restaked ETH (CMETH) $ 2,714.59
  • thorchainTHORChain (RUNE) $ 1.50
  • syrupMaple Finance (SYRUP) $ 0.488855
  • bitcoin-avalanche-bridged-btc-bAvalanche Bridged BTC (Avalanche) (BTC.B) $ 105,360.00
  • dexeDeXe (DEXE) $ 8.89
  • arbitrum-bridged-weth-arbitrum-oneArbitrum Bridged WETH (Arbitrum One) (WETH) $ 2,544.76
  • decentralandDecentraland (MANA) $ 0.265301
  • true-usdTrueUSD (TUSD) $ 0.997493
  • compound-governance-tokenCompound (COMP) $ 52.79
  • staked-hypeStaked HYPE (STHYPE) $ 41.08
  • kavaKava (KAVA) $ 0.430741
  • grassGrass (GRASS) $ 1.61
  • chain-2Onyxcoin (XCN) $ 0.013490
  • binance-peg-dogecoinBinance-Peg Dogecoin (DOGE) $ 0.178184
  • heliumHelium (HNT) $ 2.48
  • based-brettBrett (BRETT) $ 0.044795
  • beldexBeldex (BDX) $ 0.061054
  • bridged-usdc-polygon-pos-bridgeBridged USDC (Polygon PoS Bridge) (USDC.E) $ 0.999728
  • usddUSDD (USDD) $ 1.00
  • aioz-networkAIOZ Network (AIOZ) $ 0.359134
  • ketKet (KET) $ 0.416981
  • mimblewimblecoinMimbleWimbleCoin (MWC) $ 37.80
  • aethirAethir (ATH) $ 0.041928
  • ripple-usdRipple USD (RLUSD) $ 0.999653
  • keetaKeeta (KTA) $ 1.04
  • hashnote-usycCircle USYC (USYC) $ 1.09
  • dydx-chaindYdX (DYDX) $ 0.519864
  • ecasheCash (XEC) $ 0.000021
  • usdbUSDB (USDB) $ 1.01
  • apenftAPENFT (NFT) $ 0.00000041
  • neoNEO (NEO) $ 5.71
  • starknetStarknet (STRK) $ 0.120358
  • axelarAxelar (AXL) $ 0.407176
  • morphoMorpho (MORPHO) $ 1.42
  • arweaveArweave (AR) $ 6.07
  • elrond-erd-2MultiversX (EGLD) $ 13.93
  • eigenlayerEigenlayer (EIGEN) $ 1.28
  • movementMovement (MOVE) $ 0.150303
  • eosEOS (EOS) $ 0.528817
  • stader-ethxStader ETHx (ETHX) $ 2,691.04
  • ether-fi-staked-ethether.fi Staked ETH (EETH) $ 2,539.37
  • conflux-tokenConflux (CFX) $ 0.075027
  • mantle-bridged-usdt-mantleMantle Bridged USDT (Mantle) (USDT) $ 1.00
  • axie-infinityAxie Infinity (AXS) $ 2.32
  • reserve-rights-tokenReserve Rights (RSR) $ 0.006417
  • dog-go-to-the-moon-runeDog (Bitcoin) (DOG) $ 0.003697
  • telcoinTelcoin (TEL) $ 0.004016

Succinct’s SP1 bug sparks transparency debate in ZK security

0 21

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.