Актуальні теми
#
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, автор Станіслав Ладиженський, виправляє перевірку alt_bn128_pairing системних викликів Solana. Він додає належну перевірку довжини вхідних байтів для сполучення з еліптичною кривою, запобігаючи будь-якому неправильному використанню з неправильно розмірними входами. Давайте розберемося, що це означає 🧵

2/ alt_bn128_pairing — це системний виклик для сполучення на еліптичній кривій BN128, який використовується в доведеннях з нульовим розголошенням. Він приймає список точок кривої як вхідні дані. Кожна пара точок має розмір 192 байти, тому допустимі вхідні дані повинні бути кратні 192 байтам.
3. Проблема: перевірка довжини використовувалася checked_rem Rust неправильно. checked_rem повертає лише Noone при діленні на нуль, тому перевірка ніколи не провалювалася зі 192. У результаті системний виклик сполучення працюватиме, навіть якщо вхідні дані не кратні 192.
4. Виправлення: перевірте, щоб довжина входу була кратна 192, і видаліть помилку, якщо ні. Це негайно перехоплює будь-які залишкові байти, замість того, щоб тихо їх ігнорувати. Зміни коду відбуваються в solana-sdk і поставляються з Agave v3.1.0.
1,26K
Найкращі
Рейтинг
Вибране