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ć? |
|
|
|
![]() |
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 |
Chodzi mi o sytuacje gdy, przykładowo, zauważyłeś błąd w algorytmie i go musiałeś poprawić, lub jak już wspomniałem wprowadzić byś chciał pewne zmienne czasowo parametry (jakieś tokenki czy inne tego typu drobiazgi), które wymagały by okresowego dostępu do hasła. Zauważ, że tego typu sytuacje wymagają znajomości znaków hasła na każdej pozycji by wygenerować dla nich nowy skrót.
Na ten moment raz podane hasło generuje grupę hashy dla liter i jakakolwiek zmiana algorytmu (niekoniecznie soli użytkownika czy pozycji) sprawia, że hashe są nieprawidłowe. Jeśli zauważyłbyś w algorytmie lukę bezpieczeństwa to co byś zrobił by zmienić algorytm i wygenerować uzależnione od nowego algorytmu hashe? Na tę chwilę myślę, że musiałbyś ustawić flagę w bazie jakąś i czekać aż user zaloguje. Jeśli flaga jest na false to przechwyć jego hasło w postaci jawnej, odpal procedurę zmiany hashy, ustaw flagę na true i ok. Nie sądzę by inaczej się dało, bo przecież nie wyciągniesz hasła z hasha w bazie. Stąd właśnie wspomniałem, że jeśli już by dochodziły naprawdę losowe rzeczy to konieczne jest przechowywanie informacji o chociażby skrótach znaków hasła gdzieś. Oczywiście tylko w sytuacji gdy taki wymóg jak zmienne tokeny jest konieczny, bo jak już powiedziałem to wprowadza przerost formy nad treścią już. Ale może się okazać, że w ten sposób jest realizowany dostęp do pewnych danych serwisu i niestety nie da się tego uniknąć. |
|
|
|
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
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 ![]() ![]() |
|
Aktualny czas: 27.12.2025 - 09:10 |