1 2 3 4 5 6 7 8 9 | <?php function blowfishCrypt($password,$cost) { $chars='./ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; $salt=sprintf('$2a$%02d$',$cost); for($i=0;$i<22;$i++) $salt.=$chars[rand(0,63)]; return crypt($password,$salt); } ?> |
1 | $hash=blowfishCrypt('hoeperdepoep',10); |
1 | $hash=blowfishCrypt('hoeperdepoep', 35); |
En die salt wordt inderdaad in bovenstaande code opgebouwd, maar ik zou dus verwachten dat wanneer mijn salt wijzigt, mijn hash ook wijzigt?quote:CRYPT_BLOWFISH - Blowfish hashing with a salt as follows: "$2a$", "$2x$" or "$2y$", a two digit cost parameter, "$", and 22 digits from the alphabet "./0-9A-Za-z". Using characters outside of this range in the salt will cause crypt() to return a zero-length string.
Eh nee er staatquote:Op woensdag 21 november 2012 21:38 schreef Pakspul het volgende:
Voor php versie 5.3.7 start de hash altijd met $2a$. Staat iets verder in de omschrijving.
Ok, dus de salt prefix mag alleen starten met $2a$ in mijn geval. Maar waarom start de HASH dan altijd met $2 (dus niet $2a$)? en waarom wijzigt de hash niet als de salt (cost) wijzigt?quote:Versions of PHP before 5.3.7 only support "$2a$" as the salt prefix
salt != hash, hij ondersteund alleen salt met prefix $2a$, en dit zal wel in het algoritme enige invloed hebben op de uitkomst, mogelijk dat hij daar iets van gebruikt voor identificatie en daarom start je hash met $2.quote:Op woensdag 21 november 2012 21:42 schreef Swetsenegger het volgende:
[..]
Eh nee er staat
[..]
Ok, dus de salt prefix mag alleen starten met $2a$ in mijn geval. Maar waarom start de HASH dan altijd met $2 (dus niet $2a$)? en waarom wijzigt de hash niet als de salt (cost) wijzigt?
Eh ja dat gooi IK niet door elkaar, maar jij...quote:
Ja dat zeg ikquote:, hij ondersteund alleen salt met prefix $2a$
Ja, zover was ik ook, maar ik wil dus weten WAT die salt nu precies doet, want ik zie dus GEEN invloed op de uitkomst als er iets significants in de salt wordt gewijzigd.quote:, en dit zal wel in het algoritme enige invloed hebben op de uitkomst, mogelijk dat hij daar iets van gebruikt voor identificatie en daarom start je hash met $2.
Ik denk dat het het aantal rondes zijn wat hij uitvoert, want bij 15 doet hij er velen malen langer over t.o.v. 10, maar dan moet je even uitzoeken wat de definities van de prefix allemaal zijn. Want crypt gebruikt diverse prefixes om bepaalde algoritmes uit te voeren, dan moet je de prefix van blowfish uitzoeken.quote:Op woensdag 21 november 2012 22:38 schreef Swetsenegger het volgende:
[..]
Ja, zover was ik ook, maar ik wil dus weten WAT die salt nu precies doet, want ik zie dus GEEN invloed op de uitkomst als er iets significants in de salt wordt gewijzigd.
Ik heb hier heel veel gevonden.quote:Op woensdag 21 november 2012 22:50 schreef Pakspul het volgende:
[..]
Ik denk dat het het aantal rondes zijn wat hij uitvoert, want bij 15 doet hij er velen malen langer over t.o.v. 10, maar dan moet je even uitzoeken wat de definities van de prefix allemaal zijn. Want crypt gebruikt diverse prefixes om bepaalde algoritmes uit te voeren, dan moet je de prefix van blowfish uitzoeken.
Wat doet de functie crypt()? Als ik het wachtwoord en salt concatenate en dan versleutel, veranderd de output namelijk wel als ik $cost veranderd van 10 naar 35.quote:Op woensdag 21 november 2012 21:11 schreef Swetsenegger het volgende:
Wat doet dit?
[ code verwijderd ]
Want welk $password ik ook gebruik, de hash begint altijd met $2 en als ik met hetzelfde wachtwoord de $cost wijzig, wijzigt de hash niet.
maw
[ code verwijderd ]
geeft dezelfde output als
[ code verwijderd ]
-edit-
php.net zegt
[..]
En die salt wordt inderdaad in bovenstaande code opgebouwd, maar ik zou dus verwachten dat wanneer mijn salt wijzigt, mijn hash ook wijzigt?
Je kunt gewoon javascript opnemen in de html die je vanuit php genereert.quote:Op zaterdag 24 november 2012 16:35 schreef pascal08 het volgende:
Ik heb een lastige vraag en ik weet niet in welk topic ik 'm moet posten.
Stel ik laat een stuk HTML code echoën via PHP. Kan ik dan in dat stuk HTML via JavaScript dingen inserten met bijvoorbeeld: $('selector').html(data); ?
Wordt dat niet ontzettend lelijk dan? Het zijn nogal grote scripts.quote:Op zaterdag 24 november 2012 16:50 schreef Light het volgende:
[..]
Je kunt gewoon javascript opnemen in de html die je vanuit php genereert.
Bij een simpele versleuteling is het makkelijker om de onversleutelde tekst weer te krijgen. Daar de salt uithalen is niet makkelijk maar wel mogelijk.quote:Op zaterdag 24 november 2012 02:55 schreef pascal08 het volgende:
[..]
Wat doet de functie crypt()? Als ik het wachtwoord en salt concatenate en dan versleutel, veranderd de output namelijk wel als ik $cost veranderd van 10 naar 35.
Maar goed, zelfs een simpele versleuteling met een goede salt kan een wachtwoord genereren dat nooit te brute-forcen is, toch?
Dan zet je de scripts in een aparte js-file en ga je die inladen. Dan heb je alleen nog een oplossing nodig om het script wat parameters mee te geven.quote:Op zaterdag 24 november 2012 16:52 schreef pascal08 het volgende:
[..]
Wordt dat niet ontzettend lelijk dan? Het zijn nogal grote scripts.
1 2 | <script type="text/javascript" src="/my/script/location/here"></script> <script type="text/javascript">myscript.init('foo', 'bar', 'baz');</script> |
Ik ben eerder geneigd om grotere stukken html te gebruiken dan om javascript te gebruiken om de html te genereren.quote:Waar zou jij voor kiezen? Grote stukken HTML code, of kleine stukken HTML code via een PHP loop met JavaScript erin?
Nog niet. Laatste project in ZF1 nog bezig. Daarna omschakelen,quote:Op zaterdag 24 november 2012 21:49 schreef henrivo het volgende:
Niemand hier bekend met Zend Framework 2?
Dan zou ik eerder voor Codeigniter gaan ofzo. Dat is best simpel om in te stappen.quote:Op zondag 25 november 2012 00:06 schreef henrivo het volgende:
Ik wil heel graag met ZF2 leren werken, maar heb geen ervaring met 1.x. De leercurve is ook best steil dus vroeg me af hoe het beste onder de knie te krijgen, aangezien de tutorial op de website al best lastig is..
Maar dat komt denk ik meer omdat ik er ook niet veel van wil weten.quote:Op zondag 25 november 2012 00:07 schreef Juicyhil het volgende:
[..]
Dan zou ik eerder voor Codeigniter gaan ofzo. Dat is best simpel om in te stappen.
Snap van Zend nog steeds niet ongelofelijk veel
Ja maar Zend is zo lekker uitgebreid, zoveel mogelijkheden en zulksquote:Op zondag 25 november 2012 00:07 schreef Juicyhil het volgende:
[..]
Dan zou ik eerder voor Codeigniter gaan ofzo. Dat is best simpel om in te stappen.
Snap van Zend nog steeds niet ongelofelijk veel
En hoeveel daarvan denk je te gaan gebruiken?quote:Op zondag 25 november 2012 00:08 schreef henrivo het volgende:
[..]
Ja maar Zend is zo lekker uitgebreid, zoveel mogelijkheden en zulks
Niet relevant, het kán gewoonquote:Op zondag 25 november 2012 00:09 schreef Juicyhil het volgende:
[..]
En hoeveel daarvan denk je te gaan gebruiken?
Nah, toen ik Zend gebruikte, werd er een fractie van alle mogelijkheden gebruikt.quote:
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |