Bitcoin Forum
June 23, 2024, 07:41:08 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: There is no problem with a blockchain size?  (Read 180 times)
Mightywill (OP)
Copper Member
Newbie
*
Offline Offline

Activity: 90
Merit: 0


View Profile
July 12, 2018, 08:48:03 AM
 #1

As we know each blockchain transaction has inputs and outputs
If all transaction inputs are spent then these inputs doest not contain important information anymore as it will not participate in any future transactions

And we can find blocks that consists of such transactions only and we can remove all this data preserving only block hash

So this means that a blockchain will not grow forever , it will grow forward but closer to the begining blocks can be replaced by its empty placeholders

Going this way we, of cause, lose transactions history but integrity would be ok
mocacinno
Legendary
*
Offline Offline

Activity: 3430
Merit: 5033


https://merel.mobi => buy facemasks with BTC/LTC


View Profile WWW
July 12, 2018, 08:58:40 AM
Merited by Foxpup (2)
 #2

As we know each blockchain transaction has inputs and outputs
If all transaction inputs are spent then these inputs doest not contain important information anymore as it will not participate in any future transactions

And we can find blocks that consists of such transactions only and we can remove all this data preserving only block hash

So this means that a blockchain will not grow forever , it will grow forward but closer to the begining blocks can be replaced by its empty placeholders

Going this way we, of cause, lose transactions history but integrity would be ok

Why would the integrity be ok? Very simplistic, if each block contains only 1 transaction:
Block 1
coinbase reward funds address 1a creating new unspent output  b

Block 2
unspent output b funds address 1b creating new unspent output c

Block 3
unspent output c funds address 1c creating new unspent output d

If every node in the network would prune block 1 and 2 (since all unspent outputs created by transactions in these blocks were now spent), how would the network ever know about unspent output c? It would be impossible for somebody to verify where unspent output c came from... We would just have to assume unspent output c exists, funds address 1b and is valid?

If you don't like to synchronise your wallet, you can always use an SPV wallet if you want...


█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
passioncrypto
Newbie
*
Offline Offline

Activity: 336
Merit: 0


View Profile
July 13, 2018, 06:53:20 PM
 #3

the technology of blockchain is very useful, not only for the market of crypto currency but for businesses as well. They use it to help in their business practices. The size of the blockchain doesn’t actually matter but rather the safety and the reliability on the blockchians algorithm, this would keep away hackers.
NeuroticFish
Legendary
*
Offline Offline

Activity: 3710
Merit: 6431


Looking for campaign manager? Contact icopress!


View Profile
July 13, 2018, 06:58:02 PM
 #4

And we can find blocks that consists of such transactions only and we can remove all this data preserving only block hash

No. Blockchain is a ledger. If anybody wants to audit some old transactions he has to be able to find them. The blockchain has to have them all.
If you have problems with the size on HDD you can always use pruning. Or, as @mocacinno said, use a SPV wallet like Electrum.

█████████████████████████
████▐██▄█████████████████
████▐██████▄▄▄███████████
████▐████▄█████▄▄████████
████▐█████▀▀▀▀▀███▄██████
████▐███▀████████████████
████▐█████████▄█████▌████
████▐██▌█████▀██████▌████
████▐██████████▀████▌████
█████▀███▄█████▄███▀█████
███████▀█████████▀███████
██████████▀███▀██████████
█████████████████████████
.
BC.GAME
▄▄░░░▄▀▀▄████████
▄▄▄
██████████████
█████░░▄▄▄▄████████
▄▄▄▄▄▄▄▄▄██▄██████▄▄▄▄████
▄███▄█▄▄██████████▄████▄████
███████████████████████████▀███
▀████▄██▄██▄░░░░▄████████████
▀▀▀█████▄▄▄███████████▀██
███████████████████▀██
███████████████████▄██
▄███████████████████▄██
█████████████████████▀██
██████████████████████▄
.
..CASINO....SPORTS....RACING..
dellmoon
Newbie
*
Offline Offline

Activity: 252
Merit: 0


View Profile WWW
July 13, 2018, 07:13:00 PM
 #5

The blockchian technology is extremely important in the market of crypto currency. it holds information and traces where the coins are being transferring. Also the blockchian is now being used by large companies, they are seeking ways to apply the technology of the blockchain into their business ad upgrade their business.
nickmiller
Newbie
*
Offline Offline

Activity: 154
Merit: 0


View Profile WWW
July 14, 2018, 08:07:41 PM
 #6

blockchain is a database which contain input and output both kind transaction so I don't think there should be any problem with it size and it not that keep growing forever so size is not a serious issue or it does fall any direct effect on the trading of coins, this thing cointain the information of your transaction which is important.
criptogenious
Newbie
*
Offline Offline

Activity: 350
Merit: 0


View Profile WWW
July 15, 2018, 05:08:15 AM
 #7

That's an interesting post. But I think under such circumstances the condition of integrity would rather be unstable.
thomaseco
Newbie
*
Offline Offline

Activity: 294
Merit: 0


View Profile
July 20, 2018, 11:07:48 PM
 #8

I don'tthink there would be much problem with transaction size. But, you can do more research on this.
Mightywill (OP)
Copper Member
Newbie
*
Offline Offline

Activity: 90
Merit: 0


View Profile
September 04, 2018, 10:53:54 AM
 #9


If every node in the network would prune block 1 and 2 (since all unspent outputs created by transactions in these blocks were now spent), how would the network ever know about unspent output c? It would be impossible for somebody to verify where unspent output c came from... We would just have to assume unspent output c exists, funds address 1b and is valid?


there is no need "to verify where unspent output c came from" as blockchain integrity guaranteed it's enough to know that this output is not spent yet
mocacinno
Legendary
*
Offline Offline

Activity: 3430
Merit: 5033


https://merel.mobi => buy facemasks with BTC/LTC


View Profile WWW
September 04, 2018, 10:56:24 AM
 #10


If every node in the network would prune block 1 and 2 (since all unspent outputs created by transactions in these blocks were now spent), how would the network ever know about unspent output c? It would be impossible for somebody to verify where unspent output c came from... We would just have to assume unspent output c exists, funds address 1b and is valid?


there is no need "to verify where unspent output c came from" as blockchain integrity guaranteed it's enough to know that this output is not spent yet

Who guarantees the integrity? A central authority? The existing community?
What if a new member decided to join the community, he'd have to trust either the central authority or the "old" community (the community members that once had access to the full blockchain before it was pruned). Doesn't sound like something i'd want to be part of.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
Mightywill (OP)
Copper Member
Newbie
*
Offline Offline

Activity: 90
Merit: 0


View Profile
September 04, 2018, 11:04:16 AM
 #11


Who guarantees the integrity? A central authority? The existing community?
What if a new member decided to join the community, he'd have to trust either the central authority or the "old" community (the community members that once had access to the full blockchain before it was pruned). Doesn't sound like something i'd want to be part of.

It's guaranteed by blockchain itself. You can not add or replace anything in the existing blocks so you can be sure that "this unspent output" is valid since the block which contains this transaction does not break blockchain integrity
mocacinno
Legendary
*
Offline Offline

Activity: 3430
Merit: 5033


https://merel.mobi => buy facemasks with BTC/LTC


View Profile WWW
September 04, 2018, 11:13:15 AM
 #12


Who guarantees the integrity? A central authority? The existing community?
What if a new member decided to join the community, he'd have to trust either the central authority or the "old" community (the community members that once had access to the full blockchain before it was pruned). Doesn't sound like something i'd want to be part of.

It's guaranteed by blockchain itself. You can not add or replace anything in the existing blocks so you can be sure that "this unspent output" is valid since the block which contains this transaction does not break blockchain integrity

It's true that currently, you cannot change anything in a block because it's a blockchain. The header of the next block contains the hash of the header of the previous block, the merkle tree of the transactions, a nonce and some other data that isn't interesting in this discussion.

So, pruning leads to this situation for a newcomer (unless i'm missing somehting here):

Block height x header: version, hash of header of block x-1 that cannot be verified, merkle root, time, nbits, nonce
Block height x+1 header: version, hash of header of block x, merkle root, time, nbits, nonce
Block height x+2 header: version, hash of header of block x+1, merkle root, time, nbits, nonce

It's the very first line that's interesting: nobody can verify that the hash of the header of block (height x-1) is correct, because we collectively pruned that block if we'd followed your proposal. Sure, people that were here since the beginning should have no problem with this, they once stored block height x-1, so there would be no reason not to trust block height x's header...

But if a newcomer would enter the community, he'd just have to assume that block height x's header is valid, but he'd have no way to independently verify this.
This would also mean he'd have no way of knowing his UTXO was built correctly, unless somebody was sending him all historic blocks, which cannot be done if they were collectively replaced by empty placeholders like you proposed.

Now, bitcoin core already allows you to prune your blockchain locally, and as long as some people still store the complete blockchain, everything is fine IMHO. You can even switch to an SPV wallet if you don't want to sync, but the moment everybody prunes the first couple of blocks, new members would have to start trusting other members instead of being able to verify everything themselfs. This might still be fine in the beginning (eventough i think it's not fine), but in the end we'd have to start trusting a decreasing number of people that once stored the very first blocks, centralising the trust to these individuals.
Sure, it's a moving chain, and as long as you were there from the start you can prune whatever you want and still trust the whole system... It's just that if you were not there from the start, and you only trust yourself (like you should do), you're starting to see the problems.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!