Key Establishment Methods
Key Establishment Methods in FIS 140-2 cover key agreement, key transport (including encapsulation and wrapping), key generation, key entry (manual, electronic, unprotected media), and key derivation.
The best method to make sure you do this right is to comply with SP 800-56A (CAVP KAS certificate required).
You can also use SP 800-56B, which is vendor affirmed right now. SP 800-56B is IFC based and key confirmation is highly desirable.
Or, you can use non-approved methods that rely on approved validated algorithm components. The shared secret is still computed per SP 800-56A with a CVL certificate. The kdf (key derivation function) then would be aproved (with a CVL certificate) per SP 800-56B and 80-56C. There was a new version of SP 800-56A released in May 2013 that should help alleviate some of this convoluted cross referencing, and clarify many questions people have had over the last few years.
OR...you can even use non-approved, but allowed implementations. That is, if your key strengths are consistent with SP 800-131A transition requirements.
Key Transport ModesKey transport modes can be confusing as well. Key encapsulation is where keying material is encrypted using asymmetric (public key) algorithm. Key Wrapping, though, is where the keying material is encrypted suing symmetric algorithms. Both commonly provide integrity checks.
Approved methods would be an approved IFC based key encapsulation scheme as in SP 800-56B, key wrapping schemes (AES or 3DES based) as per PS 80038F, AES based authentication encryption m odes permitted in SP 800-38F, or as per SP 800-56A, a DLC-based key agreement scheme together with a key wrapping algorithm.
Any key encapsulation scheme employing an IFC based methodology that uses key lengths specified in SP 800-131A as acceptable or (through 2013) deprecated. When AES or 3DES are used for wrapping, a CAVP validation of the algorithm is required.
Key Generation MethodsPeople often mistakenly believe that because they are using a good RNG, that they must be doing the right thing for key generation... not always the case! You still need to follow SP 800-133 and IG 7.8 (Implementation Guidance).
The vendor needs to identify the method used and account for the resulting length and strength of the generated keys. This is about the generation of a symmetric algorithm key or a seed for generating an asymmetric algorithm key; the the generation of an asymmetric algorithm domain parameters and RSA keys. See IG 7.8 and the future versioin of SP 800-90A.
You can use SP 800-132 for password-based key generation for storage applications only.
Key EntryImplementation Guidance (IG) 7.7 provides examples explaining the FIPS 140-2 requirements. Key entry/output via the GPC internal path is generally N/A. Key establishment over the unprotected media requires protection. Split knowledge entry for manually distributed keys at Levels 3 and .
Key DerivationWhen you're deriving a key - it's coming from something else. If you're deriving from a shared secret (per SP 800-135rev1), that includes the following protocols and their key derivation function are included: IKE (versions 1 and 2) , TLS (1.0->1.2), ANSI X9.42 and X9.63, SSH, SRTP, SNMP and TPM. You can also drive from other keys, which is covered by SP 800-108 - which also includes IEEE 802.11i key derivation functions (IG 7.2).
This post syndicated from: Thoughts on security, beer, theater and biking!