Først og fremst min største sympati til @Balancer-teamet så vel som alle som er berørt av denne utnyttelsen. Det er alltid en tøff dag når det er et betydelig DeFi-hack som dette, enn si fra en OG-protokoll. Mer enn dollarkostnaden for de stjålne midlene, skader dette virkelig hele krypto og DeFis image som helhet og setter bransjen vår flere måneder tilbake. Faktum er at Solidity bare er et for usikkert språk til at det virkelig er det som er vert for fremtidens finans. Solidity har bare et for stort overflateareal som gjør det utsatt for hacking, med utviklere som er avhengige av manuelle kontroller for alt fra tilgangskontroller til presis matematikk, og det er nettopp grunnen til at ressurs-først-språk som Move ble oppfunnet til å begynne med. Etter å ha gravd litt, var det slik Balancer ble hacket: Angripere utnyttet avrundingsfeil i stabile pool-bytter for å forvrenge poolens invariant, en viktig matematisk konstant som representerer balansert likviditet. De startet med flash-utlånte bytteavtaler av BPT (Balancer Pool Tokens) for en underliggende eiendel som cbETH, og presset saldoer til eksakte avrundingsgrenser (f.eks. skalert til 9). Deretter byttet de mellom eiendeler som wstETH til cbETH med utformede beløp (f.eks. ~8,918 rundet ned til 8 på grunn av fastpunktsskalering), underestimerte reserveendringer og kunstig deflaterte invarianten (D). Dette senket BPT-prisen (D / totalSupply), slik at angripere kunne reversere swap for å lage overflødig BPT billig, brenne den for å ta ut underliggende eiendeler til "normale" priser, og stjele differansen, i hovedsak stjele fra likviditetstilbydere. Fortjeneste akkumulerte seg i hvelvets interne saldoer og ble utbetalt via manageUserBalance med WITHDRAW_INTERNAL, ingen direkte godkjenningsbypass var nødvendig siden matematikkfeilen subsidierte tyveriet. Det er et presisjonstap i Soliditys manuelle fastpunktsbiblioteker som fosser ned i massive avløp. Måten Move ville ha omgått dette hacket helt på er ved å bake inn sikkerhet i kjernen: Eiendeler behandles som ressurser med lineære typer som håndhever streng bevaring (ingen utilsiktede dupes, fall eller tap), og matematikk bruker eksakte u64/u128-heltall med innebygde overløpsavbrytelser, ingen flyter, ingen utnyttbare avrundingssliper i komplekse beregninger. I en Move-basert DEX vil swap-funksjoner atomisk sjekke og oppdatere invarianter via VM, og avbryte enhver ubalanse, for eksempel: offentlig inngang moro swap(pool: &mut LiquidityPool, i: Coin, out_amt: u64): Coin { hevde! (coin::value(&in) >= calculate_required_in(pool, out_amt), E_INSUFFICIENT_INPUT); coin::merge(&mut pool.coin_x_reserve, in); slipp ut = coin::extract(&mut pool.coin_y_reserve, out_amt); hevde! (check_invariant(basseng), E_INVARIANT_VIOLATION); ut } I tillegg dreper atomtransaksjoner reentrancy-risikoen. Dette er grunnen til at Move-økosystemer har langt færre utnyttelser sammenlignet med EVM. Det er på tide for DeFi-byggere å omfavne språk som Move som prioriterer sikkerhet fra grunnen av, slik at vi endelig kan bygge en motstandsdyktig økonomisk fremtid uten tilbakeslag som dette som kan forebygges.