Received: from sog-mx-1.v43.ch3.sourceforge.com ([172.29.43.191] helo=mx.sourceforge.net) by sfs-ml-3.v29.ch3.sourceforge.com with esmtp (Exim 4.76) (envelope-from ) id 1Z6lFo-00035h-2e for bitcoin-development@lists.sourceforge.net; Sun, 21 Jun 2015 19:50:08 +0000 Received-SPF: pass (sog-mx-1.v43.ch3.sourceforge.com: domain of bitpay.com designates 209.85.218.52 as permitted sender) client-ip=209.85.218.52; envelope-from=jgarzik@bitpay.com; helo=mail-oi0-f52.google.com; Received: from mail-oi0-f52.google.com ([209.85.218.52]) by sog-mx-1.v43.ch3.sourceforge.com with esmtps (TLSv1:RC4-SHA:128) (Exim 4.76) id 1Z6lFm-0000Nm-T1 for bitcoin-development@lists.sourceforge.net; Sun, 21 Jun 2015 19:50:08 +0000 Received: by oigx81 with SMTP id x81so109589276oig.1 for ; Sun, 21 Jun 2015 12:50:01 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-type; bh=ASgbL8qtE/8r/Fy9CMLv9qbvLMmdfNRIr29/hDbzUM8=; b=E48AnKBtnFJA+goaYKuGZ37IHg0eTATuIKFEe1/amBVgjN3o7l6HaVm4glRt2QCi/+ YEyoP2rAdWAjmyqHGBWMzXBPmzUlvB/aK05NaqwInb2EN64JSq2AtBmzKJDkSXqYGyT3 0pt+EsVUuPXlL83bJoNNapU/7VvxtwsIE2v8d88oHfUQ1/NgayMFe0q43SPeCbyOO8+t IqSfhnfOFtlE5Z7Zy3gO/lzksFeMk0QkklRfOu96TY/QWWMW01FbAmgCogdLBApcF+aV 695c/w4IHWgmCs05YYkJ6elWQq4sHX19+/FWrHkGcSRlOe8dTr1vlsJ9oYj1JFOmdh+R 2rdQ== X-Gm-Message-State: ALoCoQlomIc1OlAhCvfSN/R1KLBk3bK8zXREYgzlZ/Hl0l5+Gi0eDwNJSIjEYbzNtiw3yGvhmhr6 X-Received: by 10.60.45.104 with SMTP id l8mr22508523oem.61.1434916201304; Sun, 21 Jun 2015 12:50:01 -0700 (PDT) MIME-Version: 1.0 Received: by 10.202.108.149 with HTTP; Sun, 21 Jun 2015 12:49:41 -0700 (PDT) In-Reply-To: <30AF043D-A1F8-4502-8280-EBED6063B6B6@gmail.com> References: <20150619103959.GA32315@savin.petertodd.org> <04CE3756-B032-464C-8FBD-7ACDD1A3197D@gmail.com> <812d8353e66637ec182da31bc0a9aac1@riseup.net> <1727885.UUNByX4Jyd@crushinator> <83A7C606-B601-47D2-BE10-2A1412D97514@gmail.com> <8a49c53a032503eeca4f51cdef725fe1@riseup.net> <6d025db96e7aec4e6e47a76883a9a1e3@riseup.net> <70534C5D-8834-42B5-B495-FD9975E8FCF4@gmail.com> <30AF043D-A1F8-4502-8280-EBED6063B6B6@gmail.com> From: Jeff Garzik Date: Sun, 21 Jun 2015 12:49:41 -0700 Message-ID: To: Eric Lombrozo Content-Type: multipart/alternative; boundary=089e0149ce38762d4905190c76e1 X-Spam-Score: -0.5 (/) X-Spam-Report: Spam Filtering performed by mx.sourceforge.net. See http://spamassassin.org/tag/ for more details. -1.5 SPF_CHECK_PASS SPF reports sender host as permitted sender for sender-domain -0.0 SPF_PASS SPF: sender matches SPF record 1.0 HTML_MESSAGE BODY: HTML included in message -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain 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 0.1 AWL AWL: Adjusted score from AWL reputation of From: address X-Headers-End: 1Z6lFm-0000Nm-T1 Cc: Bitcoin Dev , Justus Ranvier Subject: Re: [Bitcoin-development] F2Pool has enabled full replace-by-fee 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: Sun, 21 Jun 2015 19:50:08 -0000 --089e0149ce38762d4905190c76e1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On Sun, Jun 21, 2015 at 12:42 AM, Eric Lombrozo wrote= : > Thanks for asking *the* question, Jeff. We often get caught up in these > philosophical debates=E2=80=A6but at the end of the day we need something= concrete. > > Even more important than the specific software you=E2=80=99re using is th= e > security policy. > > If you must accept zero confirmation transactions, there are a few > concrete things you can do to reduce your exposure: > > 1) limit the transaction amounts for zero confirmation transactions - do > not accept them for very high priced goods=E2=80=A6especially if they req= uire > physical shipping. > 2) limit the total amount of unconfirmed revenue you=E2=80=99ll tolerate = at any > given moment - if the amount is exceeded, require confirmations. > 3) give merchants of subscription services (i.e. servers, hosting, etc=E2= =80=A6) > the ability to shut the user out if a double-spend is detected. > Already done -- BitPay merchants choose their level of transaction security. Level of confirmations is directly exposed to merchants, so that they choose the level of risk for themselves. Physically shipped orders and subscriptions are actually the easy cases and are already handled. These can accept 0-conf for an initial order phase, then have the luxury of time to wait for confirmations before shipping / canceling a subscription. Electronic goods instantly delivered are the toughest use case. Even there, merchants choose their level of risk. > 4) collect legal information on purchasers (or have the merchants collect > this information) so you have someone to go after if they try to screw yo= u > The system requests this information on orders yes. Merchants also collect this info as their needs dictate. > 5) create a risk profile for users=E2=80=A6and flag suspicious behavior (= i.e. > someone trying to purchase a bunch of stuff that totally doesn=E2=80=99t = fit into > their purchasing habits). > 6) get insurance (although right now reasonably-priced insurance is > probably pretty hard to obtain since statistics are generally of little > use=E2=80=A6we=E2=80=99re entering uncharted territory). > 7) set up a warning system and a =E2=80=9Cpanic=E2=80=9D button so that i= f you start to > see an attack you can immediately disable all zero confirmation > transactions system-wide. > 8) independently verify all inbound transactions and connect to multiple > network nodes=E2=80=A6check them against one another. > Definitely looking at or have implemented this sort of stuff. I cannot get into detail in public... --=20 Jeff Garzik Bitcoin core developer and open source evangelist BitPay, Inc. https://bitpay.com/ --089e0149ce38762d4905190c76e1 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
On Sun, Jun 21, 2015 at 12:42 AM, Eric Lombrozo <elomb= rozo@gmail.com> wrote:
Thank= s for asking *the* question, Jeff. We often get caught up in these philosop= hical debates=E2=80=A6but at the end of the day we need something concrete.=

Even more important than the spe= cific software you=E2=80=99re using is the security policy.

<= /div>
If you must accept zero confirmation transactions, there are a fe= w concrete things you can do to reduce your exposure:

<= div>1) limit the transaction amounts for zero confirmation transactions - d= o not accept them for very high priced goods=E2=80=A6especially if they req= uire physical shipping.
2) limit the total amount of unconfirmed = revenue you=E2=80=99ll tolerate at any given moment - if the amount is exce= eded, require confirmations.
3) give merchants of subscription se= rvices (i.e. servers, hosting, etc=E2=80=A6) the ability to shut the user o= ut if a double-spend is detected.

Already done -- BitPay merchants choose their level of transaction secur= ity.=C2=A0 Level of confirmations is directly exposed to merchants, so that= they choose the level of risk for themselves.

Phy= sically shipped orders and subscriptions are actually the easy cases and ar= e already handled.=C2=A0 These can accept 0-conf for an initial order phase= , then have the luxury of time to wait for confirmations before shipping / = canceling a subscription.

Electronic goods instant= ly delivered are the toughest use case.=C2=A0 Even there, merchants choose = their level of risk.

=C2=A0
4) collect legal inf= ormation on purchasers (or have the merchants collect this information) so = you have someone to go after if they try to screw you

The system requests this information on orders yes.= =C2=A0 Merchants also collect this info as their needs dictate.
<= br>
=C2=A0
5) create a risk profile for users=E2=80=A6and flag = suspicious behavior (i.e. someone trying to purchase a bunch of stuff that = totally doesn=E2=80=99t fit into their purchasing habits).
6) get= insurance (although right now reasonably-priced insurance is probably pret= ty hard to obtain since statistics are generally of little use=E2=80=A6we= =E2=80=99re entering uncharted territory).
7) set up a warning sy= stem and a =E2=80=9Cpanic=E2=80=9D button so that if you start to see an at= tack you can immediately disable all zero confirmation transactions system-= wide.
8) independently verify all inbound transactions and connec= t to multiple network nodes=E2=80=A6check them against one another.

Definitely looking at or have implemen= ted this sort of stuff.=C2=A0 I cannot get into detail in public...

--
Jeff Garzik
Bit= coin core developer and open source evangelist
BitPay, Inc. =C2=A0 =C2= =A0 =C2=A0https://bitpay.= com/
--089e0149ce38762d4905190c76e1--