SSL Intro
SSL Intro
SSL Intro
LAYER
Presented by:
1.
2.
3.
4.
www.nascenia.com
BACKGROUND
WHY AND HOW
HOW TO CHECK IN THE BROWSER.
MAIN CONCERNS
Authentication of server
How does client know who they are dealing with?
Bobs web
site
Information integrity
How do we know third party has not altered data en
route?
Bobs web
Address information
Change so item shipped to Darth
site
SSL HISTORY
SSL VERSION
There
HOW IT WORKS
Encryption of sensitive data like DES,RSA
algorithm
Sent between client and server through
Certification like very sign
www.aiub.edu
www.gmail.com
https://www.varsityadmission.com/
CERTIFICATES
Client machine
Browser
Request for
secure session
Server machine
CA
Web Container
(JSP, ASP)
Certificate
signed by CA
PHASE 4: FINAL
HANDSHAKE
Sender
signs/encrypts
finished
message
Receiver
decrypts/verifies
message to
confirm keys
Block compressed
Two stage hash with secret MAC key inserted at each stage
Values similar to IPAD and OPAD also inserted
ALGORITHM USED
RC2 and RC4. Rivest encryption ciphers developed for RSA Data Security.
CERTIFICATION AUTHORITY
50 root certificate authority worldwide
Needs to listed on browsers.
Undergo annual security audit (e.g. by Webtrust).
The large authorities are Verisign (acquired
Thawte and Geotrust) has 48 %, GoDaddy 23%,
and Combodo 15%, others 14%
IN BANGLADESH
SSL Wireless provides Verisign certification:
www.sslwireless.com
CODING
DIFFERENT VERSIONS OF SSL
OPENSSL
OpenSSL
protocols.
The
INITIALIZATION
meth = SSLv3_method();
CERTIFICATE VERIFICATION IN
THE CLIENT SIDE
err = SSL_connect(ssl);
/* initiates the TLS/SSL handshake */
if(SSL_get_peer_certificate(ssl) != NULL)
{
if(SSL_get_verify_result(ssl) == X509_V_OK)
BIO_printf(bio_c_out, "client verification with
SSL_get_verify_result()
succeeded.\n");
else{
BIO_printf(bio_err, "client verification with
SSL_get_verify_result()
failed.\n");
exit(1);
}
}
else
BIO_printf(bio_c_out, -the peer certificate was not
presented.\n-);
SSL HANDSHAKE
err = SSL_accept(ssl);
On client side-
err = SSL_connect(ssl);
SSL VERSIONS
Version 1.0 was never publicly released; version 2.0 was released in February 1995
but "contained a number of security flaws which ultimately led to the design of SSL
version 3.0"
SSL
SSL
SOURCES USED
Cryptography and Network Security, Principles
and Practices, 4th Ed., William Stallings
www.wikipedia.com
A few other internet resources
THANK YOU