See Purpose.
The purpose of this policy is to provide guidance that limits the use of encryption to those algorithms that have received substantial public review and have been proven to work effectively. Additionally, this policy provides direction to ensure that Federal regulations are followed, and legal authority is granted to disseminate and use encryption technologies outside of the United States.
This policy applies to all eCuras employees and affiliates.
4.1.1 Ciphers in use must meet or exceed the set defined as “AES-compatible” or “partially AES-compatible” according to the IETF/IRTF Cipher Catalog, or the set defined for use in the United States National Institute of Standards and Technology (NIST) publication FIPS 140-2, or any superseding documents according to the date of implementation. The use of the Advanced Encryption Standard (AES) is strongly recommended for symmetric encryption.
4.1.2 Algorithms in use must meet the standards defined for use in NIST publication FIPS 140-2 or any superseding document, according to date of implementation. The use of the RSA and Elliptic Curve Cryptography (ECC) algorithms is strongly recommended for asymmetric encryption.
Signature Algorithms
Algorithm | Key Length(min) | Additional Comment |
ECDSA | P-256 | Consider RFC6090 to avoid patent infringement. |
RSA | 2048 | Must use a secure padding scheme. PKCS#7 padding scheme is recommended. Message hashing required. |
LDWM | SHA256 | Refer to LDWM Hash-based Signatures Draft |
In general, eCuras adheres to the NIST Policy on Hash Functions.
4.3.1 Key exchanges must use one of the following cryptographic protocols: Diffie-Hellman, IKE, or Elliptic curve Diffie-Hellman (ECDH).
4.3.2 Endpoints must be authenticated before the exchange or derivation of session keys.
4.3.3 Public keys used to establish trust must be authenticated before use. Examples of authentication include transmission via cryptographically signed message or manual verification of the public key hash.
4.3.4 All servers used for authentication (for example, RADIUS or TACACS) must have installed a valid certificate signed by a known trusted provider.
4.3.5 All servers and applications using SSL or TLS must have the certificates signed by a known, trusted provider.
4.4 Key Generation
4.4.1 Cryptographic keys must be generated and stored securely, preventing loss, theft, or compromise.
4.4.2 Key generation must be seeded from an industry-standard random number generator (RNG). For example, see NIST Annex C: Approved Random Number Generators for FIPS PUB 140-2.
The Infosec team will verify compliance with this policy through various methods, including but not limited to business tool reports, internal and external audits, and feedback to the policy owner.
The Infosec team must approve any exception to the policy in advance.
An employee found to have violated this policy may be subject to disciplinary action, up to and including termination of employment.
National Institute of Standards and Technology (NIST) publication FIPS 140-2
Revised: March 14th, 2018