rappel cryptographique: chiffrement symétrique clé K message M chiffré C fonction F pas possible de retrouver facilement M à partir de C sans connaître K F(M, K) = C F(C, K) = M 3DES, Blowfish, AES,... chiffrement assymétrique clé publique Ka clé privée Kb F(M, Ka) = C F(C, Kb) = M pas possible facilement de retrouver Kb à partir de Ka beaucoup plus lent qu'un cryptosystème symétrique RSA, DSA,... fonction de hashage H(M) = C pas possible facilement de retrouver M à partir de C pas possible facilement de trouver deux M qui donnent un même C MD5, SHA-1, SHA-256,... signature en utilisant un cryptosystème assymétrique signature S F(Kb, M) = S vérification de signature: F(Ka, S) =? M en pratique on chiffre un message avec un algo symétrique on chiffre la clé avec un algo assymétrique on signe un hash du message tout ça peut être cassé si on dispose de suffisament puissance de calcul et avec les ordis quantiques c'est encore plus la merde espérez pas que vos trucs ne puissent pas être craqués d'ici 20 ans OpenPGP: standard ouvert décrivant un format de messages chiffrés (RFC2440, novembre 1998) issu de Pretty Good Privacy de Phil Zimmermann (1ère version dispo en 1991) autres implémentations: GNU Privacy Guard, BPG, Hushmail (webmail), Cryptocx (lib),... chaque utilisateur dispose d'une paire de clé pour signer et une autre paire pour chiffrer possibilité de rajouter des paires à son trousseau par après à chaque paire de clé sont associés: - une date d'expiration - un nom (généralement "nom (commentaire) ") - une empreinte et un identifiant qui ne sont pas facilement falsifiables (clé+hash) chacun peut signer les clés des autres de manière à signaler qu'il confirme que le champ "identifiant" correspond bien au propriétaire de la clé les signatures sont "collées" à la clé distribution de clé publique "manuellement" ou via un serveur de clé révocation de clé message spécial signé avec la clé privée de l'importance d'avoir un trousseau de clés à jour à chaque clé publique on associe - un niveau de confiance en l'identité du propriétaire - un niveau de confiance en la capacité de signer les clés des autres du propriétaire de la clé faire un graph avec un web of trust intégration de GPG dans les MUA, programmes d'IM,... gestion des clés avec kgpg, gpgpg,...