All Research Tracks
R06 Β· Security & Privacy

Forensic Query Language for Hash-Chained WAL

SkeinDB's tamper-evident WAL enables forensic analysis, but there's no described way to query it. Security investigations require answering temporal questions with cryptographic verification: "Show all writes to table X between events Y and Z, and prove completeness." A purpose-built forensic query language provides both expressive queries and verifiable results.

Research Proposal β€” Mapped to backlog in docs/RESEARCH_BACKLOG.md

πŸ”¬ What's Novel

πŸ”§ Technical Approach

Phase 1 β€” Language Design (SkeinForensic)

Design a forensic query language with temporal predicates (BETWEEN timestamp, AFTER event), entity tracking, causal queries, and integrity assertions (PROVE COMPLETE) built into the grammar.

Phase 2 β€” Proof System

Merkle proofs for included records, boundary proofs for query range completeness, and absence proofs for negation queries. All proofs verifiable by an external auditor without database access.

Phase 3 β€” Index Structures

Auxiliary WAL indexes accelerating forensic queries while preserving verifiability. Indexes are hash-consistent with the chain, so their existence doesn't compromise integrity.

Phase 4 β€” Incremental Verification

Checkpoint-based verification building on previously verified log prefixes. Ongoing investigations can verify new log entries incrementally without re-checking the entire chain.

πŸ§ͺ Hypotheses

H1

A specialized forensic language expresses common forensic questions more naturally than adapting SQL to tamper-evident logs.

H2

Completeness proofs can be generated efficiently alongside query results without significant overhead.

H3

Incremental verification amortizes proof checking costs for ongoing investigations over time.

πŸ”— SkeinDB Integration

Hash-Chained WAL
SkeinQL RPC
Audit Logging
Dependency Tracking
Merkle Proofs

πŸ“š Key References