summaryrefslogtreecommitdiff
path: root/e3/fa08ec4222f828decfa8adfb52070602eb7ecb
blob: e815e859d616b5e793e18239fde6712f9af780e0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
Return-Path: <belcher@riseup.net>
Received: from smtp3.osuosl.org (smtp3.osuosl.org [IPv6:2605:bc80:3010::136])
 by lists.linuxfoundation.org (Postfix) with ESMTP id 175BCC001A
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon, 28 Feb 2022 14:30:27 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by smtp3.osuosl.org (Postfix) with ESMTP id F3DF860A80
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon, 28 Feb 2022 14:30:26 +0000 (UTC)
X-Virus-Scanned: amavisd-new at osuosl.org
X-Spam-Flag: NO
X-Spam-Score: -0.901
X-Spam-Level: 
X-Spam-Status: No, score=-0.901 tagged_above=-999 required=5
 tests=[BAYES_20=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
 DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7,
 RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001,
 SPF_HELO_PASS=-0.001, SPF_PASS=-0.001]
 autolearn=ham autolearn_force=no
Authentication-Results: smtp3.osuosl.org (amavisd-new);
 dkim=pass (1024-bit key) header.d=riseup.net
Received: from smtp3.osuosl.org ([127.0.0.1])
 by localhost (smtp3.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id Fgddy5Eor9fw
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon, 28 Feb 2022 14:30:26 +0000 (UTC)
X-Greylist: domain auto-whitelisted by SQLgrey-1.8.0
Received: from mx1.riseup.net (mx1.riseup.net [198.252.153.129])
 by smtp3.osuosl.org (Postfix) with ESMTPS id 1472060A77
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon, 28 Feb 2022 14:30:25 +0000 (UTC)
Received: from fews2.riseup.net (fews2-pn.riseup.net [10.0.1.84])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256
 client-signature RSA-PSS (2048 bits) client-digest SHA256)
 (Client CN "mail.riseup.net", Issuer "R3" (not verified))
 by mx1.riseup.net (Postfix) with ESMTPS id 4K6jTY4kdPzF6y7
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon, 28 Feb 2022 06:30:25 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=riseup.net; s=squak;
 t=1646058625; bh=ZM10CMZoISKtpZrHHJ0yBuaopIWtJS5bggln69QvW90=;
 h=Date:From:To:Subject:From;
 b=O5SwOOkwAWruAV/qHEA0tqAMczB/NnUxrBGXp8529DLTomG5/QU0t/6H62YEKki8r
 DiWXivc0x6rAK4a+IDrcPvSrrEJi4xbE811u1/xEbCdrrBSaqkR0oU81dnZlzTgndL
 80/q9MLzuIPiAhD/eP91xSN3CV+yhgle1VQlVo2o=
X-Riseup-User-ID: D99120524E0D9A719ACAAC9FCB00A96253DCB6FCD3BFDF99EEAA749F5704DA09
Received: from [127.0.0.1] (localhost [127.0.0.1])
 by fews2.riseup.net (Postfix) with ESMTPSA id 4K6jTY1xTNz1yQd
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon, 28 Feb 2022 06:30:25 -0800 (PST)
Message-ID: <94ca5cfd-48b1-4bac-3071-47ae98ed496b@riseup.net>
Date: Mon, 28 Feb 2022 14:30:12 +0000
MIME-Version: 1.0
Content-Language: en-US
From: Chris Belcher <belcher@riseup.net>
To: bitcoin-dev@lists.linuxfoundation.org
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Subject: [bitcoin-dev] Teleport: a CoinSwap implementation alpha release,
 provides invisible private transactions
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org>
List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>, 
 <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>, 
 <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
X-List-Received-Date: Mon, 28 Feb 2022 14:30:27 -0000

Imagine a future where a user Alice has bitcoins and wants to send them 
with maximal privacy, so she creates a special kind of transaction. For 
anyone looking at the blockchain her transaction appears completely 
normal with her coins seemingly going from address A to address B. But 
in reality her coins end up in address Z which is entirely unconnected 
to either A or B.

Now imagine another user, Carol, who isn't too bothered by privacy and 
sends her bitcoin using a regular wallet which exists today. But because 
Carol's transaction looks exactly the same as Alice's, anybody analyzing 
the blockchain must now deal with the possibility that Carol's 
transaction actually sent her coins to a totally unconnected address. So 
Carol's privacy is improved even though she didn't change her behavior, 
and perhaps had never even heard of this software.

In a world where advertisers, social media and other institutions want 
to collect all of Alice's and Carol's data, such privacy improvement 
would be incredibly valuable. If even a small percentage of transactions 
were actually created by this software, anybody doing analysis on the 
blockchain would always have a niggle in the back of their mind: "what 
if this transaction I'm looking at was actually a CoinSwap? How would I 
know? What if these coins have actually disappeared into the mist?". The 
doubt and uncertainty added to every transaction would greatly boost the 
fungibility of bitcoin and so make it a better form of money.

Over a year ago I wrote to this list[1] about how undetectable privacy 
can be developed today by implementing CoinSwap. Today I release the 
first alpha version of this software:

https://github.com/bitcoin-teleport/teleport-transactions/

The project is almost completely decentralized and available for all to 
use for free (baring things like miner fees). So far it is only really 
usable by developers and power-users to play around with. It doesnt have 
all the necessary features yet, but from now on I'll be doing new 
releases very often as soon as every new feature gets added. It is 
possible to run it on mainnet, but only the brave will attempt that, and 
only with small amounts. I've personally made many coinswaps on the 
testnet and signet networks, and I'll be running market makers on signet 
which will be available for anyone to create coinswaps with.

Right now it just uses 2of2 multisig for the coinswap addresses. Those 
address types are rare on the blockchain so the coinswaps stand out a 
fair amount (although protocols like lightning also use 2of2 multisig). 
However the next really big task on my todo list is to use ECDSA-2p 
which would make these multisig addresses look like regular single-sig 
addresses, which are overwhelmingly common out there and so provide an 
enormous anonymity set.

My aim is that the Teleport project will develop into a practical and 
secure project on the bitcoin mainnet, usable either standalone as a 
kind of bitcoin mixing app, or as a library that existing wallets will 
implement allowing their users with the touch of a button to send 
bitcoin coinswap transactions with much greater privacy than as possible 
before.

I want to thank everyone who has supported me financially over the last 
several months, without them this project simply would not have been
possible. If bitcoin privacy and coinswap is something you find 
important, please consider supporting my work with a donation: 
https://bitcoinprivacy.me/coinswap-donations


[1] 
https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2020-May/017898.html