Concepts
Selective disclosure and SD-JWT
Being able to prove a single required fact without showing the whole document. This is the most powerful idea in modern digital identity.
The problem: “all or nothing”
When you show your ID, you actually share far more than is needed. To enter a bar it’s enough to say “I’m over 18,” yet your ID also reveals your name, address, birth date and national ID number. This is a wasteful model in terms of privacy.
The solution: selective disclosure
Selective disclosure is the ability to reveal only the necessary field of a document and keep the rest hidden. And while doing so the issuer’s signature remains valid — i.e. the fields you hide do not break the document’s integrity.
What makes it possible: SD-JWT
SD-JWT (Selective Disclosure JWT) is a format that stores each field of the document separately as a “salted hash.” The signature covers all of these hashes. During presentation the holder shares the original value of only the fields they want to open; the rest stay hidden as hashes, yet the signature still verifies.
claims
Result
One step further: zero-knowledge proof (ZKP)
Zero-Knowledge Proof (ZKP) takes this even further: it lets you prove something without giving its value at all. You can prove the claim “I’m over 18” without even showing the field that contains your birth date. Tamga uses the open-source Longfellow ZK system, the one the EU’s age-verification profile builds on: the wallet proves a fact about the unchanged, issuer-signed mdoc, and two proofs cannot be linked to each other. The verifier side is ready; generating the proof on the phone follows the store release.
What works today
age_over_18 field. An age check requests that one field and receives nothing else.The ground is now ready. In the next section we’ll see how these pieces come together in the Tamga Network architecture.