Internet Security and Cryptography



Similar documents
Chapter 10. Network Security

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

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

Chapter 8. Cryptography Symmetric-Key Algorithms. Digital Signatures Management of Public Keys Communication Security Authentication Protocols

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

7! Cryptographic Techniques! A Brief Introduction

CS 494/594 Computer and Network Security

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

What is network security?

Chapter 8. Network Security

CRYPTOGRAPHY IN NETWORK SECURITY

IT Networks & Security CERT Luncheon Series: Cryptography

: Network Security. Name of Staff: Anusha Linda Kostka Department : MSc SE/CT/IT

Lecture 9 - Network Security TDTS (ht1)

Cryptography and Network Security

Chapter 7: Network security

Security vulnerabilities in the Internet and possible solutions

APNIC elearning: IPSec Basics. Contact: esec03_v1.0

CSCE 465 Computer & Network Security

SECURITY IN NETWORKS

CPS Computer Security Lecture 9: Introduction to Network Security. Xiaowei Yang

Chapter 8 Network Security. Slides adapted from the book and Tomas Olovsson

Security Protocols HTTPS/ DNSSEC TLS. Internet (IPSEC) Network (802.1x) Application (HTTP,DNS) Transport (TCP/UDP) Transport (TCP/UDP) Internet (IP)

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

Chapter 32 Internet Security

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

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

NETWORK ADMINISTRATION AND SECURITY

Client Server Registration Protocol

Network Security. Abusayeed Saifullah. CS 5600 Computer Networks. These slides are adapted from Kurose and Ross 8-1

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

EXAM questions for the course TTM Information Security May Part 1

Security in Computer Networks

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

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

Implementing and Managing Security for Network Communications

How To Protect Your Data From Attack

Security in IPv6. Basic Security Requirements and Techniques. Confidentiality. Integrity

Final exam review, Fall 2005 FSU (CIS-5357) Network Security

Overview of Cryptographic Tools for Data Security. Murat Kantarcioglu

Securing IP Networks with Implementation of IPv6

Chapter 11 Security Protocols. Network Security Threats Security and Cryptography Network Security Protocols Cryptographic Algorithms

CSE/EE 461 Lecture 23

Security: Focus of Control. Authentication

Lukasz Pater CMMS Administrator and Developer

Public Key Cryptography Overview

Network Security #10. Overview. Encryption Authentication Message integrity Key distribution & Certificates Secure Socket Layer (SSL) IPsec

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

Introduction to Cryptography

INF3510 Information Security University of Oslo Spring Lecture 9 Communication Security. Audun Jøsang

CS 758: Cryptography / Network Security

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

Lecture 9: Application of Cryptography

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

Network Security. Lecture 3

Network Security. Abusayeed Saifullah. CS 5600 Computer Networks. These slides are adapted from Kurose and Ross 8-1

7 Network Security. 7.1 Introduction 7.2 Improving the Security 7.3 Internet Security Framework. 7.5 Absolute Security?

Network Security Part II: Standards

Network Security. Outline of the Tutorial

Dr. Arjan Durresi. Baton Rouge, LA These slides are available at:

Application Layer (1)

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

Key Management (Distribution and Certification) (1)

Public Key (asymmetric) Cryptography

Chapter 7 Transport-Level Security

Cryptography and network security CNET4523

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

Computer Security: Principles and Practice

IP Security. Ola Flygt Växjö University, Sweden

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

Lecture 6 - Cryptography

Network Security. Marcus Bendtsen Institutionen för Datavetenskap (IDA) Avdelningen för Databas- och Informationsteknik (ADIT)

ECE 428 Network Security

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

Chapter 3. Network Domain Security

Institute of Computer Technology - Vienna University of Technology. L96 - SSL, PGP, Kerberos

Introduction to Network Security. 1. Introduction. And People Eager to Take Advantage of the Vulnerabilities

Standards and Products. Computer Security. Kerberos. Kerberos

CS 393 Network Security. Nasir Memon Polytechnic University Module 11 Secure

CS 348: Computer Networks. - Security; 30 th - 31 st Oct Instructor: Sridhar Iyer IIT Bombay

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

Network Security. Abusayeed Saifullah. CS 5600 Computer Networks. These slides are adapted from Kurose and Ross 8-1

IPsec Simplified. Peter J. Welcher. Introduction. Just a Very Wee Bit of Cryptology. First, a couple of personal and company news items:

How To Encrypt Data With Encryption

Network Security Protocols

CS 356 Lecture 27 Internet Security Protocols. Spring 2013

Key Management. CSC 490 Special Topics Computer and Network Security. Dr. Xiao Qin. Auburn University

Kerberos. Public domain image of Heracles and Cerberus. From an Attic bilingual amphora, BC. From Italy (?).

Message authentication and. digital signatures

IPsec Details 1 / 43. IPsec Details

Introduction to Security and PIX Firewall

Network Security Fundamentals

Authentication requirement Authentication function MAC Hash function Security of

APNIC elearning: Network Security Fundamentals. 20 March :30 pm Brisbane Time (GMT+10)

Introduction to Computer Security

Protocol Security Where?

Overview Windows NT 4.0 Security Cryptography SSL CryptoAPI SSPI, Certificate Server, Authenticode Firewall & Proxy Server IIS Security IE Security

Network Security. Security Attacks. Normal flow: Interruption: 孫 宏 民 Phone: 國 立 清 華 大 學 資 訊 工 程 系 資 訊 安 全 實 驗 室

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

Overview. Protocols. VPN and Firewalls

Transcription:

Internet Security and Cryptography John Heffner Carnegie Mellon University 15-441 Computer Networks Spring 2003

Outline Security motivations Private key cryptosystems Encryption, authentication tools Kerberos and keyservers Key exchange Public key cryptosystems IPsec Application level protocols

Impersonation Security Threats Pretend to be some else to gain access to information or services Insecrecy Eavsedrop on data over network Corruption Modify data over network Repudiation Deny sending a message Break-ins Take advantage of implementation bugs Denial of Service Flood resources to deny use from legitimate users

Three Levels of Defense Firewalls filtering dangerous traffic at a middle point in the network Next lecture IPsec network layer security Host-to-host encryption and authentication Can provide security without application knowledge Cannot always protect applications from each other Application level security True end-to-end security Requires extra effort per application Libraries help, e.g. SSL

Private Key Cryptosystems Finite message domain M Key k K Known by all parties Must be secret Encrypt: E:M K M Plaintext m p to ciphertext m c as m c = E(m p, k) Decrypt: D:M K M m p = D(m c, k) = D(E(m p, k), k) Cryptographic security Given m c, hard to determine m p or k Given m c and m k, hard to determine k

Messages n-bit strings [b 1,, b n ] One Time Pad Keys Random n-bit strings [k 1,, k n ] Encryption/Decryption E(b, k) = b k = [b 1 k 1,, b n k n ] denotes exclusive or D(b, k) = b k Properties Provably unbreakable if used properly Keys must be truly random Cannot be used more than once Key same size as message

Simple Permutation Cipher Messages n-bit strings [b 1,, b n ] Keys Permutation of n Let = -1 Encryption/Decryption E([b 1,, b n ], ) = [b (1),, b (n) ] D([b 1,, b n ], ) = [b (1),, b (n) ] Properties Cryptanalysis possible Only small part of plaintext and key used for each part of ciphertext

Data Encryption Standard (DES) History Developed by IBM, 1975 Modified slightly by NSA U.S. Government (NIST) standard, 1977 Algorithm Uses 64-bit key, really 56 bits plus 8 parity bits 16 rounds 56-bit key used to generate 16 48-bit keys Each round does substitution and permutation Strength Difficult to analyse Cryptanalysis believed exponentially difficult in numer of rounds No currently known attacks easier than brute force But brute force is now (relatively) easy!

Other Ciphers Triple-DES DES three times m c = E(D(E(m p, k 1 ), k 2 ), k 3 ) Effectively 112 bits Pretty slow Blowfish Developed by Bruce Schneier circa 1993 Variable key size from 32 to 448 bits Very fast on large general purpose CPUs (modern PCs) Not easy to implement in small hardware Advanced Encryption Standard (AES) Selected by NIST as replacement for DES Uses the Rijndael algorithm Keys of 128, 192, or 256 bits

Private Key Authentication Alice wants to talk to Bob Needs to convince him of her identity Both have private key k Naieve Scheme Alice I am Alice, x, E(x) Bob Vulnerability?

Replay Attack Eve can listen in and impersonate Alice later Alice I am Alice, x, E(x) Bob Eve I am Alice, x, E(x)

Preventing Replay Attacks Bob can issue a challenge phrase to Alice I am Alice Alice x E(x) Bob

Key Distribution Have network with n entities Add one more Must generate n new keys Each other entity must securely get its new key Big headache! One solution: use a central keyserver Needs n secret keys Generates other keys as needed Downsides Only scales to single organization level Single point of failure

Trivia Kerberos Developed in the 1980's at MIT as part of Project Athena Every time you log in to an Andrew machine, you use Kreberos Named for the mythic three-headed dog guarding the entrance to Hades Uses DES Key Distribution Center (KDC) Central keyserver for a Kerberos domain Authentication Service (AS) Stores database of all master keys for the domain Users' masters key are derived from their passwords Generates ticket-granting-tickets (TGTs) Ticket Granting Service (TGS) Generates tickets for communication between principals Can have slaves (read-only mirrors) for added reliability

Kerberos Tickets (1) What is a ticket? Owner A key for pair of principles A lifetime (usually ~1 day) of the key Clocks in a kerberos domain must be roughly synchrononized Contains all state KDC stateless Ticket-granting-ticket (TGT) Obtained at beginning of session Encrypted with private KDC key A needs TGT A E({S A, TGT A }, k A ) KDC 1. Invent S A (session key) 2. TGT A = E({A, S A, lifetime}, k KDC )

Kerberos Tickets (2) A wants to talk to B First, get ticket from KDC A, B, TGT A A E({B, k AB, T AB }, S A ) KDC Invent k AB T AB = E({A, k AB, lifetime}, k B ) Then, use the ticket T AB, E(time, k AB ) A E(time+1, k AB ) B

Using Kerberos kinit klist Get your TGT Creates file, usually stored in /tmp View your current Kerberos tickets kdestroy End session, destroy all tickets kpasswd Changes your master key stored by the AS Kerberized applications kftp, ktelnet, krsh, zephyr, etc afslog use Kerberos tickets to get AFS token

Diffie-Hellman Key Agreement History Developed by Whitfield Diffie, Martin Hellman Published in 1976 paper New Directions in Cryptography Allows negotiation of secret key over insecure network Algorithm Public parameters Prime p Generator g < p with property n: 1np-1, k: n = g k mod p Alice chooses random secret a, sends Bob g a Bob chooses random secret b, sends Alice g b Alice computes (g b ) a, Bob computes (g a ) b this is the key Difficult for eavesdropper Eve to compute g ab.

Diffie-Hellman Weakness Man-in-the-Middle attack Assume Eve can intercept and modify packets Eve sends Alice and Bob g c Now Alice uses g ac, Bob uses g bc, Eve knows both Defense requires mutual authentication Back to key distribution problem!

Public Key Cryptosystems Keys P, S P: public, freely distributed S: secret, known only to one entity Functions Public P:M M Computed by anyone Private S:M M Only computed by key owner Properties x = P(S(x)) x = S(P(x)) Given x, hard to determine S(x) Given P(x), hard to determine x

Using Public Key Systems Encryption Bob sends to Alice Bob generates and sends m c = P A (m p ) Only Alice is able to decrypt: m p = S A (m c ) Authentication Alice proves her identity Bob generates and sends challenge x Alice responds: s = S A (x) Bob checks: P A (s) = x Weakness key distribution (again) If Bob gets an unauthentic P A, can be easily attacked

RSA Rivest, Shavir, Adleman, 1977 Message domain Keys For large primes p, q, n = pq p and q are actually strong pseudo-primes generated using the Miller- Rabin primality testing algorithm Messages computed over Z n Public key {e, n} e relatively prime to (p-1)(q-1) P(x) = x e mod n Private key {d, n} d = e -1 mod (p-1)(q-1) S(x) = x d mod n Strength Finding d given e and n equivalent to finding p and q (factoring n)

Cryptographic Hash Functions Given arbitrary length m, compute constant length digest d = h(m) Desirable proberties h(m) easy to compute given m One-way: given h(m), hard to find m Weakly collision free: given h(m) and m, hard to find m' s.t. h(m) = h(m') Stronly collision free: Hard to find any x, y s.t. h(x) = h(y) Example use: password database Common algorithms: md5, SHA-1 m h d

Digital Signatures Alice wants to convince others that she wrote message m. Computes digest d with secure hash Signature s = S A (d) Digital Signature Standard (DSS) NIST standard, 1994

Authentication Chains How do you trust an unknown entity? Trust Hierarchies Certificates issued by Certificate Authorities (CAs) Certs signed by only one CA Trees are usually shallow and broad Clients only need a small number of root CAs Roots don't change frequently Can be distributed on CD with an OS Example root CAs VeriSign CMU (for WebISO) Problem Root CAs have a lot of power Not always very responsive to problems PSC PSC KCA jheffner@psc.edu X.509 Certificate format standard Used for SHTTP, S/MIME, others Global namespace: Distinguished Names (DN) Not very tightly specified usually includes an email address or domain name

Webs of Trust Anyone can generate keys Anyone can sign others' keys Trust relationships form a digraph Users decide how much they trust the signatures

Pretty Good Privacy (PGP) History Written in early 1990s by Phil Zimmermann Primary motivation is email security Controversial for a while because it was too strong Distributed from Europe Now the OpenPGP protocol is an IETF standard (RFC 2440) Many implementations, including the GNU Privacy Guard (gpg) Uses Message integrity and source authentication Makes message digest, singns with public key cryptosystem Webs of trust Message body encryption Private key encryption for speed Public key to encrypt the message's private key

Comparitive Performance According to Peterson and Davie MD5: 600 Mbps DES: 100 Mbps RSA: 0.1 Mbps

Secure Shell (SSH) Negotiates use of many different algorithms Encryption Session is encrypted using symmetric cipher Keys are exchanged with Diffie-Hellman Server-to-client authentication Protects against man-in-the-middle Uses public key cryptosystems Keys distributed informally kept in.ssh/known_keys Signatures not used for trust relations Client-to-server authentication Can use many different methods Password hash Public key Kerberos tickets

IPsec Protection at the network layer Applications do not have to be modified to get security Actually a suite of protocols IP Authentication Header (AH) Uses secure hash and symmetric key to authenticate datagram payload IP Encapsulating Security Payload (ESP) Encrypts datagram payload with symmetric key Internet Key Exchange (IKE) Does authentication and negotiates private keys

Security Assosciations Defines security for a simplex connection Matches data sent from IP address A to IP address B Uses a Security Parameter Index (SPI) as an identifier Specifies encryption algorithms Contains private keys for each algorithm Security Policy Database (SPD) Specifies policies for traffic (discard, use IPsec, don't use IPsec) Security Association Database (SAD) Contains all SAs currently used by the node Can be managed by hand or with IKE

AH Authentication Header Authenticates message contents Transport mode Hashes and signs IP paylaod (TCP segment or UDP datagram) AH goes between IP and TCP/UDP header Tunnel mode Hashes and signs entire IP packet Creates new IP header AH between original and new IP headers

ESP Encapsulated Security Payload Encrypts payload Authentication trailer optional Has transport and tunnel modes as well

IKE SAs are by IP address. What if your address changes? Traveller with laptop wants to join a company's VPN IKE can authenticate endpoints and automatically set up security associations Can use public key infrastructure (X.509) to authenticate endpoint identity Can also use pre-shared private keys