CSE 486/586 CSE 486/586 Distributed Systems Security --- 1 Steve Ko Computer Sciences and Engineering University at Buffalo.

Slides:



Advertisements
Similar presentations
Sri Lanka Institute of Information Technology
Advertisements

Digital Signatures Good properties of hand-written signatures: 1. Signature is authentic. 2. Signature is unforgeable. 3. Signature is not reusable (it.
CS 6262 Spring 02 - Lecture #7 (Tuesday, 1/29/2002) Introduction to Cryptography.
Digital Signatures and Hash Functions. Digital Signatures.
1 Introduction CSE 5351: Introduction to cryptography Reading assignment: Chapter 1 of Katz & Lindell.
1 Counter-measures Threat Monitoring Cryptography as a security tool Encryption Digital Signature Key distribution.
1 Cryptography and Network Security Third Edition by William Stallings Lecturer: Dr. Saleem Al_Zoubi.
Public Key Algorithms …….. RAIT M. Chatterjee.
Dr. Lo’ai Tawalbeh Summer 2007 Chapter 9 – Public Key Cryptography and RSA Dr. Lo’ai Tawalbeh New York Institute of Technology (NYIT) Jordan’s Campus INCS.
First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown and edited by Archana Chidanandan Cryptographic Tools.
Network and Communication Security Section COS 461: Computer Networks Spring 2011 Mike Freedman
Kemal AkkayaWireless & Network Security 1 Department of Computer Science Southern Illinois University Carbondale CS 591 – Wireless & Network Security Lecture.
Secure Hashing and DSS Sultan Almuhammadi ICS 454 Principles of Cryptography.
Cryptography1 CPSC 3730 Cryptography Chapter 9 Public Key Cryptography and RSA.
Private-Key Cryptography traditional private/secret/single key cryptography uses one key shared by both sender and receiver if this key is disclosed communications.
Fall 2010/Lecture 311 CS 426 (Fall 2010) Public Key Encryption and Digital Signatures.
Dr.Saleem Al_Zoubi1 Cryptography and Network Security Third Edition by William Stallings Public Key Cryptography and RSA.
1 Pertemuan 08 Public Key Cryptography Matakuliah: H0242 / Keamanan Jaringan Tahun: 2006 Versi: 1.
Cryptography1 CPSC 3730 Cryptography Chapter 11, 12 Message Authentication and Hash Functions.
Lecture 4 Cryptographic Tools (cont) modified from slides of Lawrie Brown.
CSE 597E Fall 2001 PennState University1 Digital Signature Schemes Presented By: Munaiza Matin.
1 Message Authentication and Hash Functions Authentication Requirements Authentication Functions Message Authentication Codes Hash Functions Security of.
Network Security Essentials Fifth Edition by William Stallings Fifth Edition by William Stallings.
Introduction to Public Key Cryptography
Cryptography and Network Security Chapter 11 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
CS5204 – Fall Cryptographic Security Presenter: Hamid Al-Hamadi October 13, 2009.
© Neeraj Suri EU-NSF ICT March 2006 DEWSNet Dependable Embedded Wired/Wireless Networks MUET Jamshoro Computer Security: Principles and Practice Slides.
Lecture slides prepared for “Computer Security: Principles and Practice”, 2/e, by William Stallings and Lawrie Brown, Chapter 21 “Public-Key Cryptography.
Cryptography COS 461: Computer Networks Princeton University 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.
Message Authentication  message authentication is concerned with: protecting the integrity of a message protecting the integrity of a message validating.
I-4 security.
Network Security. Security Threats 8Intercept 8Interrupt 8Modification 8Fabrication.
Cryptography, Authentication and Digital Signatures
CS526: Information Security Prof. Sam Wagstaff September 16, 2003 Cryptography Basics.
4 th lecture.  Message to be encrypted: HELLO  Key: XMCKL H E L L O message 7 (H) 4 (E) 11 (L) 11 (L) 14 (O) message + 23 (X) 12 (M) 2 (C) 10 (K) 11.
Basic Cryptography 1. What is cryptography? Cryptography is a mathematical method of protecting information –Cryptography is part of, but not equal to,
Cryptography Wei Wu. Internet Threat Model Client Network Not trusted!!
Cryptography and Network Security (CS435) Part Eight (Key Management)
Public Key Cryptography. symmetric key crypto requires sender, receiver know shared secret key Q: how to agree on key in first place (particularly if.
1 Public-Key Cryptography and Message Authentication.
Computer and Network Security Rabie A. Ramadan Lecture 6.
Cryptography and Network Security Chapter 9 - Public-Key Cryptography
Computer Security: Principles and Practice First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown Chapter 2 – Cryptographic.
Welcome to Introduction to Computer Security. Why Computer Security The past decade has seen an explosion in the concern for the security of information.
11.1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 11 Message Integrity and Message Authentication.
11-Basic Cryptography Dr. John P. Abraham Professor UTPA.
PUBLIC-KEY CRYPTOGRAPH IT 352 : Lecture 2- part3 Najwa AlGhamdi, MSc – 2012 /1433.
Chapter 3 (B) – Key Management; Other Public Key Cryptosystems.
Chapter 11 Message Authentication and Hash Functions.
Cryptography 1 Crypto Cryptography 2 Crypto  Cryptology  The art and science of making and breaking “secret codes”  Cryptography  making “secret.
Cryptography and Network Security Public Key Cryptography and RSA.
Chapter 3 – Public Key Cryptography and RSA (A). Private-Key Cryptography traditional private/secret/single-key cryptography uses one key shared by both.
Cryptography COS 461: Computer Networks Precept: 04/20/2012 Princeton University 1.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Security Steve Ko Computer Sciences and Engineering University at Buffalo.
Chapter 9 Public Key Cryptography and RSA. Private-Key Cryptography traditional private/secret/single key cryptography uses one key shared by both sender.
Intro to Cryptography Lesson Introduction
Key Management Network Systems Security Mort Anvari.
Cryptography and Network Security Chapter 9 Fourth Edition by William Stallings.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
Network Security Celia Li Computer Science and Engineering York University.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
Cryptographic Hash Function. A hash function H accepts a variable-length block of data as input and produces a fixed-size hash value h = H(M). The principal.
CSE 486/586 Distributed Systems Security --- 1
Basic Network Encryption
ICS 454 Principles of Cryptography
CSE 486/586 Distributed Systems Security --- 1
Basic Network Encryption
Presentation transcript:

CSE 486/586 CSE 486/586 Distributed Systems Security Steve Ko Computer Sciences and Engineering University at Buffalo

CSE 486/586 Security Threats Leakage: An unauthorized party gains access to a service or data. Attacker obtains knowledge of a withdrawal or account balance Tampering: Unauthorized change of data, tampering with a service Attacker changes the variable holding your personal checking $$ total Vandalism: Interference with proper operation, without gain to the attacker Attacker does not allow any transactions to your account 2

CSE 486/586 Security Properties Confidentiality: Concealment of information or resources Authenticity: Identification and assurance of origin of info Integrity: Trustworthiness of data or resources in terms of preventing improper and unauthorized changes Availability: Ability to use desired info or resource Non-repudiation: Offer of evidence that a party indeed is sender or a receiver of certain information Access control: Facilities to determine and enforce who is allowed access to what resources (host, software, network, …) 3

CSE 486/586 Attack on Confidentiality Eavesdropping –Unauthorized access to information –Packet sniffers and wiretappers (e.g. tcpdump) –Illicit copying of files and programs 4 A B Eavesdropper

CSE 486/586 Attack on Integrity Tampering –Stop the flow of the message –Delay and optionally modify the message –Release the message again 5 A B Perpetrator

CSE 486/586 Attack on Authenticity Fabrication –Unauthorized assumption of other’s identity –Generate and distribute objects under identity 6 A B Masquerader: from A

CSE 486/586 Attack on Availability Destroy hardware (cutting fiber) or software Modify software in a subtle way Corrupt packets in transit Blatant denial of service (DoS): –Crashing the server –Overwhelm the server (use up its resource) 7 A B

CSE 486/586 Designing Secure Systems Your system is only as secure as your weakest component! Need to make worst-case assumptions about attackers: –exposed interfaces, insecure networks, algorithms and program code available to attackers, attackers may be computationally very powerful –Tradeoff between security and performance impact/difficulty –Typically design system to withstand a known set of attacks (Attack Model or Attacker Model) It is not easy to design a secure system. And it’s an arms race! 8

CSE 486/586 CSE 486/586 Administrivia PA4 is due Friday next week. 9

CSE 486/586 Cryptography Comes from Greek word meaning “secret” –Primitives also can provide integrity, authentication Cryptographers invent secret codes to attempt to hide messages from unauthorized observers Modern encryption: –Algorithm public, key secret and provides security –May be symmetric (secret) or asymmetric (public) Cryptographic algorithms goal –Given key, relatively easy to compute –Without key, hard to compute (invert) –“Level” of security often based on “length” of key 10 plaintext ciphertext plaintext encryptiondecryption

CSE 486/586 Three Types of Functions Cryptographic hash Functions –Zero keys Secret-key functions –One key Public-key functions –Two keys 11

CSE 486/586 Cryptographic Hash Functions Take message, m, of arbitrary length and produces a smaller (short) number, h(m) Properties –Easy to compute h(m) –Pre-image resistance (strong collision): Hard to find an m, given h(m) »“One-way function” –Second pre-image resistance (weak collision): Hard to find two values that hash to the same h(m) »E.g. discover collision: h(m) == h(m’) for m != m’ –Often assumed: output of hash fn’s “looks” random What’s wrong with collisions? –E.g., message authentication (MAC) (will discuss later). 12

CSE 486/586 How Hard to Find Collisions? Think like an attacker. What would be the simplest strategy to try? –Brute-force trials. –Then the question is how many trials do we need? –The “strength” of your crypto hash depends on how hard it is to find out collisions. Birthday paradox –In a set of n random people, what’s the probability of two people having the same birthday? What’s the similarity between this and the crypto hash collision? Calculation –Compute probability of different birthdays –Random sample of n people taken from k=365 days 13

CSE 486/586 Birthday Paradox Probability of no repetition: –P = 1 – (1) (1 - 1/365) (1 – 2/365) (1 – 3/365) … (1 – (n- 1)/365) –(k = # of slots, e.g., 365) P ≈ 1 – e -(n(n-1)/2k –For p, it takes roughly sqrt(2k * ln(1/(1-p))) people to find two people with the same birthday. With p = 50%, 14

CSE 486/586 How Many Bits for Hash? If m bits, how many numbers do we need to find (weak) collision? –It’s not 2 m + 1! –It takes 2 m/2 to find weak collision (with high probability) –Still takes 2 m to find strong (pre-image) collision 64 bits, takes 2 32 messages to search MD5 (128 bits) considered too little SHA-1 (160 bits) getting old 15

CSE 486/586 Example: Password Password hashing –Can’t store passwords in a file that could be read –Concerned with insider attacks! Must compare typed passwords to stored passwords –Does hash (typed) === hash (password)? Actually, a salt is often used: hash (input || salt) –Avoids precomputation of all possible hashes in “rainbow tables” (available for download from file-sharing systems) 16

CSE 486/586 Symmetric (Secret) Key Crypto Also: “conventional / private-key / single-key” –Sender and recipient share a common key –All classical encryption algorithms are private-key –Dual use: confidentiality (encryption) or authentication/integrity (message authentication code) Was only type of encryption prior to invention of public-key in 1970’s –Most widely used –More computationally efficient than “public key” 17

CSE 486/586 Symmetric Cipher Model 18

CSE 486/586 Requirements Two requirements –Strong encryption algorithm –Secret key known only to sender/receiver Goal: Given key, generate 1-to-1 mapping to ciphertext that looks random if key unknown –Assume algorithm is known (no security by obscurity) –Implies secure channel to distribute key 19

CSE 486/586 Uses Encryption –For confidentiality –Sender: Compute C = AES K (M) & Send C –Receiver: Recover M = AES’ K (C) Message Authentication Code (MAC) –For integrity –Sender: Compute H = AES K (SHA1 (M)) & Send –Receiver: Computer H’ = AES K (SHA1 (M)) & Check H’ == H 20

CSE 486/586 Public (Asymmetric) Key Crypto Developed to address two key issues –Key distribution: secure communication without having to trust a key distribution center with your key –Digital signature: verifying that a message comes from the claimed sender without prior establishment Public invention Diffie & Hellman in 1976 –Known earlier to classified community 21

CSE 486/586 Public (Asymmetric) Key Crypto Involves two keys –Public key: can be known to anybody, used to encrypt and verify signatures –Private key: should be known only to the recipient, used to decrypt and sign signatures Asymmetric –Can encrypt messages or verify signatures w/o ability to decrypt msgs or create signatures –If “one-way function” goes c  F(m), then public-key encryption is a “trap-door” function: »Easy to compute c  F(m) »Hard to compute m  F -1 (c) without knowing k »Easy to compute m  F -1 (c,k) by knowing k 22

CSE 486/586 Public (Asymmetric) Key Crypto 23

CSE 486/586 Security of Public Key Schemes Like private key schemes, brute force search possible –But keys used are too large (e.g., >= 1024 bits) Security relies on a difference in computational difficulty b/w easy and hard problems –RSA: exponentiation in composite group vs. factoring –ElGamal/DH: exponentiation vs. discrete logarithm in prime group –Hard problems are known, but computationally expensive Requires use of very large numbers –Hence is slow compared to private key schemes –RSA-1024: 80 us / encryption; 1460 us / decryption [cryptopp.com] –AES-128: 109 MB / sec = 1.2us / 1024 bits 24

CSE 486/586 (Simple) RSA Algorithm Security due to cost of factoring large numbers –Factorization takes O(e log n log log n ) operations (hard) –Exponentiation takes O((log n) 3 ) operations (easy) To encrypt a message M the sender: –Obtain public key {e,n}; compute C = M e mod n To decrypt the ciphertext C the owner: –Use private key {d,n}; computes M = C d mod n Note that msg M must be smaller than the modulus n Otherwise, hybrid encryption: –Generate random symmetric key r –Use public key encryption to encrypt r –Use symmetric key encryption under r to encrypt M 25

CSE 486/586 Typical Applications Secure digest (with cryptographic hash functions) –A fixed-length that characterizes an arbitrary-length message –Typically produced by cryptographic hash functions, e.g., SHA-1 or MD5. MAC with symmetric crypto –Verifies the authenticity of a message –Sender: compute H = AES K (SHA1 (M)) & send –Receiver: computer H’ = AES K (SHA1 (M)) & check H’ == H Digital signature with asymmetric crypto –Verifies a message or a document is an unaltered copy of one produced by the signer –Signer: compute H = RSA K (SHA1(M)) & send –Verifier: compute H’ = SHA1(M) & verify RSA K’ (H) == H’ 26

CSE 486/586 Summary Security properties –Confidentiality, authenticity, integrity, availability, non- repudiation, access control Three types of functions –Cryptographic hash, symmetric key crypto, asymmetric key crypto Applications –Secure digest, digital signature, MAC, digital certificate 27

CSE 486/ Acknowledgements These slides contain material developed and copyrighted by Indranil Gupta (UIUC), Jennifer Rexford (Princeton) and Michael Freedman (Princeton).