ECE454/599 Computer and Network Security Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall 2012.

Slides:



Advertisements
Similar presentations
Computer Science CSC 474Dr. Peng Ning1 CSC 474 Information Systems Security Topic 4.4 Public Key Infrastructure (PKI) Acknowledgment: Slides revised from.
Advertisements

Chapter 14 – Authentication Applications
Authentication Applications. will consider authentication functions will consider authentication functions developed to support application-level authentication.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
Public Key Infrastructure (PKI)
Certificates Last Updated: Aug 29, A certificate was originally created to bind a subject to the subject’s public key Intended to solve the key.
1 Lecture 13: Public Key Infrastructure terms PKI trust models –monopoly with registration authorities with delegated certificate authorities –oligarchy.
COEN 350 Public Key Infrastructure. PKI Task: Securely distribute public keys. Certificates. Repository for retrieving certificates. Method for revoking.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
1 ISA 562 Information Systems Theory and Practice 10. Digital Certificates.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
Public Key Management and X.509 Certificates
Computer Security: Principles and Practice EECS710: Information Security Professor Hossein Saiedian Fall 2014 Chapter 23: Internet Authentication Applications.
Chapter 14 From Cryptography and Network Security Fourth Edition written by William Stallings, and Lecture slides by Lawrie Brown, the Australian Defence.
Chapter 4 Authentication Applications. Objectives: authentication functions developed to support application-level authentication & digital signatures.
Lecture 23 Internet Authentication Applications
Chapter 5 Network Security Protocols in Practice Part I
Authentication Cristian Solano. Cryptography is the science of using mathematics to encrypt and decrypt data. Public Key Cryptography –Problems with key.
Public Key Infrastructure (PKI) Providing secure communications and authentication over an open network.
Slide 1 Many slides from Vitaly Shmatikov, UT Austin Public-Key Infrastructure CNS F2006.
CMSC 414 Computer (and Network) Security Lecture 17 Jonathan Katz.
 Authorization via symmetric crypto  Key exchange o Using asymmetric crypto o Using symmetric crypto with KDC  KDC shares a key with every participant.
1 Authentication Applications Digital Signatures Security Concerns X.509 Authentication Service Kerberos Based on slides by Dr. Lawrie Brown of the Australian.
EEC 693/793 Special Topics in Electrical Engineering Secure and Dependable Computing Lecture 6 Wenbing Zhao Department of Electrical and Computer Engineering.
CMSC 414 Computer and Network Security Lecture 21 Jonathan Katz.
CMSC 414 Computer and Network Security Lecture 20 Jonathan Katz.
Slide 1 Vitaly Shmatikov CS 378 Public-Key Authentication and Public-Key Infrastructure.
CERTIFICATES “a document containing a certified statement, especially as to the truth of something ”
CS470, A.SelcukPKI1 Public Key Infrastructures CS 470 Introduction to Applied Cryptography Instructor: Ali Aydin Selcuk.
Security Management.
1 CS 194: Distributed Systems Security Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer Sciences.
14 May 2002© TrueTrust Ltd1 Privilege Management in X.509(2000) David W Chadwick BSc PhD.
Wolfgang Schneider NSI: A Client-Server-Model for PKI Services.
1 Lecture 11 Public Key Infrastructure (PKI) CIS CIS 5357 Network Security.
Cryptography and Network Security Chapter 14 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
Introduction to Secure Messaging The Open Group Messaging Forum April 30, 2003.
NENA Development Conference | October 2014 | Orlando, Florida Security Certificates Between i3 ESInet’s and FE’s Nate Wilcox Emergicom, LLC Brian Rosen.
E-Commerce Security Technologies : Theft of credit card numbers Denial of service attacks (System not availability ) Consumer privacy (Confidentiality.
Chapter 9: Using and Managing Keys Security+ Guide to Network Security Fundamentals Second Edition.
Public Key Infrastructure (X509 PKI) Presented by : Ali Fanian.
Computer Security: Principles and Practice First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown Chapter 22 – Internet Authentication.
Configuring Directory Certificate Services Lesson 13.
Chapter 23 Internet Authentication Applications Kerberos Overview Initially developed at MIT Software utility available in both the public domain and.
SECURITY MANAGEMENT Key Management in the case of public-key cryptosystems, we assumed that a sender of a message had the public key of the receiver at.
CERTIFICATES. What is a Digital Certificate? Electronic counterpart to a drive licenses or a passport. Enable individuals and organizations to secure.
King Mongkut’s University of Technology Faculty of Information Technology Network Security Prof. Reuven Aviv 6. Public Key Infrastructure Prof. R. Aviv,
15.1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Key Management.
CMSC 414 Computer and Network Security Lecture 16 Jonathan Katz.
Authentication 3: On The Internet. 2 Readings URL attacks
Public Key Infrastructure (X509 PKI) Presented by : Ali Fanian
Protocols for public-key management. Key management –two problems Distribution of public keys (for public- key cryptography) Distribution of secret keys.
Cryptography and Network Security Chapter 14 Fourth Edition by William Stallings Lecture slides by Lawrie Brown.
Security fundamentals Topic 5 Using a Public Key Infrastructure.
Creating and Managing Digital Certificates Chapter Eleven.
Cryptography and Network Security Chapter 14
Key Management. Authentication Using Public-Key Cryptography  K A +, K B + : public keys Alice Bob K B + (A, R A ) 1 2 K A + (R A, R B,K A,B ) 3 K A,B.
Private key
1 Public Key Infrastructure Dr. Rocky K. C. Chang 25 February, 2002.
1 Public Key Infrastructure Rocky K. C. Chang 6 March 2007.
CMSC 414 Computer and Network Security Lecture 18 Jonathan Katz.
Pertemuan #8 Key Management Kuliah Pengaman Jaringan.
Prof. Reuven Aviv, Nov 2013 Public Key Infrastructure1 Prof. Reuven Aviv Tel Hai Academic College Department of Computer Science Public Key Infrastructure.
Public Key Infrastructure. A PKI: 1. binds public keys to entities 2. enables other entities to verify public key bindings 3. provides services for management.
Key management issues in PGP
IT443 – Network Security Administration Instructor: Bo Sheng
Cryptography and Network Security
Digital Certificates and X.509
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
Presentation transcript:

ECE454/599 Computer and Network Security Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall

Public Key Infrastructure PKI Trust Models Revocation Directories PKIX and X.509 Authorization

Authenticity of Public Keys ? Problem: How does Alice know that the public key she received is really Bob’s public key? private key Alice Bob public key Bob’s key

Certificate and CA Public-key certificate ◦ Signed statement specifying the key and identity  sig Alice (“Bob”, PK B ) Common approach: certificate authority (CA) ◦ Single agency responsible for certifying public keys ◦ After generating a private/public key pair, user proves his identity and knowledge of the private key to obtain CA’s certificate for the public key (offline) ◦ Every computer is pre-configured with CA’s public key

Using Public-Key Certificates Authenticity of public keys is reduced to authenticity of one key (CA’s public key)

Public Key Infrastructure The task of PKI is to securely distribute public keys. PKI consists of ◦ certificates ◦ a repository for retrieving certificates ◦ a method of revoking certificates ◦ a method of evaluating a chain of certificates from a trust anchor to the target name

Hierarchical Approach Single CA certifying every public key is impractical Instead, use a trusted root authority ◦ For example, Verisign ◦ Everybody must know the public key for verifying root authority’s signatures Root authority signs certificates for lower-level authorities, lower-level authorities sign certificates for individual networks, and so on ◦ Instead of a single certificate, use a certificate chain  sig Verisign (“UnB”, PK UT ), sig UT (“Manoel”, PK V ) ◦ What happens if root authority is ever compromised?

Alternative: “Web of Trust” Used in PGP (Pretty Good Privacy) Instead of a single root certificate authority, each person has a set of keys they “trust” ◦ If public-key certificate is signed by one of the “trusted” keys, the public key contained in it will be deemed valid Trust can be transitive ◦ Can use certified keys for further certification Alice Friend of Alice Friend of friend Bob sig Alice (“Friend”, Friend’s key) sig Friend (“FoaF”, FoaF’s key) I trust Alice

Chain of Trust Small World: Any two people in this world can be connected via “six degrees of separation” [Carol’s public key is ] Ted [David’s public key is ] Carol [Bob’s public key is ] David Alice: Ted’s public key is (Trust anchor)

PKI Trust Model Answering the following questions. ◦ Where to get trust anchors? ◦ Which chain of trust to follow? Various models ◦ Monopoly Model ◦ Monopoly plus Registration Authorities ◦ Delegated CAs ◦ Oligarchy ◦ Anarchy Model ◦ Top-Down with Name Constraints ◦ Bottom-UP with Name Constraints

Monopoly Model ◦ There is a single CA, which is the trust anchor of all principles. Monopoly Plus Registration Authorities (RAs) ◦ CA issues certificates, but delegates the verification of keys to RAs.

Delegated CAs The trust anchor CA generates certificates for delegated CAs, which in turn generates certificates for principles. More than one certificate is needed in the process of verification of a public key.

Oligarchy Model Multiple trust anchor CAs are pre-configured in all principals User has an option to modify the list of trust anchor CAs Commonly used in browsers (SSL/TLS)

Anarchy Model Each principal selects a set of peers as trust anchors; Principals sign each others’ certificates. A principal may store a database of known certificates; Some organization may offer public repository of certificates. If a chain of trust (certificates) can be found from a trust anchor to a target name, then the public key of the target is verified.

Top-Down with Name Constraints Name constraints: each CA only trusted for signing a subset of users. Similar to DNS hierarchy, each domain may have a CA server. The CA of the parent domain (utk.edu) generates certificates for the CAs responsible of the sub-domains (eecs.utk.edu). Each principal is pre-configured with the public key of the root. The only trust path is from the root to the target.

Bottom-Up with Name Constraints A parent CA and a child CA generate certificates for each other. Two CAs without parent-child relationship may generate a certificate, known as a cross-certificate. The trust paths start from a trust anchor, follow up-links to an ancestor, possibly follow a cross-link, then follow down-links to the target.

Directories A directory is a distributed hierarchical database indexed by a hierarchical name, where associated with each name is a repository of information for that name. E.g., DNS, X.500

PKIX and X.509 X.500 (Directory standard) defines a hierarchical naming scheme. X.509 defines the format of certificates, using X.500 names. PKIX defines the trust model, and specifies which X.509 options should be supported: an architecture of entities (users, CAs, RAs…) and interrelationships (registration, certification, CRL publication)

X.509 Authentication Service Internet standard ( ) Specifies certificate format ◦ X.509 certificates are used in IPSec and SSL/TLS Specifies certificate directory service ◦ For retrieving other users’ CA-certified public keys Specifies a set of authentication protocols ◦ For proving identity using public-key signatures Does not specify crypto algorithms ◦ Can use it with any digital signature scheme and hash function, but hashing is required before signing

X.509 Certificate Added in X.509 versions 2 and 3 to address usability and security problems

Certificate Revocation Revocation is very important Many valid reasons to revoke a certificate ◦ Private key corresponding to the certified public key has been compromised ◦ User stopped paying his certification fee to this CA and CA no longer wishes to certify him ◦ CA’s certificate has been compromised! Expiration is a form of revocation, too ◦ Many deployed systems don’t bother with revocation ◦ Re-issuance of certificates is a big revenue source for certificate authorities

Certificate Revocation Mechanisms Online revocation service (OLRS) ◦ When a certificate is presented, recipient goes to a special online service to verify whether it is still valid  Like a merchant dialing up the credit card processor Certificate revocation list (CRL) ◦ CA periodically issues a signed list of revoked certificates  Credit card companies used to issue thick books of canceled credit card numbers ◦ Can issue a “delta CRL” containing only updates Question: does revocation protect against forged certificates?

X.509 Certificate Revocation List Because certificate serial numbers must be unique within each CA, this is enough to identify the certificate

X.509 Version 1 Encrypt, then sign for authenticated encryption ◦ Goal: achieve both confidentiality and authentication ◦ E.g., encrypted, signed password for access control Does this work? AliceBob “Alice”, sig Alice (Time Alice, “Bob”, encrypt PublicKey(Bob) (message))

Attack on X.509 Version 1 Receiving encrypted password under signature does not mean that the sender actually knows the password! Proper usage: sign, then encrypt AliceBob “Alice”, sig Alice (Time Alice, “Bob”, encrypt PublicKey(Bob) (password)) Attacker extracts encrypted password and replays it under his own signature “Charlie”, sig Charlie (Time Charlie, “Bob”, encrypt PublicKey(Bob) (password))

Authentication and Authorization Authentication: verify who you are. Authorization: restrict what you can do.

Authorization Access Control List (ACL) ◦ Given a resource, the ACL specifies which user can have what rights in accessing the resource. Capability List ◦ Given a user, the capability list specifies what resources the user can access and what are the right for each resource.

Groups and Roles Groups ◦ A way to remove redundancy in ACLs or capability lists. Roles ◦ A different way of removing redundancy, other than groups. ◦ Establish a context for a user to perform his tasks.

Summary Trust: PKI trust models - how to find trust anchors (CA, peer) - how to establish chain-of-trust Certificate: proof of trust - what is a certificate - why is it needed - format: X revocation: needed whenever a credential is issued

Reading Assignment [Kaufman] Chapter 15