Estä salaus

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 5.1.2021 tarkistetusta versiosta . tarkastukset vaativat 6 muokkausta .

Lohkosalaus  on eräänlainen symmetrinen salaus [1] , joka toimii kiinteän pituisten bittiryhmien kanssa – lohkoilla, joiden ominaiskoko vaihtelee välillä 64–256 bittiä. Jos alkuperäinen teksti (tai sen loppuosa) on pienempi kuin lohkokoko, se täytetään ennen salausta . Itse asiassa lohkosalaus on lohkojen aakkosten substituutio, joka voi tämän seurauksena olla yksi- tai monikirjaiminen. [2] Lohkosalaus on monien salausprotokollien tärkeä osa, ja sitä käytetään laajasti verkon kautta siirretyn tiedon suojaamiseen.

Toisin kuin salausalustassa , jossa avaimen pituus on yhtä suuri kuin viestin pituus, lohkosalaus pystyy salaamaan yhden tai useamman viestin yhdellä avaimella, jonka kokonaispituus on suurempi kuin avaimen pituus. Viestiin verrattuna pienen avaimen lähettäminen salatun kanavan kautta on paljon yksinkertaisempaa ja nopeampaa kuin itse viestin tai samanpituisen avaimen lähettäminen, mikä mahdollistaa sen päivittäisen käytön. Kuitenkin tässä tapauksessa salaus lakkaa olemasta rikkoutumaton. Lohkosalaukset eroavat virtasalauksista siinä, että ne käsittelevät bittejä ryhmissä virran sijaan. Samaan aikaan lohkosalaukset ovat hitaampia kuin stream-salaukset. [3] Symmetrisillä järjestelmillä on etu epäsymmetrisiin verrattuna salausnopeudessa, minkä ansiosta ne pysyvät merkityksellisinä huolimatta heikommasta avaimen lähetysmekanismista (vastaanottajan on tiedettävä salainen avain, joka on lähetettävä jo perustetun salatun kanavan kautta. Epäsymmetrisissä salakirjoissa salaukseen tarvittava julkinen avain voi olla kaikkien tiedossa, eikä salausavainta tarvitse jakaa).

Lohkosalausten etuja ovat salaus- ja salauksenpurkumenettelyjen samankaltaisuus , jotka yleensä eroavat vain toimintojen järjestyksestä. Tämä yksinkertaistaa salauslaitteiden luomista, koska se mahdollistaa samojen lohkojen käytön salaus- ja salauksenpurkuketjuissa. Lohkosalausten joustavuus mahdollistaa niiden käytön muiden kryptografisten primitiivien rakentamiseen: näennäissatunnaisten sekvenssigeneraattorien , stream-salauksen, lisäysjäljitelmien ja kryptografisten hajautusten luomiseen . [neljä]

Historia

Nykyaikainen lohkosalausmalli perustuu ajatukseen iteratiivisista lohkosalauksista, joita ehdotettiin Claude Shannonin vuoden 1949 julkaisussa " Kommunikaatioteoria salaisissa järjestelmissä ". Tämän konseptin avulla voit saavuttaa tietyn turvallisuustason yhdistämällä helposti suoritettavat korvaus- ja permutaatiotoiminnot [ 5 ] .  

1970-luvulle asti kryptografia oli armeijan ja tiedusteluupseerien osa; avoimessa lehdistössä ei käytännössä ollut julkaisuja [6] . Edelläkävijä oli salaus " Lucifer " , jonka IBM kehitti vuonna 1970 ja joka perustuu SP - verkkoon . Salauksen ideana oli käyttää yksinkertaisten ja siksi nopeasti laskettavien operaatioiden yhdistelmiä sekä laitteistossa että ohjelmistossa. Kaava osoittautui kuitenkin epäonnistuneeksi: se oli liian hankala, mikä johti alhaiseen salausnopeuteen ohjelmistototeutuksessa (noin 8 kb / s) ja laitteistossa (97 kb / s).

Tämän algoritmin vakaudesta alkoi ilmaantua huoli. Luciferin rakentamisen aikana kehitetyt periaatteet (SP-verkko ja Feistel-verkko , nimetty yhden kehittäjän mukaan) muodostivat kuitenkin perustan lohkosalausten rakentamiselle.

Vuonna 1973 National Institute of Standards and Technology ( NIST ) julkaisi  kilpailun tietojen salausstandardin kehittämiseksi, jonka voittaja vuonna 1974 oli DES (Data Encryption Standard) -salaus, joka on itse asiassa parannettu versio Luciferista. . Salauksen julkaiseminen vuonna 1977 oli perustavanlaatuinen nykyaikaisen lohkosalauksen mallin ymmärtämiselle. Samalla se johti kryptanalyyttisten hyökkäysten kehittymiseen .

Sen jälkeen kun American National Standards Institute hyväksyi algoritmin vuonna 1981, sitä käytettiin siviilisektorilla pitkään, ja se ulottui jopa Yhdysvaltojen ulkopuolelle . Salauksella oli kuitenkin merkittävä haittapuoli - pieni avaimen pituus, joka aiheutti monia rinnakkaiseen luetteloimiseen liittyviä hyökkäyksiä, ja lähestyvä mahdollisuus sen toteuttamiseen. Riittävän suojan puute DES-salaushyökkäyksiä vastaan ​​on synnyttänyt monia algoritmeja, jotka ovat sekä monimutkaisempi versio DES:stä ( 3DES ) että täysin erilaisia ​​​​malleja ( NewDES , FEAL , IDEA ).

Vuonna 1997 aloitettiin AES (Advanced Encryption Standard) -käyttöönottoohjelma. Kilpailu koostui kolmesta vaiheesta, joiden lopullinen voittaja oli belgialaisten J. Daemenin ja V. Rijmenin kehittämä RIJNDAEL- algoritmi. AES, kuten edeltäjänsä, on myös rakennettu SP-verkon avulla.

Nykyään on monia hyökkäyksiä, joita lohkosalauksen on vastustettava, alkaen raa'an voiman hyökkäyksestä , joka on triviaalisin. [7]

Määritelmä

Lohkosalaus koostuu kahdesta pariksi liitetystä algoritmista: salauksesta ja salauksen purkamisesta . [8] Molemmat algoritmit voidaan esittää funktioina. Salaustoiminto E ( eng.  encryption  - encryption) vastaanottaa syötteenä tietolohkon M ( eng.  message  - message) ja avaimen K ( eng.  key  - key), jonka koko on k bittiä ja antaa salatekstin C ( eng.  cipher ) lohko lähdössä  - salaus), jonka koko on n bittiä:

Mille tahansa avaimelle K E K on bijektiivinen funktio ( permutaatio ) n- bittisten lohkojen joukossa. Salauksenpurkutoiminto D ( eng.  decryption  - decryption) vastaanottaa salatekstin C, avaimen K syötteenä ja antaa M:n lähdössä:

joka on samalla salausfunktion käänteinen:

ja

Huomaa, että salaukseen ja salauksen purkamiseen vaadittava avain on sama, mikä johtuu lohkosalauksen symmetriasta.

Lohkosalauksen rakentaminen

”Lohkosalauksen suunnittelu ei ole vaikeaa. Vaikeus on sellaisen lohkosalauksen suunnittelussa, joka ei ole vain turvallinen, vaan myös helppo kuvata ja helppo toteuttaa."

Bruce Schneier , kryptografi ja tietoturvaasiantuntija .

Lohkosalausten kehittämisen edelläkävijöitä olivat IBM:n työntekijät, kun he työskentelivät salauksen " Lucifer " parissa. [9] He suunnittelivat ensimmäiset perustukset, joita käytettiin seuraavien piirien kehittämisessä. Samalla on otettava huomioon, että uuden salauksen ei tulisi olla vain kaikkien tunnettujen hyökkäystyyppien kestävä, vaan myös melko yksinkertainen toteuttaa.

Iteratiiviset lohkosalaukset

Useimmat lohkosalaukset ovat iteratiivisia. Tämä tarkoittaa, että annettu salaus muuntaa vakiopituiset selkotekstilohkot samanpituisiksi  salatekstilohkoiksi syklisten käännettävien funktioiden avulla, jotka tunnetaan pyöreänä funktiona. [10] Tämä johtuu sekä ohjelmiston että laitteiston toteutuksen yksinkertaisuudesta ja nopeudesta. Tyypillisesti pyöreät toiminnot käyttävät erilaisia ​​näppäimiä, jotka on johdettu alkuperäisestä näppäimestä:  

,

jossa C i  on lohkon arvo i:nnen kierroksen jälkeen, C 0 = M on selkeä teksti, K i  on i:nnellä kierroksella käytetty avain, joka on saatu alkuperäisestä avaimesta K.

Lohkon koko n  on kiinteä lohkosalauksen parametri, yleensä 64 tai 128 bittiä, vaikka jotkut salaukset sallivatkin useita erilaisia ​​arvoja. 64 bitin pituus oli hyväksyttävä 1990-luvun puoliväliin asti, jolloin käytettiin 128 bittiä, mikä vastaa suunnilleen konesanan kokoa ja mahdollistaa tehokkaan toteutuksen yleisimmillä laskenta-alustoilla. Erilaisten salausmenetelmien avulla voit salata mielivaltaisen pituisen pelkkää tekstiä . Jokaisella on tietyt ominaisuudet: virheiden todennäköisyys, helppokäyttöisyys, haavoittuvuus hyökkäyksille. Vuodesta 2006 lähtien 80-bittinen avain pystyi estämään raa'an voiman hyökkäyksen .

SP-verkot

SP-verkko ( englanniksi  substituutio-permutation network, SPN ) on yksi tärkeimmistä iteratiivisista lohkosalauksista. SP-verkkoon perustuva salaus vastaanottaa lohkon ja avaimen syötteenä ja suorittaa useita vuorottelevia kierroksia, jotka koostuvat vuorottelevista korvaus- ja permutaatiovaiheista [ 11 ] .  Yksi S-box riittää turvallisuuden saavuttamiseen, mutta tällainen lohko vaatii paljon muistia. Siksi käytetään pieniä S-laatikoita sekoitettuna P-laatikoihin [6] . Epälineaarinen korvausvaihe sekoittaa avainbitit selkeän tekstin bitteihin, mikä aiheuttaa Shannonin hämmennystä Lineaarinen permutaatioaste jakaa redundanssin koko tietorakenteeseen, mikä aiheuttaa diffuusion [12] [13] .  

S -  laatikko korvaa pienen tulobittilohkon toisella lähtöbittilohkolla. Tämän korvaamisen on oltava yksi yhteen palautuvuuden takaamiseksi. S-boxin tarkoitus on epälineaarinen muunnos, joka estää lineaarisen krypta -analyysin suorittamisen . Yksi S-laatikon ominaisuuksista on lumivyöryefekti , eli yhden bitin muutos tulossa johtaa muutokseen kaikissa ulostulossa olevissa biteissa [14] .

P-lohko  - kaikkien bittien permutaatio: lohko vastaanottaa S-boxin lähdön tulona, ​​vaihtaa kaikki bitit ja syöttää tuloksen seuraavan kierroksen S-laatikkoon. Tärkeä P-laatikon ominaisuus on kyky jakaa yhden S-laatikon lähtö mahdollisimman suurten S-laatikoiden tuloihin.

Jokaisella kierroksella käytetään eri avainta , joka on saatu alkuperäisestä . Tällaista avainta kutsutaan pyöreäksi avaimeksi. Se voidaan saada jakamalla alkuperäinen avain yhtä suuriin osiin tai muuttamalla koko avain jollain tavalla.

Feistelin verkko

Feistel-verkko on yleinen menetelmä mielivaltaisen funktion F muuttamiseksi permutaatioksi lohkojoukossa. [15] Se koostuu syklisesti toistuvista soluista - kierroksista. Jokaisella kierroksella selvätekstilohko jaetaan kahteen yhtä suureen osaan. Pyöreä toiminto

ottaa yhden puolikkaan (kuvassa vasemmalla), muuntaa sen näppäimellä K i ja yhdistää tuloksen toiseen puolikkaaseen käyttämällä yksinomaista TAI (XOR) -toimintoa. Tämä avain annetaan alkunäppäimellä K ja se on erilainen jokaisella kierroksella. Sitten puolikkaat vaihdetaan (muuten vain toinen lohkon puolisko muunnetaan) ja syötetään seuraavalle kierrokselle. Feistelin verkkomuunnos on palautuva operaatio.

F - funktiolle on tiettyjä vaatimuksia :

Jos ensimmäinen vaatimus ei täyty, verkkoon kohdistuu erilaisia ​​hyökkäyksiä (samankaltaisilla viesteillä on samanlaiset salaukset). Toisessa tapauksessa salauksen toiminnot ovat lineaarisia ja rikkomiseen riittää lineaarisen yhtälöjärjestelmän ratkaiseminen [3] .

Tällä suunnittelulla on konkreettinen etu: salaus/salauksenpurkumenettelyt ovat samat, vain alkuperäisten avainten johdannaisia ​​käytetään käänteisessä järjestyksessä. Tämä tarkoittaa, että samoja lohkoja voidaan käyttää sekä salaukseen että salauksen purkamiseen, mikä varmasti yksinkertaistaa salauksen toteutusta. Järjestelmän haittana on, että vain puolet lohkosta käsitellään kullakin kierroksella, mikä johtaa tarpeeseen lisätä kierrosten määrää. [2]

Ryhmän muodostus

Algoritmia rakennettaessa otetaan huomioon ryhmän muodostus , jossa elementit ovat joukko salatekstilohkoja kaikilla avaimilla ja ryhmäoperaatio on salauskierrosten kokoonpano. Jos tietty salaus muodostaa lähes täydellisen ryhmän, ei ole järkevää käyttää useita salauksia [6] .

Lohkosalauksen toimintatilat

Itse lohkosalauksen avulla voit salata vain yksittäisiä ennalta määrätyn pituisia tietolohkoja. Jos viestin pituus on pienempi kuin lohkon pituus ( eng.  blocklength ), se täytetään haluttuun pituuteen. Jos viestin pituus on kuitenkin pidempi, se tulee jakaa lohkoihin. Samanaikaisesti on olemassa useita tapoja salata tällaisia ​​viestejä, joita kutsutaan lohkosalauksen toimintataviksi.

Salaus itsenäisillä lohkoilla

Yksinkertaisin lohkosalauksen toimintatapa on elektroninen koodikirjatila tai yksinkertainen korvaustila ( Eng.  Electronic CodeBook, ECB ), jossa kaikki selkotekstilohkot salataan toisistaan ​​riippumatta. Tätä moodia käytettäessä avoimen datan tilastolliset ominaisuudet kuitenkin säilyvät osittain, koska jokainen identtinen tietolohko vastaa yksilöllisesti salattua datalohkoa. Suuri tietomäärä (esimerkiksi video tai ääni) voi johtaa tietojen vuotamiseen niiden sisällöstä ja antaa enemmän tilaa kryptausanalyysille .

Tilastollisten riippuvuuksien poistaminen pelkkää tekstistä on mahdollista alustavan arkistoinnin avulla, mutta se ei ratkaise ongelmaa kokonaan, koska arkistaattorin palvelutiedot jäävät tiedostoon , mikä ei aina ole hyväksyttävää.

Edellisistä lohkoista riippuva salaus

Näiden ongelmien ratkaisemiseksi on kehitetty muita toimintatapoja [16] [17] , jotka on vahvistettu kansainvälisellä standardilla ISO/IEC 10116 [18] ja määritelty kansallisissa ohjeissa, kuten NIST 800-38A [19] ja BSI TR- 02102 [20]

Yleisenä ideana on käyttää satunnaislukua, jota usein kutsutaan alustusvektoriksi (IV). Suositussa CBC ( Cipher Block Chaining ) -tilassa IV: n on oltava satunnainen tai näennäissatunnainen turvallisuuden vuoksi. Kun se on määritetty, se XOR-kooditetaan ensimmäisellä selkeän tekstin lohkolla. Seuraava askel on salata tulos ja saada ensimmäinen salauslohko, jota käytämme IV:nä toiselle lohkolle ja niin edelleen. Cipher Feedback ( CFB ) -tilassa IV on suoraan salattu, minkä jälkeen se lisätään modulo two (XOR, yksinomainen TAI) ensimmäisen lohkon kanssa. Vastaanotettua salauslohkoa käytetään IV:nä lisäsalaukseen. Tilalla ei ole erityisiä etuja muihin verrattuna. Toisin kuin aikaisemmissa tiloissa, Output Feedback ( OFB ) -tila salaa IV:n syklisesti muodostaen viestilohkoihin lisätyn avaimen virran. Tilan etuna on salaus- ja salauksenpurkutoimintojen täydellinen yhteensopivuus. Laskuritila ( englanniksi Counter, CTR ) on samanlainen kuin OFB, mutta mahdollistaa salauksen rinnakkaislaskennan: IV yhdistetään lohkonumeroon ilman yhtä ja tulos salataan. Tuloksena oleva lohko lisätään vastaavaan viestilohkoon.     

Muista, että alustusvektorin on oltava erilainen eri istunnoissa. Muuten pääsemme EKP:n tilan ongelmaan. On mahdollista käyttää satunnaislukua, mutta se vaatii kohtuullisen hyvän satunnaislukugeneraattorin. Siksi yleensä asetetaan tietty numero - molempien osapuolten tuntema nimike (esimerkiksi istuntonumero) ja sitä kutsutaan nonceiksi ( Kerran käytetty numero ) .  Tämän numeron salassapitoa ei yleensä vaadita. Lisäksi IV on nonce-salauksen tulos. Laskurimoodissa noncea käytetään pyöreän avaimen K i [3] muodostamiseen :

missä i  on pyöreä luku.

Lohko loppuun

Kuten edellä mainittiin, jos itse viestin tai viimeisen lohkon pituus on pienempi kuin lohkon pituus, se on täytettävä -merkillä . Pelkkä täyttö nollabitillä ei ratkaise ongelmaa, koska vastaanotin ei löydä hyötykuorman loppua. Lisäksi tämä vaihtoehto johtaa lisäyksen [21] Oracle-hyökkäyksiin .

Siksi käytännössä voidaan soveltaa ISO/IEC 9797-1:ssä "Complement Method 2" ( Bit Completion ) standardoitua ratkaisua, joka lisää viestin loppuun 1 bitin ja täyttää jäljellä olevan tilan nolilla [22] . Tässä tapauksessa vastustuskyky tällaisia ​​hyökkäyksiä vastaan ​​on todistettu [23] .

Cryptanalysis

Kuten kaikki salaukset, joiden algoritmit tunnetaan, myös lohkosalaukset ovat alttiina kryptografisille hyökkäyksille. Hyökkäyksen tavoitteena on kehittää halkeilualgoritmi, joka on tehokkaampi kuin kaikkien mahdollisten avainten tyhjentävä haku. Jos tällainen ratkaisu löytyy, hyökkäys katsotaan onnistuneeksi. Samalla salaus katkeaa, jos tapahtuu hyökkäys, joka sallii murtautumisen sinä aikana, jolloin tieto pysyy relevanttina, ja tällaisen hyökkäyksen suorittaminen on hyökkääjälle hyödyllistä.

Brute force attack

Englanti  Todellinen voimahyökkäys . Lohkosalauksen ominaisuuden vuoksi funktion käänteisyyteen, sen tulos tulee erotettavissa todellisesta satunnaissekvenssistä syntymäpäiväparadoksin vuoksi . Tämä ominaisuus johtaa salauksen turvallisuuden heikkenemiseen ja tarpeeseen ottaa huomioon lohkon koko. Siten on olemassa kompromissi suurten lohkojen, jotka vähentävät salauksen suorituskykyä, ja epäluotettavien pienten lohkojen välillä [24] .

Avaimen koolla on yhtä tärkeä rooli. Varhaiselle DES -salaukselle oli tunnusomaista 56 bitin avaimen koko, joka, kuten käytäntö on osoittanut, ei selvästikään riitä luotettavaan tiedonsiirtoon. Se oli raa'an voiman hyökkäys, joka ensin rikkoi DES:n. Nykyaikaisemmissa algoritmeissa, kuten AES ja GOST 28147-89 , avaimen koko on 128 bittiä ja 256 bittiä, mikä tekee sellaisista hyökkäyksistä merkityksettömiä [25] .

Differentiaalinen kryptausanalyysi

Englanti  Differentiaalinen kryptausanalyysi . Vuonna 1990 Eli Biham ja Adi Shamir määrittelivät idean differentiaalisesta kryptausanalyysistä. Tällä menetelmällä oli mahdollista murtaa DES -salaus . Jatkuvat S-box-salaukset ja koodatut e- kirjatilan salaukset ovat alttiita samanlaiselle hyökkäykselle . Tämä menetelmä toimii salatekstiparien kanssa, joiden vastaavien selkeiden tekstien välinen ero tunnetaan, ja ottaa huomioon näiden erojen kehittymisen. Lineaarisen ohella se on yleisin lohkosalaukseen kohdistuvissa hyökkäyksissä [6] .

Lineaarinen kryptausanalyysi

Englanti  Lineaarinen kryptausanalyysi . Lineaarinen kryptausanalyysi on salausmenetelmä, joka perustuu affiinisten approksimaatioiden etsimiseen, jotta algoritmi toimisi. Sen on kehittänyt japanilainen matemaatikko Mitsuru Matsui , joka käytti ensimmäisenä tätä tekniikkaa hyökätäkseen DES :ää ja FEALia vastaan . Menetelmä perustuu "Exclusive OR" (XOR) -operaation soveltamiseen selkeän tekstin, salatekstin ja niiden tuloksen lohkoihin, mikä mahdollistaa avainbittien XOR-korjauksen tuloksen saamisen. S-lohkon rakenteella on vahva vaikutus linjahyökkäysten vastustuskykyyn. Kun menetelmää kehitettiin, kävi ilmi, että DES:llä oli siihen heikkous, koska kukaan ei ollut odottanut tällaisia ​​hyökkäyksiä sitä kehitettäessä [6] .

Integraalinen kryptausanalyysi

Englanti  Intergal-kryptausanalyysi . Integraalinen kryptausanalyysi on eräänlainen hyökkäys, joka soveltuu erityisesti SP-verkkoon rakennettuihin lohkosalauksiin. Toisin kuin differentiaalinen kryptausanalyysi, joka käyttää valittujen selkeiden tekstien paria kiinteällä erolla, joka lasketaan XOR-operaatiolla, integraalinen kryptausanalyysi käyttää selkeiden tekstien joukkoja, joissa jotkut osat pidetään vakioina, kun taas toiset vaihtelevat mahdollisten arvojen välillä. Tällaisen joukon modulo 2 (XOR) -summa on välttämättä 0, kun taas vastaava salatekstisumma sisältää tietoa salauksen toiminnoista.

Muut hyökkäykset

Yllä kuvattujen lisäksi on muitakin hyökkäyksiä:

Jokaisen uuden salauksen tulee osoittaa vastustuskykyä kaikille tunnetuille hyökkäyksille.

Käytännön arviointi

Käytännössä lohkosalaus arvioidaan useiden kriteerien mukaan [26] [27] :

National Encryption Standards

Lucifer / DES

Lucifer-salausta pidetään yleensä ensimmäisenä lohkosalauksena. IBM on kehittänyt algoritmin 1970 - luvulla omiin tarpeisiinsa , ja se perustuu Horst Feistelin työhön .  Lopullinen versio hyväksyttiin Yhdysvaltain hallituksen liittovaltion tietojenkäsittelystandardiksi : FIPS PUB 46 Data Encryption Standard (DES) - tietojen salausstandardi.

DES:n lohkokoko on 64 bittiä ja avain 56 bittiä. Myöhemmin 64-bittiset lohkot hyväksyttiin yleisesti salauksen rakentamisessa. Avaimen pituus riippui useista tekijöistä, mukaan lukien hallituksen rajoitukset, ja sen seurauksena siitä tuli algoritmin ilmeinen haittapuoli - se ei riittänyt kestämään raakoja hyökkäyksiä. Vuonna 1993 Michael Wiener suunnitteli miljoonan dollarin koneen, joka pystyi murtamaan DES:n 3,5 tunnissa raa'alla voimalla , ja vuonna 1998 rakennettiin kone joka pystyy murtamaan. Lisäksi algoritmin avaimille on useita arvoja, joita pidetään heikkoina [6] .

Algoritmista on parannettu versio nimeltä Triple DES tai 3DES. Algoritmin nopeus laski kolme kertaa, mutta järjestelmä osoittautui paljon kestävämmäksi tyhjentävälle haulle johtuen kolminkertaisesta avaimen pituudesta (168 bittiä ja 112 salaista bittiä). Valinnaisesti voit valita kaksoisavaimen (112 bittiä ja 80 salaista bittiä). Vuodesta 2011 lähtien kolmen avaimen järjestelmä on säilyttänyt tietoturvansa, mutta kahden avaimen versio 80-bittisellä suojauksella ei enää täytä nykyajan vaatimuksia [28] .

GOST 28147-89

Vuonna 1990 käyttöön otettu venäläinen salausstandardi GOST 28147-89 on myös IVY-standardi. Salaus perustuu 32 kierroksen Feistel-verkkoon 256-bittisellä avaimella. Kryptanalyytikko Nicolas Courtois yritti toukokuussa 2011 hyökkäystä, joka lyhensi murtautumisaikaa kertoimella 28 (256), mutta vaati 264 selvä-/ salateksti -paria, mitä ei voida pitää onnistuneena hyökkäyksenä, koska tällä määrällä selkeää tekstiä ei ole tarvetta. salatekstin tuntemiseen. [29] [30]

Suuren kierrosmäärän vuoksi differentiaaliseen ja lineaariseen krypta-analyysiin perustuvat hyökkäykset eivät ole kannattavia, koska jälkimmäiset ovat herkkiä kierrosten lukumäärälle. Täysi haku tällaisella avaimen pituudella on täysin merkityksetöntä. Lumivyöryn saavuttamiseksi GOST vaatii 8 kierrosta, mikä voi olla algoritmin heikkous, mutta 32 kierroksen kohdalla sillä ei ole niin suurta merkitystä. Kysymys GOSTin turvallisuudesta on edelleen avoin [6] .

AES / Rijndael

NIST hyväksyi vuonna 2001 viiden vuoden julkisen kilpailun jälkeen, ja AES korvasi DES:n Yhdysvaltojen liittovaltion standardina. Salauksen ovat kehittäneet kaksi belgialaista kryptografia , Daimen Yoan ja Raymen Vincent . Lohkon koko on 128 bittiä ja avainten koot ovat 128, 192 ja 256 bittiä, vaikka lohkon koko voidaan määrittää millä tahansa bittien lukumäärällä 32:n kerrannaisena, vähimmäisarvon ollessa 128 bittiä. Lohkon enimmäiskoko on 256 bittiä, kun taas avaimen koolla ei ole teoreettista rajaa. Intel otti käyttöön tämän salauksen tuen x86 - prosessoriperheessä .

Suhde muiden kryptografisten primitiivien kanssa

Lohkosalausta voidaan käyttää muiden kryptografisten primitiivien rakentamiseen :

Katso myös

Muistiinpanot

  1. Schneier, 2002 , Algoritmityypit ja kryptografiset tilat.
  2. 1 2 Barichev, Goncharov, Serov, 2011 .
  3. 1 2 3 Gabidulin, Kshevetsky, Kolybelnikov, 2011 .
  4. Block Ciphers - Johdanto ja yleiskatsaus - http://cacr.uwaterloo.ca/hac/about/chap7.pdf Arkistoitu 24. heinäkuuta 2012 Wayback Machinessa
  5. Shannon C. , yritys A. T. a. T. Salassapitojärjestelmien viestintäteoria  (englanti) // Bell Syst. Tech. J. - Short Hills, NJ jne .: 1949. - Voi. 28, Iss. 4. - P. 656-715. — ISSN 0005-8580 ; 2376-7154 - doi:10.1002/J.1538-7305.1949.TB00928.X
  6. 1 2 3 4 5 6 7 Schneier, 2002 .
  7. Fomitšev, 2003 .
  8. Cusick, Thomas W. & Stanica, Pantelimon. Kryptografiset Boolen funktiot ja  sovellukset . - Academic Press , 2009. - S. 158-159. — ISBN 9780123748904 .
  9. Schneier, 2002 , DES-aikataulustandardi.
  10. Junod, Pascal & Canteaut, Anne. Lohko- ja  virtasalausten edistynyt lineaarinen krypta-analyysi . — IOS Press, 2011. - P. 2. - ISBN 9781607508441 .
  11. Keliher, Liam et ai. Korvaus-permutaatioverkkojen lineaaristen ominaisuuksien mallintaminen // Valitut alueet kryptografiassa: 6th vuotuinen kansainvälinen työpaja, SAC'99, Kingston, Ontario, Kanada, 9.-10. elokuuta 1999: menettely  (englanniksi) / Hays, Howard & Carlisle, Adam . - Springer, 2000. - s. 79. - ISBN 9783540671855 .
  12. Baigneres, Thomas & Finiasz, Matthieu. Dial 'C' salaukseen // Valitut alueet kryptografiassa: 13. kansainvälinen työpaja, SAC 2006, Montreal, Kanada, 17.-18. elokuuta 2006 : tarkistetut valitut paperit  / Biham, Eli & Yousseff, Amr. - Springer, 2007. - s. 77. - ISBN 9783540744610 .
  13. Cusick, Thomas W. & Stanica, Pantelimon. Kryptografiset Boolen funktiot ja  sovellukset . - Academic Press , 2009. - S. 164. - ISBN 9780123748904 .
  14. Katz, Jonathan; Lindell, Yehuda. Johdatus nykyaikaiseen  kryptografiaan . - CRC Press , 2008. - ISBN 9781584885511 . , sivut 166-167.
  15. Barichev, Goncharov, Serov, 2011 , s. 21.
  16. Estä salaustilat . NIST Computer Security Resource Center. Arkistoitu alkuperäisestä 19. marraskuuta 2012.
  17. Menezes, van Oorschot, Vanstone, 1996 , s. 228–233.
  18. ISO/IEC 10116:2006 Tietotekniikka — Suojaustekniikat — N-bittisen lohkosalauksen toimintatavat . Käyttöpäivä: 16. marraskuuta 2012. Arkistoitu alkuperäisestä 17. maaliskuuta 2012.
  19. Morris Dworkin (joulukuu 2001), Suositus lohkosalauksen toimintatapoille – Methods and Techniques , Erikoisjulkaisu 800-38A (National Institute of Standards and Technology (NIST)) , < http://csrc.nist.gov/publications/ nistpubs/800-38a/sp800-38a.pdf > Arkistoitu 28. elokuuta 2017 Wayback Machinessa 
  20. Kryptographische Verfahren: Empfehlungen und Schlüssellängen, BSI TR-02102 (nro versio 1.0), 20. kesäkuuta 2008 
  21. Serge Vaudenay. CBC-täytesovellusten aiheuttamat tietoturvavirheet SSL:lle, IPSEC:lle, WTLS:lle…  //  Advances in Cryptology – EUROCRYPT 2002, Proc. Kansainvälinen konferenssi kryptografisten tekniikoiden teoriasta ja sovelluksista: aikakauslehti. - Springer Verlag, 2002. - Ei. 2332 . - s. 534-545 .
  22. ISO/IEC 9797-1: Tietotekniikka - Suojaustekniikat - Viestin todennuskoodit (MAC:t) - Osa 1: Mekanismit lohkosalauksen avulla , ISO/IEC, 2011 , < http://www.iso.org/iso/iso_catalogue /catalogue_ics/catalogue_detail_ics.htm?csnumber=50375 > Arkistoitu 27. joulukuuta 2013 Wayback Machinessa 
  23. Kenneth G. Paterson; Gaven J. Watson. Immunising CBC Mode Against Padding Oracle Attacks: Formal Security Treatment  (englanniksi)  // Tietoturva ja kryptografia verkkoille - SCN 2008, Lecture Notes in Computer Science: Journal. - Springer Verlag, 2008. - Ei. 5229 . - s. 340-357 .
  24. Martin, Keith M. Everyday Cryptography: Fundamental Principles and  Applications . - Oxford University Press , 2012. - S. 114. - ISBN 9780199695591 .
  25. Paar, Cristof et ai. Kryptografian ymmärtäminen: oppikirja opiskelijoille ja  harjoittajille . - Springer, 2010. - s. 30. - ISBN 9783642041006 .
  26. Menezes, van Oorschot, Vanstone, 1996 , s. 227.
  27. James Nechvatal, Elaine Barker, Lawrence Bassham, William Burr, Morris Dworkin, James Foti, Edward Roback (lokakuu 2000), raportti edistyneen salausstandardin (AES) kehittämisestä , National Institute of Standards and Technology (NIST) , < http://csrc.nist.gov/archive/aes/round2/r2report.pdf > Arkistoitu 30. joulukuuta 2010 Wayback Machinessa 
  28. NIST-erikoisjulkaisu 800-57 Suositus avainten hallintaan - Osa 1: Yleistä (tarkistettu) , maaliskuu 2007 . Haettu 18. marraskuuta 2012. Arkistoitu alkuperäisestä 6. kesäkuuta 2014.
  29. Nicolas T. Courtois. Turvallisuusarviointi GOST 28147-89:stä kansainvälisen standardoinnin valossa Arkistoitu 7. joulukuuta 2012. . Cryptology ePrint -arkisto: Raportti 2011/211
  30. SecurityLab: GOST 28147-89 -lohkosalaus murtunut . Haettu 18. marraskuuta 2012. Arkistoitu alkuperäisestä 14. toukokuuta 2013.
  31. ISO/IEC 10118-2:2010 Tietotekniikka - Suojaustekniikat - Hash-funktiot - Osa 2: Hash-funktiot n-bittistä lohkosalausta käyttävät . Haettu 18. marraskuuta 2012. Arkistoitu alkuperäisestä 24. toukokuuta 2012.
  32. Menezes, van Oorschot, Vanstone, 1996 , luku 9: Hash Functions and Data Integrity.
  33. NIST-erikoisjulkaisu 800-90A Suositus satunnaislukujen luomiseen käyttämällä deterministisiä satunnaisbittigeneraattoreita . Haettu 18. marraskuuta 2012. Arkistoitu alkuperäisestä 9. lokakuuta 2013.
  34. Menezes, van Oorschot, Vanstone, 1996 , Luku 5: Pseudorandom Bits and Sequences.

Kirjallisuus