Federal Information Processing Standards (FIPS) für UNIX, Linuxund Windows

Wenn Verschlüsselung auf einem SSL-oder TLS-Kanal unter Windows, UNIX and Linux® -Systemen, erforderlich ist, verwendet WebSphere® MQ ein Verschlüsselungspaket namens IBM® Crypto for C (ICC). Unter Windows, auf UNIX and Linux -Plattformen hat die ICC-Software das FIPS-Verschlüsselungsprogramm (Federal Information Processing Standards) Cryptomodule Validation Program des US National Institute of Standards and Technology auf Stufe 140-2 bestanden.

Die FIPS 140-2-Konformität einer WebSphere MQ SSL-oder TLS-Verbindung unter Windows UNIX and Linux lautet wie folgt:
  • Für alle IBM WebSphere MQ -Nachrichtenkanäle (außer CLNTCONN-Kanaltypen) ist die Verbindung FIPS-konform, wenn die folgenden Bedingungen erfüllt sind:
    • Die installierte GSKit-ICC-Version ist FIPS 140-2-konform mit der installierten Version und Hardwarearchitektur des Betriebssystems.
    • Das Attribut SSLFIPS des WS-Managers wurde auf YES gesetzt.
    • Alle Schlüsselrepositorys wurden nur mit FIPS-konformer Software erstellt und bearbeitet, z. B. runmqakm mit der Option -fips .
  • Für alle IBM WebSphere MQ MQI-Clientanwendungen verwendet die Verbindung GSKit und ist FIPS-konform, wenn die folgenden Bedingungen erfüllt sind:
    • Die installierte GSKit-ICC-Version ist FIPS 140-2-konform mit der installierten Version und Hardwarearchitektur des Betriebssystems.
    • Sie haben angegeben, dass nur FIPS-zertifizierte Verschlüsselung verwendet werden soll, wie in dem zugehörigen Thema für den MQI-Client beschrieben.
    • Alle Schlüsselrepositorys wurden nur mit FIPS-konformer Software erstellt und bearbeitet, z. B. runmqakm mit der Option -fips .
  • Für IBM WebSphere MQ -Klassen für Java-Anwendungen, die den Clientmodus verwenden, verwendet die Verbindung die SSL-und TLS-Implementierungen der JRE und ist FIPS-konform, wenn die folgenden Bedingungen erfüllt sind:
    • Die zur Ausführung der Anwendung verwendete Java Runtime Environment ist mit der installierten Betriebssystemversion und Hardwarearchitektur FIPS-konform.
    • Sie haben angegeben, dass nur FIPS-zertifizierte Verschlüsselung verwendet werden soll, wie im zugehörigen Abschnitt für den Java-Client beschrieben.
    • Alle Schlüsselrepositorys wurden nur mit FIPS-konformer Software erstellt und bearbeitet, z. B. runmqakm mit der Option -fips .
  • Für IBM WebSphere MQ -Klassen für JMS-Anwendungen, die den Clientmodus verwenden, verwendet die Verbindung die SSL-und TLS-Implementierungen der JRE und ist FIPS-konform, wenn die folgenden Bedingungen erfüllt sind:
    • Die zur Ausführung der Anwendung verwendete Java Runtime Environment ist mit der installierten Betriebssystemversion und Hardwarearchitektur FIPS-konform.
    • Sie haben angegeben, dass nur FIPS-zertifizierte Verschlüsselung verwendet werden soll, wie im entsprechenden Thema für den JMS-Client beschrieben.
    • Alle Schlüsselrepositorys wurden nur mit FIPS-konformer Software erstellt und bearbeitet, z. B. runmqakm mit der Option -fips .
  • Für nicht verwaltete .NET-Clientanwendungen verwendet die Verbindung Global Security Kit (GSKit). Sie ist mit FIPS konform, wenn folgende Bedingungen erfüllt sind:
    • Die installierte GSKit-ICC-Version ist FIPS 140-2-konform mit der installierten Version und Hardwarearchitektur des Betriebssystems.
    • Sie haben angegeben, dass nur FIPS-zertifizierte Verschlüsselung verwendet werden soll, wie im entsprechenden Thema für den .NET-Client beschrieben.
    • Alle Schlüsselrepositorys wurden nur mit FIPS-konformer Software erstellt und bearbeitet, z. B. runmqakm mit der Option -fips .
  • Für nicht verwaltete XMS .NET-Clientanwendungen verwendet die Verbindung Global Security Kit (GSKit). Sie ist mit FIPS konform, wenn folgende Bedingungen erfüllt sind:
    • Die installierte GSKit-ICC-Version ist FIPS 140-2-konform mit der installierten Version und Hardwarearchitektur des Betriebssystems.
    • Sie haben angegeben, dass nur FIPS-zertifizierte Verschlüsselung verwendet werden soll, wie in der Dokumentation zu XMS .NET beschrieben.
    • Alle Schlüsselrepositorys wurden nur mit FIPS-konformer Software erstellt und bearbeitet, z. B. runmqakm mit der Option -fips .
Alle unterstützten AIX®-, Linux-, HP-UX-, Solaris-, Windows-und z/OS® -Plattformen sind FIPS 140-2-zertifiziert, außer wie in der Readme-Datei, die in jedem Fixpack oder Refresh-Pack enthalten ist, angegeben.

Bei SSL- und TLS-Verbindungen, die GSKit verwenden, hat die FIPS 140-2-zertifizierte Komponente die Bezeichnung ICC. Es handelt sich um die Version dieser Komponente, die die Konformität von GSKit FIPS auf einer bestimmten Plattform bestimmt. Führen Sie den Befehl dspmqver -p 64 -v aus, um die derzeit installierte ICC-Version zu ermitteln.

Das folgende Beispiel zeigt einen Auszug der dspmqver -p 64 -v -Ausgabe, die sich auf ICC bezieht:
  ICC
 ============
@(#)CompanyName:   IBM Corporation
@(#)LegalTrademarks:  IBM
@(#)Dateibeschreibung: IBM Crypto für Programmiersprache C
@(#)FileVersion:      8.0.0.0
@ (#) LegalCopyright: Lizenziertes Material-Eigentum von IBM
@ (#) ICC
@ (#) (C) Copyright IBM Corp. 2002, 2024.
@ (#) Alle Rechte vorbehalten. Benutzer der US-Regierung
@ (#) Restricted Rights-Use, duplication or disclosure
@(#)         restricted by GSA ADP Schedule Contract with IBM Corp.
@ (#) Produktname: icc_8.0 (GoldCoast Build) 100415
@(#)ProductVersion:   8.0.0.0
@(#)ProductInfo:      10/04/15.03:32:19.10/04/15.18:41:51
@ (#) CMVCInfo:         

Die NIST-Zertifizierungsanweisung für GSKit ICC 8 (in GSKit 8 enthalten) finden Sie unter der folgenden Adresse: Cryptographic Module Validation Program.

Wenn Verschlüsselungshardware vorhanden ist, können die von IBM WebSphere MQ verwendeten Verschlüsselungsmodule so konfiguriert werden, dass sie vom Hardwarehersteller bereitgestellt werden. Ist dies der Fall, ist die Konfiguration nur FIPS-konform, wenn die Verschlüsselungsmodule FIPS-zertifiziert sind.

Hinweis: 32 Bit Solaris x86 -SSL-und TLS-Clients, die für einen FIPS 140-2-konformen Betrieb konfiguriert sind, schlagen fehl, wenn sie auf Intel-Systemen ausgeführt werden. Dieser Fehler tritt auf, weil die FIPS 140-2-konforme GSKit-Crypto Solaris x86 32-Bit-Bibliotheksdatei auf dem Intel-Chipsatz nicht geladen wird. Auf betroffenen Systemen wird der Fehler AMQ9655 im Clientfehlerprotokoll aufgeführt. Sie können dieses Problem beheben, indem Sie die FIPS 140-2-Konformität inaktivieren oder die Clientanwendung für 64 Bit kompilieren, da 64-Bit-Code nicht betroffen ist.

Bei Einhaltung der FIPS 140-2-Konformität erzwungene Triple DES-Einschränkungen

Wenn WebSphere MQ für den Betrieb gemäß FIPS 140-2 konfiguriert ist, werden zusätzliche Einschränkungen in Bezug auf Triple DES (3DES) CipherSpecsumgesetzt. Diese Einschränkungen ermöglichen die Einhaltung der Empfehlung NIST SP800-67 der USA.
  1. Alle Teile des Triple DES-Schlüssels müssen eindeutig sein.
  2. Kein Teil des Triple DES-Schlüssels kann ein Weak-, Semi-Weak-oder Possibly-Weak-Schlüssel sein, entsprechend den Definitionen in NIST SP800-67.
  3. Es können nicht mehr als 32 GB Daten über die Verbindung übertragen werden, bevor ein geheimer Schlüssel zurückgesetzt werden muss. Standardmäßig setzt WebSphere MQ den geheimen Sitzungsschlüssel nicht zurück. Daher muss diese Zurücksetzung konfiguriert werden. Wenn die Verwendung einer Triple DES-CipherSpec-und FIPS 140-2-Konformitätserfolgung nicht aktiviert wird, wird die Verbindung mit dem Fehler AMQ9288 nach der Überschreitung der maximalen Bytezahl mit dem Fehler AMQ9288 geschlossen. Informationen zum Konfigurieren der Zurücksetzung geheimer Schlüssel finden Sie unter Zurücksetzen von geheimen SSL-und TLS-Schlüsseln.
WebSphere MQ generiert Triple DES-Sitzungsschlüssel, die bereits den Regeln 1 und 2 entsprechen. Um die dritte Einschränkung zu erfüllen, müssen Sie jedoch die Zurücksetzung des geheimen Schlüssels aktivieren, wenn Triple DES CipherSpecs in einer FIPS 140-2-Konfiguration verwendet wird. Alternativ können Sie Triple DES nicht verwenden.