10 berichten aan het bekijken - 1 tot 10 (van in totaal 10)
  • Q:
    Bijdrager
    The JM

    [php] Wachtwoorden beveiligd opslaan?

    Ik heb een login-schermpje gemaakt waarin twee tekstvelden staan. Die tekstvelden zijn gekoppeld aan 2 variabelen (gebruikersnaam en wachtwoord) en als de ingevoerde tekst overeen komt met de variabelen mag je doorgaan.

    Alleen nu is het probleem dat iedereen met ftp-toegang kan zien waar die variabelen voor staan en daarmee kunnen ze ook mijn gebruikersnaam en wachtwoord zien.

    Kan ik deze (het wachtwoord in ieder geval) beveiligd opslaan in een php script? Kan ik deze encrypten?

    Bijdrager
    J-R0eN

    Ja dat kan wel. Maar wat bedoel je iedereen die ftp toegang heeft kan het zien? Dan moet iemand dus inloggen op jou server via ftp dan bestand downloaden, openen en dan kijken wat er in die variablen staat om vervolgens zo in te loggen..

    Als ze die toegang hebben kunnen ze ook gelijk de pagina’s die je wilt beveiligen downloaden…

    Bijdrager
    Martijn Snels

    Sla je een MD5 op van je wachtwoord en gebruikersnaam en zodra je iets invoert in de login form maak je van deze ook een MD5 en vergelijk je die vars.

    Bijdrager
    xino

    Gebruik ook in het geval van MD5 een moeilijk wachtwoord (letters, cijfers en vreemde karakters) want er zijn genoeg sites die combinaties vervormen naar MD5 en waarmee vervolgens een MD5 wachtwoord teruggezet kan worden. Het woord “ilovedog” zal waarschijnlijk zo te kraken zijn terwijl “[email protected]” dit niet zal zijn

    Inactief
    Anoniem
    ”The

    Alleen nu is het probleem dat iedereen met ftp-toegang kan zien waar die variabelen voor staan en daarmee kunnen ze ook mijn gebruikersnaam en wachtwoord zien.

    Je kan ook je vars vergelijken met waardes uit een (MySQL) database. Deze db heeft een apart loginname + password, los van de FTP toegang.

    Bijdrager
    iJoost

    Ik zou op dit moment SHA1 gebruiken (in plaats van MD5) om een hash van de wachtwoorden op te slaan. Noooooit de wachtwoorden zelf opslaan!;-)

    En voeg dan een beetje “zout” toe, zoals dat heet, zodat als het per ongeluk toch een woordenboek woord is de hash niet met brute force opgezocht kan worden.

    Overigens kan ik nog wel -tig andere security problemen verzinnen als je Jan en Alleman er via FTP gewoon bij laat. Dat moet je denk ik anders regelen.

    Bijdrager
    The JM

    Allereerst heeft niet iedereen toegang tot ftp, maar we beheren de site met z’n vieren dus die 4 hebben wel toegang. Maar ik heb een systeem waar iedereen artikel kan toevoegen en wil ik die 4 aparte inloggegevens geven waarmee de naam waaronder het artikel wordt geplaatst wordt bepaald. En daarom wil ik de wachtwoorden beveiligd hebben staan, zodat niemand onder iemand anders z’n naam kan plaatsen.

    Werkt dat SHA1 of MD5 net als wachtwoorden in htaccess?

    Bijdrager
    iJoost

    SHA1 en MD5 zijn hashes. Daarmee versleutel je een wachtwoord zodanig dat je ‘m er nooit meer uit terug kunt krijgen. Je zult er zelf verder iets leuks mee moeten doen.

    (En ik kan me voorstellen dat htaccess een van de twee ook gebruikt.)

    Bijdrager
    The JM

    Ok, bedankt. Ik weet iig waarop ik moet googlen:)

    Bijdrager
    tw

    [code:1:ead0807287]

    public function generatePassword ( $len = 8 ) {

    $pwd = ”;
    mt_srand ( Controller :: make_seed ( ) );

    for ( $i = 0; $i < $len; $i++ ) {
    $num = mt_rand ( 48, 122 );

    if ( ( $num >= 58 && $num <= 64 ) || ( $num >= 91 && $num <= 96 ) )
    $num = mt_rand ( 65, 90 );

    $pwd .= chr ( $num );
    }

    return $pwd;

    }

    public static function generateSalt ( $len = 8 ) {

    $salt = ”;
    mt_srand ( Controller :: make_seed ( ) );

    for ( $i = 0; $i < $len; $i++ ) {
    $num = mt_rand ( 33, 126 );

    if ( $num == 92 )
    $num = 93;

    $salt .= chr ( $num );
    }

    return $salt;

    }

    public static function generateHash ( $salt, $md5_once_pw ) {

    return hash ( ‘md5’, hash ( ‘sha256’, hash ( ‘md5’, $salt ) . $md5_once_pw ) );

    }

    [/code:1:ead0807287]

    maak gebruik van de algemene encrypt functie ‘hash’ deze is een stuk sneller dan de aparte md5/sha functies

10 berichten aan het bekijken - 1 tot 10 (van in totaal 10)

Je moet ingelogd zijn om een reactie op dit onderwerp te kunnen geven.