La sécurité d’un système commence par sa connaissance exhaustive. Or, plus le système est compliqué, plus il est difficile de comprendre ses composants et leurs interactions ; il devient plus difficile à sécuriser. De ce fait, pour le blinder, il faut simplifier l’ensemble et en maîtriser chaque aspect. C’est là que PHP et ce livre entrent en scène.
PHP adopte une approche décomplexée pour résoudre les problèmes sur le Web. Les performances, la montée en charge, la courbe d’apprentissage et la sécurité tirent profit de cette approche pragmatique. Parfois cependant, cette conception se retourne contre nous. Trouver un compromis entre la rapidité, la simplicité d’apprentissage et la sécurité amène chaque expert spécialisé dans l’un de ces domaines à critiquer les choix qui favorisent les autres. Si les performances sont primordiales, un gestionnaire de mémoire qui veille aux allocations ressemble à un boulet.
PHP a grandi avec le Web et, comme ce dernier, il a grandi trop vite. Les webmestres ont évolué de la même façon. Lorsqu’ils ont une idée, ils la veulent sur un site, en ligne, et aussi vite que possible. C’est la course pour être le premier arrivé, sinon quelqu’un d’autre aura eu la même idée et aura raflé la prime des leaders. Sur le Web, l’arrivée sur le marché et l’avantage au premier entrant sont cruciaux. Et dans le même temps, il faut que l’application fonctionne correctement. PHP excelle dans ce domaine. Il est facile à prendre en main, il s’adapte énormément et il supporte les meilleurs trafics.
Le revers de la médaille est la sécurité.
La sécurité est un art difficile, et il faut des années pour la maîtriser. Elle est aux antipodes de la nature chaotique et bouillonnante du Web et de ses développements. PHP a sa part de responsabilité dans l’insécurité du Web.
Il y a des aspects de ce langage que tous ceux qui sont impliqués dans sa création auraient dû appréhender autrement dès l’origine.