ITPEC FE Subject B April 2025 Question 18
ITPEC FE Subject B April 2025 — Question 18 of 20
The system uses two encryption steps:
Blank A — symmetric key encryption:
- StoreFile(A(file, KDF(password))) encrypts the file using a key derived from the password via KDF (Key Derivation Function)
- The same password-derived key is used by both sender and recipient to encrypt/decrypt the file
- This is symmetric encryption — one shared secret (the password) for both operations
- Symmetric encryption is efficient for large files
Blank B — asymmetric key encryption:
- Message(file id, B(password, Q's public key)) encrypts the password using Q's public key
- Only Q can decrypt it with their private key
- This is asymmetric (public-key) encryption — used to securely transmit the shared secret
This is the classic hybrid encryption pattern (same concept behind TLS/HTTPS):
1. Encrypt bulk data with a symmetric key (fast, efficient for large files)
2. Encrypt the symmetric key with the recipient's public key (secure key exchange)
Why not others:
- (a) A as asymmetric — file is encrypted with a password-derived key (shared secret), not a public key
- (b) B as symmetric — the password is encrypted with Q's public key, which is asymmetric
- (c) A as hash — hashing is one-way; the file must be decryptable, so encryption is needed
- (d) A as hash — same reason as (c); hashing cannot be reversed to recover the file
- (f) B as hash — hashing the password would make it unrecoverable; Q needs the actual password to decrypt the file
Key rule: When a password/key encrypts bulk data → symmetric; when a public key protects that password → asymmetric. Together = hybrid encryption.
AI-generated — may contain errors
The original exam layout is preserved in the image so diagrams, formulas, tables, and code remain accurate.
This question comes from an official ITPEC past paper. ITPEC Practice is an independent study tool and is not affiliated with ITPEC. See the official FE past-paper collection or Report an issue.