Objavljeno u kategoriji: Enkripcija
Kada učimo o šifrovanju i važnosti jakih lozinki, važno je takođe razumeti kako se te lozinke čuvaju na serverima veb sajtova. Problem je što, kada jednom pošaljete podatke serveru, vi više nemate kontrolu nad njima – osim ako niste vlasnik tog servera. Zbog toga je ključno da vlasnici servera čuvaju što manje informacija, i to isključivo u nečitljivom, šifrovanom obliku.
Napadi poput SQL injekcija i kompromitovanja baza podataka mogu izložiti podatke u običnom tekstu, a takvi incidenti su, nažalost, prilično česti. Heširanje je sličan proces kao šifrovanje, ali se koristi konkretno za bezbedno skladištenje lozinki.
Kada se registrujete na većini veb sajtova, oni ne bi trebalo da čuvaju vašu lozinku u čistom obliku. Umesto toga, koriste heš algoritme (npr. SHA256, SHA512) da bi „pomešali“ lozinku u nepovratni niz karaktera. Ovaj niz se zatim čuva na serveru. Kada se sledeći put prijavite, vaša lozinka se ponovo hešira na isti način i upoređuje sa već sačuvanim hešom. Ako se poklope – prijava je uspešna.
Dobar bezbednosni sistem takođe uključuje key stretching – metod produžavanja vremena između pokušaja upada, često pomoću algoritma kao što je PBKDF2 (Password-Based Key Derivation Function 2). On otežava napade grubom silom jer zahteva više računarske snage i vremena za svaku iteraciju.
Takođe se koristi i salt – slučajni niz karaktera koji se dodaje lozinki pre heširanja. Na taj način se onemogućavaju napadi uz pomoć rečnika (dictionary attacks), jer dve identične lozinke imaju različite heš vrednosti ako imaju različite salt vrednosti.
Za poređenje, evo nekoliko primera broja iteracija koje koriste poznate aplikacije:
- LastPass – 5.000 (na strani klijenta) + još 100.000 (na strani servera)
- TrueCrypt – 1.000
- VeraCrypt – 500.000
- FileVault2 (macOS) – 41.000
Zaključak: vaša lozinka nikada ne bi trebalo da se čuva u čistom tekstu. Uvek se oslanjajte na servise koji koriste savremene metode heširanja, dodatke poput salta i višestruke iteracije kako bi zaštitili vašu digitalnu bezbednost.