Noir Pay - Fork of the Light Protocol Program for local testing / optimisation.

Related tags

Utilities noir-pay
Overview

Noir Pay v0

Built on Light Protocol

Noir Pay will be directly built ontop of the Light Protocol SDK and provide users with a beautifully simple private payments solution via our frontend. Have you ever thought about privately paying via Solana Pay. This repo represents a fork of the light protocol program which is built as a single unfractured shielded pool for SPL tokens. This purpose of this fork is to work on local optimisations and bug testing as contribution towards the Light Protocol SDK.

DISCLAIMER: THIS SOFTWARE IS NOT AUDITED. Do not use in production!

Testing the Program

First clone the repo locally.

git clone https://github.com/Lightprotocol/light-protocol-program.git

Then run these commands in order, it is important that you run the tests one after the other as this is how the functional flow of zk-PROOFs work. You cannot withdraw funds that no proof was ever generated for.

cd ./program && cargo test-bpf deposit_should_succeed
./program && cargo test-bpf withdrawal_should_succeed

Please note this will only currently work on Linux/Mac OSX environment's due to the need for the Solana Rust BPF Toolchain. - I have tested it from within WSL2 and it works there also.

Light Protocol Description

The Light Protocol program verifies zkSNARK (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) Proofs to enable anonymous transactions on Solana.

Zero-knowledge proofs verify that the owner of recipient address B has deposited tokens to a shielded pool (similar to Zcash) from another address A before. Light Protocol is trustless: the zero-knowledge proof includes meta data such as the recipient address. If this data is tampered with the zero-knowledge proof becomes invalid and the withdrawal fails.

If you like to directly contact Light Protocol you can do so via their Twitter

888 Anon Club Bounty

Bounty currently @ 88 SOL [$10,500] At time of writing.

If you are a keen web3 developer and would love to build a beautiful frontend for 'Noir Pay' with integration into Solana Pay - then lets do that today! To claim / start working on this bounty please reach out to sleepdev#6905 on discord or alternatively @0xnicoj on twitter.

You might also like...
Parses COVID-19 testing data from DC government ArcGIS APIs

covid-dc Parses COVID-19 testing data from DC government ArcGIS APIs Example debug output from cargo run RapidSite { attributes: RapidSiteAttribut

Functional testing framework for AVR binaries, powered by simavr.

Functional testing framework for AVR binaries, powered by simavr. tl;dr get your microcontroller's firmware black-box-tested in seconds!

Bolt is a desktop application that is designed to make the process of developing and testing APIs easier and more efficient.

Bolt ⚡ Bolt is a desktop application that is designed to make the process of developing and testing APIs easier and more efficient. Quick start 👩‍💻

Waits until the exit code of a program is zero

Waitz A rust utility to wait that a program exits with 0. You need to wait for something to start up and don't know when it finishes?

A program written in pure Rust to query music info from mpd and display it in a notification.
A program written in pure Rust to query music info from mpd and display it in a notification.

musinfo A program written in pure Rust to query music info from mpd and display it in a notification. Note: Cover art is expected to be placed at /tmp

Wait Service is a pure rust program to test and wait on the availability of a service.

Wait Service Wait Service is a pure rust program to test and wait on the availability of a service.

A program written in Rust, that allows the user to find the current location of the International Space Station and see it on a map.

ISS Location ViewFinder A program written in Rust, that allows the user to find the current location of the International Space Station and see it on

✨ Safe, global singletons initialized at program start

✨ magic_static Safe, global singletons initialized at program start. Usage Simply add magic_static as a dependency in your Cargo.toml to get started:

Soufflé is a variant of Datalog for tool designers crafting analyses in Horn clauses. Soufflé synthesizes a native parallel C++ program from a logic specification.

Welcome! This is the official repository for the Soufflé language project. The Soufflé language is similar to Datalog (but has terms known as records)

Owner
0xNico
i have zero-knowledge
0xNico
A fork of yew-router

Yew Router (fork) This is fork of version 0.15 of the yew-router. Motivation The main motivation behind the fork is the lack of nested router support

Jens Reimann 2 Jan 4, 2022
Rust Shop is a fake cloud-based software company that you can fork.

RustShop RustShop is an attempt at building a template and utilities to help quickly set up and manage a production grade cloud-based system. The core

null 56 Dec 17, 2022
A fork of 'discord-token-botter' for rust lang.

Shahzain Botter V3(Rust) - If you were sold this tool, you have been scammed, this tool is free & open source Please DO NOT pay money for this tool A

Shahzain 5 Nov 7, 2022
Alternative StreamMap fork of tokio-stream

streammap-ext This is a fork of StreamMap from tokio-stream crate. The only difference between the implementations is that this version of StreamMap n

MetalBear 5 Aug 18, 2022
Docgen - a fork of Doctave intending to continue the development.

Docgen Docgen is a fork of Doctave intending to continue the development. All credit goes to the original Docgen authors. Docgen is an opinionated doc

Abdullah Atta 3 Oct 22, 2022
fork of erupt-bootstrap for ash

ash-bootstrap Vulkan Bootstrapping library for Rust, inspired by vk-bootstrap. ✅ Instance creation ✅ Physical Device selection ✅ Device creation ✅ Get

Brandon Pollack 4 Dec 22, 2022
Rust SDK wrapper for the Mystic Light SDK

mystic_light_sdk Rust SDK wrapper for the Mystic Light SDK Requirements Any MSI device with RGB support Only Windows 7+ Dragon Center or Msi Center in

null 4 May 3, 2022
A convenient tracing config and init lib, with symlinking and local timezone.

clia-tracing-config A convenient tracing config and init lib, with symlinking and local timezone. Use these formats default, and can be configured: pr

Cris Liao 5 Jan 3, 2023
📮 load, write, and copy remote and local assets

axoasset This library offers read, write, and copy functions, for local and remote assets given a string that contains a relative or absolute local pa

axo 7 Jan 25, 2023
Mobile safari / webview remote debugging and e2e testing libraries

Canter (WIP) (WIP) Mobile safari / webview remote debugging and e2e testing libraries. Developed for safari/webview e2e testing on iPhone. Works only

Han Lee 9 Aug 16, 2022