PHP er et veldig enkelt og kraftig språk som lar uerfarne utviklere lage kraftfulle applikasjoner. Men selv om det virker, betyr ikke det at det er sikkert.
For å kryptere data trenger man en nøkkel. Denne genereres ofte ut fra en hemmelighet, eller et passord. Dette gjøres for å få riktig lengde på nøkkelen, uansett lengden på passordet. I dokumentasjonen til mcrypt_module_open() er følgende kode brukt for å genere en nøkkel:
/* Create key */
$key = substr(md5('very secret key'), 0, $ks);
Kryptografi er kanskje et av de mest kompliserte fagene en webutvikler må forholde seg til. Og faktum er at man ikke slipper unna. Problemet med kryptografi er nettopp kompleksiteten. Mange gjør mye riktig, men de vet ikke selv hvorfor det er riktig, eller hvilke fallgruver som finnes.
I denne artikkelen skal vi se på grunnleggende kryptografi. Vi skal gå gjennom de ulike måter å sikre data på og hvordan vi kan gjøre det i praksis med sikkerhetsbiblioteket phpSec.
En ting som kan være en utfordring for en PHP utvikler er sikkerhet. PHP er av natur et ganske usikkert miljø og krever mye av utvikleren når det gjelder sikkerhet. phpSec er et bibliotek under utvikling (av meg) som inneholder en rekke funksjoner som kan gjøre din applikasjon sikrere.