7 ms·
I always thought that was a weak argument. There are currently 8403 nodes online if I believe https://bitnodes.21.co/ https://bitnodes.21.co/, that's not exactl
by simias 9y ago
I always thought that was a weak argument. There are currently 8403 nodes online if I believe https://bitnodes.21.co/ https://bitnodes.21.co/, that's not exactly impressive. If a big miner wanted to take over the majority of the nodes they could probably afford to just spawn spawn 10 thousand nodes.
Not that it will do them a lot of good, what matters most is what the exchanges and other important economic entities handling bitcoins consider "the real bitcoin", having a majority of nodes won't do much.
There's simply not enough incentives for Bitcoin users to spawn a node so most people prefer to use a light wallet.
Furthermore ~400GB per year is not particularly insane, you can get a 6TB drive for less than $200 and that'll be enough to store more than 15 years worth of blockchain.
As for bandwidth it amounts to less than 14kB/s on average.
>there could be millions per second if micropayments do take off, and that will most likely happen via the channels as described in the lightning docs
Maybe, but I'm a bit surprised that so many people believe that LN will be successful when we have so little data on how it'll actually work. But I'm going to repeat myself, I already explained my concerns here: https://news.ycombinator.com/item?id=14759965 https://news.ycombinator.com/item?id=14759965 (with some insightful replies).
In particular I can't really imagine how LN could reach a Visa-level number of transactions without having a few mega "nexus nodes" concentrating most of the open LN channels. That would give those nodes some power as they could decide who they pair with (which channels they open) which would be a big blow to the decentralized nature of Bitcoin.
The idea that every bitcoin user would each end up having a handful of channels open and we'd keep routing around the graph (with all the balancing issues it involves) to pay everything seems rather optimistic and aligns poorly with real-world incentives.
- jstanley 9y ago> There's simply not enough incentives for Bitcoin users to spawn a node so most people prefer to use a light wallet. Bitcoin users are important economic entities. There is no distinction between a "consumer" and a "business" in Bitcoin. Everyone is a user. Everyone sends and receives payments.
- ve55 9y agoUsers don't have to run a full node to use it though. I'd bet that most users just use a 3rd party web wallet (such as Coinbase), and thus are contributing nothing to the network in terms of decentralization.
- jstanley 9y agoIn fact there's a happy middle ground: you can run Electrum or similar. These are "SPV" (simplified payment verification) clients. They sync only a small amount of blockchain data, relying on proof-of-work to confirm the data's validity, instead of validating the entire chain from the genesis block. That way you still get to keep control of your keys, and you get a little control over the consensus rules you think are valid, but you don't have to sync the entire chain. This is what most users are likely doing.
- mhluongo 9y agoHighly doubt that's "most" users, considering Coinbase's numbers
- jstanley 9y agoMost Coinbase users will be exchanging on Coinbase and then transferring to their SPV wallet. If that's not the case, then, well... that's what they should be doing. Just because Coinbase has X amount of customers doesn't mean that many people are using Coinbase as a wallet. I'm a Coinbase customer but I don't use Coinbase as a wallet.
- MichaelGG 9y agoIt's definitely not what people are doing. Even as Mt Gox showed, people will just leave it where it's convenient. And for a lot of common users, they probably ARE a lot better off with their coins existing as a row in Coinbase's MongoDB database than as a file on their PC. And I say this as someone that dislikes Coinbase and was burned by them (one day they seized all my coins until I verified ID on login, then erased my bank account connections and refused to delete my PII that I only provided to withdraw my coins in the first place.)
- gtrubetskoy 9y ago> In particular I can't really imagine how LN could reach a Visa-level number of transactions without having a few mega "nexus nodes" I think that's a valid point, but we won't know how it will play out until we actually get there. It seems to me that the "large block" crowd is of the "let's not go there" opinion, but I think they're resisting the inevitable.
- smokeyj 9y ago> I think that's a valid point, but we won't know how it will play out That sounds like a terrible plan. Let it play out on Litecoin or some other toy blockchain. The large block crowd wants the easiest most straight forward way of scaling now. Which isn't to say other solutions aren't welcomed. But it's strange that the Core team has made it an either or. It's weird how in certain forums there seems to be overwhelming support for blockstream - but everyone I meet in real life doesn't have that same enthusiasm.
- MichaelGG 9y agoWell some of the big blockers are against anything that'd prevent ASICBoost (which is a really fun/neat thing, look up the details if you haven't.) That does cast some suspicion on the purity of their motives. But I think the slightly-larger blocksize (8MB) for now is quite reasonable, and the lack of even 2MB size is really indefensible.
- smokeyj 9y agoI don't know much about ASICBoost - but if the reason for changing the PoW algo is because of the US patent system.. then let the US patent system catch up, not the other way around. Bitcoin wasn't designed so that American miners have an equal opportunity.. Who comes up with these ideas
- MichaelGG 9y agoParents aside, I understand AsicBoost encourages empty blocks.
- Taek 9y ago8000 is a misleading number. I do all of my transactions through a full node but my ports are not forwarded and also I only have uptime for about 1/3 of the year (most months it is offline because I'm not using it. I only run it to refill my mobile wallet or make big transactions). When the lightning network is up and running you can bet that I'll be using my full node for that too. 120GB of disk space is a big hit. My drive is a 500GB SSD. Bitcoin runs a lot slower on an HDD. But mostly people saying "oh it's only $5 a month" I feel aren't actually running nodes. It's inconvenient already, the sizes are already hurting adoption, and making the chain bigger is definitely going to make that situation worse.
- simias 9y agoI run a full bitcoin node on a USB3 HDD formatted in fat32 so I understand where you're coming from but it's really not that bad. Sure, when I boot it up after a few weeks offline it takes a little while to resync but so what? If I want to check something in a hurry I can use electrum or some website. And once it's actually synchronized HDD or SSD doesn't matter much in my experience. I don't think it's really a factor in adoption, most users don't feel the need to run a node already. People running nodes are enthusiasts first and foremost.
- Taek 9y ago> most users don't feel the need to run a node already. That's a big part of the issue. Already people prefer to run lite clients for convenience. There are heavy systemic risks that get worse and worse as the number of full nodes decrease. Back room deals become a lot easier for those who do run full nodes, because there aren't enough people running full nodes to prevent unfavorable network changes. One you have synced your node, an HDD isn't a big deal but if you only run your node every few weeks or months you have thousands of blocks to sync each time. Then it's a pain, and SSDs are nicer. (This is my personal situation). I typically only boot my node if I intend to spend or receive coins, the sync time is already frustrating to me on an SSD and i7. You don't want an ecosystem where only enthusiasts are verifying transactions. That's abusable, and if it forms a significant part of the economy it absolutely will be abused.
- user5994461 9y agoIt takes 1 hour to create 10 thousand nodes and it's not particularly expensive. What can you make against bitcoin with that?
- redcalx 9y agoBear in mind that 8000 is the number of nodes accepting connections. There are likely many more nodes connected to the network that are not listening. I base this on the fact that by default each node will attempt to maintain 8 outbound connections, so if each node accepted connections then on average they would each have a total of 16 connections. However, in my experience any node accepting incoming connections will have many more than the additional 8 incoming connections we might expect. I throttle total connections at 64, but unthrottled I've seen it go over 100, admittedly after a few days of uptime.
- darawk 9y ago> I always thought that was a weak argument. There are currently 8403 nodes online if I believe https://bitnodes.21.co/ https://bitnodes.21.co/, that's not exactly impressive. If a big miner wanted to take over the majority of the nodes they could probably afford to just spawn spawn 10 thousand nodes. Simply spawning 10 thousand nodes would not allow someone to take over the network in any sense.
- simias 9y agoThat's exactly my point, yes. I often see people talking about the dangers of not having enough nodes but I think it's wildly overblown. In practice as long as you have at least a few thousand nodes run by a variety of uncooperating users around the globe it should be enough to handle all the transactions and raise an alarm if anybody attempts something foul. The amount of coordination required to carry an attack by taking over the node network seems rather implausible. For one thing you'd have to convince all the big exchanges and the miners to play along and then you'd have to hope that none of the people running the thousand of nodes would see the fork and raise the alarm publicly. It might however make it easier to run "transaction malleability" attacks however but that's an other issue altogether and ought to be fixed in the short term.
- flashdance 9y ago> Furthermore ~400GB per year is not particularly insane, you can get a 6TB drive for less than $200 and that'll be enough to store more than 15 years worth of blockchain. > As for bandwidth it amounts to less than 14kB/s on average. Fourteen kilobytes a second is quite an understatement of the bandwidth needed to operate a bitcoin full node. Remember, nodes don't just download the chain: they also relay unconfirmed transactions and blocks to other nodes, which increases bandwidth requirements by a few orders of magnitude. When I ran a full node a while back it was eating a couple of TB a month. Nowadays that blocks are full I suspect that it's quite a bit more than that.
- simias 9y agoYou don't need to do any of this to secure the network though, it's all about "witnessing" what is the valid blockchain. You could write a dumb node that doesn't deal with unconfirmed transactions and only receive new blocks without relaying them at all. You'd still be able to detect a fork. You could even save some storage by only keeping unspent outputs from old blocks once verified. Anyway, that's not even my main point. I just thing that I think this particular problem is overblown and used as a bogeyman by the opposing party. Not that "big blockers" are without blame, there are insane conspiracy theories on both side and even in between. Hacker news is basically one of the only places where I've seen people being able to discuss these issues on a technical level without going full "the illuminati freemason bankers are trying to destroy bitcoin".
- flashdance 9y ago> You don't need to do any of this to secure the network though. Not doing those things actually weakens the network. If most users operated a node like the one you described, there would be several negative effects on the overall network's health: * It would take longer to relay transactions: full nodes would be less interconnected and there will be more "hops" between any two nodes. This in itself can cause many problems: it gives miners an incentive to centralize geographically (latency increases orphan rate) and can make a 51% attack slightly easier. * The network will become more vulnerable to DoS attacks, because only nodes that relay transactions need to be targeted. * Full nodes will have even higher bandwith requirements, because they will have to relay transactions to more nodes (that don't relay in turn), like a torrent with many leechers. It's kind of like how the development of popcorn time is bad for the health of torrent networks (not the same though, different reasons). > Anyway, that's not even my main point. I just thing that I think this particular problem is overblown and used as a bogeyman by the opposing party. Not that "big blockers" are without blame, there are insane conspiracy theories on both side and even in between. I get it, but I don't think this problem is overblown.
- slackingoff2017 9y ago400 GB a year is notably faster than the average expansion of storage space. The growth of the block chain should ideally be limited to the average yearly increase in storage space on an average PC. I currently run a full node since I have a gigabit connection but I will definitely stop if I need to increase storage space by that much. The current growth rate is maybe a tenth of that. You also need to keep in mind that most residential usage limits are around 400 gigabytes per month. After this change, within a year the vast majority of people will not be able to run nodes outside a datacenter. Within a few years when the blockchain is multiple terabytes it will be nearly impossible to download on a residential connection due to size and especially usage limits.
- elif 9y ago8MB is the maximum size possible for full blocks. BCC supports 2-8MB maximums. the 400GB stat is kind of like calculating how much gas you would use in a year assuming 8000RPM 24/7. Also disk usage arguments still apply to SegWit. For instance: see this 3.7MB block on the test network, containing 468 transactions. https://testnet.smartbit.com.au/block/00000000000016a805a7c5d27c3cc0ecb6d51372e15919dfb49d24bd56ae0a8b https://testnet.smartbit.com.au/block/00000000000016a805a7c5... so if we're extrapolating from worst case scenarios, that's 658GB per year!
- xorcist 9y agoThere might be a misunderstanding here. Capacity does not increase with the number of nodes. The only thing the number of nodes tell you is the amount of users who participate without trusting a third party. This is literally the invention behind Bitcoin. A company that deploys a thousand nodes does absolutely nothing for the network. An end user who deploys just one, and transacts with it, has real value. Discussions around block size always include someone obsessed with storage, and that argument can go both ways. But storage is the least interesting aspect. Increased transactions per second means increased validations per second, which has a number of implications including increased latency in the peer to peer network. This affects mining protocols, orphan rates, mempool size, throttling algorithms etc. There are several interesting aspects, and storage is very far down the list. A lot of work has been done for the past few years to improve that situation, look at the new crypto library for a few concrete examples. This kind of work is what led the developers behind segwit to provide for a quadrupled block size. I am not familiar enough with the details to have an opinion if that is somehow an optimal block size, but that's where we are now that segwit locks in. I don't know what it is about block size that makes everyone and their mother so desperate for an opinion about it. People who have no clue about the underlying protocol or the various scaling properties of the involved algorithms pull a number out of the air and somehow that's their opinion of the matter. There are probably very interesting things to discuss here but it's completely drowned in noise of one single constant.
- simias 9y ago>There might be a misunderstanding here. Capacity does not increase with the number of nodes. The only thing the number of nodes tell you is the amount of users who participate without trusting a third party. This is literally the invention behind Bitcoin. A company that deploys a thousand nodes does absolutely nothing for the network. An end user who deploys just one, and transacts with it, has real value. I completely agree, my point is that even with full 8MB nodes the barrier of entry is not much higher than it is today with 1MB node. Or to put it an other way I don't think we'd have 10 times more nodes if block size was at 100kB. I postulate that the main barrier of entry right not is simply bothering to actually set up a node. At least in the "first world" the average joe has the resources available to run a full 8MB node without having to starve himself, both in terms of bandwidth[0] and storage[1]. So while there's some discussion to be had about what constitutes a safe amount of nodes online (Taek has some interesting points about that elsewhere in this thread) I still think it's pretty irrelevant in this blocksize debate. >But storage is the least interesting aspect. Increased transactions per second means increased validations per second, which has a number of implications including increased latency in the peer to peer network. This affects mining protocols, orphan rates, mempool size, throttling algorithms etc. There are several interesting aspects, and storage is very far down the list. That's a very interesting point and something I hadn't really thought about. I'm surprised though, given that nowadays the rule of thumb is "wait for 5 confirmations before accepting a transfer" it seems to me that the latency between the moment I issue a transaction to the network and the moment it's "mined" into a block is not that significant? I mean, at a rate of 8MB every 10 minutes you have the time to do a lot of crypto work on the nodes... [0] https://www.statista.com/statistics/204952/average-internet-connection-speed-by-country/ https://www.statista.com/statistics/204952/average-internet-... [1] https://www.newegg.com/Desktop-Internal-Hard-Drives/SubCategory/ID-14?Tid=167523 https://www.newegg.com/Desktop-Internal-Hard-Drives/SubCateg...
- dheera 9y ago> Furthermore ~400GB per year is not particularly insane, you can get a 6TB drive for less than $200 and that'll be enough to store more than 15 years worth of blockchain. Not everyone has access to such resources. You and I do, but many people run their lives on PCs with 32GB EMMC soldered to the motherboard, mobile devices, netbooks, public school computers with limited network-based storage, and internet connections that can barely allow a couple gigabytes per month. If a technology is not inclusive of the median hardware possessed by that (large) community, it will not gain traction beyond hackers with like us. Also, the vast majority of people I know do not use desktop computers. Lugging around a 6TB external drive just to deal with payments, and then dealing with backing up that drive, is not exactly a good sell.
- simias 9y agoThose people already can't run bitcoin then, you need more than 100GB of storage currently (I think closer to 160GB now? I don't remember). Good luck running that on your smartphone. So the question is: amongst the people running full nodes today, how many wouldn't be able to cope with 8MB blocks? Also note that 8MB is the max size and blocks could be smaller, I don't expect that 8MB blocks would get fill up in the short term.