Introduction to Cryptography



Similar documents
Overview of CSS SSL. SSL Cryptography Overview CHAPTER

Overview. SSL Cryptography Overview CHAPTER 1

Secure Sockets Layer (SSL) / Transport Layer Security (TLS)

Security. Contents. S Wireless Personal, Local, Metropolitan, and Wide Area Networks 1

KEY DISTRIBUTION: PKI and SESSION-KEY EXCHANGE. Mihir Bellare UCSD 1

Authenticity of Public Keys

SSL/TLS: The Ugly Truth

Secure Sockets Layer (SSL ) / Transport Layer Security (TLS) Network Security Products S31213

IT Networks & Security CERT Luncheon Series: Cryptography

HTTPS: Transport-Layer Security (TLS), aka Secure Sockets Layer (SSL)

SBClient SSL. Ehab AbuShmais

SSL Protect your users, start with yourself

An Introduction to Identity-based Cryptography CSEP 590TU March 2005 Carl Youngblood

Discrete logarithms within computer and network security Prof Bill Buchanan, Edinburgh Napier

INTRODUCTION to CRYPTOGRAPHY & CRYPTOGRAPHIC SERVICES on Z/OS BOSTON UNIVERSITY SECURITY CAMP MARCH 14, 2003

Chapter 17. Transport-Level Security

PGP from: Cryptography and Network Security

Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ MEng. Nguyễn CaoĐạt

Electronic Mail Security. Security. is one of the most widely used and regarded network services currently message contents are not secure

Digital Certificates (Public Key Infrastructure) Reshma Afshar Indiana State University

Secure Socket Layer (SSL) and Transport Layer Security (TLS)

Chapter 7 Transport-Level Security

Forward Secrecy: How to Secure SSL from Attacks by Government Agencies

Cryptography and Network Security Chapter 15

Communication Systems SSL

How To Encrypt Data With Encryption

Using etoken for SSL Web Authentication. SSL V3.0 Overview

Secure Client Applications

Lecture 13. Public Key Distribution (certification) PK-based Needham-Schroeder TTP. 3. [N a, A] PKb 6. [N a, N b ] PKa. 7.

Security & Privacy on the WWW. Topic Outline. Information Security. Briefing for CS4173

Savitribai Phule Pune University

3.2: Transport Layer: SSL/TLS Secure Socket Layer (SSL) Transport Layer Security (TLS) Protocol

Internet Programming. Security

Certificates and network security

Secure Socket Layer. Introduction Overview of SSL What SSL is Useful For

Network Security. Gaurav Naik Gus Anderson. College of Engineering. Drexel University, Philadelphia, PA. Drexel University. College of Engineering

Web Security: Encryption & Authentication

Cryptosystems. Bob wants to send a message M to Alice. Symmetric ciphers: Bob and Alice both share a secret key, K.

Communication Systems 16 th lecture. Chair of Communication Systems Department of Applied Sciences University of Freiburg 2009

PGP (Pretty Good Privacy) INTRODUCTION ZHONG ZHAO

Announcement. Final exam: Wed, June 9, 9:30-11:18 Scope: materials after RSA (but you need to know RSA) Open books, open notes. Calculators allowed.

User Guide Supplement. S/MIME Support Package for BlackBerry Smartphones BlackBerry Pearl 8100 Series

Lecture 9: Application of Cryptography

What is network security?

7 Key Management and PKIs

CSCE 465 Computer & Network Security

Network Security Essentials Chapter 5

As enterprises conduct more and more

Information Security

Computer and Network Security. Outline

Chapter 10. Network Security

Cryptography & Digital Signatures

Web Payment Security. A discussion of methods providing secure communication on the Internet. Zhao Huang Shahid Kahn

Lecture 9 - Network Security TDTS (ht1)

Security. Friends and Enemies. Overview Plaintext Cryptography functions. Secret Key (DES) Symmetric Key

Security Engineering Part III Network Security. Security Protocols (I): SSL/TLS

Elements of Security

Network Security Essentials Chapter 7

7! Cryptographic Techniques! A Brief Introduction

Network Security. Computer Networking Lecture 08. March 19, HKU SPACE Community College. HKU SPACE CC CN Lecture 08 1/23

Protocol Rollback and Network Security

Standards and Products. Computer Security. Kerberos. Kerberos

Chapter 8. Network Security

Chapter 6 Electronic Mail Security

Cornerstones of Security

CSE543 - Introduction to Computer and Network Security. Module: Public Key Infrastructure

Lightweight Security using Identity-Based Encryption Guido Appenzeller

CS 356 Lecture 27 Internet Security Protocols. Spring 2013

Chapter 11 Security+ Guide to Network Security Fundamentals, Third Edition Basic Cryptography

CS549: Cryptography and Network Security

CIS 6930 Emerging Topics in Network Security. Topic 2. Network Security Primitives

CS Computer Security Third topic: Crypto Support Sys

Module 7 Security CS655! 7-1!

Brocade Engineering. PKI Tutorial. Jim Kleinsteiber. February 6, Page 1

Managing and Securing Computer Networks. Guy Leduc. Chapter 4: Securing TCP. connections. connections. Chapter goals: security in practice:

Transport Level Security

Communication Security for Applications

Managing SSL certificates in the ServerView Suite

Secure Socket Layer. Carlo U. Nicola, SGI FHNW With extracts from publications of : William Stallings.

Network Security - Secure upper layer protocols - Background. Security. Question from last lecture: What s a birthday attack? Dr.

CRYPTOGRAPHY IN NETWORK SECURITY

Cryptography and Network Security

Cryptography and Network Security Chapter 14

Public Key Infrastructure

GPG - GNU Privacy Guard

Message authentication and. digital signatures

Key Management and Distribution

[SMO-SFO-ICO-PE-046-GU-

Network Security [2] Plain text Encryption algorithm Public and private key pair Cipher text Decryption algorithm. See next slide

Module 8. Network Security. Version 2 CSE IIT, Kharagpur

Cryptography and Network Security

CS 758: Cryptography / Network Security

Outline. Transport Layer Security (TLS) Security Protocols (bmevihim132)

SSL: Secure Socket Layer

SECURE SOCKET LAYER PROTOCOL SIMULATION IN JAVA. A Research Project NAGENDRA KARRI

WiMAX Public Key Infrastructure (PKI) Users Overview

Release: 1. ICANWK502A Implement secure encryption technologies

Secure Socket Layer (SSL) and Trnasport Layer Security (TLS)

Certificate Management. PAN-OS Administrator s Guide. Version 7.0

Authentication applications Kerberos X.509 Authentication services E mail security IP security Web security

Transcription:

Introduction to Cryptography Part 3: real world applications Jean-Sébastien Coron January 2007

Public-key encryption BOB ALICE Insecure M E C C D channel M Alice s public-key Alice s private-key

Authentication Public-keys need to be authenticated Bob needs to be sure that the public-key belongs to Alice. Otherwise, impersonation attack BOB ALICE Insecure M E C C D channel M Eve s public-key EVE M Alice s private-key

Public-key Infrastructure A central authority binds public-keys to identities. Public-key is stored in a certificate Central authority 2) Alice authenticates andsendpk Alice 3) Certificate (ID Alice, PK Alice ) 1) Alice generates PK Alice and SK Alice

Public-key certificate Certificate: the signature of the certificate authority binds together a public-key with an identity. Bob can be sure that the public-key belongs to Alice by checking the signature using the CA public-key. The CA is trusted by all participants.

Certificate Authority CA issues PK certificates that attest that the PK in the certificate belongs to the identity in the certificate CA must verify user s identity before issuing certificate If the CA s private key is compromised, security is lost. Largest providers of certificates Verisign, Geotrust

Public-key certificate A public-key certificate may include user s public-key name (person, computer, or company) validity period. location (URL) of a revocation center. digital signature of the certificate, produced by the CA's private key.

Certificate revocation Certificate revocation when Private-key is compromised Identity/PK binding incorrect. A user should always check the validity of a certificate CA can maintain a Certificate Revocation List (CRL) Must be up to date and readily available

PKI encryption 7. Certificate OK CA authority 6. Bob verifies certificate. Bob checks for revocation 2. Alice authenticates and sends PK Alice 4. Bob requests Alice s certificate 5. Alice sends certificate 3. Certificate (ID Alice,PK Alice ) 8. Bob send secure email using PK Alice 1. Alice generates PK Alice /SK Alice

Hierarchy of certificates Bob may not know Alice s CA The CA may be Alice s employer, and Bob may work for a different company. Alice s certificate can include her CA s public-key signed by a higher level CA 2 This CA 2 may be recognized by Bob This leads to a hierarchy of certificates

Certificate Hierarchy C=LU National CA, root certificate O=University of Luxembourg Organizational CA CN=end user OU=CS Department Departmental CA

Certificate Standard X509 Most common certificate standard Specifies certificate format and certificate validation path. Assumes a hierarchy of CA Root certificate is implicitly trusted Specifies certificate revocation list (CRL) implementation

Root certificate Unsigned public-key certificate located at the top of a certificate chain. Typically in X509 standard Implicitly trusted Included in web browsers Used for SSL/TLS connections One needs to trust the browser s publisher to include correct root certificates. Single point of failure In practice, hierarchy is flat.

PGP PGP (Pretty Good Privacy) Software that provides email encryption and signature (and more). First version by P. Zimmermann in 1991. Uses PK encryption to encrypt a shared key, which is used to encrypt the message. M E K BOB E PK (C 1,C 2 ) Insecure channel (C 1,C 2 ) ALICE D PK E K M Alice s public-key Alice s private-key

PGP Digital signature When sending a message m, Bob can sign m with his private key. Alice checks the signature with Bob s PK, so that Alice is convinced that m was sent by Bob and received unaltered. RSA signature or DSA signature. Used by default with encryption, but can be used for plaintext as well

PGP Web of trust Any party can sign the (PK,ID) of another. Decentralized web of trust E D Alice Bob C

OpenPGP and GnuPG OpenPGP Standard for PGP encryption since 1997. Avoids patented algorithms GNU Privacy Guard (GnuPG) developed by Free Software Foundation and freely available with source code. Supports ElGamal, DSA, RSA, AES, 3DES, Blowfish, Twofish, CAST5, MD5, SHA-1, RIPE-MD-160 and TIGER.

SSL Used to provide secure web-browsing. SSL 3.0 similar to TLS 1.0 ensures confidentiality, integrity and authenticity over the Internet. Generally, only the server is authenticated Mutual authentication requires a PKI for the client.

SSL Three steps Negotiation for algorithms used. Certificate verification and PK encryption for session key. Symmetric encryption for traffic encryption.

Cipher suite negotiation Client sends a ClientHello message to specify supported algorithms For example, RSA, AES and HMAC-SHA-1 Server sends a ServerHello message to specify its choice of algorithm. Server adapts to client capabilities.

SSL: second phase Server sends certificate to client. Generally, X509 certificate Server can request client certificate for mutual authentication Rarely used in practice Client and Server establish a «master secret» by PK encryption of a random seed by the client (generally RSA) or possibly by Diffie-Hellman key exchange (rarely used)

SSL second phase (2) Server authenticated by proof of possession of private key Ability to decrypt client data. Both sides share the same «master secret» Client/server finish Authenticate all previously exchanged data with MACs

SSL: third phase Traffic encryption Using symmetric cipher Some early implementations of SSL used 40-bit keys because of US government restrictions on crypto export Now relaxed export restrictions. Modern implementations use 128 bit keys for symmetric key. Integrity protection via MACs

Applications of SSL Mainly used to secure HTTP => HTTPS

Credit card via https https only protects the credit card number during transit between the user s computer and the server Does not protect against an attack on the server Attack on the server usually easier than interception in transit. Credit card number often saved in a database in merchant site Attacks generally concentrate on the server and database

Identity-Based encryption Principle Allows a party to encrypt a message using the recipient s identity as the public-key The corresponding private key is provided by a central authority History Concept invented by Shamir in 1984 First realization by Boneh and Franklin in 2001

IBE Bob sends an email to Alice using his identity as the public-key Key server 1. Bob encrypts with public-key alice@a.com 2. Alice authenticates 3. Private-key for Alice Bob send secure email

Principle IBE Bob encrypts his email using Alice s email adress alice@a.com as the public key Alice receives the message. She contacts the key server, authenticates, and receives her private key. Alice uses her private-key to decrypt the message This private-key can be used to decrypt any future message sent to Alice by Bob or any other user.

Difference with conventional PKI 7. Certificate OK CA authority 6. Bob verifies certificate. Bob checks for revocation 2. Alice authenticates and sends PK Alice 4. Bob requests Alice s certificate 5. Alice sends certificate 3. Certificate (ID Alice,PK Alice ) 8. Bob send secure email using PK Alice 1. Alice generates PK Alice /SK Alice

Adantages of IBE Simplification compared to PKI No need to distribute PK certificates Users can use their email adress as PK Recipient does not have to be online to present PK certificate. Sender does not have to be online to check validity of certificate Bob can send an email to Alice even if Alice has not yet registered in the system

Boneh-Franklin First efficient IBE, proposed by Boneh and Franklin at Crypto 2001 Most famous IBE scheme to date. Based on the bilinear pairing operation on an Elliptic-Curve. Provably secure encryption scheme IBCS#1 standard, published by Voltage Security.

Applications of IBE Email encryption A company hosts the Private-Key generator (PKG) and distributes private-keys to its employees. Employees can communicate securely between themselves, using their email address as their public-key Nobody expect the mail recipient (and the PKG) can decipher the communications Private-keys can also be distributed outside the company

Revocation of Public-keys Key-revocation in IBE is simple Bob encrypts his email to Alice using the publickey «alice@company.com current-year» Alice can only decrypt if she has obtained the private-key for the corresponding year. With «alice@company.com current-date» instead, Alice must obtain a new private-key every day Key revocation: the PKG simply stops issuing private-keys to Alice if Alice leaves the company. Then she can no longer read her email Encrypting into the future With «alice@company.com future-date»

Conclusion Public-key Infrastructure Necessary to authenticate public-keys Difficult to set up and maintain Certificate Revocation List Used for PGP encryption and SSL/TLS. IBE could be an alternative But central authority can decrypt everything.