Dobar dan! Mene zanima to jest palo mi je nešto na pamet :D. Bavim se programiranjem vec dobrih 3 godine i sada me zanima nešto. Svaka šifra ima neku vrstu enkripcije te poslije proces enkripcije ona se spremi negdje. Svjedoci smo da u današnjem vremenu postoji mnogo hakerskih napada na osjetljive podatke koji su nažalost većinom uspješni. E sada, zamislimo mi jednu kuglu kao geometrijsko tijelo naravno. I sada, odaberemo 3 točke bilo gdje u kugli ili na površini. Kada te tri točke spojimo dobijamo dio prostora u kugli. I sada lozinka je vjerovatnoca da ta povrsina i prostor u kugli zauzima i srediste. Na to dodamo hipoteticki da se kugla vrti konstantom brzinom. Zamislimo jos koordinatni sustav na jednoj strani kugle slova ABCD itd. na drugoj brojevi 1234 itd. Kada se kugla vrti sifra se mijenja to jest sada je jedna tocka A2 dok za 0.1 sec je F9. Sifra se mijenja samo u podatcima na "papiru" dok u stvarnosti ostaje ista. Vaša razmišljanja?
Logika lozinki i nove koncepti samih
- poruka: 15
- |
- čitano: 3.883
- |
- moderatori:
Lazarus Long, XXX-Man, vincimus
- +/- sve poruke
- ravni prikaz
- starije poruke gore
Itko?
Lozinke se obicno hashiraju, ne znam zasto bi se itko mucio s enkripcijom. A vec preko 10 godina stari SHA2 je dovoljno siguran za... pa, uglavnom bilo sto. Koga veseli, postoje i teoretski sigurniji hashevi.
Da, no nije li svijet sigurniji s više podjednako dobrih,boljih ili lošijih algoritama? Recimo kada je izlazio PHP 7.1 cijeli PHP community je hvalio poboljšani password_hash kao funkciju najboljeg jezika za sigurni kod u zadnjih 10 godina. Nakon 2 dana od puštanja verzije online Rusi već probili algoritam.
To kada imaš isti rezultat hash funkcije s različitim lozinkama, zove se kolizija i jako je loša stvar s stajališta sigurnosti.
pokušavaš reinventati toplu vodu.. :) .. odgovor ti je u problemu tri vojske, dat već stoljećima prije..
-da bi svije strane komunicirale moraju imati ključ.. uz to, čim ne kontroliraš čitav kanal od a-do-b, tad je sve moguće MinM, prisluškivanje.. i stvar je samo u raspoloživim resursima/snazi tj vremenu za probijanje.
-ne postoji neprobojno/šifra/vrata.. pitanje je samo koliko vremena treba, RT ili mjeseci i ako je vrijeme dovoljno dugo, tad je praktički probijanje besmisleno jer tajna poruka koju ćeš dešifrirati nakon nekoliko mjeseci-godina-stoljeća nije više važna (obsolete).
-to danas rade superračunala, farme, mineri/seti.. dok se složenost (nrp duljina bitova enkricije) poveća s npr 64-na-128.. 512-1024.. itd. linearno kako raste cpu-gpu snaga tj mogućnost dekriptiranja u RTu.
-kao vrata-sef-zid banke, nije cilj napraviti neprobojno, jer je nemoguće.. nego dovoljno dugo amortizirati-usporiti do dolaska policije, ili ovisno o trošku/šteti, može biti i bez ikakve zaštite (to procjenjuje vlasnik kao vlastiti rizik, nevažno jel novac ili neki podatak u pitanju, isto pravilo).
edit: + neovisno ako i izmisliš 'super' enkripciju/zaštitu.. recimo (kolokvijalno) neprobojno, moraš dati 'servisni' ključ nadležnima (policija-država-institucije..) jer takva su pravila igre, inače nisi na tržištu (ili radiš direktno za njih).
-jer tako funkcioniraju države/ovlašteni nadzor (i igrokazi npr oko applea), sva mrežna oprema, wifi, ako želi na tržište mora udovoljiti regulatorima.. dok su npr CPU strateška roba i ne možeš samo tako izvoziti/prodavati hitech opremu. Jer to je tako..
-povjerenje se stječe.. ti bez obzira kakav algoritam imaš, ga ne možeš imati unaprijed-bjanko.. alternativa je npr FOSS.. open, svima na uvid. Tad kad svatko zna algoritam, tad nema nečeg skrivenog. Tad nije 'crna kutija' nego algoritam kao npr PGP i ostali. To nisu tajne stvari, tajan je samo ključ, konkretna šifra, komunikacija-sadržaj (ne tehnologija, koja ako nije dokumentirana i dostupna barem na uvid, nije ništa.. mambo-đambo.. i najčešće muljaža).
edit: snaga algoritma je provjerljiva, bruteforce (+ dict.) .. i zna se koliko permutacija može imati neka znamenka, npr ako imaš šifru duljine 4 znaka (numer, letter x2 uper/low, spec, ..) recimo pin samo 4 broja-znamenke.. zna se koliko pokušaja je potrebno, od nula 0-do 9999 .. je 10.000 i vrieme koje je potrebno soft/PCju da to odradi. Pin bi se probio u sekundi, zato se automatski zaključa uređaj/kartica nakon 3 promašaja. Dovoljno dobra metoda, odnosno, možeš probijati mjesec dana i odvrtio si tek desetinu pokušaja (3x dan).. za godinu ako vlasnik nije ništa primijetio tek imaš pin, statistički je to 50% mogućih permutacija, tj recimo pola godine za primjer pina. U to vrijeme banka ima dovoljno alarma za reakciju, tj kartica si se u tom primjeru zaključa 100/50 dana za redom.. a postoji i mogućnost da iz prve pogodiš, kao jackpot. .. no tad je stvarno bolje igrati loto (ako imaš takvu sreću).
sad uzmi koliko je permutacija u npr 32bitnom ključu, pa probaj izračunati kiliko je u 512 ili 1024 bitnom, koriste se i 2048. Običan juzer jednostavno neće u nekom realnom-smislenom vremenu pogoditi key, ni na sreću.. jer je šansa daleko manja nego loto, dok 'država' iz tog razloga, inzistira na dijelu keya (recimo polovica).. i oni to mogu u RT, npr pratiti svaki mobitel, uz naravno nalog suda. Posjedovanjem dijela ključa, nema narušavanja privatnosti itd.. a država je sigurna da ako želi, može.. ili već neki od takvih kombinacija (vjerojatno već shvaćaš koncept..).
Pa dobro, jesi li svjesan koliko ima radova koji analiziraju te algoritme i njihovu sigurnost. Znaš li za što se sve koriste hash funkcije? Jesi li procitao barem jednu analizu?