SlideShare une entreprise Scribd logo
1  sur  38
PREPARED BY : PINA CHHATRALA 1
Secure Socket Layer
SSL Architecture
SSL is designed to make use of TCP to provide a reliable end – to –
end secure service.
SSL is not a single protocol but rather two layers of protocols, as
illustrated in figure (on next slide).
Two important SSL concepts are the SSL session and the SSL
connection, which are defined in the specification as follows :
PREPARED BY : PINA CHHATRALA 2
PREPARED BY : PINA CHHATRALA 3
SSL Architecture
Connection
• A connection is a transport that provides a suitable type of
service.
• For SSL, such connections are peer – to – peer relationships.
• The connections are transient.
• Every connection is associated is associated with on session.
PREPARED BY : PINA CHHATRALA 4
SSL Architecture
Connection State
• Server and Client random : Byte sequences that are chosen by
the server and client for each connection.
• Server write MAC secret : The secret key used in MAC
operations on data sent by the server.
• Client write MAC secret : The secret key used in MAC operations
on data sent by the client.
• Server write key : The secret encryption key for data encrypted
by the server and decrypted by the client.
PREPARED BY : PINA CHHATRALA 5
SSL Architecture
Connection State
• Client write key : The symmetric encryption key for data
encrypted by the client and decrypted by the server.
• Initialization vectors : When a block cipher in CBC mode is used,
an IV is maintained for each key. This field is first initialized by
the SSL handshake protocol. Thereafter, the final ciphertext
block from each record is preserved for use as the IV with the
following record.
PREPARED BY : PINA CHHATRALA 6
SSL Architecture
Connection State
• Sequence Numbers : Each party maintains separate sequence
numbers for transmitted and received messages for each
connection. When a party sends or receives a change cipher
spec message, the appropriate sequence number is set to zero.
Sequence number may not exceed 264 – 1.
PREPARED BY : PINA CHHATRALA 7
SSL Architecture
Session
• An SSL session is an association between a client and a server.
• Sessions are created by the Handshake protocol.
• Sessions define a set of cryptographic security parameters which
can be shared among multiple connections.
• Sessions are used to avoid the expensive negotiation of new
security parameters for each connection.
PREPARED BY : PINA CHHATRALA 8
SSL Architecture
Session State
• Session identifier : An arbitrary byte sequence chosen by the
server to identify an active or resumable session state.
• Peer certificate : An X509.v3 certificate of the peer. This element
of the state may be null.
• Compression method : The algorithm used to compress data
prior to encryption.
• Cipher Spec : Specifies the bulk data encryption algorithm and a
hash algorithm used for MAC calculation. It also defines
cryptographic attributes such as the hash_size.
PREPARED BY : PINA CHHATRALA 9
SSL Architecture
Session State
• Master Secret : 48 – byte secret shared between the client and
the server.
• Is resumable : A flag indicating whether the session can be used
to initiate new connections.
PREPARED BY : PINA CHHATRALA 10
SSL Architecture
SSL Record Protocol
The SSL Record Protocol provides two services for SSL connections.
• Confidentiality :
The handshake protocol defines a shared secret key that is used for
conventional encryption of SSL payloads.
• Message Integrity :
The handshake protocol also defines a shared secret key that is used
to form a MAC.
Figure (In next slide) indicates the overall operation of the SSL record
protocol.
PREPARED BY : PINA CHHATRALA 11
PREPARED BY : PINA CHHATRALA 12
SSL Architecture
Fragmentation : Each upper – layer is fragmented into blocks of
214 bytes (1638 bytes) or less.
Compression : It is optionally applied. Compression must be
lossless and may not increase the content length by more than
1024 bytes.
Add MAC : The next step in processing is to compute a MAC over
the compressed data. For this purpose, a shared secret key is used.
This is very similar to HMAC algorithm.
PREPARED BY : PINA CHHATRALA 13
SSL Architecture
Encrypt : The compressed message plus the MAC are encrypted
using symmetric encryption. Encryption may not increase the
content length by more than 1024 bytes, so that the total length
may not exceed 214 + 2048. The following encryption algorithms
(next slide) are permitted :
PREPARED BY : PINA CHHATRALA 14
Block Cipher Stream Cipher
Algorithm Key Size Algorithm Key Size
AES 128, 256 RC4 – 40 40
IDEA 128 RC4 – 128 128
RC2 – 40 40
DES – 40 40
DES 56
3DES 168
Fortezza 80
SSL Architecture
PREPARED BY : PINA CHHATRALA 15
SSL Architecture
For stream cipher encryption, the compressed message plus the
MAC are encrypted. MAC is computed before encryption takes
place and that the MAC is then encrypted along with the plaintext
or compressed plaintext.
For block cipher encryption, padding may be added after the MAC
prior to encryption.
PREPARED BY : PINA CHHATRALA 16
SSL Architecture
Append SSL record header : The final step of SSL
record protocol is to prepare a header consisting
of the following fields :
• Content Type (8 bits) : The higher – layer
protocol used to process the enclosed
fragment.
• Major Version (8 bits) : Indicates major version
of SSL in use. For SSLv3, value is 3.
• Minor Version (8 bits) : Indicates minor version
of SSL in use. For SSLv3, value is 0.
• Compressed Length (16 bits) : The length in the
bytes of the plaintext fragment. The maximum
value is 214 + 2048.
PREPARED BY : PINA CHHATRALA 17
SSL Architecture
SSL Change Cipher Spec Protocol
• The Change Cipher Spec Protocol is one of the three SSL –
specific protocols that use the SSL Record Protocol, and it is the
simplest.
• This protocol consists of a single message, which consists of a
single byte with the value 1.
• The sole purpose of this message is to cause the pending state
to be copied into the current state, which updates the cipher
suite to be used on this connection.
PREPARED BY : PINA CHHATRALA 18
SSL Architecture
SSL Alert Protocol
• The alert protocol is used to convey SSL – related alerts to the
peer entity.
• As with other application that use SSL, alert messages are
compressed and encrypted, as specified by the current state.
• Each message in this protocol consists of two bytes,
• The first byte takes the value warning (1) or fatal (2) to convey
the security of the message.
PREPARED BY : PINA CHHATRALA 19
SSL Architecture
• If the level is fatal, SSL immediately terminates the connections.
• Other connections on the same session may continue, but no
new connections on the session may be established.
• The second byte contains a code that indicates the specific
alert.
PREPARED BY : PINA CHHATRALA 20
SSL Architecture
Fatal Alerts
• unexpected_message : An inappropriate message was received.
• bad_record_mac : An incorrect MAC was received.
• decompression_failure : The decompression function received
improper input.
• handshake_failure : Sender was unable to negotiate an
acceptable set of security parameters given the options
available.
PREPARED BY : PINA CHHATRALA 21
SSL Architecture
Fatal Alerts
• illegal_parameter : A field in a handshake message was out of
range or inconsist with other fields.
• close_notify :Notifies the recipient that the sender will not send
any more messages on this connection.
• no_certificate :May be sent in response to a certificate request if
no appropriate certificate is available.
• bad_certificate : A received certificate was corrupt.
• unsupported_certificate : the type of the received certificate is
not supported.
PREPARED BY : PINA CHHATRALA 22
SSL Architecture
Fatal Alerts
• certificate_revoke : A certificate has been revoked by its signer.
• certificate_unknown : Some other unspecified issue arose in
processing the certificate, rendering it unacceptable.
PREPARED BY : PINA CHHATRALA 23
SSL Architecture
SSL Handshake Protocol
• The most complex part of SSL in the handshake protocol.
• This protocol allows the server and client to authenticate each
other and to negotiate and encryption and MAC algorithm and
cryptographic keys to be used to protect data sent in an SSL
record.
• The handshake protocol is used before any application data is
transmitted.
• The Handshake protocol consists of a series of messages
exchanged by client and server.
PREPARED BY : PINA CHHATRALA 24
SSL Architecture
SSL Handshake Protocol
• All of these have the format shown in figure. Each message has
three fields :
- Type(1 byte) : Indicates one of 10 messages. The table given
in the next slide defines message type.
- Length (3 bytes) : The length of the message in bytes.
- Content (>= 0 bytes) : The parameters associated with this
message; these are listed in table in next slide.
PREPARED BY : PINA CHHATRALA 25
Message Type Parameters
hello_request Null
client_hello Version, random, session id, cipher suit, compression method
server_hello Version, random, session id, cipher suit, compression method
certificate Chain of X.509v3 certificates
server_key_exchange Parameters signature
certificate_request Type, authorities
server_done Null
certificate_verify Signature
client_key_exchange Parameters, signature
finished Hash value
SSL Architecture
SSL Handshake Protocol Message Type
PREPARED BY : PINA CHHATRALA 26
SSL Architecture
SSL Handshake Protocol
• Phase 1 : Establish Security Capability
- This phase is used to initiate a logical connection and to establish
the security capabilities that will be associated with it.
- The exchange is initiated by the client, which sends a client_hello
message with the following parameters :
 Version : The highest SSL version understood by the client.
 Random : A client generated random structure consisting of a 32
– bit timestamp and 28 bytes generated by a secure random
number generator.
PREPARED BY : PINA CHHATRALA 27
PREPARED BY : PINA CHHATRALA 28
SSL Architecture
SSL Handshake Protocol
• Phase 1 : Establish Security Capability
 Session ID: A variable length session identifier.
 Ciphersuite : This is the list that contains the combinations
of cryptographic algorithms supported by the client, in
decreasing order of preferences.
 Compression Method : This is the list of compression
methods the client supports.
PREPARED BY : PINA CHHATRALA 29
SSL Architecture
SSL Handshake Protocol
• Phase 1 : Establish Security Capability
- After sending the client_hello message, the client waits for the
server_hello message, which contains the same parameters as the
client_hello message.
- The version field contains the lower of the versions suggested by the
client and the highest supported by the server.
- The random field is generated by the server and is independent of the
client’s random field.
- If the session ID field of the client was nonzero, the same value is used
by the server; otherwise the server’s session ID field contains the value
for a new session.
PREPARED BY : PINA CHHATRALA 30
SSL Architecture
SSL Handshake Protocol
• Phase 1 : Establish Security Capability
- The ciphersuite field contains the single cipher suite selected
by the server from those proposed by the client.
- The compression field contains the compression method
selected by the server from those proposed by the client.
PREPARED BY : PINA CHHATRALA 31
SSL Architecture
SSL Handshake Protocol
• Phase 2 : Server Authentication and Key Exchange
- The server begins this phase by sending its certificate if it
needs to be authenticated; the message contains one or a
chain of X.509 certificates.
- The certificate message is required for any agreed – on key
exchanged method except anonymous Diffie – Hellman.
- Next a server_key_exchange message may be sent if it is
required.
PREPARED BY : PINA CHHATRALA 32
SSL Architecture
SSL Handshake Protocol
• Phase 2 : Server Authentication and Key Exchange
- It is not required in two instances : (1) The server has a
certificate with fixed Diffie – Hellman parameters or, (2) a RSA
key exchange is to be used.
- Next, a nonannonymous server can request a certificate from
the client.
- The certificate_request message includes two parameters
certificate_type and certificate_authorities.
- The certificate_type indicates the public key algorithm.
PREPARED BY : PINA CHHATRALA 33
SSL Architecture
SSL Handshake Protocol
• Phase 2 : Server Authentication and Key Exchange
- The second parameter in certificate_request message is a list of
the distinguished names of acceptable certificate authority.
- The final message in phase 2, and one that is always required, is
the sever_done message, which is sent by the sever to indicate
the end of the server_hello and associated messages.
- After sending this message, the server will wait for a client
response. This message has no parameter.
PREPARED BY : PINA CHHATRALA 34
SSL Architecture
SSL Handshake Protocol
• Phase 3 : Client Authentication and Key Exchange
- Upon receipt of server_done message, the client should
verify that the server provided a valid certificate and check
that the server_hello parameters are acceptable.
- If all is satisfactory, the client sends one or more messages
back to the server.
- If the server has requested a certificate, the client begins this
phase by sending a certificate message.
PREPARED BY : PINA CHHATRALA 35
SSL Architecture
SSL Handshake Protocol
• Phase 3 : Client Authentication and Key Exchange
- If no suitable certificate is available, the client sends
no_certificate alert.
- Next is client_key_exchange message, which must be sent in
this phase.
- Finally, in this phase, the client may send a certificate_verify
message to provide explicit verification of a client certificate.
- This message is only sent following any client certificate that
has signing capability.
PREPARED BY : PINA CHHATRALA 36
SSL Architecture
SSL Handshake Protocol
• Phase 4 : Finish
- This phase completes the setting up of a secure connection.
- The client sends a change_cipher_spec message and copies
the pendin CipherSpec into the current CipherSpec.
- The client then immediately sends the finished message
unser the new algorithms, keys and secrets.
- The finished message verifies that the key exchange and
authentication processes were successful.
PREPARED BY : PINA CHHATRALA 37
SSL Architecture
SSL Handshake Protocol
• Phase 4 : Finish
- The content of the finished message is the concatenation of
the two hash values : MD5 and SHA.
- In response to these two message, the server sends its own
change_cipher_spec message, transfers the pending to the
current CipherSpec, and sends its finish message.
- At this point, the handshake is complete and the client and
the server may begin to exchange application – layer data.
PREPARED BY : PINA CHHATRALA 38

Contenu connexe

Tendances

Message Authentication Code & HMAC
Message Authentication Code & HMACMessage Authentication Code & HMAC
Message Authentication Code & HMACKrishna Gehlot
 
Digital Signature
Digital SignatureDigital Signature
Digital Signaturesaurav5884
 
Secret key cryptography
Secret key cryptographySecret key cryptography
Secret key cryptographyPrabhat Goel
 
Block Ciphers and the Data Encryption Standard
Block Ciphers and the Data Encryption StandardBlock Ciphers and the Data Encryption Standard
Block Ciphers and the Data Encryption StandardDr.Florence Dayana
 
Cryptography.ppt
Cryptography.pptCryptography.ppt
Cryptography.pptUday Meena
 
Secure Socket Layer (SSL)
Secure Socket Layer (SSL)Secure Socket Layer (SSL)
Secure Socket Layer (SSL)Samip jain
 
MAC-Message Authentication Codes
MAC-Message Authentication CodesMAC-Message Authentication Codes
MAC-Message Authentication CodesDarshanPatil82
 
symmetric key encryption algorithms
 symmetric key encryption algorithms symmetric key encryption algorithms
symmetric key encryption algorithmsRashmi Burugupalli
 
CRYPTOGRAPHY & NETWORK SECURITY - unit 1
CRYPTOGRAPHY & NETWORK SECURITY -  unit 1CRYPTOGRAPHY & NETWORK SECURITY -  unit 1
CRYPTOGRAPHY & NETWORK SECURITY - unit 1RAMESHBABU311293
 
X.509 Certificates
X.509 CertificatesX.509 Certificates
X.509 CertificatesSou Jana
 
Introduction to Cryptography
Introduction to CryptographyIntroduction to Cryptography
Introduction to CryptographyMd. Afif Al Mamun
 
Transport Layer Security (TLS)
Transport Layer Security (TLS)Transport Layer Security (TLS)
Transport Layer Security (TLS)Arun Shukla
 

Tendances (20)

Message Authentication Code & HMAC
Message Authentication Code & HMACMessage Authentication Code & HMAC
Message Authentication Code & HMAC
 
Digital Signature
Digital SignatureDigital Signature
Digital Signature
 
Secret key cryptography
Secret key cryptographySecret key cryptography
Secret key cryptography
 
Digital certificates
Digital certificatesDigital certificates
Digital certificates
 
Cryptography.ppt
Cryptography.pptCryptography.ppt
Cryptography.ppt
 
Encryption algorithms
Encryption algorithmsEncryption algorithms
Encryption algorithms
 
Chapter 1.ppt
Chapter 1.pptChapter 1.ppt
Chapter 1.ppt
 
Block Ciphers and the Data Encryption Standard
Block Ciphers and the Data Encryption StandardBlock Ciphers and the Data Encryption Standard
Block Ciphers and the Data Encryption Standard
 
Cryptography.ppt
Cryptography.pptCryptography.ppt
Cryptography.ppt
 
Secure Socket Layer (SSL)
Secure Socket Layer (SSL)Secure Socket Layer (SSL)
Secure Socket Layer (SSL)
 
Cryptography
CryptographyCryptography
Cryptography
 
MAC-Message Authentication Codes
MAC-Message Authentication CodesMAC-Message Authentication Codes
MAC-Message Authentication Codes
 
Kerberos
KerberosKerberos
Kerberos
 
Ipsec
IpsecIpsec
Ipsec
 
symmetric key encryption algorithms
 symmetric key encryption algorithms symmetric key encryption algorithms
symmetric key encryption algorithms
 
CRYPTOGRAPHY & NETWORK SECURITY - unit 1
CRYPTOGRAPHY & NETWORK SECURITY -  unit 1CRYPTOGRAPHY & NETWORK SECURITY -  unit 1
CRYPTOGRAPHY & NETWORK SECURITY - unit 1
 
X.509 Certificates
X.509 CertificatesX.509 Certificates
X.509 Certificates
 
Introduction to Cryptography
Introduction to CryptographyIntroduction to Cryptography
Introduction to Cryptography
 
Digital Signature
Digital SignatureDigital Signature
Digital Signature
 
Transport Layer Security (TLS)
Transport Layer Security (TLS)Transport Layer Security (TLS)
Transport Layer Security (TLS)
 

En vedette

Ssl (Secure Socket Layer)
Ssl (Secure Socket Layer)Ssl (Secure Socket Layer)
Ssl (Secure Socket Layer)Sandeep Gupta
 
SSL Secure socket layer
SSL Secure socket layerSSL Secure socket layer
SSL Secure socket layerAhmed Elnaggar
 
Introduction to Secure Sockets Layer
Introduction to Secure Sockets LayerIntroduction to Secure Sockets Layer
Introduction to Secure Sockets LayerNascenia IT
 
Introduction to SSL/TLS
Introduction to SSL/TLSIntroduction to SSL/TLS
Introduction to SSL/TLSkeithrozario
 
SSL & TLS Architecture short
SSL & TLS Architecture shortSSL & TLS Architecture short
SSL & TLS Architecture shortAvirot Mitamura
 
Transport Layer Security
Transport Layer SecurityTransport Layer Security
Transport Layer SecurityChhatra Thapa
 
SSL, FFL, SFL Abbreviations
SSL, FFL, SFL AbbreviationsSSL, FFL, SFL Abbreviations
SSL, FFL, SFL AbbreviationsEhlelt Mancha
 
Introduction to data structures and Algorithm
Introduction to data structures and AlgorithmIntroduction to data structures and Algorithm
Introduction to data structures and AlgorithmDhaval Kaneria
 
secure socket layer
secure socket layersecure socket layer
secure socket layerAmar Shah
 
Hacking SSL When Using RC4
Hacking SSL When Using RC4Hacking SSL When Using RC4
Hacking SSL When Using RC4Khairi Aiman
 
Ssl in a nutshell
Ssl in a nutshellSsl in a nutshell
Ssl in a nutshellFrank Kelly
 
BAIT1103 Chapter 5
BAIT1103 Chapter 5BAIT1103 Chapter 5
BAIT1103 Chapter 5limsh
 

En vedette (20)

Ssl (Secure Socket Layer)
Ssl (Secure Socket Layer)Ssl (Secure Socket Layer)
Ssl (Secure Socket Layer)
 
SSL/TLS
SSL/TLSSSL/TLS
SSL/TLS
 
SSL Secure socket layer
SSL Secure socket layerSSL Secure socket layer
SSL Secure socket layer
 
Introduction to Secure Sockets Layer
Introduction to Secure Sockets LayerIntroduction to Secure Sockets Layer
Introduction to Secure Sockets Layer
 
Introduction to SSL/TLS
Introduction to SSL/TLSIntroduction to SSL/TLS
Introduction to SSL/TLS
 
SSL & TLS Architecture short
SSL & TLS Architecture shortSSL & TLS Architecture short
SSL & TLS Architecture short
 
Ssl and tls
Ssl and tlsSsl and tls
Ssl and tls
 
Transport Layer Security
Transport Layer SecurityTransport Layer Security
Transport Layer Security
 
Pgp
PgpPgp
Pgp
 
Transport Layer Security
Transport Layer SecurityTransport Layer Security
Transport Layer Security
 
SSL, FFL, SFL Abbreviations
SSL, FFL, SFL AbbreviationsSSL, FFL, SFL Abbreviations
SSL, FFL, SFL Abbreviations
 
Introduction to data structures and Algorithm
Introduction to data structures and AlgorithmIntroduction to data structures and Algorithm
Introduction to data structures and Algorithm
 
secure socket layer
secure socket layersecure socket layer
secure socket layer
 
Hacking SSL When Using RC4
Hacking SSL When Using RC4Hacking SSL When Using RC4
Hacking SSL When Using RC4
 
Secure Socket Layer
Secure Socket LayerSecure Socket Layer
Secure Socket Layer
 
Ssl in a nutshell
Ssl in a nutshellSsl in a nutshell
Ssl in a nutshell
 
Git essentials
Git essentialsGit essentials
Git essentials
 
Network security
Network securityNetwork security
Network security
 
How ssl works
How ssl worksHow ssl works
How ssl works
 
BAIT1103 Chapter 5
BAIT1103 Chapter 5BAIT1103 Chapter 5
BAIT1103 Chapter 5
 

Similaire à Secure Socket Layer

Similaire à Secure Socket Layer (20)

SSL And TLS
SSL And TLS SSL And TLS
SSL And TLS
 
Secure socket layer
Secure socket layerSecure socket layer
Secure socket layer
 
SecureSocketLayer.ppt
SecureSocketLayer.pptSecureSocketLayer.ppt
SecureSocketLayer.ppt
 
Secure socket later
Secure socket laterSecure socket later
Secure socket later
 
Internet security protocol
Internet security protocolInternet security protocol
Internet security protocol
 
BAIT1103 Chapter 4
BAIT1103 Chapter 4BAIT1103 Chapter 4
BAIT1103 Chapter 4
 
Network Security- Secure Socket Layer
Network Security- Secure Socket LayerNetwork Security- Secure Socket Layer
Network Security- Secure Socket Layer
 
Web security
Web securityWeb security
Web security
 
Lec 3.pptx
Lec 3.pptxLec 3.pptx
Lec 3.pptx
 
Secure Socket Layer.pptx
Secure Socket Layer.pptxSecure Socket Layer.pptx
Secure Socket Layer.pptx
 
Network Security_Module_2_Dr Shivashankar
Network Security_Module_2_Dr ShivashankarNetwork Security_Module_2_Dr Shivashankar
Network Security_Module_2_Dr Shivashankar
 
Network Security_Module_2.pdf
Network Security_Module_2.pdfNetwork Security_Module_2.pdf
Network Security_Module_2.pdf
 
SECURE SOCKET LAYER ( WEB SECURITY )
SECURE SOCKET LAYER ( WEB SECURITY )SECURE SOCKET LAYER ( WEB SECURITY )
SECURE SOCKET LAYER ( WEB SECURITY )
 
PPT ON WEB SECURITY BY MONODIP SINGHA ROY
PPT ON WEB SECURITY BY MONODIP SINGHA ROYPPT ON WEB SECURITY BY MONODIP SINGHA ROY
PPT ON WEB SECURITY BY MONODIP SINGHA ROY
 
Cryptography by Afroz haider mir
Cryptography by Afroz haider mirCryptography by Afroz haider mir
Cryptography by Afroz haider mir
 
CRYPTOGRAPHY AND NETWORK SECURITY- Transport-level Security
CRYPTOGRAPHY AND NETWORK SECURITY- Transport-level SecurityCRYPTOGRAPHY AND NETWORK SECURITY- Transport-level Security
CRYPTOGRAPHY AND NETWORK SECURITY- Transport-level Security
 
Lecture 6 web security
Lecture 6 web securityLecture 6 web security
Lecture 6 web security
 
ssl
sslssl
ssl
 
Transport Layer Security
Transport Layer SecurityTransport Layer Security
Transport Layer Security
 
Sequere socket Layer
Sequere socket LayerSequere socket Layer
Sequere socket Layer
 

Plus de Pina Parmar

Test case techniques
Test case techniquesTest case techniques
Test case techniquesPina Parmar
 
Object oriented programming concept
Object oriented programming conceptObject oriented programming concept
Object oriented programming conceptPina Parmar
 
Types of firewall
Types of firewallTypes of firewall
Types of firewallPina Parmar
 
Secure Shell(ssh)
Secure Shell(ssh)Secure Shell(ssh)
Secure Shell(ssh)Pina Parmar
 

Plus de Pina Parmar (6)

Test case techniques
Test case techniquesTest case techniques
Test case techniques
 
Object oriented programming concept
Object oriented programming conceptObject oriented programming concept
Object oriented programming concept
 
Firewall Basing
Firewall BasingFirewall Basing
Firewall Basing
 
Types of firewall
Types of firewallTypes of firewall
Types of firewall
 
Secure Shell(ssh)
Secure Shell(ssh)Secure Shell(ssh)
Secure Shell(ssh)
 
IPv6 address
IPv6 addressIPv6 address
IPv6 address
 

Dernier

Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxGrade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxkarenfajardo43
 
MS4 level being good citizen -imperative- (1) (1).pdf
MS4 level   being good citizen -imperative- (1) (1).pdfMS4 level   being good citizen -imperative- (1) (1).pdf
MS4 level being good citizen -imperative- (1) (1).pdfMr Bounab Samir
 
Mythology Quiz-4th April 2024, Quiz Club NITW
Mythology Quiz-4th April 2024, Quiz Club NITWMythology Quiz-4th April 2024, Quiz Club NITW
Mythology Quiz-4th April 2024, Quiz Club NITWQuiz Club NITW
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxDhatriParmar
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management SystemChristalin Nelson
 
week 1 cookery 8 fourth - quarter .pptx
week 1 cookery 8  fourth  -  quarter .pptxweek 1 cookery 8  fourth  -  quarter .pptx
week 1 cookery 8 fourth - quarter .pptxJonalynLegaspi2
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Projectjordimapav
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxBIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxSayali Powar
 
Scientific Writing :Research Discourse
Scientific  Writing :Research  DiscourseScientific  Writing :Research  Discourse
Scientific Writing :Research DiscourseAnita GoswamiGiri
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Seán Kennedy
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmStan Meyer
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataBabyAnnMotar
 
4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptx4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptxmary850239
 
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Association for Project Management
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSMae Pangan
 
Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1GloryAnnCastre1
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptxmary850239
 

Dernier (20)

Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxGrade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
 
MS4 level being good citizen -imperative- (1) (1).pdf
MS4 level   being good citizen -imperative- (1) (1).pdfMS4 level   being good citizen -imperative- (1) (1).pdf
MS4 level being good citizen -imperative- (1) (1).pdf
 
Mythology Quiz-4th April 2024, Quiz Club NITW
Mythology Quiz-4th April 2024, Quiz Club NITWMythology Quiz-4th April 2024, Quiz Club NITW
Mythology Quiz-4th April 2024, Quiz Club NITW
 
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptxINCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management System
 
week 1 cookery 8 fourth - quarter .pptx
week 1 cookery 8  fourth  -  quarter .pptxweek 1 cookery 8  fourth  -  quarter .pptx
week 1 cookery 8 fourth - quarter .pptx
 
ClimART Action | eTwinning Project
ClimART Action    |    eTwinning ProjectClimART Action    |    eTwinning Project
ClimART Action | eTwinning Project
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxBIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
 
Scientific Writing :Research Discourse
Scientific  Writing :Research  DiscourseScientific  Writing :Research  Discourse
Scientific Writing :Research Discourse
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...
 
Faculty Profile prashantha K EEE dept Sri Sairam college of Engineering
Faculty Profile prashantha K EEE dept Sri Sairam college of EngineeringFaculty Profile prashantha K EEE dept Sri Sairam college of Engineering
Faculty Profile prashantha K EEE dept Sri Sairam college of Engineering
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and Film
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped data
 
4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptx4.11.24 Mass Incarceration and the New Jim Crow.pptx
4.11.24 Mass Incarceration and the New Jim Crow.pptx
 
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHS
 
Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1Reading and Writing Skills 11 quarter 4 melc 1
Reading and Writing Skills 11 quarter 4 melc 1
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx
 

Secure Socket Layer

  • 1. PREPARED BY : PINA CHHATRALA 1 Secure Socket Layer
  • 2. SSL Architecture SSL is designed to make use of TCP to provide a reliable end – to – end secure service. SSL is not a single protocol but rather two layers of protocols, as illustrated in figure (on next slide). Two important SSL concepts are the SSL session and the SSL connection, which are defined in the specification as follows : PREPARED BY : PINA CHHATRALA 2
  • 3. PREPARED BY : PINA CHHATRALA 3
  • 4. SSL Architecture Connection • A connection is a transport that provides a suitable type of service. • For SSL, such connections are peer – to – peer relationships. • The connections are transient. • Every connection is associated is associated with on session. PREPARED BY : PINA CHHATRALA 4
  • 5. SSL Architecture Connection State • Server and Client random : Byte sequences that are chosen by the server and client for each connection. • Server write MAC secret : The secret key used in MAC operations on data sent by the server. • Client write MAC secret : The secret key used in MAC operations on data sent by the client. • Server write key : The secret encryption key for data encrypted by the server and decrypted by the client. PREPARED BY : PINA CHHATRALA 5
  • 6. SSL Architecture Connection State • Client write key : The symmetric encryption key for data encrypted by the client and decrypted by the server. • Initialization vectors : When a block cipher in CBC mode is used, an IV is maintained for each key. This field is first initialized by the SSL handshake protocol. Thereafter, the final ciphertext block from each record is preserved for use as the IV with the following record. PREPARED BY : PINA CHHATRALA 6
  • 7. SSL Architecture Connection State • Sequence Numbers : Each party maintains separate sequence numbers for transmitted and received messages for each connection. When a party sends or receives a change cipher spec message, the appropriate sequence number is set to zero. Sequence number may not exceed 264 – 1. PREPARED BY : PINA CHHATRALA 7
  • 8. SSL Architecture Session • An SSL session is an association between a client and a server. • Sessions are created by the Handshake protocol. • Sessions define a set of cryptographic security parameters which can be shared among multiple connections. • Sessions are used to avoid the expensive negotiation of new security parameters for each connection. PREPARED BY : PINA CHHATRALA 8
  • 9. SSL Architecture Session State • Session identifier : An arbitrary byte sequence chosen by the server to identify an active or resumable session state. • Peer certificate : An X509.v3 certificate of the peer. This element of the state may be null. • Compression method : The algorithm used to compress data prior to encryption. • Cipher Spec : Specifies the bulk data encryption algorithm and a hash algorithm used for MAC calculation. It also defines cryptographic attributes such as the hash_size. PREPARED BY : PINA CHHATRALA 9
  • 10. SSL Architecture Session State • Master Secret : 48 – byte secret shared between the client and the server. • Is resumable : A flag indicating whether the session can be used to initiate new connections. PREPARED BY : PINA CHHATRALA 10
  • 11. SSL Architecture SSL Record Protocol The SSL Record Protocol provides two services for SSL connections. • Confidentiality : The handshake protocol defines a shared secret key that is used for conventional encryption of SSL payloads. • Message Integrity : The handshake protocol also defines a shared secret key that is used to form a MAC. Figure (In next slide) indicates the overall operation of the SSL record protocol. PREPARED BY : PINA CHHATRALA 11
  • 12. PREPARED BY : PINA CHHATRALA 12
  • 13. SSL Architecture Fragmentation : Each upper – layer is fragmented into blocks of 214 bytes (1638 bytes) or less. Compression : It is optionally applied. Compression must be lossless and may not increase the content length by more than 1024 bytes. Add MAC : The next step in processing is to compute a MAC over the compressed data. For this purpose, a shared secret key is used. This is very similar to HMAC algorithm. PREPARED BY : PINA CHHATRALA 13
  • 14. SSL Architecture Encrypt : The compressed message plus the MAC are encrypted using symmetric encryption. Encryption may not increase the content length by more than 1024 bytes, so that the total length may not exceed 214 + 2048. The following encryption algorithms (next slide) are permitted : PREPARED BY : PINA CHHATRALA 14
  • 15. Block Cipher Stream Cipher Algorithm Key Size Algorithm Key Size AES 128, 256 RC4 – 40 40 IDEA 128 RC4 – 128 128 RC2 – 40 40 DES – 40 40 DES 56 3DES 168 Fortezza 80 SSL Architecture PREPARED BY : PINA CHHATRALA 15
  • 16. SSL Architecture For stream cipher encryption, the compressed message plus the MAC are encrypted. MAC is computed before encryption takes place and that the MAC is then encrypted along with the plaintext or compressed plaintext. For block cipher encryption, padding may be added after the MAC prior to encryption. PREPARED BY : PINA CHHATRALA 16
  • 17. SSL Architecture Append SSL record header : The final step of SSL record protocol is to prepare a header consisting of the following fields : • Content Type (8 bits) : The higher – layer protocol used to process the enclosed fragment. • Major Version (8 bits) : Indicates major version of SSL in use. For SSLv3, value is 3. • Minor Version (8 bits) : Indicates minor version of SSL in use. For SSLv3, value is 0. • Compressed Length (16 bits) : The length in the bytes of the plaintext fragment. The maximum value is 214 + 2048. PREPARED BY : PINA CHHATRALA 17
  • 18. SSL Architecture SSL Change Cipher Spec Protocol • The Change Cipher Spec Protocol is one of the three SSL – specific protocols that use the SSL Record Protocol, and it is the simplest. • This protocol consists of a single message, which consists of a single byte with the value 1. • The sole purpose of this message is to cause the pending state to be copied into the current state, which updates the cipher suite to be used on this connection. PREPARED BY : PINA CHHATRALA 18
  • 19. SSL Architecture SSL Alert Protocol • The alert protocol is used to convey SSL – related alerts to the peer entity. • As with other application that use SSL, alert messages are compressed and encrypted, as specified by the current state. • Each message in this protocol consists of two bytes, • The first byte takes the value warning (1) or fatal (2) to convey the security of the message. PREPARED BY : PINA CHHATRALA 19
  • 20. SSL Architecture • If the level is fatal, SSL immediately terminates the connections. • Other connections on the same session may continue, but no new connections on the session may be established. • The second byte contains a code that indicates the specific alert. PREPARED BY : PINA CHHATRALA 20
  • 21. SSL Architecture Fatal Alerts • unexpected_message : An inappropriate message was received. • bad_record_mac : An incorrect MAC was received. • decompression_failure : The decompression function received improper input. • handshake_failure : Sender was unable to negotiate an acceptable set of security parameters given the options available. PREPARED BY : PINA CHHATRALA 21
  • 22. SSL Architecture Fatal Alerts • illegal_parameter : A field in a handshake message was out of range or inconsist with other fields. • close_notify :Notifies the recipient that the sender will not send any more messages on this connection. • no_certificate :May be sent in response to a certificate request if no appropriate certificate is available. • bad_certificate : A received certificate was corrupt. • unsupported_certificate : the type of the received certificate is not supported. PREPARED BY : PINA CHHATRALA 22
  • 23. SSL Architecture Fatal Alerts • certificate_revoke : A certificate has been revoked by its signer. • certificate_unknown : Some other unspecified issue arose in processing the certificate, rendering it unacceptable. PREPARED BY : PINA CHHATRALA 23
  • 24. SSL Architecture SSL Handshake Protocol • The most complex part of SSL in the handshake protocol. • This protocol allows the server and client to authenticate each other and to negotiate and encryption and MAC algorithm and cryptographic keys to be used to protect data sent in an SSL record. • The handshake protocol is used before any application data is transmitted. • The Handshake protocol consists of a series of messages exchanged by client and server. PREPARED BY : PINA CHHATRALA 24
  • 25. SSL Architecture SSL Handshake Protocol • All of these have the format shown in figure. Each message has three fields : - Type(1 byte) : Indicates one of 10 messages. The table given in the next slide defines message type. - Length (3 bytes) : The length of the message in bytes. - Content (>= 0 bytes) : The parameters associated with this message; these are listed in table in next slide. PREPARED BY : PINA CHHATRALA 25
  • 26. Message Type Parameters hello_request Null client_hello Version, random, session id, cipher suit, compression method server_hello Version, random, session id, cipher suit, compression method certificate Chain of X.509v3 certificates server_key_exchange Parameters signature certificate_request Type, authorities server_done Null certificate_verify Signature client_key_exchange Parameters, signature finished Hash value SSL Architecture SSL Handshake Protocol Message Type PREPARED BY : PINA CHHATRALA 26
  • 27. SSL Architecture SSL Handshake Protocol • Phase 1 : Establish Security Capability - This phase is used to initiate a logical connection and to establish the security capabilities that will be associated with it. - The exchange is initiated by the client, which sends a client_hello message with the following parameters :  Version : The highest SSL version understood by the client.  Random : A client generated random structure consisting of a 32 – bit timestamp and 28 bytes generated by a secure random number generator. PREPARED BY : PINA CHHATRALA 27
  • 28. PREPARED BY : PINA CHHATRALA 28
  • 29. SSL Architecture SSL Handshake Protocol • Phase 1 : Establish Security Capability  Session ID: A variable length session identifier.  Ciphersuite : This is the list that contains the combinations of cryptographic algorithms supported by the client, in decreasing order of preferences.  Compression Method : This is the list of compression methods the client supports. PREPARED BY : PINA CHHATRALA 29
  • 30. SSL Architecture SSL Handshake Protocol • Phase 1 : Establish Security Capability - After sending the client_hello message, the client waits for the server_hello message, which contains the same parameters as the client_hello message. - The version field contains the lower of the versions suggested by the client and the highest supported by the server. - The random field is generated by the server and is independent of the client’s random field. - If the session ID field of the client was nonzero, the same value is used by the server; otherwise the server’s session ID field contains the value for a new session. PREPARED BY : PINA CHHATRALA 30
  • 31. SSL Architecture SSL Handshake Protocol • Phase 1 : Establish Security Capability - The ciphersuite field contains the single cipher suite selected by the server from those proposed by the client. - The compression field contains the compression method selected by the server from those proposed by the client. PREPARED BY : PINA CHHATRALA 31
  • 32. SSL Architecture SSL Handshake Protocol • Phase 2 : Server Authentication and Key Exchange - The server begins this phase by sending its certificate if it needs to be authenticated; the message contains one or a chain of X.509 certificates. - The certificate message is required for any agreed – on key exchanged method except anonymous Diffie – Hellman. - Next a server_key_exchange message may be sent if it is required. PREPARED BY : PINA CHHATRALA 32
  • 33. SSL Architecture SSL Handshake Protocol • Phase 2 : Server Authentication and Key Exchange - It is not required in two instances : (1) The server has a certificate with fixed Diffie – Hellman parameters or, (2) a RSA key exchange is to be used. - Next, a nonannonymous server can request a certificate from the client. - The certificate_request message includes two parameters certificate_type and certificate_authorities. - The certificate_type indicates the public key algorithm. PREPARED BY : PINA CHHATRALA 33
  • 34. SSL Architecture SSL Handshake Protocol • Phase 2 : Server Authentication and Key Exchange - The second parameter in certificate_request message is a list of the distinguished names of acceptable certificate authority. - The final message in phase 2, and one that is always required, is the sever_done message, which is sent by the sever to indicate the end of the server_hello and associated messages. - After sending this message, the server will wait for a client response. This message has no parameter. PREPARED BY : PINA CHHATRALA 34
  • 35. SSL Architecture SSL Handshake Protocol • Phase 3 : Client Authentication and Key Exchange - Upon receipt of server_done message, the client should verify that the server provided a valid certificate and check that the server_hello parameters are acceptable. - If all is satisfactory, the client sends one or more messages back to the server. - If the server has requested a certificate, the client begins this phase by sending a certificate message. PREPARED BY : PINA CHHATRALA 35
  • 36. SSL Architecture SSL Handshake Protocol • Phase 3 : Client Authentication and Key Exchange - If no suitable certificate is available, the client sends no_certificate alert. - Next is client_key_exchange message, which must be sent in this phase. - Finally, in this phase, the client may send a certificate_verify message to provide explicit verification of a client certificate. - This message is only sent following any client certificate that has signing capability. PREPARED BY : PINA CHHATRALA 36
  • 37. SSL Architecture SSL Handshake Protocol • Phase 4 : Finish - This phase completes the setting up of a secure connection. - The client sends a change_cipher_spec message and copies the pendin CipherSpec into the current CipherSpec. - The client then immediately sends the finished message unser the new algorithms, keys and secrets. - The finished message verifies that the key exchange and authentication processes were successful. PREPARED BY : PINA CHHATRALA 37
  • 38. SSL Architecture SSL Handshake Protocol • Phase 4 : Finish - The content of the finished message is the concatenation of the two hash values : MD5 and SHA. - In response to these two message, the server sends its own change_cipher_spec message, transfers the pending to the current CipherSpec, and sends its finish message. - At this point, the handshake is complete and the client and the server may begin to exchange application – layer data. PREPARED BY : PINA CHHATRALA 38