Computer Science Public Key Management Lecture 5.

Slides:



Advertisements
Similar presentations
Key Management Nick Feamster CS 6262 Spring 2009.
Advertisements

Internet and Intranet Protocols and Applications Lecture 9a: Secure Sockets Layer (SSL) March, 2004 Arthur Goldberg Computer Science Department New York.
Mar 12, 2002Mårten Trolin1 This lecture Diffie-Hellman key agreement Authentication Certificates Certificate Authorities SSL/TLS.
Lecture 12 Overview.
Public Key Algorithms …….. RAIT M. Chatterjee.
EEC 693/793 Special Topics in Electrical Engineering Secure and Dependable Computing Lecture 6 Wenbing Zhao Department of Electrical and Computer Engineering.
Cryptography1 CPSC 3730 Cryptography Chapter 10 Key Management.
1 Key Establishment Symmetric key problem: How do two entities establish shared secret key in the first place? Solutions: Deffie-Hellman trusted key distribution.
Mar 4, 2003Mårten Trolin1 This lecture Diffie-Hellman key agreement Authentication Certificates Certificate Authorities.
Key Management public-key encryption helps address key distribution problems have two aspects of this: –distribution of public keys –use of public-key.
8-1 What is network security? Confidentiality: only sender, intended receiver should “understand” message contents m sender encrypts message m receiver.
Symmetric Key Distribution Protocol with Hybrid Crypto Systems Tony Nguyen.
1 Key Establishment Symmetric key problem: How do two entities establish shared secret key over network? Solution: trusted key distribution center (KDC)
Cryptography and Network Security Chapter 10 Fourth Edition by William Stallings.
Chapter3 Public-Key Cryptography and Message Authentication.
Topic 11: Key Distribution and Agreement 1 Information Security CS 526 Topic 11: Key Distribution & Agreement, Secure Communication.
1 Pertemuan 08 Public Key Cryptography Matakuliah: H0242 / Keamanan Jaringan Tahun: 2006 Versi: 1.
Network Security – Part 2 V.T. Raja, Ph.D., Oregon State University.
Cryptography and Network Security Chapter 10. Chapter 10 – Key Management; Other Public Key Cryptosystems No Singhalese, whether man or woman, would venture.
Security Management.
Diffie-Hellman Key Exchange
Introduction to Public Key Cryptography
Chapter 31 Network Security
Public Key Cryptography July Topics  Symmetric and Asymmetric Cryptography  Public Key Cryptography  Digital Signatures  Digital Certificates.
Page 1 Secure Communication Paul Krzyzanowski Distributed Systems Except as otherwise noted, the content of this presentation.
Chapter 5 Digital Signatures MSc. NGUYEN CAO DAT Dr. TRAN VAN HOAI 1.
Lecture 19 Page 1 CS 111 Online Symmetric Cryptosystems C = E(K,P) P = D(K,C) E() and D() are not necessarily the same operations.
Cryptography and Network Security Chapter 14 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
Key Management and Diffie- Hellman Dr. Monther Aldwairi New York Institute of Technology- Amman Campus 12/3/2009 INCS 741: Cryptography 12/3/20091Dr. Monther.
Applied Cryptography (Public Key) RSA. Public Key Cryptography Every Egyptian received two names, which were known respectively as the true name and the.
Introduction1-1 Data Communications and Computer Networks Chapter 6 CS 3830 Lecture 31 Omar Meqdadi Department of Computer Science and Software Engineering.
Cryptography and Network Security (CS435) Part Eight (Key Management)
23-1 Last time □ P2P □ Security ♦ Intro ♦ Principles of cryptography.
Computer and Network Security Rabie A. Ramadan Lecture 6.
Network Security7-1 CIS3360: Chapter 8: Cryptography Application of Public Cryptography Cliff Zou Spring 2012 TexPoint fonts used in EMF. Read the TexPoint.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
Fall 2010/Lecture 321 CS 426 (Fall 2010) Key Distribution & Agreement.
PUBLIC-KEY CRYPTOGRAPH IT 352 : Lecture 2- part3 Najwa AlGhamdi, MSc – 2012 /1433.
Chapter 3 (B) – Key Management; Other Public Key Cryptosystems.
Advanced Database Course (ESED5204) Eng. Hanan Alyazji University of Palestine Software Engineering Department.
Cryptography and Network Security Chapter 10
Cryptography and Network Security Key Management and Other Public Key Cryptosystems.
Scott CH Huang COM 5336 Lecture 7 Other Public-Key Cryptosystems Scott CH Huang COM 5336 Cryptography Lecture 7.
31.1 Chapter 31 Network Security Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Topic 14: Secure Communication1 Information Security CS 526 Topic 14: Key Distribution & Agreement, Secure Communication.
ECE509 Cyber Security : Concept, Theory, and Practice Key Management Spring 2014.
1 Chapter 10: Key Management in Public key cryptosystems Fourth Edition by William Stallings Lecture slides by Lawrie Brown (Modified by Prof. M. Singhal,
Fall, Privacy&Security - Virginia Tech – Computer Science Click to edit Master title style Cryptographic Security Identity-Based Encryption.
Computer and Network Security - Message Digests, Kerberos, PKI –
Using Public Key Cryptography Key management and public key infrastructures.
Protocol Analysis. CSCE Farkas 2 Cryptographic Protocols Two or more parties Communication over insecure network Cryptography used to achieve goal.
Digital Signatures and Digital Certificates Monil Adhikari.
Key Management Network Systems Security Mort Anvari.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
Lecture 11 Overview. Digital Signature Properties CS 450/650 Lecture 11: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
Lecture 9 Overview. Digital Signature Properties CS 450/650 Lecture 9: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
Cryptography and Network Security Chapter 10 Fourth Edition by William Stallings Lecture slides by Lawrie Brown.
Fall 2006CS 395: Computer Security1 Key Management.
1 Chapter 3-3 Key Distribution. 2 Key Management public-key encryption helps address key distribution problems have two aspects of this: –distribution.
Diffie-Hellman Key Exchange first public-key type scheme proposed by Diffie & Hellman in 1976 along with the exposition of public key concepts – note:
Key Management public-key encryption helps address key distribution problems have two aspects of this: – distribution of public keys – use of public-key.
Information Security Lab. Dept. of Computer Engineering 251/ 278 PART II Asymmetric Ciphers Key Management; Other CHAPTER 10 Key Management; Other Public.
Public Key Infrastructure
Chapter 10: Key Management (Again) and other Public Key Systems
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
Key Management Network Systems Security
Basic Network Encryption
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
Presentation transcript:

Computer Science Public Key Management Lecture 5

Computer Science Outline Key management with asymmetric encryption Diffie-Hellman key exchange

Computer Science Key Management (public) public-key encryption helps address key distribution problems have two aspects of this: –distribution of public keys –use of public-key encryption to distribute secret keys

Computer Science Distribution of Public Keys can be considered as using one of: –Public announcement –Publicly available directory –Public-key authority –Public-key certificates

Computer Science Public Announcement users distribute public keys to recipients or broadcast to community at large –(e.g. post to a newsgroup) major weakness is forgery Weakness: anyone can create a key claiming to be someone else and broadcast it (impersonation attack)

Computer Science Publicly available directory Publicly available directory: Achieve greater security by registering keys with a public directory Weakness: directory must be trusted and still vulnerable to forgery –Public-key certificates (next slide) –Public-key authority (a few slides later)

Computer Science Digital Certificate To encrypt using a receiver’s public key, the sender needs to be assured that the public key used corresponds to the private key of the receiver. To verify a signature, a verifier needs to be assured that the public key used corresponds to the private key of the signer. The electronic document that attests to the ownership of a public key is called a certificate. How it works: –There is an entity called Certification Authority (CA) –Everyone trusts the certificates issued by the CA –CA has a public key which is publicly known e.g. built in all the web browsers –CA issues a certificate by generating a signature on the public key and the identity of its owner. Only the CA can create a certificate Anyone can determine the user ID of a certificate owner Anyone can verify the authenticity of the certificate (using CA’s public key) Anyone can verify the validity (e.g. expiry date) of a certificate Cert A =

Computer Science Public-Key Certificates Certificates allow key exchange without real-time access to public-key authority a certificate binds the identity (of the public key pair owner) to a public key –usually with other info such as period of validity, rights of use etc with all contents signed by a trusted Public-Key or Certificate Authority (CA) can be verified by anyone who knows CA’s public key E.g. Cert Alice = So each user only needs to maintain a valid CA’s public key

Computer Science Certification Authorities Certification authority (CA): binds public key to particular entity, E. E (person, router) registers its public key with CA. –E provides “proof of identity” to CA. –CA creates certificate binding E to its public key. –certificate containing E’s public key digitally signed by CA – CA says “this is E’s public key” Bob’s public key PK B Bob’s identifying information digital signature (encrypt) CA private key RK CA PK B certificate for Bob’s public key, signed by CA

Computer Science Certification Authorities When Alice wants Bob’s public key: –gets Bob’s certificate (Bob or elsewhere). –apply CA’s public key to Bob’s certificate, get Bob’s public key Bob’s public key PK B digital signature (decrypt) CA public key PK CA PK B

Computer Science Verify the Public Key of a Web Server The web browser has CA’s public key built in. In practice, there could have several trusted CAs for each web browser New CAs can also be installed by users The legitimacy of the web browser software becomes crucial for ensuring the security of digital certificates A certificate is NO more secure than the security of the web browser download site Exercise: find out the information of three pre-installed CAs in Internet Explorer Web Browser Internet Web Server (PK, SK) Cert =

Computer Science Pre-installed CAs Public Key: (RSA 1024-bit) cc 5e d1 11 5d 5c 69 d0 ab d3 b9 6a 4c 99 1f e d 47 3f d e1 6d b3 f8 a4 ed 0c f1 17 0f 3b f9 a7 f9 25 d7 c1 cf f2 7c 63 cf a2 47 f2 c6 5b 33 8e c1 80 b9 64 1c c7 d8 6e f c 50 e8 34 d7 78 1f a8 ba 6d f e 7e c5 fb ca a4 04 eb ea f bb cd dc 57 9b f8 9b 1d 1c 89 4f 5c

Computer Science A Certificate e.g. User Name: login.yahoo.com Certificate Version: V3 Validity Period: Jan 28, 05 – Jan 29, 06 Serial No: 4b5c94d17508e d777e4d7dc4 User’s Public Key: RSA (1024 bits) be 33 b1 6b a6 f4 15 e9 54 d3 06 a4 c4 55 f2 ae db 4d 38 b2 ce 83 f9 06 cd ad a7 f6 d aa 0c f4 85 e1 b9 3a b1 30 b4 56 c3 e4 ae 5a 3a 98 8e f5 be 72 5d 38 c1 a b 28 7c f1 f4 a5 5b d ae 26 3e 41 7a c1 b8 54 a9 4c 4e 69 6c a5 12 f7 bc e c2 8f 83 f2 ac 39 b3 04 7a d7 c8 ac 78 eb c7 ce 9c a ed 76 b9 6f 68 ef fc 80 6f Other attributes: e.g. signing algorithm: sha1RSA CA’s name: Secure Server Certification Authority, RSA Data Security, Inc. CA’s signature: 1024-bit data Cert A =

Computer Science Public-Key Certificates Certificate Authority AliceBob ID Alice, PK Alice ID Bob, PK Bob Cert Alice Cert Alice = Cert Bob Cert Alice

Computer Science Distribution of Secret Keys using Public Key

Computer Science Distribution of Secret Keys using Public Key public-key cryptography can be used for secrecy or authentication –but public-key algorithms are slow We want to use symmetric key encryption algorithm encrypt bulk message –Because symmetric key encryption algorithms are hundreds of times faster than public key encryption algorithms So two communicating parties usually 1.negotiate a symmetric key (called session key) with the help of public key algorithms 2.Then use the session key to encrypt messages 3.For each new session (e.g. login your online banking service again after closing the web browser), a new session key will be established

Computer Science Public-Key Distribution of Secret Keys Alice Bob Cert Alice Cert Bob … session key negotiation Public key encrypted … Message flows Session key encrypted

Computer Science Diffie-Hellman Key Exchange A Key Exchange Protocol: –provide a secure way for two communicating parties to share a symmetric key (so called a session key) –This session key is then used to provide privacy and authentication for subsequent message flow. –History: problem first posed by Merkle at UC Berkeley, Diffie and Hellman came up with the protocol: Alice Bob a  R Z p-1 g a mod p g b mod p b  R Z p-1 Shared Session Key = g ab mod p More details next…

Computer Science Diffie-Hellman Key Exchange Setup Alice and Bob agree on global parameters: –Large prime integer p (e.g bits long) –g a primitive root / generator of Z p * (i.e. the multiplicative group modulo p) Alice –chooses a random positive integer: a < p –computes y A = g a mod p Bob does the same and generates y B = g b mod p

Computer Science Diffie-Hellman Key Exchange Shared session key for Alice and Bob is K AB : K AB = g a b mod p = y A b mod p(which Bob can compute) = y B a mod p(which Alice can compute) K AB will then be used as a session key in symmetric key algorithms between Alice and Bob Attacker needs to find K AB from y A and y B –A difficult problem

Computer Science Diffie-Hellman Key Exchange Example Alice and Bob want to carry out DH Key Exchange: 1.Agree on prime p=353 and g=3 2.Select random secret keys: –A chooses a = 97 –B chooses b = Compute session key contributions –y A = 3 97 mod 353 = 40 (Alice) –y B = mod 353 = 248 (Bob) 4.Compute shared session key as: K AB = y B a mod 353 = mod 353 = 160 (Alice) K AB = y A b mod 353 = mod 353 = 160 (Bob)