Organizations are experiencing an increased demand for management of certificates and keys, as encryption and other protection of data and transactions become more widely used. Effective management of these keys and certificates is required in order to ensure availability of services and security of encrypted information. Centralized management of keys and certificates is the obvious solution for performing the complex tasks related to timely renewal of keys and certificates for an enterprise. These processes must also include secure backup and restore of key material. During the active part of the key's life cycle it is important to control the use of the keys so that they are only used for their intended purpose.
The IBM DKMS Key Management solution (DKMS) offers enterprise-wide management capabilities for both certificates as well as for symmetric and asymmetric keys. Security standards like PCI DSS and local polices create increasing attention and must be addressed by the organization's key management operation. DKMS helps the organization to comply with these standards and policies.
DKMS is used by major financial customers worldwide and is developed by IBM EMEA Crypto Competence Center in tight cooperation with many of these customers. DKMS functionality is continuously being extended and improved in accordance with customer needs, industry standards, and regulatory initiatives.
Overview
High volume certificates and encryption keys can be managed centrally and uniformly with DKMS independent of target platforms. DKMS manages keys and certificates for cryptographic coprocessors, hardware security modules (HSM), software implementations like Java key store, ATMs, and point of sale terminals. DKMS offers an incentive support for EMV chip cards, both for issuers, acquirers, and for card brands.
The main attributes of DKMS are:
- Management of multiple systems. Most computing centers have several server systems, often in different geographical locations. DKMS provides the facility to perform all key and certificate management functions for all the systems from a single DKMS workstation.
- Support of every cryptographic entity on the network (terminal, institution, cryptographic coprocessor, server). Each entity type has its own key hierarchy, and each can be defined and managed in DKMS. For cryptographic coprocessors that implement a key store DKMS maintains the contents of that store. Specifically DKMS currently supports the following cryptographic platforms:
- IBM mainframe cryptographic coprocessors (CryptoExpress3, CryptoExpress2, PCIXCC, PCICC, and CCF) on z/OS
- IBM 4758 and IBM 4764 on Windows® and Linux (IBM 4764 only)
- IBM crypto on System p (feature #4764, #4765, #4958, and #4963)
- IBM crypto on System i (feature #4764 and #4801)
- IBM WebSphere DataPower
- Non-IBM crypto hardware such as Thales®.
- Backup of keys and certificates. All keys and certificates are stored in a central repository together with meta information such as activation dates and usage. By storing all key material in a database, backup is easily achieved by including the database in existing database backup procedures. This facilitates easy recovery in case keys or certificates are lost.
- Monitoring of keys and certificates. Expiry of key material is monitored and alerts are generated in due time to initiate replacement. This is especially crucial for certificates as an expired certificate most often means that a service is unavailable.
- Secure key generation. The security of the system is highly dependent on the method of key generation. In DKMS, key generation takes place within the IBM 4764 cryptographic coprocessor where a random generator generates the keys. RSA key generation is in conformance with ANSI 9.31.
- Key distribution and exchange. DKMS can generate DES and TDES keys for the supported cryptographic devices as key parts. They can be extracted as key parts from DKMS on paper or files. Customer specific key mailers, for distribution of keys, can be defined in DKMS.
- Tailoring to the organization. DKMS supports that the keys can be separated on several levels:
- Separation between development and test environments.
- Separation of keys between applications.
- Separation of keys based on usage of the keys.
- Separation on different versions of the same key.
- Key administration. The security administrator can define and display information about the keys on the DKMS workstation. The key hierarchies per cryptographic entity can be displayed, so you always have an overview of your key set up.
- Access Control. The DKMS access control system is role based and controls access to DKMS functions. The system administrator can define which functions and which keys are available for each user.
- Dual control. Some functions must be performed under dual control. DKMS handles this by requiring that two users be logged on simultaneously. DKMS can be configured to require that 2 or more persons log on to activate DKMS.
- Audit Logging. Every important activity is logged in a DB2 table and if available, in z/OS SMF.
- High volume. Management of high volume of keys and certificates is supported either by scripting or by “bulk management”.
IBM DKMS Key Management Architecture
DKMS constitutes a centralized architecture where management for multiple servers is performed from a single operator console: the DKMS workstation; as shown in the figure below. The workstation is connected to servers that are equipped with cryptographic engines and host the certificate- or key-consuming applications. One of the servers holds a central DKMS key repository used as backup for all keys and certificates managed by the system.
Being on-line to the servers enables DKMS to manage keys and certificates centrally and in real-time. Generally DKMS pushes key material to key stores associated with the cryptographic engines on the servers. Alternatively, it is possible for an application to request key material from the central DKMS repository, e.g. for use with third party HSMs that do not implement key stores.
The applications request cryptographic support via application programming interfaces (APIs) on the servers. APIs are usually offered as a part of the crypto HW. However, DKMS offers extensions to these APIs for selected areas that substantially ease the use and provides additional functionality.
The DKMS workstation includes an IBM 4764 Cryptographic Coprocessor that assures high security and high quality of the generated keys.
Basic Key Management
Basic key management functions include key generation, key import, key extraction, key print, and key administration. Most of the functions are controlled by key definitions (key policies). Besides controlling functions for a key the key definition also holds the key's attributes which greatly ease daily work. When generating or entering a key it is automatically distributed to the servers specified in the key definition.
Clear key parts are often used for initial exchange of symmetric keys with external partners. Entering of clear key parts is done on the DKMS workstation's keyboard or alternatively on a dedicated high security key board.
Printing of key mailers is performed on a printer attached directly to the DKMS workstation. DKMS supports formatting of the key mailers and can add additional data like contact information and key check value.
Certificate Management
Certificates have become more and more important as many web services and other communication connections rely on a RSA based certificate scheme to assure authenticity and privacy. This scheme requires that certificates are renewed at regular intervals.
DKMS certificate management centralizes and unifies most of the tasks, traditionally performed manually for system components utilizing SSL or other certificate based schemes. Functions are offered that ease administration of a large population of certificates. The DKMS certificate management supports RACF, WebSphere DataPower, WebSphere MQ, and numerous SSL server implementations.
An important function of certificate management is monitoring of certificate expiry. An expired certificate most often means a disrupted service. DKMS monitors certificate expiration and send warning messages in due time before a certificate expires.
Existing certificates can be included easily in DKMS monitoring. DKMS tools scan the system and import the certificate information.
EMV chip card key management
DKMS offers key management for EMV chip cards as defined by the EMVco organization. Both EMV card issuers, acquirers, and brand certificate authorities can benefit from DKMS's support.
The EMV card issuer and acquirer support consists of:
- Issuer signature key generation and certificate handling according to the formats and procedures specified by Visa and MasterCard.
- Card issuing support functions such as signing static data for Static Data Authentication (SDA), generating card unique RSA keys for Dynamic Data Authentication (DDA), and deriving card unique DES keys from issuer master keys.
- Transaction authorization support for verification of application cryptograms, generation of response cryptograms and secure scripts.
The brand certificate authority support consists of:
- Management of the EMV root key inclusive publishing the public key.
- Reception of certificate request from issuers and certification of the issuer public key.
Generation of RSA keys for DDA chip cards is quite time consuming thus making it inappropriate to generate a key at the time it is needed. DKMS offers an elegant solution where keys are pre-generated to a pool utilizing spare crypto capacity during off-peak hours.
Remote Key Loading for ATMs
Newer ATMs support terminal keys to be exchanged with back-end systems using an RSA key exchange scheme. This is a more cost-effective way of managing the terminals than by having several people traveling to each ATM with key parts.
DKMS provides an API that generates and exports a terminal master key under the ATM public key. DKMS has functions for the required exchange of public keys and certificates with the ATM manufacturers according to the manufacturers’ specifications.
The DKMS RKL feature supports major ATM vendors like Diebold, NCR, and Wincor Nixdorf.
PIN Print
DKMS PIN print support controls printing of PIN and password mailers in a secure way. A high level of security is obtained by enforcing dual control for all security sensitive operations. The PINs or passwords to be printed are retrieved from other systems or generated by the DKMS PIN Print system and merged with predefined template mailers before printing.
