Received: from sog-mx-1.v43.ch3.sourceforge.com ([172.29.43.191] helo=mx.sourceforge.net) by sfs-ml-4.v29.ch3.sourceforge.com with esmtp (Exim 4.76) (envelope-from ) id 1VnUZO-00027t-00 for bitcoin-development@lists.sourceforge.net; Mon, 02 Dec 2013 14:33:54 +0000 Received-SPF: pass (sog-mx-1.v43.ch3.sourceforge.com: domain of gmail.com designates 209.85.214.179 as permitted sender) client-ip=209.85.214.179; envelope-from=mh.in.england@gmail.com; helo=mail-ob0-f179.google.com; Received: from mail-ob0-f179.google.com ([209.85.214.179]) by sog-mx-1.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128) (Exim 4.76) id 1VnUZL-0005rS-TX for bitcoin-development@lists.sourceforge.net; Mon, 02 Dec 2013 14:33:53 +0000 Received: by mail-ob0-f179.google.com with SMTP id wm4so12636233obc.24 for ; Mon, 02 Dec 2013 06:33:46 -0800 (PST) MIME-Version: 1.0 X-Received: by 10.182.243.138 with SMTP id wy10mr199059obc.83.1385994826522; Mon, 02 Dec 2013 06:33:46 -0800 (PST) Sender: mh.in.england@gmail.com Received: by 10.76.3.134 with HTTP; Mon, 2 Dec 2013 06:33:46 -0800 (PST) In-Reply-To: References: <5E4597E4-C1C7-4536-8CF0-82EDD7715DAB@plan99.net> <39921E12-B411-4430-9D56-04F53906B109@plan99.net> Date: Mon, 2 Dec 2013 15:33:46 +0100 X-Google-Sender-Auth: ikzNieEMs6utonbHq2umfTNJoAI Message-ID: From: Mike Hearn To: Patrick Mead Content-Type: multipart/alternative; boundary=001a11c2a1204ba8b304ec8e11f7 X-Spam-Score: -0.5 (/) X-Spam-Report: Spam Filtering performed by mx.sourceforge.net. See http://spamassassin.org/tag/ for more details. 0.0 URIBL_BLOCKED ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [URIs: doubleclick.net] -1.5 SPF_CHECK_PASS SPF reports sender host as permitted sender for sender-domain 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (mh.in.england[at]gmail.com) -0.0 SPF_PASS SPF: sender matches SPF record 1.0 HTML_MESSAGE BODY: HTML included in message 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature X-Headers-End: 1VnUZL-0005rS-TX Cc: Bitcoin Dev Subject: Re: [Bitcoin-development] Floating fees and SPV clients X-BeenThere: bitcoin-development@lists.sourceforge.net X-Mailman-Version: 2.1.9 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 02 Dec 2013 14:33:54 -0000 --001a11c2a1204ba8b304ec8e11f7 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Right, as I said earlier: "The payment protocol at least would need some notion of fee, or possibly (better?) the ability for a recipient to specify some inputs as well as some outputs." Having thought about it a bit more, I think it's better to just have a fee field that lets the receiver request the sender to attach the given fee. The outputs would have less value associated with them, so effectively the seller folds the fee into the price. If the seller is charging a round price like 1 mBTC, the user sees "1 mBTC" as the price, even if behind the scenes the created tx only sends 0.99999 BTC Allowing specification of inputs seems to add too much complexity in other cases, like when value isn't specified at all. On Mon, Dec 2, 2013 at 2:54 PM, Patrick Mead wrote: > First time posting to this mailing list so feel free to ignore me if > this is a stupid idea. > > > On Mon, Dec 2, 2013 at 3:49 AM, Mike Hearn wrote: > > > > We need to get away from the notion of senders attaching fees anyway. > This is the wrong > > way around because it=E2=80=99s the recipient who cares about double sp= ending > risk, not the sender. > > > > > It seems to me that a common problem currently revolves around > accepting transactions in > retail scenarios, such as paying for a sandwich from Subway. A > solution could be to give the > vendor responsibility for setting the fee, which means they can choose > the trade-off that works > best for them in terms of fee size vs. speed of processing. > > Idea: > Add a "fee" parameter to the payment URI specification. > When processing the transaction, the customer's UI should show only > the total price, including > both the transfer amount and the fee. The vendor only accepts the > transaction if the customer > uses the right amount and fee. If the fee is too small (for example, > the user might be using an > older wallet and has selected a fee of zero), the vendor can issue a > refund transaction > immediately and tell the user to try again. > > Pros: > - could easily be implemented immediately > - old wallets would still be supported by just manually entering the > fee as users do now > - no greater risk of double spending on either side > - maintains the distributed nature of the system > - relies on humans to judge the fee (who are much less likely to > spiral infinitely upwards) > - flexible enough to support varying sizes of transaction and varying > degrees of security > > Cons > - requires the vendor to have sufficient understanding of Bitcoin to > make the trade-off > - doesn't solve the problem of selecting a fee for transactions > between individuals/laymen > - doesn't solve fee selection for automated transactions such as > mixing/de/refragmentation > > > Thoughts? > > > -------------------------------------------------------------------------= ----- > Rapidly troubleshoot problems before they affect your business. Most IT > organizations don't have a clear picture of how application performance > affects their revenue. With AppDynamics, you get 100% visibility into you= r > Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics > Pro! > http://pubads.g.doubleclick.net/gampad/clk?id=3D84349351&iu=3D/4140/ostg.= clktrk > _______________________________________________ > Bitcoin-development mailing list > Bitcoin-development@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/bitcoin-development > --001a11c2a1204ba8b304ec8e11f7 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Right, as I said earlier:

"The payment protocol= at least would need some notion of fee, or possibly (better?) the ability = for a recipient to specify some inputs as well as some outputs."

=
Having thought about it a bit more, I think it's better to just have= a fee field that lets the receiver request the sender to attach the given = fee. The outputs would have less value associated with them, so effectively= the seller folds the fee into the price. If the seller is charging a round= price like 1 mBTC, the user sees "1 mBTC" as the price, even if = behind the scenes the created tx only sends 0.99999 BTC

All= owing specification of inputs seems to add too much complexity in other cas= es, like when value isn't specified at all.


On Mon,= Dec 2, 2013 at 2:54 PM, Patrick Mead <patrick@meadia.com.au> wrote:
First time posting to this mailing list so f= eel free to ignore me if
this is a stupid idea.


On Mon, Dec 2, 2013 at 3:49 AM, Mike Hearn <mike@plan99.net> wrote:
>
> We need to get away from the notion of senders attaching fees anyway. = This is the wrong
> way around because it=E2=80=99s the recipient who cares about double s= pending risk, not the sender.
>


It seems to me that a common problem currently revolves around
accepting transactions in
retail scenarios, such as paying for a sandwich from Subway. A
solution could be to give the
vendor responsibility for setting the fee, which means they can choose
the trade-off that works
best for them in terms of fee size vs. speed of processing.

Idea:
Add a "fee" parameter to the payment URI specification.
When processing the transaction, the customer's UI should show only
the total price, including
both the transfer amount and the fee. The vendor only accepts the
transaction if the customer
uses the right amount and fee. If the fee is too small (for example,
the user might be using an
older wallet and has selected a fee of zero), the vendor can issue a
refund transaction
immediately and tell the user to try again.

Pros:
- could easily be implemented immediately
- old wallets would still be supported by just manually entering the
fee as users do now
- no greater risk of double spending on either side
- maintains the distributed nature of the system
- relies on humans to judge the fee (who are much less likely to
spiral infinitely upwards)
- flexible enough to support varying sizes of transaction and varying
degrees of security

Cons
- requires the vendor to have sufficient understanding of Bitcoin to
make the trade-off
- doesn't solve the problem of selecting a fee for transactions
between individuals/laymen
- doesn't solve fee selection for automated transactions such as
mixing/de/refragmentation


Thoughts?

---------------------------------------------------------------------------= ---
Rapidly troubleshoot problems before they affect your business. Most IT
organizations don't have a clear picture of how application performance=
affects their revenue. With AppDynamics, you get 100% visibility into your<= br> Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynami= cs Pro!
http://pubads.g.doubleclick.net/gam= pad/clk?id=3D84349351&iu=3D/4140/ostg.clktrk
_______________________________________________
Bitcoin-development mailing list
Bitcoin-develo= pment@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bitcoin-de= velopment

--001a11c2a1204ba8b304ec8e11f7--