mediumMultiple Choice
SSCP Practice Question: A software developer wants to ensure the…
A software developer wants to ensure the authenticity and integrity of an API request but does not require non-repudiation. Which cryptographic method should be used?
⚠ Common exam trap
ISC2 often tests the distinction between authentication/integrity (HMAC) and non-repudiation (digital signatures), leading candidates to incorrectly choose digital signatures when non-repudiation is explicitly not required.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Hash-based message authentication code (HMAC)
HMAC uses a shared secret key combined with a cryptographic hash function to produce a fixed-size authentication tag. This ensures both authenticity (the request came from a party knowing the key) and integrity (the data has not been altered) without providing non-repudiation, because the same key is shared between sender and receiver, so the receiver could also have generated the tag.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Digital signature using RSA
Why it's wrong here
RSA signatures do provide authenticity and integrity, but they also deliver non-repudiation, which the stem explicitly excludes. The requirement points to a symmetric message authentication code, where a shared key verifies integrity and origin without creating third-party-verifiable proof, so RSA signing exceeds the stated need.
- ✗
Symmetric encryption with CBC mode
Why it's wrong here
Symmetric encryption with CBC mode provides confidentiality only; both parties share one key, so neither authenticity nor integrity is established, and CBC alone is malleable. It suits bulk data confidentiality, whereas authenticity and integrity without non-repudiation require a MAC or HMAC.
- ✓
Hash-based message authentication code (HMAC)
Why this is correct
HMAC combines a shared secret key with a hash function, providing both integrity and authenticity of the API request. It uses symmetric keying, so it does not deliver non-repudiation, precisely matching the stem's constraint that non-repudiation is not required.
- ✗
Elliptic curve Diffie-Hellman (ECDH)
Why it's wrong here
ECDH performs key agreement, letting two parties derive a shared secret; it provides neither authenticity nor integrity of the request itself, and no signature binds sender identity. It is tempting because it secures key exchange over an untrusted channel, which would be the right choice when establishing a session key, not when verifying an API message.
Go deeper
Related to this question
About these practice questions
This SSCP question is part of Courseiva's 971-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This SSCP practice question is part of Courseiva's free ISC2 certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the SSCP exam.