Foundations of Network and Computer Security J J ohn Black Lecture #11 Sep 21 st 2007 CSCI 6268/TLEN 5831, Fall 2007.

Slides:



Advertisements
Similar presentations
1 Introduction CSE 5351: Introduction to cryptography Reading assignment: Chapter 1 of Katz & Lindell.
Advertisements

CSE331: Introduction to Networks and Security Lecture 19 Fall 2002.
Notation Intro. Number Theory Online Cryptography Course Dan Boneh
7. Asymmetric encryption-
Great Theoretical Ideas in Computer Science.
Foundations of Network and Computer Security J J ohn Black Lecture #9 Sep 22 nd 2005 CSCI 6268/TLEN 5831, Fall 2005.
Foundations of Network and Computer Security J J ohn Black Lecture #7 Sep 14 th 2004 CSCI 6268/TLEN 5831, Fall 2004.
Foundations of Network and Computer Security J J ohn Black Lecture #10 Sep 18 th 2009 CSCI 6268/TLEN 5550, Fall 2009.
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
Public-key Cryptography Montclair State University CMPT 109 J.W. Benham Spring, 1998.
Public Key Crytography1 From: Introduction to Algorithms Cormen, Leiserson and Rivest.
Foundations of Network and Computer Security J J ohn Black Lecture #11 Oct 4 th 2005 CSCI 6268/TLEN 5831, Fall 2005.
Foundations of Network and Computer Security J J ohn Black Lecture #10 Sep 19 th 2007 CSCI 6268/TLEN 5831, Fall 2007.
ECOMMERCE TECHNOLOGY FALL 2003 COPYRIGHT © 2003 MICHAEL I. SHAMOS Cryptography.
Foundations of Network and Computer Security J J ohn Black Lecture #9 Sep 16 th 2009 CSCI 6268/TLEN 5550, Fall 2009.
Kemal AkkayaWireless & Network Security 1 Department of Computer Science Southern Illinois University Carbondale CS 591 – Wireless & Network Security Lecture.
Foundations of Network and Computer Security J J ohn Black Lecture #8 Sep 15 th 2005 CSCI 6268/TLEN 5831, Fall 2005.
Foundations of Network and Computer Security J J ohn Black Lecture #13 Sep 26 th 2007 CSCI 6268/TLEN 5831, Fall 2007.
Foundations of Network and Computer Security J J ohn Black Lecture #12 Sep 23 rd 2009 CSCI 6268/TLEN 5550, Fall 2009.
Foundations of Network and Computer Security J J ohn Black Lecture #10 Sep 29 th 2005 CSCI 6268/TLEN 5831, Fall 2005.
Foundations of Network and Computer Security J J ohn Black Lecture #6 Sep 9 th 2004 CSCI 6268/TLEN 5831, Fall 2004.
Foundations of Network and Computer Security J J ohn Black Lecture #5 Sep 6 th 2005 CSCI 6268/TLEN 5831, Fall 2005.
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
CSE 321 Discrete Structures Winter 2008 Lecture 8 Number Theory: Modular Arithmetic.
Introduction to Modern Cryptography Lecture 7 1.RSA Public Key CryptoSystem 2.One way Trapdoor Functions.
Foundations of Network and Computer Security J J ohn Black Lecture #12 Sep 24 th 2007 CSCI 6268/TLEN 5831, Fall 2007.
Fall 2010/Lecture 311 CS 426 (Fall 2010) Public Key Encryption and Digital Signatures.
Public Key Algorithms 4/17/2017 M. Chatterjee.
Foundations of Network and Computer Security J J ohn Black Lecture #7 Sep 13 th 2005 CSCI 6268/TLEN 5831, Fall 2005.
ELECTRONIC PAYMENT SYSTEMSFALL 2001COPYRIGHT © 2001 MICHAEL I. SHAMOS Electronic Payment Systems Lecture 6 Epayment Security II.
Lecture 6: Public Key Cryptography
1 CIS 5371 Cryptography 8. Asymmetric encryption-.
Foundations of Network and Computer Security J J ohn Black Lecture #14 Oct 1 st 2007 CSCI 6268/TLEN 5831, Fall 2007.
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 9: Cryptography.
The RSA Algorithm Rocky K. C. Chang, March
Lecture 15 Lecture’s outline Public algorithms (usually) that are each other’s inverse.
RSA and its Mathematics Behind
Great Theoretical Ideas in Computer Science.
RSA Ramki Thurimella.
Prelude to Public-Key Cryptography Rocky K. C. Chang, February
Cryptography Dec 29. This Lecture In this last lecture for number theory, we will see probably the most important application of number theory in computer.
Foundations of Network and Computer Security J J ohn Black CSCI 6268/TLEN 5550, Spring 2015.
CS 4/585: Cryptography Tom Shrimpton FAB
Public-Key Cryptography CS110 Fall Conventional Encryption.
Midterm Review Cryptography & Network Security
Cryptography Lecture 9 Stefan Dziembowski
Cryptography Wei Wu. Internet Threat Model Client Network Not trusted!!
Chapter 21 Public-Key Cryptography and Message Authentication.
Modular Arithmetic with Applications to Cryptography Lecture 47 Section 10.4 Wed, Apr 13, 2005.
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.
PUBLIC-KEY CRYPTOGRAPH IT 352 : Lecture 2- part3 Najwa AlGhamdi, MSc – 2012 /1433.
A Quick Tour of Cryptographic Primitives Anupam Datta CMU Fall A: Foundations of Security and Privacy.
RSA and its Mathematics Behind July Topics  Modular Arithmetic  Greatest Common Divisor  Euler’s Identity  RSA algorithm  Security in RSA.
Cryptography 1 Crypto Cryptography 2 Crypto  Cryptology  The art and science of making and breaking “secret codes”  Cryptography  making “secret.
Foundations of Network and Computer Security J J ohn Black CSCI 6268/TLEN 5550, Spring 2013.
Lecture 6.1: Misc. Topics: Number Theory CS 250, Discrete Structures, Fall 2011 Nitesh Saxena.
Public Key Algorithms Lesson Introduction ●Modular arithmetic ●RSA ●Diffie-Hellman.
Introduction to Cryptography Lecture 9. Public – Key Cryptosystems Each participant has a public key and a private key. It should be infeasible to determine.
Great Theoretical Ideas In Computer Science Anupam GuptaCS Fall 2006 Lecture 15Oct 17, 2006Carnegie Mellon University Algebraic Structures: Groups,
Key Management Network Systems Security Mort Anvari.
Lecture 3.1: Public Key Cryptography I CS 436/636/736 Spring 2015 Nitesh Saxena.
Great Theoretical Ideas in Computer Science.
Cryptography Lecture 14 Arpita Patra © Arpita Patra.
Foundations of Network and Computer Security J J ohn Black CSCI 6268/TLEN 5550, Spring 2014.
1 The RSA Algorithm Rocky K. C. Chang February 23, 2007.
Prelude to Public-Key Cryptography
Public Key Encryption and Digital Signatures
Foundations of Network and Computer Security
Presentation transcript:

Foundations of Network and Computer Security J J ohn Black Lecture #11 Sep 21 st 2007 CSCI 6268/TLEN 5831, Fall 2007

Announcements Quiz #2 will be next Friday, Sep 28 th –Will cover material up to next Weds –As usual, end of lecture, about 30 mins long

Review What MACs have we seen thus-far? –CBCMAC, XCBC, UMAC, HMAC –HMAC led to a discussion on crypto hash functions MD5, SHA-1 are examples These functions are unkeyed Our hope is that they are collision-resistant –We’ll pick up with a construction of a hash function from a blockcipher

A Provably-Secure Blockcipher-Based Compression Function E MiMi h i-1 hihi n bits

The Big (Partial) Picture Primitives Block Ciphers Hash Functions Hard Problems Stream Ciphers First-Level Protocols Symmetric Encryption Digital Signatures MAC Schemes Asymmetric Encryption Second-Level Protocols SSH, SSL/TLS, IPSec Electronic Cash, Electronic Voting (Can do proofs) (No one knows how to prove security; make assumptions)

Symmetric vs. Asymmetric Thus far we have been in the symmetric key model –We have assumed that Alice and Bob share some random secret string –In practice, this is a big limitation Bootstrap problem Forces Alice and Bob to meet in person or use some mechanism outside our protocol Not practical when you want to buy books at Amazon We need the Asymmetric Key model!

Asymmetric Cryptography In this model, we no longer require an initial shared key –First envisioned by Diffie in the late 70’s –Some thought it was impossible –MI6 purportedly already knew a method –Diffie-Hellman key exchange was first public system Later turned into El Gamal public-key system –RSA system announced shortly thereafter

But first, a little math… A group is a nonempty set G along with an operation # : G £ G ! G such that for all a, b, c 2 G –(a # b) # c = a # (b # c) (associativity) – 9 e 2 G such that e # a = a # e = a (identity) – 9 a -1 2 G such that a # a -1 = e (inverses) If 8 a,b 2 G, a # b = b # a we say the group is “commutative” or “abelian” –All groups in this course will be abelian

Notation We’ll get tired of writing the # sign and just use juxtaposition instead –In other words, a # b will be written ab –If some other symbol is conventional, we’ll use it instead (examples to follow) We’ll use power-notation in the usual way –a b means aaaa  a repeated b times –a -b means a -1 a -1 a -1  a -1 repeated b times –Here a 2 G, b 2 Z Instead of e we’ll use a more conventional identity name like 0 or 1 Often we write G to mean the group (along with its operation) and the associated set of elements interchangeably

Examples of Groups Z (the integers) under + ? Q, R, C, under + ? N under + ? Q under £ ? Z under £ ? 2 £ 2 matrices with real entries under £ ? Invertible 2 £ 2 matrices with real entries under £ ? Note all these groups are infinite –Meaning there are an infinite number of elements in them Can we have finite groups?

Finite Groups Simplest example is G = {0} under + –Called the “trivial group” Almost as simple is G = {0, 1} under addition mod 2 Let’s generalize –Z m is the group of integers modulo m –Z m = {0, 1, …, m-1} –Operation is addition modulo m –Identity is 0 –Inverse of any a 2 Z m is m-a –Also abelian

The Group Z m An example –Let m = 6 –Z 6 = {0,1,2,3,4,5} –2+5 = 1 –3+5+1 = = 3 –Inverse of 2 is = 0 We can always pair an element with its inverse a : a -1 : Inverses are always unique An element can be its own inverse –Above, 0 and 0, 3 and 3

Another Finite Group Let G = {0,1} n and operation is © –A group? –What is the identity? –What is the inverse of a 2 G? We can put some familiar concepts into group-theoretic notation: –Caesar cipher was just P + K = C in Z 26 –One-time pad was just P © K = C in the group just mentioned above

Multiplicative Groups Is {0, 1, …, m-1} a group under multiplication mod m? –No, 0 has no inverse Ok, toss out 0; is {1, …, m-1} a group under multiplication mod m? –Hmm, try some examples… m = 2, so G = {1} X m = 3, so G = {1,2} X m = 4, so G = {1,2,3} oops! m = 5, so G = {1,2,3,4} X

Multiplicative Groups (cont) What was the problem? –2,3,5 all prime –4 is composite (meaning “not prime”) Theorem: G = {1, 2, …, m-1} is a group under multiplication mod m iff m is prime Proof: Ã : suppose m is composite, then m = ab where a,b 2 G and a, b  1. Then ab = m = 0 and G is not closed ! : follows from a more general theorem we state in a moment

The Group Z m * a,b 2 N are relatively prime iff gcd(a,b) = 1 –Often we’ll write (a,b) instead of gcd(a,b) Theorem: G = {a : 1 · a · m-1, (a,m) = 1} and operation is multiplication mod m yields a group –We name this group Z m * –We won’t prove this (though not too hard) –If m is prime, we recover our first theorem

Examples of Z m * Let m = 15 –What elements are in Z 15 * ? {1,2,4,7,8,11,13,14} –What is 2 -1 in Z 15 * ? First you should check that 2 2 Z 15 * It is since (2,15) = 1 –Trial and error: 1, 2, 4, 7, 8 X –There is a more efficient way to do this called “Euclid’s Extended Algorithm” Trust me

Euler’s Phi Function Definition: The number of elements of a group G is called the order of G and is written |G| –For infinite groups we say |G| = 1 –All groups we deal with in cryptography are finite Definition: The number of integers i < m such that (i,m) = 1 is denoted  (m) and is called the “Euler Phi Function” –Note that |Z m * | =  (m) –This follows immediately from the definition of  ()

Evaluating the Phi Function What is  (p) if p is prime? –p-1 What is  (pq) if p and q are distinct primes? –If p, q distinct primes,  (pq) =  (p)  (q) –Not true if p=q –We won’t prove this, though it’s not hard

Examples What is  (3)? –|Z 3 * | = |{1,2}| = 2 What is  (5)? What is  (15)? –  (15) =  (3)  (5) = 2 £ 4 = 8 –Recall, Z 15 * = {1,2,4,7,8,11,13,14}

LaGrange’s Theorem Last bit of math we’ll need for RSA Theorem: if G is any finite group of order n, then 8 a 2 G, a n = 1 –Examples: 6 2 Z 22, 6+6+…+6, 22 times = 0 mod Z 15 *, 2 8 = 256 = 1 mod 15 Consider {0,1} 5 under © – {0,1} 5, = =00000 –It always works (proof requires some work)

Basic RSA Cryptosystem Basic Setup: –Alice and Bob do not share a key to start with –Alice will be the sender, Bob the receiver Reverse what follows for Bob to reply –Bob first does key generation He goes off in a corner and computes two keys One key is pk, the “public key” Other key is sk, the “secret key” or “private key” –After this, Alice can encrypt with pk and Bob decrypts with sk