diff options
author | ZmnSCPxj <ZmnSCPxj@protonmail.com> | 2020-06-10 10:58:03 +0000 |
---|---|---|
committer | bitcoindev <bitcoindev@gnusha.org> | 2020-06-10 10:58:12 +0000 |
commit | d5394b6be0888b82d15604cd67c28e8dbbfc3754 (patch) | |
tree | 2477c8bf4c1d43c215358c880ef92ee863913e31 | |
parent | 32c583503574f4d521cafb728fb41dfcf5a3d8bb (diff) | |
download | pi-bitcoindev-d5394b6be0888b82d15604cd67c28e8dbbfc3754.tar.gz pi-bitcoindev-d5394b6be0888b82d15604cd67c28e8dbbfc3754.zip |
Re: [bitcoin-dev] Design for a CoinSwap implementation for massively improving Bitcoin privacy and fungibility
-rw-r--r-- | b1/c21192fdefec87767721be479ecf85369d5c2b | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/b1/c21192fdefec87767721be479ecf85369d5c2b b/b1/c21192fdefec87767721be479ecf85369d5c2b new file mode 100644 index 000000000..8c70883cc --- /dev/null +++ b/b1/c21192fdefec87767721be479ecf85369d5c2b @@ -0,0 +1,129 @@ +Return-Path: <ZmnSCPxj@protonmail.com> +Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) + by lists.linuxfoundation.org (Postfix) with ESMTP id B3CEFC016F + for <bitcoin-dev@lists.linuxfoundation.org>; + Wed, 10 Jun 2020 10:58:12 +0000 (UTC) +Received: from localhost (localhost [127.0.0.1]) + by whitealder.osuosl.org (Postfix) with ESMTP id AF9E188227 + for <bitcoin-dev@lists.linuxfoundation.org>; + Wed, 10 Jun 2020 10:58:12 +0000 (UTC) +X-Virus-Scanned: amavisd-new at osuosl.org +Received: from whitealder.osuosl.org ([127.0.0.1]) + by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) + with ESMTP id CLPh4KnjQl0l + for <bitcoin-dev@lists.linuxfoundation.org>; + Wed, 10 Jun 2020 10:58:10 +0000 (UTC) +X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 +Received: from mail-40130.protonmail.ch (mail-40130.protonmail.ch + [185.70.40.130]) + by whitealder.osuosl.org (Postfix) with ESMTPS id 8FE8F88220 + for <bitcoin-dev@lists.linuxfoundation.org>; + Wed, 10 Jun 2020 10:58:10 +0000 (UTC) +Date: Wed, 10 Jun 2020 10:58:03 +0000 +DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; + s=protonmail; t=1591786688; + bh=9ankB9fXa1jpe+wYlDQZWIeYS9cw7tr7FYYIKjDrCGU=; + h=Date:To:From:Cc:Reply-To:Subject:In-Reply-To:References:From; + b=toqP2wHTPm3X2Wnc37ZAKDXCh2nvxSTQ4DzWC2HlxBXU1TW/WBQNtbanO8zNfW2MY + fAhsMvtgrYEvEKO/ITAQXDLEekWDKjuduV7zCsDqqFKAZuIv8NraTA13tmKf+DsVXP + m7S9QUhy/NxwnmhR54X6ewPlC5QO8IpnL1kyQpi4= +To: Chris Belcher <belcher@riseup.net> +From: ZmnSCPxj <ZmnSCPxj@protonmail.com> +Reply-To: ZmnSCPxj <ZmnSCPxj@protonmail.com> +Message-ID: <NWnynWUGBlIOhDRYr50kwUc1NK_h-I5tM5q1rjONrC5DTBPFlzYSr1DbmaE4jZOkFB1FtToeZfE2CegIDVJ_6NMezvzcQJ7U3DXFs4yFv0c=@protonmail.com> +In-Reply-To: <27f05cf1-08b2-a281-75b7-5c035317d030@riseup.net> +References: <82d90d57-ad07-fc7d-4aca-2b227ac2068d@riseup.net> + <CAPv7TjY9h8n-nK_CPiYCWYDcbXpT1gfRMQDgf9VUkcR532rxOw@mail.gmail.com> + <VxL93WE7bDrK1riquTWTTEgJj9mDQ4W5CuhOgdnnDPeidw2ho6evVh4cLZLz0jEYMqejaD1tiLULVTXkNRbI5A7wSwV49qSwnXcTWCDJ96E=@protonmail.com> + <cbf78f63-cf8c-c5d8-06ea-afc79aabc23c@riseup.net> + <5LiZqpFxklAAbGFiiAE3ijRbIteODXKcHrXvGJ-qabgQj5hG8beFtHNbVZ-XUxETVwduJYz94UYuJGAPxBrbGeZpSClUtXYsPJBABfr03KM=@protonmail.com> + <e724b4c5-9efd-66c4-163b-492f17cafd7d@riseup.net> + <Sy14DpcFGdAYL95d7e6tfkOe87oY53tJReo9CYvPT5J3Gb85AqedMheq1NbfVKUXZtZrwZqwVV4wSztikgWBAgNfTh8J5h5gXC6HDMxvsNg=@protonmail.com> + <27f05cf1-08b2-a281-75b7-5c035317d030@riseup.net> +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf-8 +Content-Transfer-Encoding: quoted-printable +Cc: Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org> +Subject: Re: [bitcoin-dev] Design for a CoinSwap implementation for + massively improving Bitcoin privacy and fungibility +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: Wed, 10 Jun 2020 10:58:12 -0000 + +Good morning Chris, + +> > Let me propose an alternative: swap-on-receive+swap-on-change. +> +> That's an interesting point, thanks for the thought. This scheme might +> not be appropriate for every threat model and use case. +> For example, if someone wants to use bitcoin just as a foreign currency +> for its privacy and censorship-resistant properties. So for example if +> they want to pay for a VPN anonymously, so they buy bitcoins and +> immediately send all of them to the VPN merchant. The swap-on-receive +> wouldn't be appropriate for them because they'll be doing a coinswap +> straight away to the VPN merchant. So perhaps this plan could be an +> optional mode of operation (which may or may not be the default). The +> scheme obviously is useful when bitcoin is being used more as a +> day-to-day money. + + +No, I think you misunderstand my proposal. + +If the user is doing swap-on-receive, the user already has an anonymous UTX= +O, they can just transfer it directly in full to the VPN without using a Co= +inSwap. + +The number of CoinSwaps involved is the same: one. + +So the difference is: + +* swap-on-receive: + * I get some coins from an exchange, giving them my contact information a= +nd bank information and all the places I have ever inhabited in my entire e= +xistence and an unfertilized egg sample and an archive of my diary and let = +them invasively scan my cognitive substrate. + * I send the coins to my CoinSwap wallet. + * The CoinSwap wallet automaticaly CoinSwaps the coins into a new UTXO. + * One CoinSwap. + * I tell the CoinSwap wallet to send it all to the VPN. + * My CoinSwap wallet knows my coins are already cleaned, so it creates = +a plain 1-input 1-output transaction directly to the VPN address. + +* swap-on-pay: + * I get some coins from an exchange, giving them my contact information a= +nd bank information and all the places I have ever inhabited in my entire e= +xistence and an unfertilized egg sample and an archive of my diary and let = +them invasively scan my cognitive substrate. + * I send the coins to my CoinSwap wallet. + * I tell the CoinSwap wallet to send it all to the VPN. + * My CoinSwap wallet automatically arranges a CoinSwap into the VPN add= +ress. + * One CoinSwap. + +So in both cases the same expected number of CoinSwaps is done, i.e. one. + +Note that there are still details like how much onchain fees are and how mu= +ch CoinSwap maker fees are and etc etc but they exist for both flows anyway= +. +So I would still be buying slightly more than my target amount, and if ther= +e is any change I could just designate it to be added to the mining fees or= + a donation to ZmnSCPxj, because ZmnSCPxj is so awesome. + +What swap-on-receive+swap-on-change instead does is just amortize the timin= +g of the CoinSwaps, so that you CoinSwap as soon as you receive, instead of= + as soon as you have to pay, so that sending payments is as fast as non-Coi= +nSwap onchain wallets. + + +Regards, +ZmnSCPxj + |