#rC3 2021 Kyber and Post-Quantum Crypto - How does it work?

preview_player
Показать описание


Post-quantum crypto is being rolled out to secure **you** from quantum computers! Unfortunately, few people know how post-quantum works. Let's change that!
In this zero-to-hero talk we'll dive into the inner workings of Kyber, a prominent member of the post-quantum family.

Therefore RSA, Elliptic Curve Crypto, Diffie-Hellman, DSA and friends could soon be obsolete.

Kyber (formerly known as New Hope) is among the first post-quantum schemes to be standardized and already found its way into products. As a lattice-based system, Kyber is fast and its security guarantees are linked to an NP-hard problem. Also, it has all the nice mathematical ingredients to confuse the hell out of you: vectors of odd-looking polynomials, algebraic rings, error terms and a security reduction to “module lattices”.

This talk will introduce you to the world of post-quantum cryptography by giving a hands-on tutorial on how its most prominent member - Kyber - works. We'll start with high school level mathematics and work our way up to constructing Kyber. By constructing such a toy-sized Kyber, we can learn how the system works, comprehend its design decisions and see how it is related to an NP-hard problem.
After that we’ll take a brief look into how PQC will change real world cryptography in the near future.

Ruben Gonzalez Krijn Reijnders

#rc3-2021-import #AufindieZukunft!

Title track: "Drone" by "A Ninja Blob Drew Me" (CC BY-NC 3.0)
Рекомендации по теме
Комментарии
Автор

This was a brilliant explanation! Thanks!

realconfusedengineer
Автор

Thank you for the great explaination of kyber!

fabiansegatz
Автор

I wish there was some talk about how knowing the parallelepiped of points within the lattice is a way to crack the encryption. You get into things like the LLL algorithm. A good lattice based cryptography needs to shield itself from such attacks, does it not? Also, I never hear anyone go into detail about the transition from plaintext to lattice coordinate. To encode a letter 'C', it requires a lattice coordinate, which might require two integers. This means the ciphertext would be twice the size of the plaintext. Is there another way of doing this or is the lattice only used for a key and not every byte of a file?

Rexvideowow
Автор

Fantastic video, thanks for the explainer.

benjamin
Автор

„we multiply our coefficient by an arbitrary number 1337“

michaelsalmon
Автор

Why not call the zoo monster "PeterShorus Rex"?

erichathaway
Автор

idk if i am right but as far as ik the equation for the encrypted text is d=m+💩🥕+🍎- s🥭. crrt me if i am wrong.

dodgaming