-
Translated by Esa Lammi
(KYBS2004 course assignment at JYU.FI)
-
rC3 Intromusiikki
-
Herald: Hyvää iltapäivää kaikille katsojille.
Seuraavan esityksen pitää Ruben Gonzalez ja
-
Krijin Reijnders, he molemmat ovat Ph.D
opiskelijoita Radbout yliopistosta ja Ruben
-
on myös Capture-The-Flag pelaaja nimeltä
"Red Rocket" tai liittyy pelaajaan
-
"Red Rocket". Heidän esitys liittyy kvantin
jälkeiseen kryptografiaan. Ja teemme
-
tavallaan tutustumishypyn Kyberiin. Tämä
esitys myös live-käännetään
-
saksaksi, eli jos et puhu saksaa, älä vaivu
epätoivoon. Dieser Vortrag wird also
-
übersetzt simultan in Deutsch, ja siinä
oli myös koko saksan osaamiseni. Tämä
-
esitys on myös nauhoitettu ja kestää 30
minuuttia, mutta Q&A on livenä
-
tämän jälkeen. Joten nauttikaa.
-
Ruben Gonzalez: Hei, ja tervetuloa esitykseen
Kyberistä ja kvantin jälkeisestä
-
kryptografiasta. Kuinka se toimii? Ensiksi
nimeni on Ruben Gonzalez, olen tohtori
-
opiskelija Hollannista. Pidän tämän
esityksen yhdessä kollegani Krijin
-
Reijndersin kanssa ja opetamme teille
kaiken Kyberistä tänään. Eli, tärkeimmät
-
ensin, pieni huomio, koska en halua tuottaa
pettymystä ihmisille: Me puhumme boomer
-
kryptosta, eli emme puhu lohkoketjuista,
NFT:sta, shitcoineista... ollenkaan.
-
Sen sijaan kyllästytämme teidät
matematiikalla, oudoilla avainpareilla ja
-
US valtionhallinnon organisaatioilla. Eli,
esitys on jaettu neljään osaan. Ensin opetan
-
teille vähän, mitä kvantin jälkeinen
kryptografia todellisuudessa on ja miksi
-
sinun pitäisi välittää siitä. Sitten
puhumme Kyberistä, joka on kaava mihin
-
syvennymme tarkemmin, koska
se järjestelmä on juuri valloittamassa
-
maailman. Ja sitten Kreijin puhuu teille
hieman lisää turvallisuustakuista
-
miten järjestelmä itse asiassa toimii
matemaattisesti ja sitten annamme
-
teille tiivistyksen Krypton tulevaisuudesta
ja mihin tällä alueella
-
olemme suuntaamassa. Eli, kvantin jälkeinen
crypto. Vähän perusteita tähän:
-
Tänään, kryptografia, ylätasolla, on
jaettu kahteen osaan; tylsään osaan ja
-
jännään osaan. Tylsää osaa kutsutaan
symmetriseksi cryptoksi ja symmetrinen
-
crypto tekee mitä yleensä odotat cryptolta.
Eli voit salakirjoittaa asioita sillä ja
-
joskus tehdä sillä autentikoinnin.
Mutta suurin juttu siinä
-
on se salakirjoittaminen. Eli sinulla on
salainen avain, jota ei saa olla kenelläkään
-
ja jos sinulla on tämä salainen avain,
voit salata asioita ja toinen henkilö
-
jolla on sama salaisuus voi purkaa sillä.
Eli siksi se on symmetrinen - sinulla
-
on yksi avain salaamiseen ja purkamiseen.
Ja mitä käytät implementaation kannalta
-
se on lähes ainoastaan AES salaamista
tai tiiviste funktioita
-
jotka ovat SHA perheestä ja se
on symmetrinen maailma. Se on asioiden
-
symmetrinen puoli. Nyt meillä on myös
asymmetrinen crypto, koska jos katsot
-
symmetristä cryptoa, sinulla on tämä salainen
avain, mutta sinulla ei ole keinoa saada
-
kahdelle osapuolelle tätä samaa salaista
avainta. Ja siinä asymmetrinen salaus saapuu
-
peliin. Eli, voit käyttää asymmetristä
cryptoa, muiden asioiden ohessa, tämän
-
salaisen avaimen vaihtamiseen. Eli
asymmetrinen salaus käyttää avainparia:
-
julkinen avain joka voi olla kaikilla ja
salainen avain joka on vain vastaanottajalla.
-
Yeah, eli pohjimmiltaan, julkisella avaimella
salaat, esimerkiksi, symmetrisen avaimen,
-
ja yksityisellä avaimella voit purkaa, ja
tässä se tuntuu hieman hankalammalta.
-
Siinä ei käytetä vain kahta algoritmia,
vaan siinä käytetään kokonaista joukkoa
-
algoritmeja. Eli, katsotaan tätä eläin-
tarhaa nopeasti. Todennäköisesti jotkut näistä
-
termeistä olet jo kuullut: Curve25519 on
aika iso: Olet ehkä käyttänyt RSAta ennen,
-
Diffie-Helman, sellaisia. Eli siinä on
suuri joukko erilaisia rakenteita
-
asymmetrisessa cryptossa, joita käytetään
eri tarkoituksiin. Joskus siinä on eri
-
malleja, joita käytetään samaan
tarkoitukseen, tai voit käyttää yhtä
-
juttua eri asioihin. Eli on aika monimut-
kaista tehdä yhteenveto algoritmeista
-
Mutta, jos katsot tätä joukkoa, ihmiset
tuntuvat olevan iloisia, eikö niin? He
-
katselevat ympärilleen, tutkivat, asiat
näyttävät toimivan, onnellinen maailma.
-
Miksi he haluaisivat muuttaa sen? Ja kvantin
jälkeisessä cryptossa, me todella haluamme
-
muuttaa asymmetrisen salauksen perusteetkin.
No, tässä eläintarhassa on iso ongelma, ja se
-
ei ole eläintarhassa, mutta tulee sinne.
Eli on tämä kaveri, Peter Shore, ja hän
-
uhkaa eläintarhaa. Hän aikoo tuhota sen
ja kaikki siellä. Ja miksi näin on?
-
No meillä on tämä iso asymmetrisen crypton
eläintarha, eikö niin? Mutta jos katsot
-
eri kaavoja tarkasti, näet että ne
kaikki pohjautuvat vain kahteen
-
matemaattiseen ongelmaan. Ja ne ovat
integer factorization ja discrete logarithm.
-
Meidän ei tarvitse, meillä ei ole aikaa
mennä syvälle niiden yksityiskohtiin,
-
mutta sinun täytyy tietää, että koko
asymmetrisen crypton tarha pohjautuu
-
kahteen ongelmaan. Ja sattumalta, Peter
Shore, kehitti algoritmin, kvantti
-
algoritmin, joka murtaa nuo kaksi ongelmaa
ja kaiken krypton joka niihin perustuu.
-
Eli kaikki tämän päivän crypto on oikeasti
rikki, jos voimme käyttää Shoren algoritmia.
-
Shoren algoritmi on kvantti algoritmi.
Se tarkoittaa, että meillä pitää olla
-
riittävän suuri kvanttitietokone että se
toimii, mutta kun meillä on se, kaikki
-
asymmetrinen krypto on tuhottu. Ja miksi
sinun pitäisi välittää? No, ehkä käytät
-
jotain niistä täällä? No, oikeasti käytät,
halusit tai et. Katsot juuri nyt
-
tätä streamia TLS kautta. Ehkä käytät
myös juttuja, kuten SSH tai sähköpostin
-
salausta tai IPSEC VPNaa tai Wireguardia.
No, Shoren algoritmi rikkoisi kaikki
-
nuo protokollat. Kaikki. Ja sinun pitäisi
välittää, koska modernina informaation
-
aikana, pohjimmillaan kaikki on digitaalista
kommunikaatiota. Kaikki turvallisuus
-
käytännössä perustuu cryptoon, eli, jos,
Shorezilla rikkoo kaiken, meillä on
-
suuri ongelma. Eli luonnollisesti kysymys
herää: "koska meillä on isoja
-
kvantti tietokoneita?" Ja vastaus on:
"Me emme tiedä". Eri asiantuntijat
-
sanovat eri asioita. Mielipiteet vaihtelevat
viidestä vuodesta - ei koskaan. Mutta
-
todellisuudessa kukaan ei tiedä. Emme näe
tulevaisuuteen. Meillä ei ole taika
-
kasipalloa. Mutta meidän pitäisi ehdottomasti
olla valmiita suurelle kvantti koneelle
-
koska emme halua kaiken informaatio
turvallisuutemme hajoavan kun, sanotaan
-
vaikka, iso US valtion laitos yhtäkkiä
onnistuu rakentamaan kvantti tietokoneen.
-
Eli Kvantin jälkeinen krypto on juuri
asymmetrisen kryptografian suunnittelua
-
siten, ettei siihen vaikuta kvantti tietokone.
Tai sanotaan toivotaan näin. Mutta olemme
-
aika varmoja, että niiden pitäisi olla.
Varmastikin, niihin ei vaikuta Shoren
-
algoritmi. Eli nyt tiedätte vähän mitä
kvantin jälkeinen crypto on ja mihin
-
sitä tarvitsemme, haluan puhua Kyberistä.
Kyber on kvantin jälkeinen järjestelmä,
-
joka todennäköisesti adoptoidaan
lähitulevaisuudessa. Eli asymmetrisen
-
crypton eläintarha on uhattuna - Tehdään
uusi, uusi eläintarha, johon ihmiset voivat
-
mennä, olla onnellisia ja elää heidän
täyttä elämää. Standardointiorganisaatio
-
NIST julkaisi kutsun pari vuotta sitten
uusista kryprografisista järjestelmistä
-
jotka kestävät kvantti tietokoneita.
Ja ensimmäiset järjestelmät tullaankin
-
oikeasti standardoimaan hyvin pian, 2022
alkuvuonna. Eli, haluamme katsoa yhtä
-
järjestelmää joka tullaan standarsoimaan,
ja sitä kutsutaan Kyberiksi. No miksi katsomme
-
juuri sitä järjestelmää? No se on erittäin
nopea, ja julkisten ja yksityisten avainten
-
koot eivät ole liian isoja, tarkoittaen että
voit käyttää niitä oikeissa projekteissa,
-
joka ei aina toteudu kaikissa post-quantum
cryptoissa. Joten se on jo, vaikkei olekaan,
-
standardoitu, sitä on jo jonkin verran
alettu ottamaan käyttöön alalla.
-
Ja se on hila-pohjainen rakenne. Ja juuri
nyt näyttää vähän siltä, että hila tulee
-
olemaan tulevaisuus. Jos et tiedä mikä
hila pohjainen järjestelmä on, se on OK;
-
Krijin kertoo teille siitä lopuksi. Eli,
siinä oli hauska osa esitystämme,
-
helppo osa. Nyt meidän pitää kääriä
hihat, meidän pitää saada kädet likaisiksi
-
ja tarvitsemme vähän matematiikkaa. Ja sitä
varten, aion antaa
-
mikrofonin - kääntyä Krijnin puoleen.
(kuinka sanotaan? Annan sen Krijinille?
-
En tiedä.) Moikka.
Krijn Raijnders: Eli, nyt tarvitsemme matikkaa.
-
Aloitetaan. Mitä tarvitsemme Kyberissa ovat
polynomiaalit, ja meidän pitää työskennellä
-
polynomiaaleilla. Mutta oikeastaan voit
ajatella polynomiaaleja kuten numeroita.
-
Ja mitä tarkoitan sillä? Tarkoitan, että
voit kertoa niitä ja voit
-
lisätä niitä toisiinsa kuten numeroita.
Ja kuten teimme numeroiden kanssa
-
pre-quantum kryptografiassa, kun niistä
tuli liian suuria, me pelkistimme niitä.
-
Teemme tämän modulo operaation. Teemme
saman kertoimille polynomiaaleissa, mutta
-
myös kun, polynomiaalin aste kasvaa liikaa,
pienennämme sitä toisella
-
polynomiaalilla. Eli meillä on modulo
operaatio polynomiaaleilla, ja tällä tavoin
-
voit tehdä kaikenlaisia asioita polynomiaaleila.
Ja siinä oikeastaan oli kaikki matematiikka
-
jota tarvitsemme pohjimmillaan
työskentelyyn Kyberin kanssa. Mitä tällä
-
tarkoitan? No jos voit kertoa ja lisätä,
sitten voit myös
-
tehdä näitä asioita joita teemme numeroilla
matriisien ja vektorien kanssa, eli voimme
-
kertoa matriisin vektorilla ja lisätä
toisen vektorin. Ja tämä toimii samoin
-
näillä polynomiaaleilla, eli sinulla voi
olla matriisi täynnä polynomiaaleja ja
-
vektori täynnä polynomiaaleja ja voit
vain kertoa ne keskenään, lisätä yhden
-
vektorin. Se on perus operaatioita
kertomisessa ja lisäämisessä poly-
-
nomiaalien kanssa. Se näyttää vähän moni-
mutkaisemmalta, mutta sitä se on. Ja sitten,
-
sanotaan, että meillä on matriisi ja me
kerromme vektorilla ja lisäämme toisen
-
pienen vektorin. Nyt jos näytän teille
tämän laskennan lopputuloksen, ja
-
annan teille tämän matriisin jolla aloitimme,
se on oikeasti paljon vaikeampi palauttaa
-
vektori, jolla kerroimme matriisin. Ja
tämä on perus-ongelma, jota
-
tarvitsemme Kybesissä. Ja sen nimi on
module-learning-with-errors. Tiedän,
-
ettei nimessä ole paljon järkeä, mutta
ilmeisesti matemaatikoiden mielestä se
-
kivasti kuvaa ongelmaa. Eli tämä matriisi,
kutsumme sitä 'A':ksi, tämä salainen vektori
-
kutsumme sitä nimellä 's', sitten meidän
pitää lisätä pieni virhe termi, jotta ei ole
-
liian helppoa ratkaista tätä ongelmaa, ja
sitten otamme julkisen arvon taas, jota
-
kutsumme 't':ksi. Saadaan yhtälö A kertaa
s plus e on yhtäkuin t. Ja sitten julkinen
-
avainpari on tämä Matriisi A ja tulos 't',
ja yksityinen avain on salainen
-
vektori 's'. Ja se on kaikki, jota tarvitaan
avainparin luomiseen Kyber:ssa. Meidän
-
pitää oikeasti varmistaa, että yksityisessä
avainparissa on pieni koeffisientti ja se myös
-
tekee siitä pienen lähetettäväksi.
ja myös, tässä virheessä on pieni
-
koeffisientti. Loppu esityksen kannalta:
Nämä virhe jaksot, ne ovat tarpeellisia,
-
mutta mutkistavat myös vähän yhtälöitä,
joten me vain kirjoitamme
-
ne emojeilla jolloin tiedät mitä virheet
ovat ja mitkä ovat tärkeitä arvoja,
-
ja nyt Ruber kertoo jälleen: Kuinka
salaamme ja puramme viestejä käyttäen
-
sellaisia julkisia ja yksityisiä avainpareja?
R.G.:OK, boomeri on palannut ja hän
-
haluaa salata jotain. Eli, esimerkiksi hän
haluaa salata kirjaimen C. Eli C ei ole
-
arvo, vaan se on kirjaimellisesti kirjain
"C" jonkä hän haluaa salata. Ja kuten
-
opimme aiemmin, halutessamme salata jotain
tarvitsemme julkisen avaimen. Eli meillä on
-
tämä julkinen avain, joka on matriisi A ja
vektori t. Eli ensin, meidän täytyy muuntaa
-
kirjain "C" johonkin muotoon, jonka kanssa
Kyber toimii, sillä haluamme salata sen
-
Kyberillä - Eli ensin puretaan se binääri
muotoon, okei, tietokoneessa kaikki
-
on binäärinä muutenkin, eli sanotaan, että
käytimme ASCIIta enkoodaukseen. Eli
-
muutamme kirjaimen "C" ykkösiksi ja
nolliksi. Tässä tapauksessa se on
-
"1000011". Nyt meillä on binäärinen
esitysmuoto, mutta Kyber käyttää niitä
-
polynomiaaleja, eikö? Eli meidän täytyy
jotenkin kääntää tämä polynomiaaliksi,
-
joka onkin aika helppoa. Eli me vain teemme
binäärisen polynominaalin, eli otamme
-
ykköset ja nollat ja käytämme niitä
koefisientteinä polynominaaliin. Tässä
-
tapauksessa näet polynominaalin kalvoilla,
aika helppoa. Eli, yksi bitti on yksi
polynominaalin koefisientti.
-
Koska nolla kertaa jotain on vain nolla,
joka jättää vain pois nolla tekijät ja
-
kutistaa polynominaaliamme vähän. Eli nyt
meillä on selkoteksti ja voimme käyttää sitä
-
Kyberissä, eikö? Selkoteksti on polynominaali
"x potenssiin 6 plus x plus yksi".
-
Se on meidän selkoteksti. Me emme ole
salanneet vielä mitään, mutta meillä
-
on selkoteksti. Eli käytetään nyt Kyber:ia
salaamaan selkoteksti polynominaali.
-
Ensin, me skaalaamme sen. Meidän täytyy
tehdä polynominaalistamme iso. Ja teemme
-
sen vain kertomalla polynominaalin suurella
tekijällä. Eli valitsen 1337, se on satunnainen,
-
riippuu Kyber instanssista, mutta me vain
kerromme jokaisen polynominaalin
-
koeffisentin suurella luvulla 1337. eli
meillä on sama polynominaali, mutta suurilla
-
koeffisienteillä. Eli skaalattu selkoteksti
on 1337 x potenssiin, ja niin edelleen
-
ja niin edelleen. Eli nyt teemme itse
salauksen, mikä Kyber:ssa on oikeastaan
-
aika helppoa. Me vain ripottelemme vähän
virhetermejä. Kuten Krijin mainitsi aiemmin
-
esityksessämme, kuvaamme pieniä virheitä
emojeilla. Koska ne eivät ole tärkeitä,
-
mutta sinun pitäisi silti tietää, että ne
ovat siellä. Eli salatekstimme on oikeastaan
-
vain kaksi arvoa, v, joka on polynominaali
ja u joka on polynominaalin vektori.
-
Eli, v on avain arvo julkisesta avaimesta,
kerrottuna ja lisättynä virhetekijöillä,
-
ja sitten se oikea skaalattu selkoteksti
on lisätty myös. u on matriisi julkisesta
-
avaimesta, kerrottuna virhe tekijällä ja
virhetekijä lisättynä.
-
Näet, että porkkana virhe tekijä esiintyy
molemmissa yhtälöissä. Ja siinä se on.
-
Se on meidän salaus. (v,u) on
selkotekstimme salaus. Eli pelkkä
-
salaaminen olisi tavallaan tylsää. Me varmaan
haluamme myös purkaa asioita. Eli, kuinka
-
teemme sen Kyberilla? No, me tarvitsemme
yksityisen avaimen, eikös? julkinen avain
-
salaa, yksityinen purkaa. Eli meillä on
salatekstimme, ne kaksi arvoa v ja u.
-
Ja purkaaksemme, me ensin puramme julkisen
avaimen siitä. Ja me teemme sen ottamalla
-
v miinus yksityinen avain, kerrottuna u:lla.
ja jos tavaan yhtälön,
-
niistä tulee aika pitkiä. Mutta kuten
näette, jos ajattelette emojeja
-
virhe tekijöinä, suurin osa julkisesta
avaimesta, tai oikeastaan koko julkinen
-
avain poistuu. Ja, d, täällä kalvoilla
on lopputulos laskusta
-
v miinus salainen avain kertaa u.
Ja niin meillä on viestimme d:ssa, joka
-
on selkoteksti, mutta meillä on myös nämä
virhe tekijät lojumassa pitkin ja yksityinen
-
avain. Nyt yksi keskeinen huomio on tärkeä.
mainitsin aiemmin, että virhe tekijät
-
ovat kaikki pieniä, eli ne ovat
polynominaaleja pienillä koefisienteilla.
-
Ja yksityisessäkin avaimessa on polynominaaleja
pienillä koefisienteilla. Eli täällä kalvoilla
-
kaikki oikealla puolella ovat aika pieniä,
mutta selkotekstimme on iso, sillä
-
skaalasimme sen aiemmin. Kerroimme sen
suurella numerolla 1337. Eli yksinkertaisesti
-
tavallaan pyöristämällä kaiken, saamme
skaalatun selkotekstin takaisin, koska
-
tekijät ovat pieniä. Eli pyöristämällä
saamme skaalatun selkotekstin. Ja silloin
-
olemme purkaneet. Ja mitä meidän täytyy
nyt tehdä, on vain kääntää se alkuperäiseksi
-
tekstiksi, eli skaalaamme alas, jaamme
kokaisen koefisentin 1337:lla. Tuomme
-
nolla tekijät, eli kaikilla koeffisienteilla
jotka eivät ole polynominaalissa on nolla.
-
Kaikilla tekijöillä, jotka eivät ole
polynominaalissa on nolla koefisientti.
Eli tuomme takaisin
-
nollat ja sitten binääri polynominaalista,
voimme vain lukea ykköset ja nollat.
-
koefisienteista. Me saamme takaisin
binääri koodin ja voimme dekoodata
-
jälleen käyttäen ASCIIta, esimerkiksi, ja
saamme selkotekstimme takaisin. Ja niin
-
Kyber purkaa. Ja sitten voimme dekoodata
Kyber selkotekstin alkuperäiseksi viestiksi
-
joka oli "C". Eli miltä Kyber näyttää
kotikäyttäjälle?
-
No, Kyber tulee kolmena versiona, kolmena
eri turvallisuus tasona. Niitä on
-
Kyber512 aina Kyber1024 asti. Eli, usein
kryptografiassa turvallisuutta mitataan
-
bitteinä. Joskus se vertautuu AES
vahvuuteen. Eli alin hyväksyttävä
-
turvallisuus taso meille on 128 bittiä
ja vahvin turvallisuus taso jota käytämme
-
käytännössä on 256 bittiä. Eli Kyber512 on
noin 128 bittiä turvallinen ja Kyber1024 on
-
noin 256 bittiä turvallinen. Ja se on mitä
loppukäyttäjän tulee tietää. Mutta haluan
-
myös näyttää mitä nämä turvallisuudet
oikeasti tarkoittavat Kyberin tapauksessa
-
koska Kyber instanssit ovat pääosin
määtitelty kolmella muuttujalla: n, k ja q.
-
Ja mitä ne tarkoittavat? No, n on vain Kyberin
käyttämä polynominaalin kertaluku.
-
Eli 256 tarkoittaa, että meillä on exponentit
x potenssiin maksimi 256. Eli polynominaalit
-
ovat aika suuria. 256 koefisinttia voimme
tallettaa. k tarkoittaa vektorin kokoa. Eli
-
kuten näitte, Kyber ei käytä ainoastaan
polynominaaleja, vaan myös polynominaalien
-
vektoreita. Eli pohjimmiltaan monien
polyminaalien listoja. Ja Kyberissä myös,
-
k muuttuja sanoo, kuinka monta polynominaalia
on sellaisessa vektorissa. q on modulus
-
numeroille. Tarkoitan, meillä on koefisientteja,
eikö? Ja kuinka suuriksi tämä koefisientti voi tulla?
-
Eli suurin koefisientti, jota käytetään
Kyberissä olisi 3328 otamme sen modulo
-
3329. Eli kuten näette, Kyberissä meidän
ei tarvitse käsitellä suuria numeroita,
-
oikeastaan. Meidän täytyy käsitellä pre-
quantum kruptografiassa, meidän täytyy
-
käsitellä paljon suuria lukuja. Tässä, luvut
eivät ole niin suuria. Tärkeää on myös koon
-
ja nopeuden suhde. Tässä näette pylväs
grafiikan julkisesta, yksityisestä avaimesta
-
ja salatekstin koosta elliptisen kurvin
järjestelmässä, Curve25519, RSA ja Kyber
-
pienimmällä turvatasolla. Eli noilla kolmella
turvallisuus systeemillä on sama turvallisuus
-
taso, mutta kuten näette, elliptic curve
crypto on todella pieni, RSA on vähäsen
-
isompi, Kyber on vielä isompi. Mutta jos
menemme suurimpaan turvatasoon, näette
-
että Kyber on hyvin vertailukelpoinen
RSAhan. Kuitenkin ECC in vielä paljon pienempi.
-
Mutta, jos et välitä vain koosta ja välität
myös nopeudesta, välität nopeudesta vielä
-
enemmän. Ja jos vertaamme samaa turvatasoa
Kyberissä, elliptic curveen
-
ja RSAhan, näemme, että Kyber on liekeissä.
Kyber on todella, todella nopea.
-
Eli, voimme heittää pois RSAn ja vertailla
vain elliptic curvea Kyberiin, ja näemme
-
että Kyber on vielä nopeampi kuin
elliptic crypto, mikä on aika vaikuttavaa
-
koska elliptic crypto on jo melko nopea.
Ja, vielä lisää, voimme nähdä, että
-
korkeimmalla turvatasolla Kyber on nopeampi
kuin alimman turvatason elliptic curve
-
crypto. Eli Kyber - on helkkarin nopea.
Tiedän että testaaminen on hankalaa. Meillä
-
on erilaisia alustoja, mutta intuitiona:
Kyber on todella nopea. Eli asia, jonka
-
haluan mainita on, että Kyberin lähdekoodi
on saatavilla online. Voit ladata sen
-
GitHubista, esimerkiksi, PQClean
projektista, jossa on AVX optimoituja
-
implementointeja desktop CPU:ille,
pqm4 projektista, joka on optimoitu
-
ARM pohjaisille sulautetuille prosessoreille,
tai siellä on myös referenssi
-
c implementointi pq-crystals projektissa.
Ja viimeisenä, mutta ei vähäisimpänä,
-
spesifikaatio, dokumentaatio, koodi,
kaikki on lisensoitu Creative Commons
-
nolla alle, tarkoittaen, että se on julkisessa
jakelussa. Eli on nolla lisenssiä tai patentti
-
ongelmaa Kyberin kanssa, se on vai yhteistä
omaisuutta. Voit kloonata ja tehdä mitä
-
vain tahdot sen kanssa. Se on aika kivaa.
Eli se oli Kyberistä, nyt Krijn
-
kertoo teille enemmän mitä oikeastaan
hilat ovat ja miksi Kyber on oikeasti
-
turvallinen kuten se on.
Krijn: OK, se oli Kyber. Ja olemme
-
puhuneet paljon polynominaaleista, mutta
emme ole puhuneet paljoa hiloista.
-
Mutta sanoimme, että Kyber on hila
pohjainen malli. Eli mitä hiloilla on
-
tekemistä kaikkien näiden polynominaalien
kanssa? Ja miksi meidän mielestä se on
-
turvallinen, koska se on hilapohjainen?
No, palataan näihin numeroihin joita
-
käytimme hetken, vain koska ne tekevät
näistä asioista ymmärrettävämpiä ja
-
intuitiivisiä. Meillä oli tämä matriisin
kerronta. Me kerroimme matriisin
-
vektorilla. Nyt sanotaanpa, että teemme
tämän numeroilla, okei? Meillä on tämä
-
matriisi 13,4,2,9 ja kerromme sen a,b.
no, oikeastaan, mitä voisit myös nähdä tässä
-
on, että kerrot vektorin 13 yli 2 a
kertaa ja sitten lisäät vektorin 4 yli
-
9 b kertaa. Ja kuten näette kuvassa, on,
voit tehdä eri yhdistelmiä
-
siitä. Eli jos otat a = 1 ja b = 1, saat
pisteen oikeasta yläkulmasta
-
ja sitten voi tehdä tämän a = 2 ja b = 3,
sitten 3 ja 4 loputtomiin.
-
Ja sitten saisit nämä kaikki pisteet
levitettyinä cartesian tason yli, ja se
-
jatkuisi ikuisesti näissä ulottuvuuksissa.
Eli saisit loputtoman määrän pisteitä
-
vain antamalla nämä kaksi alkuperäistä
vektoria 13, 2 ja 4, 9. Nyt, meidän
-
salainen avain oli oikeastaan vain keino
valita yksi näistä pisteistä, koska sanoimme
-
no, matriisi, joka meillä oli julkisessa
avaimessa, se kuvaa jonkinlaisen hilan.
-
Ja sitten salainen avain s kuvaa oikeastaan
tietyn pisteen numero kertaa
-
ensimmäinen vektori, plus numero
kertaa toinen vektori. Sitten mitä
-
virhe tekijä tekee? No, tiedäthän,
se vain siirtää bitin tästä hila pisteestä
-
jossa olimme ja sitten saamme tuloksen
t täällä. Ja nyt
-
on todella vaikeaa päästä takaisin t:sta
vektoriin s. Me tiedämme, että se on
-
lähin vektori tähän annettuun pisteeseen t
tässä hilassa, jota kuvaa a. Mutta tämä
-
ongelma löytää lähin vektori hilassa
ja satunnaisissa kirjaimissa on oikeasti
-
todella vaikea. Ja siksi kutsumme sitä
lähimmän vektorin ongelmaksi, joka on
-
tosi hyvä nimi, koska etsimme lähintä
vektoria. Eli tässä kaksi ulotteisessa
-
esimerkissä, meillä oli matriisi e ja
vektori t julkisessa avaimessa, ja
-
meillä oli vektori s yksityisessä avaimessa
ja sen piilotti tämä pieni virhe tekijä.
-
Kertauksena: a antaa sinulle tämä alustavat
vektorit joita voit käyttää hilan kuvaamiseen
-
s antaa sinulle salaisen pisteen hilassa.
Virhe varmistaa, että olet lähellä
-
hila pistettä, mutta et liian kaukana.
Ja kun pääsemme lopputulokseen t,
-
joka on julkinen piste ja sitten pääsemme
takaisin tästä hilan informaatiosta ja
-
t -> s on lähimmän vektorin ongelma,
tiivistettynä. Voit ajatella nyt, OK,
-
tämä on numeroille näen sen nyt.
Se on vain näitä pisteitä tällä
-
tasolla. Ulottuvuuteen kaksi OK, tajuan.
Ulottuvuuteen kolme voit ajatella kolmannessa
-
ulottuvuudessa. Vaikkakin puhumme ulottuvuudesta
n joka on paljon suurempi kuin 3 ja
-
polyniminaaleista numeroiden sijaan. Ja
kuinka visualisoimme tämän? ja todellisuudessa
-
emme oikeastaan, mutta tiedämme miten
laskemme sen, joka on vaan tätä kertomista
-
ja lisäämistä polynominaaleilla. Eli me
vain laskemme sen ja tavallaan
-
ajattelemme sitä hilana abstraktisti,
mutta emme visuaalisesti. Nyt lopetellaan
-
lyhyellä katsauksella asymmetrisen crypton
tulevaisuuteen, ja palataan kvantin
-
jälkeiseen krypto eläintarhaan joka meillä
oli. Katsoimme jo Kyberiä, mutta siellä oli
-
muitakin kryptografian alkutekijöitä kuten
Rainbow, Falcon ja SABER ja
-
Dilithium, NTRU, McEliece. Niiden joukossa
on allekirjoitus järjestelmiä, mutta myös
-
näitä avaintenvaihto mekanismejä. Oikeastaan,
tämä eläintarha on aika erilainen kuin
-
mikä meillä oli ennen kvantin aikaa, se mikä
meillä oli pre-quantum, kuten selitimme,
-
pohjautui enimmäkseen integer factorointiin
ja discrete logarithm ongelmiin. Mutta
-
kvantin jälkeisessä, meillä on vaihtelevat
ongelmat. Meillä on hash pohjaista kryptografiaa
-
hila pohjaista cryptoa, koodi pohjaista
kryptografiaa, monimuuttujaan pohjautuvaa
-
kryptografiaa, isogeny pohjaista kryptografiaa.
ja kaikki nämä viisi aika erilaista
-
vivahdetta kryptografiaa, myös erilaisiin
matemaattisiin ongelmiin pohjautuen.
-
Mutta post-quantum salaus on tulossa.
Esimerkiksi, Amazon on jo implementoinut
-
joitain kierroksen kaksi kanditaatteja,
kuten Kyberin post-quantum TLS:aan.
-
Ja myös BSI, joka on Saksan informaatio
turvallisuuden ministeriö, on tehnyt
-
esityksen integroida post-quantum kryptografia
Thunderbirdiin, joka on heidän sähköpostiohjelma.
-
Ja jopa NIST:lla on seuraava lainaus,
jos et ole siirtynyt elliptic curve
-
kryptografiaan vielä, älä vaivaudu,
vaan siirry suoraan
-
post-quantum cryptoon. Ja se
päättää esityksemme post-quantum cryptosta
-
ja Kyberistä. Jos haluatte jatkolukemista,
siellä on linkki blogiin joka
-
menee vähän syvemmälle miten Kyber
toimii ja siinä on pieni esimerkki. Juuri
-
kuten näytimme tällä videolla. Kiitos
mielenkiinnostanne ja vastaamme
-
kysymyksiin nyt.
-
Kysymys, miksi minun pitäisi välittää
tästä nyt ?
-
Ruben: No, tuo on erinomainen kysymys.
No, kuten tiedämme Snowdenin vuodoista
-
NSA tällä hetkellä tallentaa paljon
Internet liikennettä, joka on salattua, ja
-
he tallentavat tämän salatun liikenteen
siinä toivossa, että he voivat purkaa sen
-
myöhemmin. Esimerkiksi, käyttäen isoa kvantti
tietokonetta. Eli ensinnäkin, meidän täytyy
-
välittää tästä nyt, koska jos Internet
liikenteemme on jo tallennettu ja voidaan
purkaa myöhemmin.
-
Ja toiseksi, meidän täytyy välittää tästä
nyt koska transitio, erityisesti mitä tulee
-
kryptografiaan, on todella hidasta koska
standardointi vie paljon aikaa.
-
Implementointi vie paljon aikaa ja
käyttöön ottaminen vie paljon aikaa.
-
Eli siksi meidän täytyy välittää siitä nyt.
Kysymys: Mutta onko mitään haittapuolia?
-
Krijn: Toinen oikein hyvä kysymys. Oikeastaan,
kyllä, on joitain haittapuolia, mutta
-
ne eivät ole isoja. Yleensä, avaimet ovat
vähän isompia kuin mihin olemme tottuneet.
-
Joissain tapauksissa paljon suurempia kuin
mihin olemme tottuneet. Ja nopeus on huonompi
-
mitä aikaisemmin. Joissain malleissa paljon
hitaampaa kuin olemme tottuneet. Ja vaikka
-
tätä jo otetaan käyttöön, se on silti
houkutteleva alue tutkimukselle ja olemme
-
jatkuvasti koittaneet tehdä avaimista
pienempia ja malleista tehokkaampia.
-
Siinä toivossa, että saamme lopulta todella
tehokkaat järjestelmät jotka ratkaisevat
-
kaikki post-kvantum ongelmamme. Miksi et
antanut minun syödä hilaa (salaattia)?
--(em sanaleikki lettuce käännöksestä)--
-
Ruben: Se on minun hilani! Okei, syö se nyt
kamerassa, voit syödä yhden. Mutta
-
sitä ei ole pesty.
Herald: Okei, kiitoksia.Ensimmäinen
-
kysymys, jonka saimme Internetistä on:
Miksi käytätte 7-bit ASCIIta unicoden
-
sijaan?
Ruben: No sen kirjaimen C tapauksessa
-
siinä ei olisi ollut paljoa eroa kuitenkaan.
Me vain halusimme käyttää ASCIIta, koska
-
me todella, todella, halusimme suututtaa
Eurooppalaiset, koska kaikki nämä umlautit
-
ja sen sellaiset. Totta kai, ne ovat
tarpeettomia. Eli ASCII ikuisesti.
-
Herald: Olen yllättynyt, että olemme
molemmat eurooppalaisia myös, mutta ei
-
mennä nationalismiin ja jatketaan seuraavaan
kysymykseen, joka on, muuten, kuinka
-
voitte vertailla turvallisuus tasoja
vaihteleviin n ja vaihteleviin q
-
suhteutettuina?
Ruben: Anteeksi, yhteys hieman katosi
-
siinä. Voisitko toistaa kysymyksen?
Herald: Totta kai, voiko verrata
-
turvallisuus tasoja vaihtelevien n ja
vaihtelevien q mukaisesti ?
-
Ruben: Kyllä, totta kai voi. En ole varma
ymmärsinkö kysymyksen. Totta kai,
-
niin se tehdään, sillä tavoin verrataan
ja voit tehdä sen. En ole varma tarkoittiko
-
kysymys että tekisin sen juuri nyt tällä
paikalla, koska tätä en pystyisi tekemään,
-
mutta tarkoitan, se oli kalvoilla, kuten
turvallisuus tasot, jotka ollaan
-
standardoimassa, ainakin. Mutta yksi hyvä
asia Kyberissä, oikein hyvä asia, jonka
-
haluan mainita on, eli polynominaalit,
koko pysyy samana, modulus
-
q pysyy samana. Ainoastaan vektorin
koko muuttuu. Eli kuinka monta polynominaalia
-
sinulla on vektorissa. Ja se on aika kiva
kirjoitettaessa optimoitua koodia, koska
-
useimmat osat koodista ovat kirjaimellisesti
samoja. Jos katsot implementointia,
-
referenssi implementaatiota, voit nähdä
että se on todellisuudessa
-
samaa koodia kaikilla turvallisuus
tasoilla, vain yksi headeri muuttuu, joka
-
määrittää kuinka suuria vektorit ovat. Eli
se on aika kivaa. Mutta voit, yeah, sinulla
-
on RSAssa, sinulla on eri avain koot.
Eli kyllä, se on hankalampaa optimoida,
-
mutta tässä, sinä voit vain pitää samat
koot ja vain vektorin koko muuttuu,
-
mikä on hyvä juttu.
Herald: Miten mahdollisuus rauta-
-
pohjaiselle kiihdytykselle Kyberissä?
Olisiko se mahdollista, tehtävissä?
-
Ruben: En ole varma vastaanko vain tähän
vai haluaako Krijn myös sanoa jotain,
-
mutta hardware kiihdytys post-quantum
järjestelmissä yleisesti, kuten sanomme, on
-
aktiivinen tutkimusalue. Eli nuo asiat ovat
hyvin uusia. Oli joitain ihmisiä, jotka ovat
-
koittaneet sitä, on olemassa paperi siitä,
oikeasti - voit etsiä sen Internetistä -
-
RSA bignum hardware kiihdytyksen käytöstä
Kyberissä, joka on aika kiinnostava ajatus
-
koska työstentelet tässä täysin
eri juttujen kanssa. Mutta se on
-
avoin kysymys ja se on erittäin aktiivinen
tutkimuksen alue. Eli jos kukaan katsoja
-
on kiinnostunut tällaisesta jutusta,
en tiedä, kokeilemaan Kyberiä, tai
-
FPGAita tai jotain. Yeah, kokeilkaa sitä.
Eli siinä on paljon mahdollisuuksia, mutta
-
se, kuten sanoin, on myös hyvin aktiivisesti
tutkittu, koska se on aika uusi ja se vasta
-
löytää käyttöä teollisuudessa.
Herald: Ja tässä jatkokysymys, joka
-
tavallaan peilaa sitä, koska kysymys on:
Mihin asti tämä on tehtävissä
-
sulautetuissa arkkitehtuureissa, joissa
on hyvin rajallisesti rautaa Kyberin käyttöön?
-
Ruben: No, olen käyttänyt sitä Cortex
M3:ssa joka on ARM pohjainen. Eli yleensä
-
referenssi alusta, me käytämme Cortex M4
koska haluamme. Kuten kaksi kokeilua,
-
jotka ovat toistettavissa, ja voit ostaa
Cortex M4 lautoja aika edullisesti usealta
-
kauppiaalta. Eli on ehdottomasti
mahdollista ajaa Kyberia Cortex M3:lla.
-
Tarkoitan, on myös projekti GitHubissa.
sitä kutsutaan pqm3:ksi, jossa on Kyber
suorituskykytesti
-
useille, yeah M3 alustoille, mutta se on
ehdottomasti mahdollista. Minkä parissa
-
juuri nyt työskentelen, testaan sitä Cortex
M3 ja M4 myös sovellustasolla, eli sisällytän
-
sen TLSaan tai KEMTLSaan. Tai on olemassa
paperi WireGuardin käytöstä Kyberillä tai
-
Dilithiumilla esimerkiksi. Se on todellakin
mahdollista. Kysymys, myös aktiivinen alue
-
tutkimuksessa on, kuinka alas pääset? Kuten
kuinka paljon voit optimoida? Koska on useita
-
kompromisseja, kuten haluammeko paljon
tilaa koodille, mutta käyttää vähemmän RAM:ia
-
ja sinulla voi olla näitä kompromisseja
sulautetussa maailmassa. Ja se on jotain
-
mitä aktiivisesti tutkin juuri nyt,
oikeastaan. Mutta on varmasti
-
mahdollista ajaa sitä sulautetuissa
järjestelmissä. Voisimme mennä Cortex M0
-
joka on todella, todella alhainen taso,
mutta Cortex M3 pyörii jo älykorteissa.
-
Eli se on, mitä nykyisin tutkin
ja se todellakin on mahdollista.
-
Mutta kuten sanoin, sinun pitää katsoa
kompromisseja, katsoa kuinka paljon
-
haluat haaskata ROMia, kuinka paljon haaskata
RAMia ja paljonko sinulla on antaa aikaa
-
suoritukselle? Mutta suorituskykytestit
meillä on siellä, kuten sanoin, mene GitHubiin
-
pqm3, on jo aika hyvä, eli se on varmasti
käyttäkelpoinen riippuen käyttötapauksestasi.
-
Toivon, että se vastasi kysymykseen.
Herald: Minä myös. Täällä on toinen kysymys
-
joltain, joka on oikeati jo implementoinut
sen. Joten luen vain nopeasti kysymykset:
-
Implementoin raa'an virhe oppimis kaavan
epäturvallisella "pidä oluttani"-tyylillä.
-
Se näyttää toimivan, mutta näen noin 1%
bitti virheitä selkotekstissä, kuinka oikea
-
implementointi käsittelee laajennettuja
bitti virheitä salauksen purkamisessa?
-
Ruben: Eli helppo vastaus on pyöristämällä.
Eli heität vain pois joitain alimpia bittejä,
-
mutta se oikeasti riippuu järjestelmästä.
Eli jos hän on tehnyt jotain oppimista
-
virheillä. Eli on erilaisia malleja
oppimisessa virheillä. On vaikka
-
rengasoppiminen virheillä, modulo oppiminen
virheillä, oppiminen virheillä,
-
ja se riippuu mitä hän on implementoinut.
Mutta lopulta, juttu joka tuntuu toimivan
-
on, heität vain vähiten merkitykselliset
bitit pois, esimerkiksi, riippuen siitä
-
kuinka montaa virhettä odotat. En tiedä,
Krijn haluatko lisätä jotain?
-
Krijn: Ei, luulen että pärjään hyvin
kysymyksen kanssa.
-
Ruben: Jos ei ole yhtään kysymystä, aion
kysyä sinun kysymyksesi jälkikäteen. Hyvin
-
henkilökohtaisia historiasta. Tiedäthän?
Herald: Siirryn seuraavaan kysymykseen,
-
mutta luulen maallikon näkökulmasta,
että tämä voi liittyä viimeiseen kysymykseen.
-
Kysymys on: Nuo sekvensointi termit on
asetettu olemaan pieniä suhteessa
-
mesh:in koefisientteihin. Kuinka
varmistatte, etteivät ne vaaranna
-
salausta ja että ne ovat valittu
sattumanvaraisesti?
-
Ruben: Taas, olen pahoillani. Minulla oli
pari katkoa, joten en kuullut kysymystä
-
voisitko toistaa sen?
Herald: Toki. Kysymys oli: salainen avain
-
ja virhe termit on asetettu olemaan pieniä
suhteessa viestin koefisientteihin. Kuinka
-
varmistatte, etteivät ne riko salausta
valittuona sattumanvaraisesti?
-
Ruben: Ok, minulla pätki taas, Krijn,
-
saitko sinä kysymyksen? Muuten vastaan
mitä kuulin. Mitä luulen, että luulin
-
kuulleeni.
Krijn: Eli miksi ovat... Miksi eivät
-
pienet... Tosiasia että virhe ja salainen
avain ovet pieniä, miksi se ei vaaranna
-
turvallisuutta? Ja todella, no haluat pitää
virheen melko pienenä voidaksesi
-
ratkaista tämän, tämän lähimmän vektorin
ongelman jonka luonnostelimme. Jos virhe
-
on liian suuri, silloin toinen vektori
voisi olla lähin vektori, sen sijasta jonka
-
haluat olevan. Nyt miksi salaisen avaimen
täytyy olla pieni. On joitain tuloksia, joista
-
tiedämme ettei se tarkoita... Että se ei
vaaranna turvallisuutta pohjimmiltaan
-
mallissa. En tiedä jos, Ruben, sinä voit
tehdä kaksrivisen miksi näin on.
-
Ruben: Eli vastaan kysymykseen kuten aina
tykkään. Me tuomme sisään ne kaikki virhe
termit.
-
Kuinka varmistamme ettei purkaminen ole
viallinen, eikö? Ja tosiaan, se on oikein
-
hyvä kysymys, koska siinä on todistettavasti,
todennäköisestä mitättömän todennäköisestä
-
että siinä on purku virheitä. Kuitenkin,
Kyber on tarpeeksi nopea. Me käsittelemme
-
ne KEM versiossa Kyberistä. Eli mitä me
esittelimme täällä, on julkisen avaimen
-
salaus versio. Standardoitavana on KEM, joka
käyttää sisäisesti julkisen avaimen salauksen
-
versiota ja KEM versiossa, voit olla
varma että tätä ei tapahdu, koska
-
yeah. Vastatakseni tähän kysymykseen,
on olemassa pieni, pieni, mutta merkityksetön
-
mahdollisuus, että sinulla on virhe
purkamisessa, eli siinä tapauksessa oikein
-
hyvä kysymys. Mutta jos olet oikein kiinnostunut,
blogi postaus, tarkoitan, voit ladata kalvot ja
-
siellä on blogiteksti. Esitystä ajatellen,
sanotaan, voit mennä blogi postaukseen
-
ja siellä on Kyber spesifikaation
referenssi. He voivat vain klikata
-
spesifikaatiota ja siellä nähdä, että
se on parametrien virittelyä
-
jotta varmistetaan, että sirotellut virhe
termit eivät mitätöi purkamista
-
tiettyyn, tietyn todennäköisyyden rajoissa.
Ja teemme tämän todennäköisyyden
-
Kyberissä niin matalaksi, ettei sitä
todellisuudessa tapahdu. Vaikka 2 potenssiin...
-
sanotaan vaikka suuruusluokassa jotain,
atomit maapallolla tai jotain antaaksemme
-
käsityksen kuinka suuria numerot ovat. Eli
on hyvin, hyvin pieni mahdollisuus että
-
se tapahtuisi. Mutta hyvä kysymys. Tai
näin ainakin tulkitsin 50% kysymyksestä
-
jonka kuulin.
Herald: Olen pahoillani, meillä vaikuttaa
-
olevan tekninen ongelma.
Ruben: Luulen että se on vain huono
-
yhteys vanhempieni luona.
Herald: Se voi pitää paikkansa, myös
-
minun päässäni on ongelmia. Kysymys sen
jälkeen ja ehkä Krijn voi vain alkaa
-
vastaamaan siihen. Olisiko Kyber rikki
jos joku vain löytäisi yksinkertaisen
-
ratkaisun lähimmän vektorin ongelmaan.
Krijn: Kyllä, mutta me tämän on tapaus,
-
se on aina näin salauksessa. Jos onnistut
ratkaisemaan perustavan ongelman,
-
silloin salausmekanismi hajoaa. Onneksi
lähimmän vektorin ongelmassa
-
meillä on oikein hyvä, meillä on
suuri luottamus tähän ongelmaan, eli osa
-
muista post-quantum järjestelmistä
pohjautuu uudempiin ongelmiin, eli
-
lähimmän vektorin ongelma on näitä paljon
vanhempi. Eli luotamme siihen, meillä on
-
aika hyvä luottamus että sitä ei
helposti rikota tulevina vuosina.
-
Ruben: Eli vastaus on, se on aika hankala,
koska lähimmän vektorin ongelma on NP
-
vaikea. Eli ajattelemme, että se on aika
hyvä ongelma josta lähteä liikkeelle. Mutta
-
kysymys on myös kuinka nämä hilat ovat
suhteessa tiettyihin ilmentymiin
-
lähimmän vektorin ongelmassa? Ja ovatko
nämä tietyt lähimmän sektorin ongelmat
-
ehkä vähän helpompia tai jotain? Mutta
kuten Krijn sanoi, me olemme lähimmän vektorin
-
ongelmassa me luotamme, että tämä ongelma
post-quantum cryptossa on se josta olemme
-
hyvin varmoja. Mutta, yeah, jos ratkaisisit
sen tai jos olet jo ratkaissut sen,
-
Kyber olisi rikki.
Herald: Tuo kuulostaa mahdolliselta
-
kaiverrukselta kolikkoon. "Lähimmän
vektorin ongelmaan luotamme." Ja puhuttaessa
-
luottamuksesta. Kysymys tämän jälkeen:
Luottaisitko tähän Kyber, tähän Kyber
-
algoritmiin suojataksesi kommunikaatiosi
juuri nyt?
-
Ruben: Pitäisikö minun vastata tai Krijin
haluatko sinä, et ole sanonut paljoakaan?
-
Krijn: Minä oikeastaan, kyllä, minulla ei ole.
Eli jos olet epäluuloinen siihen, voit
-
mennä myös. En usko että puhuimme siitä,
mutta voit mennä myös hybridi moodiin
-
nykyisissä klassisissa pre-quantum cryptoissa
ja post-quantum, jos siedät haitat
-
siitä. Mutta henkilökohtaisesti, kyllä
luulen että luottaisin. Ruben, miten sinä?
-
Ruben: Minä luottaisin Kyberiin tällä hetkellä,
mutta siinä... Jos et luota siihen, kuten Krijn
-
sanoi, voit mennä hybridi moodiin, eli
idea, esimerkiksi, TLSaan, ensin tee
-
elliptic curve crypto ja post-quantum
crypto yhdessä, tavallaan siten että
-
vastustaja, hyökkääjän pitäisi murtaa
molemmat vaarantaakseen
-
kommunikaation. Sillä tavoin sinun ei
tarvitse täysin luottaa Kyberiin vielä jos
-
haluat ajaa hybridiä. Mutta tietenkin, ideana
on jossain vaiheessa päästä eroon tästä
-
overheadista ja ajaa vain post-quantum
cryptoa ilman elliptic curve cryptoa lisänä.
-
Mutta, yeah, tarkoitan, minä henkilö-
kohtaisesti käyttäisin sitä juuri nyt. Mutta
-
mitä haluan myös sanoa on, että jokaisen
kryptojärjestelmän alussa, RSA elliptic
-
curve, ei merkitystä. Alussa kaikki ovat
melko epäileviä, eikä kukaan halua
-
käyttää sitä vielä. Ja se on ihan ok.
Niinkuin, se on miten yhteisö toimii.
-
Mutta ajan kuluessa, usein ihmiset saavat
luottamusta.
-
Herald: OK, kiitos. Nyt ajaudumme
spekulatiiviselle alueelle, ja yksi
-
kysymyksistä on, onko teillä mitään
arvausta, mikä järjestelmistä tulee
-
todennäköisesti voittamaan NIST PQC
kilpailun, post-quantum crypto
-
kilpailun?
Ruben: NIST erityisesti sanoo, että se ei
-
ole kilpailu, erittäin tärkeää. Eli Kyber on
yksi voittajista, joita sieltä tulee, mutta
-
se on aika selvää. Ja voit jo nyt nähdä
adoptoinnin oikeassa maailmassa. Toimme
-
kaksi esimerkkiä Amazonille ja BSI:lle, joka
esimerkiksi haluaa sisällyttää sen
-
Thunderbirdiin emailin samaamiseksi. Eli
Kyber tulee olemaan yksi voittajista. Tämä
-
on minun... ei ainoa mielipide, mutta yeah,
se on selvää. Ja muuten, luulen McEliece,
-
joka on koodi pohjainen jörjestelmä, joka
on aika suuri kaikin mitoin, sanotaan näin.
-
Mutta ihmisillä tuntuu olevan enemmän
luottamusta siihen, koska se on ollut
täällä pidempään.
-
Yeah, ja sanoisin noin KEMeille ja kaikki
ovat aika tyytymättömiä allekirjoituksiin.
-
Eli en usko, että tulee olemaan alle-
kirjoituksia standardoituna tänä- tai
-
ensi vuoden alussa. Mutta Krijn, en tiedä
ehkä sinulla on arvaus ?
-
Krijn: Ei, en ole kovin spekulatiivinen
persoona, mutta mielestäni Rubenin
-
vastaus oli hyvä vastaus.
Ruben: Nyt sinun tosiaan täytyy
-
spekuloida, tarkoitan come on, et voi
vain ratsastaa vastauksellani.
-
Krijn: en, tietenkin voin. On kiinnostavaa
huomata oikeastaan, että allekirjoituksille
-
ei ole niin kova kiire, sanotaanko.
Se on erityisesti tämä avainten vaihto
-
jonka haluamme tehdä post-quantumiksi
niin nopeasti kuin mahdollista, ehkä, tai
-
tai ainakin standardoida nopeasti ja sitten
integroida sen mitä ikinä rakennammekin.
-
No allekirjoituksiin on hieman enemmä aikaa,
joten meillä on myös aikaa keksiäksemme
-
parempia ratkaisuja siihen tai analysoida
nykyisiä ratkaisuja vähän enemmän.
-
Ruben: Yeah, se on koska tarkoitan
mainitsimmme hyökkäysmallin, iso
-
valtiollinen laitos, esimerkiksi. Ja avain
vaihto pitää korjata heti, koska se
-
voidaan rikkoa myöhemmin ja sitten
kommunikaatio voidaan purkaa. Mutta
-
allekirjoitukset, niillä on lyhyt elinikä,
esimerkiksi, ja niitä käytetään
-
myös autentikointiin. Eli tarvitsisit
aktiivisen vastustajan. Ja se, yeah. Et voi
-
tallentaa nyt ja sitten toteuttaa aktiivisen
hyökkäyksen 10 vuoden päästä, niin kuin,
-
se ei toimi. Eli meillä on enemmän aikaa,
yeah.
-
Herald: No se ei ole täysin totta.
On monia valtioita, jotka käyttävät ja
-
puhun allekirjoituksista, ei hetkellisessä
käytöstä, online käytössä, vaan enemmän
-
allekirjoitusten käyttämisestä, esimerkiksi
dokumenttien allekirjoittamisessa. Ja siihen
-
hyökkäykset olisivat silti relevantteja
tulevaisuudessa.
-
Ruben: Jos niillä on, no, jos niissä on
pitkä elinkaari, yleensä allekirjoituksissa
-
tai avaimissa ainakin, allekirjoitusten, ne
vanhenevat jossain vaiheessa. Mutta, tietenkin
-
jos sinulla on, sinulla on allekirjoituksia,
joissa ei ole vanhenemispäivää tai jotain,
-
sitten ne olisivat uhan alla myöskin.
Herald: Dokumenttien allekirjoituksessa
-
sinulla on allekirjoituksia, joissa on paljon
pidempi elinikä, kuin mitä tyypillisillä
-
web transaktioilla, esimerkiksi. Mutta
nyt olen täysin putoamassa roolista
-
Heraldina, joka on vain astia kysymyksille
yleisöstä.
-
Ruben: Mutta totta kai, tämä kiinnostaa
meitä myös.
-
Herald: Ja luulen, että viimeisessä versiossa
ainakin, luulen, että tämä on viimeinen
-
kysymys, ellei siellä ole lisää IRC:ssa,
eli ihmisten pitää olla nopeita jos he
-
haluavat vielä lisää kysymyksiä. Mutta
viimeiset kysymykset ovat hyvin käytännöllisiä.
-
Ja periaatteessa, onko teillä mitään ajatuksia
sudenkuopista Kyberin implementoinnissa vielä?
-
Onko teillä ehdotuksia sen varmistamiseen
että se implementoidaan turvallisesti? Tai
-
onko se mahdollista vain implementoida naivisti?
Ruben: Eli, tämä on aina suuri taistely
-
kryptografia yhteisössä, koska on ihmisiä,
jotka sanovat, oh, on vain kourallinen
-
valittuja ihmisiä, jotka pystyvät implementoimaan
sen turvallisesti. Ja sinun ei pitäisi koskaan
-
ikinä, ikinä, tehdä sitä itse. Olen tämän
toisella puolella, mielestäni ihmisten
-
pitäisi leikkiä implementoinnilla. Kokeilla
sitä. Eli, Kyber on järjestelmien joukossa
-
että se ehdottomasti, sanotaan, että helpompi
implementoida oikealla tavalla. Kuitenkin, se
-
riippuu missä aiot käyttää sitä, koska
sinun täytyy ottaa myös sivukanavat
-
huomioon, erityisesti jos työskentelet
sulautetuilla alustoilla, kuten voima-analyysi
-
ja sen sellaiset. Eli tätä myös tarkastellaan
paljon. Ja sitten jos menet sellaiseen
-
implementaatioon, sinulla pitäisi olla
naamioitu implementaatio. Eli tämä
-
olisi kokonaan oma esityksensä. En oikein
halua niinkuin antaa sivulle kahta verbiä
-
mitä sinun pitäisi tehdä ja sitten sanoa
että se on turvallinen. Tarkoitan, se on
-
vähän monimutkaisempaa. Eli en voi oikeasti
sanoa tee tämä ja tuo. Voin vain sanoa
-
spektrumissa helposta vaikeaan, Kyber on
enemmän reunassa helpompi implementoida
-
turvallisesti. Mutta jos olet kiinnostunut
siitä, katso implementointeja.
-
Siellä on referenssi implementaatio. Siellä
on PQClean ja muuta.
-
Etsi implementointeja online ja tutki
niitä ja katso spesifikaatiota, joka on
-
linkattu blog postaukseen, se on linkattu
kalvoihin. Siellä on myös joitain asioita
-
jotka sanovat mitä sinun ehkä pitäisi,
missä sinun pitäisi olla varovainen, sanotaan.
-
Herald: OK. Ja täällä oli juuri lisä
kysymys myös, ja se on, mikä
-
on Kyberin status OpenSSL:ssa ja GnuTLS:sa
-
Ruben: Okei, me näemme adoption crypto
kirjastoissa, mutta OpenSSL. OK, en halua
-
vihata, mutta OpenSSL koodipohja on, kuinka
sanon sen? Katso, se on vähän monimutkainen
-
ja vähän vaikea ulkopuoliselle tajuta mitä
OpenSSL tekee tietyissä nurkissa omassa
-
koodipohjassaan. Mutta on projekti
nimeltään OpenOQS, ei LibOQS, se on haara
-
OpenSSL:sta, sisältäen post-quantum kaavat,
mutta ei ainoastaan Kyberiä, mutta useat
-
järjestelmät. Se on LibOQS, se on OpenSSL
haara. On myös muita kirjastoja, esimerkiksi
-
WolfSSL, jolla on pienempi koodipohja ja
heillä on jo se heidän oikeassa julkaisussa
-
tai heidän pääoksassa, sanotaan, Gitissa,
heillä on jo NTLS post-quantum kaavat,
-
ja Kyber on yksi niistä. Heillä on
hila pohjaisia järjestelmiä, jos
-
muistan oikein: Kyber, Dilithium ja
Falcon. Joten he ovat ne jo sisällyttäneet.
-
WolfSSL, OpenSSL, kuten sanoin siinä on
haara joka on suorituskyky mittaukseen ja
-
asioiden testaamiseen, siinä toivossa että
myöhemmin ne palaavat OpenSSLaan. Mutta
-
kuten sanoin, OpenSSL ei ole oikein ideaali
kokeiluille, koska koodipohja on aika
-
suuri ja joissain nurkissa, aika monimutkainen
ymmärtää ja niin edelleen. Muut kirjastot
-
ovat vähän nopeampia. En tiedä mitään
pyrkimyksistä GnuTLSaan ollakseni rehellinen,
-
mutta en ole katsonut sinnepäin vielä. On
mahdollista, että joku muu on tehnyt
-
jotain siellä. Tarkoitan, olen työskennellyt
WolfSSL kanssa ennen ja OpenSSL kanssa.
-
Mutta GnuTLS en ole varma. On ollut puhetta
sisällyttää se GnuPGhen, jota voit käyttää
-
email salaukseen, ja siellä on, siinä on
jotain edistymistä. Mutta, yeah, GNUTLS
-
minä en tiedä.
Herald: Okei, tämä tuo meidät meidän
-
oikeasti viimeiseen kysymykseen, joka on,
kuinka lähellä ovat nykyiset pilvi kvantti
-
tarjonnat kyetäkseen mahdollistamaan käyttäjien
rikkoa nykyiset julkisen avaimen kryptografiat?
-
Ruben: Jos ymmärsin oikein, Krijn voit
myös sanoa jotain jos haluat, jos
-
ymmärsin oikein, se on yleinen kysymys.
Jos voin käyttää pilvilaskentaa
-
murtaakseni julkisen avaimen salauksen?
Herald: Ei, kysymys on tarkempi. on
-
olemassa kvantti palveluita julkisilla
pilvitarjoajilla, kuten Amazon juuri nyt,
-
ilmeisesti. Ainakin näin oletan henkilön
joka esitti kysymyksen pohjustavan sen.
-
Ja kysymys on, missä määrin nuo saatavilla
olevat vaihtoehdot ovat käytettävissä
-
rikkomaan nykyiset julkisen avaimen
kryptografian järjestelmät?
-
Ruben: Eli jos ymmärsin kysymyksen oikein,
kuten, jo käyttöön otetut kvantti
-
tietokoneet, ovatko ne uhka pre-quantum
järjestelmille? OK, toistaiseksi ne
-
eivät, kvantti tietokoneita on käytössä,
mutta niissä ei ole lähellekään riittävästi
-
qbittejä murtaakseen mitään oikean maailman
järjestelmää, eli se on monimutkaisempaa kuin
-
se, koska et tarvitse vain qbittejä, tarvitset
myös kvantti rekistereitä, jotka ovat riittävän
-
suuria, koska sinun pitää sotkea kaikki
qbitit. Tarkoitan, olemme menossa
-
kvanttimekaniikkaan, mutta meidän pitää
sotkea bitit ja kaikkea sellaista kvantti
-
hulluutta. Ja sitten tarvtset myös virheen
korjauksen, joka on riittävän hyvä. Eli on
-
vielä, vielä on monia teknisiä, kuten
suunnittelu ongelmia, joita pitää
-
ratkaista, teoriassa kaikki on hienosti ja
silleen, mutta siinä on suunnittelu
-
työtä, josta pitää päästä yli ja nyt
asennetut kvantti tietokoneet eivät ole
-
tarpeeksi suuria ollakseen uhka kvantille,
pre-quantum järjestelmille, ellei sinulla
-
ole leikki avainsummia. Mutta oikeissa
asennuksissa, se ei ole uhka vielä, mutta
-
se voisi olla seuraavan parin vuoden aikana.
On hyvin vaikeaa ennakoida kehitystä
-
siinä ja suurimmat kvantti tietokoneet
ovat oikeastaan kvantti hehkuttajia, jotka
-
toimivat eri tavalla, niinkuin kvantti
hehkutus on eri asia, erilainen
-
kvantti tietokone, josta emme ole liian
huolissamme juuri nyt.
-
Kuten se D-Wave esimerkiksi. Mutta, yeah,
Eli juuri nyt, ne eivät ole uhka, mutta
-
voivat olla parin vuoden päästä tulevaisuudessa.
Krijn: Ja erityisesti niin suhteessa siihen miksi
-
vaihdat post-quantum cryptoon, on
tämä ajatus myös, standardoida crypto
-
ja sitten integroida crypto ja kaikki
tämä kestää vuosia kuten tiedämme
-
siitrymisestä elliptic curve cryptoon.
Eli vaikka tämä kvantti tietokone
-
on 10, 15 vuoden päässä, silti tämä
koko transitio tulee kestämään niin
-
pitkään, että sen jälkeen, kuinka kauan sinun
alkuperäisen datan täytyy olla turvassa?
-
Se on jokaisen arvaus.
Ruben: Yeah, tarkoitan, sinun täytyy
-
ymmärtää, asymmetrinen crypto on kaikkialla,
kuten esimerkiksi, myös yksi esimerkki voi olla
-
passini, kuten matkadokumenttini. Ja on
dokumentteja, esimerkiksi, tuolla jotka
-
ovat voimassa 10 vuotta, kuten, luulen
kunnollinen passi ja sellaiset jutut.
-
Ja tietenkin, ja kestää todella kauan myös
sen kaltaisten asioiden kanssa, kuten
-
dokumenttien, jotka on myöntänyt hallinto.
Siinä vain kestää aikaa, siihen menee
-
paljon aikaa.
Herald: OK, kiitos teille paljon. Minun
-
pitäisi myös mainita, että signal angelilta,
on ollut useita hyvin innostuneita
-
vastauksia yleisöstä ja ei niin paljon
kysymyksiä esityksestänne, se on myös
-
hyvin mielenkiintoista. Eli kiitos teille
paljon kun teitte tämän ja ehkä
-
näemme teitä taas.
Krijn: Kiitoksia
-
Ruben: Hei hei!
-
rC3 loppumusiikki
-
Translated by Esa Lammi
(KYBS2004 course assignment at JYU.FI)