Kryptering - md5 / extra kryptering

Tags:    kryptering md5

Heej Folks.
Jeg sidder lige og roder med lidt kryptering, har leget rundt med php i en måned tids, og er begyndte at kigge lidt på sikkerhed. Så tænkte det er vel kun en fordel at lave en hurtig nem "extra" kryptering af din md5 kryptering?? Eller ville det ikke gøre den store forskel?

Lige nu skifter min kryptering a ud med z, b med x, 0 med 9, 1 med 8 osv osv. Giver det mening, eller er det bare extra arbejde for ingenting?
Mvh. Wunder.



6 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 10 karma
Sorter efter stemmer Sorter efter dato
Det giver intet. Det er en simpel substitution uden nøgle. Du krypterer eller hasher for at sikre dig imod at andre får fat i dine data i det tilfælde at nogen kan få adgang til din server. Hvis de har det, så kan de læse hvordan din substitution virker og så er den intet værd. Hvis de læser, at du bruger MD5 eller anden god hashing, så er de lige vidt, for det er gode sager!

Og MD5 er ikke kryptering, men hashing. Kryptering kan "vendes" så man får originalen tilbage, det kan man ikke med hashing.



Man kan ikke dehashe (lad os bare kalde det dét :-) ), men man kan forsøge alle mulige forskellige ord og se, om noget matcher. Det kaldes brute forcing og kan tage utroligt lang tid.
Det problem er der så også teknikker til at løse, men det kan du læse om her: http://www.udvikleren.dk/artikler/368/php-krypto-1-hashing/



Ahh okay, tak for svaret, det er fedt at du er så uddybende!
Men siden Hashing stadig siger det samme resultat, hvis inputtet er det sammme, så må man vel også kunne "de" hashe, da det ikke er "dynamisk"?




Fedt. takker mange gange! (:



Som du også læser i Robert's artikel (som jeg husker værende meget gode - du burde læse dem), er MD5 ikke længere anbefalet, og heller ikke sikker. Uden at gå for meget i dybden, vil jeg blot nævne at du bør hashe anderledes (hvis det sikkerhed er dit fokus).

Formålet med hashing er såkaldte checksums. Er du ude på krypto -> dekrypto (hvilket du ikke skal gøre med ting som passwords!), er hashing ikke hvad du skal kigge på, men alt dette giver Robert's artikekel-serie også rigtig god insight i (husk at det er en længere serie, som du kan vinde en del viden på, indenfor emnet - og så tilmed på dansk.. :) )



Man kan ogsaa spare sin energi og benytte en tjeneste (der allerede har en stor cache) istedet for bruteforce selv: http://md5.rednoize.com/

Det goer md5 digests af passwords noget mere usikkert.

Hvis du endelig vil benytte md5, saa husk et salt i din app ... saa skal en angriber ikke blot have adgang til din db men ogsaa din app sourcecode og finde frem til dit salt.

Uanset hvad, saa vil jeg mene at md5 er bedre end plaintekst naar det kommer til at gemme passwords for sine brugere, men det er bare ikke ret godt mere.


Hmmm - jeg mente nok det allerede havde været behandlet her paa sitet tidligere :)
http://www.udvikleren.dk/forum/6058/kryptering-af-data/




Indlæg senest redigeret d. 19.06.2014 11:58 af Bruger #2193
t