Presented By: Atish Baul Module: CSYM020, Internet Security Course: MSc Internet Computing.
-
Upload
sybil-ellis -
Category
Documents
-
view
217 -
download
1
Transcript of Presented By: Atish Baul Module: CSYM020, Internet Security Course: MSc Internet Computing.
Contents
1. Introduction2. SSL Architecture3. Analysis of an SSL Session4. Applications of SSL5. Implementation of SSL6. Winning Features7. References
2
1. Introduction
What are SSL and TLS
3
Secure Socket Layer (SSL) and it's successor Transport Layer Security (TLS) are cryptographic protocols meant for secure data transmission across the internet.
Prevent eavesdropping, tampering and message forgery within the transport framework.
Provides endpoint authentication and communications privacy.
Used for web browsing, email, instant messaging, etc. Multitude of uses, as we shall see later.
Used for both– Client-to-server communication – Server to server communication
1. Introduction
Typically, only the server is authenticated, client remains un-authenticated.
Sometimes both parties are authenticated. This is called "Mutual Authentication“.
Manner of Usage
4
1. Introduction
Developed by Netscape as SSL 1.0 in 1996 for use with HTTP only, to secure communications between browser and client.
SSL has been endorsed by leading financial institutions (e.g. Visa, Master Card, etc) for commerce over the internet.
Still being updated and maintained by Netscape as SSL 2.0 and SSL 3.0, with endorsement from IETF and leading commercial bodies.
SSL 3.0 was used as basis for TLS 1.0 in 1999, an IETF standard protocol.
Specifications for TLS 1.1 were released in April 2006. It is a minor upgrade to TLS 1.0
SSL continues to be used alongside TLS, due to widespread support and legacy implementation .
History of SSL, TLS
5
1. Introduction
SSL and TLS - Twin brothers.
Both protocols are so similar we can refer to them as one name, e.g.. SSL/TLS only.
They are similar, but they are not interchangeable.
Important difference is that TLS 1.0 applies a Keyed-Hashing for Message Authentication Code (HMAC) algorithm, whereas SSL 3.0 applies the Message Authentication Code (MAC) algorithm for authenticating messages.
Pair of Twins
6
1. Introduction
SSL 1.0 has been deprecated.
SSL 2.0 (Mainly Legacy support).
SSL 3.0 (Current, being replaced by TLS for new projects).
TLS 1.0 (Current).
TLS 1.1 (Newly Introduced, not widely supported).
Prevalent Versions
7
2. Architecture
SSL/TLS Protocol Stack
9
ISO Open Systems
Interconnect model
SSL runs beneath application layers.
E.g. HTTP, FTP, SMTP etc
SSL runs above transport
protocols such as TCP.
2. Architecture
SSL/TLS can be used with any application based over TCP.
It’s applications are endless!
10
3. Analysis of SSL/TLS Session
1. Peer negotiation for algorithm support The two communicating parties negotiate a suitable cryptographic algorithm
which they both support. The most secure algorithm supported by both parties is chosen.
2. Public Key Encryption based key exchange, and Certificate based authentication. E.g. RSA, Diffie-Hellman, DSA, etc.
3. Symmetric cipher-based traffic encryption. E.g. RC2, RC4, DES, 3DES, etc.
Three Basic Phases
12
3. Analysis of SSL/TLS Session
An SSL session is basically an exchange of records of different types.
Each record may be compressed, encrypted and signed with a Message Authentication Code (MAC).
Each record has a content_type field that specifies which protocol is being used.
Some SSL protocols and their Content_type• 20 : ChangeCipherSpec• 21 : Alert• 22 : Handshake Protocol. • 22 : Record Layer Protocol. • 23 : Application protocol.
Simplistic Description
14
4. Applications of SSL/TLS
Securing HTTP connections , also referred to as HTTPS.
Identified by HTTPS:// prefix to the URL (within the address bar).
Is also indicated by padlock symbol at the status bar of a browser.
Implemented by installing an SSL certificate at the server.
Secure connection over - HTTPS
16
4. Applications of SSL/TLS
SSL is not just for the web, it is a suite of cryptographic protocols meant to be used in various ways.
Thus, HTTPS is different from just SSL.
Other ways SSL is commonly implemented in Client-Server mode:– File Transfer Protocol Secure (FTPS)– SSL over Database connections to SQL Server, Oracle, etc.– Secure email.
Peer-to-peer or Server-to-Server (mutual authentication ) uses:– Secure Web services– Semantic Web– Virtual Private Network– Session Initiation Protocol (SIP) applications such as Internet Telephony using
VoIP.
17
Secure connection over - HTTPS
4. Applications of SSL/TLS
Default Outlook express port configuration:
Outlook express configured to use SSL (With Gmail POP3/SMTP settings):
Example – SSL over POP3/SMTP
18
4. Applications of SSL/TLS
SSL also has a place within the proposed Semantic Web.
19
The trust architecture is based around
SSL/TLS.
5. Implementation
On the server, a Certificate Signing Request (CSR) is generated. This creates two cryptographic keys:– Public Key : used to encrypt message to the server. This is sent to the
Certificate Authority (CA) and gets downloaded by browser clients. It is then used to encrypt message to server.
– Private Key : Stored on server, used to decrypt secure messages encrypted using the public key.
This CSR is then submitted to a relevant CA, along with relevant legal organisational details– E.g. Thawte, Verisign, GoDaddy.
CA verifies that details provided by organisation are correct, and issues a certificate file.
This file is copied and installed on the server, and it is ready to accept secure connections.
SSL certificate on Server
21
5. Implementation
SSL mechanisms need to be enabled within the web server.– E.g. Apache, Internet Information Server.
Apache web server has ‘modules’ that implement SSL:– OpenSSL– ModSSL– Apache-SSL
Enabling SSL within Web Server
22
5. Implementation
A typical browser come pre-installed with a list of Certificate Authorities
SSL on client (Browser)
23
Mozilla Firefox
5. Implementation
Browsers support a variety of SSL/TLS versions:
Support for SSL/TLS versions
24
Mozilla Firefox
5. Implementation
Browser can download and display (when asked) complete certificate details of the server:
Certificate Details
25
Mozilla Firefox displaying
Gmail’s SSL Certificate
5. Implementation
The browser will connect to relevant CA and verify a number of details, and perform separate checks. It will usually issue warnings explaining the severity of discrepancies, if any:
Security Checks by Client
26
Mozilla Firefox detects
inconsistencies with
Gmail.com’s SSL certificate.
6. Winning Features
Integrity– No one tampers with the contents during transport. E.g. Man-in-the-middle
attacks.
Privacy– Prevent eavesdropping by encrypting messages.
Authentication– Verify remote party’s identity.– YOU ARE who you say YOU ARE.
Non-repudiation– Digital signature prove that a message was actually sent by a party.
Prime Features
28
6. Winning Features
Asymmetric Public-Private key structure alleviates need for special setup for each session.
Depends on Public Key Infrastructure (PKI) implemented via Certificate Authorities (CA).
Conventions followed by manufacturers to pre-set software and appliances with globally agreed data.
No setup per session or machine!
29
6. Winning Features
Uses X.509 certificate
OpenPGP certificates have been proposed for inclusion.
Certificates
30
6. Winning Features
Previously limited to 40-bit symmetric keys by US govt restrictions
Now, 56-bit, 128-bit, 256-bit keys are commercially available, very easily.
2048-bit and 4096-bit keys are also supported by some products.
SSL/TLS itself does not restrict key size, but products and technologies on place have their own restrictions.
Large key sizes
31
6. Winning Features
Cryptographic Algorithms can be rendered obsolete.
Extensible and upgradeable structure ensures latest and strongest cryptographic algorithms are used always.
Current supports includes– RSA, Diffie-Hellman, DSA (for Public Key cryptography).– RC2, RC4, IDEA, DES, 3DES (for Symmetric Ciphers).– MD2, MD4, MD5, SHA (One Way hash functions).
…. And more will come.
Future-Proofing
32
References
• Thawte (2006). Securing your Online Data Transfer with SSL - A guide to understanding SSL Certificates [online].Available from: http://www.thawte.com/ssl-digital-certificates/free-guides-whitepapers/ [Accessed 2 April 2007]
• IETF (2006). RFC 4346 The Transport Layer Security (TLS) Protocol Version 1.1.
• Bussler, C. et al (2002) A conceptual architecture for Semantic Web Enabled Services. Special section on semantic web and data management. [Pages 24 – 29].
• Thawte (2006). Enrolment guide for thawte SSL Web Server Certificates and SGC Supercerts [online].Available from: http://www.thawte.com/ssl-digital-certificates/free-guides-whitepapers/ [April 2, 2007]
• Wikipedia (2007a). Transport Layer Security [online]. Available from: http://en.wikipedia.org/wiki/Transport_Layer_Security [April 02, 2007]
• Wikipedia (2007b). Semantic Web [online].Available from: http://en.wikipedia.org/wiki/Semantic_web [Jan 2, 2007]
• Minai, A. (2007) Internet Security, Msc Internet Computing, CSYM020. University of Northampton, 2007.
33