Populární témata
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
1/ SIMD-0334, Stanislav Ladyzhenskiy, opravuje kontrolu alt_bn128_pairing syscallu Solany. Přidává kontrolu správné délky vstupních bajtů pro párování eliptických křivek, čímž se zabrání jakémukoli zneužití s nesprávnou velikostí vstupů. Pojďme si rozebrat, co to znamená 🧵

2/ alt_bn128_pairing je syscall pro párování na eliptické křivce BN128 používané v důkazech s nulovou znalostí. Jako vstup bere seznam bodů křivky. Každá dvojice bodů má velikost 192 bajtů, takže platné vstupy musí být násobkem 192 bajtů.
3/ Problém: kontrola délky nesprávně používala checked_rem Rust. checked_rem vrací None pouze při dělení nulou, takže kontrola nikdy neselhala se 192. Výsledkem je, že párování syscall by se spustilo, i kdyby vstup nebyl násobkem 192.
4/ Oprava: zkontrolujte, zda je délka vstupu násobkem 192 a pokud ne, chybně se vyhněte. Tím se okamžitě zachytí všechny zbylé bajty místo toho, aby se tiše ignorovaly. Změny kódu jsou v solana-sdk a dodávají se s Agave v3.1.0.
1,19K
Top
Hodnocení
Oblíbené