HNHacker News
TopNewBestAskShowJobs

Frogolocalypse

499 karma · joined August 8, 2016

submissionscomments
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
Nodes don't mine. There are still many nodes using old client node software. Look.

http://luke.dashjr.org/programs/bitcoin/files/charts/softwar...

I don't think you really understand the relationship between nodes and consensus.

Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
It can be trivially done by the existing miners not committing transactions to the blockchain that they control. Because a single company, bitmain, controls more than 50% of the hashing power of bcash, they would only build on blocks that don't contain transactions from their blacklist.

That is what bcash is right now. A captured blockchain. You transact on it at the sufferance of the chinese government. If you think they won't exert that power, if they think it suits their interests, I'm not sure understanding this will convince you.

Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
Because you don't understand it. Do you think about the connections between your computer and the server you are reading this page from?
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
160,000 nodes have a different view than your selective quote, and they control consensus.
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
I agree. They should be immediately closed. The problem with them is that crypto is a collision between tech and money. It, unfortunately, brings out the worst part of people wanting to get rich. I like yc because it isn't like that, but it just gets brigaded these days.

I would completely respect a complete ban of all crypto discussion on yc. I like the fact that it isn't that.

Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
It's kind of weird really. They think they can make reality go away because they make sockpuppets and try and force an outcome that will make them rich. By being really loud, and not really understanding how any of the technology works. All they do is copy paste things from people they think are smarter than them. Sadly, they are being played by much more experienced shysters and charlatans. Reckon it's mostly kids though.
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
? Sure i did.

> Nodes even define the PoW algorithm that miners have to employ.

Nodes change PoW algorithm and the old miners have expensive loud space heaters. They know this, which is why they didn't follow through on 2x. They knew that threatening that attack leads to one outcome : ruin.

It's a complex subject, sure. But I can't force you to understand how bitcoin works dude.

Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
Decentralized ones are rare. There are lots of centralized blockchains. The centralized ones, with their cheerleaders of pump and dump get rich quick schemes, are constantly trying to convince the unaware that they have the same security model as the decentralized ones. They don't.
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
You fundamentally do not understand how bitcoin works. So let's talk about nodes and consensus as defined in the whitepaper and implemented in nodes. Let's start with the bitcoin white paper (https://bitcoin.org/bitcoin.pdf) :

> Satoshi from the Bitcoin white-paper chapter 12 'Conclusion' : The network is robust in its unstructured simplicity. _Nodes_ work all at once with little coordination. They do not need to be identified, since messages are not routed to any particular place and only need to be delivered on a best effort basis. _Nodes_ can leave and rejoin the network at will, accepting the proof-of-work chain as proof of what happened while they were gone. They vote with their CPU power, expressing their acceptance of valid blocks by working on extending them and rejecting invalid blocks by refusing to work on them. Any needed rules and incentives can be enforced with this _consensus mechanism_.

First, you have to understand what 'consensus' actually means :

> https://en.wikipedia.org/wiki/Consensus_%28computer_science%...

> A fundamental problem in distributed computing and multi-agent systems is to achieve overall system reliability in the presence of a number of faulty processes. This often requires processes to agree on some data value that is needed during computation. Examples of applications of consensus include whether to commit a transaction to a database (or, for example, committing blocks to a blockchain), agreeing on the identity of a leader, state machine replication, and atomic broadcasts. The real world applications include clock synchronization, PageRank, opinion formation, smart power grids, state estimation, control of UAVs, load balancing and others.

What does this mean if you are but an intrepid traveler amongst the erstwhile numpty-folk?

Nodes are agents in a multi-agent system with an agreed set of consensus rules (https://www.cryptocompare.com/coins/guides/how-does-a-bitcoi...), which they and they alone enforce, that ensure that the system functions. Transactions are propagated through the multi-agent network based upon the agreed consensus rules by nodes, which are agents in a multi-agent system. Miners retrieve valid transactions from any of these nodes, which are agents in a multi-agent system. They then order the transactions, and perform a hashing function on them until the hashing function returns a value that is suitable to the nodes, which are agents in a multi-agent system. They then pass the new block that they've created to the nodes, which are agents in a multi-agent system. The nodes, which are agents in a multi-agent system, then validate the block to ensure that each of the transactions within the block agree with the consensus rules. Then the node, which is an agent in a multi-agent system, extends the block-chain by attaching the new block to it. They then pass the new block, if it is valid, to other nodes, which are agents in a multi-agent system. Then each of these other nodes, which are agents in a multi-agent system, each do the same validation on every block.

Nodes accept incoming transactions and validate them. Miners don't. Nodes replicate transactions to other nodes. Miners don't. Miners take transactions from nodes, and order them in a block, and perform a hashing function on them (the only thing they do). Miners pass the new block to the node. The node validates the transactions in the block. Miners don't. The node validates the block. Miners don't. The node extends the blockchain. Miners don't. The node replicates the block to other nodes. Miners don't. It is the validation of the nodes, and their CPU's, that define and police consensus in bitcoin.

There is only one function that miners do. They take transactions, put them in a block, and hash them. As soon as a miner produces a block that nodes don't want, it is rejected. Miners work. Nodes validate. So nodes are the proof in proof-of-work.

Nodes accept the transactions, validate the transactions (using their CPU), replicate the transactions, maintain the mempools, validate the blocks (using their CPU), extend the blockchain (using their CPU), replicate the blocks, serve the blockchain, and store the blockchain. Nodes even define the PoW algorithm that miners have to employ. If you can't convince these node owners that are using their node on a day-to-day basis, to uninstall their node software and install your new node client, especially when that node client decreases their node security and decreases the network security, any change you have is going to go exactly nowhere.

So nodes maintain the protocol, not miners. It is thus. It has always been thus. If you can't convince all of those node owners running their node clients to uninstall one client and re-install another, any change you have to consensus is DOA.

See for yourself. Download it. (https://bitcoin.org/en/download) It's currently at 0.15.1

https://bitcoin.org/en/full-node

> A full node is a program that fully validates transactions and blocks. Almost all full nodes also help the network by accepting transactions and blocks from other full nodes, validating those transactions and blocks, and then relaying them to further full nodes.

Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
No. For the record his name is Luke Dashjr. He's a bitcoin developer, as you probably know.
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
The nodes validate that the work has been undertaken. Therefore, it is the nodes that police and enforce consensus in bitcoin.
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
Nodes define and police consensus in bitcoin, not miners.
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
If people don't understand that bcash is under regulatory capture of the chinese government, then they are not understanding how cryptocurrencies work.
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
> and original vision

Where in the original white-paper is the emergency difficulty adjustment?

https://medium.com/@jimmysong/bitcoin-cash-difficulty-adjust...

> peer-to-peer

If you don't run a node, or you can't run a node because of resource requirements, you're not a peer.

Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
> the userbase that bcash has

The number of transactions on the bcash blockchain gives a different impression of the 'user base'. If you want a faster blockchain with a larger user base, use litecoin. It isn't as secure as bitcoin, because it isn't as decentralized as bitcoin, but at least you don't have all of your purchases recorded (who you are, what you buy, who you buy it from, when you buy it, etc.) by the chinese government. Oh, and you don't have to worry about the chinese government blacklisting your wallet so that they can never be spent either.

Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
> The significant part is that increasing the block size steadily

160,000+ bitcoin nodes are not interested in your centralization scheme, whether it is done 'steadily' or immediately.

Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
paypal works too. I prefer to not record my payments with the chinese government though.
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
There are lots of altcoins that have low fees. When you are getting a single company to process your payments, it is always likely to be at a lower cost. The only question is why they're even bothering to store the information in a blockchain. It would just be easier if they used an SQL database. Without the decentralization, it is the same risk profile. They know who you are, what you're spending your money on, and they can black-list your spending addresses with trivial ease. Like paypal. Just less efficient.
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
A peer, in bitcoin, is a node. If you don't run a node, or indeed if you can't run a node because of its resource requirements, you aren't a peer.

Bitcoin : Peer-to-peer cash.

You went right over the first part, and only talk about the second part, even though in the first part, the word 'peer' is used twice.

Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
bcash handles a fraction of the transactions of either bitcoin or litecoin. If you want a cheap option, litecoin is great. It's been around for years, and isn't controlled by the chinese government. In bcash, the nodes, the developers, the miners, and now the payment processor, are all owned by the same chinese company.

Currently litecoin is processing about four times the transaction count of bcash. They also have a block creation time of 1/4 of the time (2.5 minutes) to bcash or bitcoin (10 minutes), so if speed of confirmation is an issue for you, then they might meet your use-case. It obviously doesn't have the decentralization of bitcoin, but at least it isn't controlled by a single chinese company.

Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
You can still run a 0.8 node on the bitcoin network if you are so inclined, because changes have been implemented via soft-forks. Bcash is a hard-fork of bitcoin. It is not bitcoin, or you would be able to use your existing wallets with it.
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
That's why it was such a compromise. In order to get the massive decentralization and privacy boost of the malleability fix that segwit provided, the blocksize increase was included to give the increase that the classic hard-fork suggested. And it was done as a soft-fork too, which means none of the 160,000+ bitcoin nodes needed to upgrade their software.

And what happened? After they got exactly what they wanted with the doubling of capacity, they said "we want more" which demonstrated the entire exercise had nothing to do with blocksize, but about stealing the blockchain away from its users, and centralizing it in their data-centers. Which is why, months after the segwit implementation, the biggest and loudest people clamouring for a capacity increase for years, which includes bitpay, the subject of this thread, and coinbase, which has been an actively undermining the bitcoin developers for years, have not even implemented the blocksize increase. So much for blocksize being important.

Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
https://t4.ftcdn.net/jpg/00/01/72/17/240_F_1721760_5oY3RSyLM...
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
It's no more complex than running any other bitcoin wallet. It is, after all, bitcoin. The only difference really is that lightning is instantaneous and immutable, where blockchain transactions require you to wait until a transaction has been confirmed in the relevant blockchain in order to be secure.

And no-one will force you to use it. If you choose to continue using bitcoin transactions natively, no-one is going to stop you.

Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
Eth nodes are a quarter of what they were nine months ago. Most people can't even sync a node anymore. None of this is a surprise. This is exactly the outcome expected with unrestrained blockchain expansion. Bitcoin is about decentralization. Every other altcoin, it would seem, is about trying to invent an inefficient paypal.
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
I would suggest actually learning how it works before commenting on it.

Lightning allows users to take a single bitcoin transaction, and use it over a finite space of time, in order to shift bitcoin back and forth, with no or vanishingly small transaction fees, as iou's between what are called 'lightning channels'. The actual transaction size will be the same as a normal transaction, with a flag that says it can only be committed to the blockchain at a specific time (or block depth). In effect, these lightning transactions are cryptographically signed 'iou's. The 'thousands' of back-and-forth iou changes are discarded when the channel is closed (massive privacy dividend), and only the aggregated change is committed to the blockchain. This is the great thing about lightning. It is a single transaction with as many inputs and outputs (one/two) as defined in the original transaction. Only the transaction values change.

Consider a channel link of this : John->Bob->Sally->Anne. Only the people next to each other in the chain have a 'channel open' with each other (John/Bob, Bob/Sally, Sally/Anne). Assuming each of the channels between all of the participants have adequate funds in order to achieve this, if John wanted to send 1btc to Anne. A transaction ledger would read :

John->Bob channel : John -1btc, Bob +1btc

Bob->Sally channel : Bob -1btc, Sally +1btc

Sally->Anne channel : Sally -1btc, Anne +1btc.

Anne now has 1btc more, and John has 1btc less, but the net effect in each channel is simply a modification to the distribution of bitcoin in that channel.

Imagine this happening, back and forth, and extended to thousands, tens of thousands, and millions of people. As long as there's a chain between them, you use the chain. You might even have your transaction split over multiple chains. For links that don't have a chain, you create a channel on-the-fly.

Each channel, therefore, only ends up with the same single input, and the same two outputs, just differing values.

It's significantly more complex than that (transaction routing, and channel closure mechanics), but that's the idea. I wish I could remember the lightning dev that explained it. It really is very clever. I haven't actually questioned about the effect of having channels with multiple inputs (John/Sally) and outputs (Bob/Anne) at inception. Technically, I can't see any reason why this wouldn't be possible. Just a much weirder set of ramifications.

I would suggest that the method for creating ln channels is most likely : Carol wants to pay Bob 0.5btc. She creates a ln channel with 1btc, of which Bob is allocated 0.5btc, and carol is allocated 0.5btc. Bob gets paid 0.5btc that is accessible once confirmed. Carol has 0.5btc that is now accessible once confirmed. That way the ln can be bootstrapped by existing txns.

I'd also suggest that it would be easier to understand if Bob were Bob Inc. The incentive will be for the buyer to reduce txn fees. If Carol uses a store (coffee?) she will want to reduce paying those fees. So she creates a channel with 0.1btc and 0.001 is allocated to Bob Inc. For the coffee she buys today, coffee + txn fee. Ever more? Zippo txn fee. When your channel is almost zero, you buy bitcoin, it is delivered back to you by the rebalancing of that channel. And because it's Bob Inc the path through the channels from a source of bitcoin is reduced, maybe even two hops ( exchangeA/exchangeB -> exchangeB/Bob Inc. -> Bob Inc./Carol).

Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
The difference of course, is that bitcoin isn't a company. And the arpanet turned into the internet. But companies come and go. By your analogy, raytheon owns the internet.
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
Because bcash is overwhelmingly run by bitmain, a chinese company, at every point in its service delivery. The miners, the nodes, and now the payment processor are all one chinese company. It is also not surprising that they have specifically disabled the privacy improvement of segwit in their altcoin. So no atomic cross-chain swaps are possible either. It is a walled garden where they control all of the access.
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
I only accept solutions that don't affect decentralization.
Frogolocalypse··on BitPay Will Process Payments on Multiple Blockchains, Starting with Bitcoin Cash
There is nothing stopping you creating your own super duper side chain if you think you have a better solution. It is open source after all.
← PreviousPage 2 of 21Next →