Cryptography Reference
In-Depth Information
Client
Server
nonce C
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−→
ServerHello :cipher suite
ClientHello :acceptable cipher suites
,
nonce S
←−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
,
certi cate
,
select cipher suite
ClientKeyExchange :RSA ENC ( pre master secret )
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−→
decrypt
pre master secret
(key derivation)
MAC ( handshake messages )
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−→
check
)
←−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
MAC
(
handshake messages
check
(open tunnel)
Figure 12.6. A typical SSL handshake.
The client and the server can then communicate through a protected channel.
A typical handshake session is illustrated in Fig. 12.6.
12.3.2 Cipher Suites
A cipher suite includes a key agreement algorithm, a symmetric cipher algorithm, and
a hash function. In Figs. 12.7 and 12.8 are a few standard cipher suite definitions for
TLS. In addition, an update of TLS integrates AES by specifying the cipher suites of
Fig. 12.9 (see Ref. [46]).
We notice that RC4 is the only stream cipher. It is used with two different key
lengths: 40 and 128 bits.
All block ciphers use blocks of 8 bytes, except AES which uses 16 bytes. They are
all used in CBC mode with an initial vector.
CipherSuite
Key Exchange
Cipher
Hash
NULL
NULL
NULL
TLS NULL WITH NULL NULL
TLS RSA WITH NULL MD5
RSA
NULL
MD5
RSA
NULL
SHA-1
TLS RSA WITH NULL SHA
RSA
RC4 40
MD5
TLS RSA EXPORT WITH RC4 40 MD5
RSA
RC4 128
MD5
TLS RSA WITH RC4 128 MD5
TLS RSA WITH RC4 128 SHA
RSA
RC4 128
SHA-1
RSA
RC2 40
MD5
TLS RSA EXPORT WITH RC2 CBC 40 MD5
RSA
IDEA
SHA-1
TLS RSA WITH IDEA CBC SHA
RSA
DES40
SHA-1
TLS RSA EXPORT WITH DES40 CBC SHA
TLS RSA WITH DES CBC SHA
RSA
DES
SHA-1
RSA
3DES EDE
SHA-1
TLS RSA WITH 3DES EDE CBC SHA
Figure 12.7. Standard TLS cipher suites with NULL or RSA key exchange.
 
Search WWH ::




Custom Search