webForumDet fria alternativet

Kryptering md5?

PHP

7 svar · 289 visningar · startad av P

Medlem sedan jan. 20012 204 inlägg
Frågan#1

Jag hade tänkt att spara anv-namn och lösenord i mysql med någon form av kryptering... hur gör jag... nån som har exempel.
Vilka funktioner ska man använda hash/md5/crypt osv ???

Har lästa att crypt inte fungerar på w9x, stämmer det ?

Kollade lite på: http://www.faqs.org/rfcs/rfc1321.html
men det är väl ingen dödlig som orkar läsa det...

Är md5 då att föredra?

------------------
/// P

[Redigerat av P den 20 mar 2001]

Medlem sedan jan. 20012 204 inlägg
#2

Ingen som vill/kan svara?

------------------
/// P

Medlem sedan okt. 200057 inlägg
#3

antingen läser du genom den sidan du själv hade eller kollar på http://www.php.net/manual/en/function.md5.php http://www.php.net/manual/en/function.mhash.php

------------------
www.fyndtorg.nu

Medlem sedan jan. 20012 204 inlägg
#4

Nån som har ett litet exempel?

$key1 = "This is key number 1"; 
$key2 = "This is key number 2"; 
$key3 = "This is key number 3"; 
$text = "Lion eats rabbit"; 

$enc = base64_encode(keyED(encrypt(keyED($text,$key1),$key2),$key3)); 
$dec = keyED(decrypt(keyED(base64_decode($enc),$key3),$key2),$key1); 

print " 
Original text : 
$text 

Encrypted : 
$enc 

Decrypted : 
$dec"; 

With same encrypting logic as my previous comment, it will give result : 

Original text : 
Lion eats rabbit 

Encrypted : 
bA8SaDsTLCszDQ43Yyd/ejAyYnsmDS5gZlhneHZuKmRvJ1tnNRMdBiEzA1s= 

Decrypted : 
Lion eats rabbit

------------------
/// P

Är denna säker?

[Redigerat av P den 21 mar 2001]

Medlem sedan jan. 2000224 inlägg
#5

Jo, md5 är bättre.. Dock kan den ej decryptera men... Varför ska man decryptera ett lösenord?

Spara det krypterade lösenordet på databasen och när man loggar in så kryptera och kolla om det stämmer med den krypteringen som ligger på DB:n.

------------------
//Du ska inte slänga vatten över ån.
PHP vs ASP (10 - 0)

Medlem sedan jan. 20012 204 inlägg
#6

Låter bra... :)

[Redigerat av P den 21 mar 2001]

Medlem sedan jan. 20012 204 inlägg
#7
<?
$key = "lalalalalalalalasas";

function keyED($txt,$encrypt_key)
{
$encrypt_key = md5($encrypt_key);
$ctr=0;
$tmp = "";
for ($i=0;$i<strlen($txt);$i++)
{
if ($ctr==strlen($encrypt_key)) $ctr=0;
$tmp.= substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1);
$ctr++;
}
return $tmp;
}

function encrypt($txt,$key)
{
srand((double)microtime()*1000000);
$encrypt_key = md5(rand(0,32000));
$ctr=0;
$tmp = "";
for ($i=0;$i<strlen($txt);$i++)
{
if ($ctr==strlen($encrypt_key)) $ctr=0;
$tmp.= substr($encrypt_key,$ctr,1) .
(substr($txt,$i,1) ^ substr($encrypt_key,$ctr,1));
$ctr++;
}
return keyED($tmp,$key);
}

function decrypt($txt,$key)
{
$txt = keyED($txt,$key);
$tmp = "";
for ($i=0;$i<strlen($txt);$i++)
{
$md5 = substr($txt,$i,1);
$i++;
$tmp.= (substr($txt,$i,1) ^ $md5);
}
return $tmp;
}

$string = "webforum!!!!!cool!!";

// encrypt $string, and store it in $enc_text
$enc_text = encrypt($string,$key);

// decrypt the encrypted text $enc_text, and store it in $dec_text
$dec_text = decrypt($enc_text,$key);

print "Original text : $string <Br>\n";
print "Encrypted text : $enc_text <Br>\n";
print "Decrypted text : $dec_text <Br>\n";
?>

Enligt detta så fungerar det att decryptera.... eller ?
Fattar 0 av koden.

------------------
/// P

[Redigerat av P den 21 mar 2001]

Medlem sedan feb. 20001 050 inlägg
#8

Angående Ps inlägg:
Jo visst gör det att dekryptera det du krypterat med funktionen function encrypt($txt,$key) ovan. Men det är ju inte heller någon MD5 kryptering (utan en R-MD5, påhittad av den som skrev funktionen ovan!).

/nicclas - www.nyhetsrubriker.com

258 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)