![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 266 Pomógł: 9 Dołączył: 21.05.2008 Skąd: Łomianki Ostrzeżenie: (0%) ![]() ![]() |
Witam, czy jest możliwość, aby hasło, dzięki któremu łączę się z bazą danych było zakodowane algorytmem MD5? Jeżeli tak to proszę o podpowiedź :]
Ten post edytował ArekJ 30.09.2008, 20:44:06 |
|
|
![]()
Post
#2
|
|
Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
Funkcja md5() wystepuje zarówno w MySQL jak i php5, więc nie ma żadnego problemu.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 266 Pomógł: 9 Dołączył: 21.05.2008 Skąd: Łomianki Ostrzeżenie: (0%) ![]() ![]() |
Ale mi nie chodzi o to, żeby hasła przechowywane w bazie były kodowane, bo to już mam (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Chodzi o to, że MD5 nie można odkodować, czyli w razie włamu na serwer jeżeli w pliku połączenia z bazą ustawie MD5 to ktoś będzie miał dostęp tylko do serwa, a do bazy nie (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Plik konfiguracyjny wygląda tak:
I chciałbym, żeby dbpass było kodowane MD5. Próbowałem $dbpass = md5('tutaj haslo w md5'); ale nie działa (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 607 Pomógł: 23 Dołączył: 8.09.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Nie ma takiej możliwości. Zwróć uwagę, że we wszystkich cmsach, frameworkach, forach, systemach blogowych, galeriach etc etc jest to niezakodowane. Przypadek? Nie, po prostu tak się tego zrobić nie da.
Ten post edytował Spirit86 30.09.2008, 21:03:07 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 266 Pomógł: 9 Dołączył: 21.05.2008 Skąd: Łomianki Ostrzeżenie: (0%) ![]() ![]() |
Aha, szkoda (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) A jest możliwość zastosowania innego kodowania, albo czy można jakoś to zabzpieczyć w inny sposób?
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 607 Pomógł: 23 Dołączył: 8.09.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Zależnie od konfiguracji serwera. Można zrobić taki myk, że do folderu /home/ wgramy pliki gdzie ustawimy stałe / zmienne z danymi do połączenia się z bazą danych. W serwerze ustawiamy konta ftp, aby łączyły się z /home/www/ - gdzie znajduje się strona www (wszystkie pliki wykonwywalne etc.). Teraz w pliku php robisz include('../confi.data.php'); albo include('home/www/confi.data.php'); i masz już stałe z innego folderu. Co prawda moża to szybko odczytać poprzez zmianę kodu php, np. wpiszemy echo STALA_JAKAS albo zmienna (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) . A wyżej edytowałem posta.
Ten post edytował Spirit86 30.09.2008, 21:08:05 |
|
|
![]()
Post
#7
|
|
Newsman Grupa: Moderatorzy Postów: 2 033 Pomógł: 290 Dołączył: 21.12.2007 Skąd: Łódź ![]() |
jeszcze tylko mała dygresja z kryptografii: MD5 to nie algorytm kodujący, ale generujący tzw. hash, czyli jednokierunkowy skrót. W rozsądnym czasie z takiego hasha nie da się odzyskać jawnego (zahaszowanego) tekstu. Na tym polega działanie tego typu algorytmów. Jedynie, co mozna zrobić, to wygenerować hash z innego tekstu i porównac go z haszem tego poszukiwanego. Ale jak juz napisałem, jest to prawie niewykonalne.
W tym tkwi siła tego typu zapisu haseł w bazie: user logując się na stronie wpisuje hasło, a skrypt logujący porównuje hash tego hasła z hashem zapisanym w bazie (a nie haseł pisanych jawnym tekstem). A specyfiką MD5 jest np. to, że dwa bardzo długie teksty różniące się JEDNYM znakiem generują hasze SKRAJNIE odmienne, więc nawet analiza prównawcza haszy nic tu nie da. Sorry za OT (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 01:59 |