Beginners opdracht

  • Beste Cp'ers


    Ik ben nu al een tijdje bezig met programmeren en zoek wat opdrachten zodat ik wat kan oefenen, ik heb zelf ook al wat verzonnen maar nu kom ik niet echt meer verder. Mijn eerste echte script staat ook op CP namelijk: http://www.criminalspoint.com/…aad-het-getal-script.html


    Nu zoek ik dus wat 'beginners' opdrachten op het niveau van mijn vorige script. Zoals je ziet het ik de basis en misschien iets meer als de basis van PHP en MySQL. En uiteraard beschik ik over xHtml en CSS.


    Ik hoop dat jullie wat opdrachten voor me weten.


    Alvast bedankt


    mvg

    Beginnend en fanatiek PHP-er.
    Mediatechnologie / leerjaar 3 / Zoekend naar php-opdrachten op niveau!

  • Misschien suggesties, aangezien ik niet echt zo snel een "fout" crime script kan vinden?


    Btw, een developer maakt ook scripts neem ik aan ;)

    Beginnend en fanatiek PHP-er.
    Mediatechnologie / leerjaar 3 / Zoekend naar php-opdrachten op niveau!

  • @BrokenTrack hij wilt iets van het zelfde niveau, ik vermoed dat hij nog nooit van beide afkortingen heeft gehoord.


    Je kunt een simpel login systeem maken met oog op veiligheid.
    Doe dan eerst even wat onderzoek naar de volgende begrippen: SQL-injection, salting, bcrypt, xss en session fixation.


    Maar kom welom feedback vragen voor je iets vrijgeeft.

  • Darsstar


    dankje. een login script heb ik al gemaakt, met md5 (wat niet helemaal veilig is als ik sommige reacties hoor) en wat sessions. Maar heb je misschien voorbeelden van die begrippen die ik dan kan toepassen in het script?

    Beginnend en fanatiek PHP-er.
    Mediatechnologie / leerjaar 3 / Zoekend naar php-opdrachten op niveau!

  • Salting gaat over iets toe te voeren aan het wachtwoord woordat je het hashed. Er bestaan namelijk zogeheten rainbow tables zoals http://passcracking.com die kunnen zoeken of een gehashde waarde in hun database voorkomt en dan de ongehashde waarde terug geeft.
    Door iets toe te voegen wat uniek is voor jouw site, of liever nog, voor die user zou er dan zo'n rainbow table gemaakt moeten worden voor elke site/user wat veel langer duurt dan een bestaande gebruiken.


    Bcrypt is een manier van hashen die rekening houd met Moore's law - processoren worden per achttien maanden twee maal zo krachtig worden.


    XSS komt er op neer dat een gebruiker code in bijvoorbeeld zijn username probeert te zetten om zo elke keer dat zijn username in de output voorkomt je browser de code uitvoert. Als de output html is hoor je htmlspecialchars() te gebruiken met de juiste parameters (die van de situatie afhangen.)


    De rest mag je zelf opzoeken.

  • Hmm, security in PHP is redelijk advanced als je echt jezelf daarin wil verdiepen moet je veel meer doen dan enkel artikelen erover lezen. Als je echt alles ervan wilt begrijpen moet je PHP zelf volledig verstaan en dan heb ik het niet over het scripten in PHP maar over de taal waarin PHP is geschreven en dan waar die taal in is geschreven (assembler?) om zo erachter te komen hoe bugs ontstaan e.d maar dat is ver boven de limiet van een programmeur ;) .


    Als je gewoon jezelf wilt verbeteren raad ik je aan een gastenboek te maken gewoon simpel en deze dan uit te breiden met de kennis die je hebt opgedaan, steeds verbeteren tot je echt denkt dat het niet beter kan.
    Denk bij het verbeteren aan bijv. een login script erbij maken, emoticons gebruiken, UBB codes toelaten e.d


    :cheer:

  • Is een goed idee? Het beste idee :P had ik dat in de beginjaren dat ik PHP leerde maar ook gedaan, je leert niet alleen door te doen maar je gaat problemen ook beter zien en uiteindelijk scripts verbeteren tot het maximum is wat elke programmeur wel wil.


    Ik ben ook meer van het principe dat je beter een werkend prototype hebt dat je in 2 dagen gemaakt hebt dan een script waar je 5 maanden tot in de perfectie hebt uitgewerkt en toch nog failed, terwijl je prototype zij ding al doet en je het nog 'gemakkelijk' kunt verbeteren en beveiligen e.d. Moesten meer programmeurs dit doen zouden er zoveel bugs niet hebben gezeten in al die gratis sources ;).

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!