I'm not sure you can bet on BTC having a PoW change, let alone make that bet and risk users getting completely screwed if it doesn't happen.
On March 23, 2017 2:35:02 AM PDT, "Tobias B." <brandt....@gmail.com> wrote: >So as the minority (core) chain is likely to make a PoW change, >wouldn't >this break SPV clients? I hope in such a case this chain would also add > >replay protection - people would have to install new clients anyway. > >On Wednesday, March 22, 2017 at 10:14:39 PM UTC+1, Manfred Karrer >wrote: >> >> When you talk about minority chain we should take in consideration >that >> this might change over time. So todays winning chain might be the >loser of >> tomorrow and so on. Might be pretty messy with re-orgs and double >spends... >> Also I would not count with what some people expect that the minority > >> chain will quickly die (or get killed). The ETH devs made that >mistake and >> underestimated ETC a lot. Mining resources and price are highly >dynamic >> factors making predictions much harder. Not to talk about the >emotional and >> political factors... >> Also a PoW change is a very likely element in such a scenario... >> >> >> Am Mittwoch, 22. März 2017 11:18:23 UTC-5 schrieb Andreas Schildbach: >>> >>> Maybe the recommendation should be: if you want to follow a minority > >>> chain, use the Peer API to connect to a trusted peer under your >control. >>> You can then run your desired full node implemention on the trusted >peer >>> and bitcoinj will follow. If the network between bitcoinj and the >>> trusted peer is not to be trusted, use a VPN to secure that >connection >>> (the Bitcoin protocol itself lacks authentication). >>> >>> That would be far more reliable than a version string whitelist. In >>> fact, frontending bitcoinj with bitcoind has always been a >>> recommendation for centralized/web services, so if they followed >that >>> recommendation they should not have to change anything. >>> >>> >>> On 03/22/2017 03:34 PM, Tobias B. wrote: >>> > Still maybe it adding an API call to go into "whitelist mode" and >then >>> > add certain node ips would be a compromise. Software building on >>> > bitcoinj could then offer the user to go into this mode and add >certain >>> > ips there. >>> > >>> > On Wednesday, March 22, 2017 at 3:25:15 PM UTC+1, Tobias B. wrote: > >>> > >>> > A whitelist of nodes for me sounds highly conflicting with the > >>> > decentralized nature of bitcoin. Also what if nodes switch >their >>> > software? Not that unlikely in case they notice that their >minority >>> > chain is dying. >>> > >>> > On Wednesday, March 22, 2017 at 1:28:09 PM UTC+1, Jameson Lopp > >>> wrote: >>> > >>> > >>> > >>> > On Wed, Mar 22, 2017 at 1:55 AM, Manfred Karrer >>> > <manfred...@gmail.com> wrote: >>> > >>> > A Bitcoin core node will not mine a transaction >originated >>> > in a >1 MB block (not sure if it would relay it). >BitcoinJ >>> > has no validation of that consensus rule, so it would >>> accept >>> > a tx from a BTU block. I think with a whitelist to >connect >>> > to BTC core nodes only (or better run your local node) >you >>> > should be safe against receiving txs from a BTU block >(> >>> > 1MB or built on top of a >1MB block). If BTC core does >not >>> > check if a tx has inputs from a >1 MB block for >replaying >>> > then we need to take extra care of 0 confirmation txs. > >>> > Does anyone here know if that is the case? >>> > >>> > >>> > If your software ignores all unconfirmed transactions then >I >>> > could see a slightly stronger argument for going the >whitelist >>> > route. My point was that unconfirmed transactions will get > >>> > relayed around the network by nodes on both chain forks. >>> > >>> > >>> > Yes I agree on the protocol level it will be hard as >the >>> > nodes can easily lie. >>> > >>> > Sure wallet providers should not have to deal with it. >But >>> I >>> > don't see much alternative. As pure wallet it might be > >>> > easier to tell the people just dont use yoru wallet >for a >>> > few days/week. But for Bitsquare as an exchange that >is not >>> > really an option, trading should not get stopped (and >in >>> > case of Bitsquare cannot really). >>> > >>> > Maybe 2015 people have not been so nervous about it >because >>> > it was before ETH demonstrated the risk and damage of >a >>> HF... >>> > >>> > Am Dienstag, 21. März 2017 21:42:07 UTC-5 schrieb >Jameson >>> Lopp: >>> > >>> > I don't think replay protection can be added at >the >>> > network level. Peers could lie about their >software >>> > version and/or switch it, plus it's highly likely >that >>> a >>> > chain split won't result in a clean network >partition. >>> > Transactions will get relayed around the network >>> > comprised of nodes on both chains and you can >expect >>> > that Core nodes would still relay transactions to >you >>> > that were originally broadcast by Unlimited nodes >and >>> > vice versa. >>> > >>> > At a more philosophical level, I'm not so sure >that the >>> > onus is on every wallet provider to implement >>> protection >>> > against contentious hard forks. You could have >made >>> > similar arguments that BitcoinJ should have added >>> replay >>> > protection when support for 8MB blocks was nearing >50% >>> > hashrate back in 2015. >>> > >>> > On Tue, Mar 21, 2017 at 8:28 PM, Manfred Karrer >>> > <manfred...@gmail.com> wrote: >>> > >>> > Btw. of course the whitelist can be set by the >user >>> > himself, so if he runs a full node he can use >that. >>> > But knowing that the majority of users are not > >>> > running their own full node we need >alternative >>> > solutions as well. >>> > >>> > >>> > Am Dienstag, 21. März 2017 19:23:56 UTC-5 >schrieb >>> > Manfred Karrer: >>> > >>> > Andreas, how are you planning to protect >users >>> > of the Android wallet agains replay >attacks? >>> > How does a user know if she/he can send >his >>> > wallet coins to a peer who accepts only >BTC or >>> > BTU (e.g. exchange)? Otherwise he might >end up >>> > pretty frustrated to see outgoing >transactions >>> > at this wallet but not confirmation of >receipt >>> > at the receiver. >>> > >>> > You cannot assume that all your users are >>> > blindly following the longest PoW chain as >the >>> > only valid BTC chain and ignore the replay > >>> > attack risks. >>> > There might be even legal issues connected >to >>> it >>> > (see ETH HF and losses from replay >attacks), >>> > probably less for a wallet provider than >for a >>> > centralized exchange holding customers >funds. >>> > But I am not sure if that would not fall >back >>> to >>> > others as well (due diligence), at least >people >>> > could try to sue... >>> > >>> > One of the easiest solution I see is to >deploy >>> a >>> > whitelist of Bitcoin Core nodes and use >those >>> > for the P2P network connections. >>> > You can give the user the choice to select > >>> > between whitelist Bitcoin Core nodes (if >he >>> > wants BTC), whitelist BU nodes (i he wants >BTU) >>> > or public network (if he thinks all plays >out >>> by >>> > itself and is aware of the included >risk/mess). >>> > Of course a whitelist is not great as well >but >>> > that would solve the problem that we >cannot >>> know >>> > in advance the data which helps us to >>> > distinguish between the chains (like >blockID or >>> > certain transactions). That whitelist only >need >>> > to be used as long the HF is messy, once >things >>> > have settled it can be removed or replaced >by >>> > other distinguishing data sources like >>> blockIds. >>> > >>> > If BTU implements a clean mechanism to >make it >>> > easy to distinguish that would be the best > >>> > solution of course but I am not aware of >any >>> > concrete plans for such. >>> > >>> > >>> > Am Mittwoch, 15. März 2017 06:08:55 UTC-5 >>> > schrieb Andreas Schildbach: >>> > >>> > As long as a fork does not change the >proof >>> > of work rules, bitcoinj >>> > makes no assumptions about forks. It >will >>> > always select the chain with >>> > the most work. >>> > >>> > What do you mean by "requesting an >UTXO" >>> and >>> > what do you want to achieve >>> > by that? >>> > >>> > >>> > On 03/14/2017 06:07 PM, Manfred Karrer > >>> wrote: >>> > > If there would happen really a BU >fork >>> SPV >>> > wallets could get a >>> > > connection to a majority of BU nodes >and >>> > so a different view to the network. >>> > > Any plans or ideas how to deal with >that? >>> > > >>> > > One idea would be to use a UTXO >which is >>> > known to exist on only 1 chain >>> > > request that and use that as a check >to >>> > see which chain the node is >>> > > operated on. >>> > > If it is not the chain the wallet >>> supports >>> > the node gets disconnected. >>> > > >>> > > Br, >>> > > Manfred >>> > > >>> > > -- >>> > > You received this message because >you are >>> > subscribed to the Google >>> > > Groups "bitcoinj" group. >>> > > To unsubscribe from this group and >stop >>> > receiving emails from it, send >>> > > an email to >>> bitcoinj+u...@googlegroups.com >>> > > ><mailto:bitcoinj+u...@googlegroups.com>. >>> > > For more options, visit >>> > https://groups.google.com/d/optout >>> > <https://groups.google.com/d/optout>. >>> > >>> > >>> > -- >>> > You received this message because you are >>> subscribed >>> > to the Google Groups "bitcoinj" group. >>> > To unsubscribe from this group and stop >receiving >>> > emails from it, send an email to >>> > bitcoinj+u...@googlegroups.com. >>> > For more options, visit >>> > https://groups.google.com/d/optout >>> > <https://groups.google.com/d/optout>. >>> > >>> > >>> > -- >>> > You received this message because you are subscribed >to the >>> > Google Groups "bitcoinj" group. >>> > To unsubscribe from this group and stop receiving >emails >>> > from it, send an email to >bitcoinj+u...@googlegroups.com. >>> > For more options, visit >https://groups.google.com/d/optout >>> > <https://groups.google.com/d/optout>. >>> > >>> > >>> > -- >>> > You received this message because you are subscribed to the Google > >>> > Groups "bitcoinj" group. >>> > To unsubscribe from this group and stop receiving emails from it, >send >>> > an email to bitcoinj+u...@googlegroups.com >>> > <mailto:bitcoinj+u...@googlegroups.com>. >>> > For more options, visit https://groups.google.com/d/optout. >>> >>> >>> > >-- >You received this message because you are subscribed to the Google >Groups "bitcoinj" group. >To unsubscribe from this group and stop receiving emails from it, send >an email to bitcoinj+unsubscr...@googlegroups.com. >For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "bitcoinj" group. To unsubscribe from this group and stop receiving emails from it, send an email to bitcoinj+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.