Programming Satan’s Computer

Slides:



Advertisements
Similar presentations
Last Class: The Problem BobAlice Eve Private Message Eavesdropping.
Advertisements

1 Security in Wireless Protocols Bluetooth, , ZigBee.
Building web applications on top of encrypted data using Mylar Presented by Tenglu Liang Tai Liu.
Internet and Intranet Protocols and Applications Lecture 9a: Secure Sockets Layer (SSL) March, 2004 Arthur Goldberg Computer Science Department New York.
Sri Lanka Institute of Information Technology
Interlock Protocol - Akanksha Srivastava 2002A7PS589.
Authentication & Kerberos
1 Digital Signatures & Authentication Protocols. 2 Digital Signatures have looked at message authentication –but does not address issues of lack of trust.
Department of Information Engineering1 Major Concerns in Electronic Commerce Authentication –there must be proof of identity of the parties in an electronic.
Security Overview Hofstra University University College for Continuing Education - Advanced Java Programming Lecturer: Engin Yalt May 24, 2006.
Mar 11, 2003Mårten Trolin1 Previous lecture Diffie-Hellman key agreement Authentication Certificates Certificate Authorities.
Apr 22, 2003Mårten Trolin1 Agenda Course high-lights – Symmetric and asymmetric cryptography – Digital signatures and MACs – Certificates – Protocols Interactive.
Mar 4, 2003Mårten Trolin1 This lecture Diffie-Hellman key agreement Authentication Certificates Certificate Authorities.
Key Management public-key encryption helps address key distribution problems have two aspects of this: –distribution of public keys –use of public-key.
8-1 What is network security? Confidentiality: only sender, intended receiver should “understand” message contents m sender encrypts message m receiver.
Cryptographic Technologies
Authenticated Key Exchange. Lecture Outline Example of how poor security design can cause problems Design Principles for building security protocols Key.
EEC 693/793 Special Topics in Electrical Engineering Secure and Dependable Computing Lecture 7 Wenbing Zhao Department of Electrical and Computer Engineering.
More on AuthenticationCS-4513 D-term More on Authentication CS-4513 Distributed Computing Systems (Slides include materials from Operating System.
EEC 688/788 Secure and Dependable Computing Lecture 7 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Information Security of Embedded Systems : Algorithms and Measures Prof. Dr. Holger Schlingloff Institut für Informatik und Fraunhofer FIRST.
Introduction to Public Key Infrastructure (PKI) Office of Information Security The University of Texas at Brownsville & Texas Southmost College.
Homework #5 Solutions Brian A. LaMacchia Portions © , Brian A. LaMacchia. This material is provided without.
E- Business Digital Signature Varna Free University Prof. Teodora Bakardjieva.
Digital Signature Xiaoyan Guo/ Xiaohang Luo/
1 Introduction to Security and Cryptology Enterprise Systems DT211 Denis Manley.
ISNE101 Dr. Ken Cosh Week 14. This Week  Challenges (still) facing Modern IS  Reliability  Security.
Public-key Cryptography Strengths and Weaknesses Matt Blumenthal.
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.
IT 221: Introduction to Information Security Principles Lecture 6:Digital Signatures and Authentication Protocols For Educational Purposes Only Revised:
Untraceable Electronic Mail, Return Addresses, and Digital Pseudonyms David Chaum CACM Vol. 24 No. 2 February 1981 Presented by: Adam Lee 1/24/2006 David.
Information Security Fundamentals Major Information Security Problems and Solutions Department of Computer Science Southern Illinois University Edwardsville.
Cryptography, Authentication and Digital Signatures
CS526: Information Security Prof. Sam Wagstaff September 16, 2003 Cryptography Basics.
Security protocols  Authentication protocols (this lecture)  Electronic voting protocols  Fair exchange protocols  Digital cash protocols.
Digital Envelopes, Secure Socket Layer and Digital Certificates By: Anthony and James.
Internet Security. 2 PGP is a security technology which allows us to send that is authenticated and/or encrypted. Authentication confirms the identity.
11.1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 11 Message Integrity and Message Authentication.
Encryption Questions answered in this lecture: How does encryption provide privacy? How does encryption provide authentication? What is public key encryption?
Middleware for Secure Environments Presented by Kemal Altıntaş Hümeyra Topcu-Altıntaş Osman Şen.
Advanced Database Course (ESED5204) Eng. Hanan Alyazji University of Palestine Software Engineering Department.
Privacy versus Authentication Confidentiality (Privacy) –Interceptors cannot read messages Authentication: proving the sender’s identity –The Problem of.
1 Lecture 9: Cryptographic Authentication objectives and classification one-way –secret key –public key mutual –secret key –public key establishing session.
Lecture 16: Security CDK4: Chapter 7 CDK5: Chapter 11 TvS: Chapter 9.
Digital Signatures, Message Digest and Authentication Week-9.
Copyright 1999 S.D. Personick. All Rights Reserved. Telecommunications Networking II Lecture 41b Cryptography and Its Applications.
Cryptography: Digital Signatures Message Digests Authentication
Authentication Issues and Solutions CSCI 5857: Encoding and Encryption.
Public Key Encryption, Secure WWW Transactions & Digital Signatures.
Electronic Commerce School of Library and Information Science PGP and cryptography I. What is encryption? Cryptographic systems II. What is PGP? How does.
© Copyright 2009 SSLPost 01. © Copyright 2009 SSLPost 02 a recipient is sent an encrypted that contains data specific to that recipient the data.
Private key
Lecture 11 Overview. Digital Signature Properties CS 450/650 Lecture 11: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
User Authentication  fundamental security building block basis of access control & user accountability  is the process of verifying an identity claimed.
1 Authentication Protocols Rocky K. C. Chang 9 March 2007.
Lecture 9 Overview. Digital Signature Properties CS 450/650 Lecture 9: Digital Signatures 2 Unforgeable: Only the signer can produce his/her signature.
Fall 2006CS 395: Computer Security1 Key Management.
9.2 SECURE CHANNELS JEJI RAMCHAND VEDULLAPALLI. Content Introduction Authentication Message Integrity and Confidentiality Secure Group Communications.
Security By Meenal Mandalia. What is ? stands for Electronic Mail. much the same as a letter, only that it is exchanged in a different.
M2 Encryption techniques Gladys Nzita-Mak. What is encryption? Encryption is the method of having information such as text being converted into a format.
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.
Secure HTTP (HTTPS) Pat Morin COMP 2405.
Cryptographic Hash Function
Authenticated Key Exchange
– Communication Technology in a Changing World
ISNE101 Dr. Ken Cosh Week 13.
CDK4: Chapter 7 CDK5: Chapter 11 TvS: Chapter 9
The Secure Sockets Layer (SSL) Protocol
CDK: Chapter 7 TvS: Chapter 9
Presentation transcript:

Programming Satan’s Computer Ross Anderson and Roger Needham Presented by Bert Bruce

Satan’s Computer Computer under the control of an inimical force Can alter or intercept data Need to be able to detect when this happens

Overview Use of cryptography Doesn’t mean there is security Doesn’t mean data is protected The key to security is overall system and protocol design

Examples Prepaid Smartcard Encoded the current value Didn’t encode the rate Attacker can change the rate to be very low Then attacker gets much more for his money

Examples ATM Card Magnet stripe holds Account # and PIN (like name and password) Account # is embossed on card, so no point in encoding that PIN is encoded ATM machine reads Account # To verify, user must enter PIN that matches the one on the card

Examples ATM Card (cont.) ATM doesn’t have table matching Account # and PIN Attacker can alter the Account # on the magnetic stripe and leave PIN alone Attacker doesn’t need to know encryption algorithm ATM machine accepts attackers valid PIN but uses altered Account # Correct Method: Account # and PIN should be encrypted together

Examples Hacking Pay-per-view TV Hardware includes Authentication (Smartcard) Microcontroller Video decoder System can be hacked by Replacing any one of these Interposing attackers processor into one of the communications channels between these

Messaging Model C B A S S Attacker Authentication or Certification Server

Wide Mouthed Frog Protocol Uses symmetric encryption A wants to send to B using a short-lived encryption key S shares permanent keys with A and B: KAS and KBS A sends a timestamp, the name of the recipient (B) and the short-lived key to S (encrypted with KAS) S sends to B its own timestamp, the sender (A) and the key from A (encrypted with KBS)

Wide Mouthed Frog Protocol Now A and B have the temporary key and can exchange messages After they are done, key should time out But attacker can keep the key alive with the hope of stealing either A or B’s hardware (e.g. Smartcard)

Wide Mouthed Frog Protocol Attack method: C sends original message from S to B back to S This looks to S like a request to set up key with A, so S sets new timestamp C then intercepts message from S to A and sends it back to S, etc. This keeps the temporary alive for an indefinite time If C can get A or B’s cards, can then decrypt using the key

Challenge-Response Protocols Use shared key Protocol: A tells B he wants to converse B sends random number back to A A encrypts and returns it B decrypts – if match, then B knows it came from A

Challenge-Response Protocol Woo and Lam Variant A and B share keys with S, not each other B sends A’s name and encrypted message to S S decrypts A’s message and re-encrypts for B and sends it to B But if C starts communication with B at same time, can replace message from S to B regarding A with its own message Then B thinks C is A

Challenge-Response Protocol Solution is to include encrypted names in the messages as well Then C can’t pretend to be A Moral: if identity of principal is essential to meaning of message, include the identity in the message Don’t assume identity just because of from where it appears to come

Digital Signatures Based on symmetric Public Key Encryption Signer encrypts using private key Anyone can decrypt using the signer’s public key A signs message w/ private key and encrypts with B’s public key B decrypts message w/ private key and checks signature w/ A’s public key Redundant info in message can insure C hasn’t substituted his own message

Other Public Key Issues C can post a public key and claim it is from A This means security is required in key management But even then, if names not included in messages, C can masquerade as someone else

Middle Person Attack C pretends to be someone else by passing encrypted messages unchanged C passes message to B as if from A B responds to A. C can’t decode, he just passes to A A responds to C thinking message is from C C decodes and re-encodes response to B with B’s public key Again needs names in messages to prevent

Protocol Verification Logics Define logic rule language and apply to a protocol to attempt to find flaws Rules propagate assumptions/beliefs Either find flaw or can substantiate beliefs Several logics tried – results mixed One issue – do rules include “freshness” Public key methods are hard to formalize Most gain seems to come from formalization of protocol rather than automation

Some Robustness Principles Be explicit – goals, assumptions, purpose Put identity in message if it essential to meaning of message A signature attached to an encrypted message means nothing Signer may know nothing of contents Don’t confuse decryption with signature – 1st can be faked, 2nd can’t Uniquely identify protocol; runs – don’t allow replays

Explicitness Principle A cryptographic protocol should make any necessary naming, typing and freshness information explicit in its messages; designers must also be explicit about their starting assumptions and goals as well as any algorithm properties which could be used in an attack KISS doesn’t always work if simplicity removes vital information

Conclusions / Summary Programming a computer under malicious control is very difficult 2 possible approaches Formal methods Good rules of thumb Not necessary or sufficient – just useful Bottom line is be explicit More explicit ->can be more sure attacker has not intervened Possibly these principles apply to all programming Sometimes Murphy is as evil as Satan