Asimetrična vs Simetrična Kriptografija
🎯 Šta ćeš naučiti
- Razliku između simetrične i asimetrične kriptografije
- Kako funkcioniše tajni (shared) ključ
- Kako funkcionišu javni i privatni ključevi
- Kada se koristi koja metoda u praksi
- Zašto se obe metode često kombinuju u modernim sistemima
🔐 Simetrična kriptografija - Jedan ključ za sve
Kod simetrične kriptografije koristi se isti ključ za šifrovanje i dešifrovanje podataka.
Kako funkcioniše?
1. Ana šifruje poruku tajnim ključem "abc123"
Poruka: "Vidimo se sutra" → Šifrovano: "x7#mK9$pL2@qN"
2. Marko prima šifrovanu poruku
3. Marko dešifruje sa istim ključem "abc123"
Šifrovano: "x7#mK9$pL2@qN" → Poruka: "Vidimo se sutra"
📊 Popularni algoritmi:
- AES (Advanced Encryption Standard) - najkorišćeniji danas
- ChaCha20 - moderni, brz algoritam
- 3DES - stariji, polako se povlači
✅ Prednosti:
- Izuzetno brza - može da šifruje gigabajte podataka u sekundi
- Efikasna - idealna za velike fajlove (video, baze podataka)
- Jednostavna - matematički manje složena
❌ Najveći problem:
Kako bezbedno podeliti ključ?
Ako Ana i Marko žele da razmenjuju šifrovane poruke, moraju prvo da se nekako dogovore oko tajnog ključa. Ali kako ga poslati kroz nesiguran kanal (internet) a da ga niko ne uhvati?
💡 Realan primer: Kada šifruješ hard disk sa BitLocker/VeraCrypt, koristiš simetričnu kriptografiju. Passwordom zaključavaš/otključavaš disk.
🔑 Asimetrična kriptografija - Par ključeva
Asimetrična kriptografija koristi dva različita ključa koji matematički idu zajedno:
- Javni ključ (public key) - može se deliti sa svima
- Privatni ključ (private key) - mora ostati tajan
Magija matematike:
Ono što šifruješ JAVNIM ključem → može da se dešifruje samo PRIVATNIM
Ono što šifruješ PRIVATNIM ključem → može da se dešifruje samo JAVNIM
Kako to izgleda u praksi?
Scenario: Ana šalje tajnu poruku Marku
1. Marko generiše par ključeva:
- Javni ključ: OBJAVI_NA_SAJTU_123
- Privatni ključ: DRZI_U_TAJNOSTI_456
2. Marko objavi javni ključ (npr. na svom sajtu)
3. Ana preuzme Markov javni ključ
4. Ana šifruje poruku Markovim javnim ključem:
"Sastanak u 15h" + OBJAVI_NA_SAJTU_123 = "k8$xP2#mQ9..."
5. Samo Marko može da dešifruje jer ima privatni ključ:
"k8$xP2#mQ9..." + DRZI_U_TAJNOSTI_456 = "Sastanak u 15h"
📊 Popularni algoritmi:
- RSA - najpoznatiji, koristi se decenijama
- ECC (Elliptic Curve) - moderniji, krući ključevi za istu sigurnost
- Diffie-Hellman - za razmenu ključeva
✅ Prednosti:
- Nema potrebe za tajnom razmenom ključa
- Omogućava digitalne potpise (dokaz ko je poslao poruku)
- Skalabilna - možeš komunicirati sa hiljadama ljudi bez deljenja tajni
❌ Mane:
- Spora - 100-1000x sporija od simetrične
- Nije praktična za velike podatke - šifrovanje 1GB fajla bi trajalo predugo
- Veličina ključa - RSA ključevi su 2048-4096 bit (veliki)
💡 Realan primer: Kada se konektuješ na HTTPS sajt (npr. Facebook), server ti šalje svoj javni ključ. Ti njime šifruješ podatke koje samo server može pročitati.
🔄 Zašto se koriste zajedno?
Problem: - Asimetrična je sigurna ali spora - Simetrična je brza ali ima problem sa razmeom ključa
Rešenje: Hibridna kriptografija 🎯
Moderni sistemi (HTTPS, VPN, Signal, WhatsApp) rade ovako:
Faza 1: ASIMETRIČNA kriptografija (par sekundi)
1. Klijent i server razmene javne ključeve
2. Dogovore se oko jednog tajnog ključa (session key)
3. Taj ključ šifruju asimetrično
Faza 2: SIMETRIČNA kriptografija (ceo razgovor)
4. Svu dalju komunikaciju šifruju brzim simetričnim algoritmom
5. Koriste session key iz faze 1
Primer - HTTPS konekcija:
1. Otvoriš facebook.com
2. (ASIMETRIČNA) Server ti pošalje javni ključ (SSL/TLS certifikat)
3. (ASIMETRIČNA) Dogovorite se oko tajnog ključa (handshake)
4. (SIMETRIČNA) Sav sadržaj (slike, poruke, feed) se šifruje AES-om
Najbolje od oba sveta: - Bezbedna razmena ključa (asimetrična) - Brzo šifrovanje podataka (simetrična)
📊 Detaljno poređenje
| Karakteristika | Simetrična | Asimetrična |
|---|---|---|
| Broj ključeva | 1 (deli se između strana) | 2 (javni + privatni) |
| Brzina | ⚡ Vrlo brza | 🐢 Sporija (100-1000x) |
| Razmena ključa | Problematična | Laka i sigurna |
| Veličina ključa | 128-256 bit | 2048-4096 bit |
| Svrha | Šifrovanje podataka | Razmena ključeva, potpisi |
| Primeri | AES, ChaCha20, 3DES | RSA, ECC, DH |
| Koristi se za | Fajlove, diskove, stream | Autentifikaciju, key exchange |
🏠 Analogija iz života
Simetrična kriptografija = Sef sa jednim ključem
Problem: Imaš sef kod kuće. Želiš da prijatelj stavi nešto u njega.
Rešenje: Moraš mu dati kopiju ključa.
Rizik: Šta ako neko presretne ključ dok ga šalješ?
Asimetrična kriptografija = Sanduče sa otvorenom bravom
Problem: Želiš primati tajne poruke od ljudi.
Rešenje: Postaviš sanduče sa bravom (ali otključanom).
- Svako može da baci poruku i zaključa bravu
- Samo ti imaš ključ da je otvoriš
Rizik: Nema ga! Brava je napravljena tako da samo tvoj ključ odgovara.
💻 Praktični primeri iz svakodnevice
HTTPS (Web browsing)
Asimetrična: Razmena ključeva (TLS handshake)
↓
Simetrična: Ceo web sadržaj (AES)
WhatsApp/Signal (Poruke)
Asimetrična: Dogovor oko sesije (ECC)
↓
Simetrična: Šifrovanje poruka (AES)
SSH (Remote pristup serveru)
Asimetrična: Autentifikacija (RSA/Ed25519)
↓
Simetrična: Komande i output (AES)
WiFi WPA2/WPA3
Asimetrična: Initial handshake
↓
Simetrična: Sav internet saobraćaj (AES)
Šifrovanje hard diska
Samo simetrična: AES
(Nema razmene ključa - ti unesiš password)
🎓 Ključni zaključci
✅ Simetrična kriptografija:
- Idealna za brzinu i velike podatke
- Problem: kako bezbedno podeliti ključ?
- Koristi se za: fajlove, diskove, stream podatke
✅ Asimetrična kriptografija:
- Idealna za bezbednu razmenu i autentifikaciju
- Problem: spora i nepraktična za velike podatke
- Koristi se za: razmena ključeva, digitalni potpisi
✅ Zajedno:
- Moderni sistemi UVEK koriste obe
- Asimetrična rešava problem razmene
- Simetrična omogućava brzinu
- Kombinacija = sigurnost + performanse
✔️ Završetak Lekcije
Ova lekcija nema proveru znanja. Kliknite na dugme ispod da je označite kao završenu.