Écrire son propre outil de masquage de données personnelles semble prendre vingt minutes. C’est le piège.
En production, j’avais besoin de deux choses peu spectaculaires : nettoyer les infos personnelles du texte libre avant qu’il ne quitte notre système, et chiffrer quelques champs d’identité au repos. Les deux sont faciles à bricoler. Les deux finissent par vous causer des ennuis, sans prévenir.

Les regex de masquage que la plupart des gens écrivent matchent trop large. Elles transforment volontiers un numéro de commande ou un montant de paiement en « [redacted] », et vous ne le remarquez pas avant qu’un client s’en aperçoive. Et le chiffrement de champs maison cache généralement un IV réutilisé ou une fonction de hachage rapide en guise de dérivation de clé : une crypto qui n’a que l’air sûre.
J’avais déjà résolu ça dans un vrai projet, alors j’ai extrait le code, retiré tout ce qui était spécifique à l’app, et je l’ai open-sourcé.
pii-toolkit-cy fournit :
redact()
redact() pour e-mail / carte / IBAN / téléphone, réglé pour NE PAS avaler les entiers bruts comme les numéros de commande
createPiiCipher()
createPiiCipher() avec AES-256-GCM, un IV neuf par valeur, dérivation scrypt et détection de falsification au déchiffrement
zéro dépendance, ESM, types TypeScript inclus.
C’est délibérément petit. C’est né de quelque chose de réel, pas d’un repo de tutoriel.
Publication originale (site externe)