nav_dugme codeBlog codeBlog
  • početna Početna stranica
  • Sačuvani članci Sačuvani članci
  • Učionica
  • Saveti
  • Zanimljivosti
  • Kontakt

Kako napraviti dobru lozinku

Facebook LinkedIn Twitter Viber WhatsApp E-mail
zoom_plus zoom_minus bookmark

Uvod

Ako razmislimo o efikasnosti lozinki koje koristimo, prvo što ćemo morati da uvidimo, je to da dobre lozinke nisu jednostavne i kratke, a da kratke i jednostavne lozinke nisu dobre.

Najbolja lozinka je nasumična niska znakova veće dužine, nalik na xA#!dFRx17121M@VxDaS/%, sa kojom će se pomučiti svako ko želi da neovlašćeno pristupi tuđim podacima, ali (ako koristimo takvu lozinku) - pomučićemo se i mi sami.

Potpuno nasumične lozinke teško se pamte (i lako zaboravljaju - ako smo se uopšte i potrudili da ih upamtimo), a ako se pridržavamo pravila koja navode da za svaki nalog (email, Instagram, Facebook, desktop računar, laptop ....), treba koristiti različite lozinke, koje pri tom ne treba da zapisujemo (pogotovo ne u elektronskom obliku), lako je uvideti da korišćenje dugačkih i nasumičnih lozinki podosta "napreže vijuge".

Međutim, pošto nam dobre lozinke trebaju u svakodnevnim situacijama, pokušaćemo da iznađemo kreativan pristup za kreiranje i pamćenje dobrih lozinki, jer nam u suprotnom ostaje: ili da koristimo slabe lozinke (što naravno nikako ne preporučujemo!), ili da pamtimo komplikovane lozinke (to već ostavljamo vama).

Opšte odlike neadekvatnih lozinki

Pre nego što ponudimo (relativno) jednostavna rešenja za kreiranje (prilično) dobrih lozinki, objasnićemo zašto su dobre lozinke zapravo bitne i šta su odlike dobrih lozinki - tako što ćemo se prvo pozabaviti neadekvatnim obrascima za formiranje lozinki (i predočiti vam zašto takve obrasce treba izbegavati).

Ukoliko neko pokušava da neovlašćeno dođe do tuđe lozinke , najverovatnije će koristiti jednu od sledeće tri metode: pokušaj poklapanja sa uobičajenim lozinkama (i obrascima za formiranje lozinki), korišćenje informacija o ličnosti čiju lozinku pokušava da preuzme ili (kao najmanje efikasan i najmanje popularan način), metodu grube sile.

Za početak, razmotrićemo zašto lozinka treba da ima što više znakova (naravno, u granicama razuma).

Premali broj znakova

Često se u računarskim sistemima (e-mail nalozi, društvene mreže i slično), srećemo sa formularima za registraciju koji od korisnika zahtevaju da izaberu lozinku sa najmanje osam znakova, od kojih je bar jedan cifra (a ponegde se zahteva i upotreba bar jednog velikog slova, pa čak i specijalnih znakova) - i nije preterano reći da mnogi korisnici smatraju da je ispunjavanje navedenih zahteva, blagi vid uznemiravanja (koji naizgled nema ponetu).

Međutim, poenta (naravno) postoji.

Najteži način za obijanje lozinki, metoda 'grube sile' (eng. brute force), podrazumeva isprobavanje svih mogućih kombinacija, a mi ćemo u našem primeru računati da se za isprobavanje jedne kombinacije troši 10-7 sekundi (odnosno 0.1 mikrosekunda), to jest, da se u jednoj sekundi može isprobati 10 miliona kombinacija.

Pitanje je: koliko je vremena potrebno za isprobavanje tipične lozinke (a shodno brzini koja je navedena u prethodnom pasusu, deluje da će sve biti izvedeno za tili čas)?!

Možda ....

Ukoliko je dužina lozinke 4 (znaka) i pri tom koristimo samo cifre (kojih ima 10), dolazimo do sledeće računice:

		
Broj mogućih lozinki: 10 * 10 * 10 * 10 = 10000
Vreme za pretragu (u sekundama): 10000 / 10000000 = 1/1000s (1 milisekunda)
		
	
Slika 1. - Broj mogućih kombinacija za četiri mesta i deset mogućih znakova.

Ukoliko se neko (od mlađih čitalaca), dvoumi oko računice, recimo da se svako mesto može kombinovati sa bilo kojim drugim mestom, tako da u obzir dođe bilo koji od (u ovom slučaju 10) znakova, na bilo kom od mesta.

Za raspon (broja mesta) od dva do četiri, važi sledeće:

		
Za 2 mesta: 10 (prvo mesto)    * 10 (drugo mesto) - ukupno 100 kombinacija
Za 3 mesta: 10 (treće mesto)   * 100 (prva dva)   - ukupno 1000 kombinacija
Za 4 mesta: 10 (četvrto mesto) * 1000 (prva tri)  - ukupno 10000 kombinacija
		
	
Slika 2. - Četiri mesta i deset znakova - dodatno objašnjenje za mlađe čitaoce.

U svakom slučaju, odmah je jasno da mali broj mesta u šifri i mali broj mogućih znakova za svako mesto, nikako nije "dobitna kombinacija" (nije pošalica).

Ukoliko povećamo broj mesta na osam, dobijamo:

		
Broj mogućih lozinki:
10 * 10 * 10 * 10 * 10 * 10 * 10 * 10 = 100000000

Vreme za pretragu (u sekundama):
100000000 / 10000000 = 10s
		
	
Slika 3. - Broj mogućih kombinacija za osam mesta i deset znakova.

Ako cifre zamenimo slovima, stvari postaju mnogo .... bolje ili gore (u zavisnosti od toga da li lozinku pokušavate da 'obijete', ili da je zaštitite). Ukoliko umesto cifara koristimo slova engleskog alfabeta (26 znakova), dobijamo:

		
Broj mogućih lozinki:
26 * 26 * 26 * 26 * 26 * 26 * 26 * 26 = 208827064576

Vreme za pretragu (u sekundama):
208827064576 / 10000000 = ~20882s (nepunih 6 sati)
		
	
Slika 4. - Broj mogućih kombinacija za 8 mesta i 26 znakova.

Ako na kraju dodamo velika slova (+ 26 znakova), specijalne znakove (neka bude + 10 znakova, mada ih svakako može biti i više od 10) i vratimo cifre (+ 10 znakova), dobićemo 72 moguća znaka za svako mesto i sledeći rezultat po pitanju vremena potrebnog za isprobavanje:

		
Broj mogućih lozinki:
72 * 72 * 72 * 72 * 72 * 72 * 72 * 72 = 722204136308736

Vreme za pretragu (u sekundama):
722204136308736 / 10000000 = ~72220413s
Praktično - ~2 godine i 3.5 meseca
		
	
Slika 5. - Broj mogućih kombinacija za 8 mesta i 72 znaka.

Dakle, 'obijanje' metodom grube sile nije nimalo praktičan metod ukoliko lozinka ima iole pristojnu dužinu.

Međutim, koliko god to neverovatno zvuči, u većini slučajeva, ljudi praktično sami poklanjaju svoje lozinke ....

Lični podaci i suviše jednostavni obrasci

Poslednje što smo naveli, na prvi pogled zvuči neverovatno, jer niko naravno neće nekom nepoznatom doslovno pokloniti lozinku, ali, situacija u praksi često (nažalost), nije ni mnogo daleko od 'doslovnog poklanjanja'.

Kada se nedovoljno upućeni korisnici upoznaju sa prethodno navedenim pravilima o dužini lozinki (i zapravo ih uvaže), pri kreiranju lozinki obično će izabrati obrazac koji podrazumeva korišćenje ličnih podataka, koji su lako dostupni.

"To ne radimo mi i naši poznanici, to radi neko drugi!" Možda?! I nadamo se da je tako. Međutim, znamo da je "na terenu" situacija sasvim drugačija (i zato i pišemo ovakav tekst). :)

Ako vaša lozinka nije više "223", već "jecarex89", to jeste malo bolje, ali jedini kriterijum koji zadovoljava druga navedena lozinka je minimalna dužina: ako se Vaša supruga (majka, sestra, devojka), zove Jelena, Rex je Vaš pas, a 1989. je godina Vašeg rođenja, onda je "tajna" šifra pala već na drugom koraku (umesto 'baš odmah').

Naivno je poverovati da neko ko pokušava da dođe do šifre neovlašćeno, neće uzeti u obzir šifru koja je formirana po gornjem obrascu, jer (da vas razočaramo) - hoće, a pre svega, iza takvih pokušaja neće biti neko ko to radi ručno već, kao što smo ranije nagovestili, automatizovan sistem koji lozinke isprobava izrazito velikom brzinom.

Prilično poražavajuće statistike (u koje autor ovih redova na nekom nivou i dalje odbija da poveruje), navode da ogroman procenat ljudi (pa čak i administratora mrežnih sistema i sličnih pojedinaca koji bi trebalo da "znaju bolje"), koristi krajnje jednostavne i lako "provaljive" lozinke, kao što su "123", "pass", "lozinka", zatim lozinke koje se poklapaju sa korisničkim imenom (doduše, sistemi za registraciju obično odbijaju da kreiraju nalog u ovakvoj situaciji), kao i druge slične (najjednostavnije) obrasce.

		
123    - ako vam određeni sistem za registraciju
admin    uopšte i dozvoli korišćenje neke od 
pass     navedenih lozinki, efekat je kao da ste
abc      na stanu ostavili otključana vrata

joca1988  -  čak i ako ovo nisu Vaši podaci (ili podaci
             nekoga Vama bliskog), ovakav obrazac je
             suviše jednostavan

superman1978  -  Možda Superman nije vaš omiljeni film, ali,
                 programi za automatsko 'obijanje' lozinki
                 su (odavno) 'istrenirani' za prepoznavanje
                 ovakvih jednostavnih obrazaca

4kv4m3n  -  malo bolje od prethodnog, ali -
            i dalje ne vredi

12345678  -  da se vratimo na "otključana vrata" ....
             možda ste ovakvu lozinku izabrali namerno,
             u želji da "zbunite protivnika" i, ako bi se
             desilo da neko pokuša da obije lozinku ručno,
             moglo bi mu pasti na pamet da ni ne pokuša da
             isproba ovakav obrazac ("haha, ko je lud da
             stavi lozinku 123?!"), međutim, mnogo je
             verovatnije da će se "pokušajima" baviti
             automatizovan računarski sistem i onda će
             ovakva lozinka biti isprobana među prvima i
             'pašće' za manje od nekoliko ms
		
	
Slika 6. - Primeri neadekvatnih lozinki.

Situacija je obično takva da, iako se ispostavi da određeni korisnik (ipak) nije koristio niske "123" ili "lozinka" kao lozinku, moguće je da se nevoljno "odao" na drugi način (da se vratimo na primer koji smo prethodno izneli) ....

  • na Fejsbuku stoji status koji ukazuje na to s kim je korisnik u braku
  • na Instagramu stoji zajednička slika sa kućnim ljubimcem (koji je uredno potpisan imenom)
  • na profilima sa društvenih mreža, stoji i datum rođenja (sa godištem koje je korišćeno kao deo lozinke)

Summa summarum (pretpostavljamo da je sada skroz jasno na šta ciljamo): iako mnogi korisnici ne poklanjaju lozinke doslovno - skoro da je tako.

Pravila za definisanje dobrih lozinki

Sada kada smo vas (nadamo se), ubedili u to da se sa lozinkama ipak 'ne treba šaliti', vraćamo se na početak: kako kreirati dobru lozinku? Šta je (uopšte) dobra lozinka? Koje su osnovne odlike dobrih lozinki? Postoji li možda jedna osobina koja određuje dobre lozinke?

Zapravo postoji: lozinke koje nisu adekvatne (kao što smo videli) - ili su suviše jednostavne u osnovnom tehničkom smislu (premali broj znakova) - ili su formulisane po jednostavnim obrascima koji se lako prepoznaju, i stoga se može reći da je njihova zajednička osobina - predvidljivost.

Nije onda teško zaključiti da je glavna osobina dobrih lozinki (suprotno navedenom) - nasumičnost.

Nasumičnost se najbolje postiže (to smo videli na početku), generisanjem i korišćenjem doslovno nasumičnih niski znakova, ali, takve lozinke se onda moraju čuvati na adekvatan način (preko posebnog softvera za sigurno skladištenje lozinki, ili u sefovima i sl), jer se u slučaju neadekvatnog čuvanja poništava svrha kvalitetnih lozinki.

Međutim, moramo biti praktični i ne možemo ipak očekivati da će se većina korisnika (baš) toliko truditi oko svojih lozinki za naloge koji se koriste svakodnevno, pa je stoga (po mogućnosti), potrebno iznaći metod koji pruža okvirno 90% sigurnosti koju nude doslovno nasumične šifre, uz ~10% uloženog truda.

Rešenje koje vam predlažemo, podrazumeva da "smislite priču" po jednom od sledeća dva obrasca:.

  • kraća priča od nekoliko nepovezanih reči (koje ćete koristiti u celosti)
  • duža priča - iz koje ćete izvući samo početna slova upotrebljenih reči

Za varijantu sa nekoliko nepovezanih reči, savetujemo da upotrebite bar četiri reči, tako da ukupna dužina bude bar 15 znakova (još bolje i preporučljivije je 6/20, ako ste iole raspoloženi da pamtite), naravno, tako da nivo očigledne povezanosti među rečima bude što manji, ali da obrazac bude takav da ga vi sami možete upamtiti:

		
rumenijunskikarburatorgledabalet
		
	
Slika 7. - Primer lozinke koja se dobija vezivanjem naizgled nepovezanih pojmova.

Jeste, čudno je i nepovezano - ali upravo to je i poenta * (visok nivo nasumičnosti).

Ukoliko se malo potrudimo i zapamtimo ovakvu 'čudnu konstrukciju', eto nam sasvim dobre lozinke od preko 30 znakova.

* Mnoga naučna istraživanja govore u prilog tome da ljudski mozak lakše pamti neuobičajene stvari i na nivou intuicije - nije nimalo teško poverovati u takvu tvrdnju (slučajnog prolaznika koga smo videli na ulici, koji je na sebi imao "drečavi" gornji deo trenerke u tri boje i "dva broja veće" pantalone, gotovo sigurno ćemo upamtiti mnogo lakše od osobe koja je pored nas prošla u svetlo plavim farmerkama i crnoj majici).

Veliki broj znakova u lozinki koju smo prethodno "konstruisali", skoro da garantuje da pokušaj pronalaženja znak-po-znak neće uspeti, ali zato (ni u kom slučaju), ne smemo tvrditi da se prikazana lozinka ne može probiti pokušajima poklapanja reč-po-reč (da, naravno da se neko i toga dosetio).

Međutim, pojedinačnih reči (inače) ima jako puno (a valja uzeti u obzir i različite padežne oblike imenica, glagolska vremena i sl), pa je broj kombinacija i u ovom slučaju izuzetno velik, a može se sve "začiniti" i namernim "greškama" (i naravno, kombinacijama velikih i malih slova i dodavanjem specijalnih znakova):

		
~|=rumen#junskikarbuRatorglEdabALet!
		
	
Slika 8. - Lozinka sa prethodne slike, donekle izmenjena i dopunjena specijalnim znakovima.

Gore prikazana lozinka je već prilično dobra, ali budući da je u pitanju rečenica koja je (u najvećoj meri ipak gramatički ispravna), moglo bi se reći da nije dovoljno nasumična. *

* Moglo bi, ali - lozinka koju smo videli je veoma nasumična i u praksi se (gotovo sigurno), može 'probiti' samo softverskim putem.

(Osim ako se niste "zamerili" nekome koga odlikuje koeficijent inteligencije sličan prosečnoj visini člana muške odbojkaške reprezentacije i izuzetna intuicija, ali - i tada bi bilo veoma, veoma teško.)

Ako želimo bolju lozinku po sličnom obrascu, preostaje nam jedino da "nabacamo" nekoliko nasumičnih, međusobno nepovezanih reči, koje ne formiraju gramatički prepoznatljiv obrazac (na primer, "pasteleskopbilismouradiookretan"), međutim, takvi obrasci nisu (ni iz daleka) jednostavni za pamćenje.

Umesto toga, bolje je da primenimo pristup koji tipično proizvodi kraće, ali zapravo nasumičnije lozinke i podrazumeva da smislimo nasumičnu priču i potom za lozinku izaberemo prva slova svih reči (uz koju izmenu i dopunu):

		
# Prošle godine u ovo vreme, prvi put smo uživo i izbliza
# videli dva glumca u viteškim kostimima

pgu0wpPSu1~v2guv%k
		
	
Slika 9. - Lozinka koja nastaje kreiranjem kraće priče i korišćenjem samo prvih slova u rečima (uz poneku izmenu i poneku dopunu).

Iako su ovakve lozinke kraće u odnos na prvi metod, i u ovom slučaju preporučujemo bar 10-12 znakova.

Lozinka je sigurnija, zahteva malo veće angažovanje u odnosu na pamtljive kombinacije nasumičnih reči (ali zato, mnogo manje angažovanja u odnosu na potpuno nasumične kombinacije reči - a pogotovo u odnosu na doslovno nasumične niske), pa je potrebno odmeriti kada treba koristiti prvi, a kada drugi pristup.

Mogli bismo reći da je prva kategorija lozinki ("rumeni karburatori"), krajnje primerena za obične korisničke naloge na mrežnim računarima, web mail, društvene mreže i sl, dok bismo za kritičnije namene kao što su administratorski nalozi na mrežnim računarima, platni servisi i sl, svakako radije koristili metodu sa dužom pričom i početnim slovima (ako ne i neku potpuno nasumičnu lozinku).

Na kraju, mali rezime osobina koje odlikuju dobre lozinke:

  • minimum 8 znakova (ali, to je "baš minimum" - preporučujemo bar 10 ili 12)
  • što veći nivo nasumičnosti
  • birajte nasumične kombinacije reči koje se lako pamte, ali nemaju veze jedna sa drugom - i pogotovo ne sa vama lično (ili smislite kraću priču, pa upotrebite samo početna slova)
  • dodajte bar poneki specijalni znak ponegde (i zamenite poneko malo slovo velikim)

Za kraj ....

Pre nego što završimo, jedna molba za sve čitaoce (nadamo se da se podrazumeva, a ako ne, spomenućemo "naglas" za svaki slučaj): nemojte koristiti nijednu od lozinki koje smo navodili u članku, niti druge lozinke koje ste negde videli (ako ste ih videli Vi, video ih je i "neko drugi").

Uz prethodnu napomenu, ostavljamo vas da smislite svoje lozinke koje neće biti teške za pamćenje, ali će vam doneti znatno viši nivo sigurnosti u odnosu na lozinke kakve većina korisnika (nažalost) obično upotrebljava.

Autor članka Nikola Vukićević Za web portal www.codeblog.rs
Napomena: Tekstovi, slike, web aplikacije i svi ostali sadržaji na sajtu www.codeblog.rs (osim u slučajevima gde je drugačije navedeno) predstavljaju intelektualnu svojinu autora sajta www.codeblog.rs i zabranjeno je njihovo korišćenje na drugim sajtovima i štampanim medijima, kao i bilo kakvo drugo korišćenje u komercijalne svrhe, bez eksplicitnog pismenog odobrenja autora.
© 2020-2023. Sva prava zadržana.
Facebook LinkedIn Twitter Viber WhatsApp E-mail
početna Početna > Članci > Kako napraviti dobru lozinku

Info & povezani članci Info o članku - dugme

Info

trejler_sat Datum objave: 20.10.2020.

trejler_dokument Jezici: ----

trejler_teg_narandzasti Težina: 5/10

Povezani članci

Povezani članci

Svi članci
If debugging is the process of removing software bugs, then programming must be the process of putting them in.
Edsger Dijkstra
codeBlog codeBlog
Sajt posvećen popularizaciji kulture i veštine programiranja.
Napomena: Tekstovi i slike na sajtu www.codeblog.rs (osim u slučajevima, gde je drugačije navedeno) predstavljaju intelektualnu svojinu autora sajta www.codeblog.rs i zabranjeno je njihovo korišćenje na drugim sajtovima i štampanim medijima, kao i bilo kakvo drugo korišćenje u komercijalne svrhe, bez eksplicitnog odobrenja autora.
© 2020-2023. Sva prava zadržana.
Facebook - logo
Instagram - logo
LinkedIn - logo
Twitter - logo
E-mail
Naslovna
   •
Uslovi korišćenja
   •
Obaveštenja
   •
FAQ
   •
Kontakt