00 - Pourquoi chaque dev devrait comprendre la crypto
Ce que tu vas apprendre
- Pourquoi la cryptographie te concerne, meme si tu ne fais pas de sécurité
- Ce que cette serie d'articles couvre (et ne couvre pas)
- Les erreurs classiques qui arrivent quand on ignore ces sujets
Prerequisites
Aucun. C'est le point de depart de la serie.
Non, pas cette crypto-la
Quand je dis "crypto", je ne parle pas de Bitcoin, d'Ethereum ou de NFTs de singes. Je parle de la vraie cryptographie : celle qui fait que ton git push arrive sur GitHub sans qu'un type dans un cafe puisse lire ton code. Celle qui fait que ta connexion SSH a un serveur de production ne se fait pas intercepter. Celle qui fait que quand tu vois "Verified" a cote d'un commit, tu peux avoir confiance.
La cryptographie est partout dans ton quotidien de développeur fullstack. Tu l'utilises deja sans le savoir. Le problème, c'est que "sans le savoir" finit toujours par te rattraper.
L'anecdote qui m'a convaincu
Ma première vraie claque avec les clés SSH, c'etait il y a quelques annees. Vendredi soir, 22h. Un client me demande une correction urgente en production. Je me connecte a mon VPS... et rien. Permission denied (publickey). Pas de mot de passe de secours, pas d'acces console, rien.
J'avais régénéré ma clé SSH la semaine précédente (pour "faire le menage") sans mettre à jour authorized_keys sur le serveur. Le genre de truc bete qu'on fait en 10 secondes et qui te bloque pendant 3 heures un vendredi soir, le temps de contacter l'hébergeur pour un acces recovery.
Depuis ce jour-la, je ne touche plus a une clé sans comprendre exactement ce que je fais, et j'ai toujours un plan B.
Pourquoi ca concerne tous les devs
Tu n'as pas besoin d'etre expert en sécurité. Mais tu as besoin de comprendre les bases, parce que :
Le chiffrement protégé les donnees de tes utilisateurs. Si tu développés une API, tu geres du HTTPS. Si tu stockes des mots de passe, tu utilises des fonctions de hachage. Meme un site vitrine a besoin d'un certificat TLS.
L'authentification par clés remplace les mots de passe. SSH sans clé, c'est comme laisser la porte ouverte avec un Post-it "motdepasse123" colle dessus. En 2026, GitHub a désactivé l'authentification par mot de passe depuis un bon moment deja (aout 2021, pour etre precis). Il faut savoir gerer ses clés.
La signature prouve que c'est bien toi. N'importe qui peut faire un git commit --author="Linus Torvalds <torvalds@linux-foundation.org>" et ca marche. Sans signature GPG ou SSH, un commit est juste une déclaration sur l'honneur. Dans un contexte DevOps avec du CI/CD, c'est un vrai problème.
La gestion des clés est une competence de survie. Rotation, backup, passphrase, clés materielles... ignorer ces sujets, c'est attendre de se faire pieger.
Ce que cette serie couvre
J'ai organise cette serie en 8 articles, du plus fondamental au plus pratique :
- Cette introduction : tu y es
- Chiffrement symetrique vs asymetrique : les bases theoriques, mais avec des commandes
opensslconcrètes - Les clés SSH de A a Z : génération, configuration, multi-clés, les erreurs classiques
- GPG : signer, chiffrer, prouver son identité : le couteau suisse de la crypto
- Signer ses commits Git : GPG et SSH, configuration GitHub/GitLab
- TLS, HTTPS et certificats : ce qui se passe quand tu tapes
https:// - Gerer ses clés : rotation, backup et hardware keys : les bonnes pratiques pour ne pas finir comme moi un vendredi soir
- Glossaire complet : tous les termes expliques simplement
Chaque article contient des commandes que tu peux taper dans ton terminal. Pas de theorie pure : on fait les choses.
A qui s'adresse cette serie
Aux développeurs fullstack qui utilisent git, SSH et deploient des applications. Pas besoin d'un background en maths ou en sécurité. Si tu sais ouvrir un terminal et taper ssh user@serveur, tu as le niveau.
Je déconseillé de sauter directement aux articles pratiques (SSH, GPG) sans lire au moins l'article sur le chiffrement symetrique et asymetrique. Les concepts de clé publique et clé privee reviennent partout, et si tu ne comprends pas la base, le reste sera flou.
On y va
La cryptographie n'est pas un sujet reservee aux specialistes. C'est un outil du quotidien, comme git ou Docker. Et comme git ou Docker, ca s'apprend en pratiquant.
Prochain article : Chiffrement symetrique vs asymetrique.
Navigation : Introduction | Suivant : 01 - Chiffrement symetrique vs asymetrique
Sources
- Why Every Developer Should Care About SSH Keys par SSH.com
- GitHub's switch to token-based authentication (August 2021) par GitHub Blog
- An Overview of Cryptography par Gary C. Kessler
Retrouve d'autres articles techniques sur paltemps.fr.