Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Bezpieczeństwo haseł przy użyciu soli
nexis
post
Post #1





Grupa: Zarejestrowani
Postów: 1 012
Pomógł: 109
Dołączył: 26.09.2003
Skąd: nexis.pl

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


Zwykle, dla bezpieczeństwa, trzymamy w bazie danych skrót hasła, utworzony za pomocą md5() bądź sha1(). Z myślą o tęczowych tablicach dopisujemy zwykle dodatkowo tzw. sól, która jest trzymana poza bazą danych, zwykle na serwerze.

Chciałbym jednak zwiększyć bezpieczeństwo również po stronie użytkownika i zastosować mechanizm znany z banków internetowych, czyli odpytywanie użytkownika o wybrane znaki hasła. Aby zastosować taki mechanizm jestem jednak zmuszony zapamiętać każdy znak hasła osobno. Powiedzmy, że w tym celu narzucę maksymalną długość hasła na 16 znaków i stworzę w tabeli bazy danych 16 dodatkowych pól (po 1 dla każdego znaku). Jak ma się jednak w/w sposób do tej sytuacji? Sam skrót to praktycznie żadne zabezpieczenie. Zastosowanie soli już bardziej, ale jest to wciąż bardzo słaby mechanizm. Co zrobić?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Po przeczytaniu posta odnosi się wrażenie, że nie chodzi o to by pozycja miała jakiś hash, tylko że konkretna litera ma jakiś przypisany jej skrót. Dla mnie zrozumiałe jest, że powinno być coś w stylu o jakim piszesz blooregard, czyli niezależność znaków w haśle od ich hashy. Stąd właśnie ja zrobiłem zależność skrótu od zupełnie innego pola, bo to w tym momencie daje pole do popisu. Musiałbyś mieć dokładny kod aplikacji i dokładną kopię bazy. Jako admin wystarczy tylko pilnować aktualizacji tabeli gdy user zmieniałby pole na podstawie którego generujesz hashe. Ale to jest w tym właśnie najfajniejsze... Każda zmiana w "profilu" pociągałaby za sobą zmianę wyniku pól porównywanych. Jeśli więc ma hacker zrzut bazy choćby na 5 minut przed tym gdy użytkownik zmienił zawartość pola "newralgicznego" to włamywacz ma stare hashe, które są już nieaktualne mimo faktu nie zmienionego hasła (IMG:style_emoticons/default/smile.gif) Można też, by było zabawniej, generować takie pole co jakiś czas i zapisywać do bazy jako niewidoczne dla usera. Coś w stylu tokena (IMG:style_emoticons/default/winksmiley.jpg) To dawałoby nam niemal nieograniczoną liczbę kombinacji.

Ten post edytował thek 4.09.2009, 14:08:12
Go to the top of the page
+Quote Post

Posty w temacie
- nexis   Bezpieczeństwo haseł przy użyciu soli   3.09.2009, 15:36:42
- - thek   Osobiście nigdy tak nie podchodziłem do sprawy bez...   3.09.2009, 16:16:21
- - sztosz   Akurat dwukierunkowość szyfrowania to nie jest dob...   3.09.2009, 19:17:52
- - blooregard   CytatAkurat dwukierunkowość szyfrowania to nie jes...   3.09.2009, 19:41:13
|- - phpion   Cytat(blooregard @ 3.09.2009, 20:41:1...   3.09.2009, 20:43:13
- - sztosz   Masz hasło x znaków, haszujesz każdy znak, hasz m...   3.09.2009, 20:48:40
- - nexis   Póki co przyszło mi na myśl stosowanie bardzo złoż...   3.09.2009, 20:57:38
- - blooregard   CytatRównie dobrze można trzymać hashe poszczególn...   3.09.2009, 21:04:11
|- - nexis   Cytat(blooregard @ 3.09.2009, 22:04:1...   3.09.2009, 21:08:24
- - blooregard   CytatChodzi o to, żeby sposób był bezpieczny nawet...   3.09.2009, 21:22:00
|- - nexis   Cytat(blooregard @ 3.09.2009, 22:22:0...   3.09.2009, 21:26:31
- - blooregard   CytatEfekt ma być taki, że po przejęciu kontroli n...   3.09.2009, 21:32:38
|- - nexis   Cytat(blooregard @ 3.09.2009, 22:32:3...   3.09.2009, 21:42:52
- - blooregard   CytatWidzi ktoś wady takiego rozwiązania? No nie, ...   3.09.2009, 21:57:03
- - thek   Zastanawiałem się Nexis nad algorytmem, który dawa...   4.09.2009, 09:34:43
|- - nexis   Cytat(thek @ 4.09.2009, 10:34:43 ) Dl...   4.09.2009, 10:40:56
- - thek   Może i tak, ale indywidualna sól dla każdego użytk...   4.09.2009, 12:22:43
- - nexis   Wciąż nie widzę w czym zaprezentowana przez ciebie...   4.09.2009, 12:40:32
- - thek   To przemyśl co da hasło abababab skoro dla każdej ...   4.09.2009, 13:21:41
|- - nexis   Cytat(thek @ 4.09.2009, 14:21:41 ) Tw...   4.09.2009, 21:31:05
- - blooregard   CytatBo jeśli dobrze zrozumiałem Twoje rozumowanie...   4.09.2009, 13:34:11
- - thek   Po przeczytaniu posta odnosi się wrażenie, że nie ...   4.09.2009, 14:02:30
- - thek   Ok... Pomińmy więc w dalszych rozważaniach sól sys...   4.09.2009, 22:07:25
|- - nexis   Cytat(thek @ 4.09.2009, 23:07:25 ) st...   4.09.2009, 22:38:16
- - thek   CytatPodstaw sobie dowolne hasło pod podany przeze...   5.09.2009, 00:05:41
|- - nexis   Cytat(thek @ 5.09.2009, 01:05:41 ) Te...   5.09.2009, 05:51:09
- - thek   Wczoraj w chwili przerwy przejrzałem nasze wypowie...   6.09.2009, 09:45:29
|- - nexis   Cytat(thek @ 6.09.2009, 10:45:29 ) Wc...   7.09.2009, 23:14:48
- - thek   Wersja skrócona: Problem: Algorytm się minimalnie ...   8.09.2009, 21:59:11
- - nexis   Ale po co miałbym kiedykolwiek zmieniać sól dla uż...   8.09.2009, 22:48:50
- - thek   Chodzi mi o sytuacje gdy, przykładowo, zauważyłeś ...   9.09.2009, 09:23:47
- - nexis   Algorytm opracowuje się raz i dobrze. Cała jego id...   9.09.2009, 09:26:42
- - thek   Wiem, że algorytm powinien być napisany raz a dobr...   9.09.2009, 13:04:35


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 Aktualny czas: 5.10.2025 - 08:33