I ka hoʻokō ʻana i ka algorithm encryption Kyber, ka mea i lanakila i ka hoʻokūkū o nā algorithms cryptographic kūʻē i ka ikaika brute ma kahi kamepiula quantum, ua ʻike ʻia kahi nāwaliwali e hiki ai i nā hoʻouka ʻaoʻao ke hana hou i nā kī huna e pili ana i ke ana ʻana i ka manawa o ka hana i ka wā decryption o ka. ciphertext i hāʻawi ʻia e ka mea hoʻouka. Pili ka pilikia i ka hoʻokō ʻana o ka CRYSTALS-Kyber KEM key encapsulation mechanism a me nā hale waihona puke hoʻopuna a Kyber ʻaoʻao ʻekolu, me ka waihona pqcrypto i hoʻohana ʻia i ka ʻelele Signal.
ʻO ke kumu o ka nāwaliwali, ka mea i loaʻa i ka inoa code KyberSlash, aia i ka hoʻohana ʻana i ka hana mahele "t = (((t
Ua hiki iā Daniel J. Bernstein, he loea kaulana i ke kahua o ka cryptography, ke hoʻomākaukau i kahi hōʻike hana o ka hōʻoia e hiki ke hoʻokō ʻia ka hoʻouka ʻana ma ka hana. Ma ʻelua o nā hoʻokolohua ʻekolu i hana ʻia, i ka wā e holo ana i ke code ma ka papa Raspberry Pi 2, ua hiki ke hana hou i ke kī pilikino Kyber-512 ma muli o ke ana ʻana i ka manawa decoding data. Hiki ke hoʻololi ʻia ke ala no nā kī Kyber-768 a me Kyber-1024. No ka hoʻokō pono ʻana i kahi hoʻouka kaua, pono e hana ʻia ka ciphertext i kuhikuhi ʻia e ka mea hoʻouka me ka hoʻohana ʻana i nā kī like like a hiki ke ana pololei ʻia ka manawa hoʻokō o ka hana.
Ua ʻike ʻia kekahi leak (KyberSlash2) i loko o kekahi mau hale waihona puke, i hana ʻia ma muli o ka hoʻohana ʻana i kahi waiwai huna i ka wā e hoʻokaʻawale ai. ʻO nā ʻokoʻa mai ka koho mua e iho mai i ke kelepona ma ka pae hoʻopunipuni (ma nā hana poly_compress a me polyvec_compress), ʻaʻole i ka wā decryption. Eia nō naʻe, hiki ke hoʻohana ʻia ka lua o ka koho no ka hoʻouka ʻana i nā hihia wale nō i hoʻohana ʻia ke kaʻina hana i nā hana hoʻopiʻi hou ʻana i manaʻo ʻia he mea huna ka hoʻopuka ʻana o ka ciphertext.
Ua hoʻopaʻa ʻia ka nāwaliwali i nā hale waihona puke:
- zig/lib/std/crypto/kyber_d00.zig (Kekemapa 22),
- pq-crystals/kyber/ref (Kekemapa 30),
- symbolicsoft/kyber-k2so (Kekemapa 19),
- cloudflare/circl (Ianuali 8),
- aws/aws-lc/crypto/kyber (Ianuali 4),
- liboqs/src/kem/kyber (8 Ianuali).
ʻAʻole i hoʻopilikia mua ʻia nā hale waihona puke e ka nāwaliwali:
- 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-crystals/kyber/avx2,
- pqclean/crypto_kem/kyber*/avx2.
ʻAʻole i hoʻopaʻa ʻia ka nāwaliwali i loko o nā hale waihona puke:
- antontutoveanu/crystals-kyber-javascript,
- Argyle-Software/kyber,
- debian/src/liboqs/unstable/src/kem/kyber,
- kudelskisecurity/crystals-go,
- mupq/pqm4/crypto_kem/kyber* (Ma ka lā 20 o Kekemapa, 1 wale nō ka mana o ka vulnerability i hoʻopaʻa ʻia),
- PQClean/PQClean/crypto_kem/kyber*/aarch64,
- PQClean/PQClean/crypto_kem/kyber*/maʻemaʻe,
- randombit/botan (Ma ka lā 20 o Kekemapa, 1 wale nō ka nāwaliwali i hoʻopaʻa ʻia),
- rustpq/pqcrypto/pqcrypto-kyber (ua hoʻohui ʻia kahi hoʻoponopono i ka libsignal ma Ianuali 5, akā ʻaʻole i hoʻopaʻa ʻia ka nāwaliwali ma ka pqcrypto-kyber ponoʻī).
Source: opennet.ru