EITC/IS/CCF Classical Cryptography Fundamentals on eurooppalainen IT-sertifiointiohjelma, joka käsittelee klassisen salauksen teoreettisia ja käytännöllisiä näkökohtia, mukaan lukien sekä yksityisen että julkisen avaimen salaus, ja jossa tutustutaan Internetissä yleisesti käytettyihin käytännön salakirjoihin, kuten esim. RSA.
EITC/IS/CCF Classical Cryptography Fundamentals -kurssin opetussuunnitelma kattaa johdannon yksityisen avaimen salaukseen, modulaariseen aritmeettiseen ja historialliseen salaukseen, stream-salaukseen, satunnaislukuihin, One-Time Padin (OTP) ehdoitta turvalliseen salaukseen (olettaen, että se tarjoaa ratkaisun avainten jakeluongelmaan, kuten antaa esim. Quantum Key Distribution, QKD), lineaariset palautesiirtorekisterit, Data Encryption Standard (DES-salaus, mukaan lukien salaus, avainaikataulu ja salauksen purku), Advanced Encryption Standard (AES, Galois-kenttien käyttöönotto) perustuva salaus), lohkosalausten sovellukset (mukaan lukien niiden toimintatavat), useiden salausten ja raa'an voiman hyökkäysten huomioiminen, lukuteorian, euklidisen algoritmin, Eulerin Phi-funktion ja Eulerin lauseen kattavan julkisen avaimen kryptografian perustelut sekä johdatus RSA-salausjärjestelmään ja tehokas eksponentio seuraavalla rakenteella, joka sisältää kattavan videodidaktisen c viitteenä tälle EITC-sertifioinnille.
Kryptografialla tarkoitetaan keinoja turvalliseen viestintään vastustajan läsnä ollessa. Kryptografia laajemmassa merkityksessä on prosessi, jossa luodaan ja analysoidaan protokollia, jotka estävät kolmansia osapuolia tai suurta yleisöä pääsemästä yksityisiin (salattuihin) viesteihin. Nykyaikainen klassinen kryptografia perustuu useisiin tietoturvallisuuden pääpiirteisiin, kuten tietojen luottamuksellisuus, tietojen eheys, autentikointi ja kiistämättömyyteen. Toisin kuin kvanttisalaus, joka perustuu radikaalisti erilaisiin luontoa kuvaaviin kvanttifysiikan sääntöihin, klassisella kryptografialla tarkoitetaan klassiseen fysiikan lakeihin perustuvaa kryptografiaa. Matematiikan, tietojenkäsittelytieteen, sähkötekniikan, viestintätieteen ja fysiikan alat kohtaavat kaikki klassisessa kryptografiassa. Sähköinen kaupankäynti, sirupohjaiset maksukortit, digitaaliset valuutat, tietokoneiden salasanat ja sotilaallinen viestintä ovat kaikki esimerkkejä salaussovelluksista.
Ennen nykyistä aikakautta kryptografia oli lähes synonyymi salaukselle, mikä muutti tiedon luettavasta käsittämättömäksi hölynpölyksi. Jotta hyökkääjät eivät pääse käsiksi salattuun viestiin, lähettäjä jakaa koodinpurkuprosessin vain tarkoitettujen vastaanottajien kanssa. Salauskirjallisuudessa käytetään usein nimiä Alice ("A") lähettäjälle, Bob ("B") tarkoitetulle vastaanottajalle ja Eve ("salakuuntelija") vastustajalle.
Kryptografiamenetelmistä on tullut yhä monimutkaisempia ja sen sovellukset ovat monipuolistuneet siitä lähtien, kun roottorisalauskoneet kehitettiin ensimmäisessä maailmansodassa ja tietokoneet otettiin käyttöön toisessa maailmansodassa.
Nykyaikainen kryptografia on vahvasti riippuvainen matemaattisesta teoriasta ja tietojenkäsittelytieteen käytännöstä; kryptografiset menetelmät rakentuvat laskennallisten kovuusoletusten ympärille, mikä tekee niistä vaikeaksi kenenkään vastustajan murtaa käytännössä. Vaikka murtautuminen hyvin suunniteltuun järjestelmään on teoriassa mahdollista, käytännössä se on mahdotonta. Tällaisia järjestelmiä kutsutaan "laskennallisesti turvallisiksi", jos ne on rakennettu riittävästi; kuitenkin teoreettiset läpimurrot (esim. parannukset kokonaislukujen kertolaskumenetelmissä) ja nopeampi laskentatekniikka edellyttävät näiden suunnitelmien jatkuvaa uudelleenarviointia ja tarvittaessa mukauttamista. On olemassa tietoteoreettisesti turvallisia järjestelmiä, kuten kertaluontoinen alusta, jotka voidaan todistaa rikkoutumattomiksi jopa äärettömällä laskentateholla, mutta niitä on käytännössä huomattavasti vaikeampi käyttää kuin parhaita teoreettisesti särkyviä mutta laskennallisesti turvallisia järjestelmiä.
Tietojen aikakaudella kryptografisen tekniikan edistyminen on tuonut monenlaisia oikeudellisia haasteita. Monet maat ovat luokitelleet kryptografian aseeksi, rajoittaen tai kieltäen sen käytön ja viennin sen mahdollisen vakoilun ja kapinoinnin vuoksi. Tutkijat voivat pakottaa luovuttamaan tutkinnan kannalta olennaisten asiakirjojen salausavaimet joissakin paikoissa, joissa salaus on laillista. Digitaalisen median tapauksessa kryptografialla on myös keskeinen rooli digitaalisten oikeuksien hallinnassa ja tekijänoikeusrikkomusristiriidoissa.
Termiä "cryptograph" (toisin kuin "cryptogrammi") käytettiin ensimmäisen kerran XNUMX-luvulla Edgar Allan Poen novellissa "The Gold-Bug".
Viime aikoihin asti kryptografia viittasi lähes yksinomaan "salaukseen", joka on tapa muuttaa tavallinen tieto (tunnetaan nimellä "plaintext") lukukelvottomaksi muotoon (kutsutaan salatekstiksi). Salauksen purkaminen on salauksen vastakohta, eli siirtyminen käsittämättömästä salatekstistä selväksi tekstiksi. Salaus (tai salaus) on joukko tekniikoita, jotka suorittavat salauksen ja salauksen purkamisen käänteisessä järjestyksessä. Algoritmi ja kussakin tapauksessa "avain" ovat vastuussa salauksen yksityiskohtaisesta suorituksesta. Avain on salaisuus (mieluiten vain kommunikaattorit tuntevat), jota käytetään salakirjoituksen purkamiseen. Se on yleensä merkkijono (mieluiten lyhyt, jotta käyttäjä voi muistaa sen). "Salausjärjestelmä" on järjestetty kokoelma äärellisten mahdollisten selkeiden tekstien elementtejä, salatekstejä, avaimia ja salaus- ja salauksenpurkumenettelyjä, jotka vastaavat kutakin avainta muodollisesti matemaattisesti. Avaimet ovat tärkeitä sekä muodollisesti että käytännössä, koska kiinteillä avaimilla varustetut salaukset voidaan helposti rikkoa käyttämällä vain salauksen tietoja, mikä tekee niistä hyödyttömiä (tai jopa haitallisia) useimpiin tarkoituksiin.
Historiallisesti salauksia käytettiin usein ilman lisätoimenpiteitä, kuten salauksen tai salauksen purkamisen todentamista tai eheystarkastuksia. Kryptosysteemit jaetaan kahteen luokkaan: symmetrisiin ja epäsymmetrisiin. Samaa avainta (salaista avainta) käytetään viestin salaamiseen ja salauksen purkamiseen symmetrisissä järjestelmissä, jotka olivat ainoita tunnettuja 1970-luvulle asti. Koska symmetriset järjestelmät käyttävät lyhyempiä avainten pituuksia, tietojen käsittely symmetrisissä järjestelmissä on nopeampaa kuin epäsymmetrisissä järjestelmissä. Epäsymmetriset järjestelmät salaavat viestinnän "julkisella avaimella" ja purkaa sen käyttämällä samanlaista "yksityistä avainta". Epäsymmetristen järjestelmien käyttö parantaa viestinnän turvallisuutta, koska näiden kahden avaimen välistä suhdetta on vaikea määrittää. RSA (Rivest-Shamir-Adleman) ja ECC ovat kaksi esimerkkiä epäsymmetrisistä järjestelmistä (Elliptic Curve Cryptography). Laajalti käytetty AES (Advanced Encryption Standard), joka korvasi aikaisemman DES:n, on esimerkki korkealaatuisesta symmetrisestä algoritmista (Data Encryption Standard). Erilaiset lasten kielen sotkeutumistekniikat, kuten sian latina tai muu cant, ja itse asiassa kaikki salausmenetelmät, olivatpa ne kuinka vakavasti tarkoitetut tahansa, mistä tahansa lähteestä ennen kertaluontoisen tyynyn käyttöönottoa XNUMX-luvun alussa, ovat esimerkkejä huonosta laadusta. symmetriset algoritmit.
Termiä "koodi" käytetään usein puhekielessä viittaamaan mihin tahansa salaus- tai viestin piilotustekniikkaan. Kuitenkin kryptografiassa koodi viittaa selkeän tekstin yksikön (eli merkityksellisen sanan tai lauseen) korvaamiseen koodisanalla (esimerkiksi "wallaby" korvaa sanan "hyökkäys aamunkoitteessa"). Sitä vastoin salateksti luodaan muokkaamalla tai korvaamalla tämän tason alapuolella oleva elementti (esimerkiksi kirjain, tavu tai kirjainpari) salatekstin muodostamiseksi.
Kryptanalyysi tutkii tapoja purkaa salattua dataa ilman, että sinulla on pääsy siihen tarvittavaan avaimeen; Toisin sanoen se on tutkimus siitä, kuinka salausjärjestelmiä tai niiden toteutustapoja "rikotaan".
Englanniksi jotkut ihmiset käyttävät termejä "cryptography" ja "cryptology", kun taas toiset (mukaan lukien Yhdysvaltain sotilaskäytäntö yleensä) käyttävät "salausta" viittaamaan salaustekniikoiden käyttöön ja harjoittamiseen ja "cryptology" viittaamaan yhdistettyyn kryptografian ja kryptoanalyysin tutkimus. Englanti on mukautuvampi kuin monet muut kielet, joissa "kryptologiaa" (salatustutkijien harjoittamana) käytetään aina toisessa merkityksessä. Steganografia sisältyy joskus kryptologiaan RFC 2828:n mukaan.
Kryptolingvistiikka on tutkimus kielen ominaisuuksista, joilla on jonkin verran merkitystä kryptografiassa tai kryptologiassa (esimerkiksi taajuustilastot, kirjainyhdistelmät, universaalit kuviot ja niin edelleen).
Kryptografialla ja kryptoanalyysillä on pitkä historia.
Salauksen historia on pääartikkeli.
Ennen modernia aikakautta kryptografiassa oli ensisijaisesti kysymys viestien luottamuksellisuudesta (eli salauksesta) – viestien muuntamisesta ymmärrettävästä käsittämättömään muotoon ja jälleen kerran, mikä teki niistä lukukelvottomia sieppaajille tai salakuuntelijoille ilman salaista tietoa (eli salauksen purkamiseen tarvittavaa avainta). tuosta viestistä). Salaus on suunniteltu pitämään vakoojien, sotilasjohtajien ja diplomaattien keskustelut yksityisinä. Viime vuosikymmeninä tieteenala on laajentunut sisältämään muun muassa viestin eheyden tarkistamisen, lähettäjän/vastaanottajan henkilöllisyyden todentamisen, digitaaliset allekirjoitukset, interaktiiviset todisteet ja suojatun laskennan tekniikat.
Kaksi yleisintä klassista salaustyyppiä ovat transponointisalaukset, jotka järjestelmällisesti korvaavat kirjaimia tai kirjainryhmiä muilla kirjaimilla tai kirjainryhmillä (esim. "hello world" muuttuu "ehlol owrdl" triviaalin yksinkertaisessa uudelleenjärjestelyjärjestelmässä), ja korvaussalaukset, jotka järjestelmällisesti korvaavat kirjaimia tai kirjainryhmiä muilla kirjaimilla tai kirjainryhmillä (esim. "lentää kerralla" muuttuu "gmz bu:ksi Kummankaan yksinkertaiset versiot eivät ole koskaan tarjonneet paljon yksityisyyttä viekkailta vastustajilta. Caesar-salaus oli varhainen korvaava salaus, jossa jokainen kirjain selkeässä tekstissä korvattiin kirjaimella tietyn määrän aakkosia alaspäin. Suetoniuksen mukaan Julius Caesar käytti sitä kolmen miehen vuorossa kommunikoidakseen kenraalien kanssa. Varhainen heprealainen salakirjoitus, Atbash, on esimerkki. Vanhin tunnettu kryptografian käyttötapa on kiveen kaiverrettu salateksti Egyptissä (noin 1900 eaa.), mutta on mahdollista, että tämä tehtiin lukutaitoisten katsojien huviksi. ja salata tietoa.
Klassisten kreikkalaisten kerrotaan tunteneen kryptat (esim. Spartan armeijan väitettiin käyttäneen skytale-transponointisalausta). Steganografia (käytäntö piilottaa jopa viestinnän läsnäolo sen pitämiseksi yksityisenä) keksittiin myös muinaisina aikoina. Herodotuksen mukaan lause, joka on tatuoitu orjan ajeltuun päähän ja piilotettu kasvaneiden hiusten alle. Näkymättömän musteen, mikropisteiden ja digitaalisten vesileimojen käyttö tiedon piilottamiseen ovat uudempia steganografian esimerkkejä.
Kautiliyam ja Mulavediya ovat kahden tyyppisiä salauksia, jotka mainitaan Intian 2000 vuotta vanhassa Vtsyyanan Kamasutrassa. Kautiliyamin salakirjoituskorvaukset perustuvat foneettisiin suhteisiin, kuten vokaalien muuttumiseen konsonanteiksi. Mulavediyan salaaakkoset sisältävät yhteensopivia kirjaimia ja vastavuoroisia kirjaimia.
Muslimitutkijan Ibn al-Nadimin mukaan Sassanid-Persialla oli kaksi salaista kirjoitusta: h-dabrya (kirjaimellisesti "kuninkaan kirjoitus"), jota käytettiin viralliseen kirjeenvaihtoon, ja rz-saharya, jota käytettiin salaisten viestien vaihtamiseen muiden kanssa. maat.
David Kahn kirjoittaa kirjassaan The Codebreakers, että nykyaikainen kryptologia sai alkunsa arabeista, jotka olivat ensimmäisiä, jotka dokumentoivat huolellisesti kryptanalyyttiset menettelyt. Kryptografisten viestien kirjan on kirjoittanut Al-Khalil (717–786), ja se sisältää varhaisimman permutaatioiden ja yhdistelmien käytön luetteloimaan kaikki ajateltavissa olevat arabian sanat vokaalilla ja ilman.
Klassisella salakirjoituksella generoidut salatekstit (samoin kuin jotkin nykyaikaiset salaukset) paljastavat tilastotietoa selkeästä tekstistä, jota voidaan käyttää salauksen murtamiseen. Älykäs hyökkääjä saattoi murtaa lähes kaikki tällaiset salaukset taajuusanalyysin löytämisen jälkeen, mahdollisesti arabimatemaatikko ja polymatemaattinen Al-Kindi (tunnetaan myös nimellä Alkindus) 9-luvulla. Klassiset salakirjoitukset ovat edelleen suosittuja tänään, vaikkakin suurelta osin pulmapelinä (katso kryptogrammi). Risalah fi Istikhraj al-Mu'amma (Käsikirjoitus kryptografisten viestien purkamiseen) on Al-Kindi kirjoittama, ja se dokumentoi ensimmäisen tunnetun taajuusanalyysin kryptaanalyysitekniikoiden käytön.
Jotkut laajennetun historian salausmenetelmät, kuten homofoninen salaus, joilla on taipumus tasoittaa taajuusjakaumaa, eivät ehkä hyödy kielen kirjainten taajuuksista. Kielten kirjainryhmien (tai n-grammien) taajuudet voivat antaa hyökkäyksen kyseisille salakirjoille.
Ennen kuin moniaakkosinen salaus löydettiin, varsinkin Leon Battista Alberti noin vuonna 1467, käytännössä kaikki salaukset olivat käytettävissä kryptausanalyysissä taajuusanalyysimenetelmää käyttäen, vaikka on olemassa todisteita siitä, että se oli jo Al-Kindin tiedossa. Alberti keksi idean käyttää erillisiä salausaakkosia (tai korvaavia aakkosia) viestinnän eri osissa (ehkä jokaiselle peräkkäiselle selväkieliselle kirjaimelle rajalla). Hän loi myös ensimmäisen automaattisen salauslaitteen, pyörän, joka toteutti osan hänen suunnittelustaan. Vigenère-salauksen, moniaakkosisen salauksen, salausta ohjaa avainsana, joka ohjaa kirjainten korvaamista sen mukaan, mitä avainsanan kirjainta käytetään. Charles Babbage osoitti, että Vigenère-salaus oli haavoittuvainen Kasiski-analyysille XNUMX-luvun puolivälissä, mutta Friedrich Kasiski julkaisi havaintonsa kymmenen vuotta myöhemmin.
Huolimatta siitä, että taajuusanalyysi on tehokas ja laaja tekniikka monia salauksia vastaan, salaus on pysynyt käytännössä tehokkaana, koska monet mahdolliset kryptanalyytikot eivät ole tietoisia tekniikasta. Viestin rikkominen käyttämättä taajuusanalyysiä vaati tietoa käytetystä salauksesta ja mahdollisesti asiaan liittyvästä avaimesta, mikä teki vakoilusta, lahjonnasta, murtovarkaudesta, loikkauksesta ja muista kryptanalyyttisesti tietämättömistä taktiikoista houkuttelevampia. Salausalgoritmin salaisuus tunnustettiin lopulta 19-luvulla ei järkeväksi eikä toteuttamiskelpoiseksi takueksi viestien turvallisuudesta. Itse asiassa minkä tahansa sopivan salausjärjestelmän (mukaan lukien salaukset) tulee pysyä suojattuna, vaikka vastustaja ymmärtäisi täysin itse salausalgoritmin. Avaimen turvallisuuden tulee olla riittävä, jotta hyvä salaus säilyttää luottamuksellisuuden hyökkäyksen edessä. Auguste Kerckhoffs ilmaisi tämän perusperiaatteen ensimmäisen kerran vuonna 1883, ja se tunnetaan Kerckhoffin periaatteena; Vaihtoehtoisesti, ja suoremmin, Claude Shannon, informaatioteorian ja teoreettisen kryptografian perusteiden keksijä, toisti sen Shannonin Maximina - "vihollinen tuntee järjestelmän."
Salausten avuksi on käytetty monia fyysisiä laitteita ja apuvälineitä. Muinaisen Kreikan scytale, spartalaisten väitetysti käyttämä sauva transponoinnin salaustyökaluna, saattoi olla yksi ensimmäisistä. Keskiajalla kehitettiin muitakin apuvälineitä, kuten salaussäleikkö, jota käytettiin myös steganografiaan. Moniaakkosten salakirjoituksen kehittyessä saataville tuli kehittyneempiä apuvälineitä, kuten Albertin salauslevy, Johannes Trithemiuksen tabula recta -järjestelmä ja Thomas Jeffersonin pyöräsalaus (ei julkisesti tiedossa, ja Bazeries keksi uudelleen itsenäisesti noin 1900). Monia mekaanisia salaus-/salauksenpurkujärjestelmiä kehitettiin ja patentoitiin 1920-luvun alussa, mukaan lukien roottorikoneet, joita Saksan hallitus ja armeija käyttivät tunnetusti XNUMX-luvun lopulta toiseen maailmansotaan. Ensimmäisen maailmansodan jälkeen näiden konemallien korkealaatuisemmissa tapauksissa käyttöönotetut salaukset johtivat kryptanalyyttisten vaikeuksien huomattavaan kasvuun.
Kryptografia keskittyi ensisijaisesti kielellisiin ja leksikografisiin malleihin ennen XNUMX-luvun alkua. Sittemmin painopiste on kehittynyt, ja kryptografia sisältää nyt informaatioteorian, laskennallisen monimutkaisuuden, tilastojen, kombinatoriikan, abstraktin algebran, lukuteorian ja yleensä äärellisen matematiikan näkökohdat. Kryptografia on eräänlainen suunnittelu, mutta se on ainutlaatuinen siinä mielessä, että se käsittelee aktiivista, älykästä ja vihamielistä vastustusta, kun taas muun tekniikan (kuten rakennus- tai kemiantekniikan) on vain käsiteltävä neutraaleja luonnonvoimia. Myös kryptografian vaikeuksien ja kvanttifysiikan välistä yhteyttä tutkitaan.
Digitaalisten tietokoneiden ja elektroniikan kehitys auttoi kryptausanalyysiä mahdollistamalla huomattavasti kehittyneempien salausten luomisen. Lisäksi toisin kuin perinteiset salaukset, jotka salasivat yksinomaan kirjoitetun kielen tekstit, tietokoneet sallivat kaiken tyyppisen datan salauksen, joka voitiin esittää missä tahansa binäärimuodossa; tämä oli uutta ja tärkeää. Sekä salaussuunnittelussa että krypta-analyysissä tietokoneet ovat niin syrjäyttäneet kielen kryptografian. Toisin kuin klassiset ja mekaaniset menetelmät, jotka ensisijaisesti käsittelevät perinteisiä merkkejä (eli kirjaimia ja numeroita) suoraan, monet tietokonesalaukset toimivat binääribittisekvensseillä (joskus ryhmissä tai lohkoissa). Tietokoneet sen sijaan ovat auttaneet kryptausanalyysiä, joka on osittain kompensoinut lisääntyneen salauksen monimutkaisuuden. Tästä huolimatta hyvät nykyaikaiset salaukset ovat pysyneet kryptausanalyysin edellä; usein on niin, että hyvän salauksen käyttö on erittäin tehokasta (eli nopeaa ja vaatii vähän resursseja, kuten muistia tai prosessorikapasiteettia), kun taas sen murtaminen vaatii monta suuruusluokkaa suurempia ponnistuksia ja huomattavasti suurempia kuin mitä tahansa klassinen salaus, mikä tekee kryptausanalyysin mahdottomaksi.
Moderni kryptografia tekee debyyttinsä.
Uusien mekaanisten laitteiden kryptausanalyysi osoittautui haastavaksi ja aikaa vieväksi. Toisen maailmansodan aikana Bletchley Parkissa Yhdistyneessä kuningaskunnassa tapahtuneet kryptanalyyttiset toimet edistivät tehokkaampien menetelmien keksimistä toistuvien tehtävien suorittamiseen. Colossus, maailman ensimmäinen täysin elektroninen, digitaalinen, ohjelmoitava tietokone, kehitettiin auttamaan Saksan armeijan Lorenz SZ40/42 -koneen luomien salausten purkamisessa.
Kryptografia on suhteellisen uusi avoimen akateemisen tutkimuksen ala, joka on alkanut vasta 1970-luvun puolivälissä. IBM:n työntekijät kehittivät algoritmin, josta tuli liittovaltion (eli Yhdysvaltain) tietojen salausstandardi; Whitfield Diffie ja Martin Hellman julkaisivat keskeisen sopimusalgoritminsa; ja Martin Gardnerin Scientific American -kolumni julkaisi RSA-algoritmin. Kryptografian suosio on sittemmin kasvanut viestintätekniikana, tietokoneverkkoina ja yleisesti tietoturvana.
Abstraktin matematiikan kanssa on syvät siteet, koska useat nykyaikaiset salausmenetelmät voivat pitää avaimensa salassa vain, jos tietyt matemaattiset ongelmat ovat ratkaisemattomia, kuten kokonaislukujen tekijöihin perustuva laskenta tai diskreetti logaritmiongelmat. On vain kourallinen kryptojärjestelmiä, joiden on osoitettu olevan 100 % turvallisia. Claude Shannon osoitti, että kertakäyttöinen tyyny on yksi niistä. On olemassa muutamia avainalgoritmeja, joiden on osoitettu olevan turvallisia tietyissä olosuhteissa. Esimerkiksi kyvyttömyys ottaa huomioon äärimmäisen suuria kokonaislukuja on perusta uskolle, että RSA ja muut järjestelmät ovat turvallisia, mutta rikkomattomuuden todisteita ei voida saavuttaa, koska taustalla oleva matemaattinen ongelma jää ratkaisematta. Käytännössä näitä käytetään laajasti, ja useimmat pätevät tarkkailijat uskovat niiden olevan käytännössä rikkoutumattomia. On olemassa RSA:n kaltaisia järjestelmiä, kuten Michael O. Rabinin kehittämä, jotka ovat todistetusti turvallisia, jos n = pq:n laskeminen on mahdotonta; ne ovat kuitenkin käytännössä hyödyttömiä. Diskreetti logaritmikysymys on perusta uskolle, että jotkut muut salausjärjestelmät ovat turvallisia, ja on olemassa samanlaisia, vähemmän käytännöllisiä järjestelmiä, jotka ovat todistetusti turvallisia diskreetin logaritmin ongelman ratkeavuuden tai ratkaistavuuden kannalta.
Salausalgoritmien ja järjestelmien suunnittelijoiden on otettava huomioon mahdolliset tulevaisuuden edistysaskeleet ideoidensa parissa sen lisäksi, että he tuntevat kryptografisen historian. Esimerkiksi tietokoneen prosessointitehon parantuessa raa'an voiman hyökkäysten laajuus on kasvanut, joten myös tarvittavat avainten pituudet ovat kasvaneet. Jotkut post-kvanttisalausta tutkivat kryptografisten järjestelmien suunnittelijat harkitsevat jo kvanttilaskennan mahdollisia seurauksia; näiden koneiden vaatimaton toteutus saattaa tehdä ennaltaehkäisevän varovaisuuden tarpeesta enemmän kuin spekulatiivisen.
Klassinen kryptografia nykypäivänä
Symmetrinen (tai yksityisen avaimen) salaus on eräänlainen salaus, jossa lähettäjä ja vastaanottaja käyttävät samaa avainta (tai harvemmin niiden avaimet ovat erilaisia, mutta toisiinsa helposti laskettavalla tavalla ja ne pidetään salassa, yksityisesti ). Kesäkuuhun 1976 asti tämä oli ainoa julkisesti tunnettu salaustyyppi.
Sekä lohkosalauksia että stream-salauksia käytetään symmetristen avainsalausten toteuttamiseen. Lohkosalaus salaa syötteen selkeän tekstin lohkoiksi yksittäisten merkkien sijaan, kuten stream-salaus.
Yhdysvaltain hallitus on nimennyt Data Encryption Standardin (DES) ja Advanced Encryption Standardin (AES) salausstandardeiksi (vaikka DES:n sertifiointi lopulta peruutettiin, kun AES oli perustettu). DES (etenkin sen edelleen hyväksytty ja huomattavasti turvallisempi kolminkertainen DES-muunnelma) on edelleen suosittu huolimatta siitä, että se on vanhentunut virallisena standardina; sitä käytetään monissa sovelluksissa ATM-salauksesta sähköpostin yksityisyyteen ja turvalliseen etäkäyttöön. Erilaisia lohkosalauksia on keksitty ja julkaistu vaihtelevalla menestyksellä. Monet, mukaan lukien jotkut pätevien harjoittajien suunnittelemat, kuten FEAL, ovat rikkoutuneet laajasti.
Stream-salaukset, toisin kuin lohkosalaukset, luovat äärettömän pitkän virran avainmateriaalia, joka on yhdistetty selkeään tekstiin bitti bitiltä tai merkki merkiltä, samalla tavalla kuin kertatyyny. Virtasalauksen lähtövirta generoidaan piilotetusta sisäisestä tilasta, joka muuttuu salauksen toimiessa. Salaisen avaimen materiaalia käytetään tämän sisäisen tilan määrittämiseen aluksi. Tietovirtasalausta RC4 käytetään laajasti. Luomalla avainvirran lohkoja (pseudosatunnaislukugeneraattorin sijaan) ja käyttämällä XOR-operaatiota jokaiselle selkeän tekstin bitille avainvirran jokaisen bitin kanssa, lohkosalauksia voidaan käyttää virtasalauksina.
Viestin todennuskoodit (MAC:t) ovat samanlaisia kuin kryptografiset hash-funktiot sillä poikkeuksella, että salaista avainta voidaan käyttää hajautusarvon vahvistamiseen vastaanotettaessa; tämä ylimääräinen monimutkaisuus estää hyökkäyksen paljaita tiivistelmäalgoritmeja vastaan, ja siksi sitä pidetään kannattavana. Kolmas salaustekniikan tyyppi ovat kryptografiset hajautusfunktiot. He ottavat syötteeksi minkä tahansa pituisen viestin ja tulostavat pienen kiinteän pituisen tiivisteen, jota voidaan käyttää esimerkiksi digitaalisissa allekirjoituksissa. Hyökkääjä ei voi paikantaa kahta viestiä, jotka tuottavat saman tiivisteen, käyttämällä hyviä hajautusalgoritmeja. MD4 on laajalti käytetty, mutta nyt viallinen hajautustoiminto; MD5, MD4:n paranneltu muoto, on myös laajalti käytetty, mutta käytännössä rikki. Secure Hash Algorithm -sarjan MD5:n kaltaisia hash-algoritmeja on kehittänyt Yhdysvaltain kansallinen turvallisuusvirasto: Yhdysvaltain standardiviranomainen päätti, että turvallisuuden kannalta oli "varovaista" kehittää uusi standardi, joka "parantaa merkittävästi NISTin yleisen hajautusalgoritmin kestävyyttä. työkalupakki." SHA-1 on laajalti käytetty ja turvallisempi kuin MD5, mutta kryptanalyytikot ovat tunnistaneet hyökkäyksiä sitä vastaan; SHA-2-perhe parantaa SHA-1:tä, mutta on alttiina yhteenotolle vuodesta 2011 lähtien; ja SHA-2-perhe parantaa SHA-1:tä, mutta on altis yhteentörmäyksille. Tämän seurauksena vuoteen 2012 mennessä oli tarkoitus järjestää hash-funktion suunnittelukilpailu uuden Yhdysvaltain kansallisen standardin valitsemiseksi, joka tunnetaan nimellä SHA-3. Kilpailu päättyi 2. lokakuuta 2012, kun National Institute of Standards and Technology (NIST) ilmoitti Keccakin uudeksi SHA-3 hash-algoritmiksi. Kryptografiset hajautusfunktiot, toisin kuin käännettävät lohko- ja virtasalaukset, tarjoavat hajautetun lähdön, jota ei voida käyttää alkuperäisen syöttödatan palauttamiseen. Kryptografisia hajautustoimintoja käytetään epäluotettavista lähteistä hankittujen tietojen aitouden tarkistamiseen tai ylimääräisen suojan lisäämiseen.
Vaikka viestillä tai viestijoukolla voi olla eri avain kuin muilla, symmetrisen avaimen salausjärjestelmät käyttävät samaa avainta salaukseen ja salauksen purkamiseen. Symmetristen salausten turvalliseen käyttöön vaadittava avainten hallinta on suuri haitta. Jokaisen yksittäisen kommunikoivan osapuolen parin tulisi mieluiten jakaa eri avain ja mahdollisesti eri salateksti jokaiselle lähetetylle salatekstille. Tarvittavien avainten määrä kasvaa suoraan verrannollisesti verkon osallistujien määrään, mikä edellyttää monimutkaisia avaintenhallintatekniikoita, jotta ne kaikki pysyisivät johdonmukaisina ja salassa.
Whitfield Diffie ja Martin Hellman keksivät julkisen avaimen (tunnetaan myös epäsymmetrisenä avaimena) salakirjoituksen käsitteen vuonna 1976 johtaneessa työssä, jossa käytetään kahta erillistä mutta matemaattisesti toisiinsa liittyvää avainta - julkista avainta ja yksityistä avainta. Vaikka ne liittyvät erottamattomasti toisiinsa, julkisen avaimen järjestelmä on rakennettu siten, että yhden avaimen ("yksityinen avain") laskeminen toisesta ("julkinen avain") on laskennallisesti mahdotonta. Pikemminkin molemmat avaimet tuotetaan salassa, linkitetynä parina. Historioitsija David Kahnin mukaan julkisen avaimen kryptografia on "alan vallankumouksellisin uusi käsite sen jälkeen, kun polyaakkosinen substituutio syntyi renessanssin aikana".
Julkisen avaimen salausjärjestelmän julkinen avain voidaan lähettää vapaasti, mutta kytketty yksityinen avain on pidettävä piilossa. Julkista avainta käytetään salaukseen, kun taas yksityistä tai salaista avainta käytetään salauksen purkamiseen julkisen avaimen salausjärjestelmässä. Vaikka Diffie ja Hellman eivät pystyneet luomaan tällaista järjestelmää, he osoittivat, että julkisen avaimen salaus oli ajateltavissa tarjoamalla Diffie–Hellman-avaimenvaihtoprotokollan, ratkaisun, jonka avulla kaksi ihmistä voivat sopia salaa jaetusta salausavaimesta. Yleisimmin käytetty julkisen avaimen sertifikaattien muoto on määritelty X.509-standardissa.
Diffien ja Hellmanin julkaisu herätti laajan akateemisen kiinnostuksen käytännöllisen julkisen avaimen salausjärjestelmän kehittämiseen. Ronald Rivest, Adi Shamir ja Len Adleman voittivat kilpailun lopulta vuonna 1978, ja heidän vastauksensa tuli tunnetuksi RSA-algoritmina.
Sen lisäksi, että Diffie–Hellman- ja RSA-algoritmit ovat varhaisimpia julkisesti tunnettuja esiintymiä korkealaatuisista julkisen avaimen algoritmeista, ne ovat olleet yleisimmin käytettyjä. Cramer-Shoup-salausjärjestelmä, ElGamal-salaus ja lukuisat elliptisen käyrän lähestymistavat ovat esimerkkejä epäsymmetrisen avaimen algoritmeista.
GCHQ:n kryptografit ennakoivat useita tieteellisiä edistysaskeleita brittiläisen tiedusteluorganisaation Government Communications Headquartersin (GCHQ) vuonna 1997 julkaiseman asiakirjan mukaan. Legendan mukaan epäsymmetrisen avaimen salakirjoituksen keksi James H. Ellis noin vuonna 1970. Clifford Cocks keksi vuonna 1973 ratkaisun, joka oli suunnittelultaan erittäin samanlainen kuin RSA. Malcolm J. Williamson on tunnustettu Diffie-Hellman-avaimenvaihdon keksijäksi vuonna 1974.
Digitaalisia allekirjoitusjärjestelmiä toteutetaan myös julkisen avaimen salaustekniikalla. Digitaalinen allekirjoitus on samanlainen kuin perinteinen allekirjoitus, koska se on käyttäjän helppo luoda, mutta muiden on vaikea väärentää. Digitaaliset allekirjoitukset voidaan myös liittää pysyvästi allekirjoitettavan viestinnän sisältöön; tämä tarkoittaa, että niitä ei voida "siirtää" asiakirjasta toiseen ilman, että niitä havaitaan. Digitaalisissa allekirjoitusmalleissa on kaksi algoritmia: yksi allekirjoitukselle, joka käyttää salaista avainta viestin käsittelemiseen (tai viestin tiivistettä tai molempia), ja toinen varmentamiseen, joka käyttää viestin kanssa vastaavaa julkista avainta vahvistamaan. allekirjoituksen aitous. Kaksi eniten käytetyistä digitaalisen allekirjoituksen menetelmistä ovat RSA ja DSA. Julkisen avaimen infrastruktuurit ja monet verkkoturvajärjestelmät (esim. SSL/TLS, monet VPN:t) toimivat digitaalisten allekirjoitusten varassa.
"Kovien" ongelmien, kuten lukuteoriasta johtuvien, laskennallista monimutkaisuutta käytetään usein julkisen avaimen menetelmien kehittämiseen. Kokonaislukujen kertoimien ongelma liittyy RSA:n kovuuteen, kun taas diskreetin logaritmin ongelma liittyy Diffie–Hellmaniin ja DSA:han. Elliptisen käyrän kryptografian turvallisuus perustuu elliptisen käyrän lukuteoreettisiin ongelmiin. Useimmat julkisen avaimen algoritmit sisältävät operaatioita, kuten modulaarista kertolaskua ja eksponentiota, jotka ovat laskennallisesti huomattavasti kalliimpia kuin useimmissa lohkosalauksissa käytetyt tekniikat, erityisesti normaaleissa avainkooissa, taustalla olevien ongelmien vaikeuden vuoksi. Tämän seurauksena julkisen avaimen salausjärjestelmät ovat usein hybridisalausjärjestelmiä, joissa viesti salataan nopealla, laadukkaalla symmetrisen avaimen algoritmilla, kun taas vastaava symmetrinen avain lähetetään viestin mukana, mutta salataan julkisen avaimen algoritmilla. Yleisesti käytetään myös hybridiallekirjoitusmalleja, joissa lasketaan kryptografinen hajautusfunktio ja vain tuloksena oleva hash allekirjoitetaan digitaalisesti.
Hash-funktiot kryptografiassa
Kryptografiset hajautusfunktiot ovat salausalgoritmeja, jotka tuottavat ja käyttävät tiettyjä avaimia tietojen salaamiseen joko symmetristä tai epäsymmetristä salausta varten, ja niitä voidaan pitää avaimina. He ottavat syötteeksi minkä tahansa pituisen viestin ja tulostavat pienen kiinteän pituisen tiivisteen, jota voidaan käyttää esimerkiksi digitaalisissa allekirjoituksissa. Hyökkääjä ei voi paikantaa kahta viestiä, jotka tuottavat saman tiivisteen, käyttämällä hyviä hajautusalgoritmeja. MD4 on laajalti käytetty, mutta nyt viallinen hajautustoiminto; MD5, MD4:n paranneltu muoto, on myös laajalti käytetty, mutta käytännössä rikki. Secure Hash Algorithm -sarjan MD5:n kaltaisia hash-algoritmeja on kehittänyt Yhdysvaltain kansallinen turvallisuusvirasto: Yhdysvaltain standardiviranomainen päätti, että turvallisuuden kannalta oli "varovaista" kehittää uusi standardi, joka "parantaa merkittävästi NISTin yleisen hajautusalgoritmin kestävyyttä. työkalupakki." SHA-1 on laajalti käytetty ja turvallisempi kuin MD5, mutta kryptanalyytikot ovat tunnistaneet hyökkäyksiä sitä vastaan; SHA-2-perhe parantaa SHA-1:tä, mutta on alttiina yhteenotolle vuodesta 2011 lähtien; ja SHA-2-perhe parantaa SHA-1:tä, mutta on altis yhteentörmäyksille. Tämän seurauksena vuoteen 2012 mennessä oli tarkoitus järjestää hash-funktion suunnittelukilpailu uuden Yhdysvaltain kansallisen standardin valitsemiseksi, joka tunnetaan nimellä SHA-3. Kilpailu päättyi 2. lokakuuta 2012, kun National Institute of Standards and Technology (NIST) ilmoitti Keccakin uudeksi SHA-3 hash-algoritmiksi. Kryptografiset hajautusfunktiot, toisin kuin käännettävät lohko- ja virtasalaukset, tarjoavat hajautetun lähdön, jota ei voida käyttää alkuperäisen syöttödatan palauttamiseen. Kryptografisia hajautustoimintoja käytetään epäluotettavista lähteistä hankittujen tietojen aitouden tarkistamiseen tai ylimääräisen suojan lisäämiseen.
Kryptografiset primitiivit ja kryptojärjestelmät
Suuri osa kryptografian teoreettisesta työstä keskittyy kryptografisiin primitiiveihin – algoritmeihin, joilla on perussalauksen ominaisuuksia – ja siihen, miten ne liittyvät muihin kryptografisiin haasteisiin. Näitä perusprimitiivejä käytetään sitten monimutkaisempien salaustyökalujen luomiseen. Nämä primitiivit tarjoavat perustavanlaatuisia ominaisuuksia, joita käytetään luomaan monimutkaisempia työkaluja, jotka tunnetaan nimellä kryptojärjestelmät tai kryptografiset protokollat, jotka takaavat yhden tai useamman korkean tason suojausominaisuuden. Salausprimitiivien ja kryptosysteemien välinen raja on toisaalta mielivaltainen; Esimerkiksi RSA-algoritmia pidetään joskus kryptosysteeminä ja joskus primitiivinä. Pseudoratunnaiset funktiot, yksisuuntaiset funktiot ja muut kryptografiset primitiivit ovat yleisiä esimerkkejä.
Salausjärjestelmä tai kryptojärjestelmä luodaan yhdistämällä yksi tai useampi salausprimitiivi monimutkaisemman algoritmin luomiseksi. Salausjärjestelmät (esim. El-Gamal-salaus) on tarkoitettu tarjoamaan tiettyjä toimintoja (esim. julkisen avaimen salaus) samalla kun varmistetaan tietyt turvallisuusominaisuudet (esim. satunnainen oraakkelimalli valittu-plaintext-hyökkäys CPA-suojaus). Tukeakseen järjestelmän suojausominaisuuksia salausjärjestelmät hyödyntävät taustalla olevien kryptografisten primitiivien ominaisuuksia. Hienostunut salausjärjestelmä voidaan luoda useiden alkeellisempien salausjärjestelmien yhdistelmästä, koska primitiivien ja kryptojärjestelmien välinen ero on jossain määrin mielivaltainen. Monissa olosuhteissa kryptojärjestelmän rakenne käsittää edestakaisen viestinnän kahden tai useamman osapuolen välillä avaruudessa (esim. suojatun viestin lähettäjän ja vastaanottajan välillä) tai yli ajan (esim. suojatun viestin lähettäjän ja vastaanottajan välillä) (esim. kryptografisesti suojatut varmuuskopiotiedot).
Tutustuaksesi sertifioinnin opetussuunnitelmaan yksityiskohtaisesti voit laajentaa ja analysoida alla olevaa taulukkoa.
EITC/IS/CCF Classical Cryptography Fundamentals Certification Curriculum -opetusohjelma viittaa avoimen pääsyn didaktisiin materiaaleihin videomuodossa. Oppimisprosessi on jaettu vaiheittaiseen rakenteeseen (ohjelmat -> oppitunnit -> aiheet), joka kattaa olennaiset opetussuunnitelman osat. Tarjolla on myös rajoittamaton konsultointi toimialueen asiantuntijoiden kanssa.
Katso tarkemmat tiedot sertifiointimenettelystä Miten se toimii.
Päämuistiinpanot
Christof Paarin ja Jan Pelzlin kryptografian ymmärtäminen, verkkokurssi PDF-diojen muodossa
https://www.crypto-textbook.com/slides.php
Christof Paarin ja Jan Pelzlin kryptografian ymmärtäminen, verkkokurssi videoiden muodossa
https://www.crypto-textbook.com/movies.php
Pääasiallinen klassisen kryptografian kirjaviite
Christof Paarin ja Jan Pelzlin kryptografian ymmärtäminen
https://www.crypto-textbook.com/index.php
Muita sovelletun klassisen kryptografian kirjaviitteitä
A. Menezesin, P. van Oorschotin ja S. Vanstonen sovelletun kryptografian käsikirja:
https://cacr.uwaterloo.ca/hac/
https://www.amazon.com/exec/obidos/ISBN=0849385237/7181-7381933-595174
Lataa täydelliset offline-itseoppimisen valmistelevat materiaalit EITC/IS/CCF Classical Cryptography Fundamentals -ohjelmaa varten PDF-tiedostona
EITC/IS/CCF-valmistelumateriaalit – vakioversio
EITC/IS/CCF-valmistelumateriaalit – laajennettu versio tarkistuskysymyksillä