Design principles
- Verification is never charged to the person being verified. In no form, at any stage. This is a constraint of the project rather than a pricing decision, and it holds for anything derived from it.
- Neither the diagnosis nor the document is ever requested. The library verifies a cryptographic presentation and returns the minimum: whether the entitlement exists. The condition, the percentage and the certificate never enter the system because they are never asked for.
- What remains is stated precisely. The presented credential is never stored: it is verified and discarded. What survives for the duration of the transaction is the outcome, which for a successful verification carries the attributes actually disclosed — they must exist between the wallet response and the reading of the result. Under the default configuration they are held in memory and expire on their own. This is stated because a claim of "nothing is retained" would be more attractive and less true.
- No profiling. There are no per-person counters, no history and no profile to build — not even for abuse prevention. Fraud is addressed where it occurs, not by keeping records of those who hold an entitlement.
- The whole codebase is open. Not a core, not a community edition: all of it, under AGPL-3.0. Anyone integrating the library can read exactly what it does with the data of the person in front of them, and anyone who is unconvinced can check rather than trust.
- Nothing is certified by this project. The only authority is the state that issued the credential. The library does not decide who is entitled to what, keeps no registry, issues no accreditation and does not place itself between a person and their entitlement. It verifies a signature.
Context
Handing over documents persists because a remote channel had no practical alternative, not because anyone chose it. Data protection authorities have long held that presenting a document is enough to grant a benefit, and that keeping a copy exceeds the purpose. Public wallets remove the last obstacle: the credential is already issued, already signed, and already in the holder's possession.
Zilath was the supreme magistrate of the Etruscan city: the office that ascertained and sanctioned. To ascertain, not to judge.
The library
Zilath is a Kotlin/JVM library that allows an application to act as an OpenID4VP relying party under the IT-Wallet profile: it requests a credential from the wallet, verifies it cryptographically and returns a yes or a no.
It is free software under AGPL-3.0. Those building open software use it without charge; a commercial licence covers embedding in closed-source products, and is the project's only intended source of revenue. It never applies to the person being verified.