Upgrade to Pro — share decks privately, control downloads, hide ads and more …

TLS 1.3 arrive!!! Et si on comprenait déjà ce q...

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.
Avatar for Arnaud Arnaud
March 21, 2019

TLS 1.3 arrive!!! Et si on comprenait déjà ce que fait TLS 1.2 ?

Avatar for Arnaud

Arnaud

March 21, 2019
Tweet

More Decks by Arnaud

Other Decks in Programming

Transcript

  1. @LocquetArnaud Ce qu’apporte TLS • Confidentialité • Authentification du serveur

    • Authentification du client • Intégrité du message
  2. @LocquetArnaud Code de César Message Clé = 1 Clé =

    3 H E L L O B R E I Z H C A M P K H O O R E U H L C K F D P S I F M M P C S F J A I D B N Q
  3. @LocquetArnaud Obtention certificat serveur • Détenir un nom de domaine

    • Générer une paire de clés et une CSR • Validation du CSR par l’AC et génération du certificat
  4. @LocquetArnaud Validité Certificat • CRL : liste des certificats révoqués

    • OCSP : endpoint HTTP qui donne l’état d’un certificat
  5. @LocquetArnaud Ce qu’apporte TLS • Confidentialité : Chiffrement symétrique •

    Authentification du serveur : Certificat + signature • Authentification du client : Certificat + signature • Intégrité du message : Hachage
  6. @LocquetArnaud Cipher Suite Exemple : TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 • Algorithme d’échange de

    clés • Algorithme d’authentification du serveur • Algorithme de chiffrement des communications ◦ clé AES 128 ◦ mode de chiffrement par bloc GCM
  7. @LocquetArnaud Cipher Suite Exemple : TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 • Algorithme d’échange de

    clés • Algorithme d’authentification du serveur • Algorithme de chiffrement des communications ◦ clé AES 128 ◦ mode de chiffrement par bloc GCM • Hachage
  8. @LocquetArnaud Certificate • Certificat du serveur Vérifié par le client

    : • validité : dates, nom de domaine, ... • AC de confiance ?
  9. @LocquetArnaud Key Exchange - RSA • ServerKeyExchange • PreMasterKey chiffrée

    par la clé publique du serveur présente dans son certificat • Forward Secrety
  10. @LocquetArnaud Finished • Fin des envois du client / server

    • Messages chiffrés par la master key
  11. @LocquetArnaud • Données applicatives ◦ encapsulées ◦ chiffrée • MAC

    : message authentication code permet de vérifier l’intégrité du message Application Data
  12. @LocquetArnaud • Demande d’un certificat client ◦ types de certificat

    acceptés ◦ algos de signature acceptés ◦ AC acceptées Certificate Request
  13. @LocquetArnaud Hash basé sur les messages précédents et signé par

    la clé privée du client Certificate Verify
  14. @LocquetArnaud Sécurité : • Restriction des algos : ◦ TLS_AES_256_GCM_SHA384

    ◦ TLS_CHACHA20_POLY1305_SHA256 ◦ TLS_AES_128_GCM_SHA256 ◦ TLS_AES_128_CCM_8_SHA256 ◦ TLS_AES_128_CCM_SHA256 • Chiffrement du certificat du client TLS 1.3
  15. @LocquetArnaud TLS 1.3 Performance : • Diminution du nombre d’échanges

    : 1 seul A/R • Possibilité de 0 A/R www.keycdn.com