diff options
author | Ben Carman <benthecarman@live.com> | 2023-05-22 22:51:49 +0000 |
---|---|---|
committer | bitcoindev <bitcoindev@gnusha.org> | 2023-05-22 22:51:53 +0000 |
commit | 7f9c08bf892bf73da37534bc9b7166d9d317dfdc (patch) | |
tree | 4e03c29bba329a65a08aad21dc05cd8af1bdea7c | |
parent | bc04740835b2155de464dfe710d398588ed40dae (diff) | |
download | pi-bitcoindev-7f9c08bf892bf73da37534bc9b7166d9d317dfdc.tar.gz pi-bitcoindev-7f9c08bf892bf73da37534bc9b7166d9d317dfdc.zip |
Re: [bitcoin-dev] Coinjoin with less steps using ALL|ANYONECANPAY
-rw-r--r-- | 3d/1e50fa42c6b5eff47514124cc77e37f7199366 | 335 |
1 files changed, 335 insertions, 0 deletions
diff --git a/3d/1e50fa42c6b5eff47514124cc77e37f7199366 b/3d/1e50fa42c6b5eff47514124cc77e37f7199366 new file mode 100644 index 000000000..7cb325ade --- /dev/null +++ b/3d/1e50fa42c6b5eff47514124cc77e37f7199366 @@ -0,0 +1,335 @@ +Return-Path: <benthecarman@live.com> +Received: from smtp2.osuosl.org (smtp2.osuosl.org [IPv6:2605:bc80:3010::133]) + by lists.linuxfoundation.org (Postfix) with ESMTP id 6E72BC002A + for <bitcoin-dev@lists.linuxfoundation.org>; + Mon, 22 May 2023 22:51:53 +0000 (UTC) +Received: from localhost (localhost [127.0.0.1]) + by smtp2.osuosl.org (Postfix) with ESMTP id 340CA40395 + for <bitcoin-dev@lists.linuxfoundation.org>; + Mon, 22 May 2023 22:51:53 +0000 (UTC) +DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org 340CA40395 +Authentication-Results: smtp2.osuosl.org; dkim=pass (2048-bit key, + unprotected) header.d=live.com header.i=@live.com header.a=rsa-sha256 + header.s=selector1 header.b=gQjJkTbK +X-Virus-Scanned: amavisd-new at osuosl.org +X-Spam-Flag: NO +X-Spam-Score: -0.101 +X-Spam-Level: +X-Spam-Status: No, score=-0.101 tagged_above=-999 required=5 + tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, + DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, + HTML_MESSAGE=0.001, PDS_OTHER_BAD_TLD=1.999, SPF_HELO_PASS=-0.001, + SPF_PASS=-0.001] autolearn=no autolearn_force=no +Received: from smtp2.osuosl.org ([127.0.0.1]) + by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) + with ESMTP id FJ0FtOusU8ZQ + for <bitcoin-dev@lists.linuxfoundation.org>; + Mon, 22 May 2023 22:51:52 +0000 (UTC) +X-Greylist: whitelisted by SQLgrey-1.8.0 +DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org 0C39740144 +Received: from NAM12-MW2-obe.outbound.protection.outlook.com + (mail-mw2nam12acsn20806.outbound.protection.outlook.com + [IPv6:2a01:111:f400:fe5a::806]) + by smtp2.osuosl.org (Postfix) with ESMTPS id 0C39740144 + for <bitcoin-dev@lists.linuxfoundation.org>; + Mon, 22 May 2023 22:51:51 +0000 (UTC) +ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; + b=kkUSfumxT5lMIsPqNpdpe4abvH7k3VhlI4FNpCL2aniWj3HIdsiCPQmsVx6o3BqSLvK5rQ040YZ15EWa/zYltDxQodFQt2uTur5ZjK+HhGfmLZO+ryZAlJU7JxVSF/OnK3HFo5ZVN7Zdj5ucFmO8127U/LxRyNCeF0ZzWtWDLeHVjG9WhrVp6twaVZM69xO6I+PeRiqq5hfASRmd3I6vRSFOTqdMQBCwjZ5UFozOwdNa78zvfdvt7S4C0rDnDYYPtYV9w8bC2ua2F9BgNXpQ+B/UXC4QEak1YY7xbndT0C9rYUV9PTeiBjYJlqTF2ESJ9choWn4wFvhbeXKLyo4TLw== +ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; + s=arcselector9901; + h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; + bh=I+xOqUSN3slmvlkc0zv8FAoW0k608ozBoqGzI/A2yvk=; + b=G/1xzb7IE8nt/e2VOqhZCRSYBDpmtIHC6L8h9Ua6e7cLSyJLamB+RxOlUVC/aE69BrPGSfauZOoh9yw1ep2plpdbh/DI3N2wd6mP+qBc6kUtccAOTtGsKJ4+t2FhEbCNiJqd7c4vRwmzIiA46qVZYg2utCYPU/QA6LNJ2+3nxkD7UvlWstb4dlhhBsX1ZB5buMqtUolB8kba9q5Aqd6T/eCICfNT+M2JqOskNYqw3kzXB8RE0o3kCBgOTTHBcxSyq/gI2nsNh21T/70jl0kLhtW5l8rbH8Poc2eob6WYqmLevkmQ11UDM45UCWI+TbviX5ygMT3C7c7gROolTtqNQQ== +ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; + dkim=none; arc=none +DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=live.com; s=selector1; + h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; + bh=I+xOqUSN3slmvlkc0zv8FAoW0k608ozBoqGzI/A2yvk=; + b=gQjJkTbKcD4crbrjdpIQn0OhlOejqnkjNzVdndS9Afb+sVdP1tSW5ep7De3xFaoWYU9znqhiiSDB5WPnH+wOGhezPX1Crb7b5VOftD5IEPkT3LnRyzI9uL1o2EYZzNyQ03KrGa32dZLWbpME1bntBT3xRVTnMdq8UnYme81lEXm3IJGuuZFqAmqHba3deC8UrUzSFE4P2+bEtVvBCzlHesF6b7yETqKDRcj6P0qvEplk8kwVY2cAlNHeej3H7GIm6YQCac9l5raXWmfbg5A2tCGT2g6tn2eh1CBZZXGDlfBTVZLZWMXrqmRcFFm4aZAWKXLFopqFXdN7DokG0f/i1w== +Received: from SJ1P223MB0531.NAMP223.PROD.OUTLOOK.COM (2603:10b6:a03:45a::15) + by PH7P223MB0550.NAMP223.PROD.OUTLOOK.COM (2603:10b6:510:1b1::6) with + Microsoft SMTP Server (version=TLS1_2, + cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6411.28; Mon, 22 May + 2023 22:51:49 +0000 +Received: from SJ1P223MB0531.NAMP223.PROD.OUTLOOK.COM + ([fe80::ffdd:1c42:3f26:f37]) by SJ1P223MB0531.NAMP223.PROD.OUTLOOK.COM + ([fe80::ffdd:1c42:3f26:f37%7]) with mapi id 15.20.6411.028; Mon, 22 May 2023 + 22:51:49 +0000 +From: Ben Carman <benthecarman@live.com> +To: alicexbt <alicexbt@protonmail.com>, Bitcoin Protocol Discussion + <bitcoin-dev@lists.linuxfoundation.org> +Thread-Topic: [bitcoin-dev] Coinjoin with less steps using ALL|ANYONECANPAY +Thread-Index: AQHZjPp53ZE/04cEQkaHZbfUzW/g2a9m4xE3 +Date: Mon, 22 May 2023 22:51:49 +0000 +Message-ID: <SJ1P223MB0531D7D62140F0516A25897AA1439@SJ1P223MB0531.NAMP223.PROD.OUTLOOK.COM> +References: <EWAXAmgFlZ8XQJOYO8VTH7Zj0tTAftwy-ylaGvf3Giealz1FFb97CbcxjP0q-Zu85XoAzOG0ivdYIKa_kG77ooHqBvCP7YOZOkb6yHmX75s=@protonmail.com> +In-Reply-To: <EWAXAmgFlZ8XQJOYO8VTH7Zj0tTAftwy-ylaGvf3Giealz1FFb97CbcxjP0q-Zu85XoAzOG0ivdYIKa_kG77ooHqBvCP7YOZOkb6yHmX75s=@protonmail.com> +Accept-Language: en-US +Content-Language: en-US +X-MS-Has-Attach: +X-MS-TNEF-Correlator: +msip_labels: +x-ms-exchange-messagesentrepresentingtype: 1 +x-tmn: [Zrb+KowVenXri4xP1jlA6rhIDJtvILGs/WUW3ghL7ks=] +x-ms-publictraffictype: Email +x-ms-traffictypediagnostic: SJ1P223MB0531:EE_|PH7P223MB0550:EE_ +x-ms-office365-filtering-correlation-id: c3341e10-8820-4411-bc16-08db5b1720fc +x-microsoft-antispam: BCL:0; +x-microsoft-antispam-message-info: TPPYa9RMO047t/6e/XEq1oGBdWP8LKdVysRtMUYVE5yl8Oa/MlhUYwahjMcak5kHVmAnEV9GcSlRa3a+jftWGS8QQPT1FTybo9z9gArOoKx6leKui6GpunKSOrgKW96NJjdESGJhC2fPQdKfCR2oWXvIhmnnp6MnNwCGa0MXuhr1ZY5RSbFMLseILTunPFjxOgrZ7tlt7Bpzsfr53wGkRdI5vzQJ086VOlKv9vleMNHUGVs8s+hp0iQr6dj8yirWpPS4EOFe6aXC8b61ydWIfh72YjQeRsaO53L3X6JTRP7ayRvsr/Mt2v6SUv/JrjqQ0DX4XiE7Aoo3wJem/wcMr3jDVJ0qDmIAQoQNRYLq6J5/nFD1EhqNNsE95EkOKffGpit2Bt/7+k6w5IFElY9ZWkCpS2+jEq5TF+hxdh7wrykxJ5Bg6o0I2/tVXVZif8JT6r9OckJI7ibuiPk6qQL1u3SuxqrQL8u6CQElWsxn6ETF2bWs4R2tKfR2wFrEaHA1gmEe7i6TnpKr04QPDZZnNVYrck1i7DCsCE4RsR6ADKvEtPMe4F99Jk314iqFDr0e0qirzAIZp+WQPbqsH5Q4Ftt5Ivty+ol+HuPq3NNwMBIAp1sFLhloWOQy0AmbD+IH +x-ms-exchange-antispam-messagedata-chunkcount: 1 +x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?+Fq8wiCSgyN4KZM7Dxcu4ykAfCt3BJlYxFBPSSBysOTMi5p4jMssfVX8ce?= + =?iso-8859-1?Q?0JsQRCar6Z/dziaCkNUtojLCelKBbUyum9dPtxXdlbuquMukEdgmuUoQdc?= + =?iso-8859-1?Q?FekjLUk67chWoxQBhRH/EdXg1RLdizb+EFupEjJx+P5UTsyDujnisjmXjR?= + =?iso-8859-1?Q?sHLezVoiaGYIqcnJshEevn53QdWVcEDt2H/laEN4SMAnTdRu/ALbBvgXjc?= + =?iso-8859-1?Q?QQvVvODupNJdQ8O74q9Q6YwisR3nTto10f9iNiX4W08PI408M0i0oDD6ap?= + =?iso-8859-1?Q?l8SN+bPKeT5H2gSD5f52IcVIVHxhquXBZZ+HBPuvCVv5exh1EouWtKWgJQ?= + =?iso-8859-1?Q?K+YL4fgIpc9e6GgN9hwGFA+5iE5uD4lRH1HEkxLRcLScR26eP2s3TKJFXU?= + =?iso-8859-1?Q?6FmAcC44PcJ1kzqYp1ALzrUq7ggG04oAT5Bo7A/E/imXQJU4TxXYVVP8ZJ?= + =?iso-8859-1?Q?6wCQpOh+wSGXkt6jtOkKT9U8Fbxj0edfixor25Ij+IyGZL/13mW6ZeJQZb?= + =?iso-8859-1?Q?eCS6dugr7jp02ATzGnPQX0gqxew5U74u1uBZJHYiNo1G2zPMUTNYI9j5rO?= + =?iso-8859-1?Q?V7HpQZOraXo+mKkbWyeIstw5xufevdi/bh4eDSqR00YUDDM/QBUGz00naD?= + =?iso-8859-1?Q?94+2MaCfOT5FDzs1y0Mqlu1upbeGhYm1YtfaLUofrHkSy3NEzaeX6dpxpS?= + =?iso-8859-1?Q?AnOZLoC14tDSn+7gh+mPZJqNRj5WgobY1YKXNS40bq138Gs/PM8Ck3LMh8?= + =?iso-8859-1?Q?QKdcE6zVNJdTMjF7gWBNAMOWb4LvKCuwdv62iMZ4BP69JrzCvNbfDbQhhL?= + =?iso-8859-1?Q?4Gxz3cKki4br22irUD5uWhzlB9hvUnHyEBH0zHW/YKswkzyGPH82g/uzLE?= + =?iso-8859-1?Q?enWNLVcUeIB/RToju/HuVhYx9HXrHF5zlNhudHS24X8DUKWnOoMdPz9FJt?= + =?iso-8859-1?Q?6mxb9ujZqaoSJKehrsPBkuDvLWLOw74TI2Owo051ed5PaYiTHT71sInCDe?= + =?iso-8859-1?Q?1l57QfB9kJJStbtANCcvsyB2GghBfbCLLWKicC5nmKr7Pqmyl8ooU0SNsc?= + =?iso-8859-1?Q?LEoK5EuGqcBsWOIlb78zvPrv0VpyqLRj3rDuXUkVlVywMNv0u+rL+KiyUZ?= + =?iso-8859-1?Q?3t2XYuSF3eoDwdc5wVSoF1pbYNtRKI51DV8S+4fmovZ7MZvuPxwuO1OHWj?= + =?iso-8859-1?Q?wulfhCdnovPgY4AAXtqRA6qajdh9ikQW5n8wbHeRZ6u+3ovM65dlh7h9jP?= + =?iso-8859-1?Q?7kftupQR4hWOtipzkpWA=3D=3D?= +Content-Type: multipart/alternative; + boundary="_000_SJ1P223MB0531D7D62140F0516A25897AA1439SJ1P223MB0531NAMP_" +MIME-Version: 1.0 +X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-1ff67.templateTenant +X-MS-Exchange-CrossTenant-AuthAs: Internal +X-MS-Exchange-CrossTenant-AuthSource: SJ1P223MB0531.NAMP223.PROD.OUTLOOK.COM +X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 +X-MS-Exchange-CrossTenant-Network-Message-Id: c3341e10-8820-4411-bc16-08db5b1720fc +X-MS-Exchange-CrossTenant-originalarrivaltime: 22 May 2023 22:51:49.8528 (UTC) +X-MS-Exchange-CrossTenant-fromentityheader: Hosted +X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa +X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 +X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH7P223MB0550 +X-Mailman-Approved-At: Mon, 22 May 2023 22:53:07 +0000 +Subject: Re: [bitcoin-dev] Coinjoin with less steps using ALL|ANYONECANPAY +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, 22 May 2023 22:51:53 -0000 + +--_000_SJ1P223MB0531D7D62140F0516A25897AA1439SJ1P223MB0531NAMP_ +Content-Type: text/plain; charset="iso-8859-1" +Content-Transfer-Encoding: quoted-printable + +The problem with using ALL|ANYONECANPAY is that you cannot verify beforehan= +d that the other inputs are the inputs you want added to the transaction. + +Some examples of bad things that could happen: + + + * Coordinator adds its own inputs, you still get your outputs but effec= +tively paid fees for no privacy gain + * The inputs added could be paying at a lower fee rate than expected, c= +ausing the tx to take longer than what you paid for + * Different input types or amount are added so you no longer have the s= +ame uniformity across the inputs + * (if you care) An input from a sanctioned address is added, causing yo= +u to get "tainted" coins. + +This is the code in ln-vortex that verifies the psbt on the client side if = +you are curious + +https://github.com/ln-vortex/ln-vortex/blob/master/client/src/main/scala/co= +m/lnvortex/client/VortexClient.scala#L616 + + +Best, + +benthecarman + +________________________________ +From: bitcoin-dev <bitcoin-dev-bounces@lists.linuxfoundation.org> on behalf= + of alicexbt via bitcoin-dev <bitcoin-dev@lists.linuxfoundation.org> +Sent: Monday, May 22, 2023 7:51 AM +To: Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org> +Subject: [bitcoin-dev] Coinjoin with less steps using ALL|ANYONECANPAY + +Hi Bitcoin Developers, + +I recently experimented with different sighash flags, PSBTs and realized AL= +L|ANYONECANPAY could be used to reduce some steps in coinjoin. + +Steps: + +- Register outputs. +- One user creates a signed PSBT with 1 input, all registered outputs and A= +LL|ANYONECANPAY sighash flag. Other participants keep adding their inputs t= +o PSBT. +- Finalize and broadcast the transaction. + +Proof of Concept (Aice and Bob): https://gitlab.com/-/snippets/2542297 + +Tx: https://mempool.space/testnet/tx/c6dd626591dca7e25bbd516f01b23171eb0f2b= +623471fcf8e073c87c1179c492 + +I plan to use this in joinstr if there are no major drawbacks and it can ev= +en be implemented by other coinjoin implementations. + +/dev/fd0 +floppy disk guy + +Sent with Proton Mail secure email. +_______________________________________________ +bitcoin-dev mailing list +bitcoin-dev@lists.linuxfoundation.org +https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev + +--_000_SJ1P223MB0531D7D62140F0516A25897AA1439SJ1P223MB0531NAMP_ +Content-Type: text/html; charset="iso-8859-1" +Content-Transfer-Encoding: quoted-printable + +<html> +<head> +<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Diso-8859-= +1"> +<style type=3D"text/css" style=3D"display:none;"> P {margin-top:0;margin-bo= +ttom:0;} </style> +</head> +<body dir=3D"ltr"> +<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;= + color: rgb(0, 0, 0);" class=3D"elementToProof ContentPasted0"> +The problem with using ALL|ANYONECANPAY is that you cannot verify beforehan= +d that the other inputs are the inputs you want added to the transaction.</= +div> +<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;= + color: rgb(0, 0, 0);" class=3D"elementToProof ContentPasted0"> +<br> +</div> +<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;= + color: rgb(0, 0, 0);" class=3D"elementToProof ContentPasted0"> +Some examples of bad things that could happen:</div> +<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;= + color: rgb(0, 0, 0);" class=3D"elementToProof ContentPasted0"> +<br> +</div> +<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;= + color: rgb(0, 0, 0);" class=3D"elementToProof ContentPasted0"> +<ul data-editing-info=3D"{"orderedStyleType":1,"unorderedSty= +leType":2}"> +<li style=3D"list-style-type: "- ";"><span>Coordinator adds its o= +wn inputs, you still get your outputs but effectively paid fees for no priv= +acy gain</span></li><li style=3D"list-style-type: "- ";"><span>Th= +e inputs added could be paying at a lower fee rate than expected, causing t= +he tx to take longer than what you paid for</span></li><li style=3D"list-st= +yle-type: "- ";"><span>Different input types or amount are added = +so you no longer have the same uniformity across the inputs</span></li><li = +style=3D"list-style-type: "- ";"><span>(if you care) An input fro= +m a sanctioned address is added, causing you to get "tainted" coi= +ns.<br> +</span></li></ul> +</div> +<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;= + color: rgb(0, 0, 0);" class=3D"elementToProof ContentPasted0 ContentPasted= +1"> +This is the code in ln-vortex that verifies the psbt on the client side if = +you are curious<br> +<br> +<a href=3D"https://github.com/ln-vortex/ln-vortex/blob/master/client/src/ma= +in/scala/com/lnvortex/client/VortexClient.scala#L616" id=3D"LPNoLPOWALinkPr= +eview">https://github.com/ln-vortex/ln-vortex/blob/master/client/src/main/s= +cala/com/lnvortex/client/VortexClient.scala#L616</a> +<div class=3D"_Entity _EType_OWALinkPreview _EId_OWALinkPreview _EReadonly_= +1"></div> +<br> +</div> +<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;= + color: rgb(0, 0, 0);" class=3D"elementToProof ContentPasted0 ContentPasted= +1"> +<br> +</div> +<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;= + color: rgb(0, 0, 0);" class=3D"elementToProof ContentPasted0 ContentPasted= +1"> +Best,</div> +<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;= + color: rgb(0, 0, 0);" class=3D"elementToProof ContentPasted0 ContentPasted= +1"> +<br> +</div> +<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;= + color: rgb(0, 0, 0);" class=3D"elementToProof ContentPasted0 ContentPasted= +1"> +benthecarman<br> +</div> +<div id=3D"appendonsend"></div> +<div style=3D"font-family: Calibri, Helvetica, sans-serif; font-size: 12pt;= + color: rgb(0, 0, 0);"> +<br> +</div> +<hr tabindex=3D"-1" style=3D"display:inline-block; width:98%"> +<div id=3D"divRplyFwdMsg" dir=3D"ltr"><font style=3D"font-size: 11pt; color= +: rgb(0, 0, 0);" face=3D"Calibri, sans-serif"><b>From:</b> bitcoin-dev <= +bitcoin-dev-bounces@lists.linuxfoundation.org> on behalf of alicexbt via= + bitcoin-dev <bitcoin-dev@lists.linuxfoundation.org><br> +<b>Sent:</b> Monday, May 22, 2023 7:51 AM<br> +<b>To:</b> Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundatio= +n.org><br> +<b>Subject:</b> [bitcoin-dev] Coinjoin with less steps using ALL|ANYONECANP= +AY</font> +<div> </div> +</div> +<div class=3D"BodyFragment"><font size=3D"2"><span style=3D"font-size:11pt"= +> +<div class=3D"PlainText">Hi Bitcoin Developers,<br> +<br> +I recently experimented with different sighash flags, PSBTs and realized AL= +L|ANYONECANPAY could be used to reduce some steps in coinjoin.<br> +<br> +Steps:<br> +<br> +- Register outputs.<br> +- One user creates a signed PSBT with 1 input, all registered outputs and A= +LL|ANYONECANPAY sighash flag. Other participants keep adding their inputs t= +o PSBT.<br> +- Finalize and broadcast the transaction.<br> +<br> +Proof of Concept (Aice and Bob): <a href=3D"https://gitlab.com/-/snipp= +ets/2542297" data-auth=3D"NotApplicable">https://gitlab.com/-/snippets/2542= +297</a><br> +<br> +Tx: <a href=3D"https://mempool.space/testnet/tx/c6dd626591dca7e25bbd516f01b= +23171eb0f2b623471fcf8e073c87c1179c492" data-auth=3D"NotApplicable"> +https://mempool.space/testnet/tx/c6dd626591dca7e25bbd516f01b23171eb0f2b6234= +71fcf8e073c87c1179c492</a><br> +<br> +I plan to use this in joinstr if there are no major drawbacks and it can ev= +en be implemented by other coinjoin implementations. +<br> +<br> +/dev/fd0<br> +floppy disk guy<br> +<br> +Sent with Proton Mail secure email.<br> +_______________________________________________<br> +bitcoin-dev mailing list<br> +bitcoin-dev@lists.linuxfoundation.org<br> +<a href=3D"https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev" = +data-auth=3D"NotApplicable">https://lists.linuxfoundation.org/mailman/listi= +nfo/bitcoin-dev</a><br> +</div> +</span></font></div> +</body> +</html> + +--_000_SJ1P223MB0531D7D62140F0516A25897AA1439SJ1P223MB0531NAMP_-- + |