by Nikita Malyschkin
nikita.malyschkin@rwth-aachen.de
RWTH Aachen University
Proseminar Netzwerke und Internet
24.01.2019
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Why TLS 1.3?
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Cryptography in a nutshell
Cryptography is
the science or practice
of securing communication between multiple parties.
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Cryptography in a nutshell
Different aspects of security
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Cryptography in a nutshell
Tools of cryptography
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Cryptography in a nutshell
Symmetric Cipher
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Cryptography in a nutshell
Block Cipher
Payload: 127
Key: 13
Encryption: 127 x 13 = 1651
Decryption: 1651 / 13 = 127
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Cryptography in a nutshell
Stream Cipher
Payload: Hello World
Key: 18
Encrypted data: Zwddg Ogjdv
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Cryptography in a nutshell
Asymmetric Cipher
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Cryptography in a nutshell
Asymmetric Cipher
Relies on the fact that decryption can only be done with the private key which can not be deduced from the public key
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Cryptography in a nutshell
Hash Function
Consumes a block of data and computes a representative small block called hash.
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Cryptography in a nutshell
Hash Function Example: Digit sum
Input: 5129576
Digit sum 1: 5+1+2+9+5+7+6 = 35
Digit sum 2: 3+5 = 8
Output: 8
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Transport Layer Security
Transport Layer Security (TLS)
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Transport Layer Security
Handshake protocol
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Transport Layer Security
Record protocol
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
TLS 1.2 → TLS 1.3
Removal of static RSA
and Diffie-Hellman cipher suites
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
TLS 1.2 → TLS 1.3
Encryption of most handshake messages
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
TLS 1.2 → TLS 1.3
Redesign of the handshake protocol
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
TLS 1.2 → TLS 1.3
2-RTT (TLS 1.2)
client
server
+ ClientHello
+ Cipher Suites
+ ServerHello
+ Cipher Suite
+ key share
* Certificate
+ Data
+ key share
+ Finished
+ Finished
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
TLS 1.2 → TLS 1.3
1-RTT (TLS 1.3)
client
server
+ ClientHello
+ Cipher Suites
+ keyshare
+ ServerHello
+ Cipher Suite
+ key share
* Certs
+ Finished
+ Finished
+ Data
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
TLS 1.2 → TLS 1.3
Remove old ciphers, add new ones
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
TLS 1.2 → TLS 1.3
Remove compression support
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
TLS 1.2 → TLS 1.3
0-RTT
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
0-RTT in depth
0-RTT but how?
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
0-RTT in depth
PreShared Key (PSK)
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
0-RTT in depth
0-RTT
client
server
+ ClientHello
+ Cipher Suites
+ key share
+ early data (PSK)
+ ServerHello
+ Cipher Suite
+ key share
+ response
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
0-RTT in depth
BUT! There is a down side!
Using a 0-RTT handshake to resume a connection degrades our security in some way
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
0-RTT in depth
1. Degraded Forward Security
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
0-RTT in depth
2. Possible Replay Attack
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
0-RTT in depth
This sounds serious, could this be a reason
not to use TLS 1.3?
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Conclusion
Nikita Malyschkin
24.01.2019
New Features in TLS 1.3
Conclusion
Questions?