project screenshot 1
project screenshot 2
project screenshot 3

Noir Secret Sharing

Verifiable secret sharing amongst various clients. The ZKP that accompanies the share proves the share is valid.

Noir Secret Sharing

Created At

Circuit Breaker

Winner of

Aztec - Best Noir App 2nd place

Project Description

The idea is to let client generate secrets, make shares and share them amongst each other. Along with the shares commitments are generated as well as a Noir proof that confirms the shares is valids by checking out the shares wrt the commitments. Both the share and the proof is sent to the other client. The proof can be checked on the other side to make sure the share is valid.

The idea is that this is a starting point to build more thing upon. For example it can be a building block for adkg (asynchronous distributed keygeneration). And the proof only has to be generated once and then can be checked multiple times, instead of every client having to do the computation of the verification of the commitments.

How it's Made

It has a verification part in Noir, and clients in Javascript that use NoirJS.

I used the "Tiny Noir app" as a starting point. Then added communication between clients, as sort of a chat service between them. It uses a library from zk-kit to generate the shares and comitments in baby jubjub (this was difficult to figure out).

The hacky part is the communication between the clients for sure! This is not production ready haha.

background image mobile

Join the mailing list

Get the latest news and updates