Authentication in Dist Systems Presented in cs294-4 P2P Systems by Sailesh Krishnamurthy Oct 1 2003.

Slides:



Advertisements
Similar presentations
1 Key Exchange Solutions Diffie-Hellman Protocol Needham Schroeder Protocol X.509 Certification.
Advertisements

AUTHENTICATION AND KEY DISTRIBUTION
Overview Network security involves protecting a host (or a group of hosts) connected to a network Many of the same problems as with stand-alone computer.
Authentication Applications. will consider authentication functions will consider authentication functions developed to support application-level authentication.
1 Operating System vs. Network Security Butler Lampson Microsoft Outline What security is about Operating systems security Network security How they fit.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
Grid Security Infrastructure Tutorial Von Welch Distributed Systems Laboratory U. Of Chicago and Argonne National Laboratory.
Chapter 4 Authentication Applications. Objectives: authentication functions developed to support application-level authentication & digital signatures.
Grid Security. Typical Grid Scenario Users Resources.
Kerberos and PKI Cooperation Daniel Kouřil, Luděk Matyska, Michal Procházka Masaryk University AFS & Kerberos Best Practices Workshop 2006.
Computer Security Key Management
 Authorization via symmetric crypto  Key exchange o Using asymmetric crypto o Using symmetric crypto with KDC  KDC shares a key with every participant.
Lecture III : Communication Security, Services & Mechanisms Internet Security: Principles & Practices John K. Zao, PhD SMIEEE National Chiao-Tung University.
Spring 2002CS 4611 Security Outline Encryption Algorithms Authentication Protocols Message Integrity Protocols Key Distribution Firewalls.
Symmetric Key Distribution Protocol with Hybrid Crypto Systems Tony Nguyen.
Presented by Xiaoping Yu Cryptography and PKI Cosc 513 Operating System Presentation Presented to Dr. Mort Anvari.
CMSC 414 Computer and Network Security Lecture 20 Jonathan Katz.
More on AuthenticationCS-4513 D-term More on Authentication CS-4513 Distributed Computing Systems (Slides include materials from Operating System.
1 CS 194: Distributed Systems Security Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer Sciences.
Computer Security Tran, Van Hoai Department of Systems & Networking Faculty of Computer Science & Engineering HCMC University of Technology.
Security Keys, Signatures, Encryption. Slides by Jyrki Nummenmaa ‘
Cryptography  Why Cryptography  Symmetric Encryption  Key exchange  Public-Key Cryptography  Key exchange  Certification.
Cryptography, Authentication and Digital Signatures
Configuring Directory Certificate Services Lesson 13.
Authentication Applications Unit 6. Kerberos In Greek and Roman mythology, is a multi-headed (usually three-headed) dog, or "hellhound” with a serpent's.
© Oxford University Press 2011 DISTRIBUTED COMPUTING Sunita Mahajan Sunita Mahajan, Principal, Institute of Computer Science, MET League of Colleges, Mumbai.
Secure Credential Manager Claes Nilsson - Sony Ericsson
Module 5 Configuring Authentication. Module Overview Lesson 1: Understanding Classic SharePoint Authentication Providers Lesson 2: Understanding Federated.
Security protocols  Authentication protocols (this lecture)  Electronic voting protocols  Fair exchange protocols  Digital cash protocols.
Key Management. Session and Interchange Keys  Key management – distribution of cryptographic keys, mechanisms used to bind an identity to a key, and.
The TAOS Authentication System: Reasoning Formally About Security Brad Karp UCL Computer Science CS GZ03 / M th November, 2008.
Lecture 16: Security CDK4: Chapter 7 CDK5: Chapter 11 TvS: Chapter 9.
Biometric Authentication in Distributed Computing Environments Vijai Gandikota Karthikeyan Mahadevan Bojan Cukic.
Cryptography and Network Security Chapter 14 Fourth Edition by William Stallings Lecture slides by Lawrie Brown.
Legion - A Grid OS. Object Model Everything is object Core objects - processing resource– host object - stable storage - vault object - definition of.
Kerberos Guilin Wang School of Computer Science 03 Dec
3/15/01CSCI {4,6}900: Ubiquitous Computing1 Announcements.
Module 2: Introducing Windows 2000 Security. Overview Introducing Security Features in Active Directory Authenticating User Accounts Securing Access to.
1 Computer Security in the Real World Butler Lampson What people want from computer security is to be as secure with computers as they are in the real.
6.033 Quiz3 Review Spring How can we achieve security? Authenticate agent’s identity Verify the integrity of the request Check the agent’s authorization.
@Yuan Xue CS 285 Network Security Key Distribution and Management Yuan Xue Fall 2012.
Dr. Nermi hamza.  A user may gain access to a particular workstation and pretend to be another user operating from that workstation.  A user may eavesdrop.
Prof. Reuven Aviv, Nov 2013 Public Key Infrastructure1 Prof. Reuven Aviv Tel Hai Academic College Department of Computer Science Public Key Infrastructure.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
TAG Presentation 18th May 2004 Paul Butler
Jun Rao co-founder at Confluent, Inc
Security Outline Encryption Algorithms Authentication Protocols
Grid Security.
Cryptography Why Cryptography Symmetric Encryption
Computer Communication & Networks
Cryptography and Network Security
TAG Presentation 18th May 2004 Paul Butler
Authentication Applications
THE STEPS TO MANAGE THE GRID
Kerberos: An Authentication Service for Open Network Systems
Security in ebXML Messaging
The New Virtual Organization Membership Service (VOMS)
Message Digest Cryptographic checksum One-way function Relevance
Chapt. 10 – Key Management Dr. Wayne Summers
Computer Security Distributed System Security
Secure Electronic Transaction (SET) University of Windsor
Kerberos Kerberos is an authentication protocol for trusted hosts on untrusted networks.
O. Otenko PERMIS Project Salford University © 2002
CDK4: Chapter 7 CDK5: Chapter 11 TvS: Chapter 9
Chapter 4 Cryptography / Encryption
COMPSCI210 Recitation 5 Oct 2012 Vamsi Thummala
CDK: Chapter 7 TvS: Chapter 9
Advanced Computer Networks
Lecture 6.2: Protocols - Authentication and Key Exchange II
Presentation transcript:

Authentication in Dist Systems Presented in cs294-4 P2P Systems by Sailesh Krishnamurthy Oct

Access Control Authentication Model elements: Objects, resources (files,processes etc) Requests to perform operations on objects Principals - request sources, use Channels Guardian - request validator Easy in centralized systems OS implements all channels, “knows” all principals Hard in distributed systems Long path from request originator Different kinds of channels Parts can break, get inaccessible

Paper contributions Authentication theory for distributed systems (why theory ?) Assumptions about authority and trust Formally represent these assumptions Carefully examine the assumptions Describes a practical system based on the theory Uses the theory to explain several mechanisms

Concepts Principals Simple People: Lampson, Abadi Machines: coeus, mammoth Roles: manager, secretary Named sets of principals: Services, Groups Channels (principals that “say” things) Wires, IO ports, N/W addr, encryption keys Compound principals Roles: Abadi as manager Delegations: Mike for Burrows Conjunctions: Lampson ^ Wobber

Statements Statements - made by principals Simple: request for file foobar.tex Compound: Bob as secretary requests file bar.tex Trusted Computing Base - keep it small

Statements Primitive statements (e.g. “read file foo”) s^s’ (s and s’) s  s’ (s implies s’) s  s’ (s is equivalent to s’) If ‘A’ is a principal and ‘s’ is a statement, A says s is a statement If ‘A’ and ‘B’ are principals A  B (A speaks for B) is a statement A | B ( A quotes B) is a statement

More on statements Needham-Schroeder auth ticket {K ab,A}K s can be written:K bs says K ab  A If ‘s’ is an axiom it is represented as  s. Some axioms:  (A says s ^ A says (s  s’))  A says s’ If  s then  A says s for every principal A  A says (s ^ s’)  (A says s) ^ (A says s’)

Principals Let ‘A’ and ‘B’ be principals, ‘C’ be a channel. (A^B) says s  (A says s) ^ (B says s) (A|B) says s  (A says B says s) What if A lied - B did not say s ? (A  B)  ((A says s)  (B says s))

Tools: handoffs, joint authorities  (A says (B  A))  (B  A) If you see A says s, simply conclude ‘s’ if it is of the form B  A. Simply states that A allows B to speak for itself. Third Parties!  ((A’  A) ^ A’ says (B  A))  (B  A) Joint Authorities  ((A’^B  B) ^ (B  A’))  (B  A)

Joint authorities Useful for certificate revocation Refreshing requires source availability Hard to make a source that is both: Secure Highly available Solution: use 2 sources One is highly secure with a long lifetime Other is highly available, uses a short lifetime However, both must agree to validate certificate

Channels and Encryption Encryption channel: Dec(K,Enc(K -1,x)) = x for a message x Encryption enforces: Security: If you know Enc(K -1,x) but not K, then should not be able to compute x Integrity: If you know x but not K -1 should not compute a y such that Dec(K,y) = x 2 forms: public keys, shared keys Public keys can be simulated with stateless symmetric key

Named principals Pull vs Push to get credentials Pull: receiver looks up named principal to get credential Push: sender provides credentials CA: external certificate authority Paths: able to trace “up” and “down” an authority tree Groups:Members “speak for” groups Certificates: P1 => G, P2 => G etc. Or, for each member Pi, store Enc(K p,K g -1 ) in G’s database

Roles and Programs Can be run with different priorities Use digests (MD5) of prog text to confirm identity Similar to booting a machine Different OS’s on a given machine

Other stuff Delegation Login (session keys) Authenticating IPC Use authenticating agents Access Control Standard ACL plus theory

Relevance to P2P systems ? How can peers authenticate themselves to each other ? RIAA trace lookups for file sharing systems ? Authenticate steps in multiple-hop DHTs (like Chord/Viceroy) in a manner similar to the paths ?