CUNSHENG DING HKUST, Hong Kong. Computer Security. Computer Security. Cunsheng DING, HKUST COMP4631



Similar documents
Public Key Cryptography. c Eli Biham - March 30, Public Key Cryptography

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

Overview of Cryptographic Tools for Data Security. Murat Kantarcioglu

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

Practice Questions. CS161 Computer Security, Fall 2008

Outline. Computer Science 418. Digital Signatures: Observations. Digital Signatures: Definition. Definition 1 (Digital signature) Digital Signatures

Notes on Network Security Prof. Hemant K. Soni

Cryptography and Network Security

SFWR ENG 4C03 - Computer Networks & Computer Security

CS 758: Cryptography / Network Security

Cryptography and Security

SECURITY IMPROVMENTS TO THE DIFFIE-HELLMAN SCHEMES

Cryptographic hash functions and MACs Solved Exercises for Cryptographic Hash Functions and MACs

CIS 5371 Cryptography. 8. Encryption --

Computer Security: Principles and Practice

Lecture slides by Lawrie Brown for Cryptography and Network Security, 5/e, by William Stallings, Chapter 14 Key Management and Distribution.

CPSC 467b: Cryptography and Computer Security

Authentication Types. Password-based Authentication. Off-Line Password Guessing

Cryptography and Network Security Chapter 10

Authentication requirement Authentication function MAC Hash function Security of

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

Final Exam. IT 4823 Information Security Administration. Rescheduling Final Exams. Kerberos. Idea. Ticket

2.4: Authentication Authentication types Authentication schemes: RSA, Lamport s Hash Mutual Authentication Session Keys Trusted Intermediaries

Elements of Applied Cryptography. Key Distribution. Trusted third party: KDC, KTC Diffie-Helmann protocol The man-in-the-middle attack

Cryptography and Network Security

Advanced Cryptography

Lecture Note 5 PUBLIC-KEY CRYPTOGRAPHY. Sourav Mukhopadhyay

Secure Network Communication Part II II Public Key Cryptography. Public Key Cryptography

Part I. Universität Klagenfurt - IWAS Multimedia Kommunikation (VK) M. Euchner; Mai Siemens AG 2001, ICN M NT

Computer Networks. Network Security and Ethics. Week 14. College of Information Science and Engineering Ritsumeikan University

Communication Security for Applications

IPSEC: IKE. Markus Hidell Based on material by Vitaly Shmatikov, Univ. of Texas, and by the previous course teachers

Overview of Public-Key Cryptography

Elements of Applied Cryptography Public key encryption

A Factoring and Discrete Logarithm based Cryptosystem

Public Key Cryptography Overview

The Mathematics of the RSA Public-Key Cryptosystem

Chapter 9 Key Management 9.1 Distribution of Public Keys Public Announcement of Public Keys Publicly Available Directory

Lecture 9 - Message Authentication Codes

Security and Authentication Primer

Public Key Cryptography in Practice. c Eli Biham - May 3, Public Key Cryptography in Practice (13)

Cryptography and Network Security Chapter 9

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

Name: 1. CSE331: Introduction to Networks and Security Fall 2003 Dec. 12, /14 2 /16 3 /16 4 /10 5 /14 6 /5 7 /5 8 /20 9 /35.

CSCE 465 Computer & Network Security

CRYPTOGRAPHY IN NETWORK SECURITY

Principles of Public Key Cryptography. Applications of Public Key Cryptography. Security in Public Key Algorithms

Network Security CS 5490/6490 Fall 2015 Lecture Notes 8/26/2015

Network Security. Chapter 6 Random Number Generation

Message authentication and. digital signatures

IT Networks & Security CERT Luncheon Series: Cryptography

Cryptography and Network Security

Lecture 1: Introduction. CS 6903: Modern Cryptography Spring Nitesh Saxena Polytechnic University

CS 392/681 - Computer Security

How To Understand And Understand The Ssl Protocol ( And Its Security Features (Protocol)

Lecture 9: Application of Cryptography

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

CSC474/574 - Information Systems Security: Homework1 Solutions Sketch

Chapter 14. Key management and Distribution. Symmetric Key Distribution Using Symmetric Encryption

Efficient Nonce-based Authentication Scheme for. session initiation protocol

Chapter 3. Network Domain Security

Public Key (asymmetric) Cryptography

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

1 Digital Signatures. 1.1 The RSA Function: The eth Power Map on Z n. Crypto: Primitives and Protocols Lecture 6.

Chapter 16: Authentication in Distributed System

Ky Vu DeVry University, Atlanta Georgia College of Arts & Science

Software Tool for Implementing RSA Algorithm

EXAM questions for the course TTM Information Security May Part 1

Cryptographic mechanisms

Network Security. Chapter 6 Random Number Generation. Prof. Dr.-Ing. Georg Carle

Authentication Application

Capture Resilient ElGamal Signature Protocols

NEW DIGITAL SIGNATURE PROTOCOL BASED ON ELLIPTIC CURVES

Secure File Transfer Using USB

Computer Networks. Network Security 1. Professor Richard Harris School of Engineering and Advanced Technology

Client Server Registration Protocol

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

Fundamentals of Computer Security

An Overview of Common Adversary Models

Chapter 4. Authentication Applications. COSC 490 Network Security Annie Lu 1

A SOFTWARE COMPARISON OF RSA AND ECC

Table of Contents. Bibliografische Informationen digitalisiert durch

The Secure Sockets Layer (SSL)

Message Authentication Code

Key Management and Distribution

ICT USER ACCOUNT MANAGEMENT POLICY

Security Analysis of PLAID

VoteID 2011 Internet Voting System with Cast as Intended Verification

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

Overview of SSL. Outline. CSC/ECE 574 Computer and Network Security. Reminder: What Layer? Protocols. SSL Architecture

Introduction to Cryptography CS 355

Transitions: Recommendation for Transitioning the Use of Cryptographic Algorithms and Key Lengths

Principles of Network Security

Efficient nonce-based authentication scheme for Session Initiation Protocol

Systematization of Knowledge Lessons Learned From SSL/TLS Attacks

Lecture 13 - Basic Number Theory.

Transcription:

Cunsheng DING, HKUST

Lecture 08: Key Management for One-key Ciphers Topics of this Lecture 1. The generation and distribution of secret keys. 2. A key distribution protocol with a key distribution center. 3. The Diffie-Hellman key exchange protocol. Page 1

Secret Key Generation Question: How to generate a secret key for a one-key cipher? Answer: It depends on the specific cryptosystem. Case I: The secret key k is a binary string k 1 k 2 k n, where k i are independent of each other. Solution 1: If n is not long, say 128, flipping a coin n times. Solution 2: Use a pseudorandom number generator. Case II: Key bits must satisfy certain relations. In this case, no general approach exits. It differs from system to system. Page 2

Key Distribution: Necessity For conventional encryption, the two parties must share the same key. The key must be protected from access by others. The key should be changed regularly (an adversary or enemy may learn the key in some way). Key distribution: delivering a key to both parties, without allowing others to see the key. Key agreement: agreeing on a key by parties involved, without allowing others to see the key. Page 3

Key Distribution: some General Approaches A selects a key, and physically delivers it to B. A third party can select the key and and physically deliver it to both A and B. If A and B have previously and recently used a key, one party can transmit the new key to the other, encrypted using the old key. If A and B each has an encrypted connection to a third party C, C can deliver a key on the encrypted links to A and B. Page 4

Key Distribution: more General Approaches Secret key distribution using a public key cipher. (It will be introduced later.) Other key distribution protocols. Remark: As an example of protocols for key distribution, we introduce a key distribution protocol using a key distribution center. Page 5

A Key Distribution Protocol Parties involved: A key distribution center (KDC), a group of people to communicate with each other. Requirements: Whenever A wants to communicate with B, the KDC should generate a temporary key (called session key) and distribute it to A and B. Both confidentiality and authenticity must be achieved. Remark: The session key (temporary key) is established only for this communications between A and B. Page 6

A Key Distribution Protocol Continued Building blocks needed: The KDC and all parties involved in this communication system use a one-key block cipher. The KDC and each party A share a secret key k a, which is called a master key. Remark: The master keys are used to protect the sessions keys when they are distributed. Page 7

A Key Distribution Protocol Continued Pictorial description of use of the key hierarchy: master keys non-cryptographic protection session keys cryptographic protection data cryptographic protection Page 8

A Key Distribution Protocol (1) request N 1 key distribution center (KDC) (2) E ka [k request N 1 E kb (k ID A )] Initiator A (3) E kb [k ID A ] (4) E k [N 2 ID B ] Responder B (5) E k [N 2 ] Page 9

Parameters in the Key Distribution Protocol N i is a nonce, used as identifier for that transaction. k a, k b master keys, k secret key. Question: Which steps are for authentication? Question: Does it provide mutual authentication or authentication in one direction? Page 10

Explaining the Key Distribution Protocol (1) The nonce may be a timestamp, a counter, or a random number. The minimum requirement is that it differs with each request. Also it should be hard for an opponent to guess it. So random number is a good choice. When A receives (2), A can verify that its original request was not altered before reception by the KDC. Because of the nonce, that is not a reply of some previous request. The message (2) also includes two items intended for B: the one-time session key k, and an identifier of A (i.e., its network address), ID A. Page 11

Explaining the Key Distribution Protocol (2) After Step (3), a session key has been securely delivered to A and B. They may begin their protected exchange. Steps (4) and (5) assure B that the original message received in Step (3) was not a replay of an earlier one by a third person. Question: Why? Steps (4), (5) and (3) are for authentication. Page 12

Discrete logarithms Primitive roots: Let p be a prime. An integer α is called a primitive root of p if each nonzero element a F p can be uniquely expressed as a = α i mod p for some integer i, where 0 i p 2. Discrete logarithm: The exponent i is referred to as the discrete logarithm, or index, of a for the base α, and is denoted log α a or ind α (a). Discrete logarithm problem: Given p, α, and a, find log α a. This is in general very hard. Brute force solution: compute b = α i mod p for all i, 0 i p 2 and check if b = a. Page 13

Primitive roots Example: 2 is a primitive root of the prime 11. Also we have log 2 (6) = 9. i 0 1 2 3 4 5 6 7 8 9 2 i mod 11 1 2 4 8 5 10 9 7 3 6 Theorem: Every prime p has at least one primitive root. Page 14

To find primitive roots Rule of tumb: Most primes p have a small primitive root. For example, for the primes less than 100000, approximately 37.5% have 2 as a primitive root, and approximately 87.4% have a primitive root of value 7 or less. For primes of reasonable size, many programming languages for mathematics have commands for finding primitive roots. Page 15

Diffie-Hellman Key Exchange Protocol User A User B Generate random X A < p calculate Y A = α X A mod p Y A Generate random X B < p Calculate Y B = α X B mod p Calculate k = (Y B ) X A mod p Y B Calculate k = (Y A ) X B mod p Page 16

Diffie-Hellman Key Exchange Protocol It is for two users to exchange a key securely that can then be used for subsequent encryption of message. k = α X AX B mod p. Also p and α are publicly known. But X A and X B must be kept secret. The security with respect to passive attacks is based on the belief that solving the discrete logarithm problem is hard in general. It is vulnerable to an active attack if an adversary has control over the communication cannel. Page 17