Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Generowanie md5 a przycisk
Freecast
post
Post #1





Grupa: Zarejestrowani
Postów: 51
Pomógł: 0
Dołączył: 5.07.2009

Ostrzeżenie: (10%)
X----


Witam

pisze ten temat ponieważ raczkuje w dziedzinie PHP , mam takie pytanie posiadam formularz rejestracyjny kont użytkowników i chce zrobić tak aby po naciśnięciu guzika generuj hasło w polu hasło w formularzu pojawił się wygenerowany kod md5 służący jako hasło dla usera jak to zrobić proszę o pomoc
Go to the top of the page
+Quote Post
Kamil Pietrzak
post
Post #2





Grupa: Zarejestrowani
Postów: 213
Pomógł: 10
Dołączył: 7.01.2010
Skąd: Lublin

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


md5 nie uzywa sie po stronie uzytkownika, tylko po stronie serwera
user wpisuje/generuje normalne haslo, a serwer je hashuje

jak chcesz przycisk "generuj", to uzyj jakiejs funkcji do generowania losowego ciagu znakow w JS

jak masz
  1. <input type="text" name="" id="inp1">


to potem w js mozesz wstawic do niego jakis ciag w ten sposob
  1. document.getElementById('inp1').value='tresc';
Go to the top of the page
+Quote Post
wNogachSpisz
post
Post #3





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

Ostrzeżenie: (40%)
XX---


Cytat(Kamil Pietrzak @ 7.10.2011, 11:51:02 ) *
md5 nie uzywa sie po stronie uzytkownika, tylko po stronie serwera
user wpisuje/generuje normalne haslo, a serwer je hashuje

Bzdura, zhashowanie hasła po stronie przeglądarki to wyśmienity pomysł (zarówno podczas rejestracji jak i logowania).

Możesz to zrobić np. tak:

[JAVASCRIPT] pobierz, plaintext
  1. $(form).submit(function(){
  2. this.haslo.value = md5(this.haslo.value)
  3. })
[JAVASCRIPT] pobierz, plaintext


definicję funkcji md5 w javascript masz tutaj:
http://phpjs.org/functions/md5:469

I jeszcze raz gratuluje pomysłu i wychodzenia poza schematy, takich ludzi nam potrzeba (IMG:style_emoticons/default/happy.gif)
Go to the top of the page
+Quote Post
erix
post
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




To rozwiązanie ma kilka wad:
  • uzależniasz się od JS
  • większa waga strony (ale to można przeboleć)
  • nawet jak zrobisz saltowanie, to jest bez sensu, bo i atakujący bardzo łatwo pozna algorytm solenia hasła


Lepszym wyjściem jest skorzystanie z SSL.

Cytat
I jeszcze raz gratuluje pomysłu i wychodzenia poza schematy, takich ludzi nam potrzeba

A ja gratuluję myślenia w formie sztuka dla sztuki nie uwzględniając faktu, że może otwierać luki w bezpieczeństwie.
Go to the top of the page
+Quote Post
wNogachSpisz
post
Post #5





Grupa: Zarejestrowani
Postów: 1 233
Pomógł: 87
Dołączył: 6.03.2009

Ostrzeżenie: (40%)
XX---


Cytat(erix @ 8.10.2011, 14:24:47 ) *
A ja gratuluję myślenia w formie sztuka dla sztuki nie uwzględniając faktu, że może otwierać luki w bezpieczeństwie.


Aha, czyli przesyłanie hashu hasła zamiast hasła to Twoim zdaniem otwieranie luk bezpieczeństa?
Moje najserdeczniesze gratulacje, to chyba Twoja pora aby udać się na dłuższy urlop.
Go to the top of the page
+Quote Post
Crozin
post
Post #6





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


@wNogachSpisz: I co z tego że prześlesz hash, skoro ja będę mógł zrobić dokładnie to samo? Może i nie będę mieć dostępu do hasła w formie jawnej*, ale sam hash daje mi dokładnie te same możliwości co czyste hasło.

Odpowiedź na pytanie już padła - SSL.

* chociaż w przypadku MD5 znalezienie kolizji dla danego hasha nie powinno być wielkim problemem.
Go to the top of the page
+Quote Post
erix
post
Post #7





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Aha, czyli przesyłanie hashu hasła zamiast hasła to Twoim zdaniem otwieranie luk bezpieczeństa?

Ależ oczywiście: można do woli bure-force'ować hasła, bo nawet jak będziesz próbować saltować hasła po stronie klienta, to Ci to nic nie da - algorytm jest jawny, dane też będzie w miarę łatwo zdobyć. I wracamy do punktu wyjścia - atakujący wie, jak saltować, leci wszystko do serwera tak, jakby tego solenia nie było.

A przy możliwościach dzisiejszych kart graficznych hashowanie haseł, czy znajdowanie kolizji, to pikuś. Pan Pikuś, robiący CUDA.

Zrzucanie weryfikacji tożsamości na stronę klienta, to najgorsze z możliwych rozwiązań. Klient może być użytkownikiem, ale także i atakującym. Jak chcesz rozróżnić jednego od drugiego, skoro żądania obu będą identyczne i narażające na skompromitowanie całego systemu?
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 25.08.2025 - 08:16