hash ?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Maarten heijden

maarten heijden

03/04/2011 20:30:30
Quote Anchor link
het is me nu eindelijk gelukt om een ledensysteem zelf te maken, maar nu kan ik het wachwoord van iedereen lezen in de database

en ik kan in tuts niet uitvogelen wat het wachtwoord in de database in van die rare tekens veranderdt ?
Gewijzigd op 03/04/2011 20:37:59 door Maarten heijden
 
PHP hulp

PHP hulp

05/11/2024 22:19:35
 
Joris van Rijn

Joris van Rijn

03/04/2011 20:32:26
Quote Anchor link
Dit heet een wachtwoord hashen. De beste bruikbare is sha1().
Ik raad je aan om het in de de database op te slaan met een zogenaamde 'salt'.
 
Bas IJzelendoorn

Bas IJzelendoorn

03/04/2011 20:37:16
Quote Anchor link
Zou je, je titel willen aanpassen? Deze is niet duidelijk of specifiek genoeg
 
Maarten heijden

maarten heijden

03/04/2011 20:40:00
Quote Anchor link
ik ben nu aan het zoeken maar ik kan er werkelijk geen wijs uit wat de goede code nou is
 
Wesley PHP

Wesley PHP

03/04/2011 20:41:20
Quote Anchor link
The Dutch Guy op 03/04/2011 20:37:16:
Zou je, je titel willen aanpassen? Deze is niet duidelijk of specifiek genoeg


OFFTOPIC: Hoe verander je een titel?
 
Joris van Rijn

Joris van Rijn

03/04/2011 20:42:35
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
    $wachtwoord
= "leesbaarwachtwoord";
    $hashed = sha1($wachtwoord.'ditismijnsalt');
    echo $hashed;
?>


Het script hierboven zal weergeven:
442c960e22f810113b0a6067e1d498a662cf3a60
 
Erik Kraijenoord

Erik Kraijenoord

03/04/2011 20:44:35
Quote Anchor link
Ik raad je een SALT aan, en deze met SHA512 te verwerken.

Het is tot op heden nog steeds niet gelukt om dit te kraken, tenzij ze je SALT kennen natuurlijk.
 
Maarten heijden

maarten heijden

03/04/2011 20:49:24
Quote Anchor link
als ik die code van joris gebruik werk het :) alleen probleempje met dat het iloggen dan met de hsh werkt
 

03/04/2011 22:12:56
Quote Anchor link
Maarten heijden op 03/04/2011 20:49:24:
als ik die code van joris gebruik werk het :) alleen probleempje met dat het iloggen dan met de hsh werkt


Dan moet je dus het gehashte wachtwoord met de hash vergelijken, op deze manier:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
if (sha1($_POST['wachtwoord']."salt") == $wachtwoord) {
//Ingelogd =)
}
?>


waarbij $wachtwoord het gehashte wachtwoord uit de database is.
 
Wouter J

Wouter J

03/04/2011 22:26:18
Quote Anchor link
En ik mag hopen dat je SALT wat beter is dat "salt" ;)
 

03/04/2011 22:32:13
Quote Anchor link
Wouter J op 03/04/2011 22:26:18:
En ik mag hopen dat je SALT wat beter is dat "salt" ;)


>.< Just an example of course =P Een "normale" salt zou natuurlijk iets in de richting van: ldjf8erhqr9814-1438 zijn (of nog veel langer met meer tekens ^^)
 
Jordi Kroon

Jordi Kroon

03/04/2011 22:33:20
Quote Anchor link
Ik werk altijd met een public key en een private key

Public key bijv : fhclabjBqhGYhgG45fTjU6557sw <-- code die iedereen heeft
Private key : random code van 32 chars die per gebruiker in de db staat

En dan private key voor de pass public key erachter
 
Jelmer -

Jelmer -

03/04/2011 23:29:10
Quote Anchor link
Jordi kroon op 03/04/2011 22:33:20:
Ik werk altijd met een public key en een private key

Niet te verwarren met public en private keys zoals die gebruikt worden in veel cryptografie zoals SSL (https) en PGP
 
Maarten heijden

maarten heijden

04/04/2011 08:00:10
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?php

$postnaam
= $_POST['naam'] ;
$postwachtwoord= $_POST['wachtwoord'] ;

if($_SERVER['REQUEST_METHOD'] == 'POST')
{

   include"database.php";

if($postnaam=="$naam")
{



if (sha1($postwachtwoord"SALT") == $wachtwoord){




if($ban =="ja")
{
echo'<font color="red"> <b> JIJ BENT VERBANNEN <br>
omdat: '
; echo"$banrede"; echo'</b></font>';
}
else{
?>


<form method="post" action="inloggo.php">
je gebruiksnaam: <?php echo $postnaam ; ?> <input type="hidden" name="naam" value"<?php echo "$postnaam"; ?> ";><br>
wachtwoord: <?php echo "**********"; ?> <input type="hidden" name="wachtwoord" value="<?php echo "$postwachtwoord"; ?>"><br>
<input type="hidden" name="rang" value="<?php echo $rang ; ?>"><br>
<input type="submit" name="mysubmit" value="dit klopt!" />
</form>
<?php

if($rang =="0"){echo"jij bent een lid!";}elseif($rang =="1"){echo"u bent een juf en hebt beperkte rechten";}elseif($rang=="2"){echo"jij bent beheerder";}
}
}
else{
echo'<font color="red"><b>wachtwoord is niet goed!</b></font>';}}else{echo'<font color="red"><b>naam bestaat niet!</b></font>';}}else{?>

<form method="post">
je gebruiksnaam: <input type="text" name="naam"><br>
wachtwoord: <input type="password" name="wachtwoord"><br>
<input type="submit" name="mysubmit" value="klikkie" />
</form>
<?php
};
?>


database.php = select form database
config,php = conection

en de fout is:


Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /home/maarten/domains/uploadwerk.v3host.nl/public_html/logintest.php on line 14

en on line 14 zie ik dat hash gedoe staan maar is daar iets mis mee ?
 
Wouter J

Wouter J

04/04/2011 08:06:06
Quote Anchor link
unexpected T_CONSTANT_ENCAPSED_STRING zoiets geeft vaak aan dat je een $ of . bent vergeten. Zo ook in dit geval, als je naar regel 14 kijkt:
if (sha1($postwachtwoord"SALT") == $wachtwoord){

En nogmaals, gebruik een goede salt.
Gewijzigd op 04/04/2011 08:06:29 door Wouter J
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.