Inspiration

I recently had a private experience where someone close to me had to give his health reports to an insurance company, and one of his classmates used to work there. That made him hesitate to hand over his report, but he did not really have any other choice either.

I watched that as a third person and thought: is there a way a person can claim insurance without revealing their real medical reports, but still prove that they are eligible for the claim?

That question became the starting point of zk health.

What it does

zk health is a privacy-first medical insurance claim system.

Instead of giving the insurer the full medical report, an authorized lab can issue a signed claim bundle with a zero-knowledge proof. The insurer can verify that the patient meets the claim conditions without seeing the raw medical values.

For example, instead of revealing the exact value (x), the system only proves that the value satisfies a condition like:

[ x \leq t ]

or

[ x \geq t ]

where (t) is the public insurance threshold.

So the insurer can verify eligibility, but the patient’s private health data stays hidden.

How we built it

I am specialized in ZKP, and I am still learning, with a background as a blockchain engineer. So I thought I had the best language for talking about privacy: zero-knowledge proofs.

I created this prototype to showcase the core process of the idea.

We used Next.js for the app, Solidity smart contracts for the on-chain part, and Tailwind CSS to make the interface look clean and usable.

Challenges we ran into

I ran into many challenges.

At first, my idea was much bigger. I wanted to let users upload their medical report, then have AI run behind the scenes, read the report, extract the data, and pass the values into the circuit.

But then I realized that would break my primary goal:

Data should never leave the device.

I did not want private health data going to someone else’s server.

Then I thought about using zkML. But I realized that squeezing even a tiny ML model into a circuit, and running it inside the circuit, might take a very long time to generate a proof.

So I basically gave up on that version of the idea.

Then I thought of letting users enter a JSON file. But then I realized general people may have no idea what JSON even is.

After that, I thought:

I will make this for laboratories. They can issue the proof.

That felt more practical and more authentic. Labs can be registered, and only registered labs can sign the claim bundle. Later, the insurance company can check whether the bundle was signed by a registered lab.

So I ended up with that structure.

Finding the right practical structure and flow was the hardest part.

Accomplishments that we're proud of

I started this project as a real project, not only as something for this hackathon.

So win or lose, I am happy with what I came up with. I have a little hope that somehow this idea will land somewhere right and grow into something useful.

Being courageous enough to submit it, regardless of the outcome, is what I am most proud of.

What we learned

I learned a lot from this project.

First, web development is not really my main area. But with the help of AI, I was able to build this prototype and understand more about web development and its structure.

I also learned that I like system thinking. I do not want to build just a tool. I like thinking about the whole system around it.

I learned that I may have good architectural and visionary ideas, but I still need to learn how to express those ideas clearly and turn those skills into real work.

Also, I almost forgot this part: I learned about quantization while trying to squeeze an ML model into a zero-knowledge circuit.

What's next for zk health

Next, I want to build a working beta version of this.

Then I hope to talk with laboratories in my area about this idea, and also speak with some insurance companies. I want to fine-tune the idea based on their needs, feedback, and real-world workflow.

I also hope to get ideas from companies around the world, especially in Europe, where privacy and data protection are taken very seriously.

My bigger goal is for zk health to become a protocol rather than just a web portal.

The dream is that labs, insurers, and patients can interact through a privacy-preserving system where the lab sees only what it needs, the insurer verifies only what matters, and the patient’s raw medical data stays protected.

I am working hard for that, and hopefully I can make it happen by connecting with the right mentor, which is what I need most at the moment.

Thank you.

Built With

Share this project:

Updates