Kyber post-kvant shifrlash algoritmini amalga oshirishda zaiflik

Kvant kompyuterida shafqatsiz kuchga chidamli kriptografik algoritmlar tanlovida g'olib bo'lgan Kyber shifrlash algoritmini amalga oshirishda zaiflik aniqlandi, bu esa yon kanal hujumlariga shifrni ochish paytida operatsiyalar vaqtini o'lchash asosida maxfiy kalitlarni qayta yaratishga imkon beradi. tajovuzkor tomonidan taqdim etilgan shifrlangan matn. Muammo CRYSTALS-Kyber KEM kalitini inkapsulyatsiya qilish mexanizmining mos yozuvlar amalga oshirilishiga va ko'plab uchinchi tomon Kyber-ni yoqadigan shifrlash kutubxonalariga, shu jumladan Signal messenjerida ishlatiladigan pqcrypto kutubxonasiga ta'sir qiladi.

KyberSlash kod nomini olgan zaiflikning mohiyati xabarni dekodlash jarayonida “t = ((t < 1) + KYBER_Q/2)/KYBER_Q) & 1;” bo‘linish operatsiyasidan foydalanishdadir. , bunda dividend “double” turiga ega “t” maxfiy qiymatini o‘z ichiga oladi va bo‘luvchi KYBER_Q mashhur umumiy qiymati hisoblanadi. Muammo shundaki, bo'linish operatsiyasining vaqti doimiy emas va turli muhitlarda bo'linish uchun bajariladigan protsessor davrlari soni kiritilgan ma'lumotlarga bog'liq. Shunday qilib, ish vaqtlarining o'zgarishiga qarab, bo'linishda ishlatiladigan ma'lumotlarning tabiati haqida tasavvurga ega bo'lish mumkin.

Kriptografiya sohasidagi taniqli mutaxassis Daniel J. Bernshteyn hujumni amalda amalga oshirish mumkinligini isbotlovchi ish namoyishini tayyorlay oldi. O'tkazilgan uchta tajribadan ikkitasida Raspberry Pi 2 platasida kodni ishga tushirishda ma'lumotlarni dekodlash vaqtini o'lchash asosida Kyber-512 shaxsiy kalitini to'liq qayta yaratish mumkin bo'ldi. Usul Kyber-768 va Kyber-1024 kalitlari uchun ham moslashtirilishi mumkin. Hujumni muvaffaqiyatli amalga oshirish uchun tajovuzkor tomonidan ko'rsatilgan shifrlangan matn bir xil kalit juftligi yordamida qayta ishlanishi va operatsiyani bajarish vaqtini aniq o'lchash mumkin bo'lishi kerak.

Ba'zi kutubxonalarda yana bir oqish (KyberSlash2) aniqlandi, bu ham bo'linishni amalga oshirishda maxfiy qiymatdan foydalanish tufayli yuzaga keladi. Birinchi variantdan farqlar shifrlash bosqichida (poly_compress va polyvec_compress funktsiyalarida) qo'ng'iroqqa tushadi, shifrni ochish paytida emas. Biroq, ikkinchi variant faqat shifrlangan matnning chiqishi maxfiy deb hisoblangan qayta shifrlash operatsiyalarida protsedura qo'llaniladigan hollarda hujum uchun foydali bo'lishi mumkin.

Zaiflik allaqachon kutubxonalarda tuzatilgan:

  • zig/lib/std/crypto/kyber_d00.zig (22 dekabr),
  • pq-crystals/kyber/ref (30 dekabr),
  • symbolicsoft/kyber-k2so (19 dekabr),
  • cloudflare/circl (8-yanvar),
  • aws/aws-lc/crypto/kyber (4-yanvar),
  • liboqs/src/kem/kyber (8 yanvar).

Zaiflik dastlab ta'sir qilmagan kutubxonalar:

  • boringssl/crypto/kyber,
  • filippo.io/mlkem768,
  • formosa-crypto/libjade/tree/main/src/crypto_kem,
  • kyber/common/amd64/avx2,
  • formosa-crypto/libjade/tree/main/src/crypto_kem/kyber/common/amd64/ref,
  • pq-kristallar/kyber/avx2,
  • pqclean/crypto_kem/kyber*/avx2.

Zaiflik kutubxonalarda yangilanmagan:

  • antontutoveanu/crystals-kyber-javascript,
  • Argyle-Software/kyber,
  • debian/src/liboqs/unstable/src/kem/kyber,
  • kudelskisecurity/crystals-go,
  • mupq/pqm4/crypto_kem/kyber* (20 dekabrda zaiflikning faqat 1 ta versiyasi tuzatildi),
  • PQClean/PQClean/crypto_kem/kyber*/aarch64,
  • PQClean/PQClean/crypto_kem/kyber*/clean,
  • randombit/botan (20 dekabrda faqat 1 ta zaiflik tuzatildi),
  • rustpq/pqcrypto/pqcrypto-kyber (5-yanvarda libsignalga tuzatish kiritilgan, ammo pqcrypto-kyber-ning o‘zida zaiflik hali tuzatilgani yo‘q).

Manba: opennet.ru

DDoS himoyasi, VPS VDS serverlari bo'lgan saytlar uchun ishonchli hosting sotib oling 🔥 DDoS himoyasi, VPS VDS serverlari bilan ishonchli veb-sayt xostingini sotib oling | ProHoster