Cryptographic Protocol Design and Analysis Questions

Designing and reasoning about cryptographic protocols and secure channels: how message flows, key-exchange handshakes, and end-to-end encryption systems are constructed so that composing individual primitives yields a provably or informally verified secure whole. Covers authentication and key-exchange protocol design (mutual authentication, forward secrecy, key confirmation, key-compromise-impersonation resistance), message-flow and state-machine security, formal and informal protocol verification (BAN logic, symbolic tools such as ProVerif and Tamarin, game-based reduction proofs), protocol-level vulnerability analysis (downgrade, replay, padding-oracle, algorithm-confusion attacks), TLS handshake and key-schedule internals, and end-to-end encryption system design (ratcheting, group key agreement, key transparency, post-compromise security). This is the design and analysis layer: why a protocol construction is secure, not which library call or key-management process to run in production. Distinct from selecting and operating cryptographic primitives day to day (certificate lifecycle management, TLS deployment monitoring and incident response, key rotation operations, algorithm and parameter selection for a given constraint set), which belongs to applied cryptography and key management; from core cryptographic vocabulary and primitive fundamentals; and from implementation-level bugs (side-channel leakage, memory-safety flaws, timing attacks in code), which belong to cryptographic implementation security.

MediumTechnical
28 practiced

A JSON Web Token (JWT) based API accepts tokens and uses the 'alg' field in the header to select verification: if alg == 'HS256' use HMAC with a symmetric key; if alg == 'RS256' use RSA public key. Describe how an algorithm confusion vulnerability can arise in this design, how you'd detect it during protocol analysis, and how to fix it at the server implementation level.

MediumSystem Design
24 practiced

You must construct a threat model for a TLS-like key-exchange protocol used in IoT devices. Enumerate attacker capability levels (passive eavesdropper, active network MitM, compromised device, physical access) and map these to probable attacks (downgrade, replay, unknown-key-share, reinstallation). For each mapping propose prioritized tests or mitigations to include in a security evaluation plan.

EasyTechnical
23 practiced

Define forward secrecy and post-compromise security. Give concrete examples of protocol mechanisms that provide forward secrecy and explain what extra mechanisms are required to achieve post-compromise recovery in asynchronous messaging systems.

EasyTechnical
22 practiced

List TLS/SSL protocol versions historically supported by browsers and servers (SSLv2, SSLv3, TLS 1.0, TLS 1.1, TLS 1.2, TLS 1.3). Which of these are considered insecure today and why (e.g., POODLE, BEAST, Sweet32)? As an SRE, which versions would you proactively disable on public endpoints?

HardTechnical
22 practiced

Analyze the historical security and operational issues associated with RSA key exchange in TLS 1.2 (for example lack of forward secrecy and server-compromise impact). Explain how TLS 1.3 addresses these deficiencies and outline residual risks that remain even after migrating to TLS 1.3.

Unlock Full Question Bank

Get access to all 21 Cryptographic Protocol Design and Analysis interview questions and detailed answers.

Sign in to Continue

Join thousands of developers preparing for their dream job.