Di pêkanînên algorîtmaya şîfrekirina post-quantum Kyber de zerarbûn

Di pêkanîna algorîtmaya şîfrekirinê ya Kyberê de, ku di pêşbirka algorîtmayên krîptografîk ên li hember hêza hov a li ser komputerek kuantumê de berxwedêr bi dest xist, qelsiyek hate nas kirin ku rê dide êrişên kanala alî ku li ser bingeha pîvandina dema xebata di dema deşîfrekirina şîfrekirinê de mifteyên veşartî ji nû ve biafirînin. şîfretekst ku ji hêla êrîşker ve hatî peyda kirin. Pirsgirêk hem li ser pêkanîna referansê ya mekanîzmaya vegirtinê ya mifteya CRYSTALS-Kyber KEM û hem jî gelek pirtûkxaneyên şîfrekirinê yên Kyber-çalakkirî yên sêyemîn bandor dike, tevî pirtûkxaneya pqcrypto ya ku di peyamnêra Signal de tê bikar anîn.

Esasê lawaziya ku navê kod KyberSlash wergirtiye, di karanîna operasyona dabeşkirinê de "t = (((t

Daniel J. Bernstein, pisporê navdar di warê krîptografî de, karibû xwenîşandanek xebatê ya delîlan amade bike ku êrîş dikare di pratîkê de were kirin. Di du ji sê ceribandinên ku hatine kirin de, dema ku kodê li ser panela Raspberry Pi 2 dimeşîne, mimkun bû ku li ser bingeha pîvandina dema deşîfrekirina daneyê bi tevahî mifteya taybet a Kyber-512 ji nû ve were afirandin. Rêbaz dikare ji bo kilîtên Kyber-768 û Kyber-1024 jî were adaptekirin. Ji bo ku êrîşek bi serfirazî pêk were, pêdivî ye ku şîfretexta ku ji hêla êrîşker ve hatî destnîşan kirin bi karanîna heman cotê mifteyê were xebitandin û dema pêkanîna operasyonê bi rengek rast were pîvandin.

Lezek din (KyberSlash2) di hin pirtûkxaneyan de hate nas kirin, ku ew jî ji ber karanîna nirxek nehênî dema dabeşkirinê pêk tê. Cûdahiyên ji vebijarka yekem di qonaxa şîfrekirinê de têne bang kirin (di fonksiyonên poly_compress û polyvec_compress de), û ne di dema deşîfrekirinê de. Lêbelê, vebijarka duyemîn dikare ji bo êrîşek tenê di rewşên ku prosedur di operasyonên ji nû ve şîfrekirinê de tê bikar anîn de ku tê de derketina şîfretextê nepenî tê hesibandin de bikêr be.

Qelsî jixwe di pirtûkxaneyan de hatî rast kirin:

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

Pirtûkxaneyên ku di destpêkê de ji ber xetereyê bandor nebûn:

  • 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-krîstal/kyber/avx2,
  • pqclean/crypto_kem/kyber*/avx2.

Zehfbûn di pirtûkxaneyan de bêserûber dimîne:

  • antontutoveanu/crystals-kyber-javascript,
  • Argyle-Nermalava/kyber,
  • debian/src/liboqs/unstable/src/kem/kyber,
  • kudelskisecurity/crystals-go,
  • mupq/pqm4/crypto_kem/kyber* (Di 20ê Kanûna Pêşiyê de, tenê 1 guhertoya qelsiyê hate rast kirin),
  • PQClean/PQClean/crypto_kem/kyber*/aarch64,
  • PQClean/PQClean/crypto_kem/kyber*/paqij,
  • randombit/botan (Di 20ê Kanûna Pêşiyê de, tenê 1 xisar hate rast kirin),
  • rustpq/pqcrypto/pqcrypto-kyber (serrastkirinek di 5ê Rêbendanê de li libsignal hate zêdekirin, lê qelsî hîn di pqcrypto-kyber bixwe de nehatiye rast kirin).

Source: opennet.ru

Add a comment