Autor Zpráva
Joe
Profil *
Ako docielit, aby sa mi do mysql db ukladalo heslo, ktore sa neda identifikovat.
Ak zadam heslo napr. VESLO a pozriem si heslo v db, nezistim presne znenie hesla.

Dik
Taps
Profil
Joe
$heslo=md5("mojeheslo");

nebo
$heslo=sha1("mojeheslo");


a pak si vypiš echo $heslo;
zápis do db snad zvládneš nezapomen nastavit typ sloupce na md5 nebo sha1
Joe
Profil *
Taps
Dik funguje to presne, ako som myslel.
Joe
Profil *
...Iba ze sa teraz neviem nalogovat ...
Alphard
Profil
...Iba ze sa teraz neviem nalogovat ...
při přihlašování musíte heslo nejdříve prohnat tou stejnou funkcí
Joe
Profil *
Alphard
To ma tiez napadlo, ale nejako mi to nefunguje

Takze sataci to porovnat takto?

if (heslo ulozene v db = md5(heslo napisane pri prihlaseni) {
echo "blablabla";
}
Joe
Profil *
Alphard
To ma tiez napadlo, ale nejako mi to nefunguje

Takze sataci to porovnat takto?

if (heslo ulozene v db = md5(heslo napisane pri prihlaseni) {
echo "blablabla";
}
Joe
Profil *
Sorrac za opakovanu spravu, ale prvy krat sa to tvarilo, ze to neposlalo...
Alphard
Profil
málo informací, věštit neumím, asi nějak takhle
v databázi budeme hledat shodu, dotaz bych stavěl nějakt takhle
$res = mysql_query ("select id, nick from uzivatele where nick = ".mysql_real_escape_string ($_POST['nick'])." and heslo = ".md5($_POST['heslo']));
Joe
Profil *
Alphard
Ja viem, ze sa toazko radi podla malo info.
Skusim to takto:

$k = mysql_query("select * from reg WHERE email='$meno'");
$ka = mysql_fetch_array($k);
$h = $ka["heslo"];

if ((empty($ka)) or ($h != md5($heslo))) {
echo "<br><br><div align='center'><font color='red'>Zadali ste nespravne MENO alebo HESLO !!!</font></div>";
?>
<SPAN STYLE="position: absolute; right: 600px; top: 100px">
<A HREF="javascript:javascript:history.go(-1)">TRY AGAIN </A>
</span>
<?
} else {

$_SESSION["meno"]=$_REQUEST["meno"];
?> <br><br><div align = "center"><? echo $meno."<br>".$heslo."<br><br>Vytajte na strankach firmy bla, bla ".$meno;

Skrypt je troska stary, tak mozete ho kludne prerobit na novsiu verziu :o) (snazim sa len spojazdnit kodovanie hesla).

Neviem, ci to staci ako priklad
Joe
Profil *
pre upresnenie:

$heslo=md5($_POST["heslo"]);

$insert="INSERT INTO reg (email, heslo)
VALUES ('$email','$heslo')";
$results = mysql_query($insert)
or die(mysql_error());
Alphard
Profil
jak se projevuje nefunkčnost?
spusťte tohle a napište výsledek
$k = mysql_query($l="select * from reg WHERE email='$meno'"); 
echo $l."<br>".mysql_error();
if($k)
{
  $ka = mysql_fetch_array($k); 
  print_r ($ka);
}
Joe
Profil *
Po vlastnom teste som dostal toto

123b5e3b3e0637889a3067b5e5126ed651e
202cb962ac
Joe
Profil *
Toto je zdrojak k vypisu.

echo md5($h)."<br>".$h;
Alphard
Profil
Po vlastnom teste som dostal toto
123b5e3b3e0637889a3067b5e5126ed651e
202cb962ac


Toto je zdrojak k vypisu.
echo md5($h)."<br>".$h;


tady něco nesedí
md5 hash řetězce 202cb962ac je b5e3b3e0637889a3067b5e5126ed651e
jinými slovy, 123 na začátku je tak trochu navíc
Joe
Profil *
Aky je v tom vlastne rozdiel?

Ak zadam heslo 123 a do DB to ulozi ako 123 kazdy si to lahko precita,
ak zadam heslo 123 a ulozi to pod md5("123") a niekto to dekoduje md5-kou, tiez si to lahko precita.

Aka je v tom vlastne ochrana?
Joe
Profil *
Uz mi to dokonca aj funguje
Alphard
Profil
md5 tak snadno prolomit nelze, údajně je bezpečnější sha1, ale to teď není podstatné
moc nechápu váš poslední příspěvek, vzhledem k předchozí diskusi se mi zdá mimo a navíc jste se na to sám ptal
je logické, že musíte porovnávat stejné řetězce, jestli chcete solit, solte, ale na obou stranách stejně
Joe
Profil *
Alphard
Vdaka za pomoc pri rieseni mojho problemu.
Vsetky otazky som si aj vdaka vam zodpovedal.

Aj posledny prispevok. Vysledne cisla su na oko rozdielne, aj ked ich pocitac vyhodnotil ako zhodne (a ma pravdu).

Uz mi to funguje.

Este raz vdaka.
Toto téma je uzamčeno. Odpověď nelze zaslat.