Bitcoin Forum
April 25, 2024, 01:34:03 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Coins checking and snapshotting  (Read 9495 times)
eurekafag (OP)
Full Member
***
Offline Offline

Activity: 185
Merit: 100


View Profile
July 19, 2010, 05:29:51 AM
 #1

The number of bitcoins is limited (this number is big but anyway it's finite). So, I'm interested is there a way to recover lost coins by periodically pinging coins via special blocks? For example, your client once per month inserts pong packet with your coins numbers and if there were no pongs from particular coin within a month it's counted as lost and can be used again (generated?). Sorry, I don't fully understand the overall mechanic but maybe it's a way or at least a point to think of.

Another serious question is a snapshotting of coin state. The chain will grow long over time and the client should check it from the beginning to the end to validate each transaction. Things will be slower and slower and eat up diskspace and traffic. I guess each client can make a snapshot at any time and assign all bitcoins to their owners, then form a new basic state to start with. This state will be sent to all new clients (it won't grow so fast because it directly depends on owners number, not on transactions made). To prevent scamming this snapshots should be confirmed by lot of clients, which will make this snapshot individually (for example, each 100000 blocks) and the most complied will be accepted.

Let's discuss. I'm not sure if all of this possible, but anyway tell what you think about this.
Whoever mines the block which ends up containing your transaction will get its fee.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714008843
Hero Member
*
Offline Offline

Posts: 1714008843

View Profile Personal Message (Offline)

Ignore
1714008843
Reply with quote  #2

1714008843
Report to moderator
1714008843
Hero Member
*
Offline Offline

Posts: 1714008843

View Profile Personal Message (Offline)

Ignore
1714008843
Reply with quote  #2

1714008843
Report to moderator
Bitcoiner
Member
**
Offline Offline

Activity: 70
Merit: 11


View Profile
July 19, 2010, 05:18:22 PM
 #2

The number of bitcoins is limited (this number is big but anyway it's finite). So, I'm interested is there a way to recover lost coins by periodically pinging coins via special blocks? For example, your client once per month inserts pong packet with your coins numbers and if there were no pongs from particular coin within a month it's counted as lost and can be used again (generated?). Sorry, I don't fully understand the overall mechanic but maybe it's a way or at least a point to think of.

...

Let's discuss. I'm not sure if all of this possible, but anyway tell what you think about this.

I think we just need to deal with the loss as an effect of the network. What if somebody doesn't respond to a pong cause they're on vacation or away from the internet for some reason? Not too cool if they suddenly find that their coins belong to someone else. Once someone has coins, it's their property for all time unless spent.

The number of bitcoins isn't an issue cause we can conceivably use millicoins, microcoins, nanocoins, etc...

Want to thank me for this post? Donate here! Flip your coins over to: 13Cq8AmdrqewatRxEyU2xNuMvegbaLCvEe  Smiley
eurekafag (OP)
Full Member
***
Offline Offline

Activity: 185
Merit: 100


View Profile
July 19, 2010, 08:27:43 PM
 #3

I know that they are divisible but it's good to look forward. There must be at least a conception to work around coins loss. I don't speak about implementation, just about the possibility of such things in the current design. Don't know if there are special packet types to make requests or anything that is currently not implemented (by inserting them into the chain) that's what this thread about.

And what about snapshotting? I read the paper, Satoshi-san wrote that old transactions are packed into Merkle trees and therefore gets about 4 Mb per year. Looks just perfect but to be profitable it should affect not only diskspace but also bandwidth. Current download speed of all chain isn't fast. I personally downloaded about 10 hours, however I can get about 240 kbytes down and up simultaneously. Of course, new releases may include the chain to date but it's a bit against the p2p spirit to my point of view. Snapshots that peers themselves create and spread would be better. Just all coins state in one big block (looks like this or something close is already implemented in database but it's all local and newcomers have to download the whole chain which is perfectly long in terms of time).
Bitcoiner
Member
**
Offline Offline

Activity: 70
Merit: 11


View Profile
July 20, 2010, 12:32:44 AM
 #4

I know that they are divisible but it's good to look forward. There must be at least a conception to work around coins loss. I don't speak about implementation, just about the possibility of such things in the current design. Don't know if there are special packet types to make requests or anything that is currently not implemented (by inserting them into the chain) that's what this thread about.

And what about snapshotting? I read the paper, Satoshi-san wrote that old transactions are packed into Merkle trees and therefore gets about 4 Mb per year. Looks just perfect but to be profitable it should affect not only diskspace but also bandwidth. Current download speed of all chain isn't fast. I personally downloaded about 10 hours, however I can get about 240 kbytes down and up simultaneously. Of course, new releases may include the chain to date but it's a bit against the p2p spirit to my point of view. Snapshots that peers themselves create and spread would be better. Just all coins state in one big block (looks like this or something close is already implemented in database but it's all local and newcomers have to download the whole chain which is perfectly long in terms of time).

Agreed about including chain in the download, or at least improving the download algorithm.

I still stand by coins remaining a person's property until the end of time; there should be no need to periodically "claim" coins to preveotn them from taken and given to someone else. Deflation in terms of lost coins shouldn't be too big of a deal; even if it happens, it will be on a % basis so the value will simply adjust upwards in compensation. Physical gold gets lost all of the time. We'll just have to make sure that backup and replication schemes are easy to use (perhaps even on by default) in order to make it difficult for this to happen.

Please see the other threads about deflation as these concerns have been addressed Wink

Want to thank me for this post? Donate here! Flip your coins over to: 13Cq8AmdrqewatRxEyU2xNuMvegbaLCvEe  Smiley
eurekafag (OP)
Full Member
***
Offline Offline

Activity: 185
Merit: 100


View Profile
July 20, 2010, 05:37:52 AM
 #5

Well, it's hard to estimate the coins lost so we don't know how many of them currently circulate. Anyway, I'm just interested in _possibility_ of such reclaiming, I don't insist it should be done in the software in any way. Just in theory, can we somehow check when the particular coin was spent last time? If yes, then if (when) in future we'll have too few coins left, there will be a way to reclaim that were lost. The timestamps are stored in blocks, AFAIK, so it may be possible. The check period may be a year or so, if you didn't run your client within a year at least once, your wealth will be treated as lost. To confirm your ownership you can (for example) make a transaction to the special address that won't be counted but accepted as pong. As it will be done once a year, it won't overload the network. Will this scenario potentially work or I completely misunderstand some principles?
Bitcoiner
Member
**
Offline Offline

Activity: 70
Merit: 11


View Profile
July 20, 2010, 11:34:39 AM
Last edit: July 21, 2010, 03:34:32 AM by Bitcoiner
 #6

Well, it's hard to estimate the coins lost so we don't know how many of them currently circulate. Anyway, I'm just interested in _possibility_ of such reclaiming, I don't insist it should be done in the software in any way. Just in theory, can we somehow check when the particular coin was spent last time? If yes, then if (when) in future we'll have too few coins left, there will be a way to reclaim that were lost. The timestamps are stored in blocks, AFAIK, so it may be possible. The check period may be a year or so, if you didn't run your client within a year at least once, your wealth will be treated as lost. To confirm your ownership you can (for example) make a transaction to the special address that won't be counted but accepted as pong. As it will be done once a year, it won't overload the network. Will this scenario potentially work or I completely misunderstand some principles?

It's not really necessary. Each coin right now is divisible into 100 000 000 parts, so in reality we have 2 100 000 000 000 000 (2.1 quadrillion) coins. Even with a total value of 10 billion dollars, the smallest part is only worth 0.0004762 of a cent. Even if we lose 99.99% of all coins (a heck of a feat), then the smallest part will be worth 4.762 cents. A loss of resolution, to be sure, but not the end of the world. There is already talk of extending the precision which would make this problem moot.

There is also no need for us to "know" whether the coins are lost or not. My problem with the whole idea of "checking ownership" is that it's exactly the type of feature that could be open for abuse. In any cash system, people should be able to hold on to their cash for as long as they wish without worrying about whether the system will yank their coins out from under them. Losing coins or not spending them has the same effect on supply and demand. Imagine if you had a ton of gold and either buried it in the ground or dropped it into the ocean in the middle of the sea. You are removing that gold from circulation. It has the same effect on supply and demand, so long as you don't pretend you still have the gold and use it as collateral or make loans based on it Wink


2100000000000000

Want to thank me for this post? Donate here! Flip your coins over to: 13Cq8AmdrqewatRxEyU2xNuMvegbaLCvEe  Smiley
ByteCoin
Sr. Member
****
expert
Offline Offline

Activity: 416
Merit: 277


View Profile
July 21, 2010, 02:31:39 AM
 #7

Another serious question is a snapshotting of coin state.

Dear eurekafag,

I liked your snapshotting idea so much that I stole it for myself, mashed it around a little, called it "Balance sheets" and posted it here.

http://bitcointalk.org/index.php?topic=505.0

I hope you like it.

ByteCoin
eurekafag (OP)
Full Member
***
Offline Offline

Activity: 185
Merit: 100


View Profile
July 22, 2010, 05:02:46 AM
 #8

2100000000000000

Well, sounds pretty convincing. The interesting point is how many circulating coins there will be in the world after some years... We'll see.

Dear eurekafag,

I liked your snapshotting idea so much that I stole it for myself, mashed it around a little, called it "Balance sheets" and posted it here.

http://bitcointalk.org/index.php?topic=505.0

I hope you like it.

ByteCoin

I'm happy that you build a nice idea upon mine. There is many points to discuss so I'll answer there.
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!