Tag Archive : kriptografija

/ kriptografija

Kriptografija: Ciljevi

November 27, 2019 | SECURITY | No Comments

Kriptografija se koristi za:

  1. Integritet podataka (eng. Data integrity) – Primalac poruke trebao bi biti u mogućnosti da provjeri da li je poruka modifikovana tokom prenosa. Trebalo bi da niko nije u stanju originalnu poruku ili njene dijelove zamijeniti lažnom porukom.
  2. Autentifikaciju (eng. Authentication) – Primalac poruke trebao bi biti u mogućnosti provjeriti njezino porijeklo. Niko ne bi trebao biti u stanju poslati poruku Bobu i pretvarati se da je Alice (provjera porijekla podataka). Prilikom pokretanja komunikacije, Alice i Bob trebali bi se moći međusobno identificirati (provjera identiteta entiteta).
  3. Neporecivost (eng. Non-repudiation) – Pošiljalac ne bi trebao kasnije moći poreći da je poslao poruku.

Ako su poruke napisane na papiru, papir pruža određenu sigurnost protiv manipulacija. Rukom pisani lični potpisi garantuju autentičnost i neporecivost. Ako se koriste elektronski mediji, taj medij uopšte ne pruža bezbednost, jer je lako zamijeniti neke bajtove u poruci tokom prenosa preko računarske mreže, a posebno je lako ako je mreža javno dostupna, poput Interneta.

Kod za provjeru autentičnosti poruke (MAC)

Postoje simetrični i asimetrični metodi kojima se obezbeđuje integritet poruka. Klasične simetrične metode zahtijevaju tajni ključ koji dijeli pošiljalac i primalac. Poruka je nadopunjena autentifikacijskim kodom poruke (eng. Message Authentication Code – MAC). Kod se generiše algoritmom i zavisi od tajnog ključa. Dopunjena poruka je tako zaštićena od modifikacija. Primalac može testirati integritet dolazne poruke provjerom da li je isti MAC koji dobije iz pristigle poruke i MAC od pošiljaoca. Autentifikacijski kodovi poruka se mogu implementirati pomoću heš funkcija (eng. hash functions).

Digitalni potpis

Digitalni potpis zahtijeva metode javnog ključa (dva različita ključa), kao i kod klasičnih rukom pisanih potpisa, namjera im je pružiti autentičnost i neporecivost. Digitalni potpisi zavise od tajnog ključa potpisnika i može ih generisati samo ta osoba. Sa druge strane, svako može provjeriti da li je potpis validan primjenom javno poznatog algoritma za verifikaciju koji koristi javni ključ potpisnika. Ako Alice želi da potpiše poruku, ona sa tajnim ključem primenjuje algoritam potpisivanja i dobija potpis. Bob dobija potpis za poruku i može potom da izvrši verifikaciju potpisa sa javnim ključem od Alice.

Čitaj dalje: Kriptografija Heš funkcije

Kriptografija: Uvod

November 27, 2019 | SECURITY | No Comments

Kriptografija je nauka o držanju tajni u tajnosti. 

Pretpostavimo da Alice želi poslati poruku Bobu i koristi nesiguran komunikacijski kanal (računarsku mrežu ili telefonsku liniju). Postoji problem ako poruka sadrži povjerljive informacije. Poruku bi mogao presresti i pročitati prisluškivač, Eva. Ili u još gorem slučaju mogla bi presresti poruku i izmijeniti tako da Bob ne otkrije manipulaciju. Jedan cilj kriptografije je osigurati metode za sprečavanje takvih napada.

Poruka koja se prenosi – neki tekst, numerički podaci, izvršni program ili bilo koja druga vrsta informacija – naziva se otvorenim tekstom (eng. plaintext). Alice kriptuje plaintext u kriptovani tekst (eng. ciphertext) tajnim ključem. Kriptovani tekst se prenosi Bobu. Bob ponovno pretvara ciphertext plaintext sa dekripcijom. Da bi ga dekriptovao, Bobu je potreban tajni ključ za dekripciju. Protivnica Eva, može presresti kriptovani tekst. Međutim, kriptovanje bi trebalo garantovati tajnost i spriječiti da dobije bilo kakve informacije o plaintext-u iz promatranog ciphertext-a.

Simetrična enkripcija

Svaka metoda enkripcije ima algoritam enkripcije i algoritam dekripcije. U starijim metodama oba algoritma koriste isti tajni ključu. Ovaj ključ se koristi i za kriptovanje i za dekriptovanje. Stoga se ove metode nazivaju simetrične. Danas najpoznatije metode za simetričnu enkripciju su DES (Data Encryption Standard) i AES (Advanced Encryption Standard). Metoda za simetričnu enkripciju koja je stara preko 2000 godina, Cezarova šifra,  ima tajni ključ koji je pomak za 3.

ABCDEFGHIJKLMNOPQRSTUVWXYZ (Plain)
XYZABCDEFGHIJKLMNOPQRSTUVW (Cipher)

KLJUC JE U OPANKU (Plain)
HIGRZ GB R LMXKHR (Cipher)

Asimetrična enkripcija

Diffie i Hellman su objavili svoj poznati rad “New Directions in Cryptography” 1976. godine. Gdje su uveli revolucionarni koncept kriptografije javnog ključa (Public Key Cryptography). Osigurali su rješenje za višegodišnji problem razmjene tajnog ključa i ukazali put do digitalnog potpisa. Metode enkripcije javnim ključem su asimetrične. I u ovom slučaju svaki primatelj poruka ima par ključeva: javni ključ koji se objavljuje javno i privatni ključ koji se čuva u tajnosti. RSA (Rivest Shamir Adleman) i DSA (Digital Signature Algorithm) su dva najpopularnija asimetrična algoritma.

Ako Alice želi poslati poruku Bobu, ona kriptuje poruku pomoću Bobovog javnog ključa. Bob to dekriptuje koristeći svoj privatni ključ, koji je poznat samo njemu. PKC (Public Key Cryptography) metode zahtijevaju složenije računske operacije i manje su efikasne od klasičnih simetričnih metoda. Tako da se simetrične metode koriste za kriptovanje velike količine podataka. Prije primjene simetrične enkripcije, Alice i Bob se moraju dogovoriti o ključu. Da bi taj ključ sačuvali u tajnosti, potreban im je siguran komunikacijski kanal. Uobičajena je praksa da se u tu svrhu koristi kriptovanje javnim ključem.

Čitaj dalje: Kriptografija Ciljevi