VIA — Communication-Efficient Single-Server PIR
Private Information Retrieval lets a client fetch the i-th record of a server-held database while keeping i hidden from the server — from a single server, with no non-collusion assumption. VIA does this with a logarithmic-depth DMux tree for query expansion and (in VIA-C) a low-noise LWE→RLWE conversion for query compression.
Intro to VIA
A from-first-principles explanation — no PIR or cryptography background assumed. What the noise budget is, why the DMux tree wins, how the query is compressed, and why each step works, built up as a chain of forced moves with worked examples and schematics.
Architecture
The VIA scheme as an abstract system for applied-cryptography engineers: a clickable map of the self-contained components, how they stack, how a query flows through them, and why the composition is complete and sound. The scheme, not the codebase.
Implementation details
The via-rs codebase as built: an architecture map of the five crates and the layered primitive stack, a primitive→paper cross-reference, and the build/test status.
Parameters
Three pages: the abstract (the knobs and the security/correctness tension, reconciled across paper, code, and review); the concrete — a derived, estimator-backed instantiation that provably clears ≥120-bit security while staying correct; and benchmarks measuring what that 120-bit point costs.
Audit
A severity-ranked correctness/security audit of VIA-C and VIA-B — paper-vs-code parameter and noise-budget divergences, each finding adversarially re-validated against the paper and the code pinned to a commit, with source links and citations.
Scope: VIA-C and VIA-B are implemented (VIA-B behind the via-b cargo feature); plain VIA is not yet implemented. See the repository and its README for build & test instructions.