Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
TLS 1.3 arrive!!! Et si on comprenait déjà ce q...
Search
Arnaud
March 21, 2019
Programming
0
56
TLS 1.3 arrive!!! Et si on comprenait déjà ce que fait TLS 1.2 ?
Arnaud
March 21, 2019
Tweet
Share
More Decks by Arnaud
See All by Arnaud
TLS 1.3 arrive!!! Et si on comprenait déjà ce que fait TLS 1.2 ?
alocquet
1
120
Rust - Ownership & Borrowing
alocquet
2
72
Serverless
alocquet
0
28
Other Decks in Programming
See All in Programming
バイブコーディング超えてバイブデプロイ〜CloudflareMCPで実現する、未来のアプリケーションデリバリー〜
azukiazusa1
2
700
20250708_JAWS_opscdk
takuyay0ne
2
150
Claude Code + Container Use と Cursor で作る ローカル並列開発環境のススメ / ccc local dev
kaelaela
12
7.4k
MDN Web Docs に日本語翻訳でコントリビュートしたくなる
ohmori_yusuke
1
130
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
0
470
中級グラフィックス入門~効率的なメッシュレット描画~
projectasura
2
1.3k
可変性を制する設計: 構造と振る舞いから考える概念モデリングとその実装
a_suenami
2
500
SwiftでMCPサーバーを作ろう!
giginet
PRO
2
190
[SRE NEXT] 複雑なシステムにおけるUser Journey SLOの導入
yakenji
0
740
MySQL9でベクトルカラム登場!PHP×AWSでのAI/類似検索はこう変わる
suguruooki
1
220
Jakarta EE Meets AI
ivargrimstad
0
280
テストから始めるAgentic Coding 〜Claude Codeと共に行うTDD〜 / Agentic Coding starts with testing
rkaga
16
6k
Featured
See All Featured
Thoughts on Productivity
jonyablonski
69
4.7k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Adopting Sorbet at Scale
ufuk
77
9.5k
Faster Mobile Websites
deanohume
308
31k
Speed Design
sergeychernyshev
32
1k
Optimizing for Happiness
mojombo
379
70k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
For a Future-Friendly Web
brad_frost
179
9.8k
Balancing Empowerment & Direction
lara
1
490
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
282
13k
Transcript
@LocquetArnaud TLS 1.3 arrive!!! Et si on comprenait déjà ce
que fait TLS 1.2 ?
@LocquetArnaud Arnaud Locquet @LocquetArnaud
@LocquetArnaud Moi & TLS
@LocquetArnaud Moi & TLS
@LocquetArnaud Moi & TLS Handshake Failure
@LocquetArnaud moi & TLS
@LocquetArnaud TLS 1.2 - Handshake Protocol
@LocquetArnaud
@LocquetArnaud Historique SSL 1.0 1994 TLS 1.2 2008 TLS 1.3
2018
@LocquetArnaud Ce qu’apporte TLS • Confidentialité • Authentification du serveur
• Authentification du client • Intégrité du message
@LocquetArnaud Hachage
@LocquetArnaud Chiffrement symétrique
@LocquetArnaud
@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
@LocquetArnaud Chiffrement symétrique • Code césar • 3DES • AES
• ChaCha
@LocquetArnaud Chiffrement asymétrique
@LocquetArnaud Ouvert Fermé Fermé clé privée clé publique
@LocquetArnaud Ouvert Fermé clé publique Chiffrement
@LocquetArnaud Ouvert Fermé clé privée Déchiffrement
@LocquetArnaud Ouvert Fermé clé privée Signature
@LocquetArnaud Ouvert Fermé clé publique Vérification Signature
@LocquetArnaud Certificats
@LocquetArnaud Certificat • identifiant • identité • durée de validité
• émetteur • signature • clé publique
@LocquetArnaud Certificat auto signé Arnaud Locquet 29/05/1985 ID : 1010101010
@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
@LocquetArnaud Localisation certificats / clés AC .crt
@LocquetArnaud Localisation certificats / clés AC .crt Serveur .crt signe
@LocquetArnaud Localisation certificats / clés AC .crt Client Serveur .crt
.crt vérifie signature
@LocquetArnaud Localisation certificats / clés AC .crt Client .crt signe
@LocquetArnaud Localisation certificats / clés AC 1 .crt Client .crt
Serveur .crt vérifie signature
@LocquetArnaud Configuration serveur Serveur .crt
@LocquetArnaud Configuration serveur Serveur .crt .crt
@LocquetArnaud Configuration client • TrustStore Client .crt .crt
@LocquetArnaud Configuration client • Key Store Client .crt .crt
@LocquetArnaud Validité Certificat • CRL : liste des certificats révoqués
• OCSP : endpoint HTTP qui donne l’état d’un certificat
@LocquetArnaud Ce qu’apporte TLS • Confidentialité : Chiffrement symétrique •
Authentification du serveur : Certificat + signature • Authentification du client : Certificat + signature • Intégrité du message : Hachage
@LocquetArnaud TLS : Handshake Protocol
@LocquetArnaud TLS 1.2
@LocquetArnaud ClientHello Envoi • versions de TLS supportées • cipher
suites • nombre aléatoire • SNI • ...
@LocquetArnaud Cipher Suite Exemple : TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 • Algorithme d’échange de
clés
@LocquetArnaud Cipher Suite Exemple : TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 • Algorithme d’échange de
clés • Algorithme d’authentification du serveur
@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
@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
@LocquetArnaud ServerHello • Version TLS • Cipher suite • Nombre
aléatoire
@LocquetArnaud Certificate • Certificat du serveur Vérifié par le client
: • validité : dates, nom de domaine, ... • AC de confiance ?
@LocquetArnaud Key Exchange
@LocquetArnaud Key Exchange - RSA • ServerKeyExchange • PreMasterKey chiffrée
par la clé publique du serveur présente dans son certificat • Forward Secrety
@LocquetArnaud Key Exchange - (EC)DHE
@LocquetArnaud Key Exchange - (EC)DHE
@LocquetArnaud Key Exchange - (EC)DHE
@LocquetArnaud Key Exchange - (EC)DHE
@LocquetArnaud Key Exchange - (EC)DHE
@LocquetArnaud Je suis le Maître des clés. Êtes-vous le Cerbère
de la porte ?
@LocquetArnaud ChangeCipherSpec • Passage en mode chiffré avec la master
key
@LocquetArnaud Finished • Fin des envois du client / server
• Messages chiffrés par la master key
@LocquetArnaud • Données applicatives ◦ encapsulées ◦ chiffrée • MAC
: message authentication code permet de vérifier l’intégrité du message Application Data
@LocquetArnaud Authentification Mutuelle Objectif : Authentifier le client
@LocquetArnaud • Demande d’un certificat client ◦ types de certificat
acceptés ◦ algos de signature acceptés ◦ AC acceptées Certificate Request
@LocquetArnaud Certificat du client Certificate
@LocquetArnaud Hash basé sur les messages précédents et signé par
la clé privée du client Certificate Verify
@LocquetArnaud TLS 1.3
@LocquetArnaud TLS 1.3 150,000 top sites
@LocquetArnaud TLS 1.3
@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
@LocquetArnaud TLS 1.3 Performance : • Diminution du nombre d’échanges
: 1 seul A/R • Possibilité de 0 A/R
@LocquetArnaud TLS 1.3 Performance : • Diminution du nombre d’échanges
: 1 seul A/R • Possibilité de 0 A/R www.keycdn.com
@LocquetArnaud Conclusion
@LocquetArnaud