5 ms·
Somewhat related: The size of a chain will be constantly growing, right? How fast, and will it be a problem?
by maaaats 13y ago
Somewhat related: The size of a chain will be constantly growing, right? How fast, and will it be a problem?
- igrigorik 13y agoYes, it will be. The rate itself obviously depends on number of transactions and amount of data per transaction.. Both of those are specific to your implementation. That said, as a reference, a Bitcoin transaction today is anywhere between ~160~1000 bytes, and the full block chain is on the order of tens of GBs. Is that a problem? It can be. To address this, Bitcoin uses Merkle trees and "Simple Payment Verification" (SPV) -- worth looking into, if you're interested.. long discussion on its own. I'll just note that SPV changes what you can say about integrity/security of the transaction.
- uptown 13y agoDo implementations such as BitMessage avoid this problem by setting a finite "life" of messages in the network? I believe after about two days messages expire.
- sirsar 13y agoBitmessage does not use a blockchain. Rather, every peer receives an encrypted copy of every recent message, then attempts to decrypt it. Messages not intended for a specific peer are deleted from its memory after 2.5 days. This does mean that storage is proportional to message rate, rather than total number of messages, essentially solving the storage problem until someone with a lot of resources decides to flood the network with a high rate.
- deleted 13y ago[deleted]
- shazow 13y agoIt depends on what the chain is storing and whether there is value in archiving the full history. There are really two parts to the Blockchain: 1. Header, which includes the hash of the contents and other metadata like the previous node in the chain, etc. 2. Contents, which is what the miner chose to validate when the block was mined. In Bitcoin, this includes a set of transactions (a step from a graph of inputs and outputs). The contents could potentially be pruned by only keeping track of unspent transaction outputs, but this removes the ability to validating the headers (ie. hashing all the transactions to check if the header metadata matches) except for the fact that there are other headers on top of it. The set of blockchain headers will continue to grow, unless there is a new genesis block—this is like a forced snapshot of the current state of the relevant content of the network. In Bitcoin, it would include all the current unspent transaction inputs. There are several blockchain technologies like Mastercoin which attempt to completely decouple the notion of a content specification from the blockchain headers themselves. That means you could conceivably send all kinds of garbage that would get happily signed by the miner but the contents would be ignored by any client that is not interested in it. (Disclaimer: This is written off the top of my head and I gotta run, so it may be somewhat inaccurate.)
- ars 13y agoIt's already a problem. Bitcoin is around 20GB right now - it means you can't have a full bitcoin client on a cheap USB key anymore. (A common security recommendation to avoid hacks.) If you have more than one currency installed on your computer you might use 100GB or more for them. It fits, but it's starting to become a significant % of a typical hard disk. (Although presumably people with lots of wallets are not typical and have larger disks.)
- warfangle 12y agoYou certainly can have it on a cheap USB key. PNY has a 32gb usb key for $13 (about 0.029btc).
- ars 12y agoFor how long? The blockchain is growing at something like 2GB per month - and getting faster.
- glitch003 12y agoIf you're storing the entire blockchain on a USB key to "avoid hacks", you're doing it wrong. An offline live-CD or USB key has no need to store the entire blockchain if you just want to store coins and keep them safe.
- ars 12y agoHow would you initiate any transactions from your live-key if you don't have the client installed? And the client needs the entire block chain. (I'm aware of light clients that work with a server, but that's not the standard.) You can store the wallet cold on a usb key, certainly, but that's not the use case here. The use case here is a usb-key you boot ONLY for bitcoin, and nothing else. No web browser, no nothing, just the bitcoin client. This is recommended if you are on windows, or if you aren't certain you can secure your computer (most people can't).
- Dylan16807 12y ago
- qnr 12y agoIt's definitely not a problem right now. With the current block size limit (and blocks are currently filled less than 50%), it will take at least 20 years to surpass 1 terabyte. Bitcoin has to become much, much more successful (think hundreds of millions of users) for the blockchain size to ever become a problem.