near / bounties

Specs for technical and non-technical work that earns NEAR tokens
https://devgovgigs.near.social
74 stars 8 forks source link

Succinct Proof for NEAR light client #34

Open ilblackdragon opened 3 years ago

ilblackdragon commented 3 years ago

NEAR Bounty Terms

Before beginning work on the bounty, you must submit a proposal. Only if your proposal is accepted will you be able to claim the reward of the bounty. Your proposal should include time that it would take for your to complete this bounty.

There should be at most 1 week between proposal is accepted and you start working on the bounty.

Description

Light client for NEAR is relatively cheap in verifying, outside of set of ed25519 signatures of block producers.

Compressing the light block verification to just verifying of a single proof would provide a useful tool to sync blocks faster and use it in the Rainbow bridge.

Context

NEAR's light client specification is described here: https://nomicon.io/ChainSpec/LightClient.html

Acceptance Criteria

Extra:

Bounty

Name your price!

Fifiboss98 commented 2 years ago

Hello

Is the bounty still available?

garvitgoel commented 2 years ago

Hi @ilblackdragon Very cool! We are currently building the exact same thing between tendermint to Ethereum. So far we have been able to create zk-proofs for a single ed25519 sig. The next step, do it for the entire validator set, and then the complete light client. If this grant is still open, let us know, we would love to submit a proposal for Rainbow.

Interesting, before I saw this Bounty, I submitted a high-level outline for this a couple of days back on the NEAR forum - https://gov.near.org/t/rainbow-upgrade-idea-using-zk-snarks-to-cheaply-verify-ed25519-signatures-on-ethereum-mainnet/7089

garvitgoel commented 2 years ago

Progress Update: Hi @ilblackdragon We have already done the ED25519 and ECDSA signature verification implementation in a zero-knowledge circuit and verified it on EVM.

mfornet commented 2 years ago

Hi @garvitgoel, is there any way to test it with the Rainbow Bridge?

I'm curious to know what is the cost of submitting such proof on Ethereum.