CMSC 414 Computer (and Network) Security Lecture 2 Jonathan Katz.

Slides:



Advertisements
Similar presentations
Sri Lanka Institute of Information Technology
Advertisements

Digital Signatures and Hash Functions. Digital Signatures.
Intro 1 Introduction Intro 2 Good Guys and Bad Guys  Alice and Bob are the good guys  Trudy is the bad guy  Trudy is our generic “intruder”
1 Introduction CSE 5351: Introduction to cryptography Reading assignment: Chapter 1 of Katz & Lindell.
Lect. 18: Cryptographic Protocols. 2 1.Cryptographic Protocols 2.Special Signatures 3.Secret Sharing and Threshold Cryptography 4.Zero-knowledge Proofs.
15-1 Last time Internet Application Security and Privacy Public-key encryption Integrity.
CS555Spring 2012/Topic 161 Cryptography CS 555 Topic 16: Key Management and The Need for Public Key Cryptography.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 29 Cryptography and Network.
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
CMSC 414 Computer and Network Security Lecture 3 Jonathan Katz.
CNS2010handout 10 :: digital signatures1 computer and network security matt barrie.
CMSC 414 Computer and Network Security Lecture 7 Jonathan Katz.
CMSC 414 Computer and Network Security Lecture 21 Jonathan Katz.
CMSC 414 Computer and Network Security Lecture 5 Jonathan Katz.
8-1 What is network security? Confidentiality: only sender, intended receiver should “understand” message contents m sender encrypts message m receiver.
Asymmetric Cryptography part 1 & 2 Haya Shulman Many thanks to Amir Herzberg who donated some of the slides from
CMSC 414 Computer and Network Security Lecture 9 Jonathan Katz.
CMSC 414 Computer and Network Security Lecture 2 Jonathan Katz.
CMSC 414 Computer and Network Security Lecture 19 Jonathan Katz.
CRYPTOGRAPHY WHAT IS IT GOOD FOR? Andrej Bogdanov Chinese University of Hong Kong CMSC 5719 | 6 Feb 2012.
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
Overview of Cryptography and Its Applications Dr. Monther Aldwairi New York Institute of Technology- Amman Campus INCS741: Cryptography.
Fall 2010/Lecture 311 CS 426 (Fall 2010) Public Key Encryption and Digital Signatures.
CMSC 414 Computer (and Network) Security Jonathan Katz.
CMSC 414 Computer and Network Security Jonathan Katz.
CMSC 414 Computer and Network Security Lecture 2 Jonathan Katz.
Computer Science CSC 474Dr. Peng Ning1 CSC 474 Information Systems Security Topic 2.5 Public Key Algorithms.
Lecture 6: Public Key Cryptography
Public Key Model 8. Cryptography part 2.
Practical Techniques for Searches on Encrypted Data Yongdae Kim Written by Song, Wagner, Perrig.
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 9: Cryptography.
Pretty Good Privacy by Philip Zimmerman presented by: Chris Ward.
ECE453 – Introduction to Computer Networks Lecture 18 – Network Security (I)
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Network Security (A Very Brief Introduction)
Dr. Khalid A. Kaabneh Amman Arab University
CMSC 414 Computer and Network Security Lecture 2 Jonathan Katz.
Cryptography, Authentication and Digital Signatures
Public-Key Cryptography CS110 Fall Conventional Encryption.
CSCD 218 : DATA COMMUNICATIONS AND NETWORKING 1
Midterm Review Cryptography & Network Security
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,
Chapter 31 Cryptography And Network Security Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Cryptography Wei Wu. Internet Threat Model Client Network Not trusted!!
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.
Lecture 2: Introduction to Cryptography
Security Many secure IT systems are like a house with a locked front door but with a side window open -somebody.
Cryptography 1 Crypto Cryptography 2 Crypto  Cryptology  The art and science of making and breaking “secret codes”  Cryptography  making “secret.
Overview of Cryptography & Its Applications
31.1 Chapter 31 Network Security Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
15-499Page :Algorithms and Applications Cryptography I – Introduction – Terminology – Some primitives – Some protocols.
14-1 Last time Internet Application Security and Privacy Basics of cryptography Symmetric-key encryption.
Private key
IT 221: Introduction to Information Security Principles Lecture 5: Message Authentications, Hash Functions and Hash/Mac Algorithms For Educational Purposes.
Lecture 5 Page 1 CS 236 Online More on Cryptography CS 236 On-Line MS Program Networks and Systems Security Peter Reiher.
Cryptographic Security Aveek Chakraborty CS5204 – Operating Systems1.
INCS 741: Cryptography Overview and Basic Concepts.
Cryptography services Lecturer: Dr. Peter Soreanu Students: Raed Awad Ahmad Abdalhalim
Department of Computer Science Chapter 5 Introduction to Cryptography Semester 1.
Modeling security 1. Models - encryption r Alice and Bob have the same key k r Alice and Bob exchange encrypted messages r Eve wants to get the plaintext.
CMSC 414 Computer and Network Security Lecture 2 Jonathan Katz.
1 CIS 5371 Cryptography 1.Introduction. 2 Prerequisites for this course  Basic Mathematics, in particular Number Theory  Basic Probability Theory 
Software Security Seminar - 1 Chapter 2. Protocol Building Blocks 발표자 : 최두호 Applied Cryptography.
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.
CMSC 414 Computer (and Network) Security Lecture 3 Jonathan Katz.
Security through Encryption
Presentation transcript:

CMSC 414 Computer (and Network) Security Lecture 2 Jonathan Katz

Two papers linked from webpage  “Reflections on trusting trust”  “Managed security monitoring”  Both leave a fairly negative impression of security…  …at the very least, they show that security is not easy, and cannot just be applied as a “magic bullet”

“Managed security monitoring”  (Summarize article) –Is the state of network security really this bad? (Arguably, yes) –Although network monitoring and risk management are important, security is too –Security is not an ends unto itself If you really want to be secure, disconnect yourself from the Internet

An Overview of Computer Security

Basic components  Confidentiality  Integrity  Availability

Policy vs. mechanism  Security policy –Statement of what is and is not allowed  Security mechanism –Method for enforcing a security policy  One is meaningless without the other…  Problems when combining security policies of multiple organizations

Security goals  Prevention  Detection  Response/recovery

Assumptions and trust  Example: assume that all employees are trustworthy, and do not represent a threat  Assumptions underlie any security mechanism –Important to recognize and evaluate these assumptions

Example  Assumption: locks cannot be picked –What if a locksmith is around? –What if this locksmith is trustworthy? –Why do we assume that she is trustworthy?

More assumptions  Two assumptions are (almost) always made: –Policy defines the intended level of security –Mechanism correctly implements policy

System development  Determine threats; develop policy  Give specification of the system –Desired functionality of the system –If specification is ambiguous, vulnerabilities can result –An imprecise specification is useless…  Design the system –Design system satisfying the specification –Difficult (but not impossible) to verify

System development, cont’d…  Implementation –Create a system satisfying the design –Impossible to fully verify correctness Software complexity Unknown inputs Unverified tools –“Testing” after the fact Subject to limitations of the tests

System development (summary) 1. Threat analysis 2. Policy 3. Specification 4. Design 5. Implementation 6. (Operation/maintenance/monitoring?)

Cost-benefit analysis  Important to evaluate what level of security is necessary/appropriate –Cost of mounting a particular attack vs. value of attack to an adversary –Cost of damages from an attack vs. cost of defending against the attack –Likelihood of a particular attack

Human factors  E.g., passwords…  Outsider vs. insider attacks  Software misconfiguration  Not applying security patches  Social engineering

Everything you wanted to know about cryptography * *But perhaps were afraid to ask…

Caveat  Everything I present will be (relatively) informal –But I will try not to say anything that is an outright lie…  Cryptography is about precise definitions, formal models, and rigorous proofs of security (which we will not cover here) –If you want more details, take CMSC 456!

Attacks  Crypto deals primarily with three goals: –Confidentiality –Integrity (of data) –Authentication (of resources, people, systems)  Other goals also considered –E.g., non-repudiation –E-cash (e.g., double spending) –General secure multi-party computation

Private- vs. public-key  For many security goals, there are two types of cryptographic algorithms –Private-key / shared-key / symmetric-key / secret-key –Public-key

Private-key cryptography  The parties communicating share a completely random and secret key –Main point: key is not known to an attacker –This key must be shared (somehow) before they communicate  All “classical” cryptosystems are private- key based  Can also be used for secure storage

Private-key cryptography  For confidentiality: –Private-key (symmetric-key) encryption  For data integrity: –Message authentication codes –(sometimes called cryptographic checksums)

Public-key cryptography  One party (Alice) generates both a public key and a private key (or secret key)  The public key is published; the private key is kept secret –An attacker knows the public key!  The other communicating party (Bob) need not have any key of his own; knows Alice’s key  Techniques for this first developed in the 70’s

Public-key cryptography  For confidentiality: –Public-key encryption  For data integrity: –Digital signatures

To review…  Confidentiality: –Private-key encryption (schemes) –Public-key encryption (schemes)  Integrity: –Message authentication (codes) –Digital signature (schemes)  We will discuss authentication later

Private- vs. public-key I  Disadvantages of private-key –Need to securely share a key If you can share a key securely, why not just share the message itself? What if not possible? Need to know who you want to communicate with in advance! –O(n 2 ) blowup in storage

Private- vs. public-key II  Why study private-key at all? –Private-key is much more efficient (3 orders of magnitude) –Public-key crypto is “harder” to get right Needs stronger assumptions, more math –Can combine private-key with public-key to get the best of both worlds (for encryption)

Private- vs. public-key III  More disadvantages of public-key crypto –Public-key crypto still requires secure distribution and binding of public keys (PKI) May (sometimes) be just as hard as sharing a key –Not clear who you are communicating with (for public-key encryption)

Confidentiality

Overview  Private-key encryption –Attack model –“Trivial” systems Show why the problem is hard Show methods of attack Convince you not to use “home-brewed” techniques –What do we mean by security? –Block ciphers and modern-day techniques

Overview, continued…  Public-key cryptography –A word about security –Some basic number theory –RSA and El Gamal –Some attacks…and some fixes

Alice Bob shared info K K Alice K Bob K m C = E K (m) C1C1 m = D K (C)

In more detail…  Alice and Bob share a key K –Must be shared securely –Must be completely random –Must be kept completely secret from attacker –We don’t discuss (for now) how they do this  Plaintext - encryption - ciphertext - decryption  Decryption must recover the message!