<oembed><type>rich</type><version>1.0</version><author_name>npub1lhe3qfx2q5m7mq5d39waepf9lzhsy0cdey66svn63fyk6rt6n7ps7zg7ed</author_name><author_url>https://nostr.ae/npub1lhe3qfx2q5m7mq5d39waepf9lzhsy0cdey66svn63fyk6rt6n7ps7zg7ed</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2015-06-21&#xA;📝 Original message:Eric,&#xA;&#xA;BitPay clearly do understand the risks of 0-conf. In case you were not&#xA;aware BitPay does not particularly &#34;accept zero confirm transactions&#34;. When&#xA;a payment is seen on the network the payment screen reports the invoice has&#xA;been paid, but that&#39;s front-end user facing. On the back end it&#39;s marked as&#xA;paid but the API exposes the the confirmation status allowing the merchant&#xA;to make business decisions about when to progress to fulfilment. A good&#xA;example of this is Neteller (a sort of paypal variant) which allows one to&#xA;fund the account with fiat using Bitcoin, via Bitpay. When you pay the&#xA;bitpay invoice, your account is marked as payment pending until there are&#xA;some confirmations.&#xA;&#xA;Coinbase does not expose the confirmation status and from what I understand&#xA;(not checked myself) they guarantee payment to merchants for 0-confirm,&#xA;regardless of whether they confirm or not.&#xA;&#xA;I want to address something stated by Justus, that signing a payment&#xA;message and broadcasting somehow solidifies intent and going back on that&#xA;would be fraud. This seriously conflates cryptographic certainty with human&#xA;behaviour. For one, humans make mistakes all the time. We get tired, we get&#xA;distracted, we make copy paste errors. It&#39;s entirely possible on sends a&#xA;payment only to find it&#39;s been sent to the wrong address or the wrong&#xA;amount has been sent or the fee is wrong. Software may also misbehave&#xA;(Electrum for example has a weird UI glitch with fees where the specified&#xA;fee can be overwritten). r/bitcoin it littered with sad examples. What&#xA;ECDSA signing tells is that it was signed by your private key, but nothing&#xA;else. It does not say if *you* signed it, or that the message you signed&#xA;was correct.&#xA;&#xA;&#xA;On Sun, Jun 21, 2015 at 8:42 AM, Eric Lombrozo &lt;elombrozo at gmail.com&gt; wrote:&#xA;&#xA;&gt;&#xA;&gt; On Jun 20, 2015, at 11:45 PM, Jeff Garzik &lt;jgarzik at bitpay.com&gt; wrote:&#xA;&gt;&#xA;&gt; On Sat, Jun 20, 2015 at 5:54 PM, Eric Lombrozo &lt;elombrozo at gmail.com&gt;&#xA;&gt; wrote:&#xA;&gt;&#xA;&gt;&gt;  but we NEED to be applying some kind of pressure on the merchant end to&#xA;&gt;&gt; upgrade their stuff to be more resilient&#xA;&gt;&gt;&#xA;&gt;&#xA;&gt; Can you be specific?  What precise technical steps would you have BitPay&#xA;&gt; and Coinbase do?  We upgrade our stuff to... what exactly?&#xA;&gt;&#xA;&gt; --&#xA;&gt; Jeff Garzik&#xA;&gt; Bitcoin core developer and open source evangelist&#xA;&gt; BitPay, Inc.      https://bitpay.com/&#xA;&gt;&#xA;&gt;&#xA;&gt; Thanks for asking *the* question, Jeff. We often get caught up in these&#xA;&gt; philosophical debates…but at the end of the day we need something concrete.&#xA;&gt;&#xA;&gt; Even more important than the specific software you’re using is the&#xA;&gt; security policy.&#xA;&gt;&#xA;&gt; If you must accept zero confirmation transactions, there are a few&#xA;&gt; concrete things you can do to reduce your exposure:&#xA;&gt;&#xA;&gt; 1) limit the transaction amounts for zero confirmation transactions - do&#xA;&gt; not accept them for very high priced goods…especially if they require&#xA;&gt; physical shipping.&#xA;&gt; 2) limit the total amount of unconfirmed revenue you’ll tolerate at any&#xA;&gt; given moment - if the amount is exceeded, require confirmations.&#xA;&gt; 3) give merchants of subscription services (i.e. servers, hosting, etc…)&#xA;&gt; the ability to shut the user out if a double-spend is detected.&#xA;&gt; 4) collect legal information on purchasers (or have the merchants collect&#xA;&gt; this information) so you have someone to go after if they try to screw you&#xA;&gt; 5) create a risk profile for users…and flag suspicious behavior (i.e.&#xA;&gt; someone trying to purchase a bunch of stuff that totally doesn’t fit into&#xA;&gt; their purchasing habits).&#xA;&gt; 6) get insurance (although right now reasonably-priced insurance is&#xA;&gt; probably pretty hard to obtain since statistics are generally of little&#xA;&gt; use…we’re entering uncharted territory).&#xA;&gt; 7) set up a warning system and a “panic” button so that if you start to&#xA;&gt; see an attack you can immediately disable all zero confirmation&#xA;&gt; transactions system-wide.&#xA;&gt; 8) independently verify all inbound transactions and connect to multiple&#xA;&gt; network nodes…check them against one another.&#xA;&gt;&#xA;&gt;&#xA;&gt; As for software tools to accomplish these things, we can talk about that&#xA;&gt; offline :)&#xA;&gt;&#xA;&gt;&#xA;&gt; - Eric Lombrozo&#xA;&gt;&#xA;&gt;&#xA;&gt;&#xA;&gt;&#xA;&gt;&#xA;&gt;&#xA;&gt; ------------------------------------------------------------------------------&#xA;&gt;&#xA;&gt; _______________________________________________&#xA;&gt; Bitcoin-development mailing list&#xA;&gt; Bitcoin-development at lists.sourceforge.net&#xA;&gt; https://lists.sourceforge.net/lists/listinfo/bitcoin-development&#xA;&gt;&#xA;&gt;&#xA;-------------- next part --------------&#xA;An HTML attachment was scrubbed...&#xA;URL: &lt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20150621/4abdd8ca/attachment.html&gt;</html></oembed>