FIPS 140 („Federal Information Processing Standard“) ist eine Reihe von Sicherheitsstandards der US-Regierung, die Sicherheitsanforderungen für die Bewertung kryptografischer Module festlegen. FIPS 140-3 ist die neueste Version. Diese FIPS-Version enthält notwendige Änderungen in Bezug auf Design, Implementierung und Betrieb kryptografischer Module.
Was ist FIPS 140-3?
FIPS 140-3 ist ein vom National Institute of Standards and Technology (NIST) und Communications Security Establishment Canada (CSEC) entwickelter Standard, der die Anforderungen definiert, die ein kryptografisches Modul zum Schutz vertraulicher Informationen erfüllen muss.
FIPS 140-3 ersetzt FIPS 140-2 und beschreibt aktualisierte bundesstaatliche Sicherheitsanforderungen für kryptografische Module. Die neuen Standards entsprechen ISO/IEC 19790:2012(E) und beinhalten Änderungen der Anhänge, die von der Validierungsprogramm für kryptografische Module (CMVP), als Validierungsinstanz.
FIPS 140-3 trat am 22. September 2019 in Kraft und ermöglicht es CMVP, ab September 2020 Validierungseinreichungen im Rahmen des neuen Schemas anzunehmen. CMVP validiert kryptografische Module bis zum 22. September 2021 weiterhin gemäß den Sicherheitsanforderungen für kryptografische Module des Federal Information Processing Standard (FIPS) 140-2.
Status von FIPS 140-2
FIPS 140-2-Module können nach der Validierung fünf Jahre lang oder bis zum 21. September 2026 aktiv bleiben. Danach werden die FIPS 140-2-Validierungen in die historische Liste verschoben. CMVP unterstützt den Kauf und die Nutzung dieser Module auch auf der historischen Liste für bestehende Systeme. CMVP empfiehlt Käufern, alle Module auf der Suchseite für validierte Module zu berücksichtigen und ihre Anforderungen für die optimale Auswahl kryptografischer Module zu erfüllen, unabhängig davon, ob die Module nach FIPS 140-2 oder FIPS 140-3 validiert sind.
Übergangsplan von FIPS 140-2 zu FIPS 140-3
Der Zeitpunkt des Übergangs ist unten dargestellt:
| Datum | Aktivität |
|---|---|
| 22. März 2019 | FIPS 140-3-zertifiziert |
| September 22, 2019 | Datum des Inkrafttretens von FIPS 140-3 Entwürfe von SP 800-140x (Öffentliche Kommentierung geschlossen am 9.12.2019) |
| 20. März 2020 | Veröffentlichung von SP 800-140x-Dokumenten |
| May 20, 2020 | Aktualisiertes CMVP-Programmverwaltungshandbuch für FIPS 140-2 |
| Juli 1, 2020 | Tester-Kompetenzprüfung aktualisiert, um FIPS 140-3 einzuschließen |
| September 21, 2020 | FIPS 140-3 Implementierungsleitfaden CMVP-Verwaltungshandbuch für FIPS 140-3 |
| September 22, 2020 | CMVP akzeptiert FIPS 140-3-Einreichungen |
| September 21, 2021 | CMVP akzeptiert keine FIPS 140-2-Einreichungen für neue Validierungszertifikate mehr |
| September 21, 2026 | Verbleibende FIPS 140-2-Zertifikate werden in die historische Liste verschoben |
Table: Übergangsplan
FIPS 140-3-zugelassene kryptografische Algorithmen:
Wenn wir von einem FIPS-zugelassenen Algorithmus sprechen, bezieht sich dies im Allgemeinen auf einen Algorithmus oder eine Technik, die entweder in einem FIPS or NIST Empfehlung oder in einer FIPS- oder NIST-Empfehlung übernommen (angegeben in einem Anhang oder in einem Dokument, auf das in der FIPS- oder NIST-Empfehlung verwiesen wird).
Blockchiffre-Algorithmen:
Für die Bundesregierung wurden mehrere Blockchiffre-Algorithmen spezifiziert. Der Genehmigungsstatus der Blockchiffre-Verschlüsselungs-/Entschlüsselungsmodi ist in der folgenden Tabelle aufgeführt:
| Algorithmus | Status |
|---|---|
| Zwei-Schlüssel-TDEA-Verschlüsselung | Nicht erlaubt |
| Zwei-Schlüssel-TDEA-Entschlüsselung | Legacy-Nutzung |
| Drei-Schlüssel-TDEA-Verschlüsselung | Veraltet bis 2023 Nach 2023 nicht mehr zulässig |
| Drei-Schlüssel-TDEA-Entschlüsselung | Legacy-Nutzung |
| SKIPJACK-Verschlüsselung | Nicht erlaubt |
| SKIPJACK-Entschlüsselung | Legacy-Nutzung |
| AES-128-Verschlüsselung und -Entschlüsselung | Akzeptabel |
| AES-192-Verschlüsselung und -Entschlüsselung | Akzeptabel |
| AES-256-Verschlüsselung und -Entschlüsselung | Akzeptabel |
Table: Zulassungsstatus der zur Ver- und Entschlüsselung verwendeten symmetrischen Algorithmen
Digitale Signaturen:
Digitale Signaturen dienen der Authentifizierung des Ursprungs und der Datenintegrität. DSA, ECDSA und RSA sind zulässig, jedoch nur mit bestimmten Parametern. Die Übergangsleitfaden bietet eine praktische Zusammenfassung, die unten angezeigt wird:
| Digitaler Signaturprozess | Status |
|---|---|
| Generierung digitaler Signaturen | |
| <112 Bit Sicherheitsstärke: DSA: (L, N) ≠ (2048, 224), (2048,256) oder (3072, 256) ECDSA: Länge(n) < 224 RSA: Länge(n) < 2048 | Nicht erlaubt |
| ≥ 112 Bit Sicherheitsstärke: DSA: (L, N) = (2048, 224), (2048,256) oder (3072, 256) ECDSA oder EdDSA: len(n) ≥ 224 RSA: len(n) ≥ 2048 | Akzeptabel |
| Überprüfung digitaler Signaturen | |
| < 112 Bit Sicherheitsstärke: DSA32: ((512 ≤ L < 2048) oder (160 ≤ N < 224)) ECDSA: 160 ≤ len(n) < 224 RSA: 1024 ≤ len(n) < 2048 | Legacy-Nutzung |
| ≥ 112 Bit Sicherheitsstärke: DSA: (L, N) = (2048, 224), (2048,256) oder (3072, 256) ECDSA und EdDSA: len(n) ≥ 224 RSA: len(n) ≥ 2048 | Akzeptabel |
Hash-Funktionen:
Eine Hash-Funktion ordnet einer Gruppe von Zeichen (Schlüssel genannt) einen Wert einer bestimmten Länge (Hash-Wert oder Hash) zu. Der Hash-Wert repräsentiert die ursprüngliche Zeichenfolge, ist aber normalerweise kleiner als das Original.
Eine Hash-Funktion dient dazu, eine komprimierte Darstellung ihrer Eingabe zu erzeugen. Dabei wird eine Eingabe beliebiger Länge angenommen und ein Wert mit einer vorgegebenen Länge ausgegeben. Hash-Funktionen werden bei der Generierung und Verifizierung digitaler Signaturen, zur Schlüsselableitung, zur Generierung von Zufallszahlen, zur Berechnung von Nachrichtenauthentifizierungscodes und für reine Hash-Anwendungen verwendet.
Das Übergangsrichtlinien Das Dokument fasst zusammen, wann SHA-1, SHA-2 usw. verwendet werden können.
| Hash-Funktion | Status |
|---|---|
| SHA-1 | |
| Generierung digitaler Signaturen | Nicht zulässig, außer wenn dies durch die protokollspezifischen Richtlinien des NIST ausdrücklich gestattet ist |
| Überprüfung der digitalen Signatur | Legacy-Nutzung |
| Nicht-digitale Signaturanwendungen | Akzeptabel |
| SHA-2-Familie (SHA224, SHA-256, SHA-384, SHA-512, SHA-512/224 und SHA-512/256) | Akzeptabel für alle Hash-Funktionsanwendungen |
| SHA-3-Familie (SHA3-224, SHA3-256, SHA3-384 und SHA3-512) | Akzeptabel für alle Hash-Funktionsanwendungen |
| TupleHash und ParallelHash | Akzeptabel für die in SP800-185 |
Table: Genehmigungsstatus von Hash-Funktionen
FIPS 140-2 vs. FIPS 140-3
| Spezifikationen | FIPS 140-2 | FIPS 140-3 |
|---|---|---|
| Kryptografisches Modul | Der FIPS 140-2-Standard (herausgegeben 2001) wurde mit der Idee geschrieben, dass alle Module Hardwaremodule sind. Später wurden verschiedene Modultypen (Hybrid-, Software- und Firmware-Module) hinzugefügt und in den IG (IGs 1.9, 1.16 und 1.17) definiert. | FIPS 140-3 umfasst das Hardwaremodul, das Firmwaremodul, das Softwaremodul, das Hybrid-Softwaremodul und das Hybrid-Firmwaremodul |
| Kryptografische Grenze | FIPS 140-2 IG 1.9 beschränkte Hybridmodule auf eine FIPS 140-2 Level 1-Validierung | Auch hinsichtlich der Ebene, auf der ein Hybridmodul validiert werden kann, gibt es im neuen Standard keine Einschränkung. |
| Rollen | Der FIPS 140-2-Standard (Abschnitt 4.3.1) erfordert, dass ein Modul sowohl eine Krypto-Offizier-Rolle als auch eine Benutzerrolle unterstützt, und die Unterstützung einer Wartungsrolle war optional. | FIPS 140-3 kennt weiterhin dieselben drei Rollen, allerdings ist nur die Rolle des Krypto-Beauftragten erforderlich (Abschnitt 7.4.2). Die Benutzerrolle und die Wartungsrolle sind nun optional. |
| Authentifizierung | ISO 19790: Stufe 1 – keine Authentifizierungsanforderungen Level 2 – minimale rollenbasierte Authentifizierung Level 3 – Identitätsbasierte Authentifizierung | ISO 19790: FIPS 140-3 ähnelt FIPS 140-2 für die Authentifizierung auf den Sicherheitsstufen 1–3. Level 4 wird auch in FIPS 140-3 hinzugefügt. Für die Authentifizierung auf Level 4 muss diese auf einer Multi-Faktor-Identität basieren. |
Table: Zulassungsstatus der zur Ver- und Entschlüsselung verwendeten symmetrischen Algorithmen
Zusammenfassung:
FIPS 140-3 wurde als neuester Standard für die Sicherheitsbewertung kryptografischer Module endgültig verabschiedet und eingeführt. Er deckt ein breites Spektrum an Bedrohungen und Schwachstellen ab, da er die Sicherheitsanforderungen von der ersten Entwurfsphase bis hin zur endgültigen Inbetriebnahme eines kryptografischen Moduls definiert. Die Anforderungen von FIPS 140-3 basieren im Wesentlichen auf den beiden bereits bestehenden internationalen Standards ISO/IEC 19790:2012 „Sicherheitsanforderungen für kryptografische Module“ und ISO 24759:2017 „Testanforderungen für kryptografische Module“.
FIPS 140-3-Zeitpläne:

Die Zeitleiste: FIPS 140-3-Zeitpläne:
Quellen
www.nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-131Ar2.pdf
www.csrc.nist.gov/projects/cryptographic-module-validation-program
