Trustworthy Services from Untrustworthy Components: Overview Fred B. Schneider Department of Computer Science Cornell University Ithaca, New York 14853.

Slides:



Advertisements
Similar presentations
SCSC 455 Computer Security
Advertisements

Key Management. Shared Key Exchange Problem How do Alice and Bob exchange a shared secret? Offline – Doesnt scale Using public key cryptography (possible)
Key distribution and certification In the case of public key encryption model the authenticity of the public key of each partner in the communication must.
Kerberos 1 Public domain image of Heracles and Cerberus. From an Attic bilingual amphora, 530–520 BC. From Italy (?).
ECE454/CS594 Computer and Network Security Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall 2011.
Last Class: The Problem BobAlice Eve Private Message Eavesdropping.
Distribution and Revocation of Cryptographic Keys in Sensor Networks Amrinder Singh Dept. of Computer Science Virginia Tech.
SSL CS772 Fall Secure Socket layer Design Goals: SSLv2) SSL should work well with the main web protocols such as HTTP. Confidentiality is the top.
Trustworthy Services from Untrustworthy Components: Overview Fred B. Schneider Department of Computer Science Cornell University Ithaca, New York
1 Digital Signatures & Authentication Protocols. 2 Digital Signatures have looked at message authentication –but does not address issues of lack of trust.
1/6/2015HostAP1 P2P Security Case Study: COCA (Cornell Online Certification Authority) Mobile Multimedia Lab, AUEB, 04/04/2003.
Kerberos and PKI Cooperation Daniel Kouřil, Luděk Matyska, Michal Procházka Masaryk University AFS & Kerberos Best Practices Workshop 2006.
1 Cryptography and Network Security Third Edition by William Stallings Lecturer: Dr. Saleem Al_Zoubi.
Lecture III : Communication Security, Services & Mechanisms Internet Security: Principles & Practices John K. Zao, PhD SMIEEE National Chiao-Tung University.
CS555Spring 2012/Topic 161 Cryptography CS 555 Topic 16: Key Management and The Need for Public Key Cryptography.
Introduction to PKI Seminar What is PKI? Robert Brentrup July 13, 2004.
Feb 25, 2003Mårten Trolin1 Previous lecture More on hash functions Digital signatures Message Authentication Codes Padding.
1 Principles of Reliable Distributed Systems Lecture 3: Synchronous Uniform Consensus Spring 2006 Dr. Idit Keidar.
CMSC 414 Computer and Network Security Lecture 6 Jonathan Katz.
L. Zhou, Z.J. Haas: Securing Ad Hoc Networks, (26) L. Zhou and Z. J. Haas, Cornell University: Securing Ad Hoc Networks presented by Johanna Vartiainen.
CMSC 414 Computer (and Network) Security Lecture 2 Jonathan Katz.
“Managing Update Conflicts in Bayou, a Weakly Connected Replicated Storage System ” Distributed Systems Κωνσταντακοπούλου Τζένη.
CMSC 414 Computer and Network Security Lecture 21 Jonathan Katz.
Mar 5, 2002Mårten Trolin1 Previous lecture More on hash functions Digital signatures Message Authentication Codes Padding.
2/23/2009CS50901 Implementing Fault-Tolerant Services Using the State Machine Approach: A Tutorial Fred B. Schneider Presenter: Aly Farahat.
CMSC 414 Computer and Network Security Lecture 22 Jonathan Katz.
Kemal AkkayaWireless & Network Security 1 Department of Computer Science Southern Illinois University Carbondale CS 591 – Wireless & Network Security Lecture.
CMSC 414 Computer and Network Security Lecture 24 Jonathan Katz.
Applied Cryptography for Network Security
1 CS 194: Distributed Systems Security Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer Sciences.
1 CS 194: Distributed Systems Security Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer Sciences.
Alexander Potapov.  Authentication definition  Protocol architectures  Cryptographic properties  Freshness  Types of attack on protocols  Two-way.
MOCA : Mobile Certificate Authority for Wireless Ad Hoc Networks The 2nd Annual PKI Research Workshop (PKI 2003) Seung Yi, Robin Kravets September. 25,
Software Dependability CIS 376 Bruce R. Maxim UM-Dearborn.
Security Considerations for Wireless Sensor Networks Prabal Dutta (614) Security Considerations for Wireless Sensor Networks.
Fault Tolerance via the State Machine Replication Approach Favian Contreras.
Failure Resilience in the Peer-to-Peer-System OceanStore Speaker: Corinna Richter.
Where Fault-tolerance and Security Meet DARPA PI Meeting, July 2001 Fred B. Schneider Department of Computer Science Cornell University Ithaca, New York.
Aggregation in Sensor Networks
1 Secure Ad-Hoc Network Eunjin Jung
Cryptography, Authentication and Digital Signatures
Chapter 3: Basic Protocols Dulal C. Kar. Key Exchange with Symmetric Cryptography Session key –A separate key for one particular communication session.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Practical Byzantine Fault Tolerance
Byzantine fault-tolerance COMP 413 Fall Overview Models –Synchronous vs. asynchronous systems –Byzantine failure model Secure storage with self-certifying.
Fall 2010/Lecture 321 CS 426 (Fall 2010) Key Distribution & Agreement.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED.
Csci5233 computer security & integrity 1 Cryptography: an overview.
1 KERBEROS: AN AUTHENTICATION SERVICE FOR OPEN NETWORK SYSTEMS J. G. Steiner, C. Neuman, J. I. Schiller MIT.
1 Network Security Lecture 7 Overview of Authentication Systems Waleed Ejaz
CS453: Introduction to Information Security for E-Commerce Prof. Tom Horton.
Traditional Security Issues Confidentiality –Prevent unauthorized access or reading of information Integrity –Insure that writing or operations are allowed.
Re-Configurable Byzantine Quorum System Lei Kong S. Arun Mustaque Ahamad Doug Blough.
PROACTIVE SECRET SHARING Or: How to Cope With Perpetual Leakage Herzberg et al. Presented by: Avinash Ravi Kevin Skapinetz.
Systems Research Barbara Liskov October Replication Goal: provide reliability and availability by storing information at several nodes.
Distributed Storage Systems: Data Replication using Quorums.
TRUSTED FLOW: Why, How and Where??? Moti Yung Columbia University.
Problem: Replication versus Confidentiality
Network Security Celia Li Computer Science and Engineering York University.
9.2 SECURE CHANNELS JEJI RAMCHAND VEDULLAPALLI. Content Introduction Authentication Message Integrity and Confidentiality Secure Group Communications.
Pertemuan #8 Key Management Kuliah Pengaman Jaringan.
Fail-Stop Processors UNIVERSITY of WISCONSIN-MADISON Computer Sciences Department CS 739 Distributed Systems Andrea C. Arpaci-Dusseau One paper: Byzantine.
Department of Computer Science Chapter 5 Introduction to Cryptography Semester 1.
CMSC 414 Computer and Network Security Lecture 2 Jonathan Katz.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Fourth Edition by William Stallings Lecture slides by Lawrie Brown
Cryptography: an overview
Intrusion Tolerant Architectures
Providing Secure Storage on the Internet
Cryptography: an overview
Presentation transcript:

Trustworthy Services from Untrustworthy Components: Overview Fred B. Schneider Department of Computer Science Cornell University Ithaca, New York U.S.A. Joint work with Lidong Zhou and Robbert van Renesse.

1 Fault-tolerance by Replication The “fine print” … l Replica failures are independent. l Replica coordination protocol exists. l No secrets stored in server’s state. Servers Client

2 Trustworthy Services A trustworthy service… –tolerates component failures –tolerates attacks –might involve confidential data N.b. Cryptographic keys must be kept confidential and are useful for authentication, even when data is not secret.

3 Revisiting the “Fine Print” l Replica failures are independent. l Replica Coordination protocol exists. l No secrets stored in server’s state.

4 Revisiting the “Fine Print” l Replica failures are independent. –But attacks are not independent. l Replica Coordination protocol exists. l No secrets stored in server’s state.

5 Revisiting the “Fine Print” l Replica failures are independent. –But attacks are not independent. l Replica Coordination protocol exists. –But such protocols involve assumptions, and assumptions are vulnerabilities.  Timing assumptions versus Denial of Service l No secrets stored in server’s state.

6 Revisiting the “Fine Print” l Replica failures are independent. –But attacks are not independent. l Replica Coordination protocol exists. –But such protocols involve assumptions, and assumptions are vulnerabilities.  Timing assumptions versus Denial of Service l No secrets stored in server’s state. –But secrets cannot be avoided for authentication  Replicating a secret erodes confidentiality.

7 Compromised Components Correct component satisfies specification. Compromised component does not. –Adversary might control a compromised component. –Component is compromised if adversary knows secrets being stored there. A recovery protocol transforms component: compromised  correct

8 Component Correlation Components are correlated to the extent that one attack suffices to compromise all. Correlation arises from: –Dependence on the environment –Vulnerabilities in shared design / code –Shared secrets Goal: Eliminate sources of correlation.

9 Correlation: Environment Vulnerabilities Vulnerabilities = Assumptions –Weaker assumptions are better.  “Synchronous system” assumption: –Bounded message delivery delay –Bounds on process execution speed violated by denial of service attacks needed for “agreement protocols” in deterministic systems [FLP]

10 Correlation > Towards Weaker Assumptions: Eschewing Synchronous Systems Asynchronous system model is weaker but requires making “sacrifices”: –Sacrifice determinacy:  Use “randomized protocols” (requires randomness) –Sacrifice liveness but preserve safety. –Sacrifice state machine replication  Use quorums or other weaker mechanisms  Some service semantics cannot be implemented.

11 Component Correlation Correlation arises from: –Dependence on environment –Vulnerabilities in shared design / code –Shared secrets

12 Correlation: Eschewing Shared Design / Code Solution: Diversity!  Expensive or impossible to obtain: Development costs Interoperability risks Still, what diversity does exist should be leveraged.

13 Correlation > Leveraging Extant Diversity: Adversary Structures t-resilience: Service is not compromised unless more than t components are. –Known as a threshold structure. FS-resilience: If FS = {F 1, F 2, … F r } then service not compromised provided the set C of compromised components satisfies C  F i for some i. –Select FS according to dimensions of diversity. –Known as an adversary structure.

14 Component Correlation Correlation arises from: –Dependence on environment –Vulnerabilities in shared design / code –Shared secrets

15 Correlation: Eliminating Shared Secrets l (n,t) secret sharing [Shamir, Blakley] : –Secret s is divided into n shares. –Any t or more shares suffice for reconstructing s. –Fewer shares convey no information about s. –Can be adapted for arbitrary adversary structures. l Threshold cryptography: –Perform cryptographic operations piecewise using shares of private key; result is as if private key was used. Example: Threshold digital signatures

16 Proactive Recovery When is recovery protocol run? –After an attack is detected.  Not sufficient to reboot from good system image. Must get system state (or have stateless service). Must also “refresh” secrets. –Periodically, even if an attack is not detected.  Not all attacks are detected, proactive recovery defends against undetected attacks.  Adversary strategy: Increase the window of vulnerability, interval between proactive recovery executions.

17 Proactive Recovery: Secret Refresh l Refresh secret shares: PSS and APSS l Refresh symmetric keys:  Revisit KDC.  Force new password choices. l Refresh public / private key pairs:  Invent new server private key  Must disseminate new server public key.

18 Proactive Recovery > Secret Refresh: Refresh Private / Public Keys I Approach: Tamper proof hardware. –Key material stored in tamper-resistant hw.  Key cannot be read or modified.  Attacker can still instigate crypto operations with key. Protocols must accommodate such possible rogue behavior.

19 Proactive Recovery > Secret Refresh: Refresh Private / Public Keys II Approach: Use off-line private keys. –New public keys are propagated through a secure out-of-band channel.  Use off-line private keys to sign the new public keys.  Components storing off-line keys can be connected to network using a one-way channel (e.g. “pump”).

20 Proactive Recovery > Secret Refresh: Refresh Private / Public Keys III Approach: Assume “awareness” of attacks. –System-wide private key shared among components.  Component generates new private key  Component uses old private key to sign new public key.  Component requests system sign new public key.  System refuses to sign new public key if old private key already subsumed. Out of band process then invoked.

21 Proactive Recovery: Transparency and Change I Scalability concerns dictate that clients be shielded from changes due to proactive recovery. l Service public / private key: –Proactive secret sharing changes private key shares without changing private key (or public key). l Server identities: –A single contacted server operates as a delegate. –Service key signs responses to client. –Self-verifying messages impede rogue delegates from spoofing as clients.

22 Proactive Recovery: Transparency and Change II l Server public keys. If client must know… –Local certificate:   Signed by server using server’s off-line key –Global certificate:  Local certificate signed by service private key Service signs only if local signature on certificate is valid Use t+1 threshold crypto for service signature  Stored at 2t+1 servers. (Out of 3t+1) –Client obtains current public key for server i:  Retrieve global certificate for all servers from 2t+1 servers  epoch numbers in t+1 sets will be the same---that is current

23 Research Programme Trajectory l Cornell On-line Certification Authority (COCA) l Asynchronous Proactive Secret Sharing (APSS) l Distributed Blinding Protocol l Codex Secret Store Key ideas: –Weak computational models (asynchronous) –Thresholdization [sic] / “multi-party computation” –Proactive protocols (vs Transparency)