26.10.2012 Views

Internet Security - Dang Thanh Binh's Page

Internet Security - Dang Thanh Binh's Page

Internet Security - Dang Thanh Binh's Page

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

TRANSPORT LAYER SECURITY: SSLV3 AND TLSV1 289<br />

struct{<br />

Signature signature;<br />

} CertificateVerify;<br />

CertificateVerify.signature.md5_hash<br />

MD5(master_secret||pad2||MD5(handshake-message||<br />

master_secret||pad1))<br />

Certificate.signature.sha_hash<br />

SHA(master_secret||pad2||SHA(handshake-message||<br />

master_secret||pad1))<br />

where pad1 and pad2 are the values defined earlier for the MAC, handshake-messages<br />

refer to all Handshake Protocol messages sent or received starting at client-hello but<br />

not including this message, and master secret is the calculated secret. If the user’s<br />

private key is DSS, then it is used to encrypt the SHA-1 hash. If the user’s private<br />

key is RSA, it is used to encrypt the concatenation of the MD5 and SHA-1 hashes.<br />

8.1.5.4 Phase 4: End of Secure Connection<br />

At this point, a change cipher spec message is sent by the client, and the client copies<br />

the pending CipherSpec into the current CipherSpec. The client then immediately sends<br />

the finished message under the new algorithms, keys and secrets. In response, the server<br />

will send its own change cipher spec message, transfer the pending CipherSpec to the<br />

current one, and then send its finished message under the new CipherSpec. At this point,<br />

the handshake is complete and the client and server may begin to exchange application<br />

layerdata(seeFigure8.5).<br />

• Change cipher spec messages: The client sends a change cipher spec message and<br />

copies the pending CipherSpec in the current CipherSpec. This message is immediately<br />

sent after the certificate verify message that is used to provide explicit verification of a<br />

client certificate. It is essential that a change cipher spec message is received between<br />

the other handshake messages and the finished message. It is a fatal error if a change<br />

cipher spec message is not preceded by a finished message at the appropriate point in<br />

the handshake.<br />

• Finished message: This is always sent immediately after a change cipher spec message<br />

to verify that the key exchange and authentication processes were successful. The<br />

content of the finished message is the concatenation of two hash values:<br />

MD5(master_secret||pad2||MD5(handshake_messages||Sender||<br />

master_secret||pad1))<br />

SHA(master_secret||pad2||SHA(handshake_messages||Sender||<br />

master_secret||pad1))<br />

where ‘Sender’ is a code that identifies that the sender is the client and ‘handshake<br />

messages’ is code that identifies the data from all handshake messages up to<br />

but not including this message.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!