News for hackers. Stuff that matters.
Re:Bitcoin is no long the only game in crypto-currency town by ExactoKnight on Thursday January 11, 2018 @12:43PM (#16125877)
Bitcoin 10 minute block generation times is an inherent problem that unless changed, will doom the protocol to its eventual death.

It's like trying to make a 56k modem work, when broadband is available.

When litecoin came around a few years ago these were abstract problems, but now that transactions with $10 fees take 36 hours to confirm... the issues are real and a switch needs to happen. Lightning network or not, these hacks to speed up the network unequivocally make more sense to do on a network with faster block generation times. Necessity will force this outcome.

Re:Bitcoin is no long the only game in crypto-currency town by Klathmon on Thursday January 11, 2018 @01:21PM (#16126281)
I know this probably sounds like a stuck record at this point, but Lightning Network can solve this, and will relegate the actual blockchain as an arbitration/settlement layer where the 10 minute blocktime isn't a problem.
Re:Bitcoin is no long the only game in crypto-currency town by XR0CSWV3h3kZWg on Thursday January 11, 2018 @01:53PM (#16126618)
LN's security model relies on being able to close a channel before a certain block. This means that there will be periods of time that paying the fee to close a channel in time will be cost prohibitive and the security property evaporates.

That being said we really should see exchange -> exchange txs be conducted over large LN channels, it could off load a lot of pressure off the chain.

Re:Bitcoin is no long the only game in crypto-currency town by Klathmon on Thursday January 11, 2018 @02:32PM (#16127006)
There is a method (which is already in LN) to prevent this which will stop the nSequence countdown if blocks are congested. From the LN paper:

>For example, if a parent transaction output is spent by a child with a nSequence value of 10, one must wait 10 confirmations before the transaction becomes valid. However, if the timestop flag has been set, the counting of confirmations stops, even with new blocks. If 6 confirmations have elapsed (4 more are necessary for the transaction to be valid), and the timestop block has been set on the 7th block, that block does not count towards the nSequence requirement of 10 confirmations; the child is still at 6 blocks for the relative confirmation value.

>This gives sufficient time and block-space for transactions at the current auxiliary timestop block height to enter into the blockchain, which can prevent systemic attackers from successfully attacking the system.

It's not perfect by any means (a malicious miner with a significant portion of the hashpower could never set the timestop bit and spam the mempool at the same time), but it mostly removes this worry in a "normal congestion" scenario, and makes it require a pretty large portion of global hashpower as well as very VERY deep pockets to pull it off in a "malicious" scenario.

Re:Bitcoin is no long the only game in crypto-currency town by XR0CSWV3h3kZWg on Friday January 12, 2018 @02:33PM (#16135578)
the main repo doesn't seem to have the string timestop in it. Nor does any of the bips. What BIP was this implemented in?

Seems like a decent idea, although I don't see why miners would be incentivized to set timestop and the paper suggests that timestop is set to 1 whenever the block is full. The blocks are almost always full, so is it just up to the miner to choose if time is stopped or not?

Re:Bitcoin is no long the only game in crypto-currency town by Klathmon on Friday January 12, 2018 @03:44PM (#16136150)
I actually don't think there is a BIP for it yet... So I guess I was mistaken saying it's already part of LN (it's part of the paper, but not of any implementations).

But the idea relies on miners "doing the right thing", and in this case since there isn't any downside for following this rule, the assumption is that miners will act in good faith.

>The blocks are almost always full, so is it just up to the miner to choose if time is stopped or not?

It's not necessarily if the block is full that the bit is set, but rather if there is "network congestion". This can mean many things to many people, but the assumption is that if fees go up significantly over a short period of time, that could indicate congestion which miners would set the bit on, or perhaps if the mempool of pending transactions gets over a certain BTC amount, it could be set.

Also, I completely forgot to mention the other piece that makes all of this much less worrisome. If you need to broadcast any transactions to prevent "theft" of your BTC, you will receive all of the BTC in the channel by doing so. This gives you the ability to make a child-pays-for-parent transaction with the UXTOs from the channel closure (in a contract revocation scenario) with an absurdly high transaction fee to guarantee inclusion in the next block (basically using ALL of the other party's money as the transaction fee).

Technically, the other party in the channel could also do a CPFP to try to get their transaction included before yours, but as long your side of the channel never went to 0 at any point, you will always be able to "outspend" the other party for transaction fees.

Re:Bitcoin is no long the only game in crypto-currency town by cup-of-tea on Thursday January 11, 2018 @01:14PM (#16126200)
10 minute block generation time is not a problem at all. What's a problem is every block being full.
Re:Bitcoin is no long the only game in crypto-currency town by ExactoKnight on Sunday January 14, 2018 @01:47AM (#16143134)
Can you name one good reason for having it be 10 minutes rather than 30 seconds?

If you can't then you are going to lose this argument.

Re:Bitcoin is no long the only game in crypto-currency town by ericb on Thursday January 11, 2018 @12:48PM (#16125932)
That problem isn't a result of the 10 minute blocks. A 0-confirmation transaction normally is just fine. These are available on Bitcoin Cash.
Re:Bitcoin is no long the only game in crypto-currency town by grey-area on Thursday January 11, 2018 @01:07PM (#16126115)
A 0-confirmation transaction normally is just fine.

It's really not fine at all.

The competition is full confirmation transactions on a debit card or bank account in seconds with much lower or zero fees.

Re:Bitcoin is no long the only game in crypto-currency town by jstanley on Thursday January 11, 2018 @01:20PM (#16126269)
> It's really not fine at all.

Actually, it really is. I've been accepting 0-conf transactions for nearly a year and had negligible double spends. https://incoherency.co.uk/blog/stories/zeroconf-payments.htm...

The small number of double-spends that did occur since I wrote that blog post I think are mostly due to bad luck (and opportunism) rather than malicious intent upfront, and represent only ~0.1% of payments.

Re:Bitcoin is no long the only game in crypto-currency town by grey-area on Thursday January 11, 2018 @05:29PM (#16128665)
Actually, it really is. I've been accepting 0-conf transactions for nearly a year and had negligible double spends.

So your approach to preventing fraud is... to trust people not to defraud you?

Glad it worked for you with bitcoin and the particular people using your service, but that's not really a good basis for a payment network. There are multiple other problems with bitcoin as a payment network and currency, the delay in transactions (which prompted your experiment in ignoring a key part of the currency) is only one of them.

Re:Bitcoin is no long the only game in crypto-currency town by prepend on Friday January 12, 2018 @10:25AM (#16133547)
All payment systems have some system of loss. Visa/MC have fraud and error that eats away small percentages and relies largely on trusting people not to defraud you.

If you run Starbucks and serve 1000 transactions per day, you’ll have some fraud. If 0.1% are fraud, that’s not too bad.

Re:Bitcoin is no long the only game in crypto-currency town by grey-area on Sunday January 14, 2018 @09:37AM (#16144401)
This isn't a system of loss (systemic loss?), it's an abdication of responsibility - it's giving up on the payment system having any sort of fraud protection.
Re:Bitcoin is no long the only game in crypto-currency town by the_d00d on Thursday January 11, 2018 @07:57PM (#16129542)
You just used the same argument that some parents use when they decide to not vaccinate their children. They essentially rely on the fact that everyone else vaccinates so they don't have to. This trend catches on and now measles are at a 20 year high.
Re:Bitcoin is no long the only game in crypto-currency town by ericb on Thursday January 11, 2018 @01:39PM (#16126478)
Interesting that a bunch of arm-chair downvoters "know" this won't work, but in practice, it does...
Re:Bitcoin is no long the only game in crypto-currency town by snowwrestler on Thursday January 11, 2018 @02:28PM (#16126961)
Things that work out fine when only a few people are doing them might not work so out so well when a lot of people are doing them. See: the entire history of Internet security.
Re:Bitcoin is no long the only game in crypto-currency town by ericb on Thursday January 11, 2018 @02:35PM (#16127040)
Sure but

1-The current solution is worse on this dimension.

2-Since Bitcoin Cash doesn't have replace-by-fee this is impractical for any small transaction.

3-Most of the situations that need to be immediate are small--with the large ones it makes sense to wait.

Re:Bitcoin is no long the only game in crypto-currency town by ericb on Thursday January 11, 2018 @01:18PM (#16126249)
Debit and credit-card transactions don't confirm for about 120 days, which is when chargebacks become slightly more difficult. Those chargebacks also cost the merchant not only the price, but a $15 chargeback fee.
Re:Bitcoin is no long the only game in crypto-currency town by grey-area on Thursday January 11, 2018 @05:41PM (#16128759)
Chargebacks (i.e. unhappy customers) are a part of any business. Remedies might be business or legal, but you can't just wish them away by excluding them from a payment solution.

I have no idea why you think that's related to time to confirm that a customer has money to pay for goods, which is an entirely unrelated problem which bitcoin solves badly in comparison to current payment networks, and due to its distributed nature is unlikely ever to solve well.

Re:Bitcoin is no long the only game in crypto-currency town by seanp2k2 on Thursday January 11, 2018 @01:16PM (#16126217)
>seconds

At PoS systems in the US, it's typical to have to wait 30+ seconds for chip cards to go through. I'm guessing that this has more to do with the PoS system / slow internet connection for the store / slow network on the back-end card network, but cryptocurrencies would need to be sub-minute to be ~acceptable for in-person retail transactions.

Until that is solved, until cryptocoins are more than speculative securities where the value is only the current market price on a handful of exchanges, and until you can use them to realistically buy and sell things instead of using cash or a credit card, I don't consider them a "real" currency (by my own definition). I DO hope that it gets there some day, but I don't see that happening for at least another 5 years, likely with quite a few people who put a significant amount of money into it getting burned quite badly.

Re:Bitcoin is no long the only game in crypto-currency town by dlubarov on Thursday January 11, 2018 @01:27PM (#16126375)
30s isn't really typical; the average is in the ballpark of 10s. When I worked at Square we got our average down to 4.2s [1]. Modern Verifone terminals seem pretty quick as well. Long term, "instant" contactless will probably become the norm (though it's taking hold very slowly in the US).

[1] https://squareup.com/townsquare/weve-chipped-away-at-emv-tra...

Re:Bitcoin is no long the only game in crypto-currency town by bootlooped on Thursday January 11, 2018 @01:26PM (#16126362)
I have absolutely never had to wait 30+ seconds for a credit card transaction that used the chip, so I don't agree with your assessment of that amount of time being typical. Generally, for me, I think it takes about 3-5 seconds from the time I confirm the dollar amount to the time the confirmation comes back.
Re:Bitcoin is no long the only game in crypto-currency town by grey-area on Thursday January 11, 2018 @05:47PM (#16128804)
Sure, this varies. If your POS system uses dialup, it can take tens of seconds, if it uses wifi it will be just a few seconds. If it uses contactless it can be sub-second. But in principle it can be as fast as the network and one trusted node.

The fundamental problem with bitcoin is that it is decentralised and trustless, and those two properties preclude fast transactions at a global scale - for that you need a federated system with trust between nodes. If you remove those properties, you're no longer using anything resembling bitcoin, and why not use a system with proper validated parties in the first place?

Re:Bitcoin is no long the only game in crypto-currency town by prepend on Friday January 12, 2018 @10:28AM (#16133577)
But even with BitCoin you can submit the transaction and see it unconfirmed on multiple nodes within 5-30s. It may not be confirmed for hours, but it’s certaibly actionable and trustworthy enough for merchants.

The bigger problem is having full blocks forever so it never gets processed.

Re:Bitcoin is no long the only game in crypto-currency town by coolspot on Thursday January 11, 2018 @03:31PM (#16127535)
Such time is possible if terminal is using dial up and establishes connection only when transaction started.

Seen it couple times.

Re:Bitcoin is no long the only game in crypto-currency town by cup-of-tea on Thursday January 11, 2018 @01:22PM (#16126288)
> The competition is full confirmation transactions on a debit card or bank account in seconds with much lower or zero fees.

No. Those do not compete with trustless digital money. If you think that then you don't understand the point of Bitcoin. It's like saying landlines are better than mobiles because you can never misplace them.

Re:Bitcoin is no long the only game in crypto-currency town by jdc0589 on Thursday January 11, 2018 @01:03PM (#16126077)
I honestly don't know a ton about cryptocurrencies, but I though confirmed transactions were.....more or less whole point? can you give me an ELI5 version of why 0-confirmation transactions are ok?
Re:Bitcoin is no long the only game in crypto-currency town by Obi_Juan_Kenobi on Thursday January 11, 2018 @03:48PM (#16127692)
For small transactions, it's often a tolerable risk. You amortize any losses to double-spends and compare that to e.g CC fees.

For larger amounts, you want confirmations, but then it's generally alright to wait a little while for confirmation, too.

Note that replace-by-fee means this only works with Bitcoin Cash.

Re:Bitcoin is no long the only game in crypto-currency town by ericb on Thursday January 11, 2018 @01:17PM (#16126238)
It depends on the use-case. If you look at credit card transactions, they are only "confirmed" after 120 days (when chargebacks become harder...not impossible). A 0-conf transaction will work for all scenarios where you would trust a credit card with about the same amount of certainty. For those other scenarios, 10 minutes is better.
Re:Bitcoin is no long the only game in crypto-currency town by Isomatik on Thursday January 11, 2018 @01:37PM (#16126459)
I think it's really only comparable for online transactions, where all credit card transactions are Card Not Present and you aren't able to 100% guarantee that the delivery went to the correct person or that the card wasn't stolen, making fighting the chargeback sometimes not worth it. A brick and mortar doing swipe transactions should have everything they need to effectively fight chargebacks, so I wouldn't consider that money to be 'gone' the way it would be in a double-spend.
Re:Bitcoin is no long the only game in crypto-currency town by sf_rob on Thursday January 11, 2018 @01:27PM (#16126376)
0-conf isn't fine in many trustless scenarios with Bitcoin because of Replace By Fee.
Re:Bitcoin is no long the only game in crypto-currency town by ericb on Thursday January 11, 2018 @02:11PM (#16126795)
Agreed, but Bitcoin Cash intentionally has not added Replace By Fee for this reason.