Stream vs. block ciphers -palvelun edut ja haitat

Salausalgoritmit, kuten Blowfish, AES, RC4, DES ja Seal, toteutetaan yhdessä kahdesta salausryhmästä. Mitä etuja / haittoja salaustyypille on?

Vastaus

Vaikka molemmat ovat symmetrisiä salauksia, virta-salaukset perustuvat ”äärettömän” kryptografisen avaimen virran luominen ja sen salaus yksi bitti tai tavu kerrallaan (samanlainen kuin kertaluontoinen pad), kun taas lohkosalat toimivat suuremmilla paloilla (ts. lohkoilla) kerrallaan, usein yhdistämällä lohkoja lisäturvallisuuden lisäämiseksi (esim. AES CBC-tilassa).

  • Suorakoodisalaus on yleensä nopeampaa kuin esto, mutta sillä on oma hinta.
  • Lohkosalaimet vaativat tyypillisesti enemmän muistia, koska ne työskentelevät suuremmilla paloilla ja usein on ”siirretty” edellisistä lohkoista, kun taas virta-salaimet toimivat vain muutamalla bitillä kerrallaan, niillä on suhteellisen alhainen muistin tarve (ja siksi halvempi toteuttaa rajoitetuissa tilanteissa, kuten sulautetut laitteet, laiteohjelmisto ja esp. laitteisto) .
  • Suorituskoodin salauksia on vaikeampaa toteuttaa oikein, ja ne ovat alttiita käytön perusteella heikkouksille – koska periaatteet ovat samanlaisia kuin kertaluontoiset, avaimen virralla on erittäin tiukat vaatimukset. Toisaalta ” s yleensä hankala osa, ja voidaan purkaa esim ulkoinen laatikko.
  • Koska lohkosalaus salaa koko lohkon kerrallaan (ja niillä on lisäksi suositeltavia ”palautetiloja”), ne ovat alttiimpia melulle lähetyksessä, ts. jos sekoitat yhden osan tietoja, kaikkea muuta ei todennäköisesti voida palauttaa. Virran salauslaitteilla tavut salataan erikseen ilman yhteyttä muihin datanpaloihin (useimmissa salakirjoissa / tiloissa), ja usein ne tukevat linjan keskeytyksiä.
  • Suoran salaukset eivät myöskään tarjoa eheyden suojausta tai todennusta, kun taas jotkut salaussalat (tilasta riippuen) voivat tarjota eheyden suojauksen luottamuksellisuuden lisäksi.
  • Kaikkien edellä mainittujen syiden vuoksi , stream-salaukset ovat yleensä parhaita tapauksissa, joissa datan määrä on joko tuntematon tai jatkuva – kuten verkkovirrat. Estä salaukset, toisaalta, tai ovat hyödyllisiä, kun tietomäärä on ennalta tiedossa – kuten tiedosto, datakentät tai pyyntö / vastausprotokollat, kuten HTTP, jossa koko viestin pituus on tiedossa jo alku.

kommentit

  • 2. luettelomerkki ei ole tarkka. ” siirtää ” edellisistä lohkoista johtuva muistin ero on merkityksetön ja paljon pienempi kuin algoritmista algoritmiin ( esim. vertaa RC4: tä sen 256 tavun sisäisen tilan kanssa AES: ään, 0 sisäisen tavun sisäistä tilaa joissakin impletaatioissa). Viimeinen luettelomerkki erottaa väärin ja on huono neuvo.
  • @ D.W. Toinen luettelomerkki oli ” yleensä ”, koska näin on tyypillisesti (mutta hyväksyn, että se ei ole ehdottoman tarkka).
  • @DW onko sinulla mitään perustaa kommenttiisi viimeisestä luotista? Missä on väärä ero, ja miksi sanot tämän olevan huonoja neuvoja?
  • kyllä, minulla on perusta viimeistä luotia koskevaan kommenttini. Se näyttää vain sekavalta kaikkialla. Lohkosalaukset ovat hyviä tietojen suoratoistolle; katso esimerkiksi CBC-tila, CTR-tila jne. eri toimintatiloista, jotka toimivat hyvin streaming-datan kanssa. Lohkosalauksia ei ole rajoitettu tapauksiin, joissa tietomäärä tiedetään etukäteen. En ’ en ole tietoinen mistään syystä pitää stream-salauksia parempana kuin salata salauksia tietojen suoratoistoon (nimestä huolimatta).
  • D.W. on oikea: Sana ’ Stream ’ Stream Cipher -ohjelmassa heijastaa, että avainvirta on – bittivirta, joka on yhdistetty selkeään tekstiin tuottaa salakirjoituksen. Se ei heijasta selkeän tekstin koostumusta. Tämä on tietysti yksityiskohta, joka usein hämmentää kehittäjiä ja insinöörejä, joiden kanssa jälkimmäinen yleensä viitataan. Lohkosalauksia voidaan käyttää suoraviivaisen suoratoiston manipuloimiseksi. Usein hämmentävää on myös se, että lohkosipereitä voidaan käyttää suoratoistokoodina asianmukaisella toimintatavalla ja kun lohkon koko on atominen (esim. 1 tavu).

Vastaa

A -lohkosala on monipuolinen algoritmi, joka toteuttaa avaimen riippuvainen permutaatio arvoista, jotka ovat kiinteän bittimäärän sekvenssejä (kutsutaan ”lohkoiksi”). Sitä voidaan käyttää erilaisiin rooleihin monenlaisissa salausprotokollissa. Yksi tällainen rooli on pitkien tietovirtojen joukkosalaus; Tällaisen saavuttamiseksi lohkosalausta on käytettävä sopivalla toimintatilalla (alias ”ketjutustila”), perinteinen on CBC, ja trendikäs uudempi tila on napsautussuhde.

A virran salaus on erikoistunut algoritmi pitkien tietovirtojen joukkosalaukseen. Ajatuksena on, että menettämällä lohkosalauksen monipuolisuus olisi mahdollista luoda tehokkaampi algoritmi (eli sellainen, joka salaa tietoja nopeammin ).

Molemmat salaussalat Suoratoistolla salatussa tilassa ja virran salauslaitteissa voi esiintyä turvallisuusongelmia, jos samaa avainta käytetään kahdesti, kahdelle erilliselle virralle ilman asianmukaista, riittävän yksilöllistä / satunnaista Initialization Vector -ohjelmaa. CBC-salausta varten IV: n on oltava uusi tasaisesti satunnainen bittisekvenssi, saman kokoinen kuin lohko, jokaiselle uudelle sanomalle. Hyvät stream-salaukset hyväksyvät myös IV: n. Perinteinen stream-salaus nimeltä RC4 on IV-vapaa (sen määrittelyssä ei mainita, mihin tai miten IV voidaan lisätä), mikä johti paljon sekasortoon ja antoi huono nimi stream-salausten käsitteelle.

Uusimmat, turvallisemmat (ja nopeammat) stream-salaukset ovat eSTREAM-salkussa . Nämä algoritmit ovat käyneet läpi melko perusteellisen analyysin monien salaustekniikoiden toimesta, ja niitä pidetään ”varsin turvallisina”.

Suorakoodin salaus voidaan muuntaa näennäissatunnaislukugeneraattoriksi salaamalla pitkä tavusarja arvoa nolla. Itse asiassa monet (mutta eivät kaikki) virta-salaukset toimivat sisäisesti olemalla PRNG, jolloin muodostuu pitkä avainriippuvainen pseudo-satunnaistavu, joka myöhemmin yhdistetään (bittitiedolla XOR) salattavien (tai purettavien) tietojen kanssa, joten nollatavun salaaminen vastaa sitten XOR: n jättämistä kokonaan pois. Siksi stream-salauksia käytetään usein mukautettuna PRNG: nä.

Kommentit

  • Unohdit mainita, mikä on yleensä turvallisempaa (stream vs block).
  • En unohtanut, koska väitteellä ei ole yleistä järkeä. Sekä salaus- että virta-salaukset voivat tarjota riittävän turvallisuuden, jos niitä käytetään oikein ja Don ’ ei ole rakenteellisia heikkouksia.
  • ” lohkosalauksen monipuolisuus ” Minulla on ongelmia tämän osan kanssa. Mikä tekee salakoodista luonnostaan monipuolisemman? Lohkosalauksia voidaan käyttää joko molempien virtojen (esim. TLS) tai pakettidatan (esim. ESP) salaamiseen ja todentamiseen ja samoihin salaussalausten (esim. TLS tai DTLS) salaamiseen. Joissakin tapauksissa virran salaus näyttää olevan ” luonnollinen ” (esim. Äänen salaus) tai lohkon salaus näyttää enemmän ” luonnollinen ” (esim. Levyjen salaaminen), mutta en vain näe ’ järkevissä sovelluksissa aukkoa kummallekaan.

Vastaa

Yksi etu stream-salauksista, joita ei ole aiemmin mainittu, on se, että ne eivät ”ei tarvitse täyttöä (lohkosalaus toimii täydellisillä lohkoilla, joten jos sinulla ei ole tarpeeksi tietoa, sinun on luotava jotakin enemmän). Ja yllätys (ei oikeastaan, kryptografia on kenttä, jossa Murphy on kaikkialla), pehmuste voidaan tehdä väärä, esimerkkinä esimerkki Oracle Attackin käytännön hyökkäykset .

Myös lohkosalausten turvallisuus riippuu suurelta osin niiden toimintatavasta. EKP: tä käytetään edelleen ajoittain täällä ja siellä, eikä se ole paljon parempi kuin mikään salaus a t kaikki.

Pohjimmiltaan et voi sanoa, että toinen on parempi kuin toinen, toisen on tarkasteltava täydellistä salausjärjestelmää turvatarkastuksen tekemiseksi.

Kommentit

  • ensimmäisestä kappaleestasi: lohkosalauslaitteille on toimintatapoja, jotka eivät ’ tarvitse pehmustusta, joko: CTR-tila. Joten tämä ei ole etu, joka on ainutlaatuinen stream-salauksille. Mutta +1 viimeiseen kappaleeseesi – hyvin sanottu!
  • No, minä sanon ’ sanon, että CTR ja OFB ovat rakenteita, joiden avulla voit tehdä salauksen lohkosalauksesta. Että ’ on toinen hieno asia salaussalakkeilla, niitä voidaan helposti käyttää rakennuspalikoina muille asioille, olipa kyseessä sitten stream-salaus tai yksisuuntainen hajautus. Suoran salaukset eivät ole niin monipuolisia.
  • Unohdit mainita, mikä on yleensä turvallisempi (virta vs esto).
  • Kukaan ei ole luonteeltaan turvallisempi, se ’ todella kuinka käytät niitä.

vastaus

Stream Ciphers salaa selkeät tiedot satunnaisella bittivirralla (yleensä XOR: lla, koska se voidaan kääntää helposti). Jos sinulla on 128-bittistä dataa, salaamiseen käytetään 128-bittistä psedurandom-stremiä (avainta).

Block Ciphers salaa tekstimuodon lohkon kerrallaan samalla muunnoksella (avaimen perusteella) ).Joten sinulla on 128-bittinen data, salaus hajottaa sen lohkoina (kuten 4 32-bittistä lohkoa) ja soveltaa samaa muunnosta jokaiseen lohkoon, joka saa 4 salattua lohkoa, jotka yhdessä muodostavat lopullisen kryptogrammin.

tietenkin tämän vuoksi lohkosyperit ovat turvallisempia, mutta kalliita käyttää laitteiston monimutkaisuuden kannalta. Suoratoistosippaimet ovat nopeampia ja ”halpoja”, mutta ne voivat olla alttiita turvallisuusongelmille , jos ne toteutetaan väärin.

Kommentit

  • Viimeisessä kappaleessa on useita tosiseikkoja koskevia virheitä. Lohkosalaukset eivät ole yleensä turvallisempia, eivätkä ne välttämättä ole huonompia laitteistoissa. Suoratoiston salaukset eivät välttämättä ole nopeita tai halvempia.
  • @DW: Siitä huolimatta virta-salaukset ovat yleensä nopeampia tai halvempia kuin lohkosalaus, koska ’ s kauppa: vähemmän monipuolinen algoritmi vaihdettiin suorituskyvyn parantamiseksi. Suoratoiston salaus, joka sattuu olemaan hitaampi ja kalliimpi kuin AES / CTR, ei vain tottu lainkaan.
  • Unohdit mainita, mikä on yleensä turvallisempi (virta vs esto).

Vastaus

Tiedot (salattavat asiat) tulevat yleensä streamina. Sen salaamiseksi meidän on käytettävä virta-salausta eli salausalgoritmia, joka soveltuu käytettäväksi tietovirrassa. Stream on sekvenssi mielivaltaisen, vaihtelevan tai määrittelemättömän bitin (tai tavun) sekvenssistä.

Parhaimmat toistaiseksi keksimämme salakirjoitukset ovat yleensä lohkosalauksia. Lohkosalaus pystyy salaamaan yhden kiinteäkokoisen tietolohkon; ja ympärillämme olevien todisteiden perusteella on ilmeisesti helpompaa rakentaa hyviä salaussalakkeita kuin suoratoistaa salauksia.

Hyviä uutisia. Käyttämällä tiettyä salaussalaa joissakin tietyissä malleissa (”toimintatapa”) ja tiettyjen täyttöstrategioiden avulla voimme muuntaa minkä tahansa lohkosalauksen salauksen salaukseksi! Tämä tarkoittaa sitä, että voimme käyttää parempia salauksia, jotka ovat salaussalakirjoja, salaamaan kaikki tiedot, joista suurin osa tulee streamina.

Kommentit

  • toinen virke näyttää harhaanjohtavalta. Voit salata suoratoistodatan salaussalaa käyttämällä mitä tahansa useista vakiotoimintatavoista: esim. CBC-tila, CTR-tila jne. AES-CBC on edelleen salakoodaus. Itse asiassa melkein jokainen salakoodien vakiotoimintatila tukee jo streaming-tietoja. Lisäksi salaussalaus ei ole turvallinen ilman toimintatilaa, joten se ’ ei pidä toimintatavasta – se on jokin valinnainen asia, jota tarvitset vain, kun haluat salata suoratoistodataa .

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *