Managing Digital Certificates Across The Enterprise: Books
Managing Digital Certificates Across The Enterprise: Books
Managing Digital
Certificates across the
Enterprise
Keith Winnard
Martina von dem Bussche
Wai Choi
David Rossi
Redbooks
International Technical Support Organization
February 2016
SG24-8336-00
Note: Before using this information and the product it supports, read the information in “Notices” on page v.
This edition applies to Version 2, Release 2, of IBM z/OS (product number 5650-ZOS).
Notices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .v
Trademarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Authors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Now you can become a published author, too! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Comments welcome. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Stay connected to IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
Related publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Other publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Online resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Help from IBM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
This information was developed for products and services offered in the US. This material might be available
from IBM in other languages. However, you may be required to own a copy of the product or product version in
that language in order to access it.
IBM may not offer the products, services, or features discussed in this document in other countries. Consult
your local IBM representative for information on the products and services currently available in your area. Any
reference to an IBM product, program, or service is not intended to state or imply that only that IBM product,
program, or service may be used. Any functionally equivalent product, program, or service that does not
infringe any IBM intellectual property right may be used instead. However, it is the user's responsibility to
evaluate and verify the operation of any non-IBM product, program, or service.
IBM may have patents or pending patent applications covering subject matter described in this document. The
furnishing of this document does not grant you any license to these patents. You can send license inquiries, in
writing, to:
IBM Director of Licensing, IBM Corporation, North Castle Drive, MD-NC119, Armonk, NY 10504-1785, US
This information could include technical inaccuracies or typographical errors. Changes are periodically made
to the information herein; these changes will be incorporated in new editions of the publication. IBM may make
improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time
without notice.
Any references in this information to non-IBM websites are provided for convenience only and do not in any
manner serve as an endorsement of those websites. The materials at those websites are not part of the
materials for this IBM product and use of those websites is at your own risk.
IBM may use or distribute any of the information you provide in any way it believes appropriate without
incurring any obligation to you.
The performance data and client examples cited are presented for illustrative purposes only. Actual
performance results may vary depending on specific configurations and operating conditions.
Information concerning non-IBM products was obtained from the suppliers of those products, their published
announcements or other publicly available sources. IBM has not tested those products and cannot confirm the
accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the
capabilities of non-IBM products should be addressed to the suppliers of those products.
Statements regarding IBM's future direction or intent are subject to change or withdrawal without notice, and
represent goals and objectives only.
This information contains examples of data and reports used in daily business operations. To illustrate them
as completely as possible, the examples include the names of individuals, companies, brands, and products.
All of these names are fictitious and any similarity to actual people or business enterprises is entirely
coincidental.
COPYRIGHT LICENSE:
This information contains sample application programs in source language, which illustrate programming
techniques on various operating platforms. You may copy, modify, and distribute these sample programs in
any form without payment to IBM, for the purposes of developing, using, marketing or distributing application
programs conforming to the application programming interface for the operating platform for which the sample
programs are written. These examples have not been thoroughly tested under all conditions. IBM, therefore,
cannot guarantee or imply reliability, serviceability, or function of these programs. The sample programs are
provided “AS IS”, without warranty of any kind. IBM shall not be liable for any damages arising out of your use
of the sample programs.
The following terms are trademarks or registered trademarks of International Business Machines Corporation,
and might also be trademarks or registered trademarks in other countries.
DB2® Redbooks® WebSphere®
Domino® Redbooks (logo) ® z Systems™
IBM® System z® z/OS®
RACF® Tivoli®
Linux is a trademark of Linus Torvalds in the United States, other countries, or both.
Windows, and the Windows logo are trademarks of Microsoft Corporation in the United States, other
countries, or both.
Other company, product, or service names may be trademarks or service marks of others.
Download
Android
iOS
Now
This IBM® Redbooks® publication is the first in a series of five books that relate to the
implementation and management of digital certificates that are based on a public key
infrastructure. Digital certificates play a major role in the protection of data communications
and their use continues to grow.
After you read this IBM Redbooks publication, we suggest that you progress to z/OS PKI
Services: Quick Set-up for Multiple CAs, SG24-8337.
Your comments are appreciated. Your feedback can help improve the quality of our Redbooks
publications so other readers can gain more value from them.
Authors
This book was produced by a team of specialists from around the world working at the
International Technical Support Organization, Poughkeepsie Center.
Keith Winnard is the z/OS Project Leader at the International Technical Support
Organization, Poughkeepsie Center. He writes extensively and is keen to engage with
customers to understand what they want from IBM Redbooks Publications. Before joining the
ITSO in 2014, Keith worked for clients and Business Partners in the UK and Europe in various
technical and account management roles. He is experienced with blending and integrating
new technologies into the traditional landscape of mainframes.
Martina vondem Bussche is an IT Security Architect at the Client Center in the IBM
Research & Development lab in Germany. She is certified ISACA Information Security
Manager (CISM) and Information Systems Auditor (CISA). Having started her career at IBM
as a systems engineer in technical pre-sales for Mainframe hardware and continued in
technical pre-sales for IBM System z® software security products, she has a strong
Mainframe background. Now, she focuses on overall Mainframe security topics and projects.
Wai Choi is a Senior Software Engineer for IBM in Poughkeepsie. She works on digital
certificate support in IBM RACF®, PKI services, and Kerberos. Wai actively participates in
conferences and forums about digital certificate and related topics. She is a Certified
Information Systems Security Professional (CISSP).
Bob Haimowitz (Development Support Team [DST], Poughkeepsie Center) for setting up
and maintaining the systems, and providing valuable advice, guidance, and assistance
throughout the creation of this IBM Redbooks publication.
Rich Conway (DST, Poughkeepsie Center) for setting up and maintaining the systems, and
providing valuable advice, guidance, and assistance throughout the creation of this IBM
Redbooks publication.
Jo Johnston (GTS, Mainframe Serviceline Architect, IBM UKI) for advice and guidance
throughout creation of this book.
Alice Shitari (IBM) for advice and guidance throughout creation of this book.
Vincente Ranierie Jr (IBM) for advice and guidance throughout creation of this book.
Thank you to the following people for setting up and supporting the project and the residency:
John Gierloff (Operations, Poughkeepsie Center) for residency set-up and support.
Don Brennan (DST, Poughkeepsie Center) for setting up and maintaining the systems
hardware that was used in the creation of this IBM Redbooks publication.
Ella Buslovich (Graphics specialist, Poughkeepsie Center) for providing guidance and
specialist graphics for this IBM Redbooks publication.
Ann Lund (ITSO Administration, Poughkeepsie Center) for administrative support to enable
the residency.
Cheryl Gera (ITSO Administration, Poughkeepsie Center) for managing the business
operations for this IBM Redbooks publication.
Find out more about the residency program, browse the residency index, and apply online at:
ibm.com/redbooks/residencies.html
Comments welcome
Your comments are important to us!
We want our books to be as helpful as possible. Send us your comments about this book or
other IBM Redbooks publications in one of the following ways:
Use the online Contact us review Redbooks form found at:
ibm.com/redbooks
Send your comments in an email to:
[email protected]
Mail your comments to:
IBM Corporation, International Technical Support Organization
Dept. HYTD Mail Station P099
2455 South Road
Poughkeepsie, NY 12601-5400
Preface xi
xii Managing Digital Certificates across the Enterprise
1
1.2 Overview
Digital certificates are at the heart of protecting all aspects of data communication, from
websites for business and banking to shopping and product development, to social media for
interaction and collaboration.
The information explosion, the adoption of cloud computing, and governmental regulations
are making digital certificates even more important than ever.
Two parties are involved in the use of certificates (in this book, we refer to digital certificates
as certificates). One party uses a certificate to identify itself, the other party must validate it.
This process is referred to as a handshake. The protocol that is used is Secure Sockets
Layer/Transport Level Security (SSL/TLS). For the handshake process to work, both parties
must store the certificates in their own certificate store. The certificate store is also referred as
a keystore or a key database.
But where do you obtain the certificates to put in the certificate store for the SSL/TLS
protocol?
A certificate authority (CA) issues certificates. There are well-known CAs that sell certificates.
There are internal CAs that issue certificates for their own enterprise. All certificates are
created by using common standards. That is, no matter which CA sells you the certificate, no
matter what CA and on what platform the certificate is created, it can be used by any
application on any platform. Therefore, choosing the CA is an independent consideration of
the platform on which the certificate is being used.
If you have applications running on z Systems, Linux, and Windows that need certificates to
operate and you want to use an internal CA, you do not need to have a CA running on every
one of the platforms.
What platform do you want to run your CA? Selecting the platform is based on the following
key considerations:
Security
Availability
Scalability
Functionality
This book describes these topics to give you a high-level understanding of the considerations
and options you have to implement an effective way of creating and managing digital
certificates with cost and value in mind.
Sally
Before communication starts, anyone or anything (such as a server) must make their identity
known to others before proceeding with the communication process.
Note: Each party in the communication process is referred to as an entity; however, for the
purposes of this overview, we refer to people communicating via mobile phones and
notebooks (as shown in Figure 1-1) with Tom and Sally. This scenario can also apply to
servers talking to each other or people and servers communicating with each other.
Secondary questions
Tom might present his identity to Sally, but can she believe this is really Tom? Before we share
any messages or transactions with anyone or anything, we must feel more secure about who
is involved in the communication and determine whether they can be party to the
communication. Three more questions are shown in Figure 1-2 on page 4.
Imagine Tom is making a purchase from Sally. Tom feels more comfortable about making a
purchase if these secondary questions are answered before proceeding with the purchase,
and has confidence in knowing with whom he is dealing.
The solution to the issues that are raised by our questions are certificates, as shown in
Figure 1-3.
Sally
We can see in Figure 1-3 that if certificates can provide the authentication of people and
servers that we want to communicate with, we can proceed with more confidence and an
increased level of trust.
Sally
Tom
In the same way you have concerns about identifying with whom you are communicating, the
argument applies to the certificates themselves. We are facing the well-established question
of “Quis custodiet ipsos custodes?” or, “Who will guard the guards?”
The solution is to establish a recognized way for people and servers to obtain a certificate that
they can trust. The certificate must also provide information to be used to protect the
messages and data during the communication process.
Note: The certificate does not perform any encryption. The information that is contained
within it is used by other software and hardware to perform encryption.
Sally
Certificate
Authority
Authentication from a
Tom trusted source
The typical steps for this process to occur are shown in Figure 1-6.
Sally
Certificate
Authority
Typical steps:
Tom 1. User requests certificate
2. CA validates the request
3. CA grants/rejects the request
4. CA issues certificate
5. User picks up certificate
6. Certificate now available for use
Although this overview is simplistic, section 1.4, “Behind the scenes” on page 7 describes
varying levels of communication protection and what attributes must be met to help answer
the questions posed thus far.
We describe the basic information for each topic, and present a high-level understanding of
how the different parts can work together to form a solution.
Security attributes
Communication includes the following essential security attributes:
Authenticity: Verification of the validity of a person or server’s claim to identifying who they
or it is.
Integrity: Verification that the message content was not changed or compromised.
Confidentially: Ensuring that the message can be seen by the intended recipient only.
Non-repudiation: Assurance that the sender or recipient cannot deny being the source or
in receipt of the message.
Without these attributes, we are exposing our communications to a high level of risk and that
exposure can result in unwanted consequences.
Therefore, how do we take steps to achieve a level of security that we can have confidence
in?
In cryptography, an algorithm or set of algorithms use a key to encrypt the data. There are two
parts: the algorithm and the key. These parts are separate from each other, and because they
are separate from each other, a new key is required if the key is compromised but the
algorithms can remain in place. There is no need to write a new algorithm; instead, use a
different key.
In Tom and Sally’s communication, the same key is used to encrypt and decrypt the original
message.
The key is a secret between Tom the sender and Sally the receiver. If only Tom and Sally can
access the key, consider the following points:
If Tom uses this particular key to encrypt a message and send it to any other member of
the group, the intended recipient does not have the key and cannot decrypt the message
and read it.
If Tom or Sally want to communicate with other members of the group, the following
scenarios might occur:
– Tom creates an individual key for every person and server in the group to communicate
with each directly. In this case, he requires another six keys. If everyone in the group
chose to communicate with each other by using individual keys, the number of keys
would be 6+5+4+3+2+1 = 21. This number increases further if members of the group
wanted to form sub groups that had their own keys to secure their communication.
– Tom and Sally might choose to share the key with others. Those members who had
access to the key can encrypt and decrypt messages with each other; however, the
privacy level between the original Tom and Sally level now moves to a group level
privacy whereby anyone who has access to the key can see the others’ messages.
Note: In secret key cryptography, this type of key is called a symmetric key.
The use of these two keys is known as a paired key approach. The key that is used for
encryption is different from the key used for decryption. The public key has a counterpart
called the private key. When the keys are created, they are created as a pair. This process is
known as asymmetric cryptography, which is different from the secret key that is shown in
Figure 1-7 on page 7 that uses a symmetric key (uses the same key for the encryption and
decryption).
Figure 1-8 shows how public key cryptography handles the events that were shown in
Figure 1-7 on page 7.
Is this solution acceptable? Does it meet what we stated in “Security attributes” on page 7?
No, it does not. It provided a level of confidentiality because the message was encrypted and
remained so during its journey until Sally receives it and decrypts it. However, it did not
provide sufficient protection for authenticity, integrity, and non-repudiation.
In Figure 1-8, Sally cannot be sure who the sender really is because the sender picked up her
public key and used it. Tom did not supply any information that verifies his identity. Therefore,
although Sally can decrypt his message and read it, she has no real proof of who sent the
message. If Tom wants to prove only that the message is coming from him, he can use
another technique: he can digitally sign the message.
Sally
This technique improves the situation. The digital signature that was provided by Tom using
his private key can prove that the message is from him; otherwise, when Sally used his public
key to decrypt the message, it does not work. The matching digests also prove that the
message was not altered.
In the scenarios that describe the use of public and private key pairs thus far, the following
fundamental questions still must be answered:
How does Sally get Tom’s public key?
How does Sally know which algorithms to use to create the hash?
However, the use of a certificate to carry the public key and the algorithm solves the problem
partially. The problem moves to the certificate level in that how can Sally know that the
certificate really belongs to Tom and that she can trust the content? If Sally cannot trust the
issuer of Tom’s certificate, she cannot trust the certificate.
If a certificate is to be trusted, the creator and issuer of the certificate must be trustworthy. It is
here that the concept of the CA is important.
The CA validates credentials of owner and signs the digital certificate. The CA’s signature
validates that the owner is who they say they are and that the public key belongs to them. The
CA might also generate the key pair if the person or server has not already done so, as shown
in Figure 1-10.
Sally
The CA must be a trusted third party because without this trust, the purpose of the certificate
is defeated and we are still left with the issue of not knowing with certainty if the public key
belongs to the sender. Figure 1-10 shows the following typical process to issue a certificate:
1. The CA collects and validates credentials from the certificate requester.
2. The CA accepts the request with the public key that was generated by the owner. If the
owner wants the CA to generate the keys, it generates the public key and private pair.
The certificate that is issued to the requester contains key fields, such as the owner’s name,
public key, issuers name, issuer signature, and the period of validity. There can be other
information contained, which might be supplied at request time that can then be included in
the certificate, as shown in Figure 1-11.
Digital Certificate
Owner’s Name
Issuer’ Signature
Period of Validity
Other information…
The amount of detail can vary because there is a demand for more than one type of
certificate. That is, certificates can be created for different purposes; for example, email and
VPN.
The X.509 standard introduced extensions to digital certificates that cater for the differing
requirements but still remain true to the one type of digital certificate.
We have one last matter to address: How can the CA’s identity be represented by its own
certificate?
The CA must establish its own identity and credentials by taking the following actions:
1. Generating its own key pair.
2. Protecting its private key so it is not available to entities.
3. Creating its own certificate as being the owner and including its public key.
4. Self-signing the certificate.
If the digital certificate expired or was revoked, it is not valid and cannot be trusted.
Important: A certificate is used only to verify identity. The receiving system can map the
identity to authorization credentials, but the certificate does not contain authorization
credentials.
Paul
SSL Handshake
Sally
CA
CA
CA CA
CA CA
Tom
Before implementing a project that requires data communications, the interested parties that
are involved with each part of the application must agree on a collection of certificates and
keys that are needed to provide secure communication. The agreed collections must allow for
the development, testing, and implementation phases of the project. This process most likely
involves setting up a collection of keys and certificates into a various stores.
If the applications are large, it is also likely various certificates are required for the individual
areas of the application. These certificates require the appropriate keys.
Sally
Config
Config
CA
CA CA
Config
CA
Config
CA CA
Tom Config Config
Server authentication
The client starts the communication and attempts to establish communication with the server.
The server must identify itself to the client. This process highlights why stage 1 and 2 are
important because they ensure that the appropriate certificates are presented and the keys
are available. Based on this exchange, the client can validate the server.
Client authentication
Having identified itself to the client, the server might now require that the client identify itself
so that the server can validate the client.
Sally
Config
Config
CA CA
CA CA
CA
CA CA Config
CA
Config
CA
CA
Tom CA Config
Config
Note: The top-level CA is known as the root CA. If the browser trusts the root CA, it
automatically trusts any intermediate CA that belongs to the root CA. This configuration is
often referred to as the chain of trust.
Sally
Config
Config
CA CA
CA CA
CA
CA CA
Root
Config
CA
CA
Config
CA
CA
CA
Tom Config CA Config
The topics that we described in this chapter that relate to certificates and asymmetric keys
form the foundations of a Public Key Infrastructure (PKI). For more information, see
Chapter 3, “Introducing z/OS PKI Services” on page 27.
An internal CA is installed and maintained within your enterprise, issuing certificates for the
people and servers of your internal IT system.
An external CA is installed and maintained outside of your enterprise and is treated as a third
party. Certificates are purchased from a well-known CA.
2.2.1 Costs
Buying digital certificates from a well-known CA creates financial costs. Our research at the
time of this writing shows that prices can vary 20 - 1,200 US dollars per SSL certificate for the
first year, depending on your requirements and the CA that you choose.
Although it is suggested to use certificates from a well-known CA (for example for external or
public-facing web pages), it might not be necessary for internal (or private) IT systems. For
internal IT systems or communication among a closed group of entities, a private CA can be
used. Issuing certificates from within your organization avoids the costs of purchasing them
from an external source.
An analogy can be made here between internal and external certification. Next, we consider
two items of identification, a passport and a company JOB ID card, as shown in Figure 2-1 on
page 21.
Accepted as
valid ID
Recognized for
global travel
The passport is externally validated and issued and provides the carrier with recognized
global identity authentication whereas the Job ID card is accepted only within the company it
was issued. It is not accepted as global identity authentication as is the passport. However,
the passport is accepted as an acceptable identity authentication for the company to issue a
job ID card.
The Business Partners might need certificates to deal with your organization. If your
organization has an internal CA, your Business Partners must we willing to accept your CA
certificate into their certificate store. This difference is a subtle change because your internal
CA is now dealing with external entities. The effort and administration that is involved must be
balanced against the costs and convenience of buying the certificates from a well-known CA.
The CA’s certificate must be in each Business Partners certificate store, which can become a
high administration effort as the number of Business Partners increases. Conversely,
well-known CA certificates are included in the certificate store.
If a well-known company that provides certificates to high-profile clients (such as, financial
institutions and major retailers) has its root CA compromised, all of the certificates it issued
are unusable. This situation is serious and has visible affect on trading, which can make
headline news.
Expiration Request
- -
Revocation Renewal
Usage Approval
Generation
-
Distribution
You can think of a digital certificate as a passport. It is used to prove that you are the person
you say that you are and it is coming from a trusted authority: the government. This analogy
also can be used to explain a certificate lifecycle. A certificate lifecycle includes the following
steps:
1. As with a passport proving your identity, a digital certificate must be requested at a trusted
authority (CA).
2. Someone at the authority must prove the request and approve or reject the certificate
request.
3. After a certificate request is approved, the certificate can be generated and made
available for distribution.
4. The certificate is used to authenticate an entity at a certain IT service or used to secure a
communication. (For more information about the various use cases for certificates, see
Chapter 1, “Digital certificates overview” on page 1).
5. The expiration date depends on the initial parameters in the certificate request. After a
certificate expires, it is no longer usable. Revocation also can stop a certificate from being
used even though it did not expire. It is the responsibility of the CA to post the revocation
list. Entities accessing the certificate must check to see whether the certificate was
revoked before trusting it.
Roles
Depending on the internal IT security policies, the following questions must be asked:
Who in an enterprise is allowed to request certificates?
Who or how many administrators must approve a certificate request?
Is auto-approval to be allowed, and to what level?
Is there an audit trail for auto-approval or any other approval process?
The requirements of the various IT security policies can be met by using a public key
infrastructure (PKI) and establishing a consistent and accountable workflow for the certificate
request and approval process.
2.4.3 Expiration
An issue with certificates is that they expire. If a certificate expires, the authentication process
no longer works because the verification of the certificates fails.
The effect of a failed level of authentication often causes disruption to applications or in more
extreme circumstances can lead to outages of IT services. For example, authenticating failure
in an online business banking application can cause problems that require immediate
attention and a high priority resolution.
2.4.4 Revocation
A digital certificate can be revoked for the following reasons:
Key compromise
CA compromise
Affiliation changed
Superseded
Cessation of operation
2.5 Accountability
Accountability is key to demonstrate to auditors that certificates are managed across the
enterprise in accordance with the enterprise’s defined policies. The accountability is essential
to verify that processes that relate to the digital certification lifecycle can be monitored to
detect anomalies.
In addition, quantifiable accountability and monitoring can be used to measure and report
activity levels that relate to the lifecycle and to use trending to predict activity levels within the
lifecycle.
A PKI is based on public key cryptography. The infrastructure can consist of hardware,
software, and policies to create, manage, store, distribute, and verify digital certificates.
Managing certificates centrally in a PKI helps you track all the activities that occur during the
lifecycle of a certificate; for example, who requested a certificate and who approved it.
Several countries are introducing laws or regulations around electronic signatures that require
the use of a PKI.
Use of the provided certificate templates can ensure that all certificates that are requested by
using your customized templates are aligned with your organization’s IT security policies.
z/OS PKI services creates certificates for requesters who did and did not generate their own
key pair. For those requesters who did not generate their own key pair, the key pair might be
generated. However, the Integrated Cryptographic Service Facility (ICSF) must be configured
to use this function.
z/OS PKI Services provides fine granular controls of authorizing PKI administrators that are
based on the certificate authority (CA) domain, the administrative action that is being
performed, or the certificate type, as shown in Figure 3-3.
Depending on the IT Security policies you have in your enterprise, you might have a team of
administrators in place for approving a certificate request. z/OS PKI Services provide the
ability to require approvals from multiple administrators before issuing the requested
certificate (NxM authorization).
In contrast to certificate requests that require multiple approval steps, you can set up z/OS
PKI services to bypass the approval process; for example, the certificate request is
automatically approved if the requester authenticated themselves in RACF first.
Dear [email protected],
Thank you for choosing ITSO SUBCA1 PKI. The certificate you requested for
subject CN=ibm.Redbooks.com,OU=Class 1 Internet Certificate CA,O=The Firm is
now ready for pickup.
Please visit:
https://wtsc74.itso.ibm.com/Subca1/ssl-cgi-bin/caretrieve.rexx?TransactionId=1k
9UcGqjTLuv2Qn17%2B%2B%2B%2B%2B%2B%2B&Template=PKI+Key+Certificate
to retrieve your certificate.
You will need to input your passphrase that you entered when you submitted the
request.
If the certificate requester generated the key pair, the public key is sent with the request. The
requester keeps their private key. z/OS PKI Services has no knowledge of the private key, but
includes the public key into the certificate.
There is a key issue here that must be considered. Because z/OS PKI Services has no
knowledge of the private key, z/OS PKI Services cannot recover the private key if the
requester loses the private key. Also, the requester must recover the key or request a new
certificate by using a new key pair.
z/OS PKI services can generate Rivest-Shamir-Adleman (RSA) keys and ECC keys.
z/OS PKI Services also supports standardized protocols; therefore, client applications can
request and obtain certificates autonomously. The support includes the following protocols:
Simple Certificate Enrollment Protocol (SCEP)
By using SCEP, you can securely issue certificates to large numbers of network devices
by using an automatic enrollment technique. The network devices (often IPSEC devices,
such as Cisco routers) must be SCEP-enabled and preregistered to your CA domain
before they can successfully request certificates from you.
You can configure PKI Services to respond automatically to SCEP certificate requests or
to submit SCEP certificate requests to the PKI administrator for approval.
Certificate Management Protocol (CMP)
CMP is an Internet Protocol that is used to manage digital certificates within a PKI. A
certificate request message object is used within the protocol to convey a request for a
certificate to a CA. z/OS PKI Services allows a CMP client to communicate with it to
request, revoke, suspend, and resume certificates.
Each DP CRL contains its own location and this location is contained within the
CRLDistributionPoints extension value. The CRLs and the DP CRLs can be saved in a file
system or they can be posted to LDAP. You check the revocation status by referring to the
CRL or DP CRLs.
z/OS PKI Services provides you with another way to check the certificate revocations status
by using the Online Certificate Status Protocol (OCSP). z/OS PKI Services can be enabled as
an OCSP responder. Therefore, z/OS PKI Services can receive requests that contain a
certificate serial number and it makes a call to OCSP, which used the certificate unique
information to check the revocation status of the certificate and responds accordingly to the
requester with the appropriate status. The location of the revocation status is contained within
the certificate in the AuthorityAccessInformation extension.
Note: The status that is retrieved by using OCSP is current, although the CRL option might
not reflect the latest content at the time the check was performed.
The interfaces are through the web services provided by the following servers:
z/OS HTTP Server
IBM WebSphere® Application Server
Note: IBM HTTP Server powered by Domino® V5.3 is not supported by z/OS V2R2.
Earlier versions of z/OS PKI Services (z/OS 2.1 and lower) support IBM HTTP Server that
is powered by Domino. The z/OS V2R2 requires the IBM HTTP Server powered by Apache
V9.0, which is shipped with the base z/OS V2R2.
The queries and requests are captured by the HTTP server or WebSphere Application Server
or go directly to the Systems Authorization Facility (SAF) Services application programming
interface (API) R_PKIServ callable service (IRRSPX00). It allows authorized applications,
such as servers, to programmatically request the functions of PKI Services. If the HTTP
server is used, the CGI scripts call R_PKIServ through a REXX glue routine. If the
WebSphere Application Server is used, the JSPs call R_PKIServ through the JNI layer.
ICSF
Although optional, it is strongly suggested that ICSF is part of your PKI. Because it is not
required to be present initially, it can be added later. PKI is necessary for the following
functions:
RACF can optionally use ICSF’s public key data set (PKDS) to securely store the PKI
Services CA signing key.
PKI Services can use ICSF PKCS #11 token data set (TKDS) to store key pairs that PKI
Services generates for non-CMP certificate requests.
Securely store the z/OS PKI Services certificate authority's private signing key and key
pairs that PKI Services generates for certificates.
ICSF supports elliptic curve cryptography (ECC) keys. The z/OS PKI Services CMP CGI (see
Figure 3-6 on page 34) needs ICSF’s PKCS #11 to generate key pairs.
3.3.3 Repositories
Figure 3-8 shows the repositories that are associated with z/OS PKI Services. Some of the
repositories are optional and their existence and use depends on how you choose to
configure your environment. For example, if you choose the IBM DB2® database options in
preference to the VSAM options, DB2 must be available.
RACF
LDAP
z/OS PKI
Services
RACF SAF callable daemon
Databases service (CA and RA
R_PKIServ process)
(IRRSPX00) Certificate
Requests These can be
VSAM or DB2
Issued
z/OS ICSF Certificates
SMF
PKDS TKDS
The ICSF data sets also are optional. If you are not running ICSF, you cannot perform only
specific tasks that are related to ICSF. You might not need those specific requirements.
RACF database
The RACF database contains many aspects that are related to security as a whole. In terms
of z/OS PKI Services, it contains the following components:
The CA’s key ring, which contains the CA certificate and its private key
Profiles protecting the PKI Services’ functions and keys
z/OS PKI
RACF RACF Services
Databases daemon
Audit trail
The SMF data is an audit trail of the z/OS PKI Services activities. Depending on the audit
policies and practices that are deployed in your site, this feature is an effective way to report
certificate activities to monitor the policies and practices and to measure their effectiveness.
The SMF data can be analyzed and includes the following possibilities for its use:
To identify non-expired obsolete certificates from remaining available
Monitor the request activities and identify who is involved with each request
Provide activity level for potential charge back to projects
Analyze activity trends
Explore certificate status for problem determination purposes
3.4.1 Scalability
The implementation of your PKI infrastructure can enjoy the scalability of z Systems hardware
and software. You can use the amount of capacity you need to fulfil your organization’s
requirements.
3.4.2 Availability
z/OS PKI Services benefits from the Qualities of Service for availability. This benefit is
provided by the underlying operating System z/OS, especially when z/OS Sysplex capabilities
are used.
The scope of sharing affects your strength of availability. With the Sysplex option offered by z
Systems, you can share the repositories across the sysplex; that is, across multiple instances
of z/OS. Availability is strengthened because each z/OS system can access z/OS PKI
Services and access the shared data.
Figure 3-10 on page 40 shows a scenario in which there is a remote data center that also has
a Sysplex. This configuration can take over the certificate work if the first data center become
unavailable.
When VSAM data sets are used as back-end storage, VSAM record level sharing (RLS) can
be used across the Sysplex. When DB2 for z/OS is used, DB2 data sharing can be used to
set up high available back-end storage. IBM HTTP Server and WebSphere Application Server
allow setup for failover scenarios.
3.4.3 Security
PKI Services uses the SSL/TLS for all the traffic flow through the z/OS HTTP server. The
WebSphere Application Server can be used as an alternative to the z/OS HTTP Server, which
is the same security mechanisms regarding encrypted traffic and authenticated requests
apply.
The Resource Access Control Facility (RACF) or equivalent external security manager can be
used to control who can call the PKI Services functions and protect access of the private key
of the CA.
RACF creates your CA’s certificate, key pair, certificate, and key ring. The private key is
stored in the RACF database or in the public key data set (PKDS) if ICSF is available.
If the Enterprise PKCS#11 coprocessor is available to your system, it provides the ability for
hardware protection for the private key of the PKI Services CA and those it generated for the
requesters.
3.4.4 Cost
z/OS PKI Services is not a separately priced product. Rather, it is licensed and integrated
within z/OS.
Because z/OS PKI Services provides the capability to issue certificates, it is an alternative to
buying certificates from third parties; for example, for the company’s internal IT environment.
With costs of $20 - $1,200 USD per SSL certificate and year for x number of entities, this
issue can easily sum up to millions of savings per year.
IMPORTANT
The CAs all run on z/OS.
After the certificate is
created and made available,
it is collected by the
requestor and loaded onto
their platform.
Root CA
NOTE
CA1 CA2 CA3 The CAs are on z/OS, but the
issued certificates can be
elsewhere. The CA on z/OS
retains information about
the certificate and can
service other requests and
send notifications
concerning that certificate.
The three sub CAs issue certificates for different use cases in the enterprise. You can divide
the sub CAs into organizational structures to match your enterprise.
Different use case can be for example, certificates to authenticate mobile devices to the
corporate network, SSL certificates for internal servers, VPN certificates for users dialing into
the corporate network from home, and certificates to sign or encrypt email.
After the certificate is available, the requesters can download it to their respective areas. This
task can be on any platform or in the requester’s cloud.
The next step for you is to implement a quick and simple structure on a test LPAR so that you
can quickly see and get the feel of z/OS PKI services.
This book shows you how to set up and use the web application with the default supplied
templates.
For more information, see the IBM Redbooks publication IBM PKI on z/OS: Quick Set up and
Explore, SG24-8337, which is planned for publication in March 2016.
The publications that are listed in this section are considered particularly suitable for a more
detailed discussion of the topics that are covered in this book.
IBM Redbooks
The following IBM Redbooks publications provide more information about the topics in this
document. Some publications that are referenced in this list might be available in softcopy
only:
IBM z/OS V1R12 Communications Server TCP/IP Implementation: Volume 4 Security and
Policy-Based Networking, SG24-7899
IBM z/OS V2R2: Security, SG24-8288
You can search for, view, download or order these documents and other Redbooks,
Redpapers, Web Docs, draft, and other materials, at the following website:
ibm.com/redbooks
Other publications
The following publications are also relevant as further information sources:
z/OS Security Server RACF Security Administrator's Guide, SA23-2289
z/OS Security Server RACF Security System Programmer’s Guide, SA23-2287
IBM Encryption Facility for z/OS: Planning and Customizing, SA23-2229
Online resources
These websites are also relevant as further information sources:
Internet x.509 PKI and CRL Profile:
https://www.ietf.org/rfc/rfc5280.txt
Article: Drowning in digital certificates? Here’s a lifeline!:
http://publibfp.dhe.ibm.com/epubs/pdf/e0z3n110.pdf
SG24-8336-00
ISBN 0738441503
Printed in U.S.A.
®
ibm.com/redbooks