RSA: Encryption, Decryption

RSA: Encryption, Decryption

Data Communications & Networks Session 11 – Main Theme Network Security Dr. Jean-Claude Franchitti New York University Computer Science Department Courant Institute of Mathematical Sciences Adapted from course textbook resources Computer Networking: A Top-Down Approach, 5/E Copyright 1996-2009 J.F. Kurose and K.W. Ross, All Rights Reserved 1 Agenda 1 Session Overview 2 Network Security 3 Summary and Conclusion 2 What is the class about? .Course description and syllabus: »http://www.nyu.edu/classes/jcf/CSCI-GA.2262-001/ »http://www.cs.nyu.edu/courses/spring15/CSCI- GA.2262-001/index.html .Textbooks: » Computer Networking: A Top-Down Approach (5th Edition) James F. Kurose, Keith W. Ross Addison Wesley ISBN-10: 0136079679, ISBN-13: 978-0136079675, 5th Edition (03/09) 3 Course Overview . Computer Networks and the Internet . Application Layer . Fundamental Data Structures: queues, ring buffers, finite state machines . Data Encoding and Transmission . Local Area Networks and Data Link Control . Wireless Communications . Packet Switching . OSI and Internet Protocol Architecture . Congestion Control and Flow Control Methods . Internet Protocols (IP, ARP, UDP, TCP) . Network (packet) Routing Algorithms (OSPF, Distance Vector) . IP Multicast . Sockets 4 Course Approach . Introduction to Basic Networking Concepts (Network Stack) . Origins of Naming, Addressing, and Routing (TCP, IP, DNS) . Physical Communication Layer . MAC Layer (Ethernet, Bridging) . Routing Protocols (Link State, Distance Vector) . Internet Routing (BGP, OSPF, Programmable Routers) . TCP Basics (Reliable/Unreliable) . Congestion Control . QoS, Fair Queuing, and Queuing Theory . Network Services – Multicast and Unicast . Extensions to Internet Architecture (NATs, IPv6, Proxies) . Network Hardware and Software (How to Build Networks, Routers) . Overlay Networks and Services (How to Implement Network Services) . Network Firewalls, Network Security, and Enterprise Networks 5 Icons / Metaphors Information Common Realization Knowledge/Competency Pattern Governance Alignment Solution Approach 66 Agenda 1 Session Overview 2 Network Security 3 Summary and Conclusion 7 Network Security in Brief . What is network security? . Principles of cryptography . Message integrity . Securing e-mail . Securing TCP connections: SSL . Network layer security: IPsec . Securing wireless LANs . Operational security: firewalls and IDS 8 Network Security Topic goals: . understand principles of network security: » cryptography and its many uses beyond “confidentiality” » authentication » message integrity . security in practice: » firewalls and intrusion detection systems » security in application, transport, network, link layers 9 What is network security? Confidentiality: only sender, intended receiver should “understand” message contents » sender encrypts message » receiver decrypts message Authentication: sender, receiver want to confirm identity of each other Message integrity: sender, receiver want to ensure message not altered (in transit, or afterwards) without detection Access and availability: services must be accessible and available to users 10 Friends and enemies: Alice, Bob, Trudy . well-known in network security world . Bob, Alice (lovers!) want to communicate “securely” . Trudy (intruder) may intercept, delete, add Alicemessages Bob channel data, control messages secure data secure data sender receiver Trudy 11 Who might Bob, Alice be? . … well, real-life Bobs and Alices! . Web browser/server for electronic transactions (e.g., on-line purchases) . on-line banking client/server . DNS servers . routers exchanging routing table updates . other examples? 12 There are bad guys (and girls) out there! Q: What can a “bad guy” do? A: A lot! See section 1.6 » eavesdrop: intercept messages » actively insert messages into connection » impersonation: can fake (spoof) source address in packet (or any field in packet) » hijacking: “take over” ongoing connection by removing sender or receiver, inserting himself in place » denial of service: prevent service from being used by others (e.g., by overloading resources) 13 Network Security – Sub-Topics . What is network security? . Principles of cryptography . Message integrity . Securing e-mail . Securing TCP connections: SSL . Network layer security: IPsec . Securing wireless LANs . Operational security: firewalls and IDS 14 The language of cryptography Alice’s Bob’s K encryption K decryption A key B key plaintext encryption ciphertext decryption plaintext algorithm algorithm m plaintext message KA(m) ciphertext, encrypted with key KA m = KB(KA(m)) 15 Simple encryption scheme substitution cipher: substituting one thing for another » monoalphabetic cipher: substitute one letter for another plaintext: abcdefghijklmnopqrstuvwxyz ciphertext: mnbvcxzasdfghjklpoiuytrewq E.g.: Plaintext: bob. i love you. alice ciphertext: nkn. s gktc wky. mgsbc Key: the mapping from the set of 26 letters to the set of 26 letters 16 Polyalphabetic encryption . n monoalphabetic cyphers, M1,M2,…,Mn . Cycling pattern: » e.g., n=4, M1,M3,M4,M3,M2; M1,M3,M4,M3,M2; . For each new plaintext symbol, use subsequent monoalphabetic pattern in cyclic pattern » dog: d from M1, o from M3, g from M4 . Key: the n ciphers and the cyclic pattern 17 Breaking an encryption scheme . Cipher-text only attack: Trudy has ciphertext that she can analyze . Known-plaintext attack: . Two approaches: trudy has some plaintext » Search through all keys: corresponding to some must be able to ciphertext differentiate resulting » eg, in monoalphabetic plaintext from gibberish cipher, trudy determines » Statistical analysis pairings for a,l,i,c,e,b,o, . Chosen-plaintext attack: trudy can get the cyphertext for some chosen plaintext 18 Types of Cryptography . Crypto often uses keys: » Algorithm is known to everyone » Only “keys” are secret . Public key cryptography » Involves the use of two keys . Symmetric key cryptography » Involves the use one key . Hash functions » Involves the use of no keys » Nothing secret: How can this be useful? 19 Symmetric key cryptography K K S S plaintext encryption ciphertext decryption plaintext message, m algorithm algorithm K (m) m = K (K (m)) S S S symmetric key crypto: Bob and Alice share same (symmetric) key: KS . e.g., key is knowing substitution pattern in mono alphabetic substitution cipher Q: how do Bob and Alice agree on key value? 20 Two types of symmetric ciphers . Stream ciphers » encrypt one bit at time . Block ciphers » Break plaintext message in equal-size blocks » Encrypt each block as a unit 21 Stream Ciphers pseudo random keystream key generator keystream . Combine each bit of keystream with bit of plaintext to get bit of ciphertext . m(i) = ith bit of message . ks(i) = ith bit of keystream . c(i) = ith bit of ciphertext . c(i) = ks(i) m(i) ( = exclusive or) . m(i) = ks(i) c(i) 22 RC4 Stream Cipher . RC4 is a popular stream cipher » Extensively analyzed and considered good » Key can be from 1 to 256 bytes » Used in WEP for 802.11 » Can be used in SSL 23 Block ciphers . Message to be encrypted is processed in blocks of k bits (e.g., 64-bit blocks). 1-to-1 mapping is used to map k-bit block of plaintext to k-bit block of ciphertext Example with k=3: input output input output 000 110 100 011 001 111 101 010 010 101 110 000 011 100 111 001 What is the ciphertext for 010110001111 ? 24 Block ciphers . How many possible mappings are there for k=3? » How many 3-bit inputs? » How many permutations of the 3-bit inputs? » Answer: 40,320 ; not very many! . In general, 2k! mappings; huge for k=64 . Problem: » Table approach requires table with 264 entries, each entry with 64 bits . Table too big: instead use function that simulates a randomly permuted table 25 From Kaufman Prototype function et al 64-bit input 8bits 8bits 8bits 8bits 8bits 8bits 8bits 8bits S1 S2 S3 S4 S5 S6 S7 S8 8 bits 8 bits 8 bits 8 bits 8 bits 8 bits 8 bits 8 bits 8-bit to 64-bit intermediate 8-bit mapping Loop for n rounds 64-bit output 26 Why rounds in prototpe? . If only a single round, then one bit of input affects at most 8 bits of output. In 2nd round, the 8 affected bits get scattered and inputted into multiple substitution boxes. How many rounds? » How many times do you need to shuffle cards » Becomes less efficient as n increases 27 Encrypting a large message . Why not just break message in 64-bit blocks, encrypt each block separately? » If same block of plaintext appears twice, will give same cyphertext. How about: » Generate random 64-bit number r(i) for each plaintext block m(i) » Calculate c(i) = KS( m(i) r(i) ) » Transmit c(i), r(i), i=1,2,… » At receiver: m(i) = KS(c(i)) r(i) » Problem: inefficient, need to send c(i) and r(i) 28 Cipher Block Chaining (CBC) . CBC generates its own random numbers » Have encryption of current block depend on result of previous block » c(i) = KS( m(i) c(i-1) ) » m(i) = KS( c(i)) c(i-1) . How do we encrypt first block? » Initialization vector (IV): random block = c(0) » IV does not have to be secret . Change IV for each message (or session) » Guarantees that even if the same message is sent repeatedly, the ciphertext will be completely different each time 29 Cipher Block Chaining . cipher block: if input m(1) = “HTTP/1.1” c(1) = “k329aM02” t=1 block block repeated, will cipher … produce same cipher m(17) = “HTTP/1.1” c(17) = “k329aM02” t=17 block text: cipher cipher block chaining: XOR ith input block, m(i), with previous block of cipher m(i) text, c(i-1) c(0) transmitted to c(i-1) + receiver in clear what happens in block “HTTP/1.1” scenario cipher from above? c(i) 30 Symmetric key crypto: DES DES: Data Encryption Standard . US encryption standard [NIST 1993] . 56-bit symmetric key, 64-bit plaintext input . Block cipher with cipher block chaining . How secure is DES? » DES Challenge: 56-bit-key-encrypted phrase decrypted (brute force) in less than a day » No known good analytic attack . making DES more secure: » 3DES: encrypt 3 times with 3 different keys (actually encrypt, decrypt, encrypt) 31 Symmetric key crypto: DES DES operation initial permutation 16 identical “rounds” of function application, each using different 48 bits of key final permutation 32 AES: Advanced Encryption Standard .

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    148 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us