SlideShare une entreprise Scribd logo
1  sur  82
Télécharger pour lire hors ligne
La sécurité des
communications avec
GPG
Eric Hogue
PHP Québec - 7 août 2014
Agenda
1. Théorie
2. Usage
3. Toile de confiance
Théorie
Pourquoi?
Au Canada?
Communications Security
Establishment Canada
providing and protecting
information
Au Canada?
The "Five Eyes"
● Australia
● Canada
● New Zealand
● United Kingdom
● United States
Espionage industriel
Protéger les autres
● Journalistes
● Militants (droits humains, Printemps arabe)
● Dénonciateurs (Edward Snowden)
Comment se
protéger?
Chiffrement
“Le chiffrement est un procédé de
cryptographie grâce auquel on souhaite rendre
la compréhension d'un document impossible à
toute personne qui n'a pas la clé de (dé)
chiffrement.”
http://fr.wikipedia.org/wiki/Chiffrement
Chiffrement à clé symétrique
Chiffrement à clé publique
OpenPGP
Usage
Installation
Installation
● Linux
○ Déjà installé
● Windows
○ Installé avec Cygwin
○ Binaires: http://gpg4win.org/
● Mac
○ Binaires: https://gpgtools.org/
● Compiler
Création de clés
gpg --gen-key
Création de clés
Création de clés
Création de clés
Création de clés
Finalement
Certificat de révocation
gpg --output revoke.asc --gen-revoke KeyId
Publier sur un serveur de clés
Obtenir l’identifiant de la clé
gpg --list-keys
gpg --send-keys
Exporter dans un fichier
gpg --armor --output gpg1.pgp --export
gpg1@erichogue.ca
Importer une clé
D’un fichier
gpg --import erichogue.gpg
D’un serveur de clé
gpg --search-keys gpg1@erichogue.ca
Signer vs Crypter
Clé privée pour signer
Signer
gpg --clearsign originalFile.txt
gpg --output originalFile.sig --detach-sign
originalFile.txt
Vérifier une signature
gpg --verify originalFile.sig originalFile.txt
Clé publique pour crypter
Crypter
gpg --output file.gpg --encrypt --recipient
gpg2@erichogue.ca file.txt
Décrypter
gpg --output file.txt --decrypt file.gpg
Enigmail
Toile de confiance
On doit vérifier les clés
Confiance
● Confiance dans la validité de la clé
● Confiance en la personne qui a signé une
clé
Confiance dans la validité de la clé
0. Unknow - Inconnue
1. None - Non vérifié
2. Marginal - Vérification rapide
3. Full - Vérification poussée
Confiance dans le signataire
1. Unknown - Inconnu
2. None - Aucune confiance
3. Marginal - La personne vérifie
4. Full - La personne vérifie soigneusement
5. Ultime - Ma clé
Une clé est valide si:
1. Elle est signé par
○ Vous
○ une clé en qui on a pleine confiance
○ 3 clés avec une confiance marginale
2. Il faut passer par un max de 5 clés
Marginale: 2 - Profondeur: 3
Si on a pleine confiance en Dharma
Pleine validité: Blake, Dharma, Chloe, Francis
Marginale: 2 - Profondeur: 3
Si on a confiance marginale en Dharma et
Blake
Pleine validité: Blake, Dharma, Chloe
Marginale: 2 - Profondeur: 3
Si on a Pleine confiance en Dharma, Chloe et
Elena
Pleine validité: Blake, Dharma, Chloe, Francis,
Elena
Confiance
gpg --edit-key gpg2@erichogue.ca
Key Signing Party
Imprimer les informations de la clé
http://openpgp.quelltextlich.at/slip.html
Vérifier avec la clé locale
gpg --edit-key gpg1@erichogue.ca
Vérification de l’indentité
2 pièces d’identité
Importer la clé
Vérifier la clé
Signer la clé
gpg --ask-cert-level --sign-key gpg2@erichogue.ca
Exporter la signature
$ gpg --armor --export gpg2@erichogue.ca >
gpg2_at_erichogue.ca.asc
$ gpg --sign --encrypt --recipient
gpg2@erichogue.ca gpg2_at_erichogue.ca.asc
Recevoir une signature
$ gpg --decrypt gpg2_at_erichogue.ca.asc.gpg
> gpg2_at_erichogue.ca.asc
$ gpg --import gpg2_at_erichogue.ca.asc
Vérifier la signature et exporter
$ gpg --list-sigs gpg2@erichogue.ca
$ gpg --send-keys 2D002C26
Plusieurs UUID sur la clé
● Signer les UUID individuellement
● Envoyer les signatures à l’adresse du UUID
Exporter la clé dans un fichier
gpg --armor --output temp.pgp --export
gpg1@erichogue.ca
Choisir le UUID à signer
Signer
Exporter, encrypter et effacer
$ gpg --armor --export …
$ gpg --sign --encrypt --recipient ...
$ gpg --delete-keys gpg1@erichogue.ca
Répéter pour chaque UUID
Rafraichir les signatures
gpg --refresh-keys
Ressources
GnuPG
https://www.gnupg.org
Jeff Carouth
http://carouth.com/pgp/
Email Self-Defense FSF
https://emailselfdefense.fsf.org
CryptoParty
http://www.cryptoparty.in/montreal
Questions?
Joind.in:
https://joind.in/11578
Twitter:
@ehogue
Blog:
http://erichogue.ca
Crédits
● _Bunn_
○ https://www.flickr.com/photos/weibunn/5444599491
● Marsmettnn Tallahassee
○ https://www.flickr.com/photos/95453036@N08/10679984646
● Adam Hart-Davis
○ https://en.wikipedia.org/wiki/File:PRISM_logo_(PNG).png
● CSEC
○ http://www.cse-cst.gc.ca/home-accueil/history-histoire/crest-insigne-eng.html
● Dustin Ginetz
○ https://www.flickr.com/photos/dustinginetz/11295570955
● Meme Binge
○ https://www.flickr.com/photos/memebinge/14471353850
● Benjamin D. Esham
○ https://commons.wikimedia.org/wiki/User:Bdesham
● Tim Gage
○ https://www.flickr.com/photos/timg_vancouver/200625463
● Jon Callas
○ https://www.flickr.com/photos/joncallas/13178714304
● Richard Garside
○ https://www.flickr.com/photos/richard-g/3549285383
● xaedes & jfreax & Acdx
○ https://en.wikipedia.org/wiki/File:PGP_diagram.svg
● Marcell Dietl
○ https://www.flickr.com/photos/marcelldietl/9655297991
● Cedward Brice
○ https://www.flickr.com/photos/cedwardbrice/6335893651
● Dakota
○ https://www.flickr.com/photos/dakotilla/2129004768
● Kaushik Narasimhan
○ https://www.flickr.com/photos/kaushiknarasimhan/4504860888
● Merrick Monroe
○ https://www.flickr.com/photos/naughtymerrick/3170981560
● Alex
○ https://www.flickr.com/photos/40987321@N02/5580348753
● Sebastien Wiertz
○ https://www.flickr.com/photos/wiertz/4563720850
● sodaro,k
○ https://www.flickr.com/photos/sodarok/3104549807
● Anita Ritenour
○ https://www.flickr.com/photos/puliarfanita/3360463235
● msr
○ https://www.flickr.com/photos/msr/239037005
● s.yume
○ https://www.flickr.com/photos/syume/6026704607
● Philo Nordlund
○ https://www.flickr.com/photos/philon/2477878611
● Feral78
○ https://www.flickr.com/photos/emmettgrrrl/7165744402
● Till Krech
○ https://www.flickr.com/photos/extranoise/278465198
Crédits

Contenu connexe

Similaire à La sécurité des communications avec GPG

Protection des emails
Protection des emailsProtection des emails
Protection des emailsSalma HARIM
 
L'authentification forte ou vers la mort du mot de passe
L'authentification forte ou vers la mort du mot de passeL'authentification forte ou vers la mort du mot de passe
L'authentification forte ou vers la mort du mot de passeAlice and Bob
 
Google Authentication in Python - Destin.pdf
Google Authentication in Python - Destin.pdfGoogle Authentication in Python - Destin.pdf
Google Authentication in Python - Destin.pdfGDG Bujumbura
 
Enjeux et risques sur Internet
Enjeux et risques sur InternetEnjeux et risques sur Internet
Enjeux et risques sur InternetBELVEZE Damien
 
Windows 10: vers la fin des mots de passe ?
Windows 10: vers la fin des mots de passe ?Windows 10: vers la fin des mots de passe ?
Windows 10: vers la fin des mots de passe ?Microsoft Technet France
 
Windows 10: vers la fin des mots de passe ?
Windows 10: vers la fin des mots de passe ?Windows 10: vers la fin des mots de passe ?
Windows 10: vers la fin des mots de passe ?Microsoft Décideurs IT
 

Similaire à La sécurité des communications avec GPG (7)

Protection des emails
Protection des emailsProtection des emails
Protection des emails
 
20170203 securiser donnees_10_etapes
20170203 securiser donnees_10_etapes20170203 securiser donnees_10_etapes
20170203 securiser donnees_10_etapes
 
L'authentification forte ou vers la mort du mot de passe
L'authentification forte ou vers la mort du mot de passeL'authentification forte ou vers la mort du mot de passe
L'authentification forte ou vers la mort du mot de passe
 
Google Authentication in Python - Destin.pdf
Google Authentication in Python - Destin.pdfGoogle Authentication in Python - Destin.pdf
Google Authentication in Python - Destin.pdf
 
Enjeux et risques sur Internet
Enjeux et risques sur InternetEnjeux et risques sur Internet
Enjeux et risques sur Internet
 
Windows 10: vers la fin des mots de passe ?
Windows 10: vers la fin des mots de passe ?Windows 10: vers la fin des mots de passe ?
Windows 10: vers la fin des mots de passe ?
 
Windows 10: vers la fin des mots de passe ?
Windows 10: vers la fin des mots de passe ?Windows 10: vers la fin des mots de passe ?
Windows 10: vers la fin des mots de passe ?
 

Plus de Eric Hogue

Au secours, mon application est brisée - Ou comment déboguer
Au secours, mon application est brisée - Ou comment déboguerAu secours, mon application est brisée - Ou comment déboguer
Au secours, mon application est brisée - Ou comment déboguerEric Hogue
 
Introduction à l'intégration continue en PHP
Introduction à l'intégration continue en PHPIntroduction à l'intégration continue en PHP
Introduction à l'intégration continue en PHPEric Hogue
 
Commencer avec le TDD
Commencer avec le TDDCommencer avec le TDD
Commencer avec le TDDEric Hogue
 
Introduction à l’intégration continue avec Jenkins
Introduction à l’intégration continue avec JenkinsIntroduction à l’intégration continue avec Jenkins
Introduction à l’intégration continue avec JenkinsEric Hogue
 
Introduction to Continuous Integration with Jenkins
Introduction to Continuous Integration with JenkinsIntroduction to Continuous Integration with Jenkins
Introduction to Continuous Integration with JenkinsEric Hogue
 
Guarding Your Code Against Bugs with Continuous Testing
Guarding Your Code Against Bugs with Continuous TestingGuarding Your Code Against Bugs with Continuous Testing
Guarding Your Code Against Bugs with Continuous TestingEric Hogue
 
Continuous testing In PHP
Continuous testing In PHPContinuous testing In PHP
Continuous testing In PHPEric Hogue
 
Getting started with TDD - Confoo 2014
Getting started with TDD - Confoo 2014Getting started with TDD - Confoo 2014
Getting started with TDD - Confoo 2014Eric Hogue
 
Continuous Testing
Continuous TestingContinuous Testing
Continuous TestingEric Hogue
 
Commencer avec le tdd
Commencer avec le tddCommencer avec le tdd
Commencer avec le tddEric Hogue
 
Introduction to ci with jenkins
Introduction to ci with jenkinsIntroduction to ci with jenkins
Introduction to ci with jenkinsEric Hogue
 
Integration continue
Integration continueIntegration continue
Integration continueEric Hogue
 

Plus de Eric Hogue (12)

Au secours, mon application est brisée - Ou comment déboguer
Au secours, mon application est brisée - Ou comment déboguerAu secours, mon application est brisée - Ou comment déboguer
Au secours, mon application est brisée - Ou comment déboguer
 
Introduction à l'intégration continue en PHP
Introduction à l'intégration continue en PHPIntroduction à l'intégration continue en PHP
Introduction à l'intégration continue en PHP
 
Commencer avec le TDD
Commencer avec le TDDCommencer avec le TDD
Commencer avec le TDD
 
Introduction à l’intégration continue avec Jenkins
Introduction à l’intégration continue avec JenkinsIntroduction à l’intégration continue avec Jenkins
Introduction à l’intégration continue avec Jenkins
 
Introduction to Continuous Integration with Jenkins
Introduction to Continuous Integration with JenkinsIntroduction to Continuous Integration with Jenkins
Introduction to Continuous Integration with Jenkins
 
Guarding Your Code Against Bugs with Continuous Testing
Guarding Your Code Against Bugs with Continuous TestingGuarding Your Code Against Bugs with Continuous Testing
Guarding Your Code Against Bugs with Continuous Testing
 
Continuous testing In PHP
Continuous testing In PHPContinuous testing In PHP
Continuous testing In PHP
 
Getting started with TDD - Confoo 2014
Getting started with TDD - Confoo 2014Getting started with TDD - Confoo 2014
Getting started with TDD - Confoo 2014
 
Continuous Testing
Continuous TestingContinuous Testing
Continuous Testing
 
Commencer avec le tdd
Commencer avec le tddCommencer avec le tdd
Commencer avec le tdd
 
Introduction to ci with jenkins
Introduction to ci with jenkinsIntroduction to ci with jenkins
Introduction to ci with jenkins
 
Integration continue
Integration continueIntegration continue
Integration continue
 

La sécurité des communications avec GPG