Overview
Federal Information Processing Standard (FIPS) 140-3 specifies security requirements for cryptographic modules used by federal agencies and their contractors. Compliance with FIPS 140-3 is mandatory for systems that process sensitive but unclassified (SBU) information or Controlled Unclassified Information (CUI). Nabla’s FIPS assessment evaluates whether your infrastructure uses FIPS-validated cryptographic implementations and follows cryptographic best practices across encryption at rest, encryption in transit, and key management.Framework Details
- Framework: FIPS 140-3
- Standard Type: Cryptographic module validation
- Validation Authority: NIST Cryptographic Module Validation Program (CMVP)
- Output Format: OSCAL Assessment Results (JSON)
- Primary Use Case: Federal systems, FISMA compliance, CUI protection
Key Concepts
FIPS 140-3 Security Levels
Note: Most cloud provider KMS services (AWS KMS, Azure Key Vault, GCP Cloud KMS) are validated at FIPS 140-2 Level 2 or FIPS 140-3 Level 1-2. Check the CMVP validation list for specific certificates.
FIPS Mode vs. FIPS Validation
Critical Distinction: Using a FIPS-validated library in non-FIPS mode does NOT constitute compliance. Both validation AND proper configuration are required.
Assessed Cryptographic Controls
Nabla’s FIPS assessor maps evidence to FedRAMP cryptographic controls from NIST 800-53 Rev 5:SC-13: Cryptographic Protection
Requirement: Implement FIPS-validated cryptography to protect information Assessment Criteria:- System metadata indicates FIPS mode enabled (
fips_mode_enabled: true) - SBOM identifies FIPS-validated cryptographic libraries
- CMVP certificate numbers are documented
- No weak cryptographic algorithms detected (MD5, SHA-1, DES, 3DES, RC4)
SC-12: Cryptographic Key Establishment and Management
Requirement: Establish and manage cryptographic keys for employed cryptography Assessment Criteria:- Key Management Service (KMS) resources detected
- Customer Master Keys (CMK) properly configured
- Key rotation enabled
- Key metadata includes spec, usage, origin
- Key size meets minimums (e2048 bits for RSA, e256 bits for AES)
SC-17: Public Key Infrastructure Certificates
Requirement: Issue public key certificates under an approved certificate policy Assessment Criteria:- Valid X.509 certificates detected on assets
- Certificate signature algorithms meet standards (SHA-256+)
- Certificate key sizes e2048 bits
- No expired or self-signed certificates (in production)
SC-28: Protection of Information at Rest
Requirement: Protect confidentiality and integrity of information at rest Assessment Criteria:- Storage and database assets have
encryption_at_rest: true - KMS key ID is documented for encrypted resources
- Encryption algorithm specified (AES-256-GCM preferred)
SC-8: Transmission Confidentiality and Integrity
Requirement: Protect confidentiality and integrity of transmitted information Assessment Criteria:- Assets have
encryption_in_transit: true - TLS version e1.2 (prefer TLS 1.3)
- Modern cipher suites configured
- No SSLv2, SSLv3, TLSv1.0, TLSv1.1
Multi-Cloud FIPS Validation
Cloud Provider FIPS Status: Major cloud providers maintain CMVP-validated cryptographic modules, but validation status varies by service and region.Current Coverage (Expanding):
- AWS: KMS, CloudHSM, S3, RDS, EBS (see AWS FIPS endpoints)
- Azure: Key Vault, Storage, SQL Database (see Azure FIPS 140 validation)
- Google Cloud: Cloud KMS, Cloud HSM (see GCP FIPS 140-2 compliance)
CMVP Certificate Tracking
Nabla automatically extracts CMVP certificate numbers from SBOM metadata:Evidence Lake Integration
The FIPS assessor consumes evidence from Nabla’s multi-source evidence lake:Evidence Sources
1. System Metadata (system_metadata)
fips_mode_enabled: Boolean indicating OS-level FIPS modeopenssl_fips_status: OpenSSL FIPS configuration stringhostname: System identifier for evidence attribution
sboms)
component_name,component_version: Software identitycryptographic_libraries: Array of crypto libs (e.g.,["openssl", "libgcrypt"])fips_validated: Boolean attestationfips_certificate_number: CMVP cert number (e.g.,"4282")
configs_posture)
weak_crypto_detected: Boolean flag for legacy algorithmsencryption_algorithm: Configured algorithm (e.g.,"AES-256-GCM")cipher_suite: TLS cipher suitekey_size: Cryptographic key size in bitscryptographic_material_type: Type of crypto material (private_key,symmetric_key,certificate)
asset_inventory)
asset_type: Infrastructure type (storage,database,key_vault)encryption_at_rest,encryption_in_transit: Boolean flagskms_key_id: KMS key ARN/IDtls_version: TLS protocol versioncertificate_info: X.509 certificate metadataprovider: Cloud provider (aws,azure,gcp)
OSCAL Output Structure
FIPS assessment results include detailed subject tracking and observation linking:Example Assessment Request
Common FIPS Compliance Issues
Critical Violations
Non-FIPS Cryptographic LibrariesWarnings
Missing CMVP CertificateFIPS-Approved Algorithms (FIPS 140-3)
Encryption
Hashing
Key Agreement
Federal Compliance Context
FISMA Requirements
FIPS 140-3 Mandate: FISMA (Federal Information Security Management Act) requires all federal information systems to use FIPS-validated cryptography. OMB Circular A-130: Federal agencies must implement FIPS 140-3 validated cryptographic modules for:- Confidentiality protection
- Integrity verification
- Authentication
- Nonrepudiation
NIST Guidelines
- NIST SP 800-52 Rev 2: TLS implementation guidance
- NIST SP 800-57: Key management recommendations
- NIST SP 800-175B: Algorithm security lifetimes
Limitations
Best Practices
- Use Cloud Provider KMS: AWS KMS, Azure Key Vault, GCP Cloud KMS are FIPS-validated
- Enable FIPS Mode: Configure OS and libraries for FIPS operation
- Document CMVP Certificates: Include certificate numbers in SBOM metadata
- Rotate Keys: Enable automatic key rotation (annually minimum)
- Audit Cryptographic Inventory: Maintain up-to-date SBOM with crypto libraries
Related Frameworks
- NIST 800-53 - Security controls including SC-13, SC-12, SC-8
- NIST 800-171 - Requirement 3.13.11 (FIPS-validated cryptography)
- NIST 800-172 - Enhanced cryptographic requirements
- FedRAMP - Cryptographic requirements for cloud services

