Ce tutoriel explique comment implémenter le chiffrement au niveau des champs dans Symfony avec Doctrine, afin de protéger les données sensibles stockées en base. L’idée centrale est d’encrypter uniquement certains champs d’entités Doctrine (comme des notes privées ou des clés API) plutôt que l’ensemble de la base, permettant ainsi à l’application de continuer à manipuler des valeurs lisibles en PHP tout en stockant des données chiffrées dans la base. L’auteur recommande cette approche pour limiter les risques en cas de fuite de sauvegardes ou d’accès non autorisé à la base, tout en évitant les inconvénients du chiffrement global (perte de fonctionnalités comme les recherches ou tris).
L’article détaille les cas d’usage pertinents (champs contenant des données personnelles ou critiques) et les compromis à considérer, comme la complexité accrue pour les opérations de requêtage. Il présente également un exemple concret avec le bundle doctrine-encryption-bundle, illustrant comment un champ comme privateNote est chiffré en base tout en restant accessible normalement dans le code PHP. L’outil utilisé, disponible via Composer, simplifie l’intégration de cette fonctionnalité dans un projet Symfony.
Nacho Colomina explique comment Equillar a migré de SecretBox vers l'encryption AEAD (Authenticated Encryption with Associated Data) pour mieux protéger les données sensibles comme les clés privées des portefeuilles système. L'AEAD offre une authentification des données supplémentaires et lie le texte chiffré à son contexte, empêchant ainsi les attaques de contexte croisé. L'article détaille l'architecture mise en place, incluant des Schema Builders pour générer des données supplémentaires de manière cohérente et des services tagués pour une gestion scalable.
Tout est dans le titre
Tout est dans le titre
Utilisation de bcrypt pour le stockage des mots de passe... Éviter de refaire les mêmes erreurs que LinkedIn