From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 7DA5B25A for ; Thu, 22 Oct 2015 20:59:24 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from gproxy4-pub.mail.unifiedlayer.com (gproxy4-pub.mail.unifiedlayer.com [69.89.23.142]) by smtp1.linuxfoundation.org (Postfix) with SMTP id 7008F142 for ; Thu, 22 Oct 2015 20:59:23 +0000 (UTC) Received: (qmail 24826 invoked by uid 0); 22 Oct 2015 20:59:12 -0000 Received: from unknown (HELO cmgw3) (10.0.90.84) by gproxy4.mail.unifiedlayer.com with SMTP; 22 Oct 2015 20:59:12 -0000 Received: from just118.justhost.com ([173.254.28.118]) by cmgw3 with id YSz11r00L2Yu7hZ01Sz4Nj; Thu, 22 Oct 2015 20:59:10 -0600 X-Authority-Analysis: v=2.1 cv=Zs1+dbLG c=1 sm=1 tr=0 a=iBV2HUWW4UcJ4JmVcQBhJA==:117 a=SXMkSffTIr/SFKAU9SuaCg==:17 a=BY8XqHikAAAA:8 a=f5113yIGAAAA:8 a=7ihtSbDYAAAA:8 a=sTMQGeZHAJUA:10 a=gh5yhxy94LgA:10 a=5lJygRwiOn0A:10 a=13zjGPudsaEWiJwPRgMA:9 a=WbPmnYzAfxEA:10 a=r77TgQKjGQsHNAKrUKIA:9 a=_aDDVWgGGLyH8h3OifkA:9 a=MjmgmhvKrV8umll_:21 a=deIVfGvORzsitZAg:21 a=QEXdDO2ut3YA:10 a=UGJNv0VHiVXWHqWk7vMA:9 a=bFgEjLUXCJnQXQS3jDUA:9 Received: from [199.19.94.193] (port=51947 helo=mail_server) by just118.justhost.com with esmtpsa (TLSv1.2:DHE-RSA-AES256-GCM-SHA384:256) (Exim 4.84) (envelope-from ) id 1ZpMww-0007o6-My; Thu, 22 Oct 2015 14:59:02 -0600 To: Bitcoin Dev References: <201510220554.00367.luke@dashjr.org> <5628F8D2.1010709@openbitcoinprivacyproject.org> <201510222043.17582.luke@dashjr.org> From: Justus Ranvier Openpgp: id=E7AD8215849736736D9E61C42A5FDA70EAD9E623; url= X-Enigmail-Draft-Status: N1111 Message-ID: <56294E12.60301@openbitcoinprivacyproject.org> Date: Thu, 22 Oct 2015 15:58:58 -0500 In-Reply-To: <201510222043.17582.luke@dashjr.org> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="DSemQLbdHdfu884AB4QRkOMOKMDHTad2E" X-Identified-User: {7507:just118.justhost.com:stacksn1:openbitcoinprivacyproject.org} {sentby:smtp auth 199.19.94.193 authed with justus@openbitcoinprivacyproject.org} X-Spam-Status: No, score=-1.2 required=5.0 tests=BAYES_00, MIME_HEADER_CTYPE_ONLY,RCVD_IN_DNSWL_NONE autolearn=no version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Subject: Re: [bitcoin-dev] [Bitcoin-development] Reusable payment codes X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Development Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Oct 2015 20:59:24 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --DSemQLbdHdfu884AB4QRkOMOKMDHTad2E Content-Type: multipart/mixed; boundary="------------000006070103050504080107" This is a multi-part message in MIME format. --------------000006070103050504080107 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 22/10/15 15:43, Luke Dashjr wrote: > BIPs should in general not be=20 > designed around current software I strongly disagree with this statement. There is a version byte in the payment code specification for a reason. Version 1 payment codes are designed to be deployable by wallet implementers today, without requiring them to wait on any network-level changes whatsoever, which includes IsStandard() redefinitions, or yet-to-be-invented-and-deployed filtering schemes. As far as I know, multi-push OP_RETURN outputs are not standard transactions and so wallet users can not rely on transactions containing them to be relayed through the network, therefore any improvement to the protocol which requires that feature is not appropriate for version 1. When additional capabilities are deployed in the network such that Bitcoin users can rely on their existence, that would be a great time to specify a version 2 payment code that uses those features and encourage users to upgrade (which should be a fairly smooth process since their actual keys don't need to change). --------------000006070103050504080107 Content-Type: application/pgp-keys; name="0xEAD9E623.asc" Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="0xEAD9E623.asc" -----BEGIN PGP PUBLIC KEY BLOCK----- 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 7ubtA1pP3/Hckws+FMvtCG1DQBRRqSw=3D =3DPJpj -----END PGP PUBLIC KEY BLOCK----- --------------000006070103050504080107-- --DSemQLbdHdfu884AB4QRkOMOKMDHTad2E Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQIcBAEBCAAGBQJWKU4SAAoJECpf2nDq2eYjSIIQAJoNzpXBD2AK2ynwT1w1oURy EkTXLhoOv9oNqt4hs63HZdopfnBc45qu2PLQ3Db8Sr/t9rIxYzFyV0ybW9IS3dxU q8GjViUvyexNu4faLG8OhHJzK4bQFsf7BVTsq71+gLWxlf3hmxLd64sUloX0J15K w51LOGJwV/jS7ClVhA+NGdClntHCUvo7j8d2KR0QykoVo3J7B2J0BILBmrSUEg4R gDOH4IIA2qk+l0HXjcJ2LN4qmucEov33e8n/ar+63le4VBocNY+6nNBhhMlqFSCA dVr0hjHrySCAujDAxxQRV69vpcI6kB3AWBm9IxZgB572XyeRhaqERPt2i7uV+CPB 4uSk0zK1MCuQN6MWjtNsn66Iz3znAcbsJbC/PNQyG4UJuU6fRfXp6B+VX07PfKn/ Ci18QzwhfWo1QYqqPTnHFAuRsDtI0A1DrfaH5jVNFRKMbVo58efv8/VElsjt5KfE B9nUuYoRffPKAU3QcIWHoKBtkEHo72JfMMJ6nKGOsDOJb0zdPESyRqhBC1dSzKus 72TihSKsACLUu63OTj/qPdo2EiQr4rsbNfZzPpJBbf6IXPcfxW1XruzgPFy3uaLK LO9Llx/jqkALYCnYU3btCPyf9nFTw0Q4lSdz6E6m+wzSz1MdXZq+b3JDLIMoWSy5 BbYFhhYz2826PaKc2Jz7 =qJBk -----END PGP SIGNATURE----- --DSemQLbdHdfu884AB4QRkOMOKMDHTad2E--