Learn

Introducing ‘httpz’: the internet you can trust

Uncover the transformative potential of 'httpz', where zero knowledge proofs and Mina Protocol converge to establish an internet rooted in trust and verifiability.

By: Will Cove | Head of Community, Mina Foundation

Trust on the modern web is declining rapidly. As a user, how do I know if I’m interacting with a bot or a human? Is that video real or an AI-generated deepfake? Are my tutor’s online credentials accurate? Do I really want to give this website my personal information? 

So far, we’ve relied on platforms for this due diligence on our behalf, but this is sub-optimal because: 

  • They collect, verify, and store sensitive data on their servers
  • Verification happens behind closed doors, and platforms have varying policies / processes
  • Information is fragmented in between platforms
  • Platforms can only moderate a tiny fraction of traffic on the web

We’re expected to trust platforms and individual actors to provide assurance that data is valid, and they can’t do so reliably. 

Zero knowledge proofs, ZKPs, are here to save the internet . 

In the same way that encryption instilled confidence in who was sending data, we need a system that allows us to trust that the data itself is correct. 

We need to return to the original vision of a decentralized internet of protocols, not platforms.

Enter httpz and the internet you can trust. 

httpz represents a vision for the internet where users can create, share, and verify proofs of information independent of any third parties. Users can guarantee that the data is valid, is from where they expect, or does what they expect. 

It continues the legacy of HTTPS, which established secure data exchange between client and server via encryption and trusted Certificate Authorities (CA). 

By introducing a ‘proof layer’ on top of HTTPS,  you can verify the source and validity of data or computation without trusting any authority.  Trust the data directly, not just the access.

So how does this work?

httpz, the proof layer, is composed of proofs generated locally on users devices via zero-knowledge applications (zkApps), and sown together via the Mina blockchain. 

zkApps allow you to create proofs from any standardized data set or computation, without actually revealing or sharing the data itself. zkApps can also create a proof from multiple previous proofs, allowing you to reuse and re-combine the guarantees provided by each of them.   

Those proofs can be stored locally on the user’s device, or verified on the Mina blockchain. If stored locally, the user sends the proof to the zkApp, which verifies it, and checks if the user meets the requirements to proceed. 

In the same way as zkApps, proofs verified on the Mina blockchain are combined into a single ‘proof of everything’, giving all of the guarantees of all of the proofs, in a public, accessible, and usable way.  

Zooming back out, we envision a future where all applications are zkApps, meaning they have the ability to create and consume ZK proofs.

Let’s walk through a real-world use case

I have a signed passport from a recognized government agency. 

I have an iOS app that reads the passport (via NFC chip), which creates and stores a proof for my passport in my Mina wallet. I want to sign up for a new social network app that requires proof-of-personhood in order to register for an account. 

The application has a zkApps library integration that checks my wallet, and uses the singular Mina proof of everything to tell the app that I meet its required conditions (ie I possess a standard issue passport). 

None of my information is stored by or even sent to the application’s server. This proof can be reused again and again by different apps, with no extra cost or effort needed.

To repeat, any application with this zkApp library integrated should be able to register that my public address is associated with a person holding a valid passport. When signing up for a new online service, the service/application quickly checks the Mina proof of everything, and I’m good to go.

Here’s a view of how this might look in practice:

import httpz from "httpz";
let publicKey = await prompt("Enter your Mina address", "");
let hasPassport = await httpz.request('httpz://passport.mina/${publicKey}');

As we refine and work towards realizing the httpz vision, this is practical today, and there are multiple teams across various ZK ecosystems already building this exact application. 

We’re excited to see this same model applied to more data and use cases to start harnessing the power of ZK proofs.

Why Mina?

We envision a world where every web application has the ability to create and consume proofs. Billions of ZK proofs will be passed around the ‘proof layer’ (httpz) on a daily basis. Trust on the internet depends on it. 

We believe Mina Protocol is best designed to become the public proof layer (httpz) for the following reasons:

  • If billions of proofs are being passed around, we need succinctness – a single proof of everything – made possible by recursion.
  • As users, we only have to interact with this one proof. We don’t have to worry about what ‘X’ has done or what ‘Y’ has done, and can throw away all the details. We only care that the proof is valid, not how we got to it being valid.
  • As the world evolves, Mina will always provide the latest proof that a vote is being counted securely, a game move has been played fairly, a company has been held publicly accountable, and all the other ideas that we haven’t even dreamed of yet…  

In a sense, you can think of the Mina proof of everything as the API for httpz, the proof layer. This also means you will be able to get access to all of ‘Web 3’ data simply by accessing one proof. As other proof systems continue to advance and specialize, the things we care about verifying become faster, easier and better to prove. Mina is designed to take these proofs, however they come, and combine them all together to achieve a true, succinct, proof of everything. 

We are excited and proud to contribute to the evolution of the ZK space. We look forward to bringing all of our efforts together towards this unified vision of an internet that we can all trust. 

About Mina Protocol

Mina is the world’s lightest blockchain, powered by participants. Rather than apply brute computing force, Mina uses advanced cryptography and recursive zk-SNARKs to design an entire blockchain that is about 22kb, the size of a couple of tweets. It is the first layer-1 to enable efficient implementation and easy programmability of zero knowledge smart contracts (zkApps). With its unique privacy features and ability to connect to any website, Mina is building a private gateway between the real world and crypto—and the secure, democratic future we all deserve.

More from our Blog

SEE ALL POSTS
Announcement,Resource / 2024-04-25 / Vitor Silva
Mina Protocol’s Upcoming Major Upgrade: Everything You Need to Know
Mina Protocol, the native-ZK blockchain live on mainnet since 2021, is on the verge of a major upgrade poised to be a game-changer for the entire crypto ecosystem.
Read more
Announcement / 2024-04-23 / Mina Foundation
Mina Protocol to Integrate Celestia’s Modular Data Availability Layer
Read more
Learn / 2024-04-11 / Yonatan Medina
Introducing recursive zkRollups: A recursive improvement to zkRollups and zkApps for Mina
Read more
Learn / 2024-04-04 / Vitor Silva
Mina’s Berkeley Upgrade – What to Expect
Read more

About the Tech

AboutTechCta

Mina uses advanced cryptography and recursive zk-SNARKs to deliver true decentralization at scale.

Get Started

GetStartedCta

Getting started with ZK on Mina is simple.