This is basically three system design questions duct-taped together.
Start by clarifying requirements such as file size, upload frequency, security, and legal standards. Then design a scalable ingestion pipeline with chunked uploads, resumability, and client-side encryption. Finally, address malicious content scanning and a tamper-evident chain of custody using cryptographic hashing and digital signatures.
Pro tip: Emphasize that chain of custody must be provable end-to-end, including device attestation and audit logs, and mention that legal admissibility often requires compliance with standards like CJIS or GDPR.
Ask about file sizes (e.g., 1-10 GB), upload frequency, network conditions, security requirements, and legal standards (e.g., CJIS, GDPR). Confirm the need for tamper-evidence and malicious content detection.
Propose a chunked, resumable upload protocol (e.g., tus) with client-side encryption and parallel uploads. Use a message queue to decouple ingestion from processing and ensure reliability.
Scan files asynchronously using antivirus engines and sandboxing. Quarantine suspicious files and alert security teams. Consider format validation and metadata inspection.
Generate a cryptographic hash (e.g., SHA-256) of each file on the device, sign it with a device-specific private key, and store the signature and hash in an immutable ledger (e.g., blockchain or append-only log). Record all access and modifications.
Discuss trade-offs between latency and security, cost of storage vs. durability, and how to scale components (e.g., using CDN for uploads, sharding databases). Mention monitoring and failure recovery.
AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.