Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ
  • në shtëpi
  • Në kontakt me
  • Çfarë lloj përpunimi mund t'i atribuohet enkriptimit. Metodat më të thjeshta të kriptimit të tekstit

Çfarë lloj përpunimi mund t'i atribuohet enkriptimit. Metodat më të thjeshta të kriptimit të tekstit

Kriptimi i të dhënave është jashtëzakonisht i rëndësishëm për të mbrojtur privatësinë. Në këtë artikull, unë do të flas për tipe te ndryshme dhe metodat e enkriptimit që përdoren për të mbrojtur të dhënat sot.

A e dinit?
Në ditët e Perandorisë Romake, kriptimi u përdor nga Julius Caesar për t'i bërë letrat dhe mesazhet të palexueshme për armikun. Ka luajtur rol i rendesishem si taktikë ushtarake, sidomos gjatë luftërave.

Ndërsa mundësitë e internetit vazhdojnë të rriten, gjithnjë e më shumë nga bizneset tona po punësohen online. Ndër këto, më të rëndësishmet janë internet banking, pagesa online, emailet, shkëmbim mesazhesh private dhe shërbimi etj., të cilat parashikojnë shkëmbimin e të dhënave dhe informacioneve konfidenciale. Nëse këto të dhëna bien në duar të gabuara, ato mund të dëmtojnë jo vetëm një përdorues individual, por të gjithë sistemi online biznesi.

Për të parandaluar që kjo të ndodhë, janë marrë disa masa sigurie të rrjetit për të mbrojtur transmetimin e të dhënave personale. Kryesorja midis tyre janë proceset e kriptimit dhe deshifrimit të të dhënave të njohura si kriptografi. Ekzistojnë tre metoda kryesore të enkriptimit të përdorura në shumicën e sistemeve sot: enkriptimi hash, simetrik dhe asimetrik. V rreshtat e mëposhtëm, Unë do të mbuloj secilin prej këtyre llojeve të kriptimit në më shumë detaje.

Llojet e enkriptimit

Kriptimi simetrik

Me kriptim simetrik, të dhëna normale të lexueshme nga njeriu të njohur si Teksti i thjeshtë, është i koduar (i koduar) në mënyrë që të bëhet i palexueshëm. Ky fërkim i të dhënave bëhet me një çelës. Pasi të dhënat të kodohen, ato mund të transferohen në mënyrë të sigurt te marrësi. Te marrësi, të dhënat e koduara deshifrohen duke përdorur të njëjtin çelës që është përdorur për kriptim.

Kështu, është e qartë se çelësi është pjesa më e rëndësishme. enkriptimi simetrik... Duhet të fshihet nga të huajt, pasi të gjithë ata që kanë akses në të do të jenë në gjendje të deshifrojnë të dhënat private. Kjo është arsyeja pse ky lloj kriptimi njihet edhe si "çelës sekret".

V sistemet moderne ah, çelësi është zakonisht një varg të dhënash që vijnë nga një fjalëkalim i fortë, ose nga një burim krejtësisht i rastësishëm. Ai futet në enkriptim simetrik software e cila e përdor atë për të klasifikuar hyrjen. Përzierja e të dhënave arrihet duke përdorur algoritmi simetrik enkriptimi si standardi i kriptimit të të dhënave (DES), standardi i avancuar i enkriptimit (AES) ose Algoritmi ndërkombëtar i enkriptimit të të dhënave (IDEA).

Kufizimet

Lidhja më e dobët në këtë lloj kriptimi është siguria e çelësit, si për sa i përket ruajtjes ashtu edhe transmetimit të përdoruesit të vërtetuar. Nëse një haker është në gjendje të mbajë këtë çelës, ai mund të deshifrojë lehtësisht të dhënat e koduara, duke shkatërruar të gjithë pikën e kriptimit.

Një pengesë tjetër është për faktin se softueri që përpunon të dhënat nuk mund të trajtojë të dhëna të koduara. Prandaj, që të mund të përdorni këtë softuer, së pari duhet të deshifrohen të dhënat. Nëse vetë softueri është i rrezikuar, atëherë një sulmues mund t'i marrë lehtësisht të dhënat.

Kriptimi asimetrik

Një çelës asimetrik enkriptimi funksionon në të njëjtën mënyrë çelës simetrik, në atë që përdor një çelës për të koduar mesazhet e transmetuara... Megjithatë, në vend që të përdorë të njëjtin çelës, ai përdor një çelës krejtësisht të ndryshëm për të deshifruar këtë mesazh.

Çelësi i përdorur për kriptim është i disponueshëm për këdo dhe të gjithë në rrjet. Si i tillë, ai njihet si çelësi "publik". Nga ana tjetër, çelësi i përdorur për deshifrim mbahet sekret dhe synohet të përdoret privatisht nga vetë përdoruesi. Prandaj, ai njihet si çelësi "privat". Kriptimi asimetrik njihet gjithashtu si kriptimi i çelësit publik.

Meqenëse, me këtë metodë, çelësi sekret që kërkohet për të deshifruar mesazhin nuk duhet të transmetohet çdo herë dhe zakonisht dihet vetëm nga përdoruesi (marrësi), gjasat që një haker të jetë në gjendje të deshifrojë mesazhin është shumë i madh. më të ulëta.

Diffie-Hellman dhe RSA janë shembuj të algoritmeve që përdorin enkriptimin e çelësit publik.

Kufizimet

Shumë hakerë përdorin njeriun në mes si një formë sulmi për të anashkaluar këtë lloj kriptimi. Në enkriptimin asimetrik, ju jepet një çelës publik që përdoret shkëmbim i sigurt të dhëna me një person ose shërbim tjetër. Megjithatë, hakerët përdorin rrjete mashtrimi për t'ju mashtruar që të komunikoni me ta, ndërkohë që ju bëjnë të besoni se jeni në një linjë të sigurt.

Për të kuptuar më mirë këtë lloj hakrimi, merrni parasysh dy palët ndërvepruese Sasha dhe Natasha, dhe hakerin Sergey me qëllim për të përgjuar bisedën e tyre. Së pari, Sasha dërgon një mesazh në rrjetin e destinuar për Natasha, duke kërkuar çelësin e saj publik. Sergei përgjon këtë mesazh dhe merr çelësin publik të lidhur me të, dhe e përdor atë për të kriptuar dhe transmetuar një mesazh të rremë, Natasha, që përmban çelësin e tij publik në vend të Sasha.

Natasha, duke menduar se ky mesazh erdhi nga Sasha, tani e kodon atë duke përdorur çelësin publik të Sergey dhe e kthen atë. Ky mesazh u përgjua përsëri nga Sergey, u deshifrua, u ndryshua (nëse dëshironi), u kodua përsëri duke përdorur çelësin publik që Sasha kishte dërguar fillimisht dhe u kthye te Sasha.

Kështu, kur Sasha merr këtë mesazh, i bëhet të besojë se ai ka ardhur nga Natasha dhe vazhdon të mos jetë në dijeni të lojës së keqe.

Hashimi

Teknika e hashimit përdor një algoritëm të njohur si funksion hash për të gjeneruar linjë e veçantë nga të dhënat e dhëna të njohura si hash. Ky hash ka vetitë e mëposhtme:

  • të njëjtat të dhëna prodhojnë gjithmonë të njëjtin hash.
  • është e pamundur të gjenerohen të dhëna të papërpunuara vetëm nga hash-i.
  • Është jopraktike të provosh kombinime të ndryshme të hyrjeve në mënyrë që të përpiqesh të gjenerosh të njëjtin hash.

Kështu, ndryshimi kryesor midis hashimit dhe dy formave të tjera të kriptimit të të dhënave është se pasi të dhënat të kodohen (hashohen), ato nuk mund të kthehen në formën e tyre origjinale (të deshifruara). Ky fakt siguron që edhe nëse hakerit i zë në dorë hash-i, do të jetë i padobishëm për të, pasi ai nuk do të jetë në gjendje të deshifrojë përmbajtjen e mesazhit.

Message Digest 5 (MD5) dhe Secure Hashing Algorithm (SHA) janë dy algoritme hashimi të përdorura gjerësisht.

Kufizimet

Siç u përmend më herët, është pothuajse e pamundur të deshifrohen të dhënat nga një hash i caktuar. Megjithatë, kjo është e vërtetë vetëm nëse zbatohet hashing i fortë. Në rastin e një zbatimi të dobët të teknikës hash, duke përdorur një sasi të mjaftueshme burimesh dhe sulme me forcë brutale, një haker këmbëngulës mund të gjejë të dhëna që përputhen me hash-in.

Kombinimi i metodave të kriptimit

Siç u diskutua më lart, secila prej këtyre tre metodave të kriptimit vuan nga disa disavantazhe. Megjithatë, kur përdoret një kombinim i këtyre metodave, ato formojnë një të besueshme dhe shumë sistem efektiv enkriptimi.

Më shpesh, teknikat e çelësit privat dhe publik kombinohen dhe përdoren së bashku. Metoda e çelësit privat lejon dekriptim të shpejtë, ndërsa metoda e çelësit publik ofron më të sigurt dhe më shumë mënyrë e përshtatshme për të transferuar çelësin sekret. Ky kombinim teknikash njihet si zarfi dixhital. Programi i enkriptimit Email PGP bazohet në teknikën e zarfit dixhital.

Hashing përdoret si një mjet për të kontrolluar fuqinë e një fjalëkalimi. Nëse sistemi ruan hash-in e fjalëkalimit, në vend të vetë fjalëkalimit, ai do të jetë më i sigurt, pasi edhe nëse hakeri i zë në dorë këtë hash, ai nuk do të jetë në gjendje ta kuptojë (lexojë). Gjatë verifikimit, sistemi do të kontrollojë hash-in fjalëkalimi në hyrje, dhe do të shohë nëse rezultati është i njëjtë me atë që është ruajtur. Kështu, fjalëkalimi aktual do të jetë i dukshëm vetëm në momente të shkurtra kur duhet të ndryshohet ose kontrollohet, gjë që do të zvogëlojë ndjeshëm gjasat që ai të bjerë në duar të gabuara.

Hashing përdoret gjithashtu për të vërtetuar të dhënat me një çelës sekret. Hash-i gjenerohet duke përdorur të dhënat dhe këtë çelës. Prandaj, vetëm të dhënat dhe hash janë të dukshme, dhe vetë çelësi nuk transmetohet. Në këtë mënyrë, nëse bëhen ndryshime ose në të dhënat ose në hash, ato do të zbulohen lehtësisht.

Si përfundim, mund të thuhet se këto teknika mund të përdoren për të koduar në mënyrë efikase të dhënat në një format të palexueshëm që mund të sigurojë që ato të mbeten të sigurta. Shumica e sistemeve moderne zakonisht përdorin një kombinim të këtyre teknikave të kriptimit së bashku me zbatimin e algoritmeve të forta për të përmirësuar sigurinë. Përveç sigurisë, këto sisteme ofrojnë edhe shumë përfitime shtesë të tilla si verifikimi i identitetit të përdoruesit dhe sigurimi që të dhënat e marra nuk mund të ngatërrohen.

Sergej Panasenko,
kreu i departamentit të zhvillimit të softuerit të kompanisë "Ankad",
[email i mbrojtur]

Konceptet bazë

Procesi i konvertimit të të dhënave të hapura në të koduara dhe anasjelltas zakonisht quhet enkriptim, dhe dy komponentët e këtij procesi quhen, përkatësisht, enkriptim dhe deshifrim. Matematikisht, ky transformim përfaqësohet nga varësitë e mëposhtme që përshkruajnë veprimet me informacionin fillestar:

С = Ek1 (M)

M "= Dk2 (C),

ku M (mesazh) - informacion të hapur(shpesh i referuar në literaturën e sigurisë së informacionit si " teksti burimor");
C (tekst shifror) - teksti i koduar (ose kriptogrami) i marrë si rezultat i kriptimit;
E (enkriptim) - një funksion kriptimi që kryen transformime kriptografike në tekstin origjinal;
k1 (çelës) - parametër i funksionit E, i quajtur çelësi i enkriptimit;
M "- informacioni i marrë si rezultat i deshifrimit;
D (deshifrimi) - një funksion deshifrimi që kryen transformime kriptografike të kriptimit të kundërt mbi tekstin e shifruar;
k2 është çelësi i përdorur për të deshifruar informacionin.

Koncepti i një "çelës" në standardin GOST 28147-89 (algoritmi simetrik i enkriptimit) përcaktohet si më poshtë: këtë algoritëm"Me fjalë të tjera, çelësi është një element unik me të cilin mund të ndryshoni rezultatet e algoritmit të kriptimit: i njëjti tekst burimor do të kodohet në mënyra të ndryshme kur përdorni çelësa të ndryshëm.

Në mënyrë që rezultati i deshifrimit të përkojë me mesazhin origjinal (d.m.th., për M "= M), është e nevojshme ekzekutimi i njëkohshëm dy kushte. Së pari, funksioni i deshifrimit D duhet të përputhet me funksionin e enkriptimit E. Së dyti, çelësi i deshifrimit k2 duhet të përputhet me çelësin e enkriptimit k1.

Nëse është përdorur një algoritëm i fortë kriptografik për kriptim, atëherë në mungesë të çelësit të saktë k2, është e pamundur të merret M "= M. Forca kriptografike është karakteristika kryesore e algoritmeve të kriptimit dhe tregon, para së gjithash, shkallën e vështirësi në marrjen e tekstit origjinal nga koduar pa çelës k2.

Algoritmet e enkriptimit mund të ndahen në dy kategori: enkriptimi simetrik dhe asimetrik. Për të parën, raporti i çelësave të enkriptimit dhe deshifrimit përcaktohet si k1 = k2 = k (d.m.th., funksionet E dhe D përdorin të njëjtin çelës enkriptimi). Me kriptim asimetrik, çelësi i enkriptimit k1 llogaritet nga çelësi k2 në atë mënyrë që transformim i kundërt e pamundur, për shembull, me formulën k1 = ak2 mod p (a dhe p janë parametrat e algoritmit të përdorur).

Kriptimi simetrik

Algoritmet e kriptimit simetrik kanë historinë e tyre që nga lashtësia: ishte kjo metodë e fshehjes së informacionit që u përdor nga perandori romak Gaius Julius Caesar në shekullin I para Krishtit. e., dhe algoritmi i shpikur prej tij njihet si "kriptosistemi i Cezarit".

Aktualisht, më i famshmi është algoritmi simetrik i enkriptimit DES (Standardi i Enkriptimit të të Dhënave), i zhvilluar në vitin 1977. Deri vonë, ai ishte "standardi i SHBA", pasi qeveria e këtij vendi rekomandoi përdorimin e tij për të zbatuar sisteme të ndryshme enkriptimi i të dhënave. Përkundër faktit se DES fillimisht ishte planifikuar të përdorej jo më shumë se 10-15 vjet, përpjekjet për ta zëvendësuar atë filluan vetëm në 1997.

Ne nuk do ta konsiderojmë DES në detaje (pothuajse në të gjithë librat nga lista materiale shtesë haje pershkrim i detajuar), dhe drejtohuni te algoritmet më moderne të kriptimit. Duhet të theksohet vetëm se arsyeja kryesore për ndryshimin e standardit të kriptimit është forca e tij relativisht e dobët kriptografike, arsyeja për të cilën është se gjatësia e çelësit DES është vetëm 56 pjesë të rëndësishme... Dihet se çdo algoritëm i fortë kriptografik mund të thyhet duke provuar të gjitha variantet e mundshme të çelësave të enkriptimit (i ashtuquajturi sulm me forcë brute). Është e lehtë të llogaritet se një grup prej 1 milion procesorësh, secili prej të cilëve llogarit 1 milion çelësa në sekondë, do të kontrollojë 256 çelësa DES në pothuajse 20 orë. Dhe meqenëse një fuqi e tillë llogaritëse është mjaft reale sipas standardeve të sotme, është e qartë se një Tasti 56-bit është shumë i shkurtër dhe Algoritmi DES duhet të zëvendësohet me një më të fortë.

Sot, dy algoritme moderne të kriptimit kriptografikisht të forta përdoren gjithnjë e më shumë: standardi vendas GOST 28147-89 dhe standardi i ri i kriptos amerikane - AES (Advanced Encryption Standard).

Standard GOST 28147-89

Algoritmi i përcaktuar nga GOST 28147-89 (Fig. 1) ka një gjatësi të çelësit të enkriptimit prej 256 bit. Ai kodon informacionin në blloqe prej 64 bitësh (algoritme të tilla quhen algoritme bllok), të cilat më pas ndahen në dy nënblloqe me 32 bit (N1 dhe N2). Nënblloku N1 përpunohet në një mënyrë të caktuar, pas së cilës vlera e tij i shtohet vlerës së nënbllokut N2 (shtimi kryhet moduli 2, d.m.th. operacion logjik XOR - "ekskluzive ose"), dhe më pas nënblloqet ndërrohen. Ky transformim kryhet një numër i caktuar herë ("raunde"): 16 ose 32, në varësi të mënyrës së funksionimit të algoritmit. Në çdo raund kryhen dy operacione.

E para është mbivendosja kryesore. Përmbajtja e nën-bllokut N1 shtohet moduli 2 me pjesën 32-bit të çelësit Kx. Çelësi i plotë kriptimi përfaqësohet si një bashkim i nënçelësave 32-bit: K0, K1, K2, K3, K4, K5, K6, K7. Në procesin e kriptimit, përdoret njëri prej këtyre nënçelësave, në varësi të numrit të rrumbullakët dhe mënyrës së funksionimit të algoritmit.

Operacioni i dytë është zëvendësimi i tavolinës. Pas aplikimit të çelësit, nënblloku N1 ndahet në 8 pjesë me 4 bit, vlera e secilës prej të cilave zëvendësohet në përputhje me tabelën e zëvendësimit për këtë pjesë të nënbllokut. Pastaj, nën-blloku zhvendoset në të majtë me 11 bit.

Zëvendësimet e tavolinave(Substitution box - S-box) përdoren shpesh në algoritmet moderne të enkriptimit, ndaj ia vlen të shpjegohet se si organizohet një operacion i tillë. Vlerat e daljes së blloqeve shkruhen në tabelë. Një bllok i të dhënave të një dimensioni të caktuar (në rastin tonë, 4-bit) ka paraqitjen e tij numerike, e cila përcakton numrin e vlerës së daljes. Për shembull, nëse kutia S duket si 4, 11, 2, 14, 15, 0, 8, 13, 3, 12, 9, 7, 5, 10, 6, 1 dhe një bllok 4-bit "0100" erdhi në hyrje (vlera 4), atëherë, sipas tabelës, vlera e daljes do të jetë 15, domethënë "1111" (0 a 4, 1 a 11, 2 a 2 ...).

Algoritmi, i përcaktuar nga GOST 28147-89, parashikon katër mënyra funksionimi: zëvendësim i thjeshtë, lojëra, lojëra me reagime dhe gjenerimi i simulatorëve. Ata përdorin të njëjtin transformim të kriptimit të përshkruar më sipër, por meqenëse qëllimi i mënyrave është i ndryshëm, ky transformim kryhet në secilën prej tyre në mënyra të ndryshme.

Në modalitetin zëvendësim i thjeshtë 32 raunde të përshkruara më sipër kryhen për të enkriptuar çdo bllok informacioni 64-bit. Në këtë rast, nënçelësat 32-bit përdoren në sekuencën e mëposhtme:

K0, K1, K2, K3, K4, K5, K6, K7, K0, K1, etj - në raundet 1 deri në 24;

K7, K6, K5, K4, K3, K2, K1, K0 - në raundet 25 deri në 32.

Deshifrimi në këtë mënyrë kryhet saktësisht në të njëjtën mënyrë, por me një sekuencë paksa të ndryshme të përdorimit të nënçelësave:

K0, K1, K2, K3, K4, K5, K6, K7 - në raundet 1 deri në 8;

K7, K6, K5, K4, K3, K2, K1, K0, K7, K6, etj - në raundet 9 deri në 32.

Të gjitha blloqet janë të koduara në mënyrë të pavarur nga njëri-tjetri, domethënë, rezultati i kriptimit të secilit bllok varet vetëm nga përmbajtja e tij (blloku përkatës i tekstit burimor). Nëse ka disa blloqe identike të tekstit origjinal (të thjeshtë), blloqet përkatëse të tekstit të koduar do të jenë gjithashtu të njëjta, gjë që jep një shtesë informacione të dobishme për një kriptanalist që përpiqet të thyejë shifrën. Prandaj, kjo mënyrë përdoret kryesisht për të kriptuar vetë çelësat e enkriptimit (shumë shpesh zbatohen skema me shumë çelësa, në të cilat, për një sërë arsyesh, çelësat janë të koduar njëri mbi tjetrin). Për të kriptuar vetë informacionin, synohen dy mënyra të tjera të funksionimit - lojëra dhe lojëra me reagime.

V modaliteti gamaçdo bllok Teksti i thjeshtë shtohet moduli 2 në bit me një bllok gama të shifrimit 64-bit. Gama e shifrës është një sekuencë e veçantë që fitohet si rezultat i veprimeve të caktuara me regjistrat N1 dhe N2 (shih Fig. 1).

1. Në regjistrat N1 dhe N2 shkruhet mbushja fillestare e tyre - një vlerë 64-bit e quajtur sinkron-burst.

2. Përmbajtja e regjistrave N1 dhe N2 është e koduar (në në këtë rast- sinkronizimi i transmetimeve) në modalitetin e thjeshtë të zëvendësimit.

3. Përmbajtja e regjistrit N1 shtohet modul (232 - 1) me konstanten C1 = 224 + 216 + 28 + 24, dhe rezultati i mbledhjes shkruhet në regjistrin N1.

4. Përmbajtja e regjistrit N2 shtohet moduli 232 me konstanten C2 = 224 + 216 + 28 + 1, dhe rezultati i mbledhjes shkruhet në regjistrin N2.

5. Përmbajtja e regjistrave N1 dhe N2 futet në dalje si një gama bllok shifror 64-bitësh (në këtë rast, N1 dhe N2 formojnë bllokun e parë gama).

Nëse nevojitet blloku tjetër i gama-s (d.m.th., ju duhet të vazhdoni enkriptimin ose deshifrimin), ktheheni në hapin 2.

Për deshifrim, gjenerohet gama në te njejtën mënyrë dhe pastaj XOR aplikohet përsëri në tekstin e shifruar dhe bit gama. Meqenëse ky operacion është i kthyeshëm, në rastin e një shkalle të përpunuar saktë, merret teksti (tabela) origjinal.

Kriptimi dhe deshifrimi në modalitetin gama

Për të gjeneruar gamën e shifrimit të kërkuar për deshifrimin, përdoruesi që deshifron kriptogramin duhet të ketë të njëjtin çelës dhe të njëjtën vlerë sinkron-mesazhi që janë përdorur për të kriptuar informacionin. Përndryshe, nuk do të jetë e mundur të merret teksti origjinal nga ai i koduar.

Në shumicën e zbatimeve të algoritmit GOST 28147-89, mesazhi i sinkronizimit nuk është sekret, por ka sisteme ku mesazhi i sinkronizimit është i njëjti element sekret si çelësi i kriptimit. Për sisteme të tilla, gjatësia efektive e çelësit të algoritmit (256 bit) rritet me 64 bit të tjerë të mesazhit të sinkronizimit sekret, i cili gjithashtu mund të konsiderohet si një element kyç.

Në modalitetin gama me reagime, për të mbushur regjistrat N1 dhe N2, duke filluar nga blloku i 2-të, nuk përdoret blloku i mëparshëm gama, por rezultati i enkriptimit të bllokut të tekstit të thjeshtë (Fig. 2). Blloku i parë në këtë mënyrë gjenerohet plotësisht i ngjashëm me atë të mëparshëm.

Oriz. 2. Gjenerimi i gamës së shifrës në modalitetin gama të reagimit.

Duke marrë parasysh mënyrën gjenerimi i simulatorëve, duhet përcaktuar koncepti i lëndës së gjenerimit. Një imitues është një kriptografik shuma e kontrollit, i llogaritur duke përdorur një çelës kriptimi dhe i krijuar për të kontrolluar integritetin e mesazheve. Kur gjeneroni një prefiks, kryhen veprimet e mëposhtme: blloku i parë 64-bit i grupit të informacionit, për të cilin llogaritet prefiksi, shkruhet në regjistrat N1 dhe N2 dhe kodohet në mënyrën e reduktuar të zëvendësimit të thjeshtë (i pari Kryhen 16 raunde nga 32). Rezultati që rezulton përmblidhet moduli 2 me bllokun tjetër të informacionit, duke e ruajtur rezultatin në N1 dhe N2.

Cikli përsëritet derisa blloku i fundit informacion. Përmbajtja 64-bitëshe që rezulton e regjistrave N1 dhe N2, ose një pjesë e tij, e marrë si rezultat i këtyre transformimeve, quhet prefiks. Madhësia e prefiksit zgjidhet bazuar në besueshmërinë e kërkuar të mesazhit: me gjatësinë e biteve të prefiksit r, probabiliteti që ndryshimi i mesazhit të mbetet pa u vënë re është 2-r. Më shpesh, një prefiks 32-bit është përdoret, pra gjysma e përmbajtjes së regjistrit. Kjo është e mjaftueshme, pasi, si çdo kontroll, imituesi është krijuar kryesisht për të mbrojtur kundër shtrembërimit aksidental të informacionit. Për të mbrojtur kundër modifikimit të qëllimshëm të të dhënave, të tjera teknikat kriptografike- kryesisht një nënshkrim elektronik dixhital.

Gjatë shkëmbimit të informacionit, parashtesa shërben si një lloj mjet shtesë kontrollin. Ai llogaritet për tekstin e thjeshtë kur disa informacione kodohen dhe dërgohen së bashku me tekstin e shifruar. Pas deshifrimit, llogaritet një vlerë e re prefiksi, e cila krahasohet me atë të dërguar. Nëse vlerat nuk përputhen, do të thotë që teksti i shifruar është shtrembëruar gjatë transmetimit ose janë përdorur çelësa të pasaktë gjatë deshifrimit. Prefiksi është veçanërisht i dobishëm për të kontrolluar deshifrimin e saktë të informacionit kryesor kur përdorni skemat me shumë çelësa.

Algoritmi GOST 28147-89 konsiderohet një algoritëm shumë i fortë - aktualisht nuk është propozuar më shumë për zbulimin e tij. metoda efektive sesa metoda e "forcës brutale" e përmendur më sipër. Siguria e tij e lartë arrihet kryesisht për shkak të gjatësisë së madhe të çelësit - 256 bit. Kur përdorni një mesazh sekret sinkronizimi, gjatësia efektive e çelësit rritet në 320 bit dhe sekreti i tabelës së zëvendësimit shton bit shtesë. Për më tepër, forca kriptografike varet nga numri i raundeve të transformimeve, të cilat, sipas GOST 28147-89, duhet të jenë 32 ( efekt të plotë shpërndarja e të dhënave hyrëse arrihet pas 8 raundesh).

Standardi AES

Ndryshe nga algoritmi GOST 28147-89, i cili kohe e gjate mbeti sekret, standard amerikan Kriptimi AES i projektuar për të zëvendësuar DES, u përzgjodh përmes një konkursi të hapur, ku të gjitha organizatat dhe individët e interesuar mund të studionin dhe komentonin mbi algoritmet-aplikues.

Një konkurs për të zëvendësuar DES u shpall në 1997 nga Instituti Kombëtar i Standardeve dhe Teknologjisë i SHBA (NIST - Instituti Kombëtar i Standardeve dhe Teknologjisë). Për konkursin u prezantuan 15 algoritme kandidate, të zhvilluara si nga organizata të njohura në fushën e kriptografisë (RSA Security, Counterpane, etj.) dhe nga individë. Rezultatet e konkursit u shpallën në tetor 2000: fituesi ishte algoritmi Rijndael, i zhvilluar nga dy kriptografë nga Belgjika, Vincent Rijmen dhe Joan Daemen.

Algoritmi Rijndael nuk është si shumica e algoritmeve të njohura të kriptimit simetrik, struktura e të cilave quhet "rrjeti Feistel" dhe është i ngjashëm me GOST 28147-89 ruse. E veçanta e rrjetit Feistel është se vlera hyrëse ndahet në dy ose më shumë nënblloqe, disa prej të cilave përpunohen sipas një ligji të caktuar në çdo raund, dhe më pas mbivendosen në nënblloqe të papërpunuara (shih Fig. 1).

Ndryshe nga standardi i brendshëm i enkriptimit, algoritmi Rijndael përfaqëson një bllok të dhënash në formën e një grupi bajtesh dydimensionale me madhësi 4X4, 4X6 ose 4X8 (disa madhësive fikse bllok i koduar i informacionit). Të gjitha operacionet kryhen në bajt të veçantë të grupit, si dhe në kolona dhe rreshta të pavarur.

Algoritmi Rijndael kryen katër transformime: BS (ByteSub) - zëvendësimi i tabelës së secilit bajt të grupit (Fig. 3); SR (ShiftRow) - zhvendosja e rreshtave të vargjeve (Fig. 4). Gjatë këtij operacioni, rreshti i parë mbetet i pandryshuar, dhe pjesa tjetër zhvendoset në mënyrë ciklike majtas nga një numër fiks bajtësh, në varësi të madhësisë së grupit. Për shembull, për një grup 4X4, rreshtat 2, 3 dhe 4 zhvendosen përkatësisht me 1, 2 dhe 3 bajt. Më pas vjen MC (MixColumn) - një operacion në kolonat e pavarura të një grupi (Fig. 5), kur secila kolonë është një rregull të caktuar shumëzuar me një matricë fikse c (x). Dhe së fundi, AK (AddRoundKey) - shtoni një çelës. Çdo bit i grupit i shtohet moduli 2 me bitin përkatës të çelësit të rrumbullakët, i cili, nga ana tjetër, llogaritet në një mënyrë të caktuar nga çelësi i enkriptimit (Fig. 6).


Oriz. 3. Operacioni BS.

Oriz. 4. Operacioni SR.

Oriz. 5. Operacioni MC.

Numri i raundeve të enkriptimit (R) në algoritmin Rijndael është i ndryshueshëm (10, 12 ose 14 raunde) dhe varet nga madhësia e bllokut dhe çelësi i enkriptimit (ka edhe disa madhësi fikse për çelësin).

Deshifrimi kryhet duke përdorur veprimet e kundërta të mëposhtme. Tabela është e përmbysur dhe zëvendësimi i tabelës kryhet në tabelën e kundërt (në raport me atë që përdoret për enkriptim). E kundërta e SR është të rrotullohen rreshtat në të djathtë në vend të majtas. Operacioni i anasjelltë për MC është shumëzimi sipas të njëjtave rregulla me një matricë tjetër d (x) që plotëson kushtin: c (x) * d (x) = 1. Shtimi i çelësit AK është anasjellta e vetvetes, pasi ai përdor vetëm Operacioni XOR. Këto operacionet e kundërta përdoren për deshifrim në rend të kundërt me atë të përdorur për enkriptim.

Rijndael është bërë standardi i ri për enkriptimin e të dhënave për shkak të një numri avantazhesh ndaj algoritmeve të tjera. Para së gjithash, ai siguron shpejtësi e lartë enkriptimi në të gjitha platformat: si në zbatimin e softuerit ashtu edhe në atë të harduerit. Dallohet nga e pakrahasueshme mundësitë më të mira paralelizimi i llogaritjeve në krahasim me algoritmet e tjera të paraqitura për konkurs. Për më tepër, kërkesat për burime për funksionimin e tij janë minimale, gjë që është e rëndësishme kur përdoret në pajisje me aftësi të kufizuara llogaritëse.

Disavantazhi i vetëm i algoritmit është skema e tij e natyrshme jokonvencionale. Fakti është se vetitë e algoritmeve të bazuara në rrjetin Feistel janë hulumtuar mirë dhe Rijndael, në kontrast me to, mund të përmbajë dobësi të fshehura që mund të zbulohen vetëm pasi të ketë kaluar ca kohë që nga fillimi i shpërndarjes së tij të gjerë.

Kriptimi asimetrik

Siç u përmend tashmë, algoritmet e enkriptimit asimetrik përdorin dy çelësa: k1 është çelësi i enkriptimit, ose publik, dhe k2 është çelësi i deshifrimit ose sekreti. Çelësi publik llogaritur nga sekreti: k1 = f (k2).

Algoritmet e enkriptimit asimetrik bazohen në përdorimin e funksioneve njëkahëshe. Sipas përkufizimit, një funksion y = f (x) është njëdrejtimësh nëse: është e lehtë të llogaritet për të gjithë opsionet e mundshme x dhe për shumicën vlerat e mundshme y është mjaft e vështirë të llogaritet një vlerë e tillë e x, për të cilën y = f (x).

Një shembull i një funksioni njëkahësh është shumëzimi i dy numrave të mëdhenj: N = P * Q. Në vetvete, një shumëzim i tillë - operacion i thjeshtë... Sidoqoftë, funksioni i kundërt (zbërthimi i N në dy faktorë të mëdhenj), i quajtur faktorizim, sipas vlerësimeve kohore moderne është mjaft i ndërlikuar. problem matematike... Për shembull, faktorizimi i N prej 664 bitësh në P? Q do të kërkojë rreth 1023 operacione, dhe për të kthyer x për eksponentin modular y = ax mod p me të njohura a, p dhe y (me të njëjtat dimensione të a dhe p), duhet të kryeni rreth 1026 operacione. I fundit nga këta shembuj quhet Problemi i Logaritmit Diskret (DLP), dhe ky lloj funksioni përdoret shpesh në algoritmet e enkriptimit asimetrik, si dhe në algoritmet e përdorura për krijimin e nënshkrimeve dixhitale elektronike.

Një klasë tjetër e rëndësishme e funksioneve të përdorura në enkriptimin asimetrik janë funksionet e njëanshme me dyer të pasme. Përkufizimi i tyre thotë se një funksion është me një drejtim me një kalim të fshehtë nëse është me një drejtim dhe ekziston mundësia e llogaritjes efikase. funksioni i anasjelltë x = f-1 (y), domethënë nëse dihet "kalimi sekret" (një numër i caktuar sekret, siç zbatohet për algoritmet e enkriptimit asimetrik - vlera e çelësit sekret).

Funksionet me një drejtim të pasme përdoren në algoritmin e enkriptimit asimetrik të përdorur gjerësisht RSA.

Algoritmi RSA

Zhvilluar në 1978 nga tre autorë (Rivest, Shamir, Adleman), ai mori emrin e tij nga shkronjat e para të mbiemrave të zhvilluesve. Besueshmëria e algoritmit bazohet në kompleksitetin e faktorizimit të numrave të mëdhenj dhe llogaritjes së logaritmeve diskrete. Parametri kryesor Algoritmi RSAështë moduli i sistemit N, sipas të cilit kryhen të gjitha llogaritjet në sistem, dhe N = P * Q (P dhe Q janë sekrete të thjeshta të rastësishme numra të mëdhenj, zakonisht të të njëjtit dimension).

Zgjidhet çelësi sekret i k2 rastësisht dhe duhet të plotësojë kushtet e mëposhtme:

1

ku GCD është pjesëtuesi më i madh i përbashkët, d.m.th., k1 duhet të jetë koprim me vlerën e funksionit të Euler-it F (N), dhe kjo e fundit është e barabartë me numrin e numrave të plotë pozitivë në diapazonin nga 1 në N, koprim me N, dhe llogaritet si F (N) = (P - 1) * (Q - 1).

Çelësi publik k1 llogaritet nga relacioni (k2 * k1) = 1 mod F (N), dhe për këtë përdoret algoritmi i përgjithësuar Euklidian (algoritmi për llogaritjen e pjesëtuesit më të madh të përbashkët). Blloku i të dhënave M është i koduar duke përdorur algoritmin RSA si më poshtë: C = M [në fuqinë e k1] mod N... Vini re se, meqenëse në një kriptosistem real që përdor RSA numri k1 është shumë i madh (aktualisht, dimensioni i tij mund të arrijë 2048 bit), llogaritja e drejtpërdrejtë e M [në fuqinë e k1] jorealiste. Për ta marrë atë, përdoret një kombinim i katrorit të shumëfishtë M me shumëzimin e rezultateve.

Përmbysja e këtij funksioni nuk është e realizueshme për dimensione të mëdha; me fjalë të tjera, është e pamundur të gjendet M nga të njohurit C, N dhe k1. Megjithatë, duke pasur çelësin sekret k2, duke përdorur transformime të thjeshta, mund të llogarisim M = Ck2 mod N. Natyrisht, përveç vetë çelësit sekret, është e nevojshme të sigurohet sekreti i parametrave P dhe Q. Nëse sulmuesi merr vlerat, ai do të jetë në gjendje të llogarisë çelësin sekret k2.

Cili enkriptim është më i mirë?

Disavantazhi kryesor i kriptimit simetrik është nevoja për të transferuar çelësat "nga dora në dorë". Ky disavantazh është shumë serioz, pasi e bën të pamundur përdorimin e kriptimit simetrik në sistemet me një numër të pakufizuar pjesëmarrësish. Sidoqoftë, pjesa tjetër e kriptimit simetrik ka disa avantazhe, të cilat janë qartë të dukshme në sfondin e disavantazheve serioze të kriptimit asimetrik.

E para prej tyre është shpejtësia e ulët e kryerjes së operacioneve të kriptimit dhe deshifrimit për shkak të pranisë së operacioneve me burime intensive. Një tjetër pengesë "teorike" është se fuqia kriptografike e algoritmeve të enkriptimit asimetrik nuk është vërtetuar matematikisht. Kjo është kryesisht për shkak të problemit diskret të logaritmit - deri më tani nuk ka qenë e mundur të vërtetohet se zgjidhja e tij në një kohë të pranueshme është e pamundur. Vështirësi të panevojshme krijohen gjithashtu nga nevoja për të mbrojtur çelësat publikë nga zëvendësimi - duke ndryshuar çelësin publik të një përdoruesi ligjor, një sulmues do të jetë në gjendje të kodojë një mesazh të rëndësishëm në çelësin e tij publik dhe më pas ta deshifrojë lehtësisht atë me çelësin e tij privat.

Megjithatë, këto mangësi nuk pengojnë përdorimin e gjerë të algoritmeve të enkriptimit asimetrik. Sot ekzistojnë kriptosisteme që mbështesin certifikimin e çelësit publik, si dhe një kombinim të algoritmeve të kriptimit simetrik dhe asimetrik. Por kjo tashmë është një temë për një artikull të veçantë.

Burime shtesë informacioni

Për ata lexues që janë të interesuar për kriptim, autori rekomandon zgjerimin e horizontit të tyre me ndihmën e librave të mëposhtëm.

  1. Brassard J. "Kriptologjia moderne".
  2. Petrov A. A. "Siguria e kompjuterit: metodat kriptografike të mbrojtjes".
  3. Romanets Yu. V., Timofeev PA, Shangin VF "Mbrojtja e informacionit në sistemet moderne kompjuterike".
  4. Sokolov A. V., Shangin V. F. "Siguria e informacionit në rrjetet dhe sistemet e korporatave të shpërndara".

Një përshkrim i plotë i algoritmeve të kriptimit mund të gjendet në dokumentet e mëposhtme:

  1. GOST 28147-89. Sistemi i përpunimit të informacionit. Mbrojtja kriptografike. Algoritmi për transformimin kriptografik. - M .: Gosstandart BRSS, 1989.
  2. Algoritmi AES: http://www.nist.gov/ae.
  3. Algoritmi RSA: http://www.rsasecurity.com/rsalabs/pkcs/pkcs-1.

MINISTRIA E ARSIMIT DHE SHKENCËS E FEDERATËS RUSE INSTITUCIONI ARSIMOR SHTETËROR FEDERAL I ARSIMIT TË LARTË PROFESIONAL

"UNIVERSITETI FEDERAL I JUGUT"

INSTITUTI TEKNOLOGJIK I UNIVERSITETIT FEDERAL JUGOR NË TAGANROG Fakulteti i Sigurisë së Informacionit Departamenti i BIT Abstrakt mbi temën

"Kriptografia dhe llojet e kriptimit"

Art. gr. I-21

Plotësuar nga: V. I. Mishchenko Kontrolluar nga: E. A. Maro Taganrog - 2012

Prezantimi

1. Historia e kriptografisë

1.1 Shfaqja e shifrave

1.2 Evolucioni i kriptografisë

2. Kriptanaliza

2.1 Karakteristikat mesazhe

2.2 Vetitë e tekstit natyror

2.3 Kriteret për përcaktimin e natyralitetit

3. Kriptimi simetrik

4. Kriptimi asimetrik

konkluzioni

Hyrje Në kuadër të praktikës edukative kam zgjedhur temën “Kriptografia dhe llojet e enkriptimit”. Gjatë punës, u morën parasysh çështje të tilla si historia e shfaqjes së kriptografisë, evolucioni i saj dhe llojet e kriptimit. Kam shqyrtuar algoritmet ekzistuese të kriptimit, si rezultat i të cilave mund të vërehet se njerëzimi nuk qëndron ende dhe vazhdimisht del me mënyra të ndryshme të ruajtjes dhe mbrojtjes së informacionit.

Çështja e mbrojtjes së informacionit të vlefshëm duke e modifikuar atë, duke përjashtuar leximin e tij nga një person i panjohur, ka shqetësuar mendjet më të mira njerëzore që nga kohërat e lashta. Historia e kriptimit është pothuajse e njëjtë me historinë e të folurit njerëzor. Për më tepër, fillimisht vetë shkrimi ishte një sistem kriptografik, pasi në shoqëritë e lashta vetëm disa të zgjedhur posedonin njohuri të tilla. Dorëshkrimet e shenjta të shteteve të ndryshme të lashta janë shembuj të kësaj.

Që kur shkrimi u përhap, kriptografia është bërë një shkencë krejtësisht e pavarur. Sistemet e para kriptografike mund të gjenden tashmë në fillim të epokës sonë. Për shembull, Jul Cezari përdori një kod sistematik në korrespondencën e tij personale, i cili më vonë u emërua pas tij.
Sistemet e kriptimit u zhvilluan seriozisht në epokën e luftës së parë dhe të dytë botërore. Nga periudha e hershme e pasluftës deri në kohën e sotme, ardhja e pajisjeve moderne kompjuterike përshpejtoi krijimin dhe përmirësimin e metodave të kriptimit.
Pse çështja e përdorimit të metodave të enkriptimit në sistemet kompjuterike (CS) është bërë veçanërisht urgjente në kohën tonë?
Së pari, është zgjeruar fusha e aplikimit të rrjeteve kompjuterike, siç është World Wide Web, me ndihmën e të cilave transmetohen vëllime të mëdha informacioni të natyrës shtetërore, ushtarake, tregtare dhe personale, të cilat nuk japin mundësinë e aksesit. ndaj saj nga palët e treta.
Së dyti, shfaqja e kompjuterëve modernë super të fuqishëm, teknologjitë e avancuara të rrjetit dhe llogaritjeve nervore bën të mundur diskreditimin e sistemeve të kriptimit që u konsideruan plotësisht të sigurt dje.

1. Historia e kriptografisë Me shfaqjen e qytetërimit njerëzor, u bë i nevojshëm transmetimi i informacionit te njerëzit e duhur në mënyrë që të mos bëhej i njohur për të huajt. Në fillim, njerëzit përdornin vetëm zë dhe gjeste për të transmetuar mesazhe.

Me ardhjen e shkrimit, çështja e sigurimit të fshehtësisë dhe autenticitetit të mesazheve të transmetuara është bërë veçanërisht e rëndësishme. Si rezultat, ishte pas shpikjes së shkrimit që lindi arti i kriptografisë, metoda e "të shkruarit fshehurazi" - një grup teknikash të krijuara për të transferuar në mënyrë të fshehtë mesazhet e regjistruara nga një iniciator në tjetrin.

Njerëzimi ka dalë me një numër të konsiderueshëm teknologjish të fshehta të shkrimit, në veçanti, bojë simpatike që zhduket shpejt pasi ata shkruajnë një tekst ose janë të padukshme që në fillim, duke "shpërbërë" informacione të vlefshme në një tekst të madh me një kuptim krejtësisht "alien". përgatitjen e mesazheve duke përdorur simbole të çuditshme të pakuptueshme.

Kriptimi u ngrit pikërisht si një lëndë praktike që studion dhe zhvillon metoda për enkriptimin e informacionit, domethënë gjatë transferimit të mesazheve nuk fsheh vetë faktin e transmetimit, por e bën tekstin e një mesazhi të paarritshëm për t'u lexuar nga njerëzit e pa iniciuar. Për këtë, teksti i mesazhit duhet të regjistrohet në atë mënyrë që asnjë person, me përjashtim të vetë adresuesve, të mos mund të njihet me përmbajtjen e tij.

Shfaqja e kompjuterëve të parë në mesin e shekullit të 20-të ndryshoi shumë situatën - kriptimi praktik bëri një hap të madh në zhvillimin e tij dhe një term i tillë si "kriptografi" u largua ndjeshëm nga kuptimi i tij origjinal - "shkrim i fshehtë", "shkrim i fshehtë". ". Në ditët e sotme, kjo lëndë kombinon metoda të mbrojtjes së informacionit të një natyre krejtësisht heterogjene, bazuar në transformimin e të dhënave duke përdorur algoritme sekrete, duke përfshirë algoritme që përdorin parametra të ndryshëm sekret.

1.1 Shfaqja e shifrave Disa nga sistemet kriptografike kanë ardhur tek ne që nga lashtësia e thellë. Me shumë mundësi ata kanë lindur njëkohësisht me shkrimin në mijëvjeçarin e IV para Krishtit. Metodat e korrespondencës sekrete u shpikën në mënyrë të pavarur në shumë shtete të lashta, si Egjipti, Greqia dhe Japonia, por përbërja e detajuar e kriptologjisë në to tani është e panjohur. Kriptogramet gjenden edhe në kohët e lashta, megjithëse për shkak të shkrimit ideografik të përdorur në botën e lashtë në formën e piktogrameve të stilizuara, ato ishin mjaft primitive. Sumerët duket se kanë përdorur artin e shkrimit të fshehtë.

Arkeologët kanë gjetur një sërë pllakash balte kuneiforme, në të cilat rekordi i parë shpesh mbulohej me një shtresë të trashë balte, mbi të cilën ishte bërë rekordi i dytë. Shfaqja e tabletave të tilla të çuditshme mund të justifikohej si nga kriptografia ashtu edhe nga asgjësimi. Meqenëse numri i personazheve në shkrimin ideografik ishte më shumë se një mijë, memorizimi i tyre ishte një detyrë mjaft e vështirë - nuk kishte kohë për kriptim. Sidoqoftë, kodet që u shfaqën në të njëjtën kohë me fjalorët ishin shumë të njohur në Babiloni dhe shtetin asirian, dhe egjiptianët e lashtë përdornin të paktën tre sisteme enkriptimi. Me origjinën e shkrimit fonetik, shkrimi u thjeshtua menjëherë. Në alfabetin e lashtë semit në mijëvjeçarin II para Krishtit, kishte vetëm rreth 30 karaktere. Ata caktuan bashkëtingëlloret, si dhe disa tinguj dhe rrokje zanoresh. Thjeshtimi i shkrimit shkaktoi zhvillimin e kriptografisë dhe enkriptimit.

Edhe në librat e Biblës mund të gjejmë shembuj të enkriptimit, megjithëse pothuajse askush nuk i vë re. Në librin e profetit Jeremia (22,23) lexojmë: "...dhe mbreti i Seshakut do të pijë pas tyre". Ky mbret dhe një mbretëri e tillë nuk ekzistonte - a është vërtet gabim i autorit? Jo, është vetëm se ndonjëherë dorëshkrimet e shenjta hebreje ishin të koduara me zëvendësimin e zakonshëm. Në vend të shkronjës së parë të alfabetit, ata shkruan të fundit, në vend të të dytës - të parafundit, e kështu me radhë. Kjo mënyrë e vjetër e kriptografisë quhet atbash. Duke lexuar fjalën SESSAH me ndihmën e saj, në gjuhën origjinale kemi fjalën BABILON, dhe i gjithë kuptimi i dorëshkrimit biblik mund të kuptohet edhe nga ata që nuk besojnë verbërisht në të vërtetën e shkrimit.

1.2 Evolucioni i kriptografisë Evolucioni i enkriptimit në shekullin e njëzetë ishte shumë i shpejtë, por krejtësisht i pabarabartë. Duke parë historinë e zhvillimit të saj si një fushë specifike e jetës njerëzore, mund të dallohen tre periudha themelore.

Elementare. Ai merrej vetëm me shifrat e duarve. Filloi në antikitetin e dendur dhe përfundoi vetëm në fund të viteve tridhjetë të shekullit të njëzetë. Gjatë kësaj kohe, kriptografia ka mbuluar një rrugë të gjatë nga arti magjik i priftërinjve prehistorikë në profesionin e përditshëm të aplikuar të punonjësve të agjencive sekrete.

Periudha e mëvonshme mund të shënohet me krijimin dhe futjen e gjerë në praktikë të pajisjeve kriptografike mekanike, më pas elektromekanike dhe, në fund të fundit, elektronike, krijimin e rrjeteve të tëra të komunikimit të koduar.

Lindja e periudhës së tretë në zhvillimin e kriptimit zakonisht konsiderohet të jetë viti 1976, në të cilin matematikanët amerikanë Diffie dhe Hellman shpikën një mënyrë thelbësisht të re të organizimit të komunikimit të koduar që nuk kërkon sigurimin paraprak të abonentëve me çelësa sekretë - kështu- quhet enkriptim i çelësit publik. Si rezultat, sistemet e kriptimit filluan të shfaqen bazuar në metodën e shpikur në vitet '40 nga Shannon. Ai propozoi të krijohej një shifër në atë mënyrë që deshifrimi i tij të ishte i barabartë me zgjidhjen e një problemi kompleks matematikor që kërkon kryerjen e llogaritjeve që do të tejkalonin aftësitë e sistemeve moderne kompjuterike. Kjo periudhë e zhvillimit të kriptimit karakterizohet nga shfaqja e sistemeve të komunikimit të enkriptuara plotësisht të automatizuara, në të cilat çdo përdorues zotëron fjalëkalimin e tij personal për verifikim, e ruan atë, për shembull, në një kartë magnetike ose diku tjetër, dhe e paraqet atë kur hyn në sistem, dhe gjithçka tjetër ndodh automatikisht.

2. Kriptanaliza Ekziston një hendek i madh midis metodave të enkriptimit manual dhe atyre të bazuara në kompjuter. Shifrat e duarve janë shumë të ndryshme dhe mund të jenë më të mahnitshmet. përveç kësaj, mesazhet që ata enkriptojnë janë goxha lakonike dhe të shkurtra. Prandaj, ata hakohen në mënyrë shumë më efikase nga njerëzit sesa nga makinat. Shifrat kompjuterike janë më stereotipike, matematikisht shumë komplekse dhe janë krijuar për të enkriptuar mesazhe me një gjatësi mjaft të madhe. Sigurisht, nuk ia vlen as të përpiqesh t'i zgjidhësh ato me dorë. Megjithatë, kriptanalistët luajnë një rol udhëheqës edhe në këtë fushë, duke qenë komandantët e sulmit kriptografik, pavarësisht se vetë beteja zhvillohet vetëm në harduer dhe softuer. Nënvlerësimi i këtij fenomeni çoi në fiasko të shifrave të makinës shifrore Enigma gjatë Luftës së Dytë Botërore.

Lloji i enkriptimit dhe gjuha e mesazhit janë pothuajse gjithmonë të njohura. Alfabeti dhe veçoritë statistikore të kriptografisë mund t'i sugjerojnë ato. Sidoqoftë, informacioni rreth gjuhës dhe llojit të shifrës shpesh merret nga burime të fshehta. Kjo situatë i ngjan pak thyerjes së kasafortës: nëse "hajduti" nuk e di paraprakisht dizajnin e kasafortës për t'u çarë, gjë që duket mjaft e pamundur, ai përsëri e identifikon shpejt atë nga pamja e saj, logoja e korporatës. Në këtë drejtim, e panjohura është vetëm një çelës që duhet zbërthyer. Vështirësia qëndron në faktin se, ashtu si jo të gjitha sëmundjet mund të kurohen me të njëjtin ilaç, dhe për secilën prej tyre ka mjete specifike, kështu që llojet e veçanta të shifrave thyhen vetëm me metodat e tyre.

2.1 Karakteristikat e mesazheve Mesazhet, sado komplekse qofshin ato, është mjaft e mundur të imagjinohen në formën e çdo rendi simbolesh. Këto simbole duhet të merren nga një grup i paracaktuar, për shembull, nga alfabeti rus ose nga një gamë ngjyrash (e kuqe, e verdhë, jeshile). Karaktere të ndryshme mund të shfaqen në mesazhe në intervale të ndryshme. Në këtë drejtim, sasia e informacionit të transmetuar nga simbole të ndryshme mund të jetë e ndryshme. Në kuptimin e propozuar nga Shannon, sasia e informacionit përcaktohet nga vlera mesatare e numrit të pyetjeve të mundshme me zgjedhjet e përgjigjeve PO dhe JO në mënyrë që të parashikohet shenja pasuese në mesazh. Nëse karakteret në tekst janë të vendosura në një sekuencë që nuk varet nga njëri-tjetri, atëherë sasia mesatare e informacionit në një mesazh të tillë për karakter është e barabartë me:

ku Pi është frekuenca e shfaqjes së shenjës i, dhe Ld është logaritmi binar. Duhet të theksohen tre fenomene të kësaj shpërndarjeje informacioni.

Nuk varet aspak nga semantika, kuptimi i mesazhit dhe mund të përdoret edhe në një situatë ku kuptimi i saktë nuk është plotësisht i qartë. Kjo nënkupton që probabiliteti i shfaqjes së simboleve nuk varet nga historia e tyre paraprake.

Sistemi simbolik në të cilin përkthehet mesazhi, pra gjuha, metoda e enkriptimit, dihet para kohe.

Në çfarë njësi matet vlera e vëllimit të informacionit sipas Shannon-it? Me shumë mundësi, përgjigjen për këtë pyetje mund ta japë teorema e kriptimit, e cila thotë se çdo mesazh mund të kodohet me karakteret 0 dhe 1 në atë mënyrë që sasia e informacionit të marrë do të jetë arbitrarisht afër nga lart me H. një teoremë na lejon gjithashtu të tregojmë një njësi informacioni - kjo është pak.

2.2 Vetitë natyrore të tekstit Tani le të hedhim një vështrim në një mënyrë të aplikimit të njohurive për veçoritë natyrore të tekstit për nevojat e enkriptimit. Është e nevojshme të përcaktohet me një pjesë teksti se çfarë është - një mesazh që mbart një ngarkesë semantike ose thjesht një sekuencë karakteresh të rastësishme. Një numër metodash kriptografike duhet të prishen në një kompjuter nga një kërkim banal i çelësave, dhe është thjesht e pamundur të provosh manualisht mbi një mijë pjesë teksti në ditë, dhe shpejtësia e kërkimit është shumë e ulët. në këtë drejtim, është e nevojshme të zbatohet një detyrë e tillë duke përdorur një kompjuter.

Le të themi se duhet të përsërisim rreth një miliard çelësa në një kompjuter me një shpejtësi prej njëmijë çelësash në sekondë. Kjo do të na marrë rreth dhjetë ditë. Në këtë rast rrezikojmë të biem në dy ekstreme. Nëse jemi shumë të kujdesshëm në vlerësimet tona, disa nga fragmentet e pakuptimta të tekstit do të identifikohen si mesazhe dhe do t'i kthehen personit. Ky gabim më së shpeshti quhet "lajmërim i rremë" ose gabim i tipit I.

Me vëllimin e gabimeve të tilla që i kalon një mijë në ditë, një person i ulur në një kompjuter do të lodhet dhe më vonë mund të kontrollojë fragmente të tekstit pa vëmendje. Kjo do të thotë se është e mundur të bëhet jo më shumë se një gabim i këtij lloji për 100,000 kontrolle. Në ekstremin tjetër, nëse i afroheni kontrollit pa vëmendje, atëherë është mjaft e mundur të kapërceni një tekst kuptimplotë dhe në fund të kërkimit të plotë do të duhet të përsëritet përsëri. Për të mos rrezikuar nevojën për të përsëritur të gjithë sasinë e punës, gabimet e llojit të dytë, të quajtura edhe "lëshime të fragmenteve", mund të bëhen vetëm në një rast nga 100 ose 1000.

2.3 Kriteret për përcaktimin e natyrshmërisë Në pamje të parë, kriteri më i thjeshtë që mund të vijë në mendje është përdorimi i alfabetit të fragmentit të mesazhit. Duke marrë parasysh që teorikisht vetëm shenjat e pikësimit, numrat, shkronjat ruse të mëdha dhe të vogla mund të gjenden në të, jo më shumë se gjysma e grupit të tabelës së kodit ASCII mund të gjendet në tekstin e një fragmenti mesazhi.

Kjo do të thotë që kur një kompjuter ndeshet me një shenjë të papranueshme në një fragment teksti, patjetër që mund të deklarohet se nuk është kuptimplotë - gabimet e llojit të dytë praktikisht përjashtohen me një kanal komunikimi që funksionon mirë.

Për të reduktuar mundësinë teorike të "alarmeve të rreme" në vlerën e treguar në artikullin e mëparshëm, na duhet një fragment mesazhi që përbëhet nga të paktën njëzet e tre karaktere. Pyetja bëhet më e ndërlikuar nëse kodi i shkronjës së përdorur nuk është i tepërt, si përfaqësimi ASCII i tekstit rus, por përmban saktësisht aq karaktere sa ka në alfabet.

Në këtë rast, do të duhet të vendosim një vlerësim për mundësitë teorike të goditjes së personazheve në tekst. Për të siguruar mundësitë e pranuara të gabimeve të llojit të parë dhe të dytë, gjatë vlerësimit të gjasave maksimale të mundshme, është e nevojshme të analizohen tashmë rreth 100 karaktere, dhe analiza e mundësisë së takimit të bigrameve vetëm pak e zvogëlon këtë vlerë.

Prandaj, fragmentet e mesazheve të shkurtra me një vlerë të madhe kryesore në përgjithësi është praktikisht e pamundur të deshifrohen pa mëdyshje, pasi fragmentet e rastësishme të tekstit që shfaqen mund të përkojnë me fraza që kanë kuptim. I njëjti problem duhet të zgjidhet në kontrollin e cilësisë së kriptografisë. Në këtë rast, megjithatë, mundësia e një alarmi të rremë mund të rritet duke e bërë atë jo më shumë se një të mijëtën, me të njëjtën mundësi për të injoruar një fragment të mesazhit. Kjo do të na lejojë të kufizohemi në vetëm njëzet ose tridhjetë karaktere për të kontrolluar tekstet.

3. Kriptimi simetrik Kriptosistemet simetrike (gjithashtu enkriptimi simetrik, shifrat simetrike) janë një metodë enkriptimi në të cilën i njëjti çelës kriptografik përdoret për enkriptim dhe deshifrim. Para shpikjes së skemës së enkriptimit asimetrik, e vetmja metodë ekzistuese ishte kriptimi simetrik. Çelësi i algoritmit duhet të mbahet i fshehtë nga të dyja palët. Algoritmi i enkriptimit zgjidhet nga palët përpara fillimit të shkëmbimit të mesazheve.

Aktualisht, shifrat simetrike janë:

Blloko shifrat. Informacioni përpunohet në blloqe me një gjatësi të caktuar (zakonisht 64, 128 bit), duke aplikuar një çelës në bllok në një rend të caktuar, si rregull, disa cikle përzierjeje dhe zëvendësimi, të quajtura raunde. Rezultati i raundeve të përsëritura është një efekt orteku - një humbje në rritje e korrespondencës së biteve midis blloqeve të të dhënave të hapura dhe të koduara.

Shifrat e transmetimit, në të cilat kriptimi kryhet në çdo bit ose bajt të tekstit origjinal (të thjeshtë) duke përdorur gama. Një shifër e transmetimit mund të krijohet lehtësisht në bazë të një kodi blloku (për shembull, GOST 28 147-89 në modalitetin gama), i nisur në një mënyrë të veçantë.

Shumica e shifrave simetrike përdorin një kombinim kompleks të shumë zëvendësimeve dhe permutacioneve. Shumë shifra të tilla ekzekutohen në disa kalime (nganjëherë deri në 80), duke përdorur një "çelës kalimi" në çdo kalim. Grupi i "çelësave të kalimit" për të gjitha kalimet quhet "orari i çelësave". Si rregull, ai krijohet nga një çelës duke kryer disa operacione mbi të, duke përfshirë ndërrime dhe zëvendësime.

Mënyra tipike për të ndërtuar algoritme simetrike të kriptimit është rrjeti Feistel. Algoritmi ndërton një skemë enkriptimi bazuar në funksionin F (D, K), ku D është një pjesë e të dhënave që është gjysma e madhësisë së bllokut të enkriptimit dhe K është "çelësi i kalimit" për këtë kalim. Një funksion nuk kërkohet të jetë i kthyeshëm - funksioni i tij i kundërt mund të mos dihet. Përparësitë e rrjetit Feistel janë se deshifrimi dhe kriptimi pothuajse plotësisht përkojnë (i vetmi ndryshim është rendi i kundërt i "çelësave të kalimit" në orar), gjë që lehtëson shumë zbatimin e harduerit.

Operacioni i ndërrimit i përzien pjesët e mesazhit sipas një ligji të caktuar. Në zbatimin e harduerit, ai zbatohet në mënyrë të parëndësishme si ngatërrim teli. Janë operacionet e ndërrimit që bëjnë të mundur arritjen e "efektit të ortekëve". Operacioni i ndërrimit është linear - f (a) xor f (b) == f (a xor b)

Operacionet e zëvendësimit kryhen si zëvendësim i vlerës së një pjese të mesazhit (shpesh 4, 6 ose 8 bit) me një numër tjetër standard të koduar në algoritëm duke hyrë në një grup konstant. Operacioni i zëvendësimit fut jolinearitetin në algoritëm.

Shpesh, qëndrueshmëria e një algoritmi, veçanërisht ndaj kriptanalizës diferenciale, varet nga zgjedhja e vlerave në tabelat e kërkimit (S-boxes). Në minimum, konsiderohet e padëshirueshme që të ketë elementë fiks S (x) = x, si dhe mungesa e ndikimit të një pjese të bajtit të hyrjes në një pjesë të rezultatit - domethënë rastet kur biti i rezultatit është e njëjtë për të gjitha çiftet e fjalëve hyrëse që ndryshojnë vetëm në këtë ritëm.

Figura 1. Llojet e çelësave

4. Kriptimi asimetrik Një sistem kriptografik me çelës publik (ose enkriptim asimetrik, shifr asimetrik) është një sistem kriptimi dhe/ose nënshkrimi elektronik dixhital në të cilin çelësi publik transmetohet përmes një kanali të hapur (d.m.th., i pambrojtur, i aksesueshëm për vëzhgim) dhe është përdoret për të verifikuar EDS dhe për të enkriptuar mesazhin. Një çelës sekret përdoret për të gjeneruar një EDS dhe për të deshifruar mesazhin. Sistemet kriptografike me çelës publik tani përdoren gjerësisht në protokolle të ndryshme të rrjetit, veçanërisht në protokollet TLS dhe paraardhësin e tij SSL (në themel HTTPS), në SSH.

Ideja e kriptografisë me çelës publik është shumë e lidhur me idenë e funksioneve njëkahëshe, pra funksione të tilla që është mjaft e lehtë të gjesh vlerën nga e njohura, ndërsa përcaktimi i nga është i pamundur në një kohë të arsyeshme.

Por vetë funksioni i njëanshëm është i padobishëm: ai mund të enkriptojë një mesazh, por nuk mund ta deshifrojë atë. Prandaj, kriptografia me çelës publik përdor funksione njëkahëshe me një boshllëk. Një zbrazëti është një sekret që ndihmon në deshifrimin. Kjo është, ka një që, duke ditur dhe, mund të llogaritet. Për shembull, nëse çmontoni një orë në shumë pjesë përbërëse, është shumë e vështirë të montoni një orë të re që funksionon.

Shembulli i mëposhtëm ndihmon për të kuptuar idetë dhe metodat e kriptografisë së çelësit publik - ruajtjen e fjalëkalimeve në një kompjuter. Çdo përdorues në rrjet ka fjalëkalimin e tij. Kur hyn, ai specifikon një emër dhe fut një fjalëkalim sekret. Por nëse e ruani fjalëkalimin në një disk kompjuteri, atëherë dikush mund ta lexojë atë (është veçanërisht e lehtë për administratorin e këtij kompjuteri ta bëjë këtë) dhe të fitojë qasje në informacione sekrete. Një funksion njëkahësh përdoret për të zgjidhur problemin. Kur krijoni një fjalëkalim sekret, kompjuteri nuk ruan vetë fjalëkalimin, por rezultatin e llogaritjes së një funksioni nga ky fjalëkalim dhe emër përdoruesi. Për shembull, përdoruesi Alice doli me fjalëkalimin "Gladiolus". Gjatë ruajtjes së këtyre të dhënave, llogaritet rezultati i funksionit (GLADIOLUS), le të jetë rezultati i vargut CHAMOMILE, i cili do të ruhet në sistem. Si rezultat, skedari i fjalëkalimit do të duket si ky:

Hyrja tani duket si kjo:

Kur Alice fut fjalëkalimin "sekret", kompjuteri kontrollon nëse funksioni i aplikuar në GLADIOLUS jep ose jo rezultatin e saktë CHAMOMILE të ruajtur në diskun e kompjuterit. Vlen të ndryshoni të paktën një shkronjë në emër ose fjalëkalim, dhe rezultati i funksionit do të jetë krejtësisht i ndryshëm. Fjalëkalimi "sekret" nuk ruhet në kompjuter në asnjë formë. Skedari i fjalëkalimit tani mund të shikohet nga përdoruesit e tjerë pa humbur sekretin, pasi funksioni është praktikisht i pakthyeshëm.

Shembulli i mëparshëm përdor një funksion me një drejtim pa një derë kurth, pasi nuk kërkohet të merret origjinali nga mesazhi i koduar. Shembulli i mëposhtëm shqyrton një skemë me aftësinë për të rikuperuar mesazhin origjinal duke përdorur një "zbrazëtirë", domethënë një informacion të vështirë për t'u gjetur. Për të kriptuar tekstin, mund të merrni një drejtori të madhe pajtimtarësh të përbërë nga disa vëllime të trasha (është shumë e lehtë të gjesh numrin e çdo banori të qytetit që e përdor atë, por është pothuajse e pamundur të gjesh një pajtimtar duke përdorur një numër të njohur). Për secilën shkronjë nga mesazhi i koduar, zgjidhet një emër që fillon me të njëjtën shkronjë. Kështu, letra shoqërohet me numrin e telefonit të pajtimtarit. Mesazhi i dërguar, për shembull "BOX", do të kodohet si më poshtë:

Mesazh

Emri i zgjedhur

Kriptoteksti

Kirsanova

Arsenjev

Kriptoteksti do të jetë një zinxhir numrash të shkruar sipas renditjes që janë zgjedhur në drejtori. Për ta bërë të vështirë deshifrimin, duhet të zgjidhni emra të rastësishëm duke filluar me shkronjën e dëshiruar. Kështu, mesazhi origjinal mund të kodohet me shumë lista të ndryshme numrash (kriptotekste).

Shembuj të kriptoteksteve të tilla:

Kriptoteksti 1

Kriptoteksti 2

Kriptoteksti 3

Për të deshifruar tekstin, duhet të keni një direktori të përpiluar sipas numrave në rritje. Ky udhëzues është një zbrazëti (një sekret që ndihmon për të marrë tekstin fillestar) i njohur vetëm për përdoruesit e ligjshëm. Pa një kopje të manualit, një kriptanalist do të shpenzojë shumë kohë duke deshifruar.

Skema e enkriptimit të çelësit publik Let është hapësira e çelësit, dhe janë përkatësisht çelësat e enkriptimit dhe deshifrimit. - një funksion kriptimi për një çelës arbitrar, i tillë që:

Këtu ku është hapësira e teksteve të shifruara dhe ku është hapësira e mesazheve.

Një funksion deshifrimi me të cilin mund të gjeni mesazhin origjinal duke ditur tekstin e shifruar:

(:) është grupi i enkriptimit dhe (:) është grupi përkatës i deshifrimit. Çdo çift ka një veti: duke ditur, është e pamundur të zgjidhet ekuacioni, domethënë, për një tekst të caktuar shifror arbitrar, është e pamundur të gjesh një mesazh. Kjo do të thotë se nga kjo është e pamundur të përcaktohet çelësi përkatës i deshifrimit. është një funksion njëkahësh dhe një boshllëk.

Më poshtë është një diagram i transferimit të informacionit nga një person, A te personi B. Ata mund të jenë edhe individë, edhe organizata, etj. Por për perceptim më të lehtë, është zakon që pjesëmarrësit në program të identifikohen me njerëz, më së shpeshti të quajtur Alice dhe Bob. Pjesëmarrësi që kërkon të përgjojë dhe deshifrojë mesazhet nga Alice dhe Bob më shpesh quhet Eva.

Figura 2. Kriptimi asimetrik Bob zgjedh një çift dhe ia dërgon çelësin e enkriptimit (çelësin publik) Alice përmes një kanali të hapur, dhe çelësi i deshifrimit (çelësi privat) është i mbrojtur dhe sekret (nuk duhet të transmetohet përmes një kanali të hapur).

Për t'i dërguar një mesazh Bobit, Alice përdor funksionin e enkriptimit të përcaktuar nga çelësi publik: - teksti i shifruar i marrë.

Bob deshifron tekstin e shifruar duke përdorur transformimin e kundërt, i cili përcaktohet në mënyrë unike nga vlera.

Bazat shkencore Shifrat asimetrike filluan me Drejtimet e Reja në Kriptografinë Moderne nga Whitfield Diffie dhe Martin Hellman, botuar në 1976. Të ndikuar nga puna e Ralph Merkle për shpërndarjen e çelësit publik, ata propozuan një metodë për marrjen e çelësave privatë duke përdorur një kanal të hapur. Kjo metodë e shkëmbimit eksponencial të çelësave, e cila u bë e njohur si shkëmbimi i çelësave Diffie-Hellman, ishte metoda e parë praktike e publikuar për vendosjen e ndarjes së çelësave sekret midis përdoruesve të autorizuar të kanalit. Në vitin 2002, Hellman propozoi të quhej algoritmi Diffie-Hellman-Merkle, duke njohur kontributin e Merkle në shpikjen e kriptografisë me çelës publik. E njëjta skemë u zhvillua nga Malcolm Williamson në vitet 1970, por u mbajt sekret deri në vitin 1997. Metoda Merkle për shpërndarjen e një çelësi publik u shpik në 1974 dhe u botua në 1978, e quajtur edhe enigma Merkle.

Në vitin 1977, shkencëtarët Ronald Rivest, Adi Shamir dhe Leonard Adleman të Institutit të Teknologjisë në Massachusetts zhvilluan një algoritëm kriptimi bazuar në problemin e faktorizimit. Sistemi u emërua sipas shkronjave të para të mbiemrave të tyre (RSA - Rivest, Shamir, Adleman). I njëjti sistem u shpik në vitin 1973 nga Clifford Cox, i cili punonte në qendrën qeveritare të komunikimit (GCHQ), por kjo vepër ruhej vetëm në dokumentet e brendshme të qendrës, kështu që ekzistenca e saj nuk dihej deri në vitin 1977. RSA ishte algoritmi i parë i përshtatshëm si për kriptim ashtu edhe për nënshkrime dixhitale.

Në përgjithësi, kriptosistemet e njohura asimetrike bazohen në një nga problemet komplekse matematikore që e lejon njeriun të ndërtojë funksione njëkahëshe dhe funksione të zbrazëta. Për shembull, kriptosistemet Merkle-Hellman dhe Hoare-Rivest mbështeten në të ashtuquajturin problem i ruajtjes së çantave.

Parimet themelore të ndërtimit të kriptosistemeve me çelës publik Le të fillojmë me një detyrë të vështirë. Duhet të jetë e vështirë për t'u zgjidhur në kuptimin e teorisë: nuk duhet të ekzistojë një algoritëm me të cilin do të ishte e mundur të numëroheshin të gjitha variantet e zgjidhjes së problemit në kohë polinomiale në lidhje me madhësinë e problemit. Do të ishte më e saktë të thuhet: nuk duhet të ketë një algoritëm të njohur polinom që zgjidh këtë problem, pasi nuk është vërtetuar ende për asnjë problem që nuk ka një algoritëm të përshtatshëm për të në parim.

Ju mund të zgjidhni një nëndetyrë të lehtë nga. Duhet të zgjidhet në kohë polinomiale dhe më mirë, nëse në kohë lineare.

"Shuffle and Shake" për të marrë një problem që është krejtësisht i ndryshëm nga origjinali. Problemi duhet të paktën të duket si problemi origjinal i vështirë për t'u zgjidhur.

hapet me një përshkrim se si mund të përdoret si një çelës enkriptimi. Si ta merrni atë mbahet sekret si një zbrazëti sekrete.

Kriptosistemi është i organizuar në atë mënyrë që algoritmet e deshifrimit për një përdorues ligjor dhe një kriptanalist janë dukshëm të ndryshme. Ndërsa i dyti zgjidh problemin -, i pari përdor një shteg sekret dhe zgjidh -problemin.

Kriptografia me çelësa të shumtë publikë Shembulli i mëposhtëm tregon një skemë në të cilën Alice enkripton një mesazh në mënyrë që vetëm Bob të mund ta lexojë atë dhe anasjelltas, Bob e kodon mesazhin në mënyrë që vetëm Alice ta deshifrojë atë.

Le të jenë 3 çelësa të shpërndarë siç tregohet në tabelë.

çelësi i enkriptimit të kriptografisë simetrik

Pastaj Alice mund të enkriptojë mesazhin me çelës, dhe Ellen mund të deshifrojë me çelësat, Carol mund të enkriptojë me çelës dhe Dave mund të deshifrojë me çelësat. Nëse Dave e kodon mesazhin me çelës, atëherë mesazhi mund të lexohet nga Ellen, nëse me çelës, atëherë Frank mund ta lexojë atë, nëse me të dy çelësat dhe, atëherë mesazhi do të lexohet nga Carol. Pjesëmarrësit e tjerë veprojnë sipas analogjisë. Kështu, nëse një nëngrup çelësash përdoret për kriptim, atëherë çelësat e mbetur të grupit kërkohen për deshifrim. Kjo skemë mund të përdoret për n çelësa.

Tani mund t'u dërgoni mesazhe grupeve të agjentëve pa e ditur paraprakisht përbërjen e grupit.

Le të fillojmë me një grup prej tre agjentësh: Alice, Bob dhe Carol. Alice-s i jepen çelësat dhe Bobit i jepen çelësat dhe Carol-it i jepen çelësat. Tani, nëse mesazhi që dërgohet është i koduar me një çelës, atëherë vetëm Alice mund ta lexojë atë, duke aplikuar në mënyrë sekuenciale çelësat dhe. Nëse duhet t'i dërgoni një mesazh Bobit, mesazhi është i koduar me një çelës, Carol me një çelës. Nëse keni nevojë të dërgoni një mesazh te Alice dhe Carol, atëherë çelësat dhe përdoren për enkriptim.

Avantazhi i kësaj skeme është se vetëm një mesazh dhe n çelësa nevojiten për ta zbatuar atë (në një skemë me n agjentë). Nëse transmetohen mesazhe individuale, d.m.th., përdoren çelësa të veçantë për çdo agjent (n çelësa në total) dhe çdo mesazh, atëherë kërkohen çelësa për të transmetuar mesazhe në të gjitha nëngrupet e ndryshme.

Disavantazhi i kësaj skeme është se është gjithashtu i nevojshëm transmetimi i një nëngrupi agjentësh (lista e emrave mund të jetë mbresëlënëse) tek të cilët duhet të transmetohet mesazhi. Përndryshe, secili prej tyre do të duhet të kalojë nëpër të gjitha kombinimet e çelësave në kërkim të një të përshtatshme. Gjithashtu, agjentët do të duhet të ruajnë një sasi të konsiderueshme informacioni rreth çelësave.

Kriptanaliza e algoritmeve të çelësit publik Duket se një kriptosistem i çelësit publik është një sistem ideal që nuk kërkon një kanal të sigurt për të transmetuar çelësin e enkriptimit. Kjo do të nënkuptonte që dy përdorues legjitimë mund të komunikojnë përmes një kanali të hapur pa u takuar për të shkëmbyer çelësat. Fatkeqësisht, kjo nuk është kështu. Figura ilustron se si Eva, duke vepruar si një interceptues aktiv, mund të rrëmbejë sistemin (të deshifrojë mesazhin e destinuar për Bobin) pa thyer sistemin e enkriptimit.

Figura 3. Kriptosistemi me një çelës publik dhe një përgjues aktiv Në këtë model, Eva kap çelësin publik të dërguar nga Bob tek Alice. Pastaj ai krijon një palë çelësa dhe maskohet si Bob duke i dërguar Alice-s çelësin publik, të cilin Alice mendon se është çelësi publik që Bob ia dërgoi asaj. Eva përgjon mesazhet e koduara nga Alice te Bob, i deshifron ato me çelësin privat, i rikripton me çelësin publik të Bobit dhe ia dërgon mesazhin Bobit. Kështu, asnjë nga pjesëmarrësit nuk e kupton se ekziston një palë e tretë që ose thjesht mund të përgjojë mesazhin ose ta zëvendësojë atë me një mesazh të rremë. Kjo nënvizon nevojën për vërtetimin e çelësit publik. Kjo zakonisht bëhet duke përdorur certifikata. Menaxhimi i çelësave të shpërndarë në PGP e zgjidh problemin me ndihmën e garantuesve.

Një formë tjetër sulmi është llogaritja e çelësit privat, duke ditur atë publik (figura më poshtë). Kriptanalisti e njeh algoritmin e kriptimit, duke e analizuar atë, duke u përpjekur ta gjejë atë. Ky proces thjeshtohet nëse kriptanalisti përgjon disa kriptotekste të dërguara nga personi A te personi B.

Figura 4. Një kriptosistem asimetrik me një interceptues pasiv.

Shumica e kriptosistemeve me çelës publik bazohen në problemin e faktorizimit të numrave të mëdhenj. Për shembull, RSA përdor produktin e dy numrave të mëdhenj si çelës publik n. Vështirësia në thyerjen e një algoritmi të tillë është vështirësia në faktorizimin e numrit n. Por kjo detyrë mund të zgjidhet realisht. Dhe çdo vit procesi i dekompozimit bëhet gjithnjë e më i shpejtë. Më poshtë janë të dhënat e faktorizimit duke përdorur algoritmin "Sosha kuadratike".

Gjithashtu, problemi i dekompozimit potencialisht mund të zgjidhet duke përdorur Algoritmin e Shor duke përdorur një kompjuter kuantik mjaftueshëm të fuqishëm.

Për shumë metoda të kriptimit asimetrik, forca kriptografike e marrë si rezultat i kriptanalizës ndryshon ndjeshëm nga vlerat e deklaruara nga zhvilluesit e algoritmeve bazuar në vlerësimet teorike. Prandaj, në shumë vende, çështja e përdorimit të algoritmeve të enkriptimit të të dhënave është në fushën e rregullimit legjislativ. Në veçanti, në Rusi, vetëm ato programe të kriptimit të të dhënave që kanë kaluar certifikimin shtetëror në organet administrative, veçanërisht në FSB, lejohen të përdoren në qeveri dhe organizata tregtare.

Përfundim Gjatë punës për temën e zgjedhur në kuadrin e praktikës arsimore, kam kryer: një rishikim të historisë së zhvillimit të kriptografisë dhe kriptanalizës; një rishikim analitik i llojeve ekzistuese të algoritmeve kriptografike (shifrohen shifra simetrike dhe asimetrike) dhe metodave për vlerësimin e fuqisë së tyre. Shpresoj se zhvillimi i kriptografisë do t'i sjellë dobi vetëm njerëzimit.

Referencat Gatchin Yu. A., Korobeinikov A. G. Bazat e algoritmeve kriptografike. Tutorial. - SPb .: SPbGITMO (TU), 2002.

Kon P. Algjebra universale. - M .: Mir. - 1968

Korobeynikov A.G. Bazat matematikore të kriptografisë. Tutorial. SPb: SPb GITMO (TU), 2002.

Schneier B. Kriptografia e aplikuar. Protokollet, algoritmet, tekstet burimore në C = Kriptografia e Aplikuar. Protokollet, algoritmet dhe kodi burimor në C. - M .: Triumph, 2002.

Algoritmet bazë të enkriptimit

Konceptet dhe përkufizimet bazë

Me formimin e shoqërisë së informacionit, shtetet e mëdha kanë akses në mjetet teknike të mbikëqyrjes totale mbi miliona njerëz. Prandaj, kriptografia po bëhet një nga mjetet kryesore për sigurimin e konfidencialitetit, besimit, autorizimit, pagesave elektronike, sigurisë së korporatës dhe gjërave të tjera të rëndësishme.

Ballafaqimi me problemin e mbrojtjes së informacionit duke e transformuar atë kriptologjia , i cili ndahet në dy drejtime: kriptografia dhe kriptanaliza ... Qëllimet e këtyre drejtimeve janë pikërisht të kundërta.

Kriptografiaështë e angazhuar në kërkimin dhe kërkimin e metodave matematikore për transformimin e informacionit. Zona e interesit kriptanaliza- hetimi i mundësisë së deshifrimit të informacionit pa i ditur çelësat.

Kriptografia moderne përfshin 4 seksione kryesore:

1. Kriptosistemet simetrike.

2. Kriptosistemet me çelës publik.

3. Sistemet e nënshkrimit elektronik.

4. Menaxhimi i çelësave.

Drejtimet kryesore të përdorimit të metodave kriptografike janë transferimi i informacionit konfidencial përmes kanaleve të komunikimit, vërtetimi i mesazheve të transmetuara dhe ruajtja e informacionit në media në formë të koduar.

Kriptografia bën të mundur transformimin e informacionit në atë mënyrë që leximi (rikuperimi) i tij të jetë i mundur vetëm me njohjen e çelësit. Si informacion që i nënshtrohet enkriptimit dhe deshifrimit, tekstet e bazuara në një alfabet të caktuar do të konsiderohen.

Alfabeti- një grup i kufizuar karakteresh që përdoren për të koduar informacionin. Shembuj:

ü alfabeti Z33 - përmban 32 shkronja të alfabetit rus dhe një hapësirë;

ü alfabeti Z256 - karaktere të përfshira në kodet standarde ASCII dhe KOI-8;

ü alfabeti binar Z2 - dy karaktere (0 dhe 1);

ü alfabete oktal ose heksadecimal.

Teksti- një grup i renditur elementesh të alfabetit.

Enkriptimi- procesi transformues i zëvendësimit të tekstit origjinal (të thjeshtë) me tekst shifror.

Deshifrimi(e anasjellta e kriptimit) - një proces transformues i zëvendësimit të tekstit të koduar bazuar në çelësin e tekstit të koduar me tekstin origjinal.

Celës- informacione të nevojshme për kriptim dhe deshifrim të papenguar të teksteve.

Sistemi kriptografikështë një familje e transformimeve T [T 1, T 2, ..., T në] të tekstit të thjeshtë. Anëtarët e kësaj familjeje indeksohen ose shënohen me simbol për të; parametri për tëështë çelësi. Hapësira kryesore K është bashkësia e vlerave të mundshme kryesore. Në mënyrë tipike, një çelës është një seri vijuese e karaktereve alfabetike.

Kriptosistemet ndahen në simetrike dhe asimetrike ... V kriptosistemet simetrike i njëjti çelës përdoret si për enkriptim ashtu edhe për deshifrim. V sisteme asimetrike (me çelës publik) përdoren dy çelësa - publik dhe privat, të cilët janë matematikisht të lidhur me njëri-tjetrin. Informacioni kodohet duke përdorur një çelës publik që është i disponueshëm për të gjithë dhe deshifrohet duke përdorur një çelës privat të njohur vetëm për marrësin e mesazhit.

Kushtet shpërndarja e çelësit dhe menaxhimi kryesor i referohen proceseve të përpunimit të informacionit, përmbajtja e të cilave është përpilimi i çelësave dhe shpërndarja e tyre midis përdoruesve.

Nënshkrimi elektronik (dixhital). quhet transformimi i tij kriptografik, i cili i bashkëngjitet tekstit, i cili lejon, kur teksti merret nga një përdorues tjetër, të verifikohet autorësia dhe autenticiteti i mesazhit.

Rezistenca e kriptoveështë një karakteristikë e një shifre që përcakton rezistencën e tij ndaj deshifrimit pa e ditur çelësin (d.m.th., rezistencën ndaj kriptanalizës). Ekzistojnë disa tregues të fuqisë kriptografike:

numri i të gjithë çelësave të mundshëm;

koha mesatare e nevojshme për kriptanalizën.

Kërkesat për kriptosistemet

Procesi i mbylljes së të dhënave kriptografike mund të kryhet si në softuer ashtu edhe në harduer. Zbatimi i harduerit është dukshëm më i shtrenjtë, por ka performancë të lartë, thjeshtësi dhe siguri. Zbatimi i softuerit është më praktik dhe lejon një fleksibilitet të caktuar në përdorim.

Kërkesat e pranuara përgjithësisht për sistemet kriptografike:

· Mesazhi i koduar duhet të jetë i lexueshëm vetëm nëse çelësi është i pranishëm;

· Numri i operacioneve të nevojshme për të përcaktuar çelësin e përdorur nga fragmenti i mesazhit të koduar dhe teksti i thjeshtë përkatës duhet të jetë së paku numri i përgjithshëm i çelësave të mundshëm;

· Numri i operacioneve të nevojshme për të deshifruar informacionin duke numëruar çelësat e mundshëm duhet të ketë një kufi të poshtëm strikte dhe të shkojë përtej aftësive të kompjuterëve modernë (duke marrë parasysh aftësitë e llogaritjes së rrjetit);

· Njohja e algoritmit të enkriptimit nuk duhet të ndikojë në besueshmërinë e mbrojtjes;

· Një ndryshim i lehtë në çelës duhet të çojë në një ndryshim të rëndësishëm në llojin e mesazhit të koduar;

· Elementet strukturore të algoritmit të enkriptimit duhet të jenë të pandryshuara;

· Bitët shtesë të futura në mesazh gjatë procesit të kriptimit duhet të fshihen plotësisht dhe në mënyrë të besueshme në tekstin e shifrimit;

· Gjatësia e tekstit të koduar duhet të jetë e barabartë me gjatësinë e tekstit origjinal;

· Nuk duhet të ketë varësi të thjeshta dhe lehtësisht të vendosura ndërmjet çelësave që përdoren në mënyrë sekuenciale në procesin e enkriptimit;

· Çdo çelës nga grupi i atyre të mundshëm duhet të sigurojë mbrojtje të besueshme informacioni;

· Algoritmi duhet të lejojë zbatimin e softuerit dhe harduerit, ndërsa ndryshimi i gjatësisë së çelësit nuk duhet të çojë në një përkeqësim cilësor të algoritmit të enkriptimit.

Algoritmet bazë të enkriptimit

Quhet metoda e enkriptimit-dekriptimit shifror ... Çelësi i përdorur për deshifrim mund të mos përputhet me çelësin e përdorur për enkriptim, megjithatë, në shumicën e algoritmeve, çelësat janë të njëjtë.

Algoritmet kryesore ndahen në dy klasa: simetrike (me çelës sekret) dhe asimetrike (me çelës publik). Algoritmet simetrike përdorin të njëjtin çelës enkriptimi dhe çelës dekriptimi, ose çelësi i deshifrimit llogaritet thjesht nga çelësi i enkriptimit. Algoritmet asimetrike përdorin çelësa të ndryshëm dhe çelësi i deshifrimit nuk mund të llogaritet nga çelësi i enkriptimit.

Algoritmet simetrike ndahen në shifra stream dhe shifra bllok. Transmetimi ju lejon të kriptoni informacionin pak nga pak, ndërsa ato të bllokuara funksionojnë me një grup të caktuar bit të të dhënave ( zakonisht madhësia e bllokut është 64 bit) dhe enkriptoni këtë grup në tërësi.

Në mënyrë tipike, çelësi i enkriptimit është një skedar ose grup të dhënash dhe ruhet në një mbajtës çelësi personal (për shembull, një USB flash drive ose kartë inteligjente); është e domosdoshme të merren masa për të siguruar që mbajtësi i çelësit personal të jetë i paarritshëm për këdo tjetër përveç pronarit të tij.



Autenticiteti sigurohet për faktin se pa deshifrim paraprak është praktikisht e pamundur të kryhet modifikimi semantik dhe falsifikimi i një mesazhi të mbyllur kriptografikisht. Një mesazh i rremë nuk mund të kodohet saktë pa e ditur çelësin sekret.

Integriteti i të dhënave sigurohet duke i bashkangjitur një kod të veçantë të dhënave të transmetuara ( inserte imituese ) i gjeneruar nga çelësi sekret. Futja e imitimit është një lloj kontrolli, d.m.th. disa karakteristikë referimi të mesazhit, sipas të cilave kontrollohet integriteti i këtij të fundit. Algoritmi për gjenerimin e një inserti imitues duhet të sigurojë varësinë e tij sipas disa ligjeve komplekse kriptografike në çdo bit të mesazhit. Kontrolli i integritetit të mesazhit kryhet nga marrësi i mesazhit duke gjeneruar një insert imitues që korrespondon me mesazhin e marrë duke përdorur çelësin sekret dhe duke e krahasuar atë me vlerën e futur të imitimit të marrë. Nëse ka një përputhje, arrihet në përfundimin se informacioni nuk është modifikuar gjatë rrugës nga dërguesi te marrësi.

Kriptimi simetrik është ideal për të kriptuar informacionin "për veten tuaj", për shembull, për të parandaluar hyrjen e paautorizuar në të në mungesë të pronarit. Unë kam një shpejtësi të lartë kriptimi, kriptosistemet me një çelës mund të zgjidhin shumë probleme të rëndësishme të sigurisë së informacionit. Sidoqoftë, përdorimi autonom i kriptosistemeve simetrike në rrjetet kompjuterike krijon problemin e shpërndarjes së çelësave të enkriptimit midis përdoruesve.

Para fillimit të shkëmbimit të të dhënave të koduara, është e nevojshme të shkëmbeni çelësat sekretë me të gjithë marrësit. Transferimi i çelësit sekret të një kriptosistemi simetrik nuk mund të kryhet nëpërmjet kanaleve të komunikimit publik; çelësi sekret duhet t'i transferohet dërguesit dhe marrësit nëpërmjet një kanali të sigurt (ose duke përdorur një korrier). Për të siguruar mbrojtje efektive të mesazheve që qarkullojnë në rrjet, kërkohet një numër i madh çelësash që ndryshojnë shpesh (një çelës për çdo palë përdoruesish). Problemi i shpërndarjes së çelësave sekretë me një numër të madh përdoruesish është një detyrë shumë kohë dhe komplekse. Në një rrjet për përdoruesit N, është e nevojshme të shpërndahen N (N-1) / 2 çelësa sekretë.

Shifra asimetrike lejo që çelësi publik të jetë i disponueshëm për të gjithë (për shembull, të botuar në një gazetë). Kjo i mundëson kujtdo të kodojë mesazhin. Megjithatë, vetëm përdoruesi me çelësin e deshifrimit mund të deshifrojë këtë mesazh. Telefonohet çelësi i enkriptimit çelës publik , dhe çelësi i deshifrimit është çelës privat ose çelësi sekret .

Çelësat privatë dhe publikë gjenerohen në çifte. Çelësi sekret duhet të mbetet tek pronari i tij dhe të mbrohet në mënyrë të besueshme nga ndërhyrjet (të ngjashme me çelësin e enkriptimit në algoritmet simetrike). Një kopje e çelësit publik duhet të mbahet nga çdo pajtimtar i rrjetit kriptografik me të cilin pronari i çelësit sekret shkëmben informacion.

Sistemet kriptografike me çelës publik përdorin të ashtuquajturat funksione të pakthyeshme ose njëkahëshe që kanë vetinë: dhënë një vlerë NS relativisht e lehtë për të llogaritur vlerën f (x) megjithatë nëse yM = j (x), atëherë nuk ka asnjë mënyrë të lehtë për të llogaritur vlerën NS... Shumë klasa të funksioneve të pakthyeshme krijojnë të gjithë shumëllojshmërinë e sistemeve të çelësave publikë.

Procesi i transferimit të informacionit të koduar në një kriptosistem asimetrik është si më poshtë.

Faza përgatitore:

· Pajtimtari B gjeneron një palë çelësash: një çelës sekret k në dhe një çelës publik K në;

· Çelësi publik K i dërgohet pajtimtarit A dhe abonentëve të tjerë (ose vihet i disponueshëm, për shembull, në një burim të përbashkët).

Përdorimi ( shkëmbimi i informacionit midis A dhe B ):

· Pajtimtari A e kodon mesazhin me çelësin publik K për pajtimtarin B dhe ia dërgon tekstin e shifruar pajtimtarit B;

· Pajtimtari B deshifron mesazhin duke përdorur çelësin e tij sekret k B; askush tjetër nuk mund ta deshifrojë këtë mesazh, sepse nuk ka çelësin sekret të pajtimtarit V.

Mbrojtja e informacionit në një kriptosistem asimetrik bazohet në fshehtësinë e çelësit k në marrësin e mesazhit.

Përparësitë Sistemet kriptografike asimetrike mbi kriptosistemet simetrike:

ü në kriptosistemet asimetrike zgjidhet problemi kompleks i shpërndarjes së çelësave ndërmjet përdoruesve, pasi çdo përdorues mund të gjenerojë vetë çiftin e tij të çelësave, dhe çelësat publikë të përdoruesve mund të publikohen dhe shpërndahen lirisht në komunikimet e rrjetit;

ü zhduket varësia kuadratike e numrit të çelësave nga numri i përdoruesve; në një kriptosistem asimetrik, numri i çelësave të përdorur lidhet me numrin e pajtimtarëve me një marrëdhënie lineare (në një sistem prej N përdoruesish përdoren çelësa 2N), dhe jo me kuadratikë, si në sistemet simetrike;

ü Kriptosistemet asimetrike lejojnë zbatimin e protokolleve të ndërveprimit midis palëve që nuk i besojnë njëra-tjetrës, pasi kur përdoren kriptosistemet asimetrike, çelësi privat duhet të jetë i njohur vetëm për pronarin e tij.

disavantazhet kriptosistemet asimetrike:

ü për momentin nuk ka asnjë provë matematikore të pakthyeshmërisë së funksioneve të përdorura në algoritmet asimetrike;

ü kriptimi asimetrik është dukshëm më i ngadalshëm se ai simetrik, pasi operacionet me shumë burime përdoren për kriptim dhe deshifrim; për të njëjtën arsye, është shumë më e vështirë të zbatosh një enkriptues harduerik me një algoritëm asimetrik sesa të zbatosh një algoritëm simetrik harduer;

ü nevoja për të mbrojtur çelësat publikë nga zëvendësimi.

Algoritmet moderne të enkriptimit-deshifrimit janë mjaft komplekse dhe nuk mund të kryhen me dorë. Algoritmet reale kriptografike janë krijuar për t'u përdorur nga kompjuterë ose pajisje të specializuara harduerike. Në shumicën e aplikacioneve, kriptografia bëhet në softuer dhe ka shumë paketa kriptografike në dispozicion.

Algoritmet simetrike janë më të shpejta se ato asimetrike. Në praktikë, të dy llojet e algoritmeve përdoren shpesh së bashku: një algoritëm i çelësit publik përdoret për të transmetuar një çelës sekret të krijuar rastësisht, i cili më pas përdoret për të deshifruar mesazhin.

Shumë algoritme kriptografike cilësore janë gjerësisht të disponueshme. Algoritmet simetrike më të famshme janë DES dhe IDEA; algoritmi më i mirë asimetrik është RSA. Në Rusi, GOST 28147-89 është miratuar si standardi i kriptimit.

Tabela 1 tregon klasifikimin e mbylljes së informacionit kriptografik.

Tabela 1

Llojet e konvertimit Metodat e konvertimit Varietetet e rrugës Mënyra e zbatimit
Enkriptimi Zëvendësim (zëvendësim) E thjeshtë (me një alfabet) Prog.
Shumë-alfabetike me një rresht të zakonshëm Prog.
Monaural me një rresht shumë-alfabetik Prog.
Prog.
Permutacioni E thjeshtë Prog.
E komplikuar nga tabela Prog.
E ndërlikuar nga rrugët Prog.
Transformimi analitik Sipas rregullave të algjebrës së matricës Prog.
Nga varësi të veçanta Prog.
Gumming Me një diapazon të shkurtër të kufizuar Hardware-Prog.
Me një rreze të gjatë të kufizuar Hardware-Prog.
Me një gamë të pafund Hardware-Prog.
Të kombinuara Zëvendësim + ndërrim Hardware-Prog.
Zëvendësim + çamçakëz Hardware-Prog.
Permutacion + lojëra Hardware-Prog.
Çamçakëz + çamçakëz Hardware-Prog.
Kodimi Semantike Sipas tabelave të veçanta (fjaloreve) Prog.
simbolike Sipas alfabetit të kodit Prog.
Llojet e tjera Shpërthejnë-Shpërthejnë Semantike Hardware-Prog.
Mekanike Prog.
Kompresim-zgjerim

Unë. Nën enkriptimi kuptohet kjo lloj mbylljeje kriptografike, në të cilën çdo karakter i mesazhit të mbrojtur i nënshtrohet transformimit.

Të gjitha metodat e njohura të enkriptimit mund të ndahen në pesë grupe: zëvendësimi (zëvendësimi), ndërrimi, transformimi analitik, gama dhe enkriptimi i kombinuar. Secila prej këtyre metodave mund të jetë e disa varieteteve.

Varietetet e rrugës zëvendësim (zëvendësim ):

1) E thjeshtë (mono-alfabetik) - karakteret e tekstit të koduar zëvendësohen me karaktere të tjera të të njëjtit alfabet. Nëse vëllimi i tekstit shifror është i madh, atëherë frekuencat e shfaqjes së shkronjave në tekstin shifror do të jenë më afër frekuencave të shfaqjes së shkronjave në alfabet (të gjuhës në të cilën është shkruar teksti) dhe dekodimit. do të jetë shumë e thjeshtë. Kjo metodë aktualisht përdoret rrallë dhe në rastet kur teksti i koduar është i shkurtër.

2) Shumë-alfabetike zëvendësimi është lloji më i thjeshtë i transformimeve, i cili konsiston në zëvendësimin e karaktereve të tekstit origjinal me karaktere të alfabeteve të tjera sipas një rregulli pak a shumë kompleks. Për të siguruar forcë të lartë kriptografike, kërkohet përdorimi i çelësave të mëdhenj.

shumëalfabetike një rreshtore e zakonshme zëvendësimi për të zëvendësuar karakteret në tekstin origjinal përdor disa alfabete, dhe alfabeti ndryshohet në mënyrë sekuenciale dhe ciklike, d.m.th. karakteri i parë zëvendësohet me karakterin përkatës të alfabetit të parë, i dyti me karakterin e alfabetit të dytë, e kështu me radhë. derisa të përdoren të gjithë alfabetet e zgjedhura. Pas kësaj, përdorimi i alfabeteve përsëritet.

Veçori monofonik shumëalfabetik me një rresht zëvendësimi është se numri dhe përbërja e alfabeteve zgjidhen në mënyrë që frekuencat e shfaqjes së të gjithë karaktereve në tekstin e shifrimit të jenë të njëjta. Në këtë situatë, kriptanaliza e tekstit të shifruar me ndihmën e përpunimit statistikor të tij bëhet e vështirë. Barazimi i frekuencave të shfaqjes së karaktereve arrihet për faktin se për karakteret e tekstit burimor që shfaqen shpesh, sigurohet një numër më i madh elementësh zëvendësues sesa për ato që ndodhin rrallë.

Shumë-skicë shumë-alfabetike Zëvendësimi konsiston në faktin se për kriptim përdoren disa grupe (konturet) alfabetesh, të cilat përdoren në mënyrë ciklike, dhe çdo kontur në rastin e përgjithshëm ka periudhën e vet individuale të aplikimit. Kjo periudhë llogaritet, si rregull, nga numri i karaktereve, pas kriptimit të të cilave ndryshon skica e alfabeteve.

Mënyra permutacionet - një metodë e pakomplikuar e konvertimit kriptografik. Përdoret, si rregull, në kombinim me metoda të tjera. Kjo metodë konsiston në faktin se karakteret e tekstit të koduar riorganizohen sipas rregullave të caktuara brenda bllokut të koduar të karaktereve. Të gjitha procedurat e kriptimit dhe deshifrimit me metodën e ndërrimit janë mjaftueshëm të formalizuara dhe mund të zbatohen në mënyrë algoritmike.

Kriptimi i thjeshtë i ndërrimit bëhet si më poshtë:

· Përzgjidhet një fjalë kyçe me karaktere që nuk përsëriten;

· Teksti i koduar shkruhet në rreshta të njëpasnjëshëm nën simbolet e fjalës kyçe;

· Teksti i shifrës shkruhet në kolona në rendin në të cilin shkronjat e çelësit janë të vendosura në alfabet (ose sipas renditjes së numrave në rreshtin natyror, nëse është dixhital).

Shembull:

tekst i thjeshtë: KUJDES

çelësi: 5 8 1 3 7 4 6 2

skema e kriptimit:

B U D B T E q O (ku q është një hapësirë)

S T O R O W N S

Gruponi me 2 karaktere dhe merrni tekstin e koduar:

DOOOYREZHBSqNTOUT

Disavantazhi i kriptimit të thjeshtë të ndërrimit është se kur gjatësia e tekstit të koduar është e madhe, teksti i koduar mund të shfaqë modele në simbolet kryesore. Për të eliminuar këtë pengesë, mund ta ndryshoni çelësin pasi të keni koduar një numër të caktuar karakteresh. Me një ndryshim mjaft të shpeshtë të çelësit, fuqia e kriptimit mund të rritet ndjeshëm. Megjithatë, kjo e ndërlikon organizimin e procesit të kriptimit dhe deshifrimit.

Ndërrimi i komplikuar i tabelës qëndron në faktin se për regjistrimin e karaktereve të tekstit të koduar përdoret një tabelë e veçantë, në të cilën futen disa elementë ndërlikues. Tabela është një matricë, dimensionet e së cilës mund të zgjidhen në mënyrë arbitrare. Në të, si në rastin e një ndryshimi të thjeshtë, shkruhen karakteret e tekstit të koduar. Komplikimi është se një numër i caktuar qelizash në tabelë nuk përdoren. Numri dhe vendndodhja e artikujve të papërdorur është një çelës enkriptimi opsional. Teksti i koduar në blloqe prej ( m x nS) elementet shkruhen në tabelë ( m x n - madhësitë e tavolinës, S - numri i elementeve të papërdorura). Më tej, procedura e kriptimit është e ngjashme me një rirregullim të thjeshtë.

Duke ndryshuar madhësinë e tabelës, sekuencën e karaktereve kryesore, numrin dhe vendndodhjen e elementeve të papërdorura, mund të merrni forcën e kërkuar të tekstit të shifrimit.

Rirregullim i ndërlikuar përgjatë rrugëve zotëron një forcë të lartë enkriptimi, përdor një metodë të ndërlikuar permutacionesh përgjatë rrugëve të tipit Hamiltonian. Në këtë rast, kulmet e një hiperkubi të caktuar përdoren për të shkruar karakteret e tekstit shifror, dhe karakteret e tekstit të koduar numërohen përgjatë rrugëve të Hamiltonit dhe përdoren disa rrugë të ndryshme.

Metoda e kriptimit duke përdorur transformimet analitike siguron një mbyllje mjaft të besueshme informacioni. Për ta bërë këtë, ju mund të aplikoni metoda të algjebrës së matricës, për shembull, shumëzimi i një matrice me një vektor. Nëse matrica përdoret si çelës, dhe në vend të komponentit vektor, karakteret e tekstit origjinal zëvendësohen, atëherë përbërësit e vektorit që rezulton do të jenë karaktere të tekstit të shifruar. Deshifrimi kryhet duke përdorur të njëjtin rregull për shumëzimin e një matrice me një vektor, vetëm matrica merret si bazë, e kundërta e asaj me të cilën kryhet mbyllja dhe merret numri përkatës i karaktereve të tekstit të mbyllur. si një vektor faktori. Vlerat e vektorit të rezultateve janë ekuivalentët dixhitalë të karaktereve të tekstit të thjeshtë.

Gumming- kjo metodë konsiston në imponimin në tekstin burimor të një sekuence pseudo të rastësishme të krijuar në bazë të çelësit. Procedura për vendosjen e gamës në tekstin origjinal mund të bëhet në dy mënyra. V mënyra e parë karakteret e tekstit origjinal dhe gamë zëvendësohen nga ekuivalentët dixhitalë, të cilët më pas shtohen modul TE, ku K është numri i karaktereve në alfabet, d.m.th.

t c = (t p + t g) mod K, ku t c, t fq,t g - përkatësisht simbolet e tekstit të shifruar, tekstit burimor dhe gamës.

Në metodën e dytë, simbolet e tekstit origjinal dhe gama përfaqësohen si një kod binar, dhe më pas bitët përkatës shtohen moduli 2. Në vend të shtimit të modulit 2, gama mund të përdorë operacione të tjera logjike, për shembull, transformimin sipas rregullit të barazvlefshmërisë logjike ose joekuivalencës logjike. Ky zëvendësim është i barabartë me futjen e një çelësi tjetër, që është zgjedhja e rregullit për formimin e karaktereve të mesazhit të koduar nga karakteret e tekstit origjinal dhe gama.

Fuqia e kriptimit me metodën e gama përcaktohet kryesisht nga vetitë e gama - gjatësia e periudhës dhe uniformiteti i karakteristikave statistikore. Vetia e fundit siguron që nuk ka modele në shfaqjen e simboleve të ndryshme brenda një periudhe.

Me vetitë e mira statistikore të gamës, forca e kriptimit përcaktohet vetëm nga gjatësia e periudhës së saj. Për më tepër, nëse gjatësia e periudhës gama e kalon gjatësinë e tekstit të koduar, atëherë një shifër e tillë është teorikisht absolutisht e sigurt. Çdo sekuencë e simboleve të rastësishme mund të përdoret si një gamë e pafundme, për shembull, një sekuencë shifrash të numrit PI. Kur kriptoni me një kompjuter, gjenerohet një sekuencë gama duke përdorur një sensor numrash pseudo të rastësishëm.

Metodat e kombinuara të kriptimit përdorni disa metoda të ndryshme në të njëjtën kohë, d.m.th. kriptimi sekuencial i tekstit origjinal duke përdorur dy ose më shumë metoda. Ky është një mjet mjaft efektiv për të rritur fuqinë e kriptimit.

Një shembull tipik i një kodi të kombinuar është standardi kombëtar i SHBA për mbylljen e të dhënave kriptografike (DES).

II. Nën kodimi ky lloj mbylljeje kriptografike kuptohet kur disa elemente të të dhënave të mbrojtura (këto nuk janë domosdoshmërisht karaktere të veçanta) zëvendësohen me kode të parazgjedhura (kombinime numerike, alfabetike, alfanumerike, etj.).

Kjo metodë ka dy shije: kodimin semantik dhe simbolik. Në kodimi semantik elementët e koduar kanë një kuptim të mirëpërcaktuar (fjalë, fjali, grupe fjalish). Në kodimi i karaktereve çdo karakter i mesazhit të mbrojtur është i koduar. Kodimi i karaktereve është në thelb i njëjtë me enkriptimin e zëvendësimit.

Kur përdoren si duhet, kodet janë shumë më të vështira për t'u zbërthyer sesa sistemet e tjera klasike. Ka tre arsye për këtë. Ne fillim, gjatësia e madhe e kodit të përdorur (për enkriptim - disa qindra bit; libri i kodeve - qindra mijëra - një milion bit). Së dyti, kodet heqin tepricën - puna e kriptanalistit bëhet më e vështirë. Së treti, kodet veprojnë në blloqe relativisht të mëdha të tekstit të thjeshtë (fjalë dhe fraza) dhe për këtë arsye fshehin informacione lokale që përndryshe mund të ofrojnë të dhëna të vlefshme për një kriptanalist.

TE disavantazhet kodimi, duhet t'i atribuohet faktit që çelësi nuk përdoret mjaft mirë gjatë kodimit, sepse kur kodoni një fjalë dhe frazë të vetme, përdoret vetëm një pjesë shumë e vogël e librit të kodeve. Si rezultat, kodi nën përdorim të rëndë është i përshtatshëm për analiza të pjesshme dhe është veçanërisht i ndjeshëm ndaj sulmit në prani të një teksti të njohur të thjeshtë. Për këto arsye, kodet duhet të ndryshohen më shpesh për të siguruar besueshmëri më të madhe.

III. metoda të tjera Mbylljet kriptografike përfshijnë diseksionin/shpërthimin dhe kompresimin e të dhënave. Diseksioni/shpërthimi i të dhënave konsiston në faktin se grupi i të dhënave të mbrojtura zbërthehet në elementë të tillë, secila prej të cilave nuk lejon zbulimin e përmbajtjes së informacionit të mbrojtur, dhe elementët e alokuar në këtë mënyrë vendosen në zona të ndryshme memorie. Procedura e kundërt quhet mbledhja e të dhënave. Natyrisht, algoritmi i kërkimit dhe grumbullimit të të dhënave duhet të mbahet sekret.

Kompresimi i të dhënaveështë zëvendësimi i vargjeve ose sekuencave identike të të dhënave që ndodhin shpesh me të njëjtat karaktere me disa karaktere të parazgjedhur.

Funksionet hash

Funksioni hash quhet një funksion i njëanshëm i krijuar për të marrë një përmbledhje ose "gjurmë gishti" të një skedari, mesazhi ose një blloku të dhënash.

Fillimisht, funksionet hash u përdorën si funksione për krijimin e një imazhi unik të sekuencave të informacionit me gjatësi arbitrare, me qëllim identifikimin dhe përcaktimin e autenticitetit të tyre. Vetë imazhi duhet të jetë një pjesë e vogël me gjatësi fikse, zakonisht 30, 60, 64, 128, 256 ose 512 bit. Prandaj, operacionet e kërkimit, renditja dhe të tjerat me vargje ose baza të dhënash të mëdha janë thjeshtuar shumë, d.m.th. marrin shumë më pak kohë. Për të siguruar probabilitetin e kërkuar të gabimit, është e nevojshme të plotësohen një sërë kërkesash për funksionin hash:

· Funksioni hash duhet të jetë i ndjeshëm ndaj të gjitha llojeve të ndryshimeve në tekstin M, të tilla si futjet, pikat e jashtme, permutacionet;

· Funksioni hash duhet të ketë vetinë e pakthyeshmërisë, pra, detyra e zgjedhjes së një dokumenti M ", i cili do të kishte vlerën e kërkuar të funksionit hash, duhet të jetë i pazgjidhshëm nga ana llogaritëse;

· Probabiliteti që vlerat e funksioneve hash të dy dokumenteve të ndryshëm (pavarësisht gjatësisë së tyre) të përkojnë duhet të jetë i papërfillshëm.

Një numër i madh i funksioneve ekzistuese matematikore mund t'i sigurojë këto kërkesa. Nëse këto funksione përdoren për renditje, kërkim, etj. Sidoqoftë, më vonë, bazuar në punën e Simonson mbi teorinë e vërtetimit, u bë e qartë se këshillohet përdorimi i metodave hashing në skemat e vërtetimit të mesazheve në kanalet e komunikimit dhe sistemet e telekomunikacionit. Në lidhje me këtë, janë hapur një sërë drejtimesh në kërkime në fushën e kriptografisë, të cilat shoqërohen me zhvillimin e funksioneve të reja dhe përmirësimin e funksioneve ekzistuese hash. Ideja kryesore e përdorimit të funksioneve hash është të përftohen funksione njëkahëshe mbi bazën e tyre, të cilat janë produkti kryesor për zhvillimin e mekanizmave modernë kriptografikë dhe metodave të vërtetimit.
Le të shqyrtojmë konceptet bazë që lidhen me funksionet e hashimit në një drejtim.

Shumica e funksioneve hash janë ndërtuar nga një funksion njëkahësh f (), e cila formon një vlerë dalëse të gjatësisë n kur specifikoni dy vlera hyrëse me gjatësi n... Këto hyrje janë blloku i burimit Mi dhe vlera hash Përshëndetje - 1 blloku i mëparshëm i tekstit (fig. 1):

Hi = f (Mi, Hi – 1).

Vlera hash e llogaritur kur futni bllokun e fundit të tekstit bëhet vlera hash e të gjithë mesazhit M.

Fig. 1. Diagrami i funksionit hash me një drejtim

Si rezultat, një funksion hash me një drejtim prodhon gjithmonë një dalje me një gjatësi fikse n (pavarësisht nga gjatësia e tekstit hyrës). Algoritmi i hashimit është iterativ, prandaj funksionet e hashimit quhen edhe algoritme iterative. Thelbi i algoritmit hash qëndron në njëanshmërinë e tij, d.m.th. funksioni duhet të funksionojë në një drejtim - shtrydh, përzihet dhe shpërndahet, por kurrë mos të rindërtohet. Skema të tilla bëjnë të mundur gjurmimin e ndryshimeve në tekstet burimore, që është për të siguruar integritetin e të dhënave, dhe në algoritmet e nënshkrimit dixhital gjithashtu për të siguruar vërtetësinë e të dhënave. Megjithatë, në formë të pastër, këto funksione nuk mund të verifikohen.

Në disa burime, steganografia, kodimi dhe ngjeshja e informacionit i përkasin degëve të njohurive ngjitur, por jo të përfshira në kriptografinë.

Metodat tradicionale (klasike) të kriptimit përfshijnë shifrat e ndërrimit, shifrat zëvendësuese të thjeshta dhe komplekse, si dhe disa nga modifikimet dhe kombinimet e tyre. Kombinimet e shifrave të ndërrimit dhe shifrave zëvendësuese formojnë të gjithë shumëllojshmërinë e shifrave simetrike të përdorura në praktikë.

Shifrat e ndërrimit. Në enkriptimin e ndërrimit, karakteret e tekstit të koduar riorganizohen sipas një rregulli specifik brenda bllokut të këtij teksti. Shifrat e ndërrimit janë shifrat më të thjeshta dhe ndoshta më të lashta.

Tabelat e enkriptimit. Si çelës në tabelat e kriptimit përdoren: madhësia e tabelës, fjala ose fraza që specifikon ndërrimin, veçoritë e strukturës së tabelës.

Një nga shifrat më primitive të ndryshimit të tabelës është një ndërrim i thjeshtë, për të cilin madhësia e tabelës është çelësi. Natyrisht, dërguesi dhe marrësi i mesazhit duhet të bien dakord paraprakisht për një çelës të përbashkët në formën e një madhësie tabele. Duhet të theksohet se kombinimi i shkronjave të tekstit shifror në grupe me 8 shkronja nuk përfshihet në çelësin e shifrimit dhe kryhet për lehtësinë e shkrimit të tekstit të pakuptimtë. Gjatë deshifrimit, veprimet kryhen në rend të kundërt.


Metoda e enkriptimit e quajtur ndërrimi i çelësit të vetëm është disi më rezistente ndaj zbulimit. Kjo metodë ndryshon nga ajo e mëparshme në atë që kolonat e tabelës janë riorganizuar nga një fjalë kyçe, frazë ose një grup numrash sa një rresht i tabelës.

Për më shumë sekret, mund të rikriptoni një mesazh që tashmë është i koduar. Kjo metodë e enkriptimit quhet permutacion i dyfishtë. Në rastin e një ndërrimi të dyfishtë të kolonave dhe rreshtave të tabelës, permutacionet përcaktohen veçmas për kolonat dhe për rreshtat. Së pari, teksti i mesazhit shkruhet në tabelë kolonë për kolonë, dhe më pas riorganizohen kolonat, dhe më pas rreshtat.

Numri i opsioneve të ndërrimit të dyfishtë rritet me shpejtësi me një rritje në madhësinë e tabelës: për një tabelë 3 × 3 - 36 opsione, për një tabelë 4 × 4 - 576 opsione, për një tabelë 5 × 5 - 14,400 opsione. Megjithatë, ndërrimi i dyfishtë nuk është shumë i fortë dhe është relativisht i lehtë për t'u "plasur" për çdo madhësi të tabelës së enkriptimit.

Shifra të thjeshta zëvendësuese. Kur kriptohet me zëvendësim (zëvendësim), karakteret e tekstit të shifruar zëvendësohen me karaktere të të njëjtit ose të një alfabeti të ndryshëm me një rregull të paracaktuar zëvendësimi. Në një shifër të thjeshtë zëvendësimi, çdo karakter i tekstit origjinal zëvendësohet me karaktere të të njëjtit alfabet, një rregull në të gjithë tekstin. Shifrat e thjeshta të zëvendësimit shpesh referohen si shifra zëvendësuese mono-alfabetike.

Sistemi i enkriptimit të Cezarit . Shifra e Cezarit është një rast i veçantë i një shifre të thjeshtë zëvendësimi (zëvendësimi me një alfabet). Ky shifër mori emrin e tij nga emri i perandorit romak Gaius Julius Caesar, i cili e përdori këtë shifër në korrespondencë.

Gjatë kriptimit të tekstit origjinal, çdo shkronjë zëvendësohej me një shkronjë tjetër të të njëjtit alfabet sipas rregullit të mëposhtëm. Shkronja e zëvendësimit u përcaktua me zhvendosje alfabetike m nga letra origjinale në k letra. Kur u arrit fundi i alfabetit, u krye një kalim ciklik në fillimin e tij. Cezari përdori alfabetin latin m= 26 dhe shifra zëvendësuese në kompensim k= 3. Një shifër zëvendësuese e tillë mund të specifikohet nga një tabelë zëvendësimi që përmban çiftet përkatëse të shkronjave të tekstit të thjeshtë dhe të tekstit shifror. Seti i zëvendësimeve të mundshme për k= 3 është paraqitur në tabelën 6.1.

Tabela 6.1 - Zëvendësimet me një alfabetik (k = 3, m = 26)

Sistemi i enkriptimit të Cezarit në thelb formon një familje zëvendësimesh me një alfabetik për vlerat kryesore të përzgjedhshme k, dhe 0 £ k < m... Avantazhi i sistemit të enkriptimit Caesar është thjeshtësia e kriptimit dhe deshifrimit.

Disavantazhet e sistemit Cezar përfshijnë si më poshtë:

Zëvendësimet e kryera sipas sistemit të Cezarit nuk maskojnë frekuencat e shkronjave të ndryshme në tekstin origjinal;

Rendi alfabetik ruhet në rendin e shkronjave zëvendësuese; kur vlera e k ndryshon, vetëm pozicionet fillestare të një sekuence të tillë ndryshojnë;

Numri i çelësave të mundshëm k është i vogël;

Shifra e Cezarit zbulohet lehtësisht bazuar në analizën e frekuencave të shfaqjes së shkronjave në tekstin shifror.

Një sulm kriptoanalitik kundër një sistemi zëvendësimi mono-alfabetik fillon duke numëruar frekuencat e shfaqjes së karaktereve: përcaktohet numri i shfaqjeve të secilës shkronjë në tekstin e koduar. Pastaj shpërndarja e fituar e frekuencave të shkronjave në tekstin shifror krahasohet me shpërndarjen e frekuencave të shkronjave në alfabetin e mesazheve origjinale. Shkronja me frekuencën më të madhe të paraqitjes në tekstin e shifruar zëvendësohet me shkronjën me frekuencën më të madhe të paraqitjes në alfabet, etj. Probabiliteti për një hapje të suksesshme të sistemit të enkriptimit rritet me gjatësinë e tekstit të shifruar. Në të njëjtën kohë, idetë e natyrshme në sistemin e enkriptimit të Cezarit doli të ishin shumë të frytshme, siç dëshmohet nga modifikimet e tyre të shumta.

Sistemi i zëvendësimit të afinave të Cezarit. Në këtë transformim, shkronja që korrespondon me numrin t, zëvendësohet me shkronjën që korrespondon me vlerën numerike ( + b) modul m... Një transformim i tillë është një hartë një-për-një në alfabet nëse dhe vetëm nëse GCD ( a, m) - pjesëtuesi më i madh i përbashkët i numrave a dhe m është i barabartë me një, d.m.th. nëse a dhe m janë numra të dyfishtë.

Avantazhi i sistemit affine është menaxhimi i përshtatshëm i çelësave: çelësat e enkriptimit dhe deshifrimit paraqiten në një formë kompakte si një palë numrash ( a, b). Disavantazhet e sistemit afine janë të ngjashme me ato të sistemit të enkriptimit të Cezarit. Në praktikë, sistemi afine është përdorur disa shekuj më parë.

Shifra zëvendësuese komplekse . Shifrat komplekse të zëvendësimit quhen shumë-alfabetike, pasi kodi i tyre i thjeshtë zëvendësues përdoret për të enkriptuar çdo karakter të mesazhit origjinal. Zëvendësimi shumë-alfabetik ndryshon në mënyrë sekuenciale dhe ciklike alfabetet e përdorura. Në r- karakteri i zëvendësimit alfabetik x 0 e mesazhit origjinal është zëvendësuar nga y 0 nga alfabeti B 0, karakter x 1 - simbol y 1 nga alfabeti B 1, etj.; simbol x r-1 zëvendësohet nga karakteri y r-1 nga alfabeti B r-1, karakter x r zëvendësohet me simbolin y r përsëri nga alfabeti B 0, etj.

Efekti i përdorimit të zëvendësimit shumë-alfabetik është se ai siguron një maskim të statistikave natyrore të gjuhës burimore, pasi një karakter specifik nga alfabeti burimor A mund të konvertohet në disa karaktere të ndryshme të alfabeteve të shifruara B j... Shkalla e mbrojtjes së ofruar është teorikisht proporcionale me kohëzgjatjen e periudhës r në sekuencën e alfabeteve të përdorura B j.

Sistemi Kriptimi Viginera . Sistemi i Viginer është i ngjashëm me atë të sistemit të enkriptimit të Cezarit, në të cilin çelësi i zëvendësimit ndryshon nga shkronja në shkronjë. Ky shifër zëvendësimi poli-alfabetik mund të përshkruhet nga një tabelë enkriptimi e quajtur tabela Viginer (katrore). Tabela Viginer përdoret si për enkriptim ashtu edhe për deshifrim.

Ka dy hyrje:

Rreshti i sipërm i karaktereve të nënvizuara përdoret për të lexuar shkronjën tjetër të tekstit origjinal;

Kolona më e majtë e çelësit.

Sekuenca e çelësave zakonisht merret nga vlerat numerike të shkronjave të fjalës kyçe. Kur kodoni mesazhin origjinal, ai shkruhet në një varg dhe një fjalë kyçe (ose frazë) ​​shkruhet nën të.

Nëse çelësi është më i shkurtër se mesazhi, atëherë ai përsëritet në mënyrë ciklike. Në procesin e kriptimit, shkronja tjetër e tekstit burim gjendet në rreshtin e sipërm të tabelës dhe vlera tjetër e çelësit në kolonën e majtë. Shkronja tjetër e tekstit të shifruar ndodhet në kryqëzimin e kolonës së përcaktuar nga shkronja që kodohet dhe rreshti i përcaktuar nga vlera numerike e çelësit.

Shifra një herë. Pothuajse të gjitha shifrat e përdorura në praktikë karakterizohen si të besueshme me kusht, pasi ato, në parim, mund të prishen me aftësi të pakufizuara llogaritëse. Shifrat absolutisht të forta nuk mund të thyhen, madje edhe me fuqi të pakufizuar llogaritëse. Ekziston vetëm një shifër e tillë në praktikë - një sistem enkriptimi një herë. Një tipar karakteristik i një sistemi të enkriptimit një herë është përdorimi një herë i një sekuence kyçe.

Ky shifër është absolutisht i besueshëm nëse grupi i çelësave K i vërtet e rastësishme dhe e paparashikueshme. Nëse një kriptanalist përpiqet të përdorë të gjitha grupet e mundshme të çelësave për një tekst të caktuar shifror dhe të rivendosë të gjitha variantet e mundshme të tekstit origjinal, atëherë të gjithë do të rezultojnë të jenë po aq të mundshëm. Nuk ka asnjë mënyrë për të zgjedhur tekstin origjinal që është dërguar në të vërtetë. Është vërtetuar teorikisht se sistemet e njëhershme janë sisteme jo të deshifruara, pasi teksti i tyre i koduar nuk përmban informacion të mjaftueshëm për të rikuperuar tekstin e thjeshtë.

Përdorimi i sistemit të disponueshëm është i kufizuar në aspekte thjesht praktike. Pika thelbësore është kërkesa për një përdorim një herë të një sekuence kyçe të rastësishme. Sekuenca kryesore me një gjatësi jo më të vogël se gjatësia e mesazhit duhet t'i transmetohet marrësit të mesazhit paraprakisht ose veçmas nëpërmjet ndonjë kanali sekret. Një kërkesë e tillë është praktikisht e vështirë për t'u zbatuar për sistemet moderne të përpunimit të informacionit, ku kërkohet të kriptohet shumë miliona karaktere, por në raste të justifikuara, ndërtimi i sistemeve me shifra të njëhershme është më i përshtatshmi.

Historikisht dallohen gërshetat me peshore të jashtme dhe të brendshme. Në enkriptorët me një gamë të jashtme, një sekuencë e rastësishme me përdorim të vetëm përdoret si çelës, gjatësia e së cilës është e barabartë me gjatësinë e mesazhit të koduar. Në enkriptorët me një gamë të brendshme, një sekuencë e rastësishme e ripërdorshme me një gjatësi shumë më të vogël se gjatësia e tekstit të koduar përdoret si çelës, në bazë të të cilit formohet gama e shifrës. Scramblers me një shkallë të brendshme, d.m.th., që zotërojnë vetinë e stabilitetit praktik, janë aktualisht të përhapur në ndërtimin e sistemeve të komunikimit të koduar. Avantazhi i tyre kryesor është thjeshtësia në menaxhimin e çelësave, d.m.th., përgatitja, shpërndarja, shpërndarja dhe shkatërrimi i tyre. Ky avantazh bën të mundur krijimin e sistemeve të komunikimit të koduar të pothuajse çdo madhësie në bazë të koduesve me gamë të brendshme, pa kufizuar gjeografinë e tyre dhe numrin e pajtimtarëve.

Zhvillimi modern i teknologjive të informacionit bën të mundur përqendrimin e një sasie të konsiderueshme informacioni në media të vogla fizike, gjë që përcakton gjithashtu zbatueshmërinë praktike të kësaj qasjeje.

Problemi i ndërtimit të një sistemi komunikimi të koduar të bazuar në enkriptues me një gamë të jashtme mund të ketë disa qasje për zgjidhjen e tij. Për shembull, bazuar në vlerën kufitare të vendosur të vëllimit të dokumentit kryesor, përcaktohet numri optimal i pajtimtarëve të sistemit dhe ngarkesa e lejueshme. Nga ana tjetër, është e mundur, bazuar në numrin e kërkuar të abonentëve dhe ngarkesën mbi ta, të llogaritet vëllimi i kërkuar i dokumentit kyç.

Metoda e kriptimit lojërat e fatit . Gama kuptohet si procesi i imponimit të një shifrimi sipas një ligji të caktuar gama mbi të dhënat e hapura. Një gama shifrore është një sekuencë pseudo e rastësishme e krijuar sipas një algoritmi të caktuar për enkriptimin e të dhënave të hapura dhe deshifrimin e të dhënave të marra.

Procesi i enkriptimit konsiston në gjenerimin e një game të shifrimit dhe aplikimin e gamës që rezulton në tekstin origjinal origjinal në një mënyrë të kthyeshme, për shembull, duke përdorur modulin 2 të operacionit të mbledhjes.

Përpara kriptimit, të dhënat e hapura ndahen në blloqe me gjatësi të barabartë, zakonisht 64 bit secili. Gama e shifrës krijohet si një sekuencë me të njëjtën gjatësi. Procesi i deshifrimit reduktohet në rigjenerimin e gamës së shifrës dhe mbivendosjen e kësaj game mbi të dhënat e marra.

Teksti i shifruar i marrë me këtë metodë është mjaft i vështirë për t'u zgjeruar, pasi çelësi tani është i ndryshueshëm. Në fakt, gama e shifrës duhet të ndryshohet rastësisht për çdo bllok të koduar. Nëse periudha e gama tejkalon gjatësinë e të gjithë tekstit të koduar dhe sulmuesi nuk njeh asnjë pjesë të tekstit origjinal, atëherë një shifër e tillë mund të zbulohet vetëm me numërimin e drejtpërdrejtë të të gjitha varianteve kryesore. Në këtë rast, forca kriptografike e shifrës përcaktohet nga gjatësia e çelësit.

Artikujt kryesorë të lidhur