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
|