Die Klasse KeyFactory
Die Klasse KeyFactory ist eine Engineklasse, die nicht transparente Chiffrierschlüssel (Objekte des Typs Key) und Schlüsselspezifikationen (transparente Darstellungen des zugrunde liegenden Schlüsselmaterials) bereitstellt.
AES
Der IBMJCECCA-Provider unterstützt einen Schlüsseltyp für AES-Schlüssel, die zuvor in CCA-Schlüsselspeicherbereichen wie CKDS unter z/OS®gespeichert wurden. Die Schlüssel sind Objekte des Typs SecretKey. SecretKeyFactory kann verwendet werden, um einen Schlüssel dieses Typs aus einem KeyLabelKeySpec zu generieren, der die CCA-Bezeichnung für den Schlüssel enthält.
Weitere keySpec -Klassen, die von der AES-Klasse KeyFactory unterstützt werden, sind AESKeySpec und SecretKeySpec.
DES
Der Provider IBMJCECCA unterstützt einen Schlüsseltyp für DES-Schlüssel, die zuvor in CCA-Schlüsselspeicherbereichen wie CKDS unter z/OSgespeichert wurden. Die Schlüssel sind Objekte des Typs SecretKey. SecretKeyFactory kann verwendet werden, um einen Schlüssel dieses Typs aus einem KeyLabelKeySpec zu generieren, der die CCA-Bezeichnung für den Schlüssel enthält.
Weitere keySpec -Klassen, die vom DES- KeyFactory unterstützt werden, sind DESKeySpec und SecretKeySpec.
Triple DES (auch bekannt als DESede und 3DES)
Der Provider IBMJCECCA unterstützt einen Schlüsseltyp für Triple DES-Schlüssel, die zuvor in CCA-Schlüsselspeicherbereichen wie CKDS unter z/OSgespeichert wurden. Die Schlüssel sind Objekte des Typs SecretKey. SecretKeyFactory kann verwendet werden, um einen Schlüssel dieses Typs aus einem KeyLabelKeySpec zu generieren, der die CCA-Bezeichnung für den Schlüssel enthält.
Weitere keySpec -Klassen, die von Triple DES unterstützt werden KeyFactory , sind DESedeKeySpec und SecretKeySpec.
HMAC
Der IBMJCECCA-Provider unterstützt einen Schlüsseltyp für HMAC-Schlüssel, die zuvor in CCA-Schlüsselspeicherbereichen wie CKDS unter z/OSgespeichert wurden. Die Schlüssel sind Objekte des Typs SecretKey. SecretKeyFactory kann verwendet werden, um einen Schlüssel dieses Typs aus einem KeyLabelKeySpec zu generieren, der die CCA-Bezeichnung für den Schlüssel enthält.
SecretKeyFactory HMAC-Algorithmen, die vom IBMJCECCA-Provider unterstützt werden, sind HMACSHA1, HMACSHA224, HMACSHA256, HMACSHA384und HMACSHA512.
DSA
Der Provider IBMJCECCA unterstützt einen Schlüsseltyp für private DSA-Hardwareschlüssel, der den in Softwareprovidern verfügbaren privaten DSA-Schlüsseln ähnelt. Private DSA-Hardwareschlüssel sind Objekte des Typs DSAPrivateHWKey. Die entsprechenden öffentlichen DSA-Schlüssel sind Objekte des Typs DSAPublicKey.
Mit der Klasse KeyFactory kann ein privater DSA-Hardwareschlüssel aus einem DSAPrivateKeyHWSpecgeneriert werden. Der KeyFactory kann auch verwendet werden, um einen öffentlichen DSA-Schlüssel aus einem DSAPublicKeySpec oder einem X509EncodedKeySpeczu generieren.
Die Klasse KeyFactory kann auch eine DSAPrivateKeyHWSpec aus einem privaten DSA-Hardwareschlüssel oder eine DSAPublicKeySpec oder X509PublicKeySpec aus einem öffentlichen DSA-Schlüssel ableiten.
RSA
Der Provider IBMJCECCA fügt einen neuen Schlüsseltyp für private RSA-Hardwareschlüssel hinzu, der den in Softwareprovidern verfügbaren privaten RSA-Schlüsseln ähnelt. Private RSA-Hardwareschlüssel sind Objekte des Typs RSAPrivateHWKey. Die entsprechenden öffentlichen RSA-Schlüssel sind Objekte des Typs RSAPublicKey.
Die Klasse KeyFactory kann verwendet werden, um einen privaten RSA-Hardwareschlüssel aus einem RSAPrivateHWKeySpec, RSAPrivateCrtKeySpec, RSAPrivateKeySpecoder KeyLabelKeySpeczu generieren. Die KeyFactory kann auch verwendet werden, um einen öffentlichen RSA-Schlüssel aus einem RSAPublicKeySpec, X509EncodedKeySpecoder KeyLabelKeySpeczu generieren. Schlüssel, die sich bereits im CCA-Schlüsselspeicherbereich befinden, können auch durch Übergabe einer KeyLabelKeySpec an den RSA KeyFactoryerstellt werden.
Die Klasse KeyFactory kann auch eine RSAPrivateKeyHWSpec aus einem privaten RSA-Hardwareschlüssel oder eine RSAPublicKeySpec oder X509PublicKeySpec aus einem öffentlichen RSA-Schlüssel ableiten.
EC
Der Provider IBMJCECCA fügt einen neuen Schlüsseltyp für private EC-Hardwareschlüssel hinzu, der den in Softwareprovidern verfügbaren privaten EC-Schlüsseln ähnelt. Private EC-Hardwareschlüssel sind Objekte des Typs ECPrivateHWKey. Die entsprechenden öffentlichen EC-Schlüssel sind Objekte des Typs ECPublicKey.
Die Klasse KeyFactory kann verwendet werden, um einen privaten EC-Hardwareschlüssel aus einem ECPrivateHWKeySpec, PKCS8EncodedKeySpec, ECPrivateKeySpecoder KeyLabelKeySpeczu generieren. Die Klasse KeyFactory kann auch verwendet werden, um einen öffentlichen EC-Schlüssel aus einem ECPublicKeySpec, X509EncodedKeySpecoder KeyLabelKeySpeczu generieren. Schlüssel, die sich bereits im CCA-Schlüsselspeicherbereich befinden, können durch Übergabe einer KeyLabelKeySpec an die EC-Klasse KeyFactory erstellt werden.
Die Klasse KeyFactory kann auch einen ECPrivateHWKeySpec oder KeyLabelKeySpec von einem privaten EC-Hardwareschlüssel oder einen ECPublicKeySpec oder X509EncodedKeySpec von einem öffentlichen EC-Schlüssel ableiten.
Beachten Sie, dass RSAPrivateKeyHWSpec, DSAPrivateKeyHWSpecund ECPrivateHWKeySpec nur auf dem System gültig sind, auf dem der private Schlüssel ursprünglich generiert wurde. Private Hardwareschlüssel können nicht von dem System, auf dem sie generiert werden, auf ein anderes System verschoben werden. Dies gilt für alle privaten Hardwareschlüssel, einschließlich unverschlüsselter privater Schlüssel, und ist Teil der Sicherheit, die für sie bereitgestellt wird.