gøre min password mere sikkert

Tags:    php

<< < 12 > >>
Hej

Jeg har fået lavet et indhold side op og køre så vil jeg dog lige høre jer omkring hvordan jeg kan gøre siden mere sikkert. :)

jeg har høret noget omkring md5 skal man skrive i php men ved ingen gang hvad det er ?.

Håber du kan hjælp mig :D



13 svar postet i denne tråd vises herunder
4 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato
Du kan også bruge hash( hash_algoritme, tekst ) funktionen. Der findes flere og faktisk mere sikre metoder end MD5 Hash. En god ide er at 'krydre' dit hash med noget salt og peber. Et eksempel på en funktion kunne være således.
Fold kodeboks ind/udPHP kode 

De algoritmer du kan bruge til hashing findes der en liste af her - http://dk2.php.net/manual/en/function.hash-algos.php

Det smarte ved at 'hashe' sit password, er at du kan lave det om, så det ikke er læsbart for almindelige mennesker. Hvis du dog ikke krydrer det med 'salt og peber', kan nogle af dem ofte knækkes nemt. Specielt MD5 er rimelig nem at knække, man har endda lavet en side, hvorpå du kan dekode en MD5 hash og få svaret! - http://www.md5decrypter.com/ - Prøv f.eks. at dekode dette 81d6f316d169150d0e8733866c38684d, det skulle gerne give svaret martin



Indlæg senest redigeret d. 11.12.2011 13:30 af Bruger #4487
du kan gøre noget i den her stil
Fold kodeboks ind/udPHP kode 


Fold kodeboks ind/udPHP kode 


er ikke testet, lige hurtigt sat sammen.
Går ud fra at metoden generateSalt() generer saltet, gennem en tekst streng som er givet i parameteren. Denne metode skulle måske i virkeligheden være privat, da det er en metode der i min optik kun ser ud til at skulle bruges i sammenhæng med metoden hash($str, $salt). Metoden hash() er så den metode der generer dit hashed password med et sha1 hash, hvor ens $str er 'krydret' med noget genereret salt. Man kan sige at hele denne opsætning ligner lidt det jeg lavede, men kenneth har bare opsat det med en klasse, så man kan kalde den fra et objekt.

Der er i øvrigt en fejl, da metoden bliver kaldt som statisk metode, men den er ikke erklæret statisk. Metoden skulle enten have været erklæret statisk, ellers skulle man have oprettet et objekt af klassesn først, som nedenstående.
Fold kodeboks ind/udPHP kode 




Indlæg senest redigeret d. 11.12.2011 22:03 af Bruger #4487
md5(Din kode her);

Det er den funktion du leder efter.



Når de opretter en bruger

$password = md5($_POST['password'];

Og så sæt $password ind i mysql.

Når en bruger skal logge ind så.


$password = md5($_POST['password'];
select from ? where pass = $password and brugernavn = $posted_brugernavn

Noget ligende det.



Jamen hvad skal jeg skrive af kode?



@Martin: MD5Decrypter er ikke en egentlig decrypter, men benytter et rainbowtable af indtastede og i forvejen oversatte tekststrenge. Men ja, giver dig ret i at MD5 er langt mere usikker end fx SHA1



Der findes også sha1 "decrypter" - har jeg ihvertfald set på Google. Jeg ville foreslå en crypt(), eller ligesom @Martin skriver, en hash.



Ville der egentlig være noget galt med at indkryptere et password
og så indkryptere det indkrypteret?



@Anders, Ja! Det ville nedsætte antallet af mulige udfald, og derved gøre nemmere at bryde med bruteforce.



du kan gøre noget i den her stil
Fold kodeboks ind/udPHP kode 


Fold kodeboks ind/udPHP kode 


er ikke testet, lige hurtigt sat sammen.



<< < 12 > >>
t