Safeguard your financial privacy with zero-knowledge proofs.

Overview

Spinner

The Spinner project (https://spinner.cash) takes a privacy first approach to protect users crypto assets.

It is a layer-2 protocol built on the Internet Computer with the following features:

  • Private transactions for ICP (and soon BTC).
  • Shield: deposit public tokens to a private ledger, which records only hashes, not user address, not even the amount of tokens.
  • Unshield: withdraw shielded tokens to the public ledger, without revealing sender's identity.
  • Fully private transfers of shielded tokens.
  • Secure and verifiable deployment by construction (via LaunchTrail).
  • Private exchange between shielded tokens (coming soon).
  • Fully autonomous and owned by DAO (comming soon).

How it works

Spinner is in beta testing. It does not require any wallet or login. Simply send a small amount of ICP to the public deposit address (which is randomly generated from your browser) to start using it.

To understand how Spinner works, please check out the explainer video we prepared for the Supernova Hackathon.

For developers

You are welcome to checkout our source code and deploy locally. You will need the following tools installed before you start:

To install and compile everything:

yarn install --pure-lockfile
make -C data && make -C circuits && make -C actors

To deploy a version of Spinner locally, you have to go into the actors directory, and start dfx:

cd actors
make dfx.json && dfx start --background

Then you can deploy by installing all canisters (still in the actors directory):

make deploy MODE=install

This will download LaunchTrail, install a local copy, and use it to install everything else. Once it is done, you can continue to use the regular dfx command to make calls to canisters. But all administrative operations will have to go through LaunchTrail.

Please feel free to submit bug reports or feature requests on Github.

Unless otherwise noted, all source codes are original and released under GPLv3. Please make sure you understand the requirement and risk before using them in your own projects.

You might also like...
Diem’s mission is to build a trusted and innovative financial network that empowers people and businesses around the world.
Diem’s mission is to build a trusted and innovative financial network that empowers people and businesses around the world.

Note to readers: On December 1, 2020, the Libra Association was renamed to Diem Association. The project repos are in the process of being migrated. A

ZKP fork for rust-secp256k1, adds wrappers for range proofs, pedersen commitments, etc

rust-secp256k1 rust-secp256k1 is a wrapper around libsecp256k1, a C library by Peter Wuille for producing ECDSA signatures using the SECG curve secp25

Bulletproofs and Bulletproofs+ Rust implementation for Aggregated Range Proofs over multiple elliptic curves

Bulletproofs This library implements Bulletproofs+ and Bulletproofs aggregated range proofs with multi-exponent verification. The library supports mul

P2P Network to verify authorship & ownership, store & deliver proofs.

Anagolay Network Node Anagolay is a next-generation framework for ownerships, copyrights and digital licenses. 🚀 Local Development The installation a

The Light Protocol program verifies zkSNARK proofs to enable anonymous transactions on Solana.

Light Protocol DISCLAIMER: THIS SOFTWARE IS NOT AUDITED. Do not use in production! Tests cd ./program && cargo test-bpf deposit_should_succeed cd ./pr

Thaler's Proofs, Args, and ZK Implemented in Rust using arkworks
Thaler's Proofs, Args, and ZK Implemented in Rust using arkworks

rthaler • Dr. Thaler's book Proofs, Args, and ZK implemented in rust using the arkworks cryptographic rust toolset. Various Zero Knowledge Protocols a

Composable proof transcripts for public-coin arguments of knowledge
Composable proof transcripts for public-coin arguments of knowledge

Merlin: composable proof transcripts for public-coin arguments of knowledge Merlin is a STROBE-based transcript construction for zero-knowledge proofs

zkSync: trustless scaling and privacy engine for Ethereum

zkSync: scaling and privacy engine for Ethereum zkSync is a scaling and privacy engine for Ethereum. Its current functionality scope includes low gas

A collection of algorithms that can do join between two parties while preserving the privacy of keys on which the join happens

Private-ID Private-ID is a collection of algorithms to match records between two parties, while preserving the privacy of these records. We present tw

Owner
Spinner
Private Transactions for ICP and BTC
Spinner
RISC Zero is a zero-knowledge verifiable general computing platform based on zk-STARKs and the RISC-V microarchitecture.

RISC Zero WARNING: This software is still experimental, we do not recommend it for production use (see Security section). RISC Zero is a zero-knowledg

RISC Zero 551 Sep 18, 2022
Open-source tool to enforce privacy & security best-practices on Windows and macOS, because privacy is sexy 🍑🍆

privacy-sexy Open-source tool to enforce privacy & security best-practices on Windows and MacOs, because privacy is sexy ?? ?? privacy-sexy is a data-

Subconscious Compute 2 Sep 6, 2022
A Software Development Kit (SDK) for Zero-Knowledge Transactions

Aleo SDK The Aleo SDK is a developer framework to make it simple to create a new account, craft a transaction, and broadcast it to the network. Table

Aleo 132 Sep 20, 2022
Zerocaf: A library built for EC operations in Zero Knowledge.

Dusk-Zerocaf WARNING: WIP Repo. Fast, efficient and bulletproof-friendly cryptographic operations. This repository contains an implementation of the S

Dusk Network 49 Mar 31, 2022
Zero-Knowledge Assembly language and compiler

zkAsm A Zero-Knowledge circuit assembly language, designed to represent Zero-Knowledge circuits in a compressed format, to be stored on blockchains. I

null 1 Dec 30, 2021
OpenZKP - pure Rust implementations of Zero-Knowledge Proof systems.

OpenZKP OpenZKP - pure Rust implementations of Zero-Knowledge Proof systems. Overview Project current implements ?? the Stark protocol (see its readme

0x 491 Sep 14, 2022
Vector OLE and zero-knowledge for Z2k.

Mozzarella Benchmarking Code This repository contains the code developed for the benchmarking experiments in our paper: "Moz $\mathbb{Z}_{2^k}$ arella

null 6 Aug 29, 2022
Bitcoin Push Notification Service (BPNS) allows you to receive notifications of Bitcoin transactions of your non-custodial wallets on a provider of your choice, all while respecting your privacy

Bitcoin Push Notification Service (BPNS) Description Bitcoin Push Notification Service (BPNS) allows you to receive notifications of Bitcoin transacti

BPNS 1 May 2, 2022
Diem’s mission is to build a trusted and innovative financial network that empowers people and businesses around the world.

Note to readers: On December 1, 2020, the Libra Association was renamed to Diem Association. The project repos are in the process of being migrated. A

Diem 16.5k Sep 19, 2022
Financial maths library for risk-neutral pricing and risk

QuantMath Financial maths library for risk-neutral pricing and risk Api Documentation Goals Some quant math libraries are really just a collection of

Marcus Rainbow 301 Sep 11, 2022