This repo contains the Proof of Concept implementation used in the paper, as well as a reference implementation for the protocols in python3. These implementations are intended only to describe and prototype TumbleBit the protocols. They should not be deployed in production.
nTumbleBit is being developed for production use and is the official opensource implementation of TumbleBit.
Description: TumbleBit is a new anonymous payments protocol that is fully compatible with today’s Bitcoin protocol. TumbleBit allows parties to make payments through an untrusted Tumbler. No-one, not even the Tumbler, can tell which payer paid which payee during a TumbleBit epoch. TumbleBit consists of two interleaved fair-exchange protocols that prevent theft of bitcoins by cheating users or a malicious Tumbler. TumbleBit combines fast cryptographic computations (performed off the blockchain) with standard bitcoin scripting functionalities (on the blockchain) that realize smart contracts. TumbleBit was used to mix 800 input addresses to 800 output addresses on Bitcoin's blockchain.