PHP 7.2 intégrera la bibliothèque de cryptographie Libsodium
PHP 7.2 intégrera la bibliothèque de cryptographie Libsodium
qui fera de ce langage le premier à supporter un outil moderne de ce genre, selon Scott
Avec plus de 80 % de part de marché, PHP est devenu l’un des langages de programmation les plus utilisés pour la conception des sites web dynamiques et les applications web. En plus de soutenir ces sites web, PHP est également utilisé pour le développement de certains systèmes de gestion de contenu (CMS en anglais), notamment Dupral, Joomla et bien d’autres encore.
Vu la forte communauté d’utilisateurs entourant ce langage de programmation, une déviation ou un bogue au niveau de ce langage aurait de grandes répercussions dans l’environnement web. Conscient de ce fait, l’équipe en charge du développement de PHP vient d’adopter l’intégration de l’extension Libsodium dans le noyau de la version 7.2 de PHP qui doit sortir d’ici la fin de l’année.
Selon Scott Arciszewski, Chef de développement à Paragon Initiative Enterprises et grand défenseur du renforcement de la cryptographie dans les CMS PHP, l’extension Libsodium qui trouvera sa place dans la prochaine version de PHP offre le chiffrement authentifié, le déchiffrement, des performances accrues pour la cryptographie sur les courbes elliptiques, le hachage de mots de passe ainsi que bien d’autres avantages.
Depuis le mois de novembre 2016, Arciszewski a émis une proposition afin d’intégrer l’extension Libsodium également connue sous le nom Sodium dans le noyau de PHP 7.2 dans le but d’améliorer la sécurité de ce langage et par-delà des autres outils bâtis sur ce langage. Après soumission de cette proposition au vote, Arciszewski annonce que la RFC (Request for comments) Libsodium a été adoptée avec trente-sept voix pour et zéro voix contre.
Au-delà de l’intégration de cet outil de sécurité par défaut dans le noyau de PHP, c’est tout l’environnement gravitant autour de ce langage qui en sera affecté. Arciszewski explique que cette décision d’intégrer Libsodium par défaut dans PHP a été motivée par le fait que WordPress, le CMS écrit en PHP, contient de nombreux problèmes de sécurité dus à l’absence d’outils de cryptographie appropriés. Aussi en intégrant cet outil à PHP, cela obligerait l’équipe de CMS à implémenter une meilleure sécurité dans le CMS. Par ailleurs, cela permettra également aux développeurs PHP et des autres CMS d’intégrer des outils avancés de cryptographie dans leurs applications qui sont exécutées sur les fournisseurs d’hébergement mutualisé, ce qui n’était pas possible jusqu’à présent.
En plus des caractéristiques citées plus haut, Arciszewski considère Libsodium comme une bibliothèque de cryptographie moderne, car selon lui, elle remplit les deux critères essentiels à savoir l’usage des primitives rapides conçues pour résister à une cryptanalyse par canal latéral et l’exposition d’une API de haut niveau simple et sécurisée par défaut. Ainsi en intégrant cet outil au noyau de PHP, ce langage devient, selon Arciszewski, le premier langage de programmation à supporter une bibliothèque de cryptographie « moderne » dans son noyau.
Il ajoute que certains langages comme Go, Ruby, Erlang ou encore Node.js intègrent une pile de sécurité, mais qui ne présente pas de caractéristiques de cryptographie moderne (couche cryptographique et exposition d’API simple et par défaut) telles qu’il le conçoit.
Source : News PHP, Blog Scott Arciszewski
Et vous ?
:fleche: Que pensez-vous de cette nouvelle fonctionnalité de sécurité qui sera intégrée à PHP ?
:fleche: Pourra-t-elle changer l’opinion des personnes qui trouvent que PHP n’est pas sécurisé ?
Voir aussi
:fleche: WordPress est de loin le CMS le plus ciblé par les cyberattaques, en grande partie en raison du mauvais entretien et la négligence des webmasters
:fleche: WordPress : Plus de 90 000 sites et blogs seraient victimes d'attaques lancées par quatre groupes de hackers altérant ainsi leur contenu
:fleche: PHP 5.3.9 corrige une faille de sécurité critique pouvant entrainer un déni de service et plus de 90 bogues
:fleche: La Rubrique PHP, Forum Bibliothèques & Frameworks PHP, Cours et tutoriels PHP, FAQ PHP
PHP 7.2 est disponible en version stable
PHP 7.2 est disponible en version stable
avec la bibliothèque de cryptographie Sodium et d’autres améliorations et nouvelles fonctionnalités
L'équipe de développement de PHP vient d'annoncer la sortie de la deuxième mise à jour de fonctionnalités de PHP 7. PHP 7.2.0 vient presque deux ans après PHP 7.0 et un an après PHP 7.1. Rappelons que PHP 7.0 a apporté des gains de performance avec un moteur Zend Engine jusqu'à deux fois plus rapide que dans la version 5.6, mais également de nombreuses fonctionnalités.
La version 7.1 du langage de développement Web côté serveur a également suivi avec de nouvelles fonctionnalités et encore des gains de performances : jusqu’à 35 % plus rapide pour les charges de travail avec une utilisation intensive du CPU, d'après Zeev Suraski, cofondateur de Zend Technologies.
En ce qui concerne les nouvelles fonctionnalités de PHP 7.1, il s'agissait entre autres du support des types nullable, l'introduction d'un type de retour void qui permet d’indiquer qu’une fonction ne retourne rien, un nouveau pseudo-type similaire à callable appelé Iterable, l'ajout d'un support pour spécifier la visibilité des constantes (public, protected et private), la gestion des exceptions par capture multiple, etc.
PHP 7.2 vient également avec de nombreuses améliorations et de nouvelles fonctionnalités. L’une des grandes nouveautés est la bibliothèque cryptographique Sodium qui a été intégrée au noyau de PHP. Cette bibliothèque logicielle permet le chiffrement, le déchiffrement, les signatures, le hachage de mots de passe et plus encore. D’après Scott Arciszewski, l’ingénieur qui a proposé de l’intégrer au noyau de PHP 7.2, cela va permettre d’améliorer la sécurité du langage, mais également celle des outils construits avec PHP. Il explique par exemple que le CMS WordPress, écrit en PHP, contient de nombreux problèmes de sécurité qui sont dus à l’absence d’outils de cryptographie appropriés. En intégrant la bibliothèque logicielle à PHP, il pense donc que cela obligerait les développeurs de WordPress à implémenter une meilleure sécurité dans le CMS.
Arciszewski considère aussi Sodium comme une bibliothèque de cryptographie moderne comme on n’en trouve pas chez les autres langages. En l'intégrant dans le noyau du langage, PHP devient donc le premier langage de programmation à supporter une bibliothèque de cryptographie « moderne » dans son noyau.
Au-delà de Sodium, PHP 7.2 vient avec des améliorations et nouvelles fonctionnalités comme :
- la possibilité de convertir des clés numériques dans les objets et tableaux lors de cast. Les clés numériques sont maintenant mieux appréhendées lors de cast d'un tableau en objet et d'objet en tableau (cast explicite ou par la fonction settype()) ;
- le comptage d'objets non dénombrables. Un E_WARNING sera émis lors de la tentative d'utilisation de la fonction count() sur un type non dénombrable ;
- HashContext en tant qu'objet ;
- ajout d'Argon2 à l'API pour le hachage de mot de passe ;
- amélioration des constantes TLS ;
- la suppression de l'extension Mcrypt. L'extension MCrypt a maintenant été déplacée du noyau vers PECL. Étant donné que la bibliothèque mcrypt n'a pas eu de mises à jour depuis 2007, son utilisation est fortement découragée. Au lieu de cette extension, soit OpenSSL ou l'extension sodium doit être utilisé.
Vous trouverez sur le site officiel de PHP, la liste exhaustive des changements dans PHP 7.2. Il faut déjà noter qu’il y a quelques évolutions incompatibles avec les versions précédentes qui doivent être testées avant de passer à PHP 7.2 dans les environnements de production. PHP 7.2 est disponible en téléchargement sur son site.
:fleche: Téléchargements PHP 7.2
Source : Liste de diffusion PHP
Et vous ?
:fleche: Quelles versions de PHP utilisez-vous ?
:fleche: Que pensez-vous de cette nouvelle version de PHP ?
:fleche: Quelles sont les fonctionnalités que vous appréciez le plus ?