Cet article explique pourquoi l’utilisation de Math.random()
pour générer des mots de passe est dangereuse (prédictibilité, absence de sécurité cryptographique) et propose une solution robuste via l’API Web Crypto et sa méthode crypto.getRandomValues()
. Cette dernière utilise des sources d’entropie cryptographiquement sécurisées, évitant les biais de distribution grâce au rejection sampling.
L’article fournit un exemple d’implémentation complète, incluant :
- Une classe
SecurePasswordGenerator
personnalisable (longueur, types de caractères, exclusion des caractères ambigus). - Une méthode pour calculer la force du mot de passe généré.
- Des bonnes pratiques : validation côté serveur, gestion mémoire, et compatibilité navigateur (HTTPS requis).
À retenir : Toujours privilégier crypto.getRandomValues()
et éviter Math.random()
pour toute application sensible. L’API est largement supportée (Chrome, Firefox, Safari) et garantit une sécurité optimale.
Un générateur de gradient pour Tailwind
Un ensemble d'outils autour de la couleur : générateur de palettes, extraction de couleur d'images, etc.
Un outil graphique pour aider à générer des commandes Linux / Unix de manière graphique
L'article explique que PHP, traditionnellement synchrone, peut optimiser des tâches comme les requêtes SQL en les exécutant de manière asynchrone. Cela permet de lancer des opérations non bloquantes, comme des requêtes de base de données ou des lectures de fichiers, pendant que d'autres tâches sont traitées. PHP a introduit des fonctionnalités asynchrones dès la version 4.3 avec les streams, et a évolué avec les générateurs en PHP 5.5 et les fibers en PHP 8.1, permettant une meilleure gestion des coroutines. L'EventLoop est présenté comme un modèle efficace pour gérer plusieurs opérations asynchrones en utilisant des callbacks, bien que cela puisse mener à un "callback hell". Les promesses sont proposées comme solution pour simplifier la gestion asynchrone, transformant les callbacks imbriqués en une chaîne de promesses plus lisible. Enfin, l'article compare des bibliothèques comme ReactPHP et Amp pour la gestion des promesses et des coroutines, recommandant ReactPHP pour les promesses et Amp pour une approche plus naturelle avec les coroutines, tout en suggérant Revolt pour l'EventLoop.
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre (via https://riduidel.wordpress.com/2024/03/03/1-2-3-backup/ )
Tout est dans le titre
Des générateurs CSS3
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Un outil pour générer un fichier docker-compose à partir d'une commande docker
Tout est dans le titre
L'auteur montre comment installer Stable Diffusion en local