Algoritmi šifriranja podataka. Metode šifriranja podataka - Blog web programera Primjena algoritama šifriranja

Državni standard šifriranja u Rusiji je algoritam registriran kao GOST 28147-89. To je blok šifra, odnosno šifrira ne pojedinačne znakove, već 64-bitne blokove. Algoritam pruža 32 ciklusa konverzije podataka sa 256-bitnim ključem, zbog čega je vrlo pouzdan (ima visoku kriptografsku snagu). Na modernim računarima, razbijanje ove šifre napadom grube sile trajalo bi najmanje stotine godina, čineći takav napad besmislenim. Sjedinjene Države koriste sličnu AES blok šifru.

RSA algoritam je popularan na Internetu, nazvan po početnim slovima imena njegovih autora - R.Rivest, A.Shamir i L.Adleman. Ovo je algoritam javnog ključa čija je snaga zasnovana na korištenju svojstava prostih brojeva. Da biste ga razbili, morate rastaviti vrlo veliki broj na osnovne faktore. Ovaj problem se sada može riješiti samo nabrajanjem opcija. Budući da je broj opcija ogroman, potrebno je mnogo godina modernih kompjutera da se riješi šifra.

Za primjenu algoritmaRSA je potrebna za izradu javnih i privatnih ključeva na sljedeći način.

1. Odaberite dva velika prosta broja, p i q.
2. Pronađite njihov proizvod n = p * q i vrijednost f = (p - 1) (q - 1)
3. Odaberite broj e (1< e < k), которое не имеет общих делителей с f.
4. Pronađite broj d koji zadovoljava uvjet d e = k f + 1 za neki cijeli broj k
5. Par vrijednosti (e, n) je RSA javni ključ (može se slobodno objaviti), a par vrijednosti (d, n) je privatni ključ.

Poslana poruka se prvo mora predstaviti kao niz brojeva u rasponu od 0 do n - 1. Za šifriranje se koristi formula y = x e mod n, gdje je x broj originalne poruke, (e, n ) je javni ključ, y je broj kodirane poruke, a oznaka x e mod n označava ostatak dijeljenja x sa n. Poruka se dešifruje pomoću formule x = y d mod n.
To znači da svako može šifrirati poruku (javni ključ je javno poznat), a samo oni koji znaju tajni eksponent d mogu je pročitati.
Radi boljeg razumijevanja, prikazat ćemo rad RSA algoritma jednostavnim primjerom.
PRIMJER: Uzmimo p = 3 i q = 7, tada nalazimo n = p q = 21 i f = (p - 1) (q - 1) = 12. Biramo e = 5, a zatim jednakost d e = kf + 1 vrijedi, na primjer, za d = 17 (i k = 7). Tako smo dobili javni ključ (5, 21) i tajni ključ (17, 21).

Šifrujmo poruku "123" javnim ključem (5.21). Dobijamo

1 1 5 mod 21 = 1 ,
2 2 5 mod21 = 11 ,

3 → 3 5 mod 21 = 12,
to jest, šifrovana poruka se sastoji od brojeva 1 ,11 i 12. Poznavajući tajni ključ (17, 21), možemo ga dešifrirati:

1 → 1 17 mod 21 = 1 ,

11 → 11 17 mod 21 = 2 ,
12 → 12 17 mod 21 = 3 .

Primili smo originalnu poruku.

Naravno, primijetili ste da kada šifrirate i dešifrujete, morate izračunati ostatak dijeljenja vrlo velikih brojeva (na primjer, 12 17) sa n. Ispada da sam broj 12 17 u ovom slučaju ne treba pronaći. Dovoljno je upisati jedinicu u običnu cjelobrojnu varijablu, na primjer x, a zatim izvršiti transformaciju x = 12*x mod 21 17 puta. Nakon toga varijabla x će imati vrijednost 12 17 mod 21 = 3. Pokušajte dokazati ispravnost ovog algoritma.
Da biste dešifrovali poruku, morate znati tajni eksponent d. A za ovo, zauzvrat, morate pronaći faktore p i q, tako da je n = p q. Ako je n veliko, ovo je veoma težak problem i biće potrebne stotine godina da se reši iscrpnim pretraživanjem opcija na modernom računaru. Grupa naučnika iz različitih zemalja je 2009. godine, kao rezultat višemjesečnih proračuna na stotinama kompjutera, uspjela dešifrirati poruku šifrovanu RSA algoritmom sa 768-bitnim ključem. Stoga se ključevi dužine od 1024 bita ili više sada smatraju pouzdanim. Ako se izgradi kvantni kompjuter koji radi, razbijanje RSA algoritma će biti moguće za vrlo kratko vrijeme.
Kada se koriste simetrične šifre, uvijek se javlja problem: kako prenijeti ključ ako je komunikacijski kanal nepouzdan? Uostalom, primivši ključ, neprijatelj će moći dešifrirati sve daljnje poruke. Za RSA algoritam ovaj problem ne postoji, dovoljno je da strane razmijene javne ključeve koji se mogu pokazati svima.
RSA algoritam ima još jednu prednost: može se koristiti za digitalno potpisivanje poruka. Služi za dokazivanje autorstva dokumenata, zaštitu poruka od krivotvorenja i namjernih promjena.

Digitalni potpis je skup karaktera koji se dobija šifrovanjem poruke korišćenjem lične tajne šifre pošiljaoca.

Pošiljalac može uz originalnu poruku poslati istu poruku šifriranu njegovim privatnim ključem (ovo je digitalni potpis). Primalac dešifruje digitalni potpis koristeći javni ključ. Ako odgovara nešifriranoj poruci, možete biti sigurni da ju je poslala osoba koja zna tajni kod. Ako je poruka izmijenjena u prijenosu, neće odgovarati dešifrovanom digitalnom potpisu. S obzirom da poruka može biti jako duga, kako bi se smanjila količina prenesenih podataka, najčešće se ne šifrira cijela poruka, već samo njen hash kod.
Mnogi moderni programi imaju mogućnost šifriranja podataka lozinkom. Na primjer, uredski apartmani openoffice.org i Microsoft office omogućavaju šifriranje svih kreiranih dokumenata (za pregled i/ili promjenu potrebno je unijeti lozinku). Prilikom kreiranja arhive (na primjer, u arhivima 7Zip, WinRAR, WinZip) možete postaviti i lozinku bez koje je nemoguće izdvojiti datoteke.
U najjednostavnijim zadacima možete koristiti besplatni program za šifriranje datoteka. kriptograf(http://www.familytree.ru/ru/cipher.htm), čije verzije postoje za linux i Windows. Programi TnieCrypt(http://www.truecrypt.org/), BestCrypt(www.jetico.com) i FreeOTFE(freeotfe.org) kreirati logičke kontejnerske diskove, informacije na kojima su šifrirane. Besplatni softver DiskCrypto r (diskcryptor.net) vam omogućava šifriranje particija tvrdog diska, pa čak i kreiranje šifriranih fleš diskova i CD/DVD-ova.
Program GnuPG(gnupg.org) je takođe besplatan softver. Podržava simetrične i asimetrične šifre, kao i različite algoritme digitalnog potpisa.

Steganografija

YouTube video

Prilikom slanja poruka ne možete koristiti samo enkripciju, već i sakriti samu činjenicu slanja poruke.


Steganografija je nauka o tajnom prenošenju informacija skrivanjem same činjenice prenošenja informacija.

Drevni grčki istoričar Herodot opisao je, na primjer, takav metod: poruka je bila ispisana na obrijanoj glavi roba, a kada mu je kosa porasla, on je otišao do primaoca, koji je obrijao glavu i pročitao poruku.
Klasična metoda steganografije je simpatično (nevidljivo) mastilo, koje se pojavljuje samo pod određenim uslovima (toplota, osvetljenje, hemijski razvijač). Na primjer, tekst napisan mlijekom može se pročitati kada se zagrije.
Sada se steganografija bavi skrivanjem informacija u tekstualnim, grafičkim, zvučnim i video datotekama programskim „ubrizgavanjem“ potrebnih poruka u njih.
Najjednostavniji način je zamijeniti niže bitove datoteke u kojoj je slika kodirana. Štoviše, to se mora učiniti na takav način da razlika između originalnih i rezultirajućih crteža bude neprimjetna za osobu. Na primjer, ako je na crno-bijeloj slici (256 nijansi sive), svjetlina svakog piksela je kodirana u 8 bita. Ako promijenite najmanje značajna 1-2 bita ovog koda, "ugrađujući" tekstualnu poruku tamo, fotografija koja nema jasne granice teško da će se promijeniti. Prilikom zamjene 1 bita, svaki bajt originalne tekstualne poruke se pohranjuje u najmanjim bitovima od 8 piksela kodova. Na primjer, recimo da prvih 8 piksela slike imaju sljedeće kodove:

10101101

10010100

00101010

01010010

10101010

10101010

10101011

10101111

Da biste kodirali kod slova "I" (110010002) u njima, morate promijeniti niže bitove kodova:

1010110 1

1001010 1

0010101 0

0101001 0

1010101 1

1010101 0

1010101 0

1010111 0

Primalac treba da uzme ove niže bitove i "sastavi" ih zajedno u jedan bajt.
Za zvukove se koriste druge metode steganografije, zasnovane na dodavanju kratkih uslovnih signala na snimku, koji označavaju 1 i 0 i ne percipiraju se.
uzeti

osoba po sluhu. Također je moguće zamijeniti jedan dio zvuka drugim.
Digitalni vodeni žigovi se koriste za potvrdu autorstva i zaštite autorskih prava za slike, video i zvučne datoteke - informacije o autoru ugrađene u fajl. Ime su dobili po starim vodenim žigovima na novcu i dokumentima. Da bi se utvrdilo autorstvo fotografije, dovoljno je dešifrirati skrivene podatke snimljene vodenim žigom.
Ponekad su digitalni vodeni žigovi vidljivi (tekst ili logo kompanije na fotografiji ili na svakom kadru videa). Mnoge web stranice koje prodaju digitalne fotografije imaju vidljive vodene žigove na fotografijama za pregled.


Test pitanja:
  1. Koji je algoritam šifriranja usvojen u Rusiji kao državni standard?
  2. Šta je algoritam blok šifriranja?
  3. Koji tip algoritma je RSA? Na čemu se zasniva njegova kriptografska snaga?
  4. Šta je digitalni potpis?
  5. Kako se RSA algoritam može koristiti za digitalni potpis?
  6. Šta je steganografija?
  7. Koje su metode steganografije postojale prije pronalaska kompjutera?
  8. Kako mogu dodati tekst kodiranoj slici?
  9. Na čemu se zasnivaju metode steganografije za zvučne i video podatke?
  10. Šta su digitalni vodeni žigovi? Zašto se koriste?

vježba:

1. Pogledajte materijal predavanja i odgovorite na kontrolna pitanja.
2. Pratite linkove i upoznajte se sa programima za šifrovanje fajlova.
3. Šifrirajte bilo koji dokument u bilo kojem od uredskih paketa openoffice.org ili Microsoft office i pošalji mi .

Među različitim metodama šifriranja, mogu se razlikovati sljedeće glavne metode:

Algoritmi zamjene ili zamjene - znakovi izvornog teksta zamjenjuju se znakovima drugog (ili istog) alfabeta u skladu sa unaprijed određenom šemom, koja će biti ključ ove šifre. Zasebno, ova metoda se praktično ne koristi u modernim kriptosistemima zbog izuzetno niske kriptografske snage.

Algoritmi permutacije - znakovi originalnog teksta se zamjenjuju prema određenom principu, a to je tajni ključ. Sam algoritam permutacije ima nisku kriptografsku snagu, ali je uključen kao element u mnoge moderne kriptosisteme.

Gama algoritmi - znakovi izvornog teksta se dodaju znakovima nekog slučajnog niza. Najčešći primjer je enkripcija datoteka "username.pwl", u kojoj operativni sistem Microsoft Windows 95 pohranjuje lozinke za mrežne resurse datog korisnika (lozinke za prijavu na NT servere, lozinke za DialUp pristup Internetu, itd. .). Kada korisnik unese svoju lozinku za prijavu na Windows 95, on generiše gama (uvijek istu) koristeći RC4 algoritam šifriranja, koji se koristi za šifriranje mrežnih lozinki. Jednostavnost odabira lozinke je u ovom slučaju zbog činjenice da Windows uvijek preferira isti raspon.

Algoritmi zasnovani na složenim matematičkim transformacijama izvornog teksta prema nekoj formuli. Mnogi od njih koriste neriješene matematičke probleme. Na primjer, RSA enkripcijski algoritam koji se široko koristi na Internetu zasniva se na svojstvima prostih brojeva.

Kombinovane metode. Sekvencijalno šifriranje originalnog teksta korištenjem dva ili više metoda.

Algoritmi šifriranja

Pogledajmo bliže metode kriptografske zaštite podataka

1. Algoritmi zamjene (supstitucije).

2. Algoritam permutacije

3. Gama algoritam

4. Algoritmi zasnovani na složenim matematičkim transformacijama

5. Kombinirane metode šifriranja

Algoritmi 1-4 u svom "čistom obliku" korišteni su ranije, a danas su ugrađeni u gotovo svaki, čak i najsloženiji program za šifriranje. Svaka od razmatranih metoda implementira svoj način kriptografske zaštite informacija i ima svoje prednosti i nedostatke, ali im je zajedničko najvažniji karakteristika je izdržljivost. Ovo se podrazumijeva kao minimalna količina šifriranog teksta, čija statistička analiza može otkriti originalni tekst. Dakle, jačinom šifre je moguće odrediti maksimalnu dozvoljenu količinu informacija šifrovanih jednim ključem. Prilikom odabira kriptografskog algoritma za korištenje u određenom razvoju, njegova snaga je jedan od odlučujućih faktora.

Svi savremeni kriptosistemi su dizajnirani tako da ne postoji način da se razbiju na efikasniji način od iscrpne pretrage po čitavom ključnom prostoru, tj. preko svih mogućih vrednosti ključeva. Jasno je da je snaga takvih šifri određena veličinom ključa koji se u njima koristi.

Dat ću procjenu jačine metoda šifriranja o kojima smo gore govorili. Monoalfabetska zamjena je najmanje sigurna šifra, jer njena upotreba čuva sve statističke obrasce originalnog teksta. Već s dužinom od 20-30 znakova, ovi obrasci se manifestiraju u tolikoj mjeri da vam u pravilu omogućavaju otvaranje izvornog teksta. Stoga se takvo šifriranje smatra pogodnim samo za zatvaranje lozinki, kratkih signalnih poruka i pojedinačnih znakova.

Jačina jednostavne polialfabetske zamjene (od sličnih sistema razmatrana je supstitucija prema Vigenereovoj tabeli) procjenjuje se na 20n, gdje je n broj različitih abeceda korištenih za zamjenu. Kada koristite Vigenereovu tablicu, broj različitih abeceda je određen brojem slova u ključnoj riječi. Komplikacija polialfabetske zamjene značajno povećava njenu trajnost.

Stabilnost igre na sreću je jedinstveno određena dugim periodom gamuta. Trenutno, korištenje beskonačnog raspona postaje stvarnost, pri korištenju koje će teoretski biti beskonačna i snaga šifroteksta.

Može se primijetiti da su gamiranje i komplicirane permutacije i zamjene najpogodnije za pouzdano zatvaranje velikih nizova informacija.

Kada se koriste kombinirane metode šifriranja, snaga šifre je jednaka proizvodu snaga pojedinačnih metoda. Stoga je kombinirana enkripcija najsigurniji metod kriptografskog zatvaranja. Upravo je ova metoda bila osnova za rad svih trenutno poznatih uređaja za šifriranje.

DES algoritam je odobren prije više od 20 godina, ali za to vrijeme kompjuteri su napravili nevjerovatan skok u brzini računanja, i sada nije tako teško razbiti ovaj algoritam iscrpnim nabrajanjem svih mogućih ključnih opcija (a DES koristi samo 8 bajtova), što se nedavno činilo potpuno nemogućim.

GOST 28147-89 razvile su tajne službe Sovjetskog Saveza, a on je samo 10 godina mlađi od DES-a; tokom razvoja, u njega je ugrađena takva granica sigurnosti da je ovaj GOST još uvijek relevantan.

Razmatrane vrijednosti snage šifre su potencijalne vrijednosti. Mogu se implementirati uz striktno poštovanje pravila za korištenje alata za kriptografsku zaštitu. Glavna od ovih pravila su: čuvanje ključeva u tajnosti, izbjegavanje dupliciranja (tj. ponovno šifriranje istog dijela teksta pomoću istih ključeva) i često mijenjanje ključeva.

Zaključak

Dakle, u ovom radu je napravljen pregled trenutno najčešćih metoda kriptografske zaštite informacija i metoda za njihovu implementaciju. Izbor specifičnih sistema treba da se zasniva na dubokoj analizi snaga i slabosti određenih metoda zaštite. Razuman izbor jednog ili drugog sistema zaštite, generalno, treba da se zasniva na nekim kriterijumima efikasnosti. Nažalost, još uvijek nisu razvijene odgovarajuće metode za procjenu efikasnosti kriptografskih sistema.

Najjednostavniji kriterijum za takvu efikasnost je verovatnoća otkrivanja ključa ili kardinalnost skupa ključeva (M). U suštini, ovo je isto što i kriptografska snaga. Za njegovu numeričku procjenu može se koristiti i složenost dešifriranja šifre nabrajanjem svih ključeva. Međutim, ovaj kriterij ne uzima u obzir druge važne zahtjeve za kriptosisteme:

nemogućnost otkrivanja ili smislene modifikacije informacija na osnovu analize njihove strukture,

savršenstvo korištenih sigurnosnih protokola,

minimalna količina korištenih ključnih informacija,

minimalna složenost implementacije (u broju operacija mašine), njen trošak,

visoka efikasnost.

Stoga je poželjno, naravno, koristiti neke integralne indikatore koji uzimaju u obzir ove faktore. Ali u svakom slučaju, odabrani skup kriptografskih metoda treba da kombinuje kako pogodnost, fleksibilnost i efikasnost korišćenja, tako i pouzdanu zaštitu od uljeza informacija koje kruže u sistemu.


Praktični dio:

Vježba 1.

1) Popunite X polje izvršavanjem

1.1 Ručno postavite prvu vrijednost

1.2 Pokrenite Edit->Fill->

2) Popunite polje vrijednosti funkcije g =

Sl.1.1 - Formula funkcije g (x)

2.1) Izračunajte vrijednosti funkcija

3) Grafikovanje

3.1) Odaberite ćelije sa vrijednostima funkcija g

3.2) Odaberite master grafikona

Sl.1.2 - Čarobnjak za grafikone - Grafikon

Sljedeće ->Red

Sl.1.3 - Čarobnjak za grafikone - oznaka osi

Isticanje vrijednosti osi X

Pritisnite Enter (enter)

3.3) Imenovanje grafikona

3.4) Odaberite ćeliju sa formulom grafikona

3.6) Odaberite karticu -> Mrežne linije, postavite

X međulinije, Y glavne linije ->Sljedeće

3.7) Grafikon funkcije postavljamo na postojeći list -> (Gotovo)

4) Kao rezultat, dobijamo (Sl.1.4)

Slika 1.4 - Grafikon funkcije g (x)

1.2.

1) Definirajte funkcije budućih grafikona u poljima tabele

Slika 1.5 - Potpis funkcija budućih grafikona

2) Popunite X polje tako što ćete pokrenuti:

2.1 Ručno postavite prvu vrijednost

2.2 Izvršite Edit->Fill->Progression (po kolonama, aritmetici, koraku, graničnoj vrijednosti) na x [-2;2]

3) Izračunajte vrijednosti funkcija y=2sin( x) - 3cos( x), z = cos²(2 x) - 2sin( x).


Sl.1.6 - Formule funkcija y(x) i z(x)

4) Ucrtavanje

4.1 Odaberite ćelije s vrijednostima funkcija y i z

Odabir čarobnjaka za grafikone

Sl.1.7 - Čarobnjak za grafikone - Grafikon

Isticanje vrijednosti osi X

Pritisnite Enter (enter)

4.2) Imenovanje grafikona

4.3) Odaberite ćeliju sa formulom grafikona

Pritisnite enter (enter), a zatim uradite isto sa drugim redom

4.5) Odaberite karticu -> Mrežne linije, postavite

X međulinije, Y glavne linije ->Sljedeće

4.6) Grafikon funkcije postavljamo na postojeći list -> (Gotovo)

5) Kao rezultat, dobijamo (Sl.1.8)

Slika 1.8 - Grafovi funkcija y(x) i z(x)

Zadatak 2.

Izrada liste "HR Department"

Sl.2.1 Lista "HR odjela"

· Sortiranje

Sl.2.2 - Sortiranje po polju Naziv

Kao rezultat, dobijamo (Sl.2.3)

Sl.2.3 - Sortirana tabela "Odjel ljudskih resursa"

·
Tražite informacije pomoću autofiltera (dobite informacije o muškarcima čije ime počinje na slovo pismo, patronim - "Ivanovič", sa platom Plata);

Sl.2.4 - Autofilter

Tražite informacije pomoću naprednog filtera (pronađite informacije od odjela Odjeljenje1 ostario Dob1 i Dob2, i o ženama sa odjela Odjeljenje2 ostario Starost 3);

1) Unesite kriterije za napredni filter 1

Kao rezultat, dobijamo (Sl.2.5)

Sl.2.5 - Napredni filter 1

2) Unesite kriterije za napredni filter 2.

Kao rezultat, dobijamo (slika 2.6)

Sl.2.6 - Napredni filter 2

Sumiranje (odrediti broj i prosječnu starost zaposlenih u svakom odjeljenju);

Sl.2.7 - Rezultati

DMIN- Funkcija Vraća najmanji broj u polju (koloni) zapisa u listi ili bazi podataka koji zadovoljava date uslove.

Sl.2.8 - Analiza liste pomoću funkcije DMIN

Zadatak 3.

Kreirajte dvije povezane tablice Sjednica(sl.3.2) i studenti(sl.3.4)

Sl.3.1- Konstruktor tabele Sjednica

Sl.3.2- Tabela Sjednica

Sl.3.3 - Konstruktor tabele studenti


Sl.3.4 - Tabela studenti

1) Korištenje stola studenti, kreirati tri upita, prema kojima će se iz baze naizmjenično birati imena i prezimena učenika grupa 1-E-1, 1-E-2, 1-E-3.

Fig.3.5 - Query Builder 1.1


Slika 3.7 - Konstruktor upita1.2

Slika 3.9 – Konstruktor upita 1.3

2) Korištenje stola studenti, kreirati dva upita, prema kojima će se iz baze naizmjenično birati prezimena i imena žena, a zatim prezimena i imena muškaraca.

Slika 3.11 - Konstruktor upita 2.1

Sl.3.13 - Konstruktor upita 2.2

3) Koristim sto studenti, kreirati dva upita, prema kojima će se iz baze naizmjenično birati prezimena i imena žena grupe 1-E-2, a zatim muškaraca grupe 1-E-1.

Slika 3.15 - Konstruktor upita 3.1

Sl.3.17 - Konstruktor - 3.2

4) Korištenje povezanih tabela studenti i sjednica, kreirati upit, prema kojem će se iz baze podataka birati prezimena, imena, rezultati testova i ocjene iz matematike učenika grupe 1-E-2.

Sl.3.19 - Konstruktor upita 5

5) Korištenje povezanih tabela studenti i sjednica, kreirati upit koji će iz baze birati prezimena, imena, evidencije i ocjene iz filozofije učenika (muškaraca) grupe 1-E-2.

Sl.3.21 - Konstruktor upita 8

6) Korištenje povezanih tabela studenti i sjednica, kreirati upit koji će iz baze izabrati prezimena, imena, evidenciju broja učenika koji su dobili ocjenu "zadovoljavajući" (3) iz filozofije.

Sl.3.23 - Konstruktor upita 10

7) Korištenje povezanih tabela studenti i sjednica, kreirati upit koji će iz baze birati prezimena, imena, evidenciju broja učenika koji su dobili ocjenu "dobar" (4) istovremeno iz dva predmeta: filozofije i matematike.

Sl.3.25 - Konstruktor upita 14

8) Korištenje povezanih tabela studenti i sjednica, kreirati upit kojim će se iz baze podataka birati prezimena, imena, evidencija učenika koji su dobili ocjenu „nedovoljno“ (2) iz jednog od dva predmeta: iz matematike ili informatike.

Sl.3.27 - Konstruktor upita 18

9) Korištenje povezanih tabela studenti i sjednica, kreirati upit koji će iz baze birati prezimena, imena, evidenciju brojeva učenika koji su dobili ocjenu „dobar“ (4) iz svih predmeta.

Sl.3.29 - Konstruktor upita 22

10) Korišćenje stola sjednica, kreirajte upit pod nazivom Prosječna ocjena izračunati prosječan rezultat svakog studenta na osnovu rezultata položenih četiri ispita. Zahtjev mora sadržavati polje knjiga rekorda, koji će se kasnije koristiti za povezivanje više tabela.

Fig.3.31 - Konstruktor tabele sesije

11) Korištenje povezanih tabela studenti, Sjednica i zahtjev Prosječna ocjena, kreirati upit koji će iz baze izabrati prezimena, imena, evidencije, grupe učenika sa prosječnom ocjenom 3,25.

Sl.3.33 - Konstruktor upita 25

12) Korištenje povezanih tabela studenti, Sjednica i zahtjev Prosječna ocjena, kreirajte upit koji će odabrati ocjenu iz matematike, prosječan rezultat i broj grupe učenika Ivanova iz baze podataka.

Sl.3.35 - Konstruktor upita 29

13) Korištenje povezanih tabela studenti, Sjednica i zahtjev Prosječna ocjena, kreirati upit koji će iz baze birati prezimena, imena učenika sa prosječnom ocjenom manjim od 3,75.

Sl.3.37 - Konstruktor upita 33

14) Korišćenje stola studenti, da se utvrdi prezime, ime i evidencijski broj učenice, ako se zna da joj je patronim Viktorovna.

Sl.3.39 - Konstruktor upita 35

Zadatak 4.

Da konvertujete broj iz decimalnog brojevnog sistema u brojevni sistem sa drugom bazom, postupite na sledeći način:

a) Da bi se preveo cijeli broj broja, on se u potpunosti dijeli sa osnovom sistema, fiksirajući ostatak. Ako nepotpuni količnik nije jednak nuli, nastavite da ga dijelite u potpunosti. Ako je jednak nuli, ostatci se zapisuju obrnutim redoslijedom.

b) Da bi se preveo razlomak broja, on se množi sa osnovom brojevnog sistema, dok se fiksiraju celobrojni delovi dobijenih proizvoda. Cjelobrojni dijelovi ne učestvuju u daljem množenju. Množenje se vrši sve dok se ne dobije 0 u razlomku proizvoda ili dok se ne dobije određena tačnost izračuna.

c) Odgovor se piše kao sabiranje prevedenog cijelog broja i prevedenog razlomka broja.

49812,22₁₀ = 1100001010010100,001₂ 49812,22₁₀ = 141224,160₈

0,
0,

49812,22₁₀ = S294, 385₁₆

0,

Zadatak 5.

Da bi se broj pretvorio u decimalni brojevni sistem iz brojevnog sistema sa različitom bazom, svaki koeficijent prevedenog broja se množi sa osnovom sistema u meri koja odgovara ovom koeficijentu, a rezultati se sabiraju.

A) 10101001.11001₂ = 1*2^7+1*2^5+1*2^3+1*2^0+1*2^(-1)+1*2^(-2)+1* 2 (-5)= 169,78125₁₀

Za konverziju iz binarnog u oktalni, potrebno je podijeliti dati binarni broj desno i lijevo od decimalnog zareza u trijadu (tri znamenke) i svaku troznaku predstaviti odgovarajućim oktalnim kodom. Ako je nemoguće podijeliti na trozvuke, dopušteno je dodati nule lijevo u cijelobrojnu notaciju broja i desno u razlomku broja. Za obrnuto prevođenje, svaka znamenka oktalnog broja je predstavljena odgovarajućom binarnom trozvom.

Tabela 5.1 - Prijevod brojeva

Decimalni brojevni sistem Binarni sistem brojeva Oktalni sistem brojeva Heksadecimalni sistem brojeva
trijade (0-7) Tetradi (0-15)
A
B
C
D
E
F

B) 674,7₈ = 110111100,111₂=1*2^2+1*2^3+1*2^4+1*2^5+1*2^7+1*2^8+1*2^ (- 1) +1*2^(-2) +1*2^(-3)= 443,875₁₀

110 111 100. 111₂

C) EDF,51₁₆ = 111011011111.01010001₂=1*2^0+1*2^1+1*2^2+1*2^3+1*2^4+1*2^6+ +1*2 ^ 7+1*2^9+ +1*2^10+1*2^11+1*2^(-2) 1*2^(-4) 1*2^(-8)= 3807,31640625₁₀

1110 1101 1111 . 0101 0001₂

Zadatak 6.

Sabiranje brojeva u binarnom sistemu zasniva se na tabeli sabiranja jednocifrenih binarnih brojeva.

0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 10
Dodavanje višecifrenih binarnih brojeva vrši se u skladu sa ovom tabelom, uzimajući u obzir moguće transfere sa najmanje značajnog bita na najviše. U oktalnom brojevnom sistemu, kao iu svakom drugom pozicionom sistemu, postoje sopstvena pravila za sabiranje brojeva, koja su predstavljena pravilima za sabiranje cifara jednakih redosleda vezanih za dva dodana broja. Ova pravila su vidljiva iz tabele 6.1. Crtica koja se pojavljuje prilikom dodavanja nekih cifara ove cifre prikazana je simbolom "↶".
Tabela 6.1 - Sabiranje u 8. brojevnom sistemu
+
↶0
↶0 ↶1
↶0 ↶1 ↶2
↶0 ↶1 ↶2 ↶3
↶0 ↶1 ↶2 ↶3 ↶4
↶0 ↶1 ↶2 ↶3 ↶4 ↶5
↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6

Pravila za sabiranje cifara dva heksadecimalna broja u iste cifre ovih brojeva mogu se vidjeti iz tabele 6.2. Prijenos koji se javlja kada se dodaju neke cifre date cifre prikazan je simbolom "↶".

6 8 5 . 3 2 2 A ₁₆ + 1 0 1 0 1 0 0 1 0 . 1 0 ₂ + 4 7 7 . 6₈

D A 4 8 5 , 4 4 6 0 ₁₆ 1 1 0 0 0 0 1 1 0 , 1 1 0 1 0₂6 5 1 , 5 6₈

D A B 0 A , 7 6 8 A₁₆ 1 0 1 1 0 1 1 0 0 1 , 0 1 0 1 0₂ 1 3 5 1 .3 6₈

Tabela 6.2 - Sabiranje u 16. brojevnom sistemu

+ A B C D E F
A B C D E F
A B C D E F ↶0
A B C D E F ↶0 ↶1
A B C D E F ↶0 ↶1 ↶2
A B C D E F ↶0 ↶1 ↶2 ↶3
A B C D E F ↶0 ↶1 ↶2 ↶3 ↶4
A B C D E F ↶0 ↶1 ↶2 ↶3 ↶4 ↶5
A B C D E F ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6
A B C D E F ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7
A B C D E F ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7 ↶8
A A B C D E F ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7 ↶8 ↶9
B B C D E F ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7 ↶8 ↶9 ↶A
C C D E F ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7 ↶8 ↶9 ↶A ↶B
D D E F ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7 ↶8 ↶9 ↶A ↶B ↶C
E E F ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7 ↶8 ↶9 ↶A ↶B ↶C ↶D
F F ↶0 ↶1 ↶2 ↶3 ↶4 ↶5 ↶6 ↶7 ↶8 ↶9 ↶A ↶B ↶C ↶D ↶E

Zadatak 7.

Koristeći tablicu sabiranja za oktalne brojeve, možete ih oduzeti. Neka je potrebno izračunati razliku dva oktalna broja. Nalazimo u prvoj koloni tabele. 6.1 cifru koja odgovara poslednjoj u oduzetom, au njenom redu naći ćemo poslednju cifru redukovane - nalazi se na preseku linije oduzetog i kolone razlike. Dakle, nalazimo posljednju cifru razlike. Slično, svaka znamenka razlike se traži.

a) _ 2 5 1 5 1 4 , 4 0₈

5 4 2 5 , 5 5

2 4 3 0 6 6 , 6 3₈

b) _1 0 1 1 0 1 1 0 0 0 , 1 0 0 0 0₂

1 0 1 0 0 1 0 0 1 , 1 0 0 1 1

1 0 1 1 0 0 1 0 0 1 1 , 0 0 0 0 1₂

c) _E 3 1 6 , 2 5 0₁₆

5 8 8 1 , F D C₁₆

8 A 9 4 , 2 7 4

Zadatak 8.

Množenje brojeva u binarnom sistemu zasniva se na tablici množenja jednocifrenih binarnih brojeva.

0 0 = 0
0 1 = 0
1 0 = 0
1 1 = 1

Množenje višecifrenih binarnih brojeva vrši se u
prema ovoj tabeli na uobičajen način,
koje koristite u decimalnom sistemu.

Vlastita tablica množenja, u što smo se već imali prilike uvjeriti, dostupna je u svakom pozicijskom brojevnom sistemu. U binarnom je on najmanji, u oktalnom (tabela 8.1) i decimalnom već je opširniji. Među najčešće korišćenim sistemima brojeva od onih koje smo razmatrali, najveća tablica množenja je heksadecimalna (tabela 8.2).

Tab. 8.1. – Množenje u 8. sistemu

×

a) 1 0 1 0 0 1₂

* 1 1 1 0 1 1

1 0 1 0 0 1 .

1 0 0 1 0 1 1 1 0 0 1 1₂

b) 1 0 1 1 1 0 0₂

* 1 1 0 1 1

1 0 1 1 1 0 0 .

1 0 0 1 1 0 1 1 0 1 0 0₂

c) B C D , 5₁₆

*D5A₁₆

9 D 9 3 3 E 2₁₆


Tabela 8.2 - Množenje u 16. sistemu

× A B C D E F
A B C D E F
A C E 1A 1C 1E
C F 1B 1E 2A 2D
C 1C 2C 3C
A F 1E 2D 3C 4B
C 1E 2A 3C 4E 5A
E 1C 2A 3F 4D 5B
1B 2D 3F 5A 6C 7E
A A 1E 3C 5A 6E 8C
B B 2C 4D 6E 8F 9A A5
C C 3C 6C 9C A8 B4
D D 1A 4E 5B 8F 9C A9 B6 C3
E E 1C 2A 7E 8C 9A A8 B6 C4 D2
F F 1E 2D 3C 4B 5A A5 B4 C3 D2 E1

Zadatak 9.

Direktan kod je način predstavljanja binarnih brojeva sa fiksnom tačkom u kompjuterskoj aritmetici. Kada pišete broj u direktnom kodu, najznačajnija cifra je znak znak. Ako je njegova vrijednost 0, tada je broj pozitivan, ako je 1, onda je negativan.

Obrnuti kod- metoda računske matematike koja vam omogućava da oduzmete jedan broj od drugog, koristeći samo operaciju sabiranja prirodnih brojeva. Prilikom pisanja broja za pozitivan broj, on se poklapa sa direktnim kodom, a za negativan broj se sve cifre zamjenjuju suprotnim, osim znamenke.

Dodatni kod(engleski) dva komplementa, ponekad dvojke nadopunjuju) je najčešći način predstavljanja negativnih cijelih brojeva u računarima. Omogućava vam da zamijenite operaciju oduzimanja operacijom sabiranja i učinite operacije sabiranja i oduzimanja istim za brojeve s predznakom i bez predznaka, što pojednostavljuje arhitekturu računara. Prilikom pisanja broja za pozitivan broj on se poklapa sa direktnim kodom, a za negativan broj se dodatni kod određuje tako što se dobije inverzni kod i doda 1.

Sabiranje brojeva u dodatnom kodu, rezultujući 1 nosi u predznačkom bitu se odbacuje, a u inverznom kodu se dodaje najmanjoj značajnoj cifri zbira kodova.

Ako je rezultat aritmetičkih operacija negativan broj, on se mora pretvoriti u direktni kod. Obrnuti kod se pretvara u direktnu zamjenu cifara u svim znamenkama osim predznaka sa suprotnim. Kod komplementa dva se pretvara u direktan dodavanjem 1.

Direktan kod:

X=0,10111 1,11110

Y=1,11110 0,10111

Obrnuti kod:

X=0,10111 0,10111

Y=1,00001 1,00001

1,11000 1,00111

Dodatni kod:

X=0,10111 0,10111

Y=1,00010 1,00010

1,11001 1,00110

Direktan kod:

Obrnuti kod:

X=0,110110 0,0110110

Y=0,101110 0,0101110

Dodatni kod:

X=0,110110 0,0110110

Y=0,101110 0,0101110

Zadatak 10.

Logički elementi

1. Logički element NE izvodi logičku negaciju. Ima jedan ulaz i jedan izlaz. Odsustvo signala (napona) označava se sa "0", a prisustvo signala sa "1". Izlazni signal je uvijek suprotan ulaznom signalu. To se može vidjeti iz tablice istinitosti koja pokazuje ovisnost izlaznog signala o ulazu.

2. OR kapija izvodi logično sabiranje. Ima više ulaza i jedan izlaz. Na izlazu će biti signal ako postoji signal barem na jednom ulazu.

Konvencionalna notacija Tabela istinitosti

3. I kapija izvodi logičko množenje. Signal na izlazu ovog logičkog elementa bit će samo ako postoji signal na svim ulazima.

Konvencionalna notacija Tabela istinitosti

F=(A v B) ʌ (C v D)

Tabela 10.1 - Tabela istinitosti

A B C D A B C D (A v B) (CvD) F=(A v B) ʌ (C v D)

A U algebri logike postoji niz zakona koji dozvoljavaju ekvivalentne transformacije logičkih izraza. Predstavimo odnose koji odražavaju ove zakone.

1. Zakon dvostruke negacije: (A) = A

Dvostruka negacija isključuje negaciju.

2. Komutativni (komutativni) zakon:

Za logičko sabiranje: A V B = B V A

Za logičko množenje: A&B = B&A

Rezultat operacije nad naredbama ne zavisi od redosleda kojim su ovi izrazi uzeti.

3. Asocijativno (asocijativno) pravo:

Za logičko sabiranje: (A v B) v C = A v (Bv C);

Za logičko množenje: (A&B)&C = A&(B&C).

Uz iste znakove, zagrade se mogu postaviti proizvoljno ili čak izostaviti.

4. Distributivni (distributivni) zakon:

Za logičko sabiranje: (A v B)&C = (A&C)v(B&C);

Za logičko množenje: (A&B) v C = (A v C)&(B v C).

Definira pravilo za stavljanje u zagrade opći iskaz.

5. Zakon opšte inverzije (de Morganovi zakoni):

Za logičko sabiranje: (Av B) = A & B;

Za logičko množenje: (A& B) = A v B;

6. Zakon idempotencije

Za logičko sabiranje: A v A = A;

Za logičko množenje: A&A = A.

Zakon znači da nema eksponenta.

7. Zakoni isključenja konstanti:

Za logičko sabiranje: A v 1 = 1, A v 0 = A;

Za logičko množenje: A&1 = A, A&0 = 0.

8. Zakon kontradikcije: A&A = 0.

Nemoguće je da kontradiktorne izjave budu istovremeno istinite.

9. Zakon isključenja sredine: A v A = 1.

10. Zakon apsorpcije:

Za logičko sabiranje: A v (A&B) = A;

Za logičko množenje: A&(A v B) = A.

11. Zakon isključenja (lijepljenja):

Za logičko sabiranje: (A&B) v (A &B) = B;

Za logičko množenje: (A v B)&(A v B) = B.

12. Zakon kontrapozicije (pravilo preokreta):

(A v B) = (Bv A).

(A→B) = A&B

A&(AvB)= A&B

Formula ima normalan oblik ako ne sadrži znakove ekvivalencije, implikacije, dvostruku negaciju, dok se znakovi negacije nalaze samo kod varijabli.


Slične informacije.


Sredstva kriptografske zaštite državnih tajni i dalje se izjednačavaju sa oružjem. Vrlo malo zemalja u svijetu ima svoje vlastite kriptografske kompanije koje prave zaista dobre alate za sigurnost informacija. Čak ni u mnogim razvijenim zemljama ne postoji takva mogućnost: ne postoji škola koja bi omogućila podršku i razvoj ovih tehnologija. Rusija je jedna od rijetkih zemalja na svijetu – možda pet i nešto zemalja – gdje je sve to razvijeno. Štaviše, i u komercijalnom i u javnom sektoru postoje kompanije i organizacije koje su sačuvale kontinuitet kriptografske škole iz vremena kada je tek nastajala.

Algoritmi šifriranja

Do danas postoji mnogo algoritama za šifriranje koji imaju značajnu otpornost na kriptografsku analizu (kriptografska snaga). Algoritmi šifriranja su podijeljeni u tri grupe:

  • Simetrični algoritmi
  • Asimetrični algoritmi
  • Hash algoritmi

Simetrični algoritmi

Simetrična enkripcija uključuje korištenje istog ključa i za šifriranje i za dešifriranje. Dva glavna zahtjeva primjenjuju se na simetrične algoritme: potpuni gubitak svih statističkih pravilnosti u objektu šifriranja i odsustvo linearnosti. Uobičajeno je da se simetrični sistemi dijele na blokovske i protočne.

U blok sistemima, izvorni podaci se dijele na blokove, nakon čega slijedi transformacija pomoću ključa.

U striming sistemima se generiše određena sekvenca (izlazna gama), koja se naknadno nadograđuje na samu poruku, a podaci se šifruju u toku kako se gama generiše. Na slici je prikazana komunikacijska shema koja koristi simetrični kriptosistem.

Gdje je M običan tekst, K je tajni ključ koji se prenosi preko privatnog kanala, En(M) je operacija šifriranja, a Dk(M) je operacija dešifriranja

Obično, simetrična enkripcija koristi složenu i višestepenu kombinaciju zamjena i permutacija izvornih podataka, a može biti mnogo faza (prolaza), a svaki od njih mora odgovarati „ključu prolaza“

Operacija zamjene ispunjava prvi zahtjev za simetričnu šifru, oslobađajući se svih statističkih podataka miješanjem bitova poruke prema određenom datom zakonu. Permutacija je neophodna da bi se ispunio drugi uslov - da bi algoritam bio nelinearan. Ovo se postiže zamjenom određenog dijela poruke date veličine standardnom vrijednošću upućivanjem na originalni niz.

Simetrični sistemi imaju i prednosti i nedostatke u odnosu na asimetrične.

Prednosti simetričnih šifri uključuju veliku brzinu šifriranja, manju potrebnu dužinu ključa sa sličnom snagom, veće znanje i lakoću implementacije. Nedostaci simetričnih algoritama su prvenstveno složenost razmjene ključeva zbog velike vjerovatnoće narušavanja tajnosti ključa tokom razmjene, što je neophodno, i složenost upravljanja ključevima u velikoj mreži.

Primjeri simetričnih šifri

  • GOST 28147-89 - domaći standard šifriranja
  • 3DES (trostruki DES, trostruki DES)
  • RC6 (Rivest Cipher)
  • Twofish
  • SEED - Korejski standard šifriranja
  • Camellia je japanski standard šifriranja.
  • CAST (prema inicijalima programera Carlisle Adams i Stafford Tavares)
  • XTEA je najlakši algoritam za implementaciju
  • AES - američki standard šifriranja
  • DES je američki standard za šifriranje podataka do AES-a

Asimetrični algoritmi

Asimetrični sistemi se takođe nazivaju kriptosistemi javnog ključa. Ovo je metoda šifriranja podataka u kojoj se javni ključ prenosi preko otvorenog kanala (nije skriven) i koristi se za provjeru elektronskog potpisa i šifriranje podataka. Za dešifriranje i kreiranje elektronskog potpisa koristi se drugi ključ, tajni.

Sam uređaj asimetričnih kriptosistema koristi ideju jednosmjernih funkcija ƒ(x), u kojima je lako pronaći x, znajući vrijednost same funkcije, ali je gotovo nemoguće pronaći samu ƒ(x) , znajući samo vrijednost x. Primjer takve funkcije je telefonski imenik velikog grada, u kojem je lako pronaći broj osobe, znajući njegovo prezime i inicijale, ali je izuzetno teško, znajući broj, izračunati vlasnika.

Princip rada asimetričnih sistema

Pretpostavimo da postoje dva pretplatnika: A i B, a pretplatnik B želi poslati šifrovanu poruku pretplatniku A. On šifrira poruku koristeći javni ključ i prenosi je već šifrovanu preko otvorenog komunikacijskog kanala. Nakon što je primio poruku, pretplatnik A je dešifruje pomoću tajnog ključa i čita.

Ovdje je potrebno napraviti pojašnjenje. Prilikom primanja poruke, pretplatnik A mora autentifikovati svoj identitet pretplatniku B tako da se zlobnik ne može lažno predstavljati za pretplatnika A i zamijeniti njegov javni ključ svojim vlastitim.

Primjeri asimetričnih fontova

  • RSA (Rivest-Shamir-Adleman, Rivest-Shamir-Adleman)
  • DSA (Algoritam digitalnog potpisa)
  • Elgamal (ElGamal Cipher System)
  • Diffie-Hellman (Diffie-Hellman Key Exchange)
  • ECC (kriptografija eliptičke krivulje, kriptografija eliptičke krivulje)

Hash funkcije

Haširanje (od engleskog hash) je transformacija početnog niza informacija proizvoljne dužine u niz bitova fiksne dužine.

Postoji mnogo algoritama hash funkcija, a razlikuju se po svojim karakteristikama - kriptografskoj snazi, dužini riječi, složenosti računanja itd.

Zanimaju nas kriptografski jake hash funkcije. Oni obično imaju dva zahtjeva:

  • Za datu poruku C, praktično je nemoguće pokupiti drugu poruku C" sa istim hešom
  • Praktično je nemoguće pokupiti parove poruka (SS") koje imaju isti hash.

Zahtjevi se nazivaju otpornost na sudare prve i druge vrste, respektivno. Za takve funkcije ostaje važan još jedan zahtjev: uz malu promjenu argumenta, mora doći do značajne promjene u samoj funkciji. Dakle, heš vrijednost ne bi trebala dati informaciju čak ni o pojedinačnim bitovima argumenta.

Primjeri hash algoritama

  • Adler-32
  • SHA-1
  • SHA-2 (SHA-224, SHA-256, SHA-384, SHA-512)
  • HAVAL
  • N-haš
    • RIPEMD-160
  • RIPEMD-256
  • RIPEMD-320
  • Skin
  • Snefru
  • tigar (TTH)
  • Whirlpool
  • GOST R34.11-94 (GOST 34.311-95)
  • IP internet kontrolna suma (RFC 1071)

Kriptografski primitivi

Da bi šifrovane informacije dobile veću kriptografsku snagu, relativno jednostavne transformacije - primitive - mogu se više puta primeniti u kriptografskom sistemu. Primitive mogu biti zamjene, permutacije, rotacije ili gama.

kvantna kriptografija

Kriptografija u digitalnim tehnologijama

Priča

Kriptografija je drevna nauka, a njen izvorni predmet bile su tekstualne poruke, koje su uz pomoć određenih algoritama izgubile smisao za sve koji nisu imali posebna znanja da dešifruju ovu poruku – ključ.

U početku su se koristile metode koje se danas koriste samo za zagonetke, odnosno, po mišljenju suvremenika, najjednostavnije. Takve metode šifriranja uključuju, na primjer, metodu zamjene, kada je svako slovo zamijenjeno drugim, udaljeno od njega na strogo određenoj udaljenosti u abecedi. Ili metoda permutacijske enkripcije, kada se slova izmjenjuju u određenom nizu unutar riječi.

U davna vremena, šifriranje se koristilo uglavnom u vojnim i komercijalnim poslovima, špijunaži, među krijumčarima.

Nešto kasnije istoričari određuju datum pojave još jedne srodne nauke - steganografije. Ova nauka se bavi maskiranjem same činjenice prenošenja poruke. Nastao je u antici, a primjer ovdje je prijem od strane spartanskog kralja Leonida prije bitke s Perzijancima ploče s tekstom prekrivenim suvim rastvorom koji se lako ispire. Prilikom čišćenja, tragovi ostavljeni na vosku sa olovkom postali su jasno vidljivi. Danas se simpatična mastila, mikrotačke, mikrofilmovi itd. koriste za prikrivanje poruke.

Sa razvojem matematike, počeli su se pojavljivati ​​algoritmi matematičke enkripcije, ali su sve ove vrste zaštite kriptografskih informacija zadržale statističke podatke u različitom stepenu i ostale su ranjive. Ranjivost je postala posebno uočljiva s izumom analize frekvencija, koju je u 9. vijeku naše ere razvio navodni arapski enciklopedista al-Kindi. I tek u XV veku, nakon pronalaska polialfabetskih fontova Leona Batiste Albertija (verovatno), zaštita je prešla na kvalitativno novi nivo. Međutim, sredinom 17. stoljeća, Charles Babbage je iznio uvjerljive dokaze o djelomičnoj ranjivosti polialfabetskih fontova na analizu frekvencija.

Razvoj mehanike omogućio je stvaranje uređaja i mehanizama koji olakšavaju šifriranje - pojavili su se uređaji kao što su Trithemius kvadratna ploča, disk šifra Thomasa Jeffersona. Ali svi ovi uređaji se ne mogu porediti sa onima stvorenim u 20. veku. U to vrijeme počele su se pojavljivati ​​razne mašine za šifriranje i mehanizmi visoke složenosti, na primjer, rotacijske mašine, od kojih je najpoznatija Enigma.

Prije naglog razvoja nauke u 20. vijeku, kriptografi su morali da se bave samo lingvističkim objektima, a u 20. vijeku su se otvorile mogućnosti korištenja različitih matematičkih metoda i teorija, statistike, kombinatorike, teorije brojeva i apstraktne algebre.

Ali pravi proboj u kriptografskoj nauci došao je s pojavom mogućnosti predstavljanja bilo koje informacije u binarnom obliku, podijeljenom na bitove pomoću kompjutera, što je omogućilo stvaranje fontova s ​​do sada neviđenom kriptografskom snagom. Takvi sistemi šifriranja, naravno, mogu biti hakirani, ali vrijeme utrošeno na hakovanje nije opravdano u velikoj većini slučajeva.

Danas možemo govoriti o značajnom razvoju kvantne kriptografije.

Književnost

  • Baričev S.G., Gončarov V.V., Serov R.E. Osnove moderne kriptografije. - M.: *Varfolomeev A. A., Žukov A. E., Pudovkina M. A. Stream cryptosystems. Osnovna svojstva i metode analize stabilnosti. M.: PAIMS, 2000.
  • Yashchenko VV Uvod u kriptografiju. Sankt Peterburg: Peter, 2001. .
  • GOST 28147-89. Sistemi za obradu informacija. Kriptografska zaštita. Algoritam kriptografske transformacije. Moskva: GK SSSR po standardima, 1989.
  • GOST R 34.10-94 Informaciona tehnologija. Kriptografska zaštita informacija. *GOST R 34.11-94. Informaciona tehnologija. Kriptografska zaštita informacija. hash funkcija. M., 1995.
  • GOST R 34.10-2001 Informaciona tehnologija. Kriptografska zaštita informacija. Procesi formiranja i verifikacije elektronskog digitalnog potpisa. M., 2001.
  • Nechaev VI Elementi kriptografije (Osnove teorije informacione sigurnosti). Moskva: Viša škola, 1999.
  • Zhelnikov V. Kriptografija od papirusa do kompjutera. M.: AVR, 1996.

Zbog činjenice da je glavna funkcija našeg softvera enkripcija podataka, često nam se postavljaju pitanja u vezi s određenim aspektima kriptografije. Odlučili smo da sakupimo najčešća pitanja u jednom dokumentu i pokušali da im damo najdetaljnije, ali u isto vrijeme, ne preopterećene nepotrebnim informacijama odgovore.

1. Šta je kriptografija?

Kriptografija je teorijska naučna disciplina, grana matematike koja proučava transformaciju informacija kako bi ih zaštitila od razumnih akcija neprijatelja.

2. Šta je algoritam šifriranja?

Algoritam šifriranja je skup logičkih pravila koja određuju proces pretvaranja informacija iz otvorenog stanja u šifrirano stanje (šifriranje) i, obrnuto, iz šifriranog stanja u otvoreno stanje (dešifriranje).

Algoritmi šifriranja pojavljuju se kao rezultat teorijskih istraživanja, kako pojedinačnih naučnika tako i istraživačkih timova.

3. Kako su podaci zaštićeni enkripcijom?

Osnovni princip zaštite podataka enkripcijom je šifriranje podataka. Za autsajdera, šifrovani podaci izgledaju kao "informaciono smeće" - besmislen skup znakova. Dakle, ako informacije u šifriranom obliku dođu do napadača, on ih jednostavno neće moći koristiti.

4. Koji je najjači algoritam šifriranja?

U principu, svaki algoritam šifriranja koji predloži neki poznati kriptograf smatra se sigurnim dok se ne dokaže suprotno.

U pravilu se svi novonastali algoritmi šifriranja objavljuju za javni uvid i sveobuhvatno se proučavaju u specijalizovanim kriptografskim istraživačkim centrima. Rezultati ovakvih studija se također objavljuju na javnom uvidu.

5. Šta je ključ za šifriranje?

Ključ za šifriranje je slučajni, pseudo-slučajni ili posebno formirani niz bitova, koji je promjenjivi parametar algoritma šifriranja.

Drugim riječima, ako šifrirate iste informacije istim algoritmom, ali različitim ključevima, rezultati će također biti drugačiji.

Ključ za šifriranje ima jednu bitnu karakteristiku - dužinu, koja se obično mjeri u bitovima.

6. Koji su algoritmi šifriranja?

Algoritmi šifriranja su podijeljeni u dvije velike klase - simetrične i asimetrične (ili asimetrične).

Algoritmi simetrične enkripcije koriste isti ključ za šifriranje informacija i njihovo dešifriranje. U ovom slučaju, ključ za šifriranje mora biti tajni.

Algoritmi simetrične enkripcije, po pravilu, su laki za implementaciju i ne zahtevaju mnogo računarskih resursa za svoj rad. Međutim, neugodnost ovakvih algoritama se manifestira u slučajevima kada, na primjer, dva korisnika moraju razmijeniti ključeve. U ovom slučaju, korisnici ili moraju da se sastanu direktno, ili imaju neku vrstu pouzdanog kanala zaštićenog od neovlaštenog pristupa za slanje ključa, što nije uvijek moguće.

Primjeri algoritama simetrične enkripcije su DES, RC4, RC5, AES, CAST.

Algoritmi asimetričnog šifriranja koriste dva ključa, jedan za šifriranje i jedan za dešifriranje. U ovom slučaju se govori o paru ključeva. Jedan ključ iz para može biti javan (dostupan svima), drugi može biti tajni.

Asimetrični algoritmi enkripcije su složeniji za implementaciju i zahtjevniji za računarske resurse od simetričnih, međutim, problem razmjene ključeva između dva korisnika je lakše riješiti.

Svaki korisnik može kreirati vlastiti par ključeva i poslati javni ključ svom pretplatniku. Ovaj ključ može samo šifrirati podatke; za dešifriranje je potreban tajni ključ, koji čuva samo njegov vlasnik. Dakle, dobijanje javnog ključa od strane napadača mu neće dati ništa, jer je nemoguće da dešifruje šifrovane podatke.

Primjeri algoritama asimetrične enkripcije su RSA, El-Gamal.

7. Kako se razbijaju algoritmi za šifriranje?

U kriptografskoj nauci postoji pododjeljak - kriptoanaliza, koji proučava pitanja razbijanja algoritama šifriranja, odnosno dobijanja otvorenih informacija iz šifriranih informacija bez ključa za šifriranje.

Postoji mnogo različitih načina i metoda kriptoanalize, od kojih je većina previše složena i dugotrajna da bi se ovdje reproducirali.

Jedina metoda vrijedna spomena je direktno nabrajanje svih mogućih vrijednosti ključa za šifriranje (koji se naziva i brute force metoda ili brute force). Suština ove metode je da se nabroje sve moguće vrijednosti ključa za šifriranje dok se ne pronađe željeni ključ.

8. Kolika bi trebala biti dužina ključa za šifriranje?

Danas se za algoritme simetrične enkripcije 128 bita (16 bajtova) smatra dovoljnom dužinom ključa za šifrovanje. Za kompletno nabrajanje svih mogućih ključeva dužine 128 bita (napad grubom silom) u jednoj godini potrebni su vam 4,2x1022 procesora kapaciteta 256 miliona operacija šifrovanja u sekundi. Cijena ovog broja procesora je 3,5x1024 američkih dolara (prema Bruce Schneieru, Applied Cryptography).

Postoji međunarodni projekat distributed.net, čija je svrha da ujedini korisnike Interneta za stvaranje virtuelnog distribuiranog superračunara koji nabraja ključeve za šifriranje. Najnoviji projekat krekiranja 64-bitnog ključa je završen u roku od 1757 dana, uključivši više od 300.000 korisnika, a računarska snaga svih projektnih računara bila je ekvivalentna skoro 50.000 2GHz AMD Athlon XP procesora.

U ovom slučaju treba uzeti u obzir da povećanje dužine ključa za šifriranje za jedan bit udvostručuje broj vrijednosti ključa, a samim tim i vrijeme nabrajanja. Odnosno, na osnovu gornjih brojki, za 1757 * 2 dana moguće je razbiti ne 128-bitni ključ, kao što se čini na prvi pogled, već samo 65-bitni.

9. Čuo sam za 1024 pa čak i 2048 bitne ključeve za šifriranje, a vi kažete da je 128 bita dovoljno. Šta to znači?

Tako je, ključevi za šifriranje od 512, 1024 i 2048 bita, a ponekad i duži, koriste se u algoritmima asimetričnog šifriranja. Koriste principe koji su potpuno drugačiji od simetričnih algoritama, pa su i razmjere ključeva za šifriranje također različite.

Odgovor na ovo pitanje je najčuvanija tajna specijalnih službi bilo koje države. Sa teorijske tačke gledišta, nemoguće je čitati podatke šifrovane pomoću poznatog algoritma sa ključem dovoljne dužine (vidi prethodna pitanja), međutim, ko zna šta se krije iza vela državne tajne? Može se ispostaviti da postoje neke vanzemaljske tehnologije koje su poznate vladi, s kojima možete provaliti bilo koju šifru 🙂

Jedino što se može sa sigurnošću tvrditi je da ni jedna država, niti jedna posebna služba neće otkriti ovu tajnu, a čak i ako je moguće nekako dešifrirati podatke, to nikada neće pokazati ni na koji način.

Za ilustraciju ove izjave može se navesti istorijski primjer. Tokom Drugog svjetskog rata, britanski premijer Winston Churchill je, kao rezultat presretanja i dešifriranja njemačkih poruka, postao svjestan predstojećeg bombardovanja grada Coventryja. Unatoč tome, nije poduzeo nikakve mjere da spriječi neprijatelja da sazna da britanska obavještajna služba može dešifrirati njihove poruke. Kao rezultat toga, u noći između 14. i 15. novembra 1940. godine, nemački avioni su uništili Coventry, ubivši veliki broj civila. Tako se za Čerčila ispostavilo da je cijena odavanja informacija da je mogao dešifrirati njemačke poruke veća od cijene nekoliko hiljada ljudskih života.

Očigledno je da je za savremene političare cijena takvih informacija još veća, pa o mogućnostima modernih specijalnih službi nećemo ništa saznati, eksplicitno ili indirektno. Dakle, čak i ako je odgovor na ovo pitanje potvrdan, ova mogućnost se, najvjerovatnije, neće manifestirati ni na koji način.

Izvor: SecurIT

^ vratite se na početak ^

Obično se novi algoritmi šifriranja objavljuju za javni pregled i proučavaju u specijalizovanim istraživačkim centrima. Rezultati ovakvih studija se također objavljuju na javnom uvidu.

Simetrični algoritmi
Algoritmi šifriranja su podijeljeni u dvije velike klase: simetrične (AES, GOST, Blowfish, CAST, DES) i asimetrične (RSA, El-Gamal). Algoritmi simetričnog šifriranja koriste isti ključ za šifriranje informacija i dešifriranje, dok asimetrični algoritmi koriste dva ključa - jedan za šifriranje i jedan za dešifriranje.

Ako je šifrovane informacije potrebno prenijeti na drugo mjesto, tada se tamo mora prenijeti i ključ za dešifriranje. Slaba tačka ovdje je kanal za prijenos podataka – ako nije siguran ili se sluša, ključ za dešifriranje može doći do napadača. Sistemi zasnovani na asimetričnim algoritmima nemaju ovaj nedostatak. Pošto svaki učesnik u takvom sistemu ima par ključeva: javni i tajni ključ.

Ključ za šifriranje
Ovo je nasumičan ili posebno kreiran niz bitova prema lozinki, koja je varijabilni parametar algoritma šifriranja.
Ako šifrirate iste podatke istim algoritmom, ali različitim ključevima, rezultati će također biti drugačiji.

Obično se u softveru za šifriranje (WinRAR, Rohos, itd.) ključ kreira iz lozinke koju korisnik odredi.

Ključ za šifriranje dolazi u različitim dužinama, koje se obično mjere u bitovima. Kako se dužina ključa povećava, povećava se teoretska sigurnost šifre. U praksi to nije uvijek tačno.

U kriptografiji se smatra da je mehanizam šifriranja vrijednost koja nije tajna, a napadač može imati puni izvorni kod algoritma šifriranja, kao i šifrirani tekst (Kerckhoffovo pravilo). Još jedna pretpostavka koja se može dogoditi je da napadač može znati dio nešifrovanog (običnog) teksta.

Snaga algoritma šifriranja.
Algoritam šifriranja se smatra jakim dok se ne dokaže suprotno. Dakle, ako je algoritam šifriranja objavljen, postoji više od 5 godina i za njega nisu pronađene ozbiljne ranjivosti, možemo pretpostaviti da je njegova snaga prikladna za zaštitu tajnih informacija.

Teorijska i praktična izdržljivost.
Godine 1949. K.E. Shannon je objavila članak "Teorija komunikacije u tajnim sistemima". Shannon je snagu kriptografskih sistema smatrao praktičnom i teorijskom. Zaključak o teorijskoj sigurnosti je i dalje pesimističan: dužina ključa treba da bude jednaka dužini otvorenog teksta.
Stoga je Shannon također razmatrao pitanje praktične snage kriptografskih sistema. Da li je sistem pouzdan ako napadač ima ograničeno vrijeme i računarske resurse za analizu presretnutih poruka?

Obično se ranjivosti nalaze u programima koji šifriraju podatke pomoću nekog algoritma. U ovom slučaju programeri prave grešku u logici programa ili u kriptografskom protokolu, zahvaljujući čemu se, nakon proučavanja kako program radi (na niskom nivou), na kraju može dobiti pristup tajnim informacijama.

Razbijanje algoritma šifriranja
Vjeruje se da je kriptosistem riješen ako napadač može izračunati tajni ključ i također izvesti algoritam konverzije ekvivalentan originalnom kriptoalgoritmu. I da je ovaj algoritam bio izvodljiv u realnom vremenu.

U kriptologiji postoji pododjeljak koji se zove kriptoanaliza, koji proučava probleme razbijanja ili krivotvorenja šifriranih poruka. Postoji mnogo načina i metoda kriptoanalize. Najpopularnija je metoda direktnog nabrajanja svih mogućih vrijednosti ​​ključa za šifriranje (tzv. "brute force" ili brute force metoda). Suština ove metode je da se nabroje sve moguće vrijednosti ključa za šifriranje dok se ne pronađe željeni ključ.

U praksi, to znači da napadač mora:

  • Imajte na raspolaganju kriptosistem (tj. program) i primjere šifriranih poruka.
  • Razumjeti kriptografski protokol. Drugim riječima, kako program šifrira podatke.
  • Razviti i implementirati algoritam za nabrajanje ključeva za ovaj kriptosistem.

Kako možete znati da li je ključ ispravan ili ne?
Sve zavisi od specifičnog programa i implementacije protokola za šifrovanje. Obično, ako se nakon dešifriranja ispostavi da je "smeće", onda je ovo pogrešan ključ. A ako je tekst manje-više smislen (ovo se može provjeriti), onda je ključ ispravan.

Algoritmi šifriranja
AES (Rijndael). Trenutno je američki federalni standard šifriranja.

Koji algoritam šifriranja odabrati za zaštitu informacija?

Odobren kao standard od strane Ministarstva trgovine 4. decembra 2001. Odluka je stupila na snagu danom objavljivanja u saveznom registru (06.12.01.). Varijanta šifre sa samo veličinom bloka od 128 bita je prihvaćena kao standard.

GOST 28147-8. Standard Ruske Federacije za šifriranje podataka i zaštitu od imitacije. U početku je imao vrat (OV ili SS - ne zna se tačno), zatim je vrat dosljedno smanjen, a do trenutka kada je algoritam službeno proveden preko Državnog standarda SSSR-a 1989. godine, uklonjen je. Algoritam je ostao DSP (kao što znate, DSP se ne smatra vratom). Godine 1989. postao je službeni standard SSSR-a, a kasnije, nakon raspada SSSR-a, federalni standard Ruske Federacije.

blowfish Kompleksna šema za generisanje ključnih elemenata značajno komplikuje napad grubom silom na algoritam, ali ga čini neprikladnim za upotrebu u sistemima gde se ključ često menja i mali podaci su šifrovani na svakom ključu.

Algoritam je najprikladniji za sisteme u kojima su velike količine podataka šifrirane pomoću istog ključa.

DES Američki federalni standard šifriranja 1977-2001. Usvojen kao američki savezni standard 1977. U decembru 2001. godine izgubio je status zbog uvođenja novog standarda.

CAST U određenom smislu, analog DES-a.

www.codenet.ru/progr/alg/enc
Algoritmi šifriranja, Pregled, informacije, poređenje.

http://www.enlight.ru/crypto
Materijali o asimetričnoj enkripciji, digitalnom potpisu i drugim "modernim" kriptografskim sistemima.

Aleksandar Velikanov,
Olga Cheban,
Tesline Service S.R.L.

Bivši bankar iz Abu Dhabija Mohammad Ghaith bin Mahah Al Mazrui razvio je šifru za koju tvrdi da je neraskidiva. Šifra pod nazivom "Kod Abu Dhabija" nastala je na osnovu grupe simbola koje je izmislio sam Al Mazrui. U njegovom kodu svako slovo je zamijenjeno posebno izmišljenim simbolom, a ti simboli ne pripadaju nijednom poznatom jeziku na svijetu.

Koji su algoritmi za šifriranje podataka sigurniji

Programeru je trebalo godinu i po da radi na šifri, koju Al Mazrui naziva "apsolutno novim".

Prema entuzijastima, svako može kreirati svoj vlastiti kod, a složenost šifre je određena dužinom ključa. Vjeruje se da, u principu, ako postoji želja, određene vještine i odgovarajući softver, gotovo svaka, pa i najsloženija šifra može biti probijena.

Međutim, Al Mazrui uvjerava da je njegova kreacija neraskidiva i da je daleko najpouzdanija šifra. “Gotovo je nemoguće dešifrirati dokument kodiran Abu Dhabi kodom”, siguran je Al Mazrui.

Kako bi dokazao svoj slučaj, bankar je izazvao sve istaknute kriptografe, hakere i kriptografe, pozivajući ih da pokušaju razbiti njegovu šifru.

3. Kryptos je skulptura koju je američki vajar James Sanborn postavio u sjedištu CIA-e u Langleyju u Virdžiniji 1990. godine. Šifrovana poruka odštampana na njemu i dalje se ne može otkriti.

4. Šifra odštampana Kineska zlatna poluga. Sedam zlatnih poluga je navodno izdato 1933. generalu Wangu u Šangaju. Označene su slikama, kineskim slovima i nekim šifriranim porukama, uključujući i latinična slova. Mogu sadržavati potvrde o autentičnosti metala koje je izdala jedna od američkih banaka.

Koji algoritam šifriranja odabrati u TrueCrypt-u

5. Bale kriptogrami su tri šifrovane poruke za koje se vjeruje da sadrže lokaciju ostave od dva vagona zlata, srebra i dragulja zakopanu 1820-ih u blizini Lynchburga, u okrugu Bedford, u Virginiji, od strane grupe rudara zlata koju je predvodio Thomas Jefferson Bale. Cijena do sada nenađenog blaga, u savremenom novcu, trebala bi biti oko 30 miliona dolara. Zagonetka kriptograma do sada nije riješena, posebno pitanje stvarnog postojanja blaga ostaje kontroverzno. Jedna od poruka je dešifrovana - opisuje samo blago i daje opšte naznake njegove lokacije. Preostala neotvorena pisma mogu sadržavati tačnu lokaciju oznake i popis vlasnika blaga. (detaljne informacije)

6. Voynich rukopisčesto nazivana najmisterioznijom knjigom na svijetu. Rukopis koristi jedinstvenu azbuku, sadrži oko 250 stranica i crteže koji prikazuju nepoznato cvijeće, gole nimfe i astrološke simbole. Prvi put se pojavio krajem 16. veka, kada ga je car Svetog Rimskog Rima Rudolf II kupio u Pragu od nepoznatog trgovca za 600 dukata (oko 3,5 kg zlata, danas više od 50 hiljada dolara). Od Rudolfa II knjiga je prešla na plemiće i naučnike, a nestala je krajem 17. veka. Rukopis se ponovo pojavio oko 1912. godine kada ga je kupio američki knjižar Wilfried Voynich. Nakon njegove smrti, rukopis je doniran Univerzitetu Yale. Britanski naučnik Gordon Rugg smatra da je knjiga lukava prevara. Tekst ima karakteristike koje nisu karakteristične ni za jedan od jezika. S druge strane, neke karakteristike, kao što su dužina riječi, način na koji su slova i slogovi povezani, slične su onima u stvarnim jezicima. „Mnogi ljudi misle da je sve ovo previše komplikovano za prevaru da bi se izgradio takav sistem, trebale bi neke lude alhemičarske godine“, kaže Rugg. Međutim, Rugg pokazuje da se ova složenost mogla lako postići korištenjem uređaja za šifriranje izumljenog oko 1550. godine i nazvanog Cardan grid. U ovoj tablici simbola riječi se stvaraju pomicanjem kartice na kojoj su izrezane rupe. Zbog ostavljenih razmaka u tabeli, riječi su različite dužine. Nametanjem takvih mreža na tablici slogova u rukopisu, Rugg je stvorio jezik koji dijeli mnoge, ako ne i sve, karakteristike jezika rukopisa. Prema njegovim riječima, tri mjeseca bi bila dovoljna za izradu cijele knjige. (detaljne informacije, wikipedia)

7. Dorabella šifra, koju je 1897. godine komponovao britanski kompozitor Sir Edward William Elgar. U šifrovanom obliku, poslao je pismo u grad Vulverhempton svojoj devojci Dori Peni, 22-godišnjoj ćerki Alfreda Penija, rektora katedrale Svetog Petra. Ova šifra ostaje neriješena.

8. Donedavno, listi su prisustvovali Chaocipher, koji nije mogao biti otkriven za života njegovog tvorca. Šifru je izmislio John F. Byrne 1918. godine i skoro 40 godina je bezuspješno pokušavao da zainteresuje američke vlasti za nju. Pronalazač je ponudio novčanu nagradu svakome ko bi mogao riješiti njegovu šifru, ali kao rezultat toga niko je nije tražio.

Ali u maju 2010. članovi Byrneove porodice predali su sve preostale Byrneove dokumente Nacionalnom kriptografskom muzeju u Marylandu, što je dovelo do otkrića algoritma.

9. D'Agapeyeffova šifra. Godine 1939. britanski kartograf ruskog porijekla Alexander D'Agapeyeff objavio je knjigu o osnovama kriptografije Kodovi i šifre, u čijem prvom izdanju je citirao šifru vlastitog izuma. Ova šifra nije uključena u naredna izdanja. Nakon toga, D'Agapeyeff je priznao da je zaboravio algoritam za dešifriranje ove šifre. Sumnja se da su promašaji koji su zadesili sve one koji su pokušali da dešifruju njegovo delo posledica toga što je autor napravio greške prilikom šifrovanja teksta.

Ali u naše vrijeme postoji nada da se šifra može riješiti modernim metodama - na primjer, genetskim algoritmom.

10. Taman Shud. 1. decembra 1948. godine na obali Australije u Somertonu, u blizini Adelaidea, pronađeno je mrtvo tijelo muškarca, obučenog u džemper i kaput, uprkos karakterističnom toplom danu za australsku klimu. O njemu nisu pronađeni nikakvi dokumenti. Pokušaji da se uporede otisci njegovih zuba i prstiju sa dostupnim podacima o živim ljudima takođe su bili uzaludni. Obdukcija je otkrila neprirodnu navalu krvi, koja mu je posebno ispunila trbušnu šupljinu, kao i povećanje unutrašnjih organa, ali u njegovom tijelu nisu pronađene strane tvari. Na željezničkoj stanici su istovremeno pronašli kofer koji je mogao pripadati pokojniku. U koferu su bile pantalone sa tajnim džepom u kojem su pronašli komad papira otkinut iz knjige sa ispisanim rečima. Taman Shud. Istraga je otkrila da je komad papira otrgnut iz vrlo rijetke kopije zbirke Rubaiyat velikog perzijskog pjesnika Omara Khayyama. Sama knjiga pronađena je na zadnjem sjedištu automobila ostavljenog otključanog. Na poleđini knjige, pet redova je bilo nažvrljano velikim slovima - značenje ove poruke nije se moglo dešifrovati. Do danas, ova priča ostaje jedna od najmisterioznijih misterija Australije.

Životni vijek informacija

§ Prilikom presretanja šifrovane poruke za neke vrste algoritama šifriranja, moguće je izračunati učestalost pojavljivanja određenih znakova i uporediti ih sa vjerovatnoćama pojavljivanja određenih znakova ili njihovih kombinacija (bigrami, trigrami, itd.). To, zauzvrat, može dovesti do nedvosmislenog dešifriranja (otkrivanja) pojedinačnih dijelova šifrirane poruke.

§ Prisustvo verovatnih reči. To su riječi ili izrazi za koje se može očekivati ​​da će se pojaviti u presretnutoj poruci (na primjer, za engleski tekst - "and", "the", "are" itd.).

§ Postoje metode da šifrovane poruke budu praktično neprikladne za statističku i vjerovatnu analizu riječi. To uključuje sljedeće.

§ Difuzija. Utjecaj jednog znaka otvorene poruke proteže se na mnogo znakova šifrirane poruke. Ova metoda, iako dovodi do povećanja broja grešaka tokom dešifriranja, ipak se može koristiti za sakrivanje statističke strukture otvorene poruke.

§ Zapletanje. Razvoj principa raspršenja. U njemu se uticaj jednog znaka ključa proteže na mnogo znakova šifrovanog

poruke.

§ Miješanje. Zasnovan je na korištenju posebnih transformacija izvorne poruke, zbog čega se čini da su vjerojatni nizovi rasuti po cijelom prostoru mogućih otvorenih poruka. Razvoj ove metode je bio korištenje kompozitnih algoritama za šifriranje, koji se sastoje od niza jednostavnih operacija permutacije i zamjene.

Primjeri gore navedenih metoda su standardi šifriranja DES i GOST 28147-89.

Postoje dvije glavne vrste algoritama za šifriranje:

§ algoritmi simetrične enkripcije;

§ algoritmi za asimetrično šifrovanje.

Simetrična enkripcija.

Algoritmi simetrične enkripcije zasnovani su na činjenici da se isti (zajednički) ključ koristi i za šifrovanje poruke i za njeno dešifrovanje (slika 1).

Jedna od glavnih prednosti simetričnih metoda je brzina šifriranja i dešifriranja, a glavni nedostatak je potreba da se vrijednost tajnog ključa prenese primaocu.



Neminovno se javlja problem: kako prenijeti ključ i istovremeno ne dozvoliti napadačima da ga presretnu.

Prednosti kriptografije sa simetričnim tipkama:

· Visoke performanse.

· Visoka izdržljivost. Pod jednakim ostalim stvarima, snaga kriptografskog algoritma je određena dužinom ključa. Sa dužinom ključa od 256 bita, potrebno je izvršiti 10 77 pretraga da bi se on odredio.

Nedostaci kriptografije sa simetričnim ključevima.

§ Problem distribucije ključeva. Budući da se za šifriranje i dešifriranje koristi isti ključ, potrebni su vrlo pouzdani mehanizmi za njihovu distribuciju (prijenos).

§ Skalabilnost. Pošto i pošiljalac i primalac koriste isti ključ, broj potrebnih ključeva eksponencijalno raste u zavisnosti od broja učesnika u komunikaciji. Za razmjenu poruka između 10 korisnika potrebno je imati 45 ključeva, a za 1000 korisnika - već 499.500.

§ Ograničena upotreba. Kriptografija tajnog ključa koristi se za šifriranje podataka i ograničavanje pristupa njima, ne može se koristiti za osiguranje svojstava informacija kao što su autentičnost i

neporicanje.

Asimetrična enkripcija

Algoritmi asimetrične enkripcije (kriptografija s javnim ključem) uključuju korištenje dva ključa. Prvi ključ je otvoren. Distribuira se potpuno slobodno, bez ikakvih mjera opreza. Sekunda, zatvoreno ključ se čuva u tajnosti.

Svaka poruka šifrirana pomoću jednog od ovih ključeva može se dešifrirati samo pomoću svog uparenog ključa. Tipično, pošiljalac poruke koristi javni ključ primaoca, a primalac koristi svoj privatni privatni ključ.

U asimetričnoj shemi za prijenos šifriranih poruka, oba ključa su izvedena od jednog roditelja glavni ključ. Kada su dva ključa izvedena iz jednog, oni su matematički zavisni, ali zbog složenosti računanja, nijedan se ne može izračunati iz drugog. Nakon što se generiraju oba ključa (i javni i privatni, privatni), glavni ključ se uništava, a time se zaustavlja svaki pokušaj vraćanja vrijednosti ključeva izvedenih iz njega u budućnosti.

Asimetrična shema je idealno kombinirana s korištenjem javnih mreža za razmjenu poruka (na primjer, Interneta). Svaki mrežni pretplatnik može apsolutno slobodno poslati javni ključ svom pregovaračkom partneru, a ovaj će, u ulozi pošiljaoca poruke, koristiti ovaj ključ prilikom šifriranja poruke koja se šalje (slika 2). Ovu poruku svojim privatnim ključem može dešifrirati samo primalac poruke koji je prethodno poslao odgovarajući javni ključ. Napadač koji presretne takav ključ moći će ga koristiti samo u svrhu prenošenja nekih šifriranih poruka zakonitom vlasniku ključa.

Nedostatak asimetrične sheme je veliko vrijeme utrošeno na šifriranje i dešifriranje, što ne dozvoljava njihovu upotrebu za brzu razmjenu dugih poruka u načinu dijaloga. Implementacija metoda asimetrične enkripcije zahtijeva puno CPU vremena. Stoga se u svom čistom obliku kriptografija s javnim ključem obično ne koristi u svjetskoj praksi.



Rice. 2. Asimetrična šema šifriranja

Nemoguće je uporediti koji je bolji, simetrični ili asimetrični algoritmi šifriranja. Primjećuje se da simetrični kriptografski algoritmi imaju manju dužinu ključa i rade brže.

Kriptografija tajnog ključa i kriptografija javnog ključa dizajnirane su za rješavanje potpuno različitih problema. Simetrični algoritmi su vrlo pogodni za enkripciju podataka, asimetrični algoritmi su implementirani u većini mrežnih kriptografskih protokola.

Metode koje se najčešće koriste kombiniraju prednosti obje sheme. Princip rada kombinovanih šema je da se simetričan (sesijski) ključ generiše za sledeću sesiju razmene poruka. Ovaj ključ se zatim šifrira i šalje pomoću asimetrične šeme. Nakon završetka trenutne pregovaračke sesije, simetrični ključ se uništava.



Učitavanje...
Top