Cryptography Fundamentals Questions

Core concepts and vocabulary of cryptography: confidentiality, integrity, authentication, and non-repudiation; the difference between symmetric and asymmetric primitives; and how standard algorithms, libraries, and protocols fit together. Covers threat models, common standards, and applying primitives and cryptographic libraries correctly to real-world security problems. The entry point for the cryptography track.

EasyTechnical
98 practiced

Explain the roles of salting and key stretching in password-based key derivation and storage. Describe how salts should be generated and stored, why unique salts prevent precomputation/rainbow-table attacks, and how key stretching (iterative hashing, memory-hard functions) increases attacker work. Illustrate with concrete examples of attacks that salting and stretching mitigate and note any remaining risks that require additional controls.

MediumTechnical
72 practiced

Explain the padding oracle attack against CBC-mode encryption. Describe how an attacker can use padding error responses to decrypt ciphertext bytes and provide practical mitigations you would apply in a web service that handles encrypted cookies.

MediumTechnical
136 practiced

Describe how the Elliptic Curve Digital Signature Algorithm (ECDSA) works at a high level, why ECDSA signatures can be malleable in some formats, and what best practices you would enforce when verifying and storing ECDSA signatures in a distributed system.

EasyTechnical
94 practiced

Compare Message Authentication Codes (like HMAC or CMAC) with digital signatures: when would you use each for authentication and integrity, and how do they differ in non-repudiation, key management (shared vs asymmetric key), and performance in an enterprise setting?

MediumTechnical
90 practiced

Implement PKCS#7 padding and unpadding functions in Python for a block cipher with a given block size. Provide: def pad(data: bytes, block_size: int) -> bytes and def unpad(data: bytes, block_size: int) -> bytes. The unpad function must validate padding and raise an exception for invalid padding, and you should explain how to validate padding without creating an easy padding oracle vulnerability during decryption flows.

Unlock Full Question Bank

Get access to all 37 Cryptography Fundamentals interview questions and detailed answers.

Sign in to Continue

Join thousands of developers preparing for their dream job.