An Introduction to Distributed Security Concepts and Public Key Infrastructure (PKI) Mary Thompson.

Slides:



Advertisements
Similar presentations
Public Key Infrastructure and Applications
Advertisements

Internet Protocol Security (IP Sec)
AUTHENTICATION AND KEY DISTRIBUTION
Chapter 14 – Authentication Applications
Authentication Applications. will consider authentication functions will consider authentication functions developed to support application-level authentication.
Kerberos 1 Public domain image of Heracles and Cerberus. From an Attic bilingual amphora, 530–520 BC. From Italy (?).
PIS: Unit III Digital Signature & Authentication Sanjay Rawat PIS Unit 3 Digital Sign Auth Sanjay Rawat1 Based on the slides of Lawrie.
Public Key Infrastructure A Quick Look Inside PKI Technology Investigation Center 3/27/2002.
Lecture 5: Cryptographic Hashes
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
An Introduction to Distributed Security Concepts and Public Key Infrastructure (PKI) Mary Thompson, Oleg Kolesnikov Berkeley National Laboratory, 1 Cyclotron.
Grid Computing, B. Wilkinson, 20045a.1 Security Continued.
Internet and Intranet Protocols and Applications Lecture 9a: Secure Sockets Layer (SSL) March, 2004 Arthur Goldberg Computer Science Department New York.
1 Lecture 17: SSL/TLS history, architecture basic handshake session initiation/resumption key computation negotiating cipher suites application: SET.
Cryptography and Network Security
Kerberized Credential Translation Olga Kornievskaia Peter Honeyman Bill Doster Kevin Coffman Center for Information Technology Integration University of.
Socket Layer Security. In this Presentation: need for web security SSL/TLS transport layer security protocols HTTPS secure shell (SSH)
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
Computer Security: Principles and Practice EECS710: Information Security Professor Hossein Saiedian Fall 2014 Chapter 23: Internet Authentication Applications.
Chapter 14 From Cryptography and Network Security Fourth Edition written by William Stallings, and Lecture slides by Lawrie Brown, the Australian Defence.
Web Security CS-431. HTTP Authentication Protect web content from those who don’t have a “need to know” Require users to authenticate using a userid/password.
Lecture 23 Internet Authentication Applications
Authentication Cristian Solano. Cryptography is the science of using mathematics to encrypt and decrypt data. Public Key Cryptography –Problems with key.
Environmental Council of States Network Authentication and Authorization Services The Shared Security Component February 28, 2005.
Public Key Infrastructure (PKI) Providing secure communications and authentication over an open network.
An Introduction to Distributed Security Concepts and Public Key Infrastructure (PKI) Mary Thompson Oleg Kolesnikov.
An Introduction to Security Concepts and Public Key Infrastructure (PKI) Mary Thompson.
Introduction to PKI Seminar What is PKI? Robert Brentrup July 13, 2004.
Copyright © Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE CSci530: Computer Security Systems Authentication.
Chapter 8 Web Security.
TrustPort Public Key Infrastructure. Keep It Secure Table of contents  Security of electronic communications  Using asymmetric cryptography.
Digital Signature Xiaoyan Guo/ Xiaohang Luo/
JSSE API University of Palestine Eng. Wisam Zaqoot April 2010.
CSCI 6962: Server-side Design and Programming
Part Two Network Security Applications Chapter 4 Key Distribution and User Authentication.
SYSTEM ADMINISTRATION Chapter 13 Security Protocols.
Secure Socket Layer (SSL)
SSL / TLS in ITDS Arun Vishwanathan 23 rd Dec 2003.
Lecture 23 Internet Authentication Applications modified from slides of Lawrie Brown.
Behzad Akbari Spring 2012 (These slides are based on lecture slides by Lawrie Brown)
Computer Security: Principles and Practice First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown Chapter 22 – Internet Authentication.
Introduction to Secure Sockets Layer (SSL) Protocol Based on:
Unit 1: Protection and Security for Grid Computing Part 2
Chapter 23 Internet Authentication Applications Kerberos Overview Initially developed at MIT Software utility available in both the public domain and.
Cryptography and Network Security (CS435) Part Fourteen (Web Security)
Certificate-Based Operations. Module Objectives By the end of this module participants will be able to: Define how cryptography is used to secure information.
Chapter 21 Distributed System Security Copyright © 2008.
Authentication 3: On The Internet. 2 Readings URL attacks
X.509 Topics PGP S/MIME Kerberos. Directory Authentication Framework X.509 is part of the ISO X.500 directory standard. used by S/MIME, SSL, IPSec, and.
Washington System Center © 2005 IBM Corporation August 25, 2005 RDS Training Secure Socket Layer (SSL) Overview z/Series Security (Mary Sweat, Greg Boyd)
Cryptography and Network Security Chapter 14 Fourth Edition by William Stallings Lecture slides by Lawrie Brown.
1 Kerberos – Private Key System Ahmad Ibrahim. History Cerberus, the hound of Hades, (Kerberos in Greek) Developed at MIT in the mid 1980s Available as.
Security fundamentals Topic 5 Using a Public Key Infrastructure.
CPS Computer Security Tutorial on Creating Certificates SSH Kerberos CPS 290Page 1.
Pertemuan #8 Key Management Kuliah Pengaman Jaringan.
Key management issues in PGP
Web Security CS-431.
Tutorial on Creating Certificates SSH Kerberos
Computer Communication & Networks
Cryptography and Network Security
Secure Sockets Layer (SSL)
Tutorial on Creating Certificates SSH Kerberos
The Secure Sockets Layer (SSL) Protocol
Protocol ap1.0: Alice says “I am Alice”
Chapter 8 roadmap 8.1 What is network security?
Presentation transcript:

An Introduction to Distributed Security Concepts and Public Key Infrastructure (PKI) Mary Thompson

Local Computing l User sits down in front of the computer l Responds to the login prompt with a user id and password. l Machine has a list of all the users and their encrypted passwords l Password never goes across the network l Passwords are encrypted with a one-way code l The crypt alogrithm of Unix has been around since mid 70’s. Uses a salt to keep identical passwords from having the same encryption. Uses only 8 characters, case sensitive. Uses 25 iterations of DES. l Typically broken by guessing and verifying guess or snooping the password.

Remote Access Computing l User logs in to one or more remote machine(s) l Each machine has its own copy of userid and password for each user n Changing a password on one machine does not affect the other machines n Each time a user connects to a different machine, she must login again l In the standard Unix login or rsh commands, the user’s password is sent in clear text over the network or else hosts trust users on the basis of their IP addresses l Ssh n encrypts the password before sending it n or uses a user’s key pair for establishing her identity

Single Domain Remote Access Computing l User gets access to many machines in a single administrative domain. l He has a single userid and password for all the machines l Can login just once to a central trusted server l Examples n Kerberos freeware from MIT Project Athena n NIS - Sun software with remote access comands

Kerberos l User - password based authentication based on late-70’s Needham -Schroeder algorithms. l Kerberos Authentication Server aka KDC (Key Distribution Center) shares long-term secret (password) with each authorized user. l User logs in and established a short term session key with the AS which can be used to establish his identity with other entities, e.g. file system, other hosts or services each of which trusts the authority server. l The authorization mechanism needs to be integrated with the each function, e.g. file access, login, telnet, ftp,... l The central server is a single point of vulnerablity to attack and failure. l Been in use for 20 years. We are now at version 5.

NIS l Central server has all the user ids and passwords, don’t need to store passwords locally. l Facilitates the same user id and passwords on all machines on a network l Then rlogin and rsh allow the user to have access to all the hosts in the hosts.equiv and.rhost files l No real security, depends IP addresses l Integrated with NFS to allow access to NFS files from any host to which they are exported.

Cross Domain Authentication l Holy Grail is to allow a user to login in once and get access to a ticket that will identify him to all machines on which he is allowed to run. l Kerberos supports cross realm authentication, but it is politically difficult to achieve. Used for multiple AFS/DFS cells within a single institution. CMU, DOE weapons labs l X.509 Identity certificates. An IETF standard. Contains a multi-part unique name and a public key. The legitimate owner of the certificate has the matching private key.

Motivation for Universal Identity certificate l Distributed computing environments, collaborative research environments l Resources, stakeholders and users are all distributed l Spanning organizational as well as geographical boundaries, e.g., DOE Collaboratories l Requires a flexible but secure way to identify users l Requires a flexible and secure way to identify stakeholders

Security Levels l Confidentiality n Protection from disclosure to unauthorized persons l Integrity n Maintaining data consistency l Authentication n Assurance of identity of person or originator of data l Non-repudiation n Originator of communications can't deny it later - requires long- term of keys l Authorization n Identity combined with an access policy grants the rights to perform some action

Security Building Blocks l Encryption provides n confidentiality, can provide authentication and integrity protection l Checksums/hash algorithms provide n integrity protection, can provide authentication l Digital signatures provide n authentication, integrity protection, and non-repudiation

Keys l Symetric Keys n Both parties share the same secret key n Problem is securely distributing the key n DES - 56 bit key considered unsafe for financial purposes since 1998 n 3 DES uses three DES keys l Public/Private keys n One key is the mathematical inverse of the other n Private keys are known only to the owner n Public key are stored in public servers, usually in a X.509 certificate. n RSA (patent expires Sept 2000), Diffie-Hellman, DSA

Hash Algorithms l Reduce variable-length input to fixed-length (128 or 160bit) output l Requirements n Can't deduce input from output n Can't generate a given output n Can't find two inputs which produce the same output l Used to n Produce fixed-length fingerprint of arbitrary-length data n Produce data checksums to enable detection of modifications n Distill passwords down to fixed-length encryption keys l Also called message digests or fingerprints

Message Authentication Code MAC l Hash algorithm + key to make hash value dependant on the key l Most common form is HMAC (hash MAC) n hash( key, hash( key, data )) l Key affects both start and end of hashing process l Naming: hash + key = HMAC-hash MD5 1 HMAC-MD5 SHA-1 1 HMAC-SHA (recommended)

Digital Signatures l Combines a hash with a digital signature algorithm l To sign n hash the data n encrypt the hash with the sender's private key n send data signer’s name and signature l To verify n hash the data n find the sender’s public key n decrypt the signature with the sender's public key n the result of which should match the hash

Elements of PKI l Certificate Authorities (CA) n OpenSSL, Netscape, Verisign, Entrust, RSA Keon l Public/Private Key Pairs - Key management l x.509 Identity Certificates - Certificate management l LDAP servers

X.509 Identity Certificates l Distinguished Name of user n C=US, O=Lawrence Berkely National Laboratory, OU=DSD, CN=Mary R. Thompson l DN of Issuer n C=US, O=Lawrence Berkely National Laboratory, CN=LBNL-CA l Validity dates: n Not before, Not after l User's public key l V3- extensions l Signed by CA l Defined in ANS1 notation - language independent

Certificate Authority l A trusted third party - must be a secure server l Signs and publishes X.509 Identity certificates l Revokes certificates and publishes a Certification Revocation List (CRL) l Many vendors n OpenSSL - open source, very simple n Netscape - free for limited number of certificates n Entrust - Can be run by enterprise or by Entrust n Verisign - Run by Verisign under contract to enterprise n RSA Security - Keon servers

LDAP server l Lightweight Directory Access Protocol (IETF standard) n Evolved from DAP and X.500 Identities l Used by CA's to store user's Identity Certificate l Open source implementations l Standard protocol for lookup, entry, etc. l Access control is implemented by user, password.

SSL - OpenSSL l Secure message passing protocol l Developed by Netscape, now an IETF RFC (TLS Jan '99) l Protocol for using one or two public/private keys n to authenticate a sever to a client n and by requiring a client key to authenticate the client to the server n establish a shared symetric key (the session key) n uses the session key to encypt or MAC all data over the secure channel l Gives you authentication, message integrity and confidentiality l Everything except authorizaton

SSL Handshake l Negotiate the cipher suite l Establish a shared session key l Authenticate the server (optional) l Authenticate the client (optional) l Authenticate previously exhanged data

SSL handshake details l Client hello: n Client challenge, client nonce n Available cipher suites (eg RSA + RC4/40 + MD5) l Server hello: n Server certificate, server nonce n Connection ID n Selected cipher suite l Server adapts to client capabilities l Optional certificate exchange to authenticate server/client n Commercial sites only use server authentication

SSL Handshake - details Client Server Generate Challenge Define Protocols Return Server Certificate Generate connectiion ID Confirm Protocols Decrypt pre-master session key master secret = hash (pre-master secret, previous messages) Generate server read/write Key pairs Generates pre-master session key Encyrpt session key master-secret = hash(pre-master secret, previous messages) Generate Client read/write key pairs Verify server certificate Encrypt random challenge phrase Decrypt and verify challenge phrase Challenge Encryption protocols Server Cert Encryption protocols Connection ID {pre-master session Key} Server's public key {Client's Challenge} Server Write Key

SSL Handshake Client Server Decrypt challenge Decrypt Message Digest and Client Certificate Verify Client certificate and recompute message digest Done Calculate message digest on Challenge and Server certificate (Challenge phrase) Server write key [Message Digest & Client Certificate] Client private key (Session Identifier) Server's write key Client Authentication Generate new challenge Requests Client certificate

Status l Single purpose CA’s e.g. Globus (SSLeay) Collaboratory, DOE-Grid (Netscape) l Enterprises slow to run CA’s n Many different Vendors - Verisign, Entrust, Netscape, RSA Security Keon n Incompatible Key and Certificate management between vendors n Certificates are not integrated with existing applications that need authorization n Large amount of corporate overhead in running a CA n Uncertain legal implications of issuing certificates l Lab is currently looking at the RSA Keon server as it has integration with ssh and NIS authorization

Public Key Cryptography Standards - PKCS l PKCS 7 n Cryptographic Message Syntax Standard l PKCS 10 n Certification Request Syntax Standard - used by Netscape browser, IE, and SSL libraries l PKCS 11 n Cryptographic Token Interface Standard - An API for signing and verifying data by a device that holds the key l PKCS 12 n Personal Information Exchange Syntax Standard - file format for storing certificate and private key - used to move private information between browsers

References l Peter Guttman's tutorial n about 500 slides covering cryptography, secure connection protocols, PKI, politics and more. l RSA Laboratories PKCS specifications n l SSL/TLS n TLS v 1.0 RFC - n SSL-v3 n openSSL l Certificates n