CAS-005 practice question 3 of 30
[Security Engineering and Cryptography] A developer needs toimprove the cryptographic strength of a password-storage component in a web application without completely replacing the crypto-module. Which of the following is the most appropriate technique?
Full set: 343 questionsKey stretching is a cryptographic technique specifically designed to enhance the security of password-based systems. It increases the computational work required to verify a password by repeatedly applying a cryptographic hash function to the password and a salt. This process, implemented by algorithms like PBKDF2, bcrypt, and scrypt, makes brute-force and dictionary attacks significantly slower and more resource-intensive for an attacker. This directly addresses the developer's need to improve the cryptographic strength of the password-storage component without replacing the entire crypto-module, as it builds upon existing hash functions.
A. Key splitting: A key management technique for availability and security by distributing parts of a key, not for strengthening password hashing.
B. Key escrow: A key recovery mechanism involving a trusted third party, which does not enhance the cryptographic strength of password storage.
C. Key rotation: A best practice for periodically changing encryption keys to limit the impact of a key compromise; it is not a technique applied to strengthen individual password hashes.
D. Key encryption: The practice of encrypting a key with another key (key wrapping), used for protecting keys at rest, not for strengthening the password hashing process itself. ---
1. National Institute of Standards and Technology (NIST) Special Publication 800-132
Recommendation for Password-Based Key Derivation.
Section 2
Introduction: This document states
"A password-based key derivation function (PBKDF) is used to derive a key from a password or passphrase. It is intended to be computationally intensive in order to discourage brute-force attacks on the password." This computational intensity is the core principle of key stretching.
2. National Institute of Standards and Technology (NIST) Special Publication 800-63B
Digital Identity Guidelines: Authentication and Lifecycle Management.
Section 5.1.1.2
Memorized Secret Verifiers: This section mandates that password verifiers (hashes) "SHALL be derived from the memorized secret using a key derivation function (KDF)
such as PBKDF2... The KDF SHALL include a salt and an iteration count." The iteration count is the mechanism for key stretching.
3. Boneh
D. (2020). CS 255: Introduction to Cryptography
Lecture 10 Notes. Stanford University.
Section on "Slowing down the attacker": The lecture notes explain that to defend against offline dictionary attacks
a slow hash function is needed. It introduces PBKDF2 as a standard that "stretches a short key" by applying a pseudorandom function (like HMAC-SHA256) a configurable number of times (e.g.
c=100
000).
4. Provos
N.
& Mazières
D. (1999). A Future-Adaptable Password Scheme. Proceedings of the 1999 USENIX Annual Technical Conference.
Section 2
"Design Goals": This seminal paper
which introduces the bcrypt algorithm
explicitly states a design goal is to make the hashing process slow and computationally expensive. It notes
"The time to check a password on a fast machine should be non-trivial... making a brute-force attack more difficult." This is the foundational concept of key stretching for password security.
Keep practicing
Take the free CAS-005 practice test
Ten exam-style questions with answers and explanations, plus the exam facts and study guides.
More questions
Other CAS-005 practice questions
- Question 1[Security Architecture] Users are willing passwords on paper because of the number of pas…
- Question 2[Emerging Technologies and Threats] Due to locality and budget constraints, an organizati…
- Question 4[Emerging Technologies and Threats] Which of the following AI concerns is most adequately…
- Question 6[Governance, Risk, and Compliance (GRC)] An audit finding reveals that a legacy platform …
- Question 8[Security Engineering and Cryptography] Emails that the marketing department is sending t…
- Question 10[Security Architecture] A senior security engineer flags the following log file snippet a…
