over budget

Zero Knowledge API for Cardano

$54,000.00 Requested
Ideascale logo View on ideascale
Community Review Results (1 reviewers)
Addresses Challenge
Feasibility
Auditability
ソリューション

We will build a zero-knowledge module with APIs. One can easily build apps that will generate zk-proofs and be saved in Cardano blockchain.

Problem:

他のブロックチェーンで注目されているゼロ知識証明(zk)。カルダノ用のzkアプリを簡単に構築する方法はない。

Yes Votes:
₳ 53,423,028
No Votes:
₳ 14,054,960
Votes Cast:
347

チーム

  • download
  • download

[IMPACT]

What's the Buzz in Zero-Knowledge Proof (zk)?

The applications of zero-knowledge (zk) crypto protocols in the blockchain can be far-reaching and game-changing especially in the fields of privacy and security. This would help address data breach concerns that are costing industries billions of dollars.

Thus, it has brought a lot of buzz and excitement in the tech space, bringing in huge investments from VCs and the likes. Aleo.org for example has recently raised $200M, another is zkSync which has now gathered $50M.

What is ZK?

Zero-knowledge (zk) techniques are mathematical methods used to verify things without sharing or revealing underlying data. Zero-knowledge protocols are probabilistic assessments, which means they don't prove something with complete certainty. Instead, they provide small pieces of unlinkable information that can accumulate to show that the validity of an assertion is overwhelmingly probable.

In simpler explanation, it's like "I can't tell you the secret, but I can prove to you that I know the secret."

ZK in Cardano

Aleo makes it easy to build private applications for which the zk-proofs are saved in their own chain. <u>To build zk enabled apps in Cardano, however, one still has to build its own zk module!</u> This requires not only extensive knowledge in zero-knowledge, but one also has to learn and be comfortable with the Rust language since most good zk libraries use Rust.

Proposed Project: Know Zero

Our proposed project is called Know Zero. We want to make <u>building zk apps easy for developers in Cardano</u> by eliminating the hard stuff. No need to learn so much of the intricacies of zk. No need to learn Rust language.

To do this, we will build <u>a zk-enabled module complete with APIs</u> so any developers can just integrate with the services through these endpoints. Devs can just focus on their apps front end development and quickly generate zk-proofs that are also integrated on the Cardano blockchain.

So as not to reinvent the wheel, we'll use zkSNARK (see below) on top of other zk-libraries and our own concoction of zk, privacy, and secure protocols to build Know Zero. We will also tap into our 5 years of insights and expertise in building a privacy-centric health platform.

<u>ZK Snarks</u>

zk-SNARK stands for “Zero-Knowledge Succinct Non-Interactive Argument of Knowledge,” and refers to a proof construction where one can prove possession of certain information, e.g. a secret key, without revealing that information, and without any interaction between the prover and verifier.

<u>ZEXE Protocol</u>

Zexe is a new blockchain design that enables both data privacy and function privacy in addition to succinctness. In other words, not only can transactions be generated offline and efficiently verified on-chain, the time needed to verify the transaction is independent of the time required to do the offline computation to which the prover attests to. It achieves this by introducing a new cryptographic primitive called a Decentralized Private Computation (DPC).

Javascript SDK

To ease up development even further, we will provide SDK for Javascript devs as well. They can just focus on building zk apps without having to learn extra stuff.

Challenge

The challenge asks to create an awesome experience that incentives developers, that will lead to increased developer adoption, productivity, and creativity.

Thus, the proposed solution is ideal for this. Know Zero is a API Hub utilizing zero knowledge, which is a hot item now in the web 3.0 world. This makes it attractive and easy for developers to build zk apps by decreasing, if not eliminate, the learning curve to do so.

Experienced Team

The team has built a similar zk module for healthcare so there are no challenges or blockings anticipated. We were able to overcome them already before when we built a similar module.

The probable challenge is the timeline of activities that will be set. Some allowance should be provided to consider external factors that are outside of the team's control.

Product Built on ZK

The team has developed Nightingale, which has a ZK module built-in, see details here. This is a part of the Hippocrades Healthcare Platform, some modules of which have been funded in Catalyst as well.

[FEASIBILITY]

Month 1

  • System Analysis and Design
  • Gathering of Requirements

Months 2 to 4

  • Start of Development (Backend)
  • Start of Development (Front end - app)
  • Start of Development (Front end - website)

Month 5

  • Release of Alpha
  • QA and testing
  • Iterations and improvements
  • Start of SDK Development

Month 6

  • Release of Version 1.0
  • Integrate to website
  • SDK Release

Project Lead

  • 6 months @ $1.5T / month
  • $9,000

Backend Senior Devs (2)

  • $3000 @ 5months
  • $30,000

Front end Devs (2)

  • $2,000 @ 3 months
  • $12,000

System Analyst & Designer

  • $3,000 @ 1 month
  • $3,000

Total 54,000

The team here is also part of Team Hippocrades which is selected by Cardano in the Ariob Incubator / Iceaddis program in Africa. The Hippocrades app has zk enabled module so the team has a good experience in building zero-knowledge.

Some reference to Our Works

  • Nightingale ZK module here
  • Team is also part of the Atala Prism Pioneer Program
  • Hippocrades Whitepaper here
  • Deploy your own health dApps (www.hippocrades.org)
  • Actual deployment of Hippocrades (www.hippocrades.com)
  • Demo of Hippocrades Apps here
  • Healthcare API documentation here
  • We are the same team behind MYCURE

Core Tech Team

We are a 10 man team and also have a pool of tech consultants that we can tap on a project basis. This project will be lead by the following:

Ian has worked mostly in health tech, producing comprehensive information management systems. He has a strong physics background, having studied it in his undergrad. He has since been developing software, with a knack for technical complexity and the cutting edge. His analytical nature, combined with a natural yearning to make complex systems simple and elegant, allows him to work with deeply technical concepts and turn them into products for the everyday user. His latest work revolves around zero-knowledge proofs, blockchain, and their applications in health-tech.

Areas of Expertise:

  • Application Development
  • Web Development
  • React
  • VueJS
  • HTML, CSS, Javascript
  • Linux
  • Rust
  • Applied Physics

Joff has been programming and focusing on web development using JavaScript in the past 9 years (since 2012). Most of his time is spent mastering frontend development using AngularJS, Angular, and Vue.js frameworks. Currently, he is dabbling on SvelteJS. He is passionate on contributing to the open-source community. Being a big fan of Vue.js, his projects are mostly based on Vue.js or JavaScript.

Areas of Expertise:

  • Stripe Community Expert
  • Creator of Vue-Stripe
  • OSS Community Building
  • Web Development
  • Mobile Development
  • JavaScript
  • VueJS
  • HTML, CSS, Javascript

Nad is a natural geek growing up. He has been coding since the art has been introduced to him at age 15. This has led him to choose Computer Science as his undergraduate degree at the top university in the country. Since 2016, he is mostly involved in designing healthcare systems—developing APIs like EMRs and full scale health information management solutions.

Areas of Expertise:

  • System Analysis & Design

  • API Development

  • Kubernetes

  • gRPC

  • Blockchain

  • Zero-knowledge cryptography protocols

  • Programming Languages: C, Javascript, Rust, Go

    [AUDITABILITY]

It's a standard practice in our team to be guided by the following principles during development:

  • Stable code (to minimize application downtime)
  • Simple code (simplicity is key, the simpler it is the faster to test and change)
  • Testable code (acts like documentation so that changes will immediately show errors)
  • Team velocity (story points delivered per sprint)
  • Knowledge share (collaborative meetings and proper documentation)

Tasks and deliverables of the Dev Team are placed in GitHub from which we track, monitor, manage activities that are pending, ongoing, and done.

Modules and features are listed accordingly that contain the tasks/activities required and their corresponding due dates to accomplish each.

We monitor success by ticking off each task done per module. For delayed items, these are regularly brought up in daily standups and weekly meetings to discuss blockings/issues and what needs to be done to address them.

Entirely new one.

SDG Rating

N/A

コミュニティ・アドバイザー・レビュー (1)

Comments

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3分 24秒
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4分 3秒
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3分 48秒
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2分 16秒
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3分 14秒
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3分 19秒
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4分 59秒
    Darlington Kofa
0:00
/
~0:00