Outline Key Management CS 239 Computer Security February 9, 2004

Similar documents
Computer Security. 08r. Pre-exam 2 Last-minute Review Cryptography. Paul Krzyzanowski. Rutgers University. Spring 2018

Protocols II. Computer Security Lecture 12. David Aspinall. 17th February School of Informatics University of Edinburgh

Outline More Security Protocols CS 239 Computer Security February 4, 2004

Outline More Security Protocols CS 239 Computer Security February 6, 2006

Chapter 9: Key Management

CPSC 467b: Cryptography and Computer Security

Outline. More Security Protocols CS 239 Security for System Software April 22, Needham-Schroeder Key Exchange

What did we talk about last time? Public key cryptography A little number theory

1.264 Lecture 27. Security protocols Symmetric cryptography. Next class: Anderson chapter 10. Exercise due after class

Cristina Nita-Rotaru. CS355: Cryptography. Lecture 17: X509. PGP. Authentication protocols. Key establishment.

Cryptographic Protocols 1

Cryptography and Network Security

CSCE 813 Internet Security Kerberos

0/41. Alice Who? Authentication Protocols. Andreas Zeller/Stephan Neuhaus. Lehrstuhl Softwaretechnik Universität des Saarlandes, Saarbrücken

Introduction. Trusted Intermediaries. CSC/ECE 574 Computer and Network Security. Outline. CSC/ECE 574 Computer and Network Security.

CHAPTER 3. ENHANCED KERBEROS SECURITY: An application of the proposed system

CIS 6930/4930 Computer and Network Security. Topic 7. Trusted Intermediaries

CS 111. Operating Systems Peter Reiher

Network Security CHAPTER 31. Solutions to Review Questions and Exercises. Review Questions

Trusted Intermediaries

AIT 682: Network and Systems Security

1 Identification protocols

Cryptographic Checksums

User Authentication. Modified By: Dr. Ramzi Saifan

CSE 127: Computer Security Cryptography. Kirill Levchenko

Key Management. Digital signatures: classical and public key Classic and Public Key exchange. Handwritten Signature

CS 161 Computer Security

L7: Key Distributions. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

CS 425 / ECE 428 Distributed Systems Fall 2017

ECE596C: Handout #9. Authentication Using Shared Secrets. Electrical and Computer Engineering, University of Arizona, Loukas Lazos

Authentication in real world: Kerberos, SSH and SSL. Zheng Ma Apr 19, 2005

Public-key Cryptography: Theory and Practice

Cryptography & Key Exchange Protocols. Faculty of Computer Science & Engineering HCMC University of Technology

Amorphic Encryption. Egger Mielberg

CS530 Authentication

HY-457 Information Systems Security

CSE 3461/5461: Introduction to Computer Networking and Internet Technologies. Network Security. Presentation L

Authentication Handshakes

Cryptography and Network Security. Prof. D. Mukhopadhyay. Department of Computer Science and Engineering. Indian Institute of Technology, Kharagpur

===============================================================================

Overview. Cryptographic key infrastructure Certificates. May 13, 2004 ECS 235 Slide #1. Notation

Lecture 1 Applied Cryptography (Part 1)

CSC 474/574 Information Systems Security

Issues. Separation of. Distributed system security. Security services. Security policies. Security mechanism

Spring 2010: CS419 Computer Security

Distributed Systems. 25. Authentication Paul Krzyzanowski. Rutgers University. Fall 2018

CSCI 667: Concepts of Computer Security. Lecture 9. Prof. Adwait Nadkarni

Operating Systems Design Exam 3 Review: Spring 2011

CS3235 Seventh set of lecture slides

CS November 2018

Activity Guide - Public Key Cryptography

More on Cryptography CS 136 Computer Security Peter Reiher January 19, 2017

Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall 2010

Kerberos. Pehr Söderman Natsak08/DD2495 CSC KTH 2008

UNIT - IV Cryptographic Hash Function 31.1

Cryptography Basics. IT443 Network Security Administration Slides courtesy of Bo Sheng

5. Authentication Contents

10/1/2015. Authentication. Outline. Authentication. Authentication Mechanisms. Authentication Mechanisms. Authentication Mechanisms

Introduction to Cryptography. Ramki Thurimella

Security Handshake Pitfalls

CS 470 Spring Security. Mike Lam, Professor. a.k.a. Why on earth do Alice and Bob need to share so many secrets?!?

Topics. Dramatis Personae Cathy, the Computer, trusted 3 rd party. Cryptographic Protocols

Lecture 1: Course Introduction

CIS 6930/4930 Computer and Network Security. Topic 6.2 Authentication Protocols

CS Computer Networks 1: Authentication

Digital Signatures. Secure Digest Functions

User Authentication. Modified By: Dr. Ramzi Saifan

CPSC 467b: Cryptography and Computer Security

CS 161 Computer Security

Uses of Cryptography

CSC 774 Network Security

Applied Cryptography Protocol Building Blocks

key distribution requirements for public key algorithms asymmetric (or public) key algorithms

9/30/2016. Cryptography Basics. Outline. Encryption/Decryption. Cryptanalysis. Caesar Cipher. Mono-Alphabetic Ciphers

Kerberos and Public-Key Infrastructure. Key Points. Trust model. Goal of Kerberos

Key distribution and certification

13/10/2013. Kerberos. Key distribution and certification. The Kerberos protocol was developed at MIT in the 1980.

Public-Key Infrastructure NETS E2008

Crypto meets Web Security: Certificates and SSL/TLS

Lecture Nov. 21 st 2006 Dan Wendlandt ISP D ISP B ISP C ISP A. Bob. Alice. Denial-of-Service. Password Cracking. Traffic.

Background. Network Security - Certificates, Keys and Signatures - Digital Signatures. Digital Signatures. Dr. John Keeney 3BA33

Session key establishment protocols

Applied Cryptography Basic Protocols

Introduction to Cryptography CS 136 Computer Security Peter Reiher October 9, 2014

CSE 565 Computer Security Fall 2018

CT30A8800 Secured communications

Session key establishment protocols

Elements of Security

Applied Cryptography and Computer Security CSE 664 Spring 2017

CS 470 Spring Security. Mike Lam, Professor. a.k.a. Why on earth do Alice and Bob need to talk so much?!? Content taken from the following:

CS 161 Computer Security

Fall 2010/Lecture 32 1

CS 161 Computer Security. Week of September 11, 2017: Cryptography I

1.264 Lecture 28. Cryptography: Asymmetric keys

Grenzen der Kryptographie

Rethinking Authentication. Steven M. Bellovin

Computer Security. 10. Exam 2 Review. Paul Krzyzanowski. Rutgers University. Spring 2017

CSC/ECE 774 Advanced Network Security

Cryptography (Overview)

Introduction to SSL. Copyright 2005 by Sericon Technology Inc.

Transcription:

Outline Key Management CS 239 Computer Security February 9, 2004 Properties of keys Key management Key servers Certificates Page 1 Page 2 Introduction Properties of Keys It doesn t matter how strong your encryption algorithm is Or how secure your protocol is If the opponents can get hold of your keys, your security is gone Proper use of keys is crucial to security in computing systems Length Randomness Lifetime Page 3 Page 4 Key Length If your cryptographic algorithm is otherwise perfect, its strength depends on key length Since the only attack is a brute force attempt to discover the key The longer the key, the more brute force required Are There Real Costs for Key Length? Clearly, more bits is more secure Why not a whole lot of key bits, then? Much encryption done in hardware More bits in hardware costs more Software encryption slows down as you add more bits, too Public key cryptography costs are highly dependent on key length Page 5 Page 6 1

Key Randomness Brute force attacks assume you chose your key at random If the attacker can get any knowledge about your mechanism of choosing a key, he can substantially reduce brute force costs How good is your random number generator? Generating Random Keys Well, don t use rand() The closer the method chosen approaches true randomness, the better But, generally, don t want to rely on exotic hardware True randomness is not essential Need same statistical properties And non-reproducibility Page 7 Page 8 Cryptographic Methods Start with a random number Use a cryptographic hash on it If the cryptographic hash is a good one, the new number looks pretty random Produce new keys by hashing old ones Depends on strength of hash algorithm Falls apart if any key is ever broken Doesn t have perfect forward secrecy Random Noise Observe an event that is likely to be random Assign bit values to possible outcomes Record or generate them as needed Sources: Physical processes (cosmic rays, etc.) Real world processes (variations in disk drive delay, keystroke delays, etc.) Page 9 Page 10 Don t Go Crazy on Randomness Key Lifetime Make sure it s non-reproducible So attackers can t play it back Make sure there aren t obvious patterns Attacking truly unknown patterns in fairly random numbers is extremely challenging They ll probably mug you, instead If a good key s so hard to find, Why every change it? How long should one keep using a given key? Page 11 Page 12 2

Why Change Keys? Long-lived keys more likely to be compromised The longer a key lives, the more data is exposed if it s compromised The longer a key lives, the more resources opponents can (and will) devote to breaking it The more a key is used, the easier the cryptanalysis on it A secret that cannot be readily changed should be regarded as a vulnerability Practicalities of Key Lifetimes In some cases, changing keys is inconvenient E.g., encryption of data files Keys used for specific communications sessions should be changed often E.g., new key for each phone call Keys used for key distribution can t be changed too often Page 13 Page 14 Destroying Old Keys Never keep a key around longer than necessary Gives opponents more opportunities Destroy keys securely For computers, remember that information may be in multiple places Caches, virtual memory pages, freed file blocks, stack frames, etc. Key Management Choosing long, random keys doesn t do you any good if your clerk is selling them for $10 a pop at the back door Or if you keep a plaintext list of them on a computer on the net whose root password is root Proper key management is crucial Page 15 Page 16 Desirable Properties in a Key Management System Secure Fast Low overhead for users Scaleable Adaptable Encryption algorithms Applications Key lengths Users and Keys Where are a user s keys kept? Permanently on the user s machine? What happens if the machine is cracked? But people can t remember random(ish) keys Hash keys from passwords/passphrases? Keep keys on smart cards? Get them from key servers? Page 17 Page 18 3

Security of Key s The key server is the cracker s holy grail If they break the key server, everything else goes with it What can you do to protect it? Security Measures for Key s Don t run anything else on the machine Use extraordinary care in setting it up and administering it Watch it carefully Use a key server that stores as few keys permanently as possible Use a key server that handles revocation and security problems well Page 19 Page 20 The Model Probably the most widely used and well-known key server Originally developed at MIT As part of Project Athena Uses trusted third parties And symmetric cryptography Provides authentication in key service Clients and servers sit on the network Clients want to interact securely with servers Using a fresh key for each session job is to distribute keys to ensure that security Scalability is a concern Page 21 Page 22 Obtaining a Key Through The client needs to get a key to give to the Scalability server and use himself Most requests for keys for servers go to He obtains the key from a ticket-granting ticket-granting server server There can be lots of them Essentially, a server who hands out keys And issues of trust to talk to other servers Different ticket-granting servers can work But the ticket-granting server needs with different servers and clients authentication of the client So not everyone needs to trust one ticketgranting server Lecture Which is obtained from the server 8 Page 23 What s the Point of the Ticket- Granting? Page 24 4

Players in the Protocol Participants The client The server The Service - someone the server trusts to authenticate the clients The - someone everyone trusts Page 25 Client Page 26 Client Requests a Ticket- Granting Ticket From I need to talk to the Sends Client Ticket- Granting Ticket Client Client Page 27 Page 28 Client Asks TGS for a Ticket TGS Sends Ticket to Client Client Client checks ticket validity Page 29 Page 30 5

Client Requests Service Tickets and Authenticators Client checks ticket Page 31 A ticket is used to pass information to a server securely An authenticator is an additional credential passed along with the ticket Used to pass timestamp information about lifetime of a key Page 32 What s In a Ticket in More Detail: Step 1 T C,S = s, {c,a,v,k C,S }K S s is the server c is the client a is the client s network address v is a timestamp K C,S is a session key K S is the server s key Page 33 Alice, Tracy Client Alice Tracy Sidney Page 34 Sends Client Ticket- Granting Ticket Alice What s in the ticket? {K Alice,Tracy }K Alice, T Alice,Tracy = Tracy, {Alice,xxx.xxx.xxx.xxx,T Now, K Alice,Tracy }K Tracy Tracy Sidney Page 35 So What Has the Client Got? K Alice is derived from her password Which gets a session key allowing her to communicate securely with the TGS K Alice,Tracy And she has a ticket for the TGS Not directly usable by Alice But the TGS (Tracy) can use it to authenticate Alice Page 36 6

Client Asks TGS for a Ticket Alice An authenticator {A Alice,Tracy }K Alice,Tracy Tracy, Tracy Sidney Page 37 What Has the TGS Got? It can decrypt the ticket created by the server Obtaining K Alice,Tracy and other information Authenticating that the transmission went through server And it s got the authenticator Page 38 Why the Authenticator? TGS Sends Ticket to Client We want to avoid involving the server every time a client needs a ticket So the ticket-granting ticket will be used multiple times Authenticator protects against replay attacks involving the multi-use ticket-granting ticket Page 39 Alice What s in the ticket? T{K Alice,Sidney Alice,Sidney }K = Alice,Tracy Sidney, {Alice,xxx.xxx.xxx.xxx,T Now1, K Alice,Sidney }K Sidney Tracy Sidney Page 40 Now What Has the Client Got? Client Requests Service She can decrypt the part of the message containing the new session key So she s ready to communicate She can t decrypt the ticket That s in a key only the server Sidney knows But Sidney can use it Page 41 Alice Alice creates a new authenticator to show freshness {A Alice,Sidney }K Alice,Sidney Tracy Sidney Page 42 7

What Does the Have? He can decrypt the ticket from the TGS Since it s in his key The ticket contains the session key And authentication information He can then decrypt the authenticator Which ensures a session isn t being replayed (by timestamp) Why Is There Both a and a TGS? The TGS handles normal interactions between clients and servers The server bootstraps interactions with the TGS A ticket-granting ticket can be reused with a TGS over some time Compromise of the TGS has limited effects Page 43 Page 44 Why Is There Both a Ticket and An Authenticator? The ticket is reusable It has a timespan Typically 8 hours The authenticator is one-use-only Supposedly And its timestamp must be within the ticket s timespan Potential Weaknesses in Timestamp-based attacks Password-guessing attacks Replacement of software The server is probably well protected But are the clients? Not unique to Page 45 Page 46 Certificates Public Key Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic document proving you are who you claim to be The most common kind of certificate Addresses the biggest challenge in widespread use of public keys Essentially, a copy of your public key signed by a trusted authority Presentation of the certificate alone serves as authentication of your public key Page 47 Page 48 8

Implementation of Public Key Certificates Set up a universally trusted authority Every user presents his public key to the authority The authority returns a certificate Containing the user s public key signed by the authority s private key Checking a Certificate Every user keeps a copy of the authority s public key When a new user wants to talk to you, he gives you his certificate Decrypt the certificate using the authority s public key You now have an authenticated public key for the new user Authority need not be checked on-line Page 49 Page 50 Scaling Issues of Certificates Certification Hierarchies If there are ~600 million Internet users needing certificates, can one authority serve them all? Probably not So you need multiple authorities Does that mean everyone needs to store the public keys of all authorities? Arrange certification authorities hierarchically The single authority at the top produces certificates for the next layer down And so on, recursively Page 51 Page 52 Using Certificates From Hierarchies Extracting the Authentication I get a new certificate I don t know the signing authority But the certificate also contains that authority s certificate Perhaps I know the authority who signed this authority s certificate Using the public key of the higher level authority, extract the public key of the signing authority from the certificate Now I know his public key, and it s authenticated I can now extract the user s key and authenticate it Page 53 Page 54 9

Alice gets a message with a certificate Should Alice believe that he s really? A Example Then she uses to check So she uses to check Alice has never heard of But she has heard of Give me a certificate saying that I m How can prove who he is? Page 55 Certificates and Trust Ultimately, the point of a certificate is to determine if something is trusted Do I trust the request to perform some financial transaction? So, Trustysign.com signed this certificate How much confidence should I have in the certificate? Page 56 Potential Problems in the Certification Process What measures did Trustysign.com use before issuing the certificate? Is the certificate itself still valid? Is Trustysign.com s signature/certificate still valid? Who is trustworthy enough to be at the top of the hierarchy? Trustworthiness of Certificate Authority How did Trustysign.com issue the certificate? Did it get an in-person sworn affidavit from the certificate s owner? Did it phone up the owner to verify it was him? Did it just accept the word of the requestor that he was who he claimed to be? Page 57 Page 58 What Does a Certificate Really Tell Me? That the certificate authority (CA) tied a public/private key pair to identification information Generally doesn t tell me why the CA thought the binding was proper I may have different standards than that CA Page 59 Showing a Problem Using the Example Alice likes how verifies identity But is she equally happy with how verifies identity? Does she even know how verifies identity? What if uses s lax policies to pretend to be? Page 60 10

Another Big Problem Revocation Things change One result of change is that what used to be safe or trusted isn t any more If there is trust-related information out in the network, what will happen when things change? A general problem for keys, certificates, access control lists, etc. How does the system revoke something related to trust? In a network environment Safely, efficiently, etc. Page 61 Page 62 Revisiting Our Example The Web of Trust Model Someone discovers that has obtained a false certificate for How does Alice make sure that she s not accepting s false certificate? Public keys are still passed around signed by others But your trust in others is based on your personal trust of them Not on a formal certification hierarchy I work in the office next to Bob, so I trust Bob s certifications Page 63 Page 64 Certificates in the Web of Trust Limitations on the Web of Trust Any user can sign any other user s public key When a new user presents me his public key, he gives me one or more certificates signed by others If I trust any of those others, I trust the new user s public key The web tends to grow I trust Alice, who trusts Bob, who trusts Carol, who trusts Dave,..., who trusts Lisa, who trusts Mallory Just because Lisa trusts Mallory doesn t mean I should Working system needs concept of degrees of trust Page 65 Page 66 11

Advantages and Disadvantages of Web of Trust Model + Scales very well + No central authority + Very flexible May be hard to assign degrees of trust Revocation may be difficult May be hard to tell who you will and won t trust Page 67 12