← All Articles
Technical 6 min read

Building Trust with Zero Knowledge

Zero-knowledge proofs allow one person to prove they know something without revealing what it is. This powerful cryptographic tool is finding new life in privacy-preserving system design.

Affinidi

I’m always fascinated by how often ‘old’ thought leadership, theories and discoveries can find new life in solutions to modern problems, especially in the technology space. For example, the Fourier Transform introduced by mathematician Joseph Fourier in his 1822 book ‘The Analytical Theory of Heat’ was considered abstract by his contemporaries; yet more than a century later, his work was foundational in signal processing, and today we can thank Fourier for digital advancements like compression formats (JPG, MP3, MP4) and medical imaging techniques (MRI and CT scans).

Another more recent example, important for how we build privacy-preserving systems, is zero-knowledge proof, or ZKP. The basic idea behind ZKPs is pretty cool: one person, the prover, can show another person, the verifier, that they know something specific without actually telling them what it is. This way, the prover can prove they have certain knowledge without giving away any extra information to the verifier.

If we extrapolate that out, the prover can attest that they have some attribute, trait or property that meets a requirement the verifier requires to build trust, without actually exchanging the information. Using a ZKP you could prove to a bank that your credit score meets their requirement for a loan without disclosing the actual score itself. You could use a ZKP to prove you’re an adult without having to reveal your actual age and date of birth — thereby preserving your privacy.

Shafi Goldwasser, Silvio Micali, and Charles Rackoff defined zero-knowledge proofs in their 1989 paper “The Knowledge Complexity of Interactive Proof Systems” as proofs that “convey no additional knowledge other than the correctness of the proposition in question.” Their application in privacy-preserving system design is broad. Many predict that ZK systems will encounter a watershed moment in the coming decade, with reports suggesting the ZKP market has the potential to be worth $10 billion by 2030.

ZKPs are cryptography-based, and encompass a veritable zoo of implementations, with interactive (requiring multiple challenge/response cycles) and non-interactive (single exchange) types, and variants with exotic names like zkSNARKS and zkSTARKS — each with their pros and cons.

  • zkSNARKs are efficient (fast) and non-interactive but require a trusted setup and are more complex to implement.
  • zkSTARKs don’t need a trusted setup, are more scalable, and are quantum resistant, but produce larger proofs and may take longer to verify.

As with everything in engineering — there are always trade-offs. The choice depends on the application’s requirements for security, efficiency, and scalability.

ZKPs provide developers with a powerful tool for using the Privacy by Design approach when building systems, and another level of security and trust through cryptographic proofs. They also highlight the need for individuals to have simple and robust ways to collect, store and share proof generation and verification.

Even tech giants such as Google are jumping on board with recent partnerships addressing the surging demand for ZK technologies. More needs to be done to empower developers before we see such a reality at scale. Developers need rich tooling to simplify the discovery and consent-based collection of these proofs from individuals.

At Affinidi, we are building tools for developers to take advantage of powerful technologies like ZKPs. We’re working to simplify and democratise the use of decentralised technologies such as verifiable credentials, DIDComm messaging, decentralised web nodes (DWNs), and ZKPs, bridging them with familiar technology standards such as OIDC/OAuth — giving developers new ways to do familiar things.

Zero Knowledge ProofsPrivacyCryptographyZKP

Build with Affinidi

Start building trust infrastructure with our open-source tools and developer-friendly APIs.

Cookie Preferences

We use cookies to enhance your experience. You can manage your preferences below. For more information, read our Cookie Policy.

Strictly Necessary Always Active

These cookies are essential for core website functions such as security, session integrity, and cookie preference storage. They cannot be disabled.

  • _cf_bm: Distinguishes humans from bots (Cloudflare) · 30m
  • _cfuvid: Ensures secure browsing (Cloudflare) · Session
  • __hs_initial_opt_in: Prevents HubSpot's banner · 7 days
  • _gtm_debug: GTM debug mode (testing only) · Session
Analytics

These cookies help us understand how visitors interact with the site so we can improve content and performance. All data is aggregated and anonymous.

  • _ga, _gid, _gat: Google Analytics · Session – 2 years
  • __hstc, hubspotutk, __hssrc: HubSpot visitor tracking · 13 months
  • __hs_opt_out: HubSpot opt-out preference · 6 months
Marketing & Targeting

These cookies allow us and our partners to serve personalised ads and measure campaign performance.

  • _gcl_au, _gcl_dc: Google Ads conversion tracking · 90 days
  • IDE: Google Display Network personalisation · 1 year
  • _fbp: Meta / Facebook remarketing · 90 days
  • li_gc, _li_fat_id, bcookie: LinkedIn tracking · 1–24 months
  • guest_id, personalization_id: Twitter/X analytics · 2 years