Cpers.
Is het slim om in de database het wachtwoord op te slaan als md5, of niet?
Is er een betere beveiliging, zoja zeg het even
Met vriendelijke groet.
Cpers.
Is het slim om in de database het wachtwoord op te slaan als md5, of niet?
Is er een betere beveiliging, zoja zeg het even
Met vriendelijke groet.
na mijn weten is het goed zolang de wachtwoord maar niet hetzelfde is als de orginele pass;)
Wat een vraag... Natuurlijk is het slim! In ieder geval beter dan plain text. Daarna is de vraag of je een goed paswoord hebt wat niet makkelijk achterhaald kan worden, na aanleiding van je md5-hash.
Ik zal zeggen wat NIET slim is:
Het wachtwoord als plaintext opslaan in de database!
Zet het als gesalte hash (sha512 of iets wat er qua sterkte op lijkt) in de database en je bent al behoorlijk goed bezig.
Ik trek mijn reactie terug :p
Het is blijkbaar toch niet veilig..
Als het wachtwoord eenmal in de db staat kun je hem niet omzetten na de goeie.
Oke,
Ik zal ff wat in elkaar gaan knutselen
nee zelfs md5 is niet veilig meer, je kan veel waarden al vinden in de zogenoemde "rainbow tables" (grote lijsten met md5 waarden en hun plain text).
Ook is het het een groep wetenschappers in 2007 gelukt om md5 te kraken (zie http://nl.wikipedia.org/wiki/Md5)
dus gebruik sha1()!!!!!
Hashes zijn NIET decodeerbaar...
Wel te brutforcen (zoeken naar iets wat de zelfde hash geeft)
Gooi en nog een salt bij en je hebt rainbow tables (databases met voor en na situaties) zo goed als uitgeschakeld...
Maak de salt random op de een of andere manier (zorg dat je deze wel weer terug kunt vinden) en je hebt een grote kans dat je nog beter bent...
dragontje124
Ik gebruik veel liever sha512!
Daarnaast zorg dat ze zelf geen wachtwoord kiezen maar kies hem voor hun;) Altijd een betere manier zodat ze nooit msn's ofzo kunnen hacken van je leden:)
Citaat van DarsstarHashes zijn NIET decodeerbaar...
Wel te brutforcen (zoeken naar iets wat de zelfde hash geeft)
Gooi en nog een salt bij en je hebt rainbow tables (databases met voor en na situaties) zo goed als uitgeschakeld...
Maak de salt random op de een of andere manier (zorg dat je deze wel weer terug kunt vinden) en je hebt een grote kans dat je nog beter bent...
nee ze zijn niet te decoderen maar bruteforcen is het ook niet echt meer, je kan het misschien "efficient bruteforcen" noemen, ik quote van wikipedia:
Citaat
In 2007 is het een groep wetenschappers gelukt om twaalf verschillende PDF-bestanden met dezelfde hashcode[1] te maken, zogenaamde hash collisions. De auteurs hebben daarmee aangetoond dat MD5 beter niet meer gebruikt kan worden als een verificatiemethode. Op 30 december 2008 gaven zij hiervan een praktijkvoorbeeld[2], door een SSL autoriteitscertificaat te vervalsen voor demonstratiedoeleinden.
sha512 is ook prima iig een hash van de sha famillie is veel veiliger dan md5
Hoe veilig is sha512 op een schaal van 1 tot 10? En wat word er precies bedoeld met een salt?
Citaat van JannickHoe veilig is sha512 op een schaal van 1 tot 10? En wat word er precies bedoeld met een salt?
sha512 is op dit moment nog niet gekraakt dus ik geef het een 9 (omdat er toch altijd zogenaamde collisions zijn, dat zijn waarden die dezelfde hash geven, ook al is de kans hierop heeeeeel klein). Een voorbeeld van een salt:
daar is blaat de salt, zo zijn de hashwaarden niet meer op te zoeken in rainbow tables
je moet Salt & Pepper combineren met Sha512
(gewoon een woordje zoals: koeieren voor zetten (en aan het einde nog een leuk woordje)
Dan heb je rainbow tables ook uitgeschakeld, en als je dat woordje tegen niemand zegt, bruteforces ook een stuk lastiger gemaakt.
Citaat van dragontje124hoe groter de hash hoe meer mogelijkheden dus hoe minder kans op collisions
*gaat er even van uit dat er geen maximale opslag capaciteit is*
Aangezien er oneindig veel mogelijkheden. (door geen maximale opslag)
Wat krijg je als je oneindig deelt door het aantal mogelijke hashes?
emhe...
Oneindig? Een zoveelste deel van een steeds groter wordende oneindigheid?
http://php.net/manual/en/function.sha1.php
De eerste comment (van boven af gezien) gaat over random salts :p
Citaat van DarsstarToon Meer
*gaat er even van uit dat er geen maximale opslag capaciteit is*
Aangezien er oneindig veel mogelijkheden. (door geen maximale opslag)
Wat krijg je als je oneindig deelt door het aantal mogelijke hashes?
emhe...
Oneindig? Een zoveelste deel van een steeds groter wordende oneindigheid?
http://php.net/manual/en/function.sha1.php
De eerste comment (van boven af gezien) gaat over random salts :p
Je gaat er dus allereerst van uit dat er geen maximale opslag capaciteit is, klopt dus niet
ten tweede, oneindig delen door oneindig, daar kan van alles uit komen zelfs 12 ofzo want de ene oneindig is anders dan de andere oneindig (delen door oneindig werkt dus niet hetzelfde als delen door een bekend getal)
ik zal even kijken naar die comment
Citaat van dragontje124delen door oneindig werkt dus niet hetzelfde als delen door een bekend getal
Je deelt toch echt door een bekend (ok, berekenbaar) getal hoor...
Het aantal mogelijke hashes staat vast per algoritme...
Het gaat maar om het idee he :p
Theoretisch gezien zijn er voor elke mogelijke hash oneindig veel plaintext dingen die die hash kunnen maken...
*ja, weer een leuk aantal assumpties, blijft leuk*
Citaat van Darsstar
Je deelt toch echt door een bekend (ok, berekenbaar) getal hoor...
Het aantal mogelijke hashes staat vast per algoritme...
Het gaat maar om het idee he :p
Theoretisch gezien zijn er voor elke mogelijke hash oneindig veel plaintext dingen die die hash kunnen maken...
*ja, weer een leuk aantal assumpties, blijft leuk*
hmm wacht ik heb weer eens niet goed gelezen :p. het klopt inderdaad dat er oneindig aantal verschillende inputs zijn om dezelfde hash te maken, maar dit is dus gewoon omdat er oneindig verschillende input mogelijk is (alleen al omdat je de lengte van de plain text van 0 t/m oneindig kan variëren), dus ja op dat punt heb je eigenlijk wel gelijk :p
Heb je nog geen account? Registreer je nu en word deel van onze community!