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)