Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> sila hasla a funkcje hashujace plus sol
universalStudio
post 6.11.2016, 12:49:58
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 13.11.2014

Ostrzeżenie: (0%)
-----


zastanawiam sie dlaczego serwisy czesto wskazuja aby tworzyc dlugie hasla skoro taki serwis moze do nawet krotkiego hasla dodawac sol nastepnie wszystko mieszac w sha i md5 i dzieki temu jakosc hasla nie powinna miec znaczenia.
Oczywiscie pomijam teraz kwestie wiekszego prawdopodobienstwa odgadniecia hasla po przez nieduze kombinacje znakow (bo aktaualnie niemal wszystkie serwisy maja zabezpieczenie do kilku prob nieudanych co skutecznie chyba uniemozliwia kombinarotyke). Mam tu na mysli sytuacje gdzie np wyciekaja zaszyfrowane/wymieszane hasla juz z dodatakmi soli, wiec wystarczy aby sol byla odpowiednio dluga i juz nie powinno byc mozliwosci rozszyfrowania takiego hasla w rozsadnym czasie...

Jak wy uwazacie?
Go to the top of the page
+Quote Post
viking
post 6.11.2016, 14:16:57
Post #2





Grupa: Zarejestrowani
Postów: 5 363
Pomógł: 909
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Czytałem kiedyś badania że długość hasła w żaden sposób nie wpływa na bezpieczeństwo a wręcz jest negatywna (jakiś losowy ciąg znaków jest trudno zapamiętać zatem jest on gdzieś zapisany na komputerze / telefonie co jest dodatkową luką). To raczej kwestia żeby nie tworzyć haseł oczywistych: haslo123, jakieś daty urodzin, imię itd.


--------------------
Go to the top of the page
+Quote Post
Dejmien_85
post 6.11.2016, 14:37:22
Post #3





Grupa: Zarejestrowani
Postów: 251
Pomógł: 23
Dołączył: 23.04.2013

Ostrzeżenie: (0%)
-----


Jeśli ktoś dobiera się do bazy, to raczej sól też ma już w kieszeni.

Sól przeważnie zapisuje się w bazie danych i dla każdego użytkownika generowana jest unikatowa sól, aby atakujący nie mógł zrobić sobie tablicy tęczowej - z jedną "solą" jest to łatwe.

Jeśli ktoś ma słabe hasło składające się z kilku znaków (tak jak to pisał kolega powyżej), to atakujący je bardzo szybko złamie.

Proste porównanie:

Złamanie hasła złożonego z liter (małe i duże) oraz cyfr o długości 11 znaków zajmie około 17 dni.
Złamanie hasła złożonego z liter (małe i duże), cyfr i znaków specjalnych o długości 10 znaków zajmie około 23 lat.

Wiec hasło typu: "lubiekoty333" to pikuś, ale dodaj do tego kilka znaków specjalnych i dni przeradzają się w lata - a to dla atakujących już mocny cios.

Ten post edytował Dejmien_85 6.11.2016, 15:10:09
Go to the top of the page
+Quote Post
universalStudio
post 6.11.2016, 16:33:00
Post #4





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 13.11.2014

Ostrzeżenie: (0%)
-----


Dzieki za odp, zastanawiam mnie jeszcz jedna sprawa - najczesciej slyszy sie o wlamaniach do baz danych wykorzystujac dziury w kodzie php, ale czy ktos dysponuje wiedza czy z podobna czestotliwoscia wlamywacze sa wstanie wlamac sie na ftp i odczytac np. zapisana sol w pliku php? Draze ta kwestie, o ktorej wspomnial powyzej Dejmien_85 a zeby dla kazdego usera zapisywac w bazie indywidualna sol, wtedy faktycznie ta sol przestaje byc az taka przeszkoda... dlatego czy nie lepiej trzymac jedna sol dla wszystkich ale w pliku php?
Go to the top of the page
+Quote Post
Comandeer
post 6.11.2016, 16:53:20
Post #5





Grupa: Zarejestrowani
Postów: 1 265
Pomógł: 253
Dołączył: 11.06.2009
Skąd: Świętochłowice

Ostrzeżenie: (0%)
-----


Sól ma zabezpieczać hasło przed tablicą tęczową, więc ta sama sól dla wszystkich haseł jest bez sensu (i w sumie nazywa się ją wówczas pieprzem) – wówczas bowiem wystarczy dla niej wygenerować tablice tęczowe i problem z głowy. Natomiast unikalna sól dla każdego hasła nie pozwala tego zrobić.

Sól nie ma być niejawna, ona ma być unikalna, bo służy praktycznie wyłącznie powiększaniu entropii hasła.


--------------------
Go to the top of the page
+Quote Post
universalStudio
post 6.11.2016, 17:04:49
Post #6





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 13.11.2014

Ostrzeżenie: (0%)
-----


no i wszystko jasne smile.gif dzieki dla was!
Go to the top of the page
+Quote Post
!*!
post 7.11.2016, 10:26:16
Post #7





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Po co Wam te sole w bazie/pliku jak jest password_hash i password_verify


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post
Comandeer
post 7.11.2016, 10:41:43
Post #8





Grupa: Zarejestrowani
Postów: 1 265
Pomógł: 253
Dołączył: 11.06.2009
Skąd: Świętochłowice

Ostrzeżenie: (0%)
-----


Pieprz se w pliku IMO dodać można. A jak już mówimy o password_hash, to od razu powiedzmy: MCF.


--------------------
Go to the top of the page
+Quote Post
!*!
post 7.11.2016, 10:54:26
Post #9





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Tylko po co? Nie bez powodu "sól" w PHP7 dla password_hash wyleciała. Zapis/dodawanie soli gdziekolwiek brzmi tak samo źle jak używanie kilka razy md5() kilka lat temu.


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post
Comandeer
post 7.11.2016, 11:39:41
Post #10





Grupa: Zarejestrowani
Postów: 1 265
Pomógł: 253
Dołączył: 11.06.2009
Skąd: Świętochłowice

Ostrzeżenie: (0%)
-----


Sól wyleciała, bo mało kto odróżniał silną losową sól od "knakhnahnakh".

Teraz po prostu PHP samo generuje silną sól i dokleja ją do hasła, więc sól jest dodawana i zapisywana – po prostu dzieje się to automatycznie.


--------------------
Go to the top of the page
+Quote Post
ZenekN
post 7.11.2016, 16:33:56
Post #11





Grupa: Zarejestrowani
Postów: 395
Pomógł: 5
Dołączył: 7.08.2012

Ostrzeżenie: (0%)
-----


Cytat(Comandeer @ 6.11.2016, 16:53:20 ) *
Sól nie ma być niejawna


yyyy facepalmxd.gif


Go to the top of the page
+Quote Post
Comandeer
post 7.11.2016, 17:46:36
Post #12





Grupa: Zarejestrowani
Postów: 1 265
Pomógł: 253
Dołączył: 11.06.2009
Skąd: Świętochłowice

Ostrzeżenie: (0%)
-----


@ZenekN czy mógłbyś rozwinąć swoją jakże merytoryczną odpowiedź? smile.gif Bo np najpopularniejsza implementacja hashu w PHP (i nie tylko, bo np. w Pythonie też), MCF, ma sól w pełni jawną i nie ma żadnych problemów z tego wynikających.

Sól nie jest jakimś sekretnym składnikiem hasła, ona po prostu zwiększa jego losowość. Dlatego ma być unikatowa, nie niejawna!


--------------------
Go to the top of the page
+Quote Post
r4xz
post 7.11.2016, 20:19:30
Post #13





Grupa: Zarejestrowani
Postów: 673
Pomógł: 106
Dołączył: 31.12.2008

Ostrzeżenie: (0%)
-----


@Comandeer, może po prostu słowo "niejawna" nie jest zbyt trafne i niektórzy mogą pomyśleć, że każdy użytkownik systemu ma do niej dostęp. Aktualnie pewnie większość korzysta z password_hash i nawet nie jest świadoma, że ma odpowiednie zabezpieczenia (z jednej strony dobrze, a z drugiej strony przerażająca myśl).


--------------------
Go to the top of the page
+Quote Post
Dejmien_85
post 9.11.2016, 08:27:44
Post #14





Grupa: Zarejestrowani
Postów: 251
Pomógł: 23
Dołączył: 23.04.2013

Ostrzeżenie: (0%)
-----


Cytat(!*! @ 7.11.2016, 10:26:16 ) *
Po co Wam te sole w bazie/pliku jak jest password_hash i password_verify


Wydaje mi się, że poszedłeś o krok do przodu.

Masz rację, te funkcje automatycznie dodają sól - w tym temacie skupiamy się jednak na ogólnym sensie soli (nie tylko w kontekście PHP i funkcji password_hash).

Pewnie zauważyłeś, że autor tematu zapytał się o sens soli.

Sądzę, że jeśli odpowiemy mu, aby się tym nie interesował, a po prostu użył funkcji "password_hash", to za wiele mu to nie wyjaśni.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 16.10.2019 - 11:42