Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Generowanie hasła w php
Omin
post
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 18.08.2014

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


Witam,
w jaki sposób mogę wygenerowane hasło zaszyfrować w php, przesłać je do bazy danych, a później z powrotem je odszyfrować, tak abym mógł je podać użytkownikowi?
Chciałem się dowiedzieć czy w ogóle jest taka możliwość i jak to zrobić, aby było w miarę bezpiecznie.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
igormaster
post
Post #2





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 10.06.2018

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


Cytat(Omin @ 10.06.2018, 16:25:46 ) *
Witam,
w jaki sposób mogę wygenerowane hasło zaszyfrować w php, przesłać je do bazy danych, a później z powrotem je odszyfrować, tak abym mógł je podać użytkownikowi?
Chciałem się dowiedzieć czy w ogóle jest taka możliwość i jak to zrobić, aby było w miarę bezpiecznie.



Witaj rozumiem że chodzi ci o to aby hasło było wysyłane do bazy mysql w md5 czyli zakodowane ale i mieć możliwość jego odczytania ?
możesz użyć dekodera md5 albo wysyłać hasło niekodowane tyle że przy ewentualnym włamaniu hasło widzi każdy na przykładzie

<?php
function filtruj($zmienna)
{
if(get_magic_quotes_gpc())
$zmienna = stripslashes($zmienna); // usuwamy slashe

// usuwamy spacje, tagi html oraz niebezpieczne znaki
return mysql_real_escape_string(htmlspecialchars(trim($zmienna)));
}

if (isset($_POST['loguj']))
{
$login = filtruj($_POST['login']);
$haslo = filtruj($_POST['haslo']);
$ip = filtruj($_SERVER['REMOTE_ADDR']);

// sprawdzamy czy login i hasło są dobre
if (mysql_num_rows(mysql_query("SELECT login, haslo FROM uzytkownicy WHERE login = '".$login."' AND haslo = '".md5($haslo)."';")) > 0)
{
// uaktualniamy date logowania oraz ip
mysql_query("UPDATE `uzytkownicy` SET (`logowanie` = '".time().", `ip` = '".$ip."'') WHERE login = '".$login."';");

$_SESSION['zalogowany'] = true;
$_SESSION['login'] = $login;

// zalogowany

}
else echo "Wpisano złe dane.";
}
?>

testowałem to i było hasło w md5 wiem że jest wiele metod kodowania poklikaj po necie coś znajdziesz, ale może ktoś inny Ci pomoże lepiej sam jestem noobem wiem że md5 idzie odkodować i poznać wpis hasła

Ten post edytował igormaster 10.06.2018, 15:43:01
Go to the top of the page
+Quote Post
Omin
post
Post #3





Grupa: Zarejestrowani
Postów: 21
Pomógł: 0
Dołączył: 18.08.2014

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


Ogólnie chodzi o to by zaszyfrować plik. Ten etap mam już za sobą, teraz jeszcze zostało mi utworzenie automatycznego generowania hasła do pliku. Takie hasło muszę gdzieś umieścić, czyli w bazie danych. Użytkownik otrzyma hasło do pliku dopiero po jakimś terminie, dlatego ważne jest aby je rozszyfrować przy przesłaniu do użytkownika.
Go to the top of the page
+Quote Post
ohm
post
Post #4





Grupa: Zarejestrowani
Postów: 623
Pomógł: 144
Dołączył: 22.12.2010

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


Szybciej będzie Ci użyć AES po stronie SQL,
https://www.w3resource.com/mysql/encryption...s_encrypt().php

Tylko jeszcze musisz wymyśleć jakiś mechanizm klucza szyfrującego
Go to the top of the page
+Quote Post
batman
post
Post #5





Grupa: Moderatorzy
Postów: 2 921
Pomógł: 269
Dołączył: 11.08.2005
Skąd: 127.0.0.1




Szyfrowanie hasła - https://secure.php.net/manual/en/function.o...ssl-encrypt.php
Odszyfrowanie hasła - https://secure.php.net/manual/en/function.o...ssl-decrypt.php

Prościej i bezpieczniej się nie da.
Go to the top of the page
+Quote Post
Neutral
post
Post #6





Grupa: Zarejestrowani
Postów: 286
Pomógł: 46
Dołączył: 10.01.2016

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


Miej może dwie bazy lub dwie tabele. W pierwszej bazie/tabeli trzymaj hasła zaszyfrowane, których już nie zobaczysz i te dane wystawisz na produkcję, czyli sprawdzanie, czy hasło jest poprawne, itp.. Natomiast w drugiej bazie/tabeli trzymaj hasła niezaszyfrowane, ewentualnie zahashowane, takie, które mógłbyś od'hash'ować i odkodować i zobaczyć jakie jest naprawdę. To też jest jakaś myśl, jeśli zależy Ci na zobaczeniu haseł (czy czegoś tam) użytkowników.

Ten post edytował Neutral 10.06.2018, 18:38:54
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: 24.08.2025 - 10:48