15-1 Last time Internet Application Security and Privacy Public-key encryption Integrity.

Slides:



Advertisements
Similar presentations
The Diffie-Hellman Algorithm
Advertisements

COS 461 Fall 1997 Todays Lecture u intro to security in networking –confidentiality –integrity –authentication –authorization u orientation for assignment.
MAC Raushan. DES simple fiestel network 3131 PlainText Blocks 2*4=8bits 31 f f =0011 xor 0011=0000 = 0 f(r,k)=(2*r+k^2)%8 f(1,5)=(2*1+5^2)%8=3 xor 3 3.
Internet and Intranet Protocols and Applications Lecture 9a: Secure Sockets Layer (SSL) March, 2004 Arthur Goldberg Computer Science Department New York.
Topic 8: Secure communication in mobile devices. Choice of secure communication protocols, leveraging SSL for remote authentication and using HTTPS for.
Sri Lanka Institute of Information Technology
Digital Signatures and Hash Functions. Digital Signatures.
Netprog: Cryptgraphy1 Cryptography Reference: Network Security PRIVATE Communication in a PUBLIC World. by Kaufman, Perlman & Speciner.
More on SSL/TLS. Internet security: TLS TLS is one of the more prominent internet security protocols. TLS is one of the more prominent internet security.
1 Introduction CSE 5351: Introduction to cryptography Reading assignment: Chapter 1 of Katz & Lindell.
1 Supplement III: Security Controls What security services should network systems provide? Confidentiality Access Control Integrity Non-repudiation Authentication.
Cryptography and Authentication Lab ECE4112 Group4 Joel Davis Scott Allen Quinn.
16-1 Last time Internet Application Security and Privacy Authentication Security controls using cryptography Link-layer security: WEP.
Mar 12, 2002Mårten Trolin1 This lecture Diffie-Hellman key agreement Authentication Certificates Certificate Authorities SSL/TLS.
Security Overview Hofstra University University College for Continuing Education - Advanced Java Programming Lecturer: Engin Yalt May 24, 2006.
Lesson Title: Introduction to Cryptography Dale R. Thompson Computer Science and Computer Engineering Dept. University of Arkansas
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 29 Cryptography and Network.
ECOMMERCE TECHNOLOGY FALL 2003 COPYRIGHT © 2003 MICHAEL I. SHAMOS Cryptography.
8-1 What is network security? Confidentiality: only sender, intended receiver should “understand” message contents m sender encrypts message m receiver.
Cryptographic Technologies
Kemal AkkayaWireless & Network Security 1 Department of Computer Science Southern Illinois University Carbondale CS 591 – Wireless & Network Security Lecture.
Presented by Xiaoping Yu Cryptography and PKI Cosc 513 Operating System Presentation Presented to Dr. Mort Anvari.
Chapter Extension 23 SSL/TLS and //https © 2008 Pearson Prentice Hall, Experiencing MIS, David Kroenke.
TCP/IP Protocol Suite 1 Chapter 28 Upon completion you will be able to: Security Differentiate between two categories of cryptography schemes Understand.
Introduction to Public Key Infrastructure (PKI) Office of Information Security The University of Texas at Brownsville & Texas Southmost College.
Alexander Potapov.  Authentication definition  Protocol architectures  Cryptographic properties  Freshness  Types of attack on protocols  Two-way.
Digital Signature Xiaoyan Guo/ Xiaohang Luo/
Chapter 31 Network Security
31.1 Chapter 31 Network Security Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
ECE453 – Introduction to Computer Networks Lecture 18 – Network Security (I)
Secure r How do you do it? m Need to worry about sniffing, modifying, end- user masquerading, replaying. m If sender and receiver have shared secret.
Security Keys, Signatures, Encryption. Slides by Jyrki Nummenmaa ‘
Pertemuan-13 Enkripsi and Authentication. Symmetric-key Cryptography  Data encrypted and decrypted with same key  Classical examples: Caesar cipher,
Protecting Internet Communications: Encryption  Encryption: Process of transforming plain text or data into cipher text that cannot be read by anyone.
©The McGraw-Hill Companies, Inc., 2000© Adapted for use at JMU by Mohamed Aboutabl, 2003Mohamed Aboutabl1 1 Chapter 29 Internet Security.
Public-Key Cryptography CS110 Fall Conventional Encryption.
How cryptography is used to secure web services Josh Benaloh Cryptographer Microsoft Research.
CSCD 218 : DATA COMMUNICATIONS AND NETWORKING 1
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.
Chapter 31 Cryptography And Network Security Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Internet Security. 2 PGP is a security technology which allows us to send that is authenticated and/or encrypted. Authentication confirms the identity.
Internet-security.ppt-1 ( ) 2000 © Maximilian Riegel Maximilian Riegel Kommunikationsnetz Franken e.V. Internet Security Putting together the.
1 Cryptography NOTES. 2 Secret Key Cryptography Single key used to encrypt and decrypt. Key must be known by both parties. Assuming we live in a hostile.
Advanced Database Course (ESED5204) Eng. Hanan Alyazji University of Palestine Software Engineering Department.
8-1 Chapter 8 Security Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 part 2: Message integrity.
31.1 Chapter 31 Network Security Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Digital Signatures, Message Digest and Authentication Week-9.
Lecture 2: Introduction to Cryptography
1 Normal executable Infected executable Sequence of program instructions Entry Original program Entry Jump Replication and payload Viruses.
31.1 Chapter 31 Network Security Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
Encryption. Introduction The incredible growth of the Internet has excited businesses and consumers alike with its promise of changing the way we live.
TCP/IP Protocol Suite 1 Chapter 30 Security Credit: most slides from Forouzan, TCP/IP protocol suit.
14-1 Last time Internet Application Security and Privacy Basics of cryptography Symmetric-key encryption.
Security fundamentals Topic 5 Using a Public Key Infrastructure.
Network Security Continued. Digital Signature You want to sign a document. Three conditions. – 1. The receiver can verify the identity of the sender.
Chapter 14 Network Encryption
Group 9 Chapter 8.3 – 8.6. Public Key Algorithms  Symmetric Key Algorithms face an inherent problem  Keys must be distributed to all parties but kept.
Digital Signatures and Digital Certificates Monil Adhikari.
Lecture 11 Overview. Digital Signature Properties CS 450/650 Lecture 11: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
IT 221: Introduction to Information Security Principles Lecture 5: Message Authentications, Hash Functions and Hash/Mac Algorithms For Educational Purposes.
Fall 2006CS 395: Computer Security1 Key Management.
@Yuan Xue Case Study (Mid-term question) Bob sells BatLab Software License Alice buys BatLab Credit card information Number of.
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.
NET 311 Information Security
Outline Using cryptography in networks IPSec SSL and TLS.
Chapter 8 roadmap 8.1 What is network security?
Presentation transcript:

15-1 Last time Internet Application Security and Privacy Public-key encryption Integrity

15-2 This time Internet Application Security and Privacy Authentication Security controls using cryptography Link-layer security: WEP, WPA, WPA2

15-3 Using hashes for integrity Remember that hash functions can only guarantee integrity if the hash itself can be sent over a secure channel Why? What if there's no external channel to be had? For example, you're using the Internet to communicate

15-4 Message Authentication Codes We do the same trick as for encryption: have a large class of hash functions, and use a shared secret to pick the right one. Only those who know the secret can generate, or even check, the hash values. These “keyed hashes” are usually called Message Authentication Codes, or MACs. Common examples: SHA-1-HMAC, SHA-256-HMAC, CBC-MAC

15-5 Message Authentication Codes MAC M T K K =?

15-6 Message Authentication Codes Suppose Alice and Bob share a MAC key, and Bob receives a message with a correct MAC using that key. Then Bob can be assured that Alice is the one who sent that message, and that it hasn't been modified since she sent it! This is like a “signature” on the message. But it's not quite the same! Bob can't show that signature to Carol to prove Alice sent the message.

15-7 Message Authentication Codes Alice can just claim that Bob made up the message, and calculated the MAC himself. This is called repudiation; and we sometimes want to avoid it. Some interactions should be repudiable Private conversations Some interactions should be non-repudiable Electronic commerce

15-8 Digital signatures For non-repudiation, what we want is a true digital signature, with the following properties: If Bob receives a message with Alice's digital signature on it, then: Alice, and not an impersonator, sent the message, the message has not been altered since it was sent, and Bob can prove these facts to a third party. How do we arrange this? Use similar techniques to public-key cryptography.

15-9 Making digital signatures Remember public-key crypto: Separate keys for locking and unlocking Give everyone a copy of the locking key Keep the unlocking key secret To make a digital signature: Alice locks the message with her secret signature key. To verify Alice's signature: Bob unlocks the message with his copy of Alice's verification key. If it unlocks correctly, the signature is valid.

15-10 Making digital signatures Sign Verify M Sig VV T/F S Note that (Encryption, Decryption) key pairs for public- key encryption are not the same thing as (Signature, Verification) key pairs for digital signatures!

15-11 Hybrid signatures Just like public-key crypto, signing large messages is slow. We can also hybridize signatures to make them faster: Alice sends the (unsigned) message, and also a signature on a hash of the message. The hash is much smaller than the message, and so faster to sign and verify. Remember that authenticity and secrecy are separate; if you want both, you need to do both.

15-12 The Key Management Problem One of the hardest problems of public-key cryptography is that of key management. If Alice wants to send an encrypted message to Bob, how does she find out Bob's public key? She can know it personally (manual keying)‏ SSH does this She can trust a friend to tell her (web of trust)‏ PGP does this She can trust some third party to tell her (CA's)‏ SSL does this

15-13 Certificate authorities A CA is a trusted third party who keeps a directory of people's (and organizations') public keys Bob generates a public and private key pair, and sends the public part, as well as a bunch of personal info, to the CA. The CA generates a certificate consisting of Bob's personal information, as well as his public key. The entire certificate is signed with the CA's signature key. Everyone is assumed to have a copy of the CA's signature key, so they can verify the signature on the certificate.

15-14 Putting it all together We have all these blocks; now what? Put them together into protocols. This is HARD. Just because your pieces all work, doesn't mean what you build out of them will; you have to use the pieces correctly. Common mistakes include: Using the same stream cipher key for two messages Assuming encryption also provides integrity Falling for replay attacks or reaction attacks LOTS more!

15-15 Security controls using cryptography In what situations might it be appropriate to use cryptography as a security control? Remember that there needs to be some separation, since any secrets (like the key) need to be available to the legitimate users but not the adversaries In some situations, this may make symmetric-key crypto problematic If your web browser can decrypt its file containing your saved passwords, then an adversary who can read your web browser probably can, too How is this solved in practice?

15-16 Program and OS security Using symmetric-key crypto can be problematic for the above reason But public-key is OK, if the local machine only needs access to the public part of the key So only encryption and signature verification; no decryption or signing Common example: programs allow upgrades only if digitally signed OS may allow execution of programs only if signed

15-17 Encrypted code There is research into processors which will only execute encrypted code The processor will decrypt instructions before executing them The encryption key is processor-dependent Malware won't be able to spread without knowing the processor key Downsides?

15-18 OS authentication Authentication mechanisms sometimes use cryptography Unfortunately, people are bad at doing cryptography in their heads, so some hardware token is needed Photo from

15-19 Network security and privacy The primary use for cryptography “Separating the security of the medium from the security of the message” Entities you can only communicate with over a network are inherently less trustworthy They may not be who they claim to be

15-20 Network security and privacy Network cryptography is used at every layer of the network stack for both security and privacy applications: Link WEP, WPA, WPA2 Network VPN, IPSec Transport TLS / SSL, Tor Application ssh, PGP, OTR, Mixminion

15-21 Link-layer security controls Intended to protect local area networks Most common example today: WEP (Wired Equivalent Privacy)‏ WEP was intended to enforce three security goals: Confidentiality Prevent an adversary from learning the contents of your wireless traffic Access Control Prevent an adversary from using your wireless infrastructure Data Integrity Unfortunately, none of these is actually enforced!

15-22 WEP description Brief description: The sender and receiver share a secret k The secret k is either 40 or 104 bits long In order to transmit a message M: Compute a checksum c(M)‏ this does not depend on k Pick an IV (a random number) v and generate a keystream RC4(v,k)‏ XOR with the keystream to get the ciphertext Transmit v and the ciphertext over the radio link

15-23 WEP description Upon receipt of v and the ciphertext: Use the received v and the shared k to generate the keystream RC4(v,k)‏ XOR the ciphertext with RC4(v,k) to get Check to see if c’ = c(M’)‏ If it is, accept M’ as the message transmitted Problem number 1: v is 24 bits long Why is this a problem?

15-24 Recap Internet Application Security and Privacy Authentication Security controls using cryptography Link-layer security: WEP

15-25 Next time Internet Application Security and Privacy Link-layer security: WEP, WPA, WPA2 Network-layer security: VPN, IPSec Transport-layer security and privacy: TLS / SSL, Tor