FIPS 140‑3
FIPS 140‑3 (ang. Federal Information Processing Standard 140‑3) jest amerykańskim standardem określającym wymogi bezpieczeństwa kryptograficznych modułów sprzętowych i programowych. Został opublikowany w 2019 r. przez National Institute of Standards and Technology (NIST) jako następcę FIPS 140‑2. Standard definiuje cztery poziomy bezpieczeństwa oraz szczegółowe kryteria dotyczące kryptografii, zarządzania kluczami, fizycznej ochrony, interfejsów, oprogramowania i procedur testowych.
Historia
Podstawy FIPS sięgają lat 70. XX wieku, kiedy to rząd Stanów Zjednoczonych rozpoczął standaryzację technik przetwarzania informacji. Pierwsza wersja standardu FIPS 140 pojawiła się w 1994 r., a po licznych aktualizacjach w 2001 i 2005 r. (oznaczonych jako FIPS 140‑2) doszło do przeglądu, który zakończył się uchwaleniem FIPS 140‑3 w 2019 roku. Nowa edycja uwzględnia najnowsze osiągnięcia w dziedzinie kryptografii, takie jak algorytmy post‑kwantowe oraz zmiany w wymaganiach dotyczących testowania i walidacji.
Zakres i zastosowanie
Standard obejmuje:
- Moduły kryptograficzne sprzętowe i programowe (np. HSM, tokeny, smart‑karty).
- Algorytmy szyfrujące i haszujące, w tym AES, SHA‑2, RSA oraz ECC.
- Mechanizmy zarzÄ…dzania kluczami (generowanie, przechowywanie, dystrybucja, niszczenie).
- Środowisko fizyczne, w tym ochronę przed atakami bocznymi, manipulacją i warunkami środowiskowymi.
- Procedury walidacji i testĂłw prowadzonych przez akredytowane laboratoria.
Poziomy bezpieczeństwa
FIPS 140‑3 definiuje cztery poziomy (ang. Security Levels) określające stopień ochrony:
- Poziom 1 – podstawowe wymagania dotyczące kryptografii i dokumentacji.
- Poziom 2 – dodatkowe zabezpieczenia fizyczne (np. wykrywanie otwarcia obudowy).
- Poziom 3 – silniejsze zabezpieczenia fizyczne i logiczne, w tym odporność na ataki fizyczne oraz wymóg separacji kluczy.
- Poziom 4 – najwyższy stopień ochrony, obejmujący pełną odporność na zaawansowane ataki fizyczne i środowiskowe.
Wymagania techniczne
Standard dzieli wymagania na kilka kategorii:
Cryptographic Module Specification
Opis modułu musi zawierać m.in. architekturę, używane algorytmy, sposób przechowywania kluczy oraz interfejsy komunikacyjne.
Software and Firmware
Oprogramowanie musi być poddane analizie pod kątem podatności, a także posiadać mechanizmy aktualizacji bez naruszenia integralności kryptograficznej.
Physical Security
Kryteria obejmujÄ… zabezpieczenia przeciwko manipulacji (np. czujniki temperatury, wibracji) oraz ochronÄ™ przed promieniowaniem elektromagnetycznym.
Operational Environment
Wymagane jest zapewnienie bezpiecznego środowiska operacyjnego, w tym kontrola dostępu, audyt logów oraz procedury reagowania na incydenty.
Self‑Tests
Moduły muszą wykonywać testy startowe, okresowe i w czasie wykonywania operacji (ang. self‑tests). Testy te weryfikują m.in. integralność algorytmów i poprawność kluczy.
Walidacja i certyfikacja
Proces walidacji odbywa się w oparciu o Cryptographic Module Validation Program (CMVP) prowadzony wspólnie przez NIST i kanadyjską agencję Communications Security Establishment. Laboratoria akredytowane przez NIST przeprowadzają testy zgodności, po czym wydawany jest certyfikat potwierdzający spełnienie wymagań wybranego poziomu bezpieczeństwa. Certyfikaty są publikowane w publicznie dostępnej bazie danych.
PowiÄ…zania z innymi standardami
FIPS 140‑3 jest zgodny z międzynarodowym standardem ISO/IEC 19790 oraz zaktualizowanymi wytycznymi dotyczącymi kryptografii zawartymi w FIPS 186‑5 (podpis cyfrowy). W praktyce wiele organizacji przyjmuje równocześnie wymogi FIPS 140‑3 i ISO/IEC 19790, co ułatwia międzynarodową wymianę produktów kryptograficznych.
Krytyka i wyzwania
Choć FIPS 140‑3 jest uznawany za jeden z najścislejszych standardów bezpieczeństwa, spotyka się z krytyką ze strony niektórych środowisk technicznych:
- Skupienie na algorytmach zatwierdzonych przez rząd USA – ogranicza to przyjęcie innowacyjnych metod, zwłaszcza w kontekście kryptografii post‑kwantowej.
- Wysokie koszty certyfikacji – proces walidacji jest czasochłonny i wymaga znacznych nakładów finansowych, co utrudnia małym i średnim przedsiębiorstwom dostęp do rynku.
- Złożoność wymagań – szczegółowe wytyczne techniczne mogą powodować problemy z implementacją, zwłaszcza w środowiskach o ograniczonych zasobach.
Przykłady zastosowań
Standard jest powszechnie wykorzystywany w:
- Systemach bankowości elektronicznej i płatności kartą (PCI DSS).
- Infrastrukturalnych usług rządowych USA (np. systemy e‑Government).
- RozwiÄ…zaniach chmurowych zapewniajÄ…cych szyfrowanie danych w spoczynku i w tranzycie.
- Urządzeniach medycznych oraz systemach automatyki przemysłowej, gdzie wymagana jest wysoka odporność na ataki.
Zobacz takĹĽe
FIPS | FIPS 140‑2 | FIPS 140‑4 | NIST | AES | RSA | ECC | ISO/IEC 19790 | CMVP
Literatura
Wszystkie odniesienia pochodzą z publikacji oficjalnych dokumentów NIST oraz z literatury technicznej dostępnej w bazie NIST. Szczegółowe wersje standardu i wytycznych można znaleźć w archiwach urzędowych agencji.