Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Client side encryption : why and how ?

72 views

Published on

This is a small presentation about client side encryption, we present the basic knowledge of encryption and the PFS principal.

Published in: Software
  • Be the first to comment

  • Be the first to like this

Client side encryption : why and how ?

  1. 1. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR QWANT l.demir@qwant.com 06/04/2018 1/24
  2. 2. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Contents Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion 2/24
  3. 3. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Les objectifs de Masq en terme de s´ecurit´e Proposer un espace de stockage s´ecuris´e et commun pour un utilisateur avec : Un chiffrement cˆot´e client; Une s´ecurit´e cl´e en main et transparente; La synchronisation s´ecuris´ee des donn´ees. 3/24
  4. 4. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Peer-to-peer un attaquant externe malicieux : tentant d’intercepter les donn´ees en transit; un attaquant externe malicieux : d´erobant le device. 4/24
  5. 5. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Peer-to-peer avec un Cloud comme backup un attaquant externe malicieux : tentant d’intercepter les donn´ees en transit; un Cloud honnˆete mais curieux peut vouloir lire les donn´ees stock´ees (par exemple suite `a une obligation vis-`a-vis d’une autorit´e). Utilisateurs Cloud 5/24
  6. 6. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Sommaire Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion 6/24
  7. 7. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Chiffrement de donn´ees Rappel : structure d’un syst`eme de fichiers Nom de fichier; Contenu; Meta-donn´ees : taille du fichier, permissions, date d’acc`es / de modification . . . Arborescence de fichiers 7/24
  8. 8. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Sommaire Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion 8/24
  9. 9. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Gestion de la cl´e de chiffrement Les donn´ees dans chaque device sont chiffr´ees avec la cl´e d´eriv´ee du mot de passe utilisateur. L’algorithme utilis´e est le PBKDF2. D´erivation de cl´e Pour contrer l’attaque bruteforce, l’algorithme doit ˆetre r´esistant `a 3 vecteurs d’attaque : le temps de d´eriver la cl´e la m´emoire n´ecessaire le parall´elisme de l’attaque 9/24
  10. 10. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Algorithme de chiffrement Le mode AES-GCM permet d’avoir : la confidentialit´e l’int´egrit´e 10/24
  11. 11. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Privacy des utilisateurs Le chiffrement cˆot´e client Prot`ege les donn´ees de l’utilisateur; Empˆeche le cloud de lire les donn´ees. Zone de confiance Devices Cloud K K K K Zone de semi-confiance11/24
  12. 12. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Sommaire Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion 12/24
  13. 13. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Rappel chiffrement asym´etrique Supposons deux utilisateurs Alice et Bob, chacun poss`ede une paire de cl´e publique et priv´ee. E(m, Pub A ) D(E(m, Pub A ), Priv A ) = m Priv A Pub A Alice (A)Bob (B) Priv B Pub B m Priv A Pub A Alice (A)Bob (B) Priv B Pub B Pub A Pub A Le probl`eme de EVE : le m´echant !!! Qui prouve qu’Alice poss`ede la vrai cl´e publique de Bob et vice-versa ? 13/24
  14. 14. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion MITM E(m, PubE ) D(E(m, PubA ), PrivA ) = m Priv A Pub A Priv B Pub B m PubE E(m, PubA ) PrivE PubE D(E(m, PubE ), PrivE ) = m PubA Bob (B) Alice (A) Solution Envoyer la cl´e publique par un autre canal Utiliser une PKI (entreprise) 14/24
  15. 15. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Solutions actuelles Utilisateurs Négociation d’une clé symétrique avec la paire de clé du Cloud/serveur LKPrivCloud temps K, M1 K, M2 K, M3 K, M4 K, M5 Cloud/Serveur/autre device LKPubCloud Long-term-key 15/24
  16. 16. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion EVE est toujours l`a ! Utilisateurs Négociation d’une clé symétrique avec le Cloud/serveur pour chaque échange/session LKPrivCloud temps K1, M1 K2, M2 K3, M3 K4, M4 K5, M5 Cloud/Serveur/autre device LKPubCloud Long-term-key 16/24
  17. 17. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion La solution : utiliser des cl´es ´eph´em`eres ECDH Alice et Bob g´en`erent une paire de cl´e Elliptic Curve publique et priv´ee; Ils s’´echangent les cl´es publiques. `A partir de leur cl´e priv´ee et la cl´e publique re¸cue, ils d´erivent une cl´e sym´etrique commune. 17/24
  18. 18. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion RSA pour l’authenticit´e Comment garantir l’authenticit´e des cl´es publiques Une paire de cl´e RSA permet : signer la cl´e publique g´en´er´ee v´erifier la cl´e publique re¸cue R´esum´e La paire de cl´e RSA est utilis´ee uniquement pour l’authenticit´e des cl´es publiques EC Les paires de cl´e EC permettant de d´eriver une cl´e sym´etrique commune sont temporaire Conclusion L’utilisation de ECDHE combin´ee avec RSA permet d’assurer le PFS : Perfect Forward Secrecy 18/24
  19. 19. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Appliquer PFS au groupe : 1`ere solution Coˆut pour 3 appareils 2 g´en´eration de cl´es EC 2 d´erivations de cl´e sym´etrique 2 chiffrements (un pour chaque device) 2 envois G´en´eralisation pour n appareils : n-1 op´erations par message PFS PFS Sync initiée par ce device A B C Surcoˆut important 19/24
  20. 20. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Appliquer PFS au groupe : 2`eme solution Solution Echanger une cl´e sym´etrique entre peer toutes les 24 heures G´en´eralisation pour n appareils : n-1 op´erations / 24 heures Partage de clé initié par ce device PFS PFS A B C B K24h K24h K24h 20/24
  21. 21. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Appliquer PFS au groupe : 2`eme solution Solution Echanger une cl´e sym´etrique entre peer toutes les 24 heures G´en´eralisation pour n appareils : n-1 op´erations / 24 heures Utiliser cette cl´e pour envoyer des messages entre peer via une web socket G´en´eralisation pour n appareils : 1 op´eration par message Sync initiée par ce device A B C K24h 21/24
  22. 22. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Appliquer PFS au groupe : 2`eme solution Que devient EVE ? Si EVE enregistre les conversations pendant 10 jours Et, le dixi`eme jour, une des deux paires de cl´e EC fuite Alors, seule les donn´ees du 10`eme jour seront accessibles. Partage de clé initié par ce device PFS PFS A B C B K24h K24h K24h 22/24
  23. 23. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Conclusion Le PFS engendre un surcoˆut important La solution hybride est adapt´ee au groupe Quelle fr´equence pour la mise `a jour de la cl´e sym´etrique via ECDH Que faire lorsque l’on ajoute le Cloud (faire du PFS avec lui) 23/24
  24. 24. Chiffrement cˆot´e client : pourquoi et comment ? Levent DEMIR Contexte Les objectifs de Masq en terme de s´ecurit´e Les mod`eles d’attaque Rappel Notre architecture Chiffrement au repos Chiffrement durant le transfert Chiffrement asym´etrique PFS Conclusion Fin Merci de votre attention. 24/24

×