SlideShare ist ein Scribd-Unternehmen logo
1 von 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

Weitere ähnliche Inhalte

Was ist angesagt?

Ssl (Secure Socket Layer)
Ssl (Secure Socket Layer)Ssl (Secure Socket Layer)
Ssl (Secure Socket Layer)Sandeep Gupta
 
Transport Layer Security (TLS)
Transport Layer Security (TLS)Transport Layer Security (TLS)
Transport Layer Security (TLS)Arun Shukla
 
CS6701 CRYPTOGRAPHY AND NETWORK SECURITY
CS6701 CRYPTOGRAPHY AND NETWORK SECURITYCS6701 CRYPTOGRAPHY AND NETWORK SECURITY
CS6701 CRYPTOGRAPHY AND NETWORK SECURITYKathirvel Ayyaswamy
 
TLS - Transport Layer Security
TLS - Transport Layer SecurityTLS - Transport Layer Security
TLS - Transport Layer SecurityByronKimani
 
Transport layer security (tls)
Transport layer security (tls)Transport layer security (tls)
Transport layer security (tls)Kalpesh Kalekar
 
Cryptographic Hashing Functions
Cryptographic Hashing FunctionsCryptographic Hashing Functions
Cryptographic Hashing FunctionsYusuf Uzun
 
5. message authentication and hash function
5. message authentication and hash function5. message authentication and hash function
5. message authentication and hash functionChirag Patel
 
block ciphers
block ciphersblock ciphers
block ciphersAsad Ali
 
Secure Socket Layer (SSL)
Secure Socket Layer (SSL)Secure Socket Layer (SSL)
Secure Socket Layer (SSL)Samip jain
 
DES (Data Encryption Standard) pressentation
DES (Data Encryption Standard) pressentationDES (Data Encryption Standard) pressentation
DES (Data Encryption Standard) pressentationsarhadisoftengg
 
Transport Layer Security
Transport Layer SecurityTransport Layer Security
Transport Layer SecurityHuda Seyam
 
Https presentation
Https presentationHttps presentation
Https presentationpatel jatin
 
3 public key cryptography
3 public key cryptography3 public key cryptography
3 public key cryptographyRutvik Mehta
 
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
 

Was ist angesagt? (20)

Ssl (Secure Socket Layer)
Ssl (Secure Socket Layer)Ssl (Secure Socket Layer)
Ssl (Secure Socket Layer)
 
Transport Layer Security (TLS)
Transport Layer Security (TLS)Transport Layer Security (TLS)
Transport Layer Security (TLS)
 
CS6701 CRYPTOGRAPHY AND NETWORK SECURITY
CS6701 CRYPTOGRAPHY AND NETWORK SECURITYCS6701 CRYPTOGRAPHY AND NETWORK SECURITY
CS6701 CRYPTOGRAPHY AND NETWORK SECURITY
 
TLS - Transport Layer Security
TLS - Transport Layer SecurityTLS - Transport Layer Security
TLS - Transport Layer Security
 
Transport layer security (tls)
Transport layer security (tls)Transport layer security (tls)
Transport layer security (tls)
 
Cryptographic Hashing Functions
Cryptographic Hashing FunctionsCryptographic Hashing Functions
Cryptographic Hashing Functions
 
Cryptography
CryptographyCryptography
Cryptography
 
IP Security
IP SecurityIP Security
IP Security
 
5. message authentication and hash function
5. message authentication and hash function5. message authentication and hash function
5. message authentication and hash function
 
block ciphers
block ciphersblock ciphers
block ciphers
 
Secure Socket Layer (SSL)
Secure Socket Layer (SSL)Secure Socket Layer (SSL)
Secure Socket Layer (SSL)
 
DES (Data Encryption Standard) pressentation
DES (Data Encryption Standard) pressentationDES (Data Encryption Standard) pressentation
DES (Data Encryption Standard) pressentation
 
HTTPS
HTTPSHTTPS
HTTPS
 
Transport Layer Security
Transport Layer SecurityTransport Layer Security
Transport Layer Security
 
Cryptography
CryptographyCryptography
Cryptography
 
Https presentation
Https presentationHttps presentation
Https presentation
 
Ssl and tls
Ssl and tlsSsl and tls
Ssl and tls
 
Hash Function
Hash FunctionHash Function
Hash Function
 
3 public key cryptography
3 public key cryptography3 public key cryptography
3 public key cryptography
 
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
 

Andere mochten auch

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
 
Phases of penetration testing
Phases of penetration testingPhases of penetration testing
Phases of penetration testingAbdul Rahman
 
Overview of SSL & TLS Client-Server Interactions
Overview of SSL & TLS Client-Server InteractionsOverview of SSL & TLS Client-Server Interactions
Overview of SSL & TLS Client-Server InteractionsKatie Knowles
 

Andere mochten auch (20)

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
 
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
 
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
 
Phases of penetration testing
Phases of penetration testingPhases of penetration testing
Phases of penetration testing
 
Overview of SSL & TLS Client-Server Interactions
Overview of SSL & TLS Client-Server InteractionsOverview of SSL & TLS Client-Server Interactions
Overview of SSL & TLS Client-Server Interactions
 
PGP Presentation Powerpoint
PGP Presentation PowerpointPGP Presentation Powerpoint
PGP Presentation Powerpoint
 

Ähnlich wie Secure Socket Layer

Ähnlich wie 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
 
Sequere socket Layer
Sequere socket LayerSequere socket Layer
Sequere socket Layer
 
Secure Socket Layer.ppt [ssl for websecurity]
Secure Socket Layer.ppt [ssl for websecurity]Secure Socket Layer.ppt [ssl for websecurity]
Secure Socket Layer.ppt [ssl for websecurity]
 

Mehr von 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
 

Mehr von 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
 

Kürzlich hochgeladen

Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterMateoGardella
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17Celine George
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin ClassesCeline George
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxVishalSingh1417
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docxPoojaSen20
 

Kürzlich hochgeladen (20)

Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 

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