We are in the process of migrating this forum. A new space will be available soon. We are sorry for the inconvenience.

Problem z szyfrowaniem


astonix
18-04-2006, 10:01
Mozna i tak :P

szczeles
17-04-2006, 21:04
Cytat Napisał astonix
A jak masz lepsze rozwiązanie to bodaj kod źródłowy
Może się uda w 3 linijkach:
Kod PHP:
mysql_connect ("$db_host""$db_user""$db_pass") or die ("Nie można się połączyć z MySql");
mysql_select_db ("$db_name") or die ("Brak połączenia z bazą $db_name ");
echo (
$dane=mysql_fetch_row(mysql_query("SELECT * FROM ".$db_prefix."users WHERE pass=PASSWORD(".$haslo.");"))?'tak':'nie'); 
:O
Udalo sie : P

pozdro ;-)

astonix
17-04-2006, 20:41
No i własnie to Ważne żeby wykonywał zadanie które ma wykonać ! Czyli szyfruje , porównuje haslo podane z hasłem w bazie , i daje wynik . A jak masz lepsze rozwiązanie to bodaj kod źródłowy

szczeles
16-04-2006, 22:15
Cytat Napisał astonix
Sprawdza się dobrze tylko się obawiam nadmiernego obciązenia sQl
A co on ma w ogole robic? ;-) Bo na oko to wykonuje zupelnie niepotrzebne operacje (cos wstawia, potem wybiera, w koncu usuwa i znowy wybiera :>)

astonix
16-04-2006, 18:23
Napisałem taki skrypcik :
Kod PHP:
include('sources/db.php');
include(
'sources/theme.php');
mysql_connect ("$db_host""$db_user""$db_pass") or
    die (
"Nie można się połączyć z MySql");
mysql_select_db ("$db_name") or
    die (
"Brak połączenia z bazą $db_name ");
$query = ("INSERT INTO ".$db_prefix."temp (pass) VALUES(PASSWORD('$haslo'));") or
    die (
"cs ");
$wykl mysql_query ($query);
$query mysql_query ("SELECT * FROM ".$db_prefix."temp;") or
    die (
"Błąd w zapytaniu odnośnie kategori");

while (
$boa mysql_fetch_array ($query)) {
$haslo $boa[0];
}
$usun mysql_query ("DELETE FROM ".$db_prefix."temp WHERE pass = '$haslo';");

$query mysql_query ("SELECT * FROM ".$db_prefix."users;") or
    die (
"Błąd w zapytaniu odnośnie kategori");
while (
$boa mysql_fetch_array ($query)) {
if (
$nick == $boa[0]){
if (
$haslo == $boa[1]){
print 
'tak';
}else{
print 
'nie';
}
}
}
?>
Sprawdza się dobrze tylko się obawiam nadmiernego obciązenia sQl

astonix
16-04-2006, 17:59
Cytat Napisał szczeles
Dlatego napisałem, że nie ma rzeczy niemożliwych ;-)

Chociaż możnaby zrobić jak to Japońce z md5: wymyślić sposób na wygenerowanie drugiego hasła, które daje ten sam hash (zawsze to syzbsze niż brucik :>)

Tylko że ten kod będzie udostępniany innym co zwieksza ryzyko potęcjalnego złamania jakiego kolwiek hasła. W końcu masz wzór na szyfrowanie

A i jakby można prosić gotowy skrypt z szyfrowaniem PASSWORD i ewentualnym porównaniem szyfrów ?? ;>

szczeles
16-04-2006, 00:30
Cytat Napisał Maverick
@Szczeles... jakby napisac odpowiedni skrypt... to by sie dalo ;] Na takiej zasadzie jak dzialaja programy do rozszyfrowywania RARow... czyli "brute-force"... czyli pokolei szyfrowanie i porownywanie ;]
Dlatego napisałem, że nie ma rzeczy niemożliwych ;-)

Chociaż możnaby zrobić jak to Japońce z md5: wymyślić sposób na wygenerowanie drugiego hasła, które daje ten sam hash (zawsze to syzbsze niż brucik :>)

Maverick
15-04-2006, 22:05
No ja innego rozwiazania nie widze...

@Szczeles... jakby napisac odpowiedni skrypt... to by sie dalo ;] Na takiej zasadzie jak dzialaja programy do rozszyfrowywania RARow... czyli "brute-force"... czyli pokolei szyfrowanie i porownywanie ;]

astonix
15-04-2006, 17:13
To jak naprzykład sprawdzić czy przy logowaniu podał te poprawne hasło ??
Może należy zaszyfrować te hasło i znów porównać nowo zaszyfrowane z hasłem zaszyfrowanym w bazie ??

szczeles
15-04-2006, 16:29
Cytat Napisał astonix
a jak zrobić żeby wyciągnoąc potem z bazy odzsyfrowane słowo ??
hehe, nie da sie :> (chociaż podobno nie ma rzeczy niemozliwych )

astonix
15-04-2006, 09:25
Mam mały problem otóż dany skrypt :

$query = ("INSERT INTO ".$db_prefix."c (a) VALUES(PASSWORD('lol'));") or
die ("Bląd ");

Szyfruje napis 'lol' , a jak zrobić żeby wyciągnoąc potem z bazy odzsyfrowane słowo ??