1 / 0

SSL and HTTPS for Web Communication

SSL and HTTPS for Web Communication. CSCI 5857: Encoding and Encryption. Web Security Problems. Major concerns: Encryption of sensitive data sent between client and server Authentication of server How does client know who they are dealing with? Information integrity

orde
Download Presentation

SSL and HTTPS for Web Communication

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SSL and HTTPS for Web Communication

    CSCI 5857: Encoding and Encryption
  2. Web Security Problems Major concerns: Encryption of sensitive data sent between client and server Authentication of server How does client know who they are dealing with? Information integrity How do we know third party has not altered data en route? Bob’s web site Alice thinks she is at Bob’s site, but Darth is spoofing it Bob’s web site Address information Change so item shipped to Darth
  3. Certificates Web sites that deal in ecommerce must have certificates for authentication Installed at server Transmitted to client for authentication Validated by browser using CA’s public key Server machine CA Request for secure session Client machine Web Container (JSP, ASP) Browser Certificatesigned by CA
  4. Certificates Public keys stored in browser Can request from other CAs via public key infrastructure as needed
  5. Secure Socket Layer Protocol Secure Socket Layer protocol for web communication Latest upgrade: Transport Layer Security (TLS) Same structure as SSL, somewhat more secure
  6. SSL Protocol: Phase 1 Phase 1: Information exchange Problem: Large number of encryption algorithms in use How do client and server agree on which to use? How does client tell server which ones it supports?
  7. SSL Protocol: Phase 1 Client passes preferred algorithms to server via https request Public key encryption algorithms Private key encryption algorithms Hash algorithms Compression algorithms Also random number for key generation Server replies with algorithms that will be used Also passes own random number
  8. SSL Protocol: Phase 2 Phase 2: Server Identification and Key Exchange Server passes their certificates to client Client uses issuer public key to verify identity Client retrieves server public key from certificate Server may pass chain of certificates for authentication
  9. SSL Protocol: Phase 2 If no certificate containing a public key, separate public key must be passed Certificate contains RSA public key, so no separate key passed No certificate, so Diffie-Hellman key exchange parameters passed
  10. SSL Protocol: Phase 2 Server can also request appropriate client certificates to authenticate client Online banking Remote access to company database
  11. SSL Protocol: Phase 3 Phase 3: Client Identification and Key Exchange Client sends certificate or public key if requested by server
  12. SSL Key Generation Client generates “pre-master key” Sends to server encrypted with server public key Client and server use to generate master key used to create cipher keys Also use client, server random numbers exchanged in phase 1
  13. SSL Key Generation
  14. SSL Key Generation
  15. SSL Key Generation Key material used to generate: Keys for encryption and authentication (MAC) IV’s for cipher block chaining
  16. Phase 4: Final Handshake Client and server verify protocols and keys Sender signs/encrypts “finished” message Receiver decrypts/verifies message to confirm keys
  17. SSL Data Transmission Message broken into blocks Block compressed Compressed block hashed with authentication key to get MAC (message integrity) Compressed block + MAC encrypted with cipher key Encrypted block + record protocol header with version/length information sent
  18. SSL Data Transmission MAC algorithm is modifiedHMAC Two stage hash with secret MAC key inserted at each stage Values similar to IPAD and OPAD also inserted
  19. Sessions and SSL Connection: single transmission between client and server Session: set of connections for some purpose Example: Ecommerce payment session: Credit card, Address, etc. Often involves same httpssession Can reuse same keys for all connections in session Much more efficient than restarting SSL protocol each connection
  20. Https Protocol When started, requests secure session from server Uses separate port in some servers Invokes SSL protocol
  21. Https Protocol Https protocol is expensive Should not do unless necessary Once done with secure transactions, should go back to using non-secure channel Return to non-secure port
More Related