Certificate Authentication in the z/os Internet Key Exchange



Similar documents
Understanding Digital Certificates on z/os Vanguard Las Vegas, NV Session AST3 June 26th 2012

Digital Certificates Demystified

CS z/os Application Enhancements: Introduction to Advanced Encryption Standards (AES)

CS z/os Network Security Configuration Assistant GUI

Overview. SSL Cryptography Overview CHAPTER 1

Safe and Secure Transfers with z/os FTP

Overview of CSS SSL. SSL Cryptography Overview CHAPTER

IBM i Version 7.3. Security Digital Certificate Manager IBM

Understanding Digital Certificates on z/os Share Anaheim, CA Session 8349 March 2nd 2011

How Secure are your Channels? By Morag Hughson

Digital Certificate Goody Bags on z/os

Chapter 4 Virtual Private Networking

Security Digital Certificate Manager

SBClient SSL. Ehab AbuShmais

Introduction to Security and PIX Firewall

Security Digital Certificate Manager

APNIC elearning: IPSec Basics. Contact: esec03_v1.0

The Consolidation Process

Digital Certificates (Public Key Infrastructure) Reshma Afshar Indiana State University

Configuring Digital Certificates

PKI Services: The Best Kept Secret in z/os

Certificate Management. PAN-OS Administrator s Guide. Version 7.0

IT Networks & Security CERT Luncheon Series: Cryptography

TLS and SRTP for Skype Connect. Technical Datasheet

SHARE in Pittsburgh Session 15591

Authentication applications Kerberos X.509 Authentication services E mail security IP security Web security

How To Understand And Understand The Security Of A Key Infrastructure

Understanding digital certificates

z/os Communications Server Network Security Overview SHARE Session 9250

What in the heck am I getting myself into! Capitalware's MQ Technical Conference v

Entrust Managed Services PKI. Getting started with digital certificates and Entrust Managed Services PKI. Document issue: 1.0

SuSE Linux High Availability Extensions Hands-on Workshop

Implementing Secure Sockets Layer on iseries

How To Encrypt Data With Encryption

The Digital Certificate Journey from RACF to PKI Services Part 2 Session J10 May 11th 2005

Getting Started with Digital Certificates Part II (RACDCERT)

Chapter 8 Virtual Private Networking

Electronic Mail Security. Security. is one of the most widely used and regarded network services currently message contents are not secure

IPsec Details 1 / 43. IPsec Details

Cornerstones of Security

Implementing SSL Security on a PowerExchange Network

Brocade Engineering. PKI Tutorial. Jim Kleinsteiber. February 6, Page 1

Forecasting Performance Metrics using the IBM Tivoli Performance Analyzer

Chapter 17. Transport-Level Security

Case Study for Layer 3 Authentication and Encryption

IBM Systems and Technology Group Technical Conference

Security. Contents. S Wireless Personal, Local, Metropolitan, and Wide Area Networks 1

CS 4803 Computer and Network Security

ERserver. iseries. Secure Sockets Layer (SSL)

7 Network Security. 7.1 Introduction 7.2 Improving the Security 7.3 Internet Security Framework. 7.5 Absolute Security?

Security Protocols HTTPS/ DNSSEC TLS. Internet (IPSEC) Network (802.1x) Application (HTTP,DNS) Transport (TCP/UDP) Transport (TCP/UDP) Internet (IP)

Secure Socket Layer (SSL) and Transport Layer Security (TLS)

Secure Sockets Layer (SSL ) / Transport Layer Security (TLS) Network Security Products S31213

WiMAX Public Key Infrastructure (PKI) Users Overview

Internet Programming. Security

BizTalk Server Adapters

CALIFORNIA SOFTWARE LABS

Laboratory Exercises V: IP Security Protocol (IPSec)

TN3270 Security Enhancements

NIST Test Personal Identity Verification (PIV) Cards

SSL Protect your users, start with yourself

mod_ssl Cryptographic Techniques

CS 356 Lecture 28 Internet Authentication. Spring 2013

IBM WebSphere Data Interchange V3.3

Public Key Infrastructure (PKI)

Overview of the z/os Load Balancing Advisor: Making External IP Load Balancers Sysplex Aware

ERserver. iseries. Securing applications with SSL

Expert Reference Series of White Papers. Fundamentals of the PKI Infrastructure

Using etoken for SSL Web Authentication. SSL V3.0 Overview

SAP Master Data Governance- Hiding fields in the change request User Interface

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

z/os Firewall Technology Overview

Secure Socket Layer. Carlo U. Nicola, SGI FHNW With extracts from publications of : William Stallings.

Sending Additional Files from SAP Netweaver PI to third Party System

Cryptography and Network Security Chapter 15

How to Configure Access Control for Exchange using PowerShell Cmdlets A Step-by-Step guide

Secure Sockets Layer

WIRELESS LAN SECURITY FUNDAMENTALS

Integration of SAP Netweaver User Management with LDAP

ETSF10 Part 3 Lect 2

RSA Digital Certificate Solution

R/3 and J2EE Setup for Digital Signature on Form 16 in HR Systems

Ciphire Mail. Abstract

Dr. Cunsheng DING HKUST, Hong Kong. Security Protocols. Security Protocols. Cunsheng Ding, HKUST COMP685C

Encryption, Data Integrity, Digital Certificates, and SSL. Developed by. Jerry Scott. SSL Primer-1-1

SSL/TLS: The Ugly Truth

User Guide Supplement. S/MIME Support Package for BlackBerry Smartphones BlackBerry Pearl 8100 Series

Lecture 9 - Network Security TDTS (ht1)

Apple Inc. Certification Authority Certification Practice Statement Worldwide Developer Relations Version 1.14 Effective Date: September 9, 2015

SAP Central Process Scheduling (CPS) 8.0 by Redwood

IBM Tivoli Web Response Monitor

2014 IBM Corporation

Network Security Protocols

Lecture 13. Public Key Distribution (certification) PK-based Needham-Schroeder TTP. 3. [N a, A] PKb 6. [N a, N b ] PKa. 7.

Cryptography and network security CNET4523

Xcelsius Dashboards on SAP NetWaver BW Implementation Best Practices

Network Security. Gaurav Naik Gus Anderson. College of Engineering. Drexel University, Philadelphia, PA. Drexel University. College of Engineering

Network Security Essentials Chapter 7

Learning Series: SAP NetWeaver Process Orchestration, secure connectivity add-on 1c SFTP Adapter

Network Security [2] Plain text Encryption algorithm Public and private key pair Cipher text Decryption algorithm. See next slide

Transcription:

Certificate Authentication in the z/os Internet Key Exchange August 5, 2010 Allen Bailey - eabailey@us.ibm.com Lin Overby - overbylh@us.ibm.com Chris Meyer meyerchr@us.ibm.com z/os Communications Server Security

Trademarks, notices, and disclaimers The following terms are trademarks or registered trademarks of International Business Machines Corporation in the United States or other countries or both: Advanced Peer-to-Peer Networking AIX alphaworks AnyNet AS/400 BladeCenter Candle CICS DB2 Connect DB2 DRDA e-business on demand e-business (logo) e business(logo) ESCON FICON GDDM HiperSockets HPR Channel Connectivity HyperSwap i5/os (logo) i5/os IBM (logo) IBM IMS IP PrintWay IPDS iseries LANDP Language Environment MQSeries MVS NetView OMEGAMON Open Power OpenPower Operating System/2 Operating System/400 OS/2 OS/390 OS/400 Parallel Sysplex PR/SM pseries RACF Rational Suite Rational Redbooks Redbooks (logo) Sysplex Timer System i5 System p5 System x System z System z9 Tivoli (logo) Tivoli VTAM WebSphere xseries z9 zseries z/architecture z/os z/vm z/vse Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both. Intel, Intel Inside (logos), MMX and Pentium are trademarks of Intel Corporation in the United States, other countries, or both. UNIX is a registered trademark of The Open Group in the United States and other countries. Linux is a trademark of Linus Torvalds in the United States, other countries, or both. Red Hat is a trademark of Red Hat, Inc. SUSE LINUX Professional 9.2 from Novell Other company, product, or service names may be trademarks or service marks of others. This information is for planning purposes only. The information herein is subject to change before the products described become generally available. Disclaimer: All statements regarding IBM future direction or intent, including current product plans, are subject to change or withdrawal without notice and represent goals and objectives only. All information is provided for informational purposes only, on an as is basis, without warranty of any kind. All performance data contained in this publication was obtained in the specific operating environment and under the conditions described and is presented as an illustration. Performance obtained in other operating environments may vary and customers should conduct their own testing. Refer to www.ibm.com/legal/us for further legal information. Page 2

Agenda IBM Software Group Enterprise Networking Software Background Cryptography basics Digital certificates IP Security (IPSec) / Internet Key Exchange (IKE) Certificate use in the IKE Authentication Negotiation modes Network Security Services Daemon (NSSD) Overview Digital signature operations Advanced certificate services Certificate revocation lists Certificate trust chains IKEv2 certificate encoding types Implementing the NSSD solution Page 3

z/os V1R12 Communications Server Background Page 4

Agenda IBM Software Group Enterprise Networking Software Background Cryptography basics Digital certificates IP Security (IPSec) / Internet Key Exchange (IKE) Certificate use in the IKE Authentication Negotiation modes Network Security Services Daemon (NSSD) Overview Digital signature operations Advanced certificate services Certificate revocation lists Certificate trust chains IKEv2 certificate encoding types Implementing the NSSD solution Page 5

Cryptographic basics Cryptography is the use of mathematical algorithms to transform data for the purposes of ensuring: Partner authentication proving the other end point of the secure communication is who it claims to be (certificates and asymmetric encryption) Data privacy hiding the data (encryption/decryption) Data integrity proving the data hasn t been modified since it was sent (message digests and secure message authentication codes) Data origin authentication proving the data s origin (message digests and secure message authentication codes) Cryptographic operations are compute intensive, hence the need for hardware assist technologies General rule: For a given algorithm, the longer keys, the stronger security, the more compute intensive For example, AES-128 vs. AES-256 Increases the amount of work an attacker needs to do to crack the code Page 6 Encryption strength, CPU cost, time to encrypt/decrypt Key length

Symmetric encryption Ralph Alice Cleartext: Cleartext: To the To the moon! moon! Common Algorithms: DES, 3DES, AES Ciphertext: Ciphertext: srlbl39ls srlbl39ls he93;s;e he93;s;e Common Algorithms: DES, 3DES, AES Cleartext: Cleartext: To the To the moon! moon! Exact same value Page 7 Only one key value - shared secret between both parties Used for both encryption and decryption Hence, the symmetry each side has the same key Much faster than asymmetric cryptography You typically use symmetric encryption for bulk encryption/decryption Also known as secret key encryption private key encryption (easily confused with asymmetric) Securely sharing and exchanging the key between both parties is a major issue

Asymmetric encryption Cleartext Cleartext Har-harhardeehar-har! Cleartext Cleartext Har-harhardeehar-har! Ralph Common Algorithms: RSA, DSA, ECDSA Ciphertext: Ciphertext: mf](le83j7 mf](le83j7 biel@oejm biel@oejm dltcib% dltcib% Common Algorithms: RSA, DSA, ECDSA Alice Private Key Mathematically linked, but not the same value Public Key Page 8 Two different key values no shared secrets! Private key is known only to owner Public key is freely distributed to others Data encrypted with private key can only be decrypted with public key and vice versa No way to derive one key value from the other Great for authentication and non-repudiation digital signatures more on this later Very expensive computationally Not so great for bulk encryption Typically used to encrypt small data objects like message digests or symmetric keys Also known as public key cryptography

Message digests A message digest is NOT based on a secret key a fixed-length value generated from variable-length data unique: the same input data always generates the same digest value small change in data generates a very different hash value extremely difficult (and time consuming) to find two different data values that result in the same hash value one-way: can t reverse a digest value back to the original data hence, also known as a one-way hash an element of proving data integrity and origin authentication (but not enough on its own ) Ralph Message Message Data Data Common Algorithms: SHA-1, SHA-2, MD5 10010110101001011101001 Alice Cleartext Cleartext Cleartext Cleartext SHA-1 SHA-1 10010110101001011101001 a digest alone is 10010110101001011101001 easily spoofed by a man in the middle ==? 10010110101001011101001 Page 9

Digital signatures A digital signature is a message digest that is encrypted with the sender s private key (hence, based on an asymmetric algorithm) very good for proving data integrity and authenticating data origin Ralph Alice Message Message Data Data Message Message Data Data 10010110101001011101001 Common Algorithms: SHA-1, SHA-2, MD5 Common Algorithms: RSA, DSA, ECC Ralph s Public Key 10010110101001011101001 Ralph s Private Key Common Algorithms: RSA, DSA, ECDSA Common Algorithms: SHA-1, SHA-2, MD5 10010110101001011101001 (signature creation) 10010110101001011101001 ==? (signature verification) 10010110101001011101001 Page 10

Agenda IBM Software Group Enterprise Networking Software Background Cryptography basics Digital certificates IP Security (IPSec) / Internet Key Exchange (IKE) Certificate use in the IKE Authentication Negotiation modes Network Security Services Daemon (NSSD) Overview Digital signature operations Advanced certificate services Certificate revocation Certificate trust chains IKEv2 certificate encoding types Implementing the NSSD solution Page 11

Digital certificates - Purpose A digital document that binds a subject to a public/private key pair contains the public key to allow for convenient distribution of that key is signed by a trusted third party called a Certificate Authority (CA) to prove its authenticity can be self-signed, but such certificates are typically used for testing or very small-scale applications since the trust element is lost Trixie Certificate Authority Verisign Root Certificate Authority Certificate Authorities have their own digital certificate and public/private key pair. This CA certificate is used to verify the certificates that were issued by the given CA issue certificates for subjects and sign those certificates with their own private key can be arranged in a hierarchy (the top of the hierarchy is the root CA ). are part of a Public Key Infrastructure (PKI) Ralph X.509 is the most widely-adopted standard Page 12

Digital certificates - Structure Certificate Info version serial number signature algorithm ID issuer s name validity period subject s name subject s public key extensions* key usage CRLdistributionpoint subject alternate name - IP addr - DNS name - e-mail - URI This is the hash/encrypt algorithm used in the signature The certificate binds a public key to a subject CA creates a hash of the entire certificate and encrypts it with its private key to sign the cert Certificate Signature 10010110101001011101001 *There are more extensions defined in X.509 standard than those listed here. Page 13

Agenda IBM Software Group Enterprise Networking Software Background Cryptography basics Digital certificates IP Security (IPSec) / Internet Key Exchange (IKE) Certificate use in the IKE Authentication Negotiation modes Network Security Services Daemon (NSSD) Overview Digital signature operations Advanced certificate services Certificate revocation lists Certificate trust chains IKEv2 certificate encoding types Implementing the NSSD solution Page 14

IPSec overview Applications Applications IPSec TCP/UDP IP/ICMP Data Link TCP/UDP IP/ICMP Data Link Network Provides authentication, integrity, and data privacy via IPSec security protocols Authentication Header (AH) - provides authentication / integrity Encapsulating Security Protocol (ESP) - provides data privacy with optional authentication / integrity Implemented at the IP layer Requires no application change Secures traffic between any two IP resources - Security Associations (SA) Management of crypto keys and security associations can be: Manual Automated via key management protocol (IKE) Page 15

IPSec/IKE Two phases of IKE Phase 1 Negotiates an IKE SA Generates cryptographic keys that will be used to protect Phase 2 negotiations Informational exchanges Authenticates the identity of the parties involved Phase 2 Negotiates an IPSec SA (a.k.a. 'CHILD SA') with a remote security endpoint Generates cryptographic keys that are used to protect data Performed under the protection of an IKE SA TCP/IP Stack IPSec SA IKE IKE SA IPSec SA phase 1 negotiations phase 2 negotiations IKE IKE SA IPSec SA TCP/IP Stack IPSec SA Page 16

z/os V1R12 Communications Server Certificate use in the IKE Page 17

Agenda IBM Software Group Enterprise Networking Software Background Cryptography basics Digital certificates IP Security (IPSec) / Internet Key Exchange (IKE) Certificate use in the IKE Authentication Negotiation modes Network Security Services Daemon (NSSD) Overview Digital signature operations Advanced certificate services Certificate revocation lists Certificate trust chains IKEv2 certificate encoding types Implementing the NSSD solution Page 18

IKE Authentication Authentication is a crucial function of the IKE Authentication happens during Phase 1 IKE SA exchanges Some messages are used to carry authentication information Authentication methods Pre-shared key (not very scalable) Digital signature using x.509 certificates (very scalable) RSA ECDSA (z/os V1R12) - requires NSSD IKE processing involves creation and verification of digital signatures Digital signature mode requires access to certificates and keys stored in a SAF repository (keyring) Page 19

IKE peer-to-peer certificate relationships Each host needs only its own end-entity certificate and the certificate of the trusted Certificate Authority that signed the IKE peer's end-entity certificate (Requirements for the CA of the peer certificate can differ with V1R12 Certificate Trust Chain support) IKED IKED Ralph s end-entity certificate (sent to IKE peer) Ralph Trixie Ralph s Private Key (used for signing) Issuer (used for IKE peer end-entity certificate validation) Issuer (used for IKE peer end-entity certificate validation) Gotham Bus Co. Alice s Private Key (used for signing) Alice Alice s end-entity certificate (sent to IKE peer) Page 20

Agenda IBM Software Group Enterprise Networking Software Background Cryptography basics Digital certificates IP Security (IPSec) / Internet Key Exchange (IKE) Certificate use in the IKE Authentication Negotiation modes Network Security Services Daemon (NSSD) Overview Digital signature operations Advanced certificate services Certificate revocation lists Certificate trust chains IKEv2 certificate encoding types Implementing the NSSD solution Page 21

Negotiation Modes of IKE Phase 1 IKEv1 Main uses six messages a.k.a. identity-protected mode (peer identities are encrypted) IKEv1 Aggressive uses three messages peer identities are not encrypted faster than main mode but potentially less secure IKEv2 (V1R12) uses four messages peer identities are encrypted better performance than main mode better protection than aggressive mode Page 22

Certificate use in IKEv1 Main Mode 1. Initiator sends a proposal to peer 2. Responder replies with selected proposal to peer 3. Initiator sends keying material to peer 4. Responder replies with keying material and certificate request to peer 5. CreateSignature - Initiator creates message and uses private key to sign 6. Initiator sends signed message, certificate and certificate request to peer 7. VerifySignature - Responder verifies the integrity of the message and the authenticity of peer 8. CreateSignature - Responder creates message and uses private key to sign 9. Responder sends signed message, certificate and certificate request to peer 10. VerifySignature - Initiator verifies the integrity of the message and the authenticity of peer Initiator s private key SAF DB Initiator *Further communications are encrypted using the negotiated keys SA Proposal Key Material Certificate, Cert request SIGNED SIGNED SA Response Key Material, Cert request Certificate Responder Responder s private key SAF DB Cert store Encrypted Communication Cert store Is CA cert of responder cert here? Is CA cert of initiator cert here? Page 23

Certificate use in IKEv1 Aggressive Mode 1. Initiator sends a proposal along with a certificate request to peer 2. CreateSignature - Responder creates message and uses private key to sign 3. Responder sends signed message including certificate and certificate request to peer 4. VerifySignature - Initiator verifies the integrity of the message and the authenticity of peer 5. CreateSignature - Initiator creates message and uses private key to sign 6. Initiator sends signed message including certificate to peer 7. VerifySignature - Responder verifies the integrity of the message and the authenticity of peer Initiator s private key SAF DB Cert store *Further communications are encrypted using the negotiated keys Initiator Proposal, Cert request Key material, Certificate SIGNED SIGNED Key material, Certificate, Cert request Responder Responder s private key SAF DB Cert store Encrypted Communication Is CA cert of responder cert here? Is CA cert of initiator cert here? Page 24

Certificate use in IKEv2 Mode 1. Initiator sends a proposal and keying material to peer 2. Responder replies with selected proposal, keying material and certificate request to peer 3. CreateSignature - Initiator creates message and uses private key to sign 4. Initiator sends signed message, certificate and certificate request to peer 5. VerifySignature - Responder verifies the integrity of the message and the authenticity of peer 6. CreateSignature - Responder creates message and uses private key to sign 7. Responder sends signed message, certificate and certificate request to peer 8. VerifySignature - Initiator verifies the integrity of the message and the authenticity of peer Initiator s private key SAF DB Initiator *Further communications are encrypted using the negotiated keys SA Proposal, Key Material Certificate, SIGNED SA Response, Key Material, Cert request Responder Cert request Responder s SIGNED Certificate private key SAF DB Cert store Encrypted Communication Cert store Is CA cert of responder cert here? Is CA cert of initiator cert here? Page 25

z/os V1R12 Communications Server Network Security Services Page 26

Agenda IBM Software Group Enterprise Networking Software Background Cryptography basics Digital certificates IP Security (IPSec) / Internet Key Exchange (IKE) Certificate use in the IKE Authentication Negotiation modes Network Security Services Daemon (NSSD) Overview Digital signature operations Advanced certificate services Certificate revocation lists Certificate trust chains IKEv2 certificate encoding types Implementing the NSSD solution Page 27

NSS Overview IPsec SAs IKE peer IPsec SAs z/os image 1 iked.conf Stack One z/os image n iked.conf Stack One IKE Daemon.. IKE Daemon... Stack Eight Stack Eight NSS role extended in z/os V1R12 NSS is required for z/os V1R12 advanced certificate support Certificate Revocation List Certificate Trust Chain NSS is required for ALL IKEv2 certificate services secure connections nss.conf z/os image x Network Security Services Daemon Certificates and private keys for images 1 to n SAF Keyring Centralized monitoring Centralized SAF certificate administration Centralized network security services for a set of z/os images Images can be non-sysplex, within sysplex or cross sysplex NSS digital signature services Allows central administration of SAF certificates and private keys Sign and verify during runtime IKE negotiations NSS monitoring interfaces Allows selection of single focal point as IPsec management hub ipsec command for administrator Network Monitor Interface (NMI) for management application Page 28

Agenda IBM Software Group Enterprise Networking Software Background Cryptography basics Digital certificates IP Security (IPSec) / Internet Key Exchange (IKE) Certificate use in the IKE Authentication Negotiation modes Network Security Services Daemon (NSSD) Overview Digital signature operations Advanced certificate services Certificate revocation lists Certificate trust chains IKEv2 certificate encoding types Implementing the NSSD solution Page 29

IKE Digital Signature operations with NSSD Peer IKED The IKE protocol for digital signature authentication requires the peers to exchange digital signatures The certificates used to verify the signatures are exchanged between IKE peers in certificate payloads in the IKE messages. z/os IKED NSSD IKED utilizes NSSD s certificate services System SSL Certificate services Local or centralized NSSD z/os must perform digital signature creation and verification Can be performed locally by IKED for RSA signatures IKED can request signature creation and verification from NSS daemon (NSSD) Network Security Services (NSS) IPSec discipline certificate services Create a digital signature using a private key associated with the local IKED certificate Verify a digital signature using the public key from the remote IKED certificate Page 30

NSSD role in IKEv1 Main Mode Negotiation NSSD 1. Initiator sends a proposal to peer 2. Responder replies with selected proposal to peer 3. Initiator sends keying material to peer 4. Responder replies with keying material and certificate request to peer 5. CreateSignatureRequest - Initiator sends request to NSSD and awaits response 6. Initiator sends signed message, certificate and certificate request to peer 7. VerifySignatureRequest - Responder sends request to NSSD and awaits response 8. CreateSignatureRequest - Responder sends request to NSSD and awaits response 9. Responder sends signed message, certificate and certificate request to peer 10. VerifySignatureRequest Initiator sends request to NSSD and awaits response Create Signature Request Verify Signature Request Initiator SA Proposal Key Material Certificate, Cert request SIGNED SIGNED SA Response Key Material, Cert request Certificate Responder Verify Signature Request Create Signature Request NSSD SAF DB Cert store SAF DB Cert store Page 31

NSSD role in IKEv1 Aggressive Mode Negotiations 1. Initiator sends a proposal along with a certificate request to peer 2. CreateSignatureRequest - Responder sends request to NSSD and awaits response 3. Responder sends signed message including certificate and certificate request to peer 4. VerifySignatureRequest - Initiator sends request to NSSD and awaits response 5. CreateSignatureRequest - Initiator sends request to NSSD and awaits response NSSD SAF DB 6. Initiator sends signed message including certificate to peer 7. VerifySignatureRequest - Responder sends request to NSSD and awaits response Verify Signature Request Create Signature Request Initiator SA Proposal, Cert Request Key Material, Certificate SIGNED SIGNED Key Material, Certificate, Cert request Responder Create Signature Request Verify Signature Request NSSD SAF DB Cert store Cert store Page 32

NSSD role in IKEv2 Mode Negotiations 1. Initiator sends a proposal and keying material to peer 2. Responder replies with selected proposal, keying material and certificate request to peer 3. CreateSignatureRequest - Initiator sends request to NSSD and awaits response 4. Initiator sends signed message, certificate and certificate request to peer 5. VerifySignatureRequest - Responder sends request to NSSD and awaits response 6. CreateSignatureRequest - Responder sends request to NSSD and awaits response 7. Responder sends signed message, certificate and certificate request to peer 8. VerifySignatureRequest - Initiator sends request to NSSD and awaits response NSSD Create Signature Request Verify Signature Request Initiator SA Proposal, Key Material Certificate, Cert request SIGNED SIGNED SA Response, Key Material, Cert request Certificate Responder Verify Signature Request Create Signature Request NSSD SAF DB SAF DB Cert store Cert store Page 33

Agenda IBM Software Group Enterprise Networking Software Background Cryptography basics Digital certificates IP Security (IPSec) / Internet Key Exchange (IKE) Certificate use in the IKE Authentication Negotiation modes Network Security Services Daemon (NSSD) Overview Digital signature operations Advanced certificate services Certificate revocation lists Certificate trust chains IKEv2 certificate encoding types Implementing the NSSD solution Page 34

Certificate revocation A Certificate Revocation List is a list of certificates that have been revoked or are no longer valid. CRLs are digitally signed by issuing certificate authority Common reasons a certificate might be revoked: Private key has been compromised Termination of an affiliation Employment Membership Certificate no longer valid for stated purpose revoked revoked revoked Certificate revocations should be taken into account when checking the validity of a certificate Page 35

z/os Communications Server CRL support When IPSec authenticates a digital signature, it needs to ensure that the certificate associated with the signing private key is still valid IKED NSSD CRLDistributionPoints extension: CRL retrieval HTTP-URL HTTP protocol CRL provider NSSD will retrieve CRLs using information in the CRLDistributionPoints extension in a certificate HTTP-URLs only Retrieval of CRLs from LDAP servers not supported NSSD will pass CRLs to z/os System SSL services CRL System SSL Validate Certificate services Is this certificate still valid? System SSL will validate the certificate against the CRL to ensure the certificate has not been revoked IKED depends on NSSD for this function Page 36

CRL processing controls IKED controls the level of CRL checking enforced by NSSD IKED retrieves the revocation checking level to be performed from the RevocationChecking parameter on the KeyExchangePolicy or KeyExchangeAction IPSec policy statement The revocation checking level is passed to NSS on the signature validation request NSSD supports three levels of CRL checking None Do no check revocation information Loose Check revocation information if it can be obtained; otherwise, assume valid. Strict Always check revocation information. If it cannot be obtained assume not valid Retrieved CRLs are cached based on the NSSD URLCacheInterval parameter The CRL is removed from the cache when The nextupdate time in the CRL is reached The URLCacheInterval is reached The MODIFY nssd,refresh command is issued Page 37

Agenda IBM Software Group Enterprise Networking Software Background Cryptography basics Digital certificates IP Security (IPSec) / Internet Key Exchange (IKE) Certificate use in the IKE Authentication Negotiation modes Network Security Services Daemon (NSSD) Overview Digital signature operations Advanced certificate services Certificate revocation Certificate trust chains IKEv2 certificate encoding types Implementing the NSSD solution Page 38

Certificate trust chains Root CA certificate Root CA s Distinguished Name Root CA s Public Key Root CA s Signature Chain of trust Owner Public Key Issuer s (Root CA s) Distinguished Name Issuer s Signature A subordinate certificate authority is one that has been delegated the responsibility to issue (sign) certificates on behalf of another certificate authority. For example, an enterprise can use subordinate CAs to allow geographic regions and departments to manage their own certificates Verify signature A digital certificate is issued (signed) by a trusted certificate authority or is self-signed A certificate authority can be a root certificate authority or a subordinate certificate authority. Subordinate CA certificate Each certificate authority has its Subordinate CA s own public/private key pair that is Distinguished Name bound by its own certificate. Verify signature End-entity certificate End-Entity CA s Distinguished Name Owner s Public Key Issuer s (CA s) Distinguished Name Issuer s Signature Page 39

IPSec support for certificate trust chains Eases administrative requirements by reducing the number of subordinate CA certificates needed on IKE keyrings Given the following certificate hierarchy: Pre-V1R12 Local keyring must contain cert of CA that signed peer cert Root signs Root CA Sub CA 2 Myself RACF keyring NSSD IKED z/os IKE Peer IKED Remote system SUB CA 1 signs Sub CA 2 S u b C A 1 SUB CA 2 signs V1R12 IKED and NSSD cooperate to build and validate complete trust chain using keyring and intermediate certs sent by IKE peer IKE Peer Myself NSSD IKED IKED Root CA Sub CA 1 RACF keyring z/os IKE Peer Sub CA 2 Remote system RFCs 4306 and 4945 require support of trust chains Supported for both IKEv1 and IKEv2 Requires NSSD NSSD supports certs on keyring as well as IKEv2 cert retrieval through HTTP Page 40

Using Trust Chains to select an end entity certificate with NSSD When receiving certificate request payloads, NSSD attempts to select a certificate within the trust chain of the requested CA Trust chain support will additionally return the necessary set of subordinate CA certificates needed to fill in any gaps between the named CA and the end entry certificate If a certificate cannot be found within the trust chain, the handling is determined by the IKE protocol version For IKEv1, the negotiation fails For IKEv2, any viable certificate found is selected ( empty certificate request ) Peer IKED Please use CA1-signed certificate (1) Cert Request Payloads z/os IKED (2)Create Signature Request NSSD System SSL Certificate services EE1 CA2 (4) Signed Cert Payloads (3) Since the peer sent a certificate request naming CA1 as the desired signing CA, NSSD will select EE1 because it is found it in CA1 s Trust Chain. Requested Missing? Send back in additional Cert payload Selected, send back in first CERT payload CA Trust Chain Root CA Sub CA1 Sub CA2 EE1 Page 41

Using Trust Chains during signature verification with NSSD When receiving certificate payloads to use in verifying a signature. The first certificate payload contains an end-entity certificate Any other certificate payloads received containing CA certificates are used to complete the CA trust chain System SSL Certificate services NSSD (3) Verify Signature Request Peer IKED Please use CA1-signed certificate (1) Cert Request Payloads z/os IKED CA Trust Chain Root CA (4) Any additional CA certificates received are used when verifying the peer s certificate EE1 CA2 Sub CA1 (2) Signed Cert Payloads Sub CA2 EE1 Received Page 42

Agenda IBM Software Group Enterprise Networking Software Background Cryptography basics Digital certificates IP Security (IPSec) / Internet Key Exchange (IKE) Certificate use in the IKE Authentication Negotiation modes Network Security Services Daemon (NSSD) Overview Digital signature operations Advanced certificate services Certificate revocation lists Certificate trust chains IKEv2 certificate encoding types Implementing the NSSD solution Page 43

IKEv2 certificate encoding types - Hash and URL encoding of certificate and certificate bundles IKEv2 support includes new certificate payloads encoded using hash and URL encoding Hash and URL encoding is an alternative to transmitting the actual certificates Amount of data carried on the IKE certificate payload flow is reduced Offsets the potential for increased data introduced by Certificate Trust Chain support The URL points to the location of either a certificate or certificate bundle in a binary file on HTTP server Facilitates creation of a shared public key infrastructure by using HTTP servers as digital certificate repositories Certificates / certificate bundles can be retrieved using HTTP protocols by anyone who knows the URL and has network access to the HTTP server Page 44

Support for new certificate repository formats New certificate repository formats introduced with this support Binary file that contains a DER-encoded X.509 certificate Binary file that contains an X.509 certificate bundle An X.509 certificate bundle is a binary file that contains a collection of some or all of the following: End-entity certificates CA certificates Certificate revocation lists Used if HTTP server named in CRLDistributionPoints extension cannot be reached New z/os certbundle UNIX command creates X.509 certificate bundle files containing X.509 certificates retrieved from the key ring (identified by label) CRLs from z/os UNIX files Output bundle files can be placed on an HTTP server Add a corresponding CertificateBundleURL statement to the NSSD configuration file, with the URL of the bundle file Page 45

IKEv2 processing of hash and URL encoding IKEv2 flows include transmission of new certificate payloads in IKE messages Certificate payloads can be encoded in several ways, including: Encoding 4 is the entire binary X.509 certificate Can be quite long (several hundred bytes) Encoding 12 is the hash of a certificate, plus the URL where the certificate resides Encoding 13 is the hash of a certificate bundle, plus the URL of the bundle These payloads flow encrypted in the IKEv2 messages After the receiver retrieves the certificate, it verifies the integrity of the certificate by recreating the hash and comparing it to the hash value from the certificate payload which is digitally signed by IKE peer IKEv2 peers indicate support for encodings 12 and 13 to each other Notify type HTTP_CERT_LOOKUP_SUPPORTED Use of Hash and URL encodings has an effect on performance Reduces the size of the IKE messages May increase the actual time to process Latency introduced by certificate / certificate bundle retrieval from the HTTP server Caching retrieved URL data helps reduce this time Page 46

HTTP processing controls Enabling / disabling HTTP lookup CertificateURLLookupPreference keyword of KeyExchangeAction Allow - send and request URLs Tolerate - send URLs, don t request Disallow - do not send or request Also available on KeyExchangePolicy Sets the stack level default NSSD configuration file URL data specifications CertificateURL and CertificateBundleURL statements Define the label of a local certificate on the key ring, and the corresponding URL of the certificate or bundle file to be used by peer nodes for HTTP retrieval URLCacheInterval statement Defines the number of minutes that retrieved URL data is cached Default: 1 week 0 means do not cache All of these statements can be modified dynamically MODIFY nssd,refresh Page 47

HTTP support for create signature flow IKE Peer HTTP_CERT_LOOKUP_SUPPORTED Notify Cert Request Payloads Cert Payloads w/hash and URL Retrieve for verification: Certificates Certificate Bundles IKED IPSec policy file CertificateURLLookupPreference Create Signature flow: HTTPCertLookupSupported HASH and URL in response Retrieve for hash creation Certificates Certificate Bundles Cache the results NSSD NSSD Config file identifies CertificateURL CertificateBundleURL URLCacheInterval HTTP Server HTTP Server certbundle command Certificates Certificate Bundles Certificates Certificate Bundles creates Page 48

HTTP support for verify signature flow HTTP_CERT_LOOKUP_SUPPORTED Notify IKE Peer Cert Request Payloads Cert Payloads w/hash and URL IKED Verify Signature flow: HASH and URL in request NSSD IPSec policy file Retrieve for hash creation Certificates Certificate Bundles CertificateURLLookupPreference Retrieve for verification: Certificates Certificate Bundles Cache the results NSSD Config file URLCacheInterval HTTP Server HTTP Server Certificates Certificate Bundles Certificates Certificate Bundles Page 49

z/os V1R12 Communications Server Implementing the NSSD solution Page 50

Implementing Certificate Management in NSSD Basic configuration for creating and verifying digital signatures 1 Configure the Network Security Server (nssd.conf) 2 Configure NSS client stacks (iked.conf) 3 Configure AT-TLS policy for the IKED NSS client 4 Configure AT-TLS policy for NSSD 5 Install permit filter rules for the IKED NSS client (outbound TCP, remote port 4159) 6 Install permit filter rules for NSSD (inbound TCP, local port 4159) 7 Authorize IKED NSS clients to specific NSS services and certificates using SAF profiles 8 Optional support for retrieval of CRLs from web server URL Cache interval Update IKE policy to indicate level of CRL checking (revocation level) Install permit filter rules for reaching HTTP server (outbound TCP, remote port 80) 9 Create NSSD keyring 10 Install end entity certificates at NSSD host The Configuration Assistant for z/os Communications Server can assist with steps 1-8 above. Page 51

Implementing hash and URL encoding support in NSSD 1 Install permit filter rules for reaching HTTP server (outbound TCP, remote port 80) 2 To store certificates on a web server: Export end entity certificates from NSSD keyring to an MVS dataset (using DER-encoding) FTP DER-encoded certificates to a web server Update NSSD configuration with URL of certificate 3 To store certificate bundles on a web server Use certbundle command to populate a certificate bundle with one or more of the following: End entity certificate Intermediate CA certificates CRLs FTP certificate bundle to a web server Update NSSD configuration with URL of certificate bundle 4 Update IPsec policy to indicate level of HTTP support Page 52

Summary IBM Software Group Enterprise Networking Software The table below summarizes the support for digital certificates in IKED and NSSD and identifies the supported configurations Function Rivest-Shamir-Adleman (RSA) Digital Signature algorithm Certificate Revocation Lists Locate a certificate within a CA s trust chain Send missing CA certificates to a peer Use received CA certificates when validating a peer s signature Hash and URL encoding for certificate payload Treat as having an empty certificate request payload Elliptic Curve Digital Signature Algorithm (ECDSA) IKEv1 Local IKEv1 with NSSD IKEv2 with NSSD Page 53

For more information URL http://www.twitter.com/ibm_commserver http://www.facebook.com/ibmcommserver http://www.ibm.com/systems/z/ http://www.ibm.com/systems/z/hardware/networking/ http://www.ibm.com/software/network/commserver/ http://www.ibm.com/software/network/commserver/zos/ http://www.ibm.com/software/network/commserver/z_lin/ http://www.ibm.com/software/network/ccl/ http://www.ibm.com/software/network/commserver/library/ http://www.redbooks.ibm.com http://www.ibm.com/software/network/commserver/zos/support/ http://www.ibm.com/support/techdocs/atsmastr.nsf/web/techd ocs http://www.rfc-editor.org/rfcsearch.html http://www.ibm.com/systems/z/os/zos/bkserv/ Content IBM Communications Server Twitter Feed IBM Communications Server Facebook Fan Page IBM System z in general IBM Mainframe System z networking IBM Software Communications Server products IBM z/os Communications Server IBM Communications Server for Linux on System z IBM Communication Controller for Linux on System z IBM Communications Server library ITSO Redbooks IBM z/os Communications Server technical Support including TechNotes from service Technical support documentation from Washington Systems Center (techdocs, flashes, presentations, white papers, etc.) Request For Comments (RFC) IBM z/os Internet library PDF files of all z/os manuals including CommServer Page 54