Skip to main content


developerWorks  >   Java™ technology  >   IBM developer kits  >   Security information  >   6  >  

Security information

The following pages contain documentation, example code, and ancillary files relating to IBM's SDKs. The documentation covers IBM-specific features of IBM's offerings. A platform-specific Security User Guide is included in each download. For information about the SDK for z/OS product and security components specific to that platform, see this Web site.

Before you can download code, you will need an IBM Registration ID. You can read about IBM Registration here.

developerWorks

IBM Java PKCS 11 Supported Devices

IBM(R) JavaTM PKCS 11 Supported Devices


Introduction

The IBMPKCS11Impl provider uses the Java Cryptography Extension (JCE) and Java Cryptography Architecture (JCA) frameworks to add the capability to use hardware cryptography that supports the Public Key Cryptographic Standards # 11(PKCS#11) standard. The IBMPKCS11Impl provider takes advantage of hardware cryptography within the existing JCE architecture, and gives Java 2 programmers the significant security and performance advantages of hardware cryptography, with minimal changes to existing Java applications. The complexities of hardware cryptography are addressed within the normal JCE, so that advanced security and performance using hardware cryptographic devices is made available easily and seamlessly.

The PKCS#11 standard provides a common application interface to cryptographic services on different platforms, using various hardware cryptographic devices.

On non-z/OS platforms, the IBMPKCS11Impl provider includes the following support:

Capability Implementation
Message digest MD2, MD5, SHA-1, SHA-256, SHA-384, and SHA-512 algorithms
Symmetric encryption and decryption AES, DES, triple DES (also known as DESede), RC4, and Blowfish algorithms
Asymmetric encryption and decryption RSA algorithm
Digital signature and verification RSA, DSA and ECDSA algorithms
Hash-based Message Authentication Codes MD5, SHA1, SHA-256, SHA-384, and SHA-512 algorithms
Random number generation, key generation using key factories, key and certificate generation, and key and certificate management The ikeyman application.
See the IBM Java PKCS 11 Implementation Provider for more information.

On the z/OS platform, the IBMPKCS11Impl provider includes the following support:

Capability Implementation
Message digest MD5, SHA-1, and SHA-256 algorithms
Symmetric encryption and decryption AES, DES, and triple DES (also known as DESede) algorithms
Asymmetric encryption and decryption RSA algorithm
Digital signature and verification RSA algorithm
Random number generation, key generation using key factories, key and certificate generation, and key and certificate management The ikeyman application.
Application key separation Virtual PKCS#11 tokens, protected by RACF
See the z/OS IBMPKCS11Impl Guide on Java 2 for more information.

Note: On the z/OS platform, the IBMJCECCA provider provides similar function using the IBM CCA interface to the hardware devices. (see the documentation for IBMJCECCA for more information).

Supported Platforms

The PKCS11Impl provider supports a subset of the platforms that the JVM supports at the 6.0 level. See the IBM JVM for 6.0 specific documentation for the supported operating systems and any other JVM specific requirements. The supported platforms for Java 6.0 are:

  • Microsoft Windows 32
  • AIX 5.2/5.3 (32-bit/64-bit)
  • Linux (PPC 32-bit/64-bit)
  • Linux (Intel 32-bit)
  • Solaris (32-bit/64-bit) Sparc only
  • Linux on System z (32-bit/64-bit)
  • z/OS

Supported Hardware Cryptographic Cards for Java 6.0

Support for these cards through the IBMPKCS11Impl provider begins after the card, its driver, and any manufacturer's support software has been installed and is functioning properly. Any issues regarding installation and configuration of these cards and software should be referred to the manufacturer.

  • The following cards are supported on Microsoft Windows (32-bit), AIX, Solaris 9 (32-bit and 64-bit, Sparc only), Linux:
    • nCipher nForce 4000 PCI(OB4033P-4K0)
    • nCipher nForce 1600 PCI(nC3033P-1k6)
    • nCipher nForce 150 PCI(nc3033P-150)
    • nCipher nShield 800 PCI(nC4033P-800)
    • nCipher nShield 150 SCSI(nc4032W-150) Note: This card is going out of support.
    • nCipher nShield 150 SCSI(nF300KM-1c) Note: This card is going out of support.
    • nCipher netHSM 1600 (nH1956)
    • Eracom Orange (CSA8000)
    • SafeNet Luna SA

  • The following cards are supported on AIX and Linux on System z:
    • IBM 4758 PCI Cryptographic Coprocessor (4758-002/023) Note: This card has gone out of support.
    • IBM e-business Cryptographic Accelerator (4960, PCICA).
    • IBM PCI-X Cryptographic Coprocessor (4764, PCIXCC).
    On z/OS the above cards are supported through the IBMJCECCA provider. See the documentation for this provider for more information.
     
  • The following is supported on Solaris 10 (32-bit and 64-bit, Sparc only):
    • The on-chip cryptography in the Sun Ultra-SPARC T2 CMT processor.

  • The following cards are supported on Microsoft Windows (32-bit), AIX, Solaris 9 (32-bit and 64-bit, Sparc only), Linux. These specific models have not been tested by IBM, but support is assumed because other cards in the same family have been tested successfully.
    • nCipher nForce 300 PCI
    • nCipher nForce 400 PCI
    • nCipher nForce 400 SCSI
    • nCipher nShield 4000 PCI (nC4033P-4000)
    • nCipher nShield 400 SCSI
    • nCipher nShield 150 PCI
    • nCipher nShield 300 PCI
    • nCipher netHSM 300 PCI
    • nCipher netHSM 800 PCI
    • nCipher netHSM 500 (nC4333N-500)
    • nCipher netHSM 2000 (nC4333N-2K0)

  • To use the IBMPKCS11Impl provider on the z/OS platform, you must have the following:
    • A system at the z/OS V1R9 level with one of the following:
      • On a z800 or z900 processor, a CCF and a PCICC card.
      • On a z890 or z990 processor, a CPACF and a PCIXCC card.
      • On a z890 or z990 processor, a CPACF and a CEX2C card.
      • On a z9 processor, a CPACF and a CEX2C or CEX2A card.
    • ICSF must be running.
    See the z/OS V1R9 Cryptographic Services Integrated Cryptographic Services Facility (ICSF) documentation for a description of the functions available for each of the configurations.
     
  • The following adapter is supported on Linux for System z (32-bit and 64-bit)
    • The IBM Crypto Express 2 crypto adapter (configured as an ICA token)

Card Observations

The following cards have observations that might be of interest:

The following sections descibe the observations for each card.

IBM e-business Cryptographic Accelerator (4960, PCICA)

This card can translate only CRT RSA keys. It cannot translate plain RSA keys. RSA keys can wrap DES and DESede keys, but DES and DESede keys cannot wrap an RSA key. Signature encoding issues on this card are fixed by the following updates:

  • AIX 5.2 IY53096 puts bos.pkcs11 at 5.2.0.30.
  • AIX 5.1 IY54784 puts bos.pkcs11 at 5.1.0.28.
  • Linux on System z OpenCryptoki 2.1.5 update.

IBM 4758 PCI Cryptographic Coprocessor (4758-002/023)

The RSA signature encoding issue on this card was fixed by Version 2.42 of the microcode. In addition, OpenCryptoki 2.1.5 fixes this issue for Linux on System z. RSA keys can wrap DES and DESede keys, but DES and DESede keys cannot wrap an RSA key. Plain RSA keys cannot be translated. RSA CRT keys can be translated. The card does not create a ShortBufferException for buffers that are too small.

IBM PCI-X Cryptographic Coprocessor (4764, PCIXCC)

PTFs U810490 and U890491 are the pre-requisites that upgrade the library from 3.27 to 3.27.1. This card does not create a ShortBufferException for buffers that are too small.

Eracom Orange

No issues observed.

SafeNet Luna SA

Software keys cannot be translated using this card. Key wrapping does not work work with the default configuration of the device. Setting a seed for the random number generator is not allowed. This device was not creating a ShortBufferException for buffers that are too small; this has been fixed by the latest version.

nCipher nForce and nShield

RSA keys can wrap a DES or DESede key, but DES and DESede key cannot wrap an RSA key. Public keys cannot be wrapped. Translation of plain RSA keys is not supported. RSA CRT keys can be translated.

In addition, you must set the environment variable CKNFAST_OVERRIDE_SECURITY_ASSURANCES to tokenkeys if you are using a Generation 2 card.

Sun Ultra-SPARC T2 CMT processor

RSA keys can wrap a DES or DESede key, but DES and DESede key cannot wrap an RSA key. The Blowfish algorithm is not supported.

The n2cp device driver supports the cryptographic operations that are built into the Ultra-SPARC T2 CMT processor. The version of the n2cp device driver tested is VERSION 11.10.0,REV=2007.07.08.21.44.

The version of Suns native pkcs11 libraries (/usr/lib/libpkcs11.so.1 and /usr/lib/sparcv9/libpkcs11.so.1) tested is VERSION 11.10.0,REV=2005.01.21.15.53.

32-bit support for the Sun Ultra-SPARC T2 CMT processor is introduced in IBM 6.0 JRE/JDK Service Refresh 5, and in IBM 5.0 JRE/JDK Service Refresh 10. 64-bit support for the Sun Ultra-SPARC T2 CMT processor is introduced in IBM 6.0 JRE/JDK Service Refresh 6.

IBM Crypto Express 2 (configured as an ICA token)

The Blowfish algorithm is not supported. HMACwithSHA1 is not supported.

Testing for the IBM Crypto Express 2 was performed on SUSE Linux Enterprise Server 10 (SLES 10). The SLES 10 version of the opencryptoki library (currently version 2.2.4-0.7) does not support SHA-256. The SLES 11 version of the opencryptoki library (currently version 2.2.6) is expected to support SHA-256, however, this has not yet been tested.

Testing for the IBM Crypto Express 2 on SLES 10 identified updates that needed to be made to the opencryptoki library. These updates are expected in SUSE Linux Enterprise Server 10 (SUSE 10) Service Pack 3, and in SUSE Linux Enterprise Server 11 (SUSE 11) Service Pack 1.

Support for the IBM Crypto Express 2 crypto adapter is introduced in IBM 6.0 JRE/JDK Service Refresh 6, and in IBM 5.0 JRE/JDK Service Refresh 10.


Copyright © 1998, 2009 IBM Corporation, Inc. All Rights Reserved.






Back to top


Document options

Document options requiring JavaScript are not displayed


Related information
General SDK FAQs
Newsgroups
Future plans

Special offers
WebSphere CloudBurst resources
Cognos Express online demos
SOA Sandbox for WAS CE and Eclipse

Trial software offers