Asümmeetriline krüptimine. Kuidas see toimib? Kuidas krüptimine töötab

Krüpteerimist on kahte peamist tüüpi: privaatvõti ja avalik võti. Salajase võtme krüpteerimine eeldab, et kõigil teabe lugemisõigusega osapooltel on sama võti. See võimaldab taandada üldise infoturbe probleemi võtmekaitse tagamise probleemiks. Avaliku võtmega krüptimine on kõige laialdasemalt kasutatav krüpteerimismeetod. See annab konfidentsiaalsus teave ja garantii, et teave jääb edastamise ajal muutumatuks.

Mis on salajase võtme abil krüptimise olemus??

Salajase võtmega krüptimist nimetatakse ka sümmeetriliseks krüptimiseks, kuna andmete krüptimiseks ja dekrüpteerimiseks kasutatakse sama võtit. Joonis 12.2 näitab salajase võtmega krüptimise põhiprintsiipi. Nagu jooniselt näha, peab teabe saatjal ja saajal olema sama võti.


Riis. 12.2.

Salajase võtme krüpteerimine pakub konfidentsiaalsus teave krüpteeritud olekus. Ainult need, kes teavad võtit, saavad sõnumi dekrüpteerida. Kõik edastuse ajal sõnumis tehtud muudatused tuvastatakse, kuna sõnumit ei dekrüpteerita õigesti. Salajase võtmega krüptimine ei võimalda autentimist, sest iga kasutaja saab luua, krüpteerida ja saata kehtiva sõnumi.

Üldiselt on salajase võtmega krüpteerimist kiire ja lihtne riist- või tarkvara abil rakendada.

Asendusšifrid

Asendusšifrid on kasutusel olnud umbes 2500 aastat. Varaseim näide on Atbashi šifr. See tekkis umbes 600 eKr. ja koosnes heebrea tähestiku kasutamisest vastupidises järjekorras.

Julius Caesar kasutas asendusšifrit, mida nimetati Caesari šifriks. See šifr seisnes iga tähe asendamises teise tähega, mis asus tähestikus krüpteeritavast kolm tähte kaugemal. Nii et täht A teisendati D-ks, B teisendati E-ks ja Z teisendati C-ks.

See näide näitab, et asendusšifr töötleb üht tähte korraga lihttekst. Sõnumit saavad lugeda mõlemad abonendid, kasutades sama asendusskeemi. Asendusšifri võti on kas nihketähtede arv või täielikult ümber järjestatud tähestik.

Asendusšifritel on üks suur puudus – tähtede pidev sagedus algses tähestikus. Näiteks inglise keeles kasutatakse kõige sagedamini tähte "E". Kui asendate selle mõne teise tähega, kasutatakse uut tähte kõige sagedamini (kui arvestada palju sõnumeid). Selle analüüsi abil saab asendusšifri murda. Tähtede esinemissageduse analüüsi edasiarendamine võimaldab saada kõige sagedamini esinevaid kahe ja kolme tähe kombinatsioone. Sellise analüüsiga saab iga asendusšifri murda, kui ründaja saab piisavalt šifriteksti.

Ühekordsed padjad

Ühekordsed padjad (OTP) on ainus teoreetiliselt purunematu krüpteerimissüsteem. Ühekordne klahv on juhuslikus järjekorras olevate numbrite loend, mida kasutatakse sõnumi kodeerimiseks (vt tabel 12.1). Nagu süsteemi nimigi ütleb, saab OTP-d kasutada ainult üks kord. Kui OTP numbrid on tõeliselt juhuslikud, OTP on sõnumist pikem ja seda kasutatakse ainult üks kord, siis ei paku šifritekst mingit mehhanismi algse võtme (st OTP enda) ja seega ka sõnumite taastamiseks.

Ühekordsed padjad on kasutusel väga kõrge turvatasemega infokeskkondades (aga ainult lühisõnumite puhul). Näiteks Nõukogude Liidus kasutati OTP-d luureohvitseride ühendamiseks Moskvaga. OTP kaks peamist puudust on tõeliselt juhuslike sülearvutite genereerimine ja sülearvuti levitamise probleem. Ilmselgelt, kui märkmik paljastatakse, siis paljastatakse ka teave, mida see kaitseb. Kui märkmikud pole tõeliselt juhuslikud, võib tuvastada mustreid, mida saab kasutada tähemärkide sageduse analüüsi läbiviimiseks.

Tabel 12.1.
Ühekordne padja operatsioon Sõnum S E N D S H L
P 19 5 14 4 8 5 12 16
Tähed asendatud vastavate numbritega 7 9 5 2 12 1 0 6
Ühekordne padi

Lisand

Sageli tekib küsimus: millist tüüpi WiFi-krüptimist oma koduse ruuteri jaoks valida. See võib tunduda väike asi, kuid kui parameetrid on valed, võivad tekkida probleemid võrguga ja isegi teabe edastamisel Etherneti kaabli kaudu.

Seetõttu vaatleme siin, mis tüüpi andmete krüptimist tänapäevased WiFi-ruuterid toetavad ning kuidas aes krüptimise tüüp erineb populaarsetest wpa-st ja wpa2-st.

Traadita võrgu krüptimise tüüp: kuidas valida turvameetodit?

  1. Kokku on krüptimist 3 tüüpi:

WEP-krüptimise tüüp ilmus juba 90ndatel ja oli esimene võimalus Wi-Fi-võrkude kaitsmiseks: see positsioneeriti traadiga võrkude krüptimise analoogina ja kasutas RC4 šifrit. Edastatavate andmete jaoks oli kolm levinud krüpteerimisalgoritmi – Neesus, Apple ja MD5 –, kuid igaüks neist ei taganud vajalikku turvataset. 2004. aastal kuulutas IEEE standardi aegunuks, kuna see lõpetas lõpuks turvalise võrguühenduse pakkumise. Hetkel ei soovita wifis seda tüüpi krüptimist kasutada, sest... see ei ole krüptokindel.

  1. 2.WPS on standard, mis ei näe ette . Ruuteriga ühenduse loomiseks klõpsake lihtsalt vastavat nuppu, mida me artiklis üksikasjalikult kirjeldasime.

Teoreetiliselt võimaldab WPS pääsupunktiga ühenduse luua kaheksakohalise koodi abil, kuid praktikas piisab sageli vaid neljast.

Seda asjaolu saavad hõlpsasti ära kasutada arvukad häkkerid, kes häkkivad kiiresti (3–15 tunniga) wifi-võrke, seega pole ka selle ühenduse kasutamine soovitatav.

  1. 3.Krüptimise tüüp WPA/WPA2

WPA-krüptimisega on asjad palju paremad. Haavatava RC4 šifri asemel kasutatakse siin AES-krüptimist, kus parooli pikkus on suvaline (8–63 bitti). Seda tüüpi krüptimine tagab normaalse turvalisuse ja on üsna sobiv lihtsate wifi-ruuterite jaoks. Seda on kahte tüüpi:

Tüüp PSK (eeljagatud võti) – ühendus pääsupunktiga toimub eelnevalt määratletud parooli abil.
- Enterprise – iga sõlme parool genereeritakse automaatselt ja seda kontrollitakse RADIUS-serverites.

WPA2 krüpteerimistüüp on WPA jätk turvatäiustustega. See protokoll kasutab RSN-i, mis põhineb AES-krüptimisel.

Nagu WPA krüptimisel, on ka WPA2-l kaks töörežiimi: PSK ja Enterprise.

Alates 2006. aastast on WPA2 krüpteerimistüüpi toetanud kõik Wi-Fi seadmed ning igale ruuterile saab valida vastava geo.

WPA2 krüptimise eelised WPA ees:

Krüpteerimisvõtmed genereeritakse ruuteriga ühenduse loomise käigus (staatiliste võtmete asemel);
- Michaeli algoritmi kasutamine edastatud sõnumite terviklikkuse kontrollimiseks
- Oluliselt suurema pikkusega initsialiseerimisvektori kasutamine.
Lisaks peaksite valima Wi-Fi krüptimise tüübi sõltuvalt sellest, kus teie ruuterit kasutatakse:

WEP, TKIP ja CKIP krüptimist ei tohiks üldse kasutada;

Kodu pöörduspunkti jaoks on WPA/WPA2 PSK üsna sobiv;

Selleks peaksite valima WPA/WPA2 Enterprise.

Vähesed inimesed teavad täpselt, kuidas asümmeetriline krüptimine töötab. Näiteks on inimesi, kes ei pea https-protokolli edastatavate andmete piisavaks kaitseks. Ja reeglina, kui nad üritavad neid vastupidises veenda, vastavad nad millegagi järgmiselt: "Kui me edastame krüptitud andmeid, siis peame ütlema, kuidas neid dekrüpteerida ja seda teavet saab pealt kuulata ja seetõttu saab andmeid dekrüpteeritud." Ja argumentidele, et see pole nii ja et aluseks on asümmeetriline krüptimine, on vastus "Ja mis siis?"

Olgu, ma saan aru, et mitte kõik ei pea teadma kõiki asümmeetrilise krüptimise rakendamise keerukust. Aga arvan, et kõik, kel vähegi arvutitega pistmist, peaksid teadma üldist tööpõhimõtet.

Tahaksin selle postituse olemuse kokku võtta selles annotatsioonis: Pidage meeles, asümmeetriline krüptimine on turvaline muidugi juhul, kui kõik tingimused on täidetud. Ja selle tõestamiseks püüan algoritmi arusaadavas keeles kirjeldada, et kõik saaksid aru, et see on ohutu. Tutvuge Alice'i, Bobi ja Evega ning nende salasõnumi edastamisega.

Muide, miks Alice ja Bob? Wikipedias on selle kohta lühike artikkel: Alice, Bob ja Eve. Et see oleks selgem, tahavad Alice ja Bob sõnumeid vahetada ning Eve püüab neid sõnumeid pealt kuulata ja lugeda.

Natuke ajalugu

Möödunud sajandite krüptograafial oli üks suur probleem – võtmete ülekandmise probleem. Sel ajal olid olemas ainult nn sümmeetrilised šifrid - šifrid, milles andmed krüpteeritakse ja dekrüpteeritakse sama võtmega.

Näiteks Alice krüpteeris mõne sõnumi ja soovib selle Bobile saata. Loomulikult vajab Bob selle lugemiseks võtit, millega sõnum krüpteeriti. Ja siis tekib probleem, kuidas võtit üle kanda nii, et keegi seda kinni ei saaks. Uudishimulikud meeled teevad pakkumise – las nad edastavad selle isiklikult ja suhtlevad siis nii palju kui tahavad. Jah, ma ei vaidle vastu, see on väljapääs. Kujutage nüüd korraks ette, et teie Interneti-post nõuab enne sellesse sisselogimist, et reisite meiliserveri füüsilisse asukohta. Mugav? Võib-olla mitte väga palju.

Loomulikult saab võtit edastada ka teise sidekanali kaudu. Kuid krüptograafia peab kõiki turvamata sidekanaleid ebaturvalisteks. See tähendab, et näiteks võtme telefoni teel Bobile üleandmist peetakse ebaturvaliseks, nagu miski ei takista Evel ka telefoni kuulamast.

Kuni 70ndateni muutus see probleem nii igapäevaseks, et peeti aksioomiks, et sõnumi edastamiseks oli vaja edastada võti, millega sõnum krüpteeriti (ja osa inimesi arvab nii siiani). Kuid 1976. aastal pakkusid Diffie ja Hellman välja oma "eksponentsiaalse võtmevahetuse meetodi". Alates nendest aastatest algas asümmeetriliste krüptosüsteemide väljatöötamine.

Natuke päriselust

Enne mis tahes algoritmi uurimist peate ette kujutama, kuidas see töötab. Ja kõige lihtsam on võrrelda seda sellega, kuidas miski tegelikkuses töötab.

Kujutagem ette, et Alice ja Bob elavad riigis, kus kogu postisüsteem on täiesti ebamoraalne ja postitöötajad loevad kõiki turvamata kirju. Alice, mitte rumal tüdruk, võttis enne Bobile sõnumi saatmist raudkarbi ja, pannes kirja sisse ja sulgedes selle lukuga, saatis selle kasti Bobile.

Loomulikult ei saa postkontor seda kirja lugeda, kuid Bob ise ei saa seda lugeda, kuna tal pole võtit, millega lukk suletakse. Alice võib muidugi võtta teise raudkarbi, panna sinna eelmise võtme ja saata Bobile, aga Bob ei saa ka seda avada...

Ainus võimalus on teha võtmest duplikaat ja anda see isiklikult Bobile...

Ja nii hakkabki tunduma, et võtmevahetus on krüptimise vältimatu osa – või ei ole?

Kujutagem ette teistsugust pilti. Panen selle samm-sammult kirja:

  1. Alice paneb oma kirja raudkarpi ja saadab selle lukustades Bobile.
  2. Bob võtab kasti kätte saades (tähelepanu!) oma luku ja, olles sellega kasti lisaks lukustanud, saadab selle tagasi.
  3. Alice saab juba kahe lukuga karbi kätte (tuletan teile meelde, Alice'i esimene lukk, mille võti tal on, ja Bobil teine, mille võti on ainult Bobil).
  4. Alice eemaldab oma luku ja saadab kasti Bobile tagasi
  5. Bob saab kasti ühe oma lukuga, mille jaoks tal on võti
  6. Bob avab oma allesjäänud luku võtmega ja loeb sõnumit

Selle novelli tähtsus on tohutu. See näitab, et kaks inimest saavad salajase sõnumi edastada ilma võtmeid vahetamata. Mõelge sellele! See lugu hävitab tegelikult kõik aksioomid, millele tolleaegne krüptograafia üles ehitati. Jah, meil tekib protsessil mõningane tüsistus (kast tuli kolm korda saata), aga tulemus...

Tuleme tagasi krüptograafia juurde

Näib, et lahendus on leitud. Saatja ja vastuvõtja krüpteerivad oma sõnumi ning seejärel dešifreerivad vestluskaaslased kordamööda enda oma.


Kuid asi on selles, et puuduvad šifrid, mis võimaldaksid šifri teisest šifrist eemaldada. See tähendab, et etapp, kus Alice oma šifri eemaldab, on võimatu:


Kahjuks nõuavad kõik saadaolevad algoritmid endiselt šifrite eemaldamist järjekorrast, milles neid rakendati. Ma kardan seda nimetada aksioomiks (kuna ajalugu juba teab juhtumeid, kui sellised aksioomid purustati puruks), kuid see on endiselt nii.

Tuleme tagasi matemaatika juurde

Ülalkirjeldatud karbiidee inspireeris Diffiet ja Hellmanit otsima viisi sõnumi edastamiseks. Lõpuks hakkasid nad kasutama ühesuunalisi funktsioone.

Mis on ühesuunaline funktsioon? Näiteks on olemas kahekordistamise funktsioon, st. double(4)=8, see on kahepoolne, sest tulemusest 8 on lihtne saada algväärtust 4. Ühesuunaline funktsioon on funktsioon, mille rakendamise järel on algväärtust peaaegu võimatu saada. Näiteks kollase ja sinise värvi segamine on ühesuunalise funktsiooni näide. Sega need kokku lihtsalt, kuid originaalkomponentide tagasi saamiseks - võimatu. Üks selline funktsioon matemaatikas on moodularvutus.

Algoritmi aluseks pakkus Hellman funktsiooni Y x (mod P). Sellise funktsiooni pöördteisendus on väga keeruline ja võib öelda, et sisuliselt koosneb see algväärtuste täielikust loetlemisest.

Näiteks öeldi sulle seda 5 x (mod 7) = 2, proovige leida x, A? Leidsid selle? Kujutage nüüd ette, et numbrid suurusjärgus 10 300 on Y ja P.

Muide, vastupidavuse suurendamiseks number L peab olema algarv ja Y- olema primitiivne juurmoodul L. Kuid kuna me püüame endiselt teooriat mõista, ei näe ma mõtet sellega vaeva näha.

Diffie-Hellmani algoritm

Ja siis ühel päeval koitis Hellman ja ta suutis välja töötada toimiva võtmevahetuse algoritmi. Selle algoritmiga töötamiseks peate sooritama samme mõlemal küljel, seega panen selle tabelisse:

Alice Uba
1. etapp Mõlemad osalejad on tähendustes ühel meelel Y Ja Lüldise ühesuunalise funktsiooni jaoks. See teave ei ole salajane. Oletame, et väärtused on valitud 7 Ja 11 . Üldfunktsioon näeks välja selline: 7 x (mod 11)
2. etapp Alice valib näiteks juhusliku numbri 3 A Bob valib näiteks juhusliku arvu 6 , hoiab seda saladuses, tähistame seda numbrina B
3. etapp Alice asendab numbri A 7 3 (mod 11)= 343 (mod 11) = 2 a Bob ühendab numbri Büldfunktsiooniks ja arvutab tulemuse 7 6 (mod 11)= 117649 (mod 11) = 4 , tähistab selle arvutuse tulemust arvuna b
4. etapp Alice annab numbri edasi a Bob Bob edastab numbri b Alice
5. etapp Alice saab b ja arvutab väärtuse b A (mod 11)= 4 3 (mod 11) = 64 (mod 11) = 9 Bob saab a Alice'ilt ja arvutab väärtuse a B (mod 11)= 2 6 (mod 11) = 64 (mod 11) = 9
6. etapp Mõlemad osalejad said lõpuks numbri 9 . Sellest saab võti.

Maagia? Ma ei vaidle vastu, see pole esmapilgul selge. Kuid pärast seda tabelit lugedes ja mõeldes saab selgeks, kuidas see töötab. Kui aga pole selge, siis kerige peatüki lõppu, kuhu postitasin selgitava video.

Lisaks pange tähele, et lõpliku valemi võtme saamiseks peab igal inimesel olema kolm väärtust:

  • Väärtused a Ja L ja Bobi salajane number B
  • või tähendusi b Ja L ja Alice'i salajane number A

Aga salanumbreid üle kanali ei edastata! Eve ei saa võtit tagasi ilma kellegi salanumbrita. Miks - ma kirjutasin eespool, see funktsioon on ühesuunaline. Proovige võrrandit lahendada 4 x (mod 11) = 2 y (mod 11) olles leidnud x Ja y.

Hellmani skeemi toimimise selgemaks muutmiseks kujutage ette šifrit, mis kasutab võtmena värvi:

Oletame esmalt, et kõigil, sealhulgas Alice'il, Bobil ja Evel, on kolmeliitrine purk, kuhu valatakse liiter kollast värvi. Kui Alice ja Bob soovivad salajases võtmes kokku leppida, lisavad nad kumbki oma purkidesse ühe liitri oma salavärvi.

Alice saab lisada lillat värvi ja Bob võib lisada karmiinpunast. Pärast seda saadab igaüks oma purgi koos segatud sisuga teisele.

Lõpuks võtab Alice Bobi segu ja lisab sellele ühe liitri oma salavärvi ning Bob võtab Alice'i segu ja lisab sellele ühe liitri oma salavärvi. Mõlema purgi värv on nüüd sama värvi, kuna igas purkis on üks liiter kollast, lillat ja karmiinpunast värvi.

Just seda värvi, mis saadakse kahekordse värvipurkide lisamisega, kasutatakse võtmena. Alice'il pole aimugi, millist värvi Bob lisas ja Bobil pole ka aimu, millist värvi Alice valas, kuid mõlemad saavutasid sama tulemuse.

Vahepeal on Eve maruvihane. Isegi kui tal õnnestuks vaheprodukti sisaldavad purgid kinni püüda, ei saaks ta lõplikku värvi, mis oleks kokkulepitud võti, määrata. Eve näeb Bobile saadetud purgis kollase värvi ja Alice'i salavärvi segamisel saadud värvi värvi ning Alice'ile saadetud purgis kollase värvi ja Bobi salavärvi segamisel saadud värvi värvi. , kuid võtme leidmiseks on tal tegelikult vaja teada Alice'i ja Bobi originaalsete salavärvide värve. Segavärvipurke vaadates ei suuda Eve aga Alice'i ja Bobi salavärve tuvastada. Isegi kui ta võtab ühest segatud värvist proovi, ei saa ta seda salajase leidmiseks originaalvärvideks eraldada, kuna värvi segamine on ühesuunaline funktsioon.

Kas pole ikka veel selge? Seejärel vaadake videot:

Noh, ma loodan, et saate aru, et võtmete turvaliseks vahetamiseks on väga reaalne viis. Kuid pange tähele, et seda algoritmi ei ole veel võimalik nimetada asümmeetriliseks šifriks, kuna sisuliselt on see lihtsalt võtmevahetusalgoritm.

Asümmeetriline krüptimine

asümmeetriline algoritm eeldab kahe võtme olemasolu - avalik ja privaatne. See tähendab, et sõnum krüpteeritakse avaliku võtmega ja dekrüpteeritakse privaatvõtmega ja ei midagi muud. Tegelikult sõnastas Diffie just selle kontseptsiooni.

Üldiselt on selle algoritmi olemus selles, et vastuvõttev pool genereerib enne sõnumi vastuvõtmist modulaarse aritmeetilise algoritmi alusel võtmepaari (põhimõte on sama, mis Diffie-Hellmani algoritmis), tegelik privaatne ja avalik. võti. Enne saatmist saab saatja avaliku võtme ja krüpteerib sõnumi selle võtmega, misjärel saab seda sõnumit dekrüpteerida vaid privaatvõtmega, mida vastuvõttev pool hoiab saladuses.


Kui pöördume tagasi analoogia juurde lukkudega, siis võib avaliku võtmega krüptimist mõelda järgmiselt:

Igaüks saab luku lukustada, klõpsates sellel lihtsalt, kuni see sulgub, kuid lukust saab avada ainult see, kellel on võti. Luku lukustamine (krüpteerimine) on lihtne, sellega saavad hakkama peaaegu kõik, kuid avada (dekrüpteerimine) saab ainult võtme omanik. Kui mõistate, kuidas lukk lukustada nii, et see sulguks, ei anna teile teavet selle avamise kohta.

Võib tuua sügavama analoogia.

Kujutage ette, et Alice kavandab lukku ja võtit. Ta valvab valvsalt võtit, kuid teeb samal ajal tuhandeid dubleeritud lukke ja saadab need postkontoritesse üle maailma. Kui Bob soovib sõnumit saata, paneb ta selle kasti, läheb kohalikku postkontorisse, küsib "Alice'i lukku" ja lukustab sellega kasti. Nüüd ei saa ta enam kasti avada, kuid kui Alice karbi kätte saab, saab ta selle oma ainsa võtmega avada.

Luku panemine ja sulgemiseks klõpsamine võrdub krüptimise jagatud võtmega, kuna kõigil on juurdepääs lukkudele ja igaüks saab kasutada lukku sõnumi kastis lukustamiseks. Luku võti on samaväärne salajase dekrüpteerimisvõtmega, sest ainult Alice'il on see olemas, ainult tema saab luku avada ja ainult tema pääseb juurde kastis olevale sõnumile.

On mitmeid algoritme, mis rakendavad asümmeetrilist krüptimist. Kuulsaim neist on RSA. Ma ei näe mõtet seda kirjeldada, sest ma ei saa ikka veel kohe aru, kuidas see toimib, ja ma ei suuda ikkagi kirjutada seda paremini kui Wikipedias kirjutatu.

Järeldus

Noh, ma loodan, et saades aru, kuidas asümmeetriline krüptimine seestpoolt töötab, hakkate seda rohkem usaldama ja vastavalt kasutama SSL-i sagedamini =)

Kasutati materjale raamatust Singh Simon – Book of Codes. Muide, parim raamat neile, kes tahavad krüptograafiast vähemalt natukenegi aru saada. Soovitan kõigil seda lugeda.

  1. tv

    Sellise võtme valimine võtab palju aega. Veidi rohkem kui universum on olemas. Isegi väga võimsatel arvutitel.

  2. Igor

    Milleks see jama avalike võtmetega? Sümmeetrilised on usaldusväärsemad.
    Tere pärastlõunast
    Hea sait, materjal on selgelt esitatud, suur tänu autorile. Sattusin siia juhuslikult septembris, kui otsisin praktilise krüptimise kohta teavet.
    Kirjutan, sest tahan küsida: Kas keegi soovib teada, kuidas leida sümmeetrilise krüptimise jaoks numbreid? Ma võin teile õpetada, kuidas kiiresti kontrollida arvu P ürgsust (ilma numbrit g otsimata), kuid see pole tõenäoliselt huvitav. Kõige huvitavam:
    Leidke suvalise pikkusega arv P ja selle arv g. Ma ei kasuta ühtegi 2 astmes n pluss üks (või miinus üks). Loomulikult on see tasuta. On isegi veebisait, kuhu ma oma tööd postitasin.

  • Uasja Petrovitš

    Saan aru, et palju aega on möödas, aga vastan ikka uutele lugejatele nagu mina.

    See ei tööta, sest... pärast toiminguid 2 ja 3 näeme erinevust, mille võrra iga ploki arv on muutunud, seetõttu saab Bobi salanumber meile ilmseks ja saame sõnumi alles pärast 4. toimingut pealt kuulata (st ilma Alice'i šifrita) ja kasutada seda, mis on Bobi number on meile juba teada.

  • Jevgeni

    Suur tänu artikli eest!
    Pärast lugemist langes peaaegu kõik oma riiulitele ja omandas struktuuri, mida oli lihtne laiendada.
    Sellise ülesehitusega on lihtne õigeid küsimusi genereerida (MiTM ründeriiul, eriline tänu Mihhailile :)).

    Pedagoogilisest vaatenurgast tegite kõik suurepäraselt. Arvan, et sul on õigus, et sa ei lisanud sellele artiklile MiTM-i rünnakuid, muidu oleks tekkinud info üleküllus.

    Video on imearmas, eriti arvestades selle vanust.

    PS: metafooride kasutamist "keeruliste" süsteemide selgitamiseks on ausalt öeldes raske üle hinnata. Aitäh veelkord!

  • dbzix

    Sellest artiklist ei tabanud ma üleminekuhetke Diffie-Hellmani algoritmilt, kus kaks tellijat vahetavad avalikke andmeid ja arvutuste vahetulemusi salajase võtme saamiseks (näites oli koguni 6 etappi) etappi, kus krüptimiseks kasutatakse teatud avalikku võtit, mis seejärel dekrüpteeritakse privaatset kasutades (loen siinkohal ainult 2 andmeedastuse etappi - avaliku võtme saatmine ja selle võtmega krüpteeritud sõnumi saatmine).
    Need. Ma saan aru, et kuskil nende kahe seletuse vahel on ilmselt peidus palju matemaatikat ja lõpuks taandub seletus lausele "nii see käib, lihtsalt usalda mind." Kuid tõenäoliselt oleks seda äkilist üleminekut lihtsam mõista, kui analoogiat värvidega laiendataks, et selgitada avaliku võtmega krüptimise olemust, millele järgneb privaatvõtmega dekrüpteerimine. Vahepeal on tulemuseks mingi "B töötab, sest A", samas kui A ja B vahel puudub selge seos. Vähemalt minu jaoks.
    Kallis autor, kas te oleksite nii lahke ja selgitaksite mulle seda müstilist hüpet punktist A punkti B? :) Aitäh!

  • Jevgeni

    Tere pärastlõunast

    Arvestades: on olemas valem Y^x (mod P).
    artikli näide põhineb valemil 7^x (mod 11)

    Võtsin näiteks 4^x (mod 7).
    ja ma ei suutnud ühist võtit välja mõelda.
    Küsimus: miks näites toodud algoritm töötab 7^x (mod 11) ja mitte 4^x (mod 7) puhul?

  • Jessi-jane
  • Andrei

    Aitäh, suurepärane artikkel!
    Alles nüüd sain peaaegu selgeks algoritmi, kuidas läbi mooduli arvutada.
    Kas oskate öelda, kuidas arvutada arv B, kui arv A on moodulist väiksem?
    No näiteks:
    3 (mod 13) = ?

    Ma tean, et kui teil on vaja näiteks arvutada 625 (mod 13), on vaja 625/13 ja seejärel korrutada suurim võimalik täisarvu jagaja (48) mooduliga (mis siin võrdub 624-ga) ja lõpuks 625-624 = 1
    Arvud 625 ja 1 on võrreldavad mooduliga 13, kuna 624 jagub 13-ga.
    Sellest ma saan aru. Aga mis siis, kui moodul on suurem kui arv a?

  • Kollane õudus

    1. Inimese keskel rünnak on tõsine probleem. Niipalju kui ma aru saan, siis ainult krüptograafia raames seda probleemi põhimõtteliselt lahendada ei saa: kui nõustume, et Eve suudab kinni püüda ja märkamatult asendada KÕIK andmed, mis Alice'ile tulevad või mis temalt pärinevad MIS TAHES kommunikatsioonikanalite kaudu, ei mingit krüptimist. aitab. Vähemalt ühe sertifikaadi peab Alice hankima täiesti usaldusväärsest allikast. Kuid kui ründaja saab ainult sidekanalit kuulata ja selles olevaid andmeid mitte muuta, on asümmeetriline krüptimine üsna usaldusväärne.
    2. Mis puudutab võimalust eemaldada üks “šifrikiht” teise alt, siis see omadus on banaalsel XOR-funktsioonil, mida krüptograafias laialdaselt kasutatakse iidsetest aegadest tänapäevani. Ma arvan, et seda ei saa patenteerida :(

    1. Dmitri Amirov Autor

      Jah, sul on õigus, tänast mitm-rünnakut ei saa kuidagi lahendada, kui oled absoluutselt paranoiline. Kui seda pole, pakub sertifikaatide ja allkirjadega askeldamine “vajaliku ja piisava” kaitse.

      Mis puutub funktsiooni XOR, siis vaevalt saab seda šifriks nimetada, sest see ei ole oma olemuselt üks.

      1. Kollane õudus

        Tule nüüd? Googelda Vernam Cipher. See on sõnumsidesüsteem absoluutne krüptokindel. Ja see põhineb täpselt XOR-il. Jättes kõrvale mõned korralduslikud raskused (tõeliselt juhuslike ühtse jaotusega võtmete loomine, krüpteerimisploki saladuse hoidmine ebasõbralikus keskkonnas ja kasutatud võtmete turvaline hävitamine), pole inimkond veel midagi lihtsamat ja usaldusväärsemat välja mõelnud.

      2. Kollane õudus

        Kuigi mõistlikult järele mõeldes sain aru, et topeltpööratava krüptimise meetod ei tööta, kui ründaja teab krüpteerimisalgoritmi. Vaatame näiteks Mihhaili ideid:

        1. Jagame krüpteeritud teabe plokkideks. Iga plokk on tähistatud numbriga. Ploki suurus (bittide arv) määrab võimalike plokiväärtuste arvu ja (vastavalt?) krüptimise tugevuse.
        2. Sõnumi krüpteerimiseks valib Alice salajase numbri (mida ta kellelegi ei saada), mille ta lisab igale plokkides olevale numbrile ja saadab selliselt krüpteeritud sõnumi Bobile.

        Seni on kõik hästi: Eve ei saa Alice'i sõnumit lugeda, sest... ei tea võtme numbrit. Kui plokid on piisavalt suured, on Alice'i sõnumit raske taastada, kuid kui plokk on sõnumist pikem ja võtmel pole turvaauke, on see võimatu. Kuid Eve saab ja kopeerib Alice'i šifrigrammi.

        3. Bob saab krüpteeritud kirja, valib oma salanumbri (mida ta ka kellelegi ei saada), lisab selle numbri igale numbrile Alice'i krüpteeritud sõnumiplokkides ja saadab selle topeltkrüpteeritud sõnumi Alice'ile .

        Ja siit algavad probleemid: Eve ei saa ikka veel Alice'i sõnumit lugeda, kuid Bobi saadud šifri koopia ja tema saadetud topeltkrüptimisega saab ta hõlpsasti taastada. võti Boba.

        4. Alice lahutab selle topeltkrüpteeritud sõnumi plokkides olevast igast numbrist oma salanumbri ja saadab saadud sõnumi Bobile.

        Alice on eemaldanud oma šifri "kihi" ja saadab nüüd Bobile oma kirja, krüpteerituna ainult Bobi võtmega. Mis Eval juba on! Eve dekrüpteerib kirja ja loeb selle läbi ning saab igaks juhuks Alice'i võtme taastada, kasutades kirja dekrüpteeritud teksti ja esimest šifri, mille ta pealt kuulas.

  • Dmitri

    Tere. Hea artikkel, aga ma ei saanud ka mõnest ülalkirjeldatud punktist aru.
    See on üleminek mõlema vestluspartneri (Alice ja Bob) salajase võtme saamise algoritmilt (ilma neid avalikkusele juurdepääsu andmata) asümmeetrilisele krüptimisele.
    Kirjutate, et kiri on Alice'i poolel Bobilt saadud avaliku võtmega krüpteeritud. Aga kui me krüpteerime avaliku võtmega, saab Eve selle hõlpsalt kätte ja ise dekrüpteerida, eks?
    Mulle jääb endiselt ebaselgeks, kuidas saate avaliku võtmega krüptida ja dekrüpteerida ainult saladus Bobi poolel. See tähendab, et nad krüpteerisid selle sõnaga "Kodu" ja dešifreerisid selle sõnaga "maailm". Minu jaoks on see mingi jama.
    Nende ilmsete lünkade (kas sinu või minu oma) põhjal järeldasin, et siin peab vooluring olema keerulisem kui pildil. Tõenäoliselt tähendab nool Bobi avalikust võtmest Alice'ile midagi muud, nimelt kogu toimingute jada "Y" ja "P" saamiseks, vahetulemuste saamiseks jne. Ehk siis ma arvan, et kui algne kiri krüpteeritakse väidetavalt avaliku võtmega, siis tegelikult krüpteeritakse see mitte avaliku võtmega, vaid salajase võtmega, mida arvutatakse mõlemalt poolt eraldi.

    Mul oli ka küsimus topeltkrüpteeritud sõnumi dekrüpteerimise kohta. Kui võtame näiteks Caesari šifri, kus iga täht on krüpteeritud teise tähega, mis seisab näiteks 3 positsiooni edasi. Kui Alice krüpteerib kirjas oleva tähe A tähega B ja seejärel Bob krüpteerib selle tähe B tähega G, on G-lt A-tähte lihtne kätte saada ja seda suvalises järjekorras. Tõsi, see töötab suure tõenäosusega ainult juhtudel, kui mõlemad teavad vestluspartneri krüpteerimistüüpi ja üsna lihtsate krüpteerimistüüpide puhul (mono-/polüalfabeetiline). Olen ka krüptograafias uus, nii et see on minu arvamus ;)

    1. Dmitri

      Unustasin küsida.
      Mis vahe on sümmeetrilistel ja asümmeetrilistel meetoditel?

      1. Dmitri

        Lugesin läbi, enam-vähem grupeerisin kõik mõttes.
        Vastan oma kirjutatud küsimustele, aidates sellega ehk teisi lugejaid.
        1. Umbes

        Kirjutate, et kiri on Alice'i poolel Bobilt saadud avaliku võtmega krüpteeritud. Aga kui me krüpteerime avaliku võtmega, saab Eve selle hõlpsalt kätte ja ise dekrüpteerida, eks?
        Samuti jääb mulle ebaselgeks, kuidas on võimalik krüptida avaliku võtmega ja dekrüpteerida ainult salajase võtmega Bobi poolel. See tähendab, et nad krüpteerisid selle sõnaga "Kodu" ja dešifreerisid selle sõnaga "maailm". Minu jaoks on see mingi jama.

        Selles artiklis mainitakse RSA algoritmi. Sümmeetriline krüpteerimisalgoritm. Tegelikult kasutab see järgmist algoritmi:
        1) Lähtudes teatud ühesuunalisest krüpteerimisfunktsioonist (funktsioon, mida ühes suunas on lihtne arvutada, aga teises suunas väga raske. A) loome adressaadi peal paari (avalik võti; privaatvõti). See paar on unikaalne, see tähendab, et iga avalik võti vastab selle ühesuunalise funktsiooni ainulaadsele privaatvõtmele.

        3) Saatja krüpteerib sõnumi
        4) Ülekanded saajale

        Nagu näete, ei tea saatja privaatvõtit ja ta ei saa oma krüpteeritud sõnumit dekrüpteerida. Sellepärast nimetatakse seda asümmeetriliseks, sest ühel on kõik võtmed ja teisel ainult krüpteerimiseks vajalik osa.

        Mis vahe on sümmeetrilistel ja asümmeetrilistel meetoditel?
        Kui ma kasutaksin salajase võtme edastamiseks Diffie ja Hellmani algoritmi ja saaksin seejärel krüptitud sõnumi turvaliselt edastada, kas see meetod oleks sümmeetriline?

        Daffy-Hellmani algoritm, mis teenindab võtme vahetamist ja edasist sümmeetrilist krüptimist. See tähendab, et selle olemus seisneb selles, et esmalt saavad mõlemad krüpteerimiseks ja dekrüpteerimiseks täieliku võtme ning seejärel alustavad kõige tavalisemat sümmeetrilist krüptimist.

        Asümmeetriline meetod - ühel sõlmel on kogu teave krüptimiseks / dekrüpteerimiseks ja teisel reeglina ainult krüptimiseks

        Sümmeetriline – mõlemad sõlmed teavad kogu krüpteerimiseks/dekrüpteerimiseks vajalikku teavet.

        Loodan, et aitasin kedagi;3

        1. Dmitri

          Selles artiklis mainitakse RSA algoritmi. Asümmeetriline krüpteerimisalgoritm Ma pitseerisin selle.

        2. Dmitri Amirov Autor

          Hmm... alles nüüd märkasin teie kommentaare. Minu vabandused.

          Kõik tundub õige olevat. Teie viimase lõigu kohta on üks asi, täpsemalt terminid:

          • Daffy-Hellmani algoritm- on algoritm, mis võimaldab teil hankida ühe jagatud salajase võtme ja mitte midagi enamat
          • Asümmeetriline/sümmeetriline krüptimine- üldiselt on teiega kõik õige
          • RSA- algoritm, mis on nende asjade kombinatsioon. Teie sõrmedel: kasutades asümmeetrilist krüptimist Deffie-Helmani protokolli abil, luuakse salajane võti, mille abil krüpteeritakse vestluspartnerite vahelised sõnumid sümmeetrilise krüptimise meetodil.
        3. Dmitri

          Ma ei saanud ikka aru lausest:
          2) Avalik võti edastatakse saatjale.
          3) Saatja krüpteerib sõnumi
          4) Ülekanded saajale
          5) Saaja dekrüpteerib privaatvõtme abil. Seda sõnumit ei saa avaliku võtmega dekrüpteerida.

          Selgub, et sa pidasid seda silmas juba algusest peale. Me krüpteerime sõnaga Kodu ja dekrüpteerime sõnaga maailm. Kas see tähendab, et on olemas teine ​​algoritm, mis ühendab Maailma ja Kodu omavahel?

  • Robert

    Suur tänu!!!

  • Romaan

    Tänan teid. Lõpuks otsustasin välja mõelda, kuidas see töötab, ja õppisin sellest artiklist. Ainult, ma usun, et kui kaaslased tunnevad üksteist ja avalikke võtmeid on võimalik turvaliselt vahetada, siis tasub seda teha. Kõrvaldada võtmete vahetamisel keskel oleva inimese võimaliku ilmumise kahjulik mõju, kes teeskleb, et on A kui B ja B kui A, asendades võtmed enda omadega ja vaadates lõpuks kogu teavet.

    Ja videos arvan, et see on asjata, et nad kasutavad seda 3^(24*54), sest Pole üldse selge, kust see tuli, või nad selgitavad, et see on tingimuslik.

  • RinswinD

    Aitäh artikli eest. Kõik on väga selgelt lahti seletatud.

  • grigory

    Noh, see kirjaoskamatus ärritab kõiki - "ühekülgne", "rakendatav", "pikk", justkui 5. klassis. Ja nii, pole paha põhitõdede mõistmiseks.

  • grigory

    Mõnikord on küsimus lihtne. Lunavaraviirused kasutavad privaatvõtit. On originaalfail, on krüpteeritud fail. Ülesanne: leidke nii-öelda algoritm, mis otsib algoritmi esimese faili teisendamiseks...

  • Allexys

    Aitäh selge ja lõbusa artikli eest! Lõpuks sain põhitõed selgeks :).

  • Jaroslav

    Kahjuks nõuavad kõik saadaolevad algoritmid endiselt šifrite eemaldamist järjekorrast, milles neid rakendati.

    See pole täiesti tõsi. Toon teile näite:
    — oletame, et iga täht vastab digitaalsele koodile A = 1, B = 2, C = 3 jne;
    — oletame, et Alice saadab Bobile kirja, mis koosneb ühest tähest A (näite lihtsustamiseks);

    Alice: paneb oma šifri A + 2 = B

    Bob: paneb oma šifri B + 3 = E
    Bob: saadab Alice'ile kirja
    Alice: eemaldab oma šifri E - 2 = G
    Alice: saadab Bobile kirja
    Bob: eemaldab oma šifri G – 3 = A

    Siin on number 2 Alice'i salavõti, 3 on Bobi salavõti. Pealegi ei pruugi see olla ühetäheline. Põhimõtteliselt on selle pikkus piiramatu.

  • Dmitri

    Pikka aega vältisin asümmeetrilise krüptimise teoreetilisi aluseid. Teadsin pealiskaudselt – on avalik võti, millega andmeid krüpteeritakse, ja on privaatvõti, millega andmeid dekrüpteeritakse. Kuid mõte sellise krüptimise rakendamisest on mind alati häirinud.
    Teie artikkel aitas palju, tänan teid selle eest!
    Alles selle lõpupoole nägin uuesti seda jama – "avaliku võtmega krüptitud". Sõnum krüpteeritakse ju rangelt võttes mitte avaliku võtmega, vaid võtmega, mis on saadud saatja privaatvõtme ja saaja avaliku võtme alusel (mis omakorda genereeriti saaja privaatvõtme alusel). Tõepoolest, Alice'i ja Bobi tabelis - nemad ja ainult nemad suutsid saada sama võtme "9" - kasutatakse seda sõnumi krüptimiseks ja dekrüpteerimiseks. Kuid seda võtit saab hankida ainult võtmete paari põhjal – salajane (Alice/Bob) ja avalik (Bob/Alice).
    Piltlikult – jah, kiri on alati krüptitud saatja salavõtmega (see on jämedalt öeldes konstantne) ja saaja avaliku võtmega (oleneb konkreetsest adressaadist), seega kirjelduses krüpteerimine “salajase” võtmega jäetakse välja – ja see väljajätmine rikub kogu arutluskäigu.

  • Clarkson

    Lugesin artiklit ega saanud sellest kuigi hästi aru, kuigi see oli parem kui vikis. Kuid on ainult üks asi, millest ma aru ei saa. Kui keegi oskab õigesti vastata, palun aidake.

    kui saadan kõigile küsimuse “kui palju on 2+2?”, siis ma ütlen neile, kuidas vastust mulle krüpteerida (ma ütlen kõigile avaliku võtme) ja kõik saadavad mulle vastuse küsimusele, kuidas ma leian kellelt ma täpselt vastust ootan ehk kellega Kas ma tõesti tahtsin sidet luua?

    1. Dmitri Amirov Autor

      Siin sa esitad küsimuse natuke valesti.

      Kui teil on vaja kellegagi side luua, siis peate minema vastupidises suunas. Loote oma vestluskaaslasega ühenduse ja juba ta ütleb sulle annab teie avaliku võtme, mitte teie.

      UPD: kirjutasin selle kohta artikli, arvan, et see on õige vastus teie küsimusele.

      1. Clarkson

        Ma pean oma rumaluse vastu võitlema. teemat arutatakse kommentaarides ja teie artiklis, tundub, et kõik oli selgitatud.

        ikka veel. Miks ma pean tema võtme avaldama? ütle mulle, kui ma ei saa õigesti aru.
        Mina olen algataja (vajan vastuseid, näites olen vastuvõtja), mis tähendab, et genereerin paari. see on tema, kes vastab (teie näite saatja), kes vajab minu avalikkust

        Enne saatmist saab saatja avaliku võtme ja krüpteerib sõnumi selle võtmega, misjärel saab seda sõnumit dekrüpteerida vaid privaatvõtmega, mida vastuvõttev pool hoiab saladuses.

  • Beshot

    Lugesin seda artiklit ja teisi selleteemalisi kirjutisi mitu korda uuesti läbi, kuid meilis digiallkirjade kasutamise algoritm on ebaselge. dokumente Kui see on nii siin: https://ru.wikipedia.org/wiki/Electronic_signature, siis tekivad lahknevused. Kas krüpteerime ikkagi privaatvõtme või avaliku võtmega?

    1. Dmitri Amirov Autor

      Kui me millelegi alla kirjutame, moodustame allkirja oma privaatvõtme alusel. Ja adressaadil peab olema meie avalik võti, selle abil saab ta selle allkirja lahti krüptida.

      Kui allkiri on "dekrüpteeritud", vastab avalik võti privaatvõtmele ja kuna a priori on privaatvõti ainult saatjal, mis tähendab, et saatja allkirjastas dokumendi.

      1. Beshot

        Dmitri, teie artikkel aitas mind palju, teil on hea stiil. Kuid on arusaamatu punkt: väidate, et asümmeetriline algoritm eeldab kahe võtme - avaliku ja privaatse - olemasolu. See tähendab, et sõnum krüpteeritakse avaliku võtmega ja dekrüpteeritakse privaatvõtmega ja ei midagi muud.

        Asi võib olla algses ülesandes, näiteks peab adressaat sõnumitooja autentima.
        Siis ma ei kujuta ette, kuidas see skeem aidata saab?

        1. Dmitri Amirov Autor

          See tähendab, et sõnum krüpteeritakse avaliku võtmega ja dekrüpteeritakse privaatvõtmega ja ei midagi muud.

          Ei ole täiesti tõsi. Sõnum krüpteeritakse ühe võtmega ja dekrüpteeritakse teise võtmega. Need. Seda on täiesti võimalik privaatselt krüpteerida ja avalikult dekrüpteerida.

          Vaatame näidet. Kui soovite mulle sõnumi saata, ma tahan olla kindel, et see olite teie, kes selle mulle saatis. Samm-sammult:
          1) Krüpteerite sõnumi privaatvõtmega
          2) Saada see mulle
          3) Ma võtan teiega ühendust ja saan teie avaliku võtme
          4) Dekrüpteerin vastuvõetud sõnumi teie avaliku võtmega
          5) Kui sõnum dekrüpteeritakse, tähendab see, et selle saatis teie

          Keegi teine ​​ei saa saata seda sõnumit ennast teeseldes, sest ainult teil on privaatvõti.

          1. Beshot

            Ok, aga mis siis, kui teil on vaja sõnumit uudishimulike pilkude eest varjata?

  • Anya

    Tere pärastlõunast Mulle artikkel meeldis, aga küsimusi tekkis ikka (kommentaarides oli isegi paar sarnast, aga ilma vastusteta).
    Kui artikli teises osas liigume edasi analoogia juurde Alice'i ja Bobiga, eelkõige numbrite A, B, a, b, P ja näites saadud numbriga 9, siis milline neist on privaatvõti ja milline saab olema avalik võti? Täname juba ette vastuse eest!

    1. Anya

      Pole selge, kas mu kommentaar postitati või mitte :(

    2. Dmitri Amirov Autor

      Õigem oleks öelda, et andmete vahetamise käigus saavad Alice ja Bob ühise võtme 9 , mida saab hiljem kasutada nende sõnumite krüpteerimiseks. Tegelikult ei kirjeldanud ma artiklis mitte asümmeetrilist krüptimist ennast, vaid võtmevahetusprotokolli, mis andis tõuke asümmeetrilise krüptimise väljatöötamisele.
      Privaatvõtme/avaliku võtme paari genereerimise algoritm on tegelikult veidi keerulisem, kuigi sarnaneb ülalkirjeldatud algoritmiga, kuid väärib ilmselt siiski eraldi artiklit. Ma ei kirjuta seda kohe kommentaaridesse, sest võin palju asju segi ajada.

  • Gregory
  • CNewsi analüütikute tabava definitsiooni kohaselt möödus 2005. aasta Venemaal moto all "kaitske end sisemiste ohtude eest". Samad suundumused olid selgelt märgatavad ka eelmisel aastal. Arvestades hiljutisi andmebaaside varguste ja hilisema vabamüügiga seotud juhtumeid, on paljud ettevõtted hakanud tõsisemalt mõtlema oma inforessursside turvalisuse ja konfidentsiaalsetele andmetele juurdepääsu piiramise probleemile. Teatavasti on väärtusliku teabe ohutuse 100% garantii praktiliselt võimatu, kuid tehnoloogiliselt on võimalik ja vajalik selliseid riske miinimumini viia. Nendel eesmärkidel pakuvad enamik infoturbe tarkvara arendajaid terviklikke lahendusi, mis ühendavad andmete krüptimise võrgu juurdepääsu kontrolliga. Proovime selliseid süsteeme üksikasjalikumalt käsitleda.

    Volitamata juurdepääsu eest kaitsmiseks on turul üsna palju konfidentsiaalset teavet salvestavate ja töötlevate serverite (Aladdin, SecurIT, Fiztekhsoft jne) tarkvara ja riistvara krüpteerimissüsteemide arendajaid. Iga pakutud lahenduse keerukuse mõistmine ja sobivaima valimine on mõnikord keeruline. Kahjuks teevad krüpteerimisvahenditele pühendatud võrdlevate artiklite autorid sageli selle tootekategooria eripära arvesse võtmata võrdlusi kasutusmugavuse, seadete rikkalikkuse, liidese kasutajasõbralikkuse jms põhjal. Interneti-sõnumitoojate või allalaadimishaldurite testimisel on see õigustatud, kuid konfidentsiaalse teabe kaitsmise lahenduse valimisel on see vaevalt vastuvõetav.

    Tõenäoliselt me ​​selle väitega Ameerikat ei avasta, kuid sellised omadused nagu jõudlus, maksumus ja paljud teised ei ole krüpteerimissüsteemi valimisel kriitilised. Sama jõudlus ei ole kõigi süsteemide jaoks oluline ja mitte alati. Näiteks kui organisatsioonil on väike kohaliku võrgu ribalaius, kuid ainult kahel töötajal on juurdepääs krüpteeritud teabele, ei märka kasutajad tõenäoliselt krüpteerimissüsteemi üldse, isegi kõige "vabamalt".

    Selektiivsed on ka paljud muud selliste riist- ja tarkvarasüsteemide omadused ja parameetrid: mõne jaoks on need kriitilised, kuid teiste jaoks ükskõiksed. Seetõttu püüame pakkuda alternatiivset võimalust volitamata juurdepääsu ja konfidentsiaalse teabe lekkimise vastase kaitse võrdlemiseks – kõige olulisemate ja tõeliselt võtmeparameetrite järgi.

    Stirlitz, krüpteerimine teile!

    Andmekaitsesüsteemi valimisel tuleks ennekõike tähelepanu pöörata sellele, milliseid krüpteerimisalgoritme nad kasutavad. Teoreetiliselt võib ründaja piisava pingutusega lõhkuda mis tahes krüptosüsteemi. Ainus küsimus on, kui palju tööd ta selle saavutamiseks tegema peab. Põhimõtteliselt on praktiliselt iga krüptograafilise süsteemi purustamise ülesanne kvantitatiivselt võrreldav otsinguga, mis viiakse läbi kõigi võimalike valikute ammendava läbiotsimisega.

    Ekspertide hinnangul on 128-bitine turvatase piisav iga kaasaegse krüptosüsteemi jaoks. See tähendab, et sellise süsteemi edukaks rünnakuks oleks vaja vähemalt 2128 sammu. Krüptograafiaga kohandatud Moore'i seaduse järgi piisab isegi 110 või 100 bitist, kuid selliste võtmete jaoks pole loodud krüptoalgoritme.

    Algoritm ise peaks olema võimalikult laialt levinud. Tundmatuid “kodukirjutatud” algoritme ei ole krüptograafia valdkonna eksperdid analüüsinud ja need võivad sisaldada ohtlikke turvaauke. Seda arvesse võttes võib GOST, AES, Twofish, Serpent algoritme võtmepikkusega 128, 192 või 256 bitti pidada üsna usaldusväärseks.

    Asümmeetrilised krüpteerimisalgoritmid väärivad erilist tähelepanu. Nad kasutavad krüptimiseks ja dekrüpteerimiseks erinevaid võtmeid (sellest ka nimi). Need võtmed moodustavad paari ja need genereerib tavaliselt kasutaja ise. Teabe krüpteerimiseks kasutatakse nn avalikku võtit. See võti on avalikult teada ja igaüks saab seda kasutavale kasutajale adresseeritud sõnumi krüpteerida. Privaatvõtit kasutatakse sõnumi dekrüpteerimiseks ja seda teab ainult kasutaja ise, kes hoiab seda salajas.

    Levinud viis kasutajate avalike võtmete levitamiseks ja salvestamiseks on X.509 digitaalsed sertifikaadid. Lihtsamal juhul on digisertifikaat teatud tüüpi elektrooniline pass, mis sisaldab teavet kasutaja (nimi, identifikaator, e-posti aadress jne), kliendi avaliku võtme, sertifikaadi väljastanud sertifitseerimisasutuse, aga ka seerianumbri kohta. sertifikaadi number, aegumiskuupäev jne.

    Sertifitseerimisasutus (CA) on kolmas usaldusväärne osapool, kellel on kasutajate kõrge usaldusväärsus ja mis pakub meetmete komplekti sertifikaatide kasutamiseks sõltuvate osapoolte poolt. Sisuliselt on see sertifikaatide haldussüsteemi komponent, mis on loodud alluvate keskuste ja kasutajate elektrooniliste sertifikaatide genereerimiseks, mis on sertifitseeritud CA elektroonilise digitaalallkirjaga. Lihtsamal juhul kasutatakse nn iseallkirjastatud sertifikaate, kui kasutaja ise tegutseb enda sertifitseerimisasutusena.

    On üldtunnustatud, et asümmeetriliste krüpteerimisalgoritmide kasutamisel saavutatakse 128-bitise sümmeetrilise algoritmiga võrdne tugevus, kui kasutatakse võtmeid pikkusega vähemalt 1024 bitti. See on tingitud selliste algoritmide matemaatilise rakendamise iseärasustest.

    Lisaks krüpteerimisalgoritmidele endile tasub tähelepanu pöörata ka nende rakendamise meetodile. Riist- ja tarkvarasüsteemil võivad olla sisseehitatud krüpteerimisalgoritmid või see võib kasutada väliseid pistikprogramme. Teine võimalus on eelistatavam kolmel põhjusel. Esiteks saate turvalisuse taset tõsta vastavalt ettevõtte kasvavatele vajadustele, kasutades tugevamaid algoritme. Jällegi, kui turvapoliitika nõuded muutuvad (näiteks kui ettevõttel on vaja üle minna sertifitseeritud krüptoteenuse pakkujatele), on võimalik olemasolevaid krüpteerimisalgoritme kiiresti asendada ilma oluliste viivituste ja häireteta. On selge, et sisseehitatud algoritmi puhul on see palju keerulisem.

    Välise juurutamise teine ​​eelis on see, et sellisele krüpteerimistööriistale ei kehti selle levitamisel asjakohased seadusandlikud piirangud, sealhulgas ekspordi-impordipiirangud, ning see ei nõua vastavaid FSB litsentse selle levitamisega ja juurutamisega seotud ettevõtte partneritelt.

    Kolmandaks, ärge unustage, et krüpteerimisalgoritmi rakendamine pole kaugeltki triviaalne ülesanne. Õige rakendamine nõuab palju kogemusi. Näiteks ei tohiks krüpteerimisvõtit kunagi selgesõnaliselt arvuti RAM-i salvestada. Tõsistes toodetes on see võti jagatud mitmeks osaks ja igaühele neist kantakse juhuslik mask. Kõik toimingud krüpteerimisvõtmega tehakse osade kaupa ja lõpptulemusele rakendatakse pöördmask. Kahjuks pole kindlustunnet, et arendaja võttis krüpteerimisalgoritmi iseseisval rakendamisel arvesse kõiki neid nüansse.

    Korteri võti, kus on raha

    Teine andmete turvalisuse astet mõjutav tegur on krüpteerimisvõtmetega töö korraldamise põhimõte. Siin on mitu võimalust ja enne konkreetse krüpteerimissüsteemi valimist on tungivalt soovitatav küsida, kuidas see töötab: kus krüpteerimisvõtmed on salvestatud, kuidas need on kaitstud jne. Kahjuks ei suuda arendusettevõtte töötajad sageli selgitada isegi nende toote tööpõhimõtteid. See märkus kehtib eriti müügijuhtide kohta: kõige lihtsamad küsimused tekitavad neis sageli hämmingut. Kasutajal, kes otsustab oma konfidentsiaalset teavet kaitsta, on soovitatav mõista kõiki keerukust.

    Kindluse mõttes nimetame andmete krüptimiseks kasutatavat võtit põhivõtmeks. Nende loomiseks kasutatakse tänapäeval kõige sagedamini järgmisi lähenemisviise.

    Esimene lähenemisviis on see, et põhivõti genereeritakse mõne sisendandmete põhjal ja seda kasutatakse andmete krüptimiseks. Tulevikus annab kasutaja krüpteeritud teabele juurdepääsu saamiseks süsteemi uuesti samade sisendandmetega, et genereerida põhivõti. Põhivõtit ennast seega kuhugi ei salvestata. Sisendandmeteks võivad olla parool, mõni välisele andmekandjale salvestatud fail jne. Selle meetodi peamiseks puuduseks on võimetus luua põhivõtmest varukoopiat. Mis tahes sisendandmete komponendi kadumine põhjustab juurdepääsu teabele kaotuse.

    Teine lähenemisviis on see, et peavõti genereeritakse juhuslike arvude generaatori abil. Seejärel krüpteeritakse see mõne algoritmiga ja salvestatakse koos andmetega või välisele andmekandjale. Juurdepääsu saamiseks dekrüpteeritakse esmalt põhivõti ja seejärel andmed ise. Peavõtme krüptimiseks on soovitatav kasutada sama tugevusega algoritmi nagu andmete enda krüptimisel. Vähem robustsed algoritmid vähendavad süsteemi turvalisust ja tugevama kasutamine on mõttetu, kuna see ei suurenda turvalisust. Selline lähenemine võimaldab luua põhivõtmest varukoopiaid, mida saab hiljem kasutada andmetele juurdepääsu taastamiseks vääramatu jõu korral.

    Teatavasti määrab krüptosüsteemi kui terviku töökindluse selle nõrgima lüli töökindlus. Ründaja võib alati rünnata kahest kõige vähem tugevamat algoritmi: andmete krüptimist või põhivõtme krüptimist. Vaatame seda probleemi üksikasjalikumalt, pidades silmas, et ka võti, millel põhivõti krüpteeritakse, saadakse mõne sisendandmete põhjal.

    Esimene võimalus: parool

    Kasutaja sisestab kindla parooli, mille alusel (kasutades näiteks räsifunktsiooni) genereeritakse krüpteerimisvõti (joonis 1). Tegelikult määrab süsteemi töökindluse sel juhul ainult parooli keerukus ja pikkus. Kuid tugevad paroolid on ebamugavad: 10-15 tähemärgist koosneva mõttetu komplekti meeldejätmine ja nende sisestamine andmetele juurdepääsu saamiseks pole nii lihtne ja kui selliseid paroole on mitu (näiteks erinevatele rakendustele juurdepääsuks), siis on see täiesti ebareaalne. Paroolikaitse on vastuvõtlik ka toore jõu rünnakutele ja installitud klahvilogija võib hõlpsasti võimaldada ründajal andmetele juurdepääsu.

    Riis. 1. Krüpteerige põhivõti parooliga.

    Teine võimalus: väline mälu

    Väline andmekandja sisaldab mõningaid andmeid, mida kasutatakse krüpteerimisvõtme genereerimiseks (joonis 2). Lihtsaim võimalus on kasutada faili (nn võtmefaili), mis asub disketil (CD, USB-mälupulk jne). See meetod on turvalisem kui parooli valik. Võtme genereerimiseks ei kasutata mitte tosinat paroolimärki, vaid märkimisväärset hulka andmeid, näiteks 64 või isegi 128 baiti.

    Riis. 2. Põhivõtme krüpteerimine välise andmekandja andmete abil.

    Põhimõtteliselt saab võtmefaili paigutada arvuti kõvakettale, kuid palju turvalisem on seda andmetest eraldi hoida. Võtmefailidena ei ole soovitatav kasutada ühegi tuntud rakenduse (*.doc, *xls, *.pdf jne) loodud faile. Nende sisemine struktuur võib anda ründajale lisateavet. Näiteks kõik WinRAR-i arhiivi loodud failid algavad tähemärkidega "Rar!" - see on neli tervet baiti.

    Selle meetodi puuduseks on see, et ründaja saab faili hõlpsalt kopeerida ja luua välise andmekandja duplikaadi. Seega ei saa kasutaja, kes on kasvõi lühikeseks ajaks kaotanud kontrolli selle meediumi üle, enam 100% kindel olla oma andmete konfidentsiaalsuses. Välise andmekandjana kasutatakse mõnikord elektroonilisi USB-võtmeid või kiipkaarte, kuid krüpteerimisvõtme genereerimiseks kasutatud andmed salvestatakse lihtsalt nende andmekandjate mällu ja on lugemiseks sama lihtsalt kättesaadavad.

    Kolmas võimalus: turvaline väline salvestusruum

    See meetod on paljuski sarnane eelmisega. Selle oluline erinevus seisneb selles, et välismeediumi andmetele juurdepääsu saamiseks peab kasutaja sisestama PIN-koodi. Välise andmekandjana kasutatakse märke (elektroonilisi USB-võtmeid või kiipkaarte). Krüpteerimisvõtme genereerimiseks kasutatud andmed asuvad märgi turvalises mälus ja neid ei saa ründaja lugeda ilma vastavat PIN-koodi teadmata (joonis 3).

    Riis. 3. Põhivõtme krüpteerimine turvalise välismeediumi abil.

    Žetooni kaotamine ei tähenda teabe enda avalikustamist. PIN-koodi otsese äraarvamise eest kaitsmiseks seatakse riistvaraline viivitus kahe järjestikuse katse vahele või riistvaraline piirang valede PIN-koodi sisestamise katsete arvule (näiteks 15), misjärel žetoon lihtsalt blokeeritakse.

    Kuna žetoon on kasutatav erinevates rakendustes, kuid PIN-kood on sama, on võimalik kasutajat petta oma PIN-koodi võltsprogrammi sisestama ja seejärel vajalikke andmeid privaatsest mälualast lugeda. märk. Mõned rakendused salvestavad PIN-koodi vahemällu ühe seansi jooksul, millega kaasneb ka teatud risk.

    Neljas võimalus: segatud

    Võimalik, et krüpteerimisvõtme genereerimiseks kasutatakse samaaegselt parooli, välise salvestusseadme võtmefaili ja märgi kaitstud mälus olevaid andmeid (joonis 4). See meetod on igapäevases kasutuses üsna keeruline, kuna nõuab kasutajalt lisatoiminguid.

    Riis. 4. Põhivõtme krüpteerimine mitme komponendi abil.

    Mitmekomponendiline süsteem on ka palju vastuvõtlikum juurdepääsu kaotamise ohule: piisab ühe komponendi kaotamisest ja juurdepääs ilma varem loodud varukoopiat kasutamata muutub võimatuks.

    Viies võimalus: asümmeetrilise krüptimisega

    Üks lähenemisviis peavõtme turvalise salvestuse korraldamiseks, millel puuduvad ülalkirjeldatud võimaluste peamised puudused, väärib erilist tähelepanu. See meetod tundub meile olevat optimaalne.

    Fakt on see, et kaasaegsed märgid (joon. 5) võimaldavad mitte ainult salvestada andmeid suletud mällu, vaid ka teha riistvaras mitmeid krüptograafilisi teisendusi. Näiteks kiipkaardid, aga ka USB-võtmed, mis on täisfunktsionaalsed kiipkaardid, mitte nende analoogid, rakendavad asümmeetrilisi krüpteerimisalgoritme. Tähelepanuväärne on see, et avaliku-privaatvõtmepaari genereerib ka riistvara. Oluline on, et kiipkaartidel olev privaatvõti oleks salvestatud ainult kirjutatavana, st seda kasutab kiipkaardi operatsioonisüsteem krüptograafilisteks teisendusteks, kuid kasutaja ei saa seda lugeda ega kopeerida. Tegelikult kasutaja ise oma privaatvõtit ei tea – tal on see ainult.

    Dekrüpteerimist vajavad andmed kantakse üle kiipkaardi operatsioonisüsteemi, dekrüpteeritakse riistvaraliselt privaatvõtme abil ja saadetakse tagasi dekrüpteerituna (joonis 6). Kõik toimingud privaatvõtmega on võimalikud alles pärast seda, kui kasutaja on sisestanud kiipkaardi PIN-koodi. Seda lähenemist kasutatakse edukalt paljudes kaasaegsetes infosüsteemides kasutajate autentimiseks. Seda saab kasutada ka autentimiseks krüptitud teabele juurdepääsul.

    Riis. 6. Põhivõtme krüpteerimine asümmeetrilise krüpteerimisalgoritmi abil.

    Peavõti krüpteeritakse kasutaja avaliku võtmega. Andmetele juurdepääsu saamiseks esitab kasutaja oma kiipkaardi (või USB-võtme, mis on täisfunktsionaalne kiipkaart) ja sisestab selle PIN-koodi. Seejärel dekrüpteerib riistvara põhivõtme kiipkaardile salvestatud privaatvõtme abil ja kasutaja pääseb andmetele juurde. See lähenemisviis ühendab turvalisuse ja kasutusmugavuse.

    Esimese nelja variandi puhul on väga oluline valik, kuidas parooli ja/või välise salvestusseadme andmete põhjal krüpteerimisvõtit genereerida. Selle meetodi pakutav turvatase (krüptograafilises mõttes) ei tohi olla madalam kui süsteemi ülejäänud komponentide turvatase. Näiteks valik, kui peavõti salvestatakse välisele andmekandjale lihtsalt ümberpööratud kujul, on äärmiselt haavatav ja ohtlik.

    Kaasaegsed märgid toetavad asümmeetrilisi algoritme võtmepikkusega 1024 või 2048 bitti, tagades sellega, et põhivõtme krüpteerimisalgoritmi tugevus langeb kokku andmete enda krüpteerimisalgoritmiga. Riistvaraline piirang PIN-koodi ebaõigete sisestamiskatsete arvule välistab äraarvamise ohu ja võimaldab kasutada PIN-koodi, mida on piisavalt lihtne meeles pidada. Ühe seadme kasutamine lihtsalt kasutatava PIN-koodiga suurendab mugavust ilma turvalisust ohverdamata.

    Isegi kasutaja ise ei saa kiipkaardi duplikaati luua, kuna privaatvõtit on võimatu kopeerida. See võimaldab teil ka kiipkaarti ohutult kasutada koos mis tahes muude programmidega.

    Kas helistasite tehnilisele toele?

    On veel üks valikukriteerium, mida sageli eiratakse, kuid samas liigitatakse kriitiliseks. Räägime tehnilise toe kvaliteedist.

    Pole kahtlust, et kaitstud teave on kõrge väärtusega. Võib-olla põhjustab selle kaotamine vähem kahju kui avalikustamine, kuid teatav ebamugavus tekib igal juhul. Toote eest tasumisel maksate muuhulgas selle eest, et see normaalselt töötaks ning rikke korral aitavad nad teil probleemist kiiresti aru saada ja selle parandada.

    Peamine raskus seisneb selles, et tehnilise toe kvaliteeti on eelnevalt üsna raske hinnata. Lõppude lõpuks hakkab tehnilise toe teenus mängima olulist rolli juurutamise hilisemates etappides, proovitöö etapis ja juurutamise lõppedes süsteemi hoolduse protsessis. Tehnilise toe kvaliteedi kriteeriumiteks võib pidada päringutele vastamise aega, vastuste täielikkust ja spetsialistide pädevust. Vaatame neid üksikasjalikumalt.

    Sageli on tehnilise toe teenuse kvaliteedi ekvivalent päringule vastamise kiirus. Sellegipoolest võivad kiired, kuid valed soovitused põhjustada palju rohkem kahju kui lihtsalt nende puudumine.

    Tundub mõistlik eelistada Venemaa arendusi või vähemalt Venemaal esindustega välisfirmasid. Kui räägite spetsialistiga oma emakeeles, mõistate üksteist tõenäolisemalt. Kui toode on võõras, olge valmis võimalikeks ajalisteks viivitusteks. See võib juhtuda, kuna teie küsimused tõlgitakse näiteks inglise keelde ja arendaja vastused tõlgitakse tagasi vene keelde. Tõlke kvaliteedi jätame tehnilise toe spetsialistide hooleks. Arvestada tuleb ka sellega, et välismaisel tarnijal ei pruugi olla ööpäevaringset tuge ning sellest tulenevalt jääb sul ajavahe tõttu näiteks vaid tund päevas küsimuse esitamiseks.

    Korduma kippuvate küsimuste loendid (KKK) võivad saada lisateabe allikaks mitte ainult toote enda, vaid ka ettevõttes töötavate spetsialistide pädevuse kohta. Näiteks viitab sellise jaotise puudumine selle toote ebapopulaarsusele või organisatsioonis tehnilise toe spetsialistide puudumisele, kes suudaksid kasutajate nõudmiste põhjal koostada teadmistebaasi. See on naljakas, kuid mõnel saidil on korduma kippuvate küsimuste vastustes vigu, sealhulgas toote enda nimes.

    Ma lähen üksi teele...

    Nagu näete, võite valikuprotsessiga jõuda üsna kaugele. Kindlasti on igaühel omad võrdluskriteeriumid, mis on tema jaoks olulised. Lõpuks ei keela keegi võrrelda garantiiaja pikkust, pakendi kvaliteeti ja tootja kaubamärgi värviskeemi vastavust teie organisatsiooni korporatiivsele stiilile. Peaasi on kaalukoefitsiendid õigesti määrata.

    Igal juhul tuleb ennekõike kainelt hinnata andmete ohte ja kriitilisust ning turvatööriistade valikul on soovitatav lähtuda sellest, kui edukalt need oma põhiülesandega – volitamata juurdepääsu eest kaitse tagamisega – toime tulevad. Vastasel juhul on parem kulutada raha Interneti-allalaadimishaldurile või pasjanssimängudele.