APPLYING FORMAL METHODS TO CRYPTOGRAPHIC PROTOCOL ANALYSIS: EMERGING ISSUES AND TRENDS



Similar documents
This Course. Modelling and Analysing of Security Protocol: Lecture 1. Introductions to Modelling Protocols. Course Outline. Course Outline.

Principles of Network Security

Information Security Basic Concepts

Chapter 8 Security. IC322 Fall Computer Networking: A Top Down Approach. 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012

TELE 301 Network Management. Lecture 18: Network Security

Q: Why security protocols?

Public Key Encryption Protocols And Their Models

Chapter 7: Network security

CUNSHENG DING HKUST, Hong Kong. Computer Security. Computer Security. Cunsheng DING, HKUST COMP4631

Formal Methods in Security Protocols Analysis

Network Security (2) CPSC 441 Department of Computer Science University of Calgary

Electronic Voting Protocol Analysis with the Inductive Method

Computational Soundness of Symbolic Security and Implicit Complexity

Notes on Network Security - Introduction

Network Security. HIT Shimrit Tzur-David

Modeling and verification of security protocols

CPSC 467: Cryptography and Computer Security

Authentication requirement Authentication function MAC Hash function Security of

Trust but Verify: Authorization for Web Services. The University of Vermont

Cryptography and Network Security: Summary

Lectures 5-6: Taylor Series

How to Formally Model Features of Network Security Protocols

Content Teaching Academy at James Madison University

Discovering Attacks on Security Protocols by Refuting Incorrect Inductive Conjectures

STATUS REPORT ON MAUDE-NPA TOOL

IPSEC: IKE. Markus Hidell Based on material by Vitaly Shmatikov, Univ. of Texas, and by the previous course teachers

Software Tool for Implementing RSA Algorithm

Why Cryptosystems Fail. By Ahmed HajYasien

Final exam review, Fall 2005 FSU (CIS-5357) Network Security

Network Security. Abusayeed Saifullah. CS 5600 Computer Networks. These slides are adapted from Kurose and Ross 8-1

What is network security?

Lecture 9 - Message Authentication Codes

Client Server Registration Protocol

An Overview of Common Adversary Models

Module 7 Security CS655! 7-1!

SECURITY IN NETWORKS

Server-Assisted Generation of a Strong Secret from a Password

IPsec Details 1 / 43. IPsec Details

TELECOMMUNICATION NETWORKS

Lecture II : Communication Security Services

Outline. Computer Science 418. Digital Signatures: Observations. Digital Signatures: Definition. Definition 1 (Digital signature) Digital Signatures

MANAGED FILE TRANSFER: 10 STEPS TO SOX COMPLIANCE

Part I. Universität Klagenfurt - IWAS Multimedia Kommunikation (VK) M. Euchner; Mai Siemens AG 2001, ICN M NT

Dr. Arjan Durresi. Baton Rouge, LA These slides are available at:

SecureCom Mobile s mission is to help people keep their private communication private.

Chap. 1: Introduction

CS 494/594 Computer and Network Security

Adversary Modelling 1

A Server and Browser-Transparent CSRF Defense for Web 2.0 Applications. Slides by Connor Schnaith

Verifying security protocols using theorem provers

White Paper: Multi-Factor Authentication Platform

Ch.9 Cryptography. The Graduate Center, CUNY.! CSc Theoretical Computer Science Konstantinos Vamvourellis

Table: Security Services (X.800)

COSC 472 Network Security


Practice Questions. CS161 Computer Security, Fall 2008

Distributed Denial of Service Attacks & Defenses

ensure prompt restart of critical applications and business activities in a timely manner following an emergency or disaster

Victor Shoup Avi Rubin. Abstract

Vulnerabilities of Intrusion Detection Systems in Mobile Ad-hoc Networks - The routing problem

Simulation-Based Security with Inexhaustible Interactive Turing Machines

Lecture 2: Complexity Theory Review and Interactive Proofs

Cryptography for Software and Web Developers

SSL/TLS: The Ugly Truth

A Secure & Efficient Data Integrity Model to establish trust in cloud computing using TPA

Part 2 D(E(M, K),K ) E(M, K) E(M, K) Plaintext M. Plaintext M. Decrypt with private key. Encrypt with public key. Ciphertext

Qualified Electronic Signatures Act (SFS 2000:832)

SIP and VoIP 1 / 44. SIP and VoIP

KEY DISTRIBUTION: PKI and SESSION-KEY EXCHANGE. Mihir Bellare UCSD 1

Public Cloud Security: Surviving in a Hostile Multitenant Environment

SFWR ENG 4C03 - Computer Networks & Computer Security

Yale University Department of Computer Science

Key Management. CSC 490 Special Topics Computer and Network Security. Dr. Xiao Qin. Auburn University

Overview of Cryptographic Tools for Data Security. Murat Kantarcioglu

Outline. CSc 466/566. Computer Security. 8 : Cryptography Digital Signatures. Digital Signatures. Digital Signatures... Christian Collberg

Data Storage Security in Cloud Computing

Name: 1. CSE331: Introduction to Networks and Security Fall 2003 Dec. 12, /14 2 /16 3 /16 4 /10 5 /14 6 /5 7 /5 8 /20 9 /35.

Authentication Types. Password-based Authentication. Off-Line Password Guessing

Security (WEP, WPA\WPA2) 19/05/2009. Giulio Rossetti Unipi

Understanding Digital Certificates and Wireless Transport Layer Security (WTLS)

CSC Network Security. User Authentication Basics. Authentication and Identity. What is identity? Authentication: verify a user s identity

Module: Applied Cryptography. Professor Patrick McDaniel Fall CSE543 - Introduction to Computer and Network Security

Chapter 16: Authentication in Distributed System

Textbooks: Matt Bishop, Introduction to Computer Security, Addison-Wesley, November 5, 2004, ISBN

CS 356 Lecture 28 Internet Authentication. Spring 2013

Secure Network Communications FIPS Non Proprietary Security Policy

RSA Attacks. By Abdulaziz Alrasheed and Fatima

2.4: Authentication Authentication types Authentication schemes: RSA, Lamport s Hash Mutual Authentication Session Keys Trusted Intermediaries

Authenticated Encryption: Relations among Notions and Analysis of the Generic Composition Paradigm By Mihir Bellare and Chanathip Namprempre

Transcription:

PPLYING FORML METHODS TO CRYPTOGRPHIC PROTOCOL NLYSIS: EMERGING ISSUES ND TRENDS Catherine Meadows Code 5543 Center for High ssurance Computer Systems US Naval Research Laboratory Washington, DC 20375 meadows@itd.nrl.navy.mil http://chacs.nrl.navy.mil

WHT IS CRYPTOGRPHIC PROTOCOL ND WHY DO WE CRE? cryptographic protocol is a communication protocol that uses encryption to: Distribute keys uthenticate principals Process transactions securely Must operate in hostile environment in which traffic may be intercepted, altered or destroyed Distributed programs are hard to design; distributed programs running in hostile environments are harder One way of addressing problem: develop automated techniques for the analysis of cryptographic protocols

EXMPLE: CCITT DRFT STNDRD X.509 (1987) and B want to verify origin and recency of messages Protocol uses public key crypto and B possess public keys K and K B, private keys K and K B nyone can send K [X] to, only can read X If sends K [X], anyone can compute K [K [X]] = X and verify X came from and B both have the capacity to generate nonces generates a nonce N (random number) and sends it to B B returns K B [X,N] knows B sent X after created N

THE PROTOCOL (simplified), K [N,B,X ] B B B, K B [N B,, N,X B ] K [N B ] B Bob knows third message is recent Third message appears to be linked to second by N B Second message appears to be linked to first by N Is this enough?

NO! (Burrows, badi, Needham, 1989), K [N,B,X ] (old message from ) B B, K B [N B,, N,X B ] Intruder causes to initiate communication with it, K [N,I,X ] B I, K I [N B,, N,X I ] K [N B ] K [N B ] B

MIN TECHNIQUES USED Theorem proving State properties of protocols as theorems to be proved Prove or check proofs automatically Model Checking Two components finite state system specification of properties (typically stated in temporal logic) that the system must satisfy Exhaustively search the state space to determine whether or not properties always satisfied combination seems to work best for crypto protocols Benefits of theorem proving Crypto protocols are infinite state systems Inductive theorem proving helps to reduce infinite state space to a finite one Benefits of model checking Exhaustive search finds attacks if they exist Usually more informative than inability to prove a security property

SOME ISSUES Incorporating cryptographic notions of correctness into security proofs What properties do you need to be able to prove about the encryption functions a protocol uses? Protocols with unbounded number of participants E.g. group key distribution protocols Probabilistic behavior of protocols Some protocols designed to decrease probability of successful attack Protocols designed to resist traffic analysis Protocols designed to resist denial of service attack Scaling up, responding to change, etc. Much good work being done on these topics

IN WHT WYS CN CRYPTOGRPHIC PROTOCOLS INCRESE TRUST IN SYSTEM They can guarantee that communication is kept secret Keys only distributed to principals that are supposed to have them They can guarantee that communication is authenticated message is from who it says its from, and it was sent in the declared context They can guarantee some other properties as well Resistance to traffic analysis (hide source and destination from outsiders) Resistance to denial-of-service attacks Much of formal analysis of cryptographic protocols consists of precisely formulating and verifying these properties

WHT CRYPTOGRPHIC PROTOCOLS CN T DO Can t guarantee that entities sending and receiving data are themselves trustworthy Can t provide any guarantees about what is done with data once it is received Can t guarantee even that there is any coherent policy for handling data ll these can be only guaranteed by an analysis of the system as a whole

QUESTIONS BOUT CRYPTOGRPHIC PROTOCOL NLYSIS ND SYSTEM TRUST Given distributed system that uses cryptographic protocols to communicate particular policy that that system must enforce How Do you derive the security properties that the cryptographic protocols must satisfy? Do you prove that these security properties hold? Do you decide what are the responsibilities of the protocol and what are the responsibilities of other parts of the system? In short, how do you integrate cryptographic protocol analysis into secure system analysis as a whole?