Pages:
Author

Topic: Is it possible to restart the blockchain? (Read 759 times)

sr. member
Activity: 840
Merit: 252
I guess creating a new blockchain is what you are talking about and also if you are talking about restarting you also saying that to delete the history of bitcoin. The history transactions in bitcoin is the prove why it is trusted. I don't think that restarting it will be the best decision.
legendary
Activity: 3514
Merit: 1280
English ⬄ Russian Translation Services
February 17, 2019, 03:57:35 PM
#65
I was thinking about the ways to make the blockchain smaller, and the most obvious and simplest solution that I came up with consists in restarting the blockchain one day. For example, we can start with an empty blockchain every year with only initial balances written on it and without any transactions. I think that would make the whole network more reliable, while full nodes easier to maintain

Of course, the previous blockchains should be available at all times as well, whoever may need them. We may have to tie them up into one whole using links or whatever so that we could always trace all transactions back to the genesis block. Note that we don't necessarily have to restart with an empty blockchain as we can, for example, save the last 2-3 years of transactions once the blockchain is restarted

Is this a good idea?

If you are talking about linking an old blockhain to a new one, then there are a couple of things you should be aware of.

Primarily, expect the old one to die, because of the massive migration of people form the old one to the new one

Well, I'm not sure if the term "die" is correct here

We are basically freezing the old blockchain, even setting in stone, figuratively speaking. So how can it possibly die when we are in fact making it eternal, indestructible and irreversible? You can think of it as a read-only archive to get a better understanding of what I propose here

So if anyone is interested in old transactions, that being an academic interest and idle curiosity (for example, to see how it all started 100 years ago), they can easily download the first 50 years of Bitcoin transactions to their brain circuitry and relive the history
copper member
Activity: 47
Merit: 0
February 17, 2019, 01:02:31 PM
#64
I was thinking about the ways to make the blockchain smaller, and the most obvious and simplest solution that I came up with consists in restarting the blockchain one day. For example, we can start with an empty blockchain every year with only initial balances written on it and without any transactions. I think that would make the whole network more reliable, while full nodes easier to maintain

Of course, the previous blockchains should be available at all times as well, whoever may need them. We may have to tie them up into one whole using links or whatever so that we could always trace all transactions back to the genesis block. Note that we don't necessarily have to restart with an empty blockchain as we can, for example, save the last 2-3 years of transactions once the blockchain is restarted

Is this a good idea?

If you are talking about linking an old blockhain to a new one, then there are a couple of things you should be aware of.

Primarily, expect the old one to die, because of the massive migration of people form the old one to the new one.
Additionally, it would just end up as starting from the UTXOs, which i don't know if you really want.
legendary
Activity: 3514
Merit: 1280
English ⬄ Russian Translation Services
February 14, 2019, 04:37:07 AM
#63
I appreciate the idea but I honestly believe that we can focus on improving infrastructure and technological advancements would be the prime factor in the expansion of the essential infrastructure. In other words, instead of reducing the size of essential data, we should adopt better hardware (storage) and upgrade to 4G, 5G would make the data transfer easier and faster reducing the need of elimination of data in the coming decades

I see it pretty much like on-chain scaling

That is, instead of solving the problem in its entirety without any extreme expenses (by pruning the blockchain as required), you are basically postponing it by funneling even more resources into it and making it only more burdensome in the future. And I'm not sure how 4G and 5G are going to help here when the Internet speeds in most parts of the world are still around 1 mb per second (or even below that)
sr. member
Activity: 1316
Merit: 379
Fully Regulated Crypto Casino
February 14, 2019, 03:45:47 AM
#62
The idea of making the blockchain work faster is definitely a great one. However, I don't think it is necessary to build a new one entirely. These are what normally accounts for updates. Whatever is done to make it work can be synchronized with this existing one to make adjustments in the codes and that will automatically work, else it will turn to hard fork or soft fork.
legendary
Activity: 3514
Merit: 1280
English ⬄ Russian Translation Services
February 14, 2019, 02:51:04 AM
#61
That's the point I never forget to mention

Which is that we now have to cope with a lot of let's call them "legacy" shortcomings, which were basically trade-offs back in the day (so they were justified, to a degree). But now they have grown into real roadblocks and obstacles as they weren't disposed of later in due course. And the worst thing is that we will see our problems multiplied in the future unless we efficiently get rid of them before it is too late

Could you give a couple examples?

You can find an article in the Internet by some prominent digital money proponent where he explains why Bitcoin succeeded despite being mostly a bunch of trade-offs. He claims that Bitcoin was successful specifically because it didn't try to be a perfect solution

I didn't save the article, but it is pretty well known

So why do we shut our eyes to these future problems? As they say, prevention is better than cure (and I totally agree with that)

With millions of users and so many different stakeholders with different interests, we should expect drastic changes to the protocol to be controversial. The people who have so far opted into Bitcoin agreed to the current rules, right? Changing them isn't so easy with such a diverse ecosystem

Actually, I'm perfectly fine with that myself

What I'm not fine with is when people start complaining about stalled adoption and at the same refusing to accept that this is an inevitable result of this approach. For example, I can't really expect Bitcoin to become a world money if it would depend on a bunch of rogue miners, end of story. If this is a goal (as claimed), then we should do something to actually get there, right? And that means change, sometimes even radical change
hero member
Activity: 1190
Merit: 534
February 14, 2019, 02:03:23 AM
#60
I appreciate the idea but I honestly believe that we can focus on improving infrastructure and technological advancements would be the prime factor in the expansion of the essential infrastructure. In other words, instead of reducing the size of essential data, we should adopt better hardware (storage) and upgrade to 4G, 5G would make the data transfer easier and faster reducing the need of elimination of data in the coming decades.
hero member
Activity: 1582
Merit: 670
February 14, 2019, 01:53:44 AM
#59
I don't know how is completely works but I think you are mentioning about a new block but no history. If I know truely, we have one now. GRIN blockchain network works like that. Every block only includes its data and it never keeping on its blockchain. Every new block, brings new data but no one of them storing in network. So old data will be gone when every new block come.

It maybe good but also has risks. If someone can hack network, then this poeple can create a false data on next block. I said, I don't know how it is working. Only basic level. But I don't think it will be usefull.

thanks for bringing up grin---interesting example that's sort of related to what the OP is talking about. there is definitely some inherent scalability value in being able to safely remove all spent outputs from the network. everything could be stored, downloaded and fully validated more quickly that way (this is why people run pruned clients of course).

but grin can do this because it has a different security model than bitcoin, based on homomorphic encryption. validation includes verifying that the sum of all inputs = the sum of all outputs (plus mining fees). in this way, there is no public ledger like bitcoin has; transaction information can be removed.

to do this in bitcoin, we would need to hard fork to a different security model---pretty contentious. i'd rather just see sidechains with confidential transaction/mimblewimble capability, and let people prune on the mainchain as needed.

I am not sure that GRIN is a good example for blockchain works. And not sure again it is good or not. We learnt Bitcoin is a decentralized, transparent and traceable. So with this ideas, we will be remove traceable features from blockchain network. So it never be able to use for payment. Because there will be no proof with next block! I mean we need this security model? Is it against with Bitcoin and crypto logic?
legendary
Activity: 1666
Merit: 1196
STOP SNITCHIN'
February 14, 2019, 12:27:48 AM
#58
That's the point I never forget to mention

Which is that we now have to cope with a lot of let's call them "legacy" shortcomings, which were basically trade-offs back in the day (so they were justified, to a degree). But now they have grown into real roadblocks and obstacles as they weren't disposed of later in due course. And the worst thing is that we will see our problems multiplied in the future unless we efficiently get rid of them before it is too late

Could you give a couple examples?

Many people think of the block weight limit as an obstacle, but it serves an important economic purpose. Many people think POW is wasteful -- all the more because it's not capable of scaling node resource usage with sharding or similar models -- but undoubtedly it's still the most secure model for consensus. That seems like a fine trade-off to me.

So why do we shut our eyes to these future problems? As they say, prevention is better than cure (and I totally agree with that)

With millions of users and so many different stakeholders with different interests, we should expect drastic changes to the protocol to be controversial. The people who have so far opted into Bitcoin agreed to the current rules, right? Changing them isn't so easy with such a diverse ecosystem.
full member
Activity: 616
Merit: 100
February 13, 2019, 09:45:47 AM
#57
blockchain system on bitcoin? i think it can;t i think blockchain system is irreversible, even it reversible, when you restart the blockchain system the bitocin, the state of bitcoin will restart, and it will start with 0 again
newbie
Activity: 5
Merit: 0
February 13, 2019, 07:52:43 AM
#56
I was thinking about the ways to make the blockchain smaller, and the most obvious and simplest solution that I came up with consists in restarting the blockchain one day. For example, we can start with an empty blockchain every year with only initial balances written on it and without any transactions. I think that would make the whole network more reliable, while full nodes easier to maintain

Of course, the previous blockchains should be available at all times as well, whoever may need them. We may have to tie them up into one whole using links or whatever so that we could always trace all transactions back to the genesis block. Note that we don't necessarily have to restart with an empty blockchain as we can, for example, save the last 2-3 years of transactions once the blockchain is restarted

Is this a good idea?
You've got to bear in mind is that a blockchain is strong because in order to change the most recent block, you have to change data in all the previous blocks. If we reset to one block it will be easier for a bad actor to maliciously change the new block's data.

I like your thinking though and I'm sure there's some smart brain out there that could work out a way to implement your idea while avoiding the problem you discussed. Maybe start with x blocks, where x equals the minimum viable amount of blocks to guarantee security.
full member
Activity: 700
Merit: 100
February 13, 2019, 07:09:10 AM
#55
I was thinking about the ways to make the blockchain smaller, and the most obvious and simplest solution that I came up with consists in restarting the blockchain one day. For example, we can start with an empty blockchain every year with only initial balances written on it and without any transactions. I think that would make the whole network more reliable, while full nodes easier to maintain

Of course, the previous blockchains should be available at all times as well, whoever may need them. We may have to tie them up into one whole using links or whatever so that we could always trace all transactions back to the genesis block. Note that we don't necessarily have to restart with an empty blockchain as we can, for example, save the last 2-3 years of transactions once the blockchain is restarted

Is this a good idea?

With the current technologies we have in this field, I can say this is not impossible. But it will clearly defeat one of the pros of using it, which is Transparency. But I guess it wouldn't much make sense if they can delete it and retrieve it afterward, after all, that is one way of describing what a ledger is. It starts with a new balance, definitely bigger that the previous ones.
legendary
Activity: 3514
Merit: 1280
English ⬄ Russian Translation Services
February 13, 2019, 05:49:37 AM
#54
but grin can do this because it has a different security model than bitcoin, based on homomorphic encryption. validation includes verifying that the sum of all inputs = the sum of all outputs (plus mining fees). in this way, there is no public ledger like bitcoin has; transaction information can be removed.

to do this in bitcoin, we would need to hard fork to a different security model---pretty contentious. i'd rather just see sidechains with confidential transaction/mimblewimble capability, and let people prune on the mainchain as needed

That's the point I never forget to mention

Which is that we now have to cope with a lot of let's call them "legacy" shortcomings, which were basically trade-offs back in the day (so they were justified, to a degree). But now they have grown into real roadblocks and obstacles as they weren't disposed of later in due course. And the worst thing is that we will see our problems multiplied in the future unless we efficiently get rid of them before it is too late

And the Bitcoin blockchain growth is one such potential mine. Indeed, if Bitcoin continues as before, i.e. without any real adoption, that is unlikely to become a real problem in the foreseeable future. But we all expect it to become something else, right? So why do we shut our eyes to these future problems? As they say, prevention is better than cure (and I totally agree with that)
full member
Activity: 476
Merit: 102
February 13, 2019, 04:56:28 AM
#53
This is too technical for an ordinary cryptocurrency enthusiast, however I will try to contribute my opinion on this topic. 10 years ago the bitcoin blockchain was born and many said that it is worthless and it is just another geeks minds idea that will not last the moment of its birth. Anyway 10 years and it is still being rejected that it will soon die. To restart the blockchain is possible but it will cause another fear, uncertainty and doubt to the cryptocurrency enthusiast. Having this idea is a selfish initiative that only takes the advantage of every person who believes in the blockchain technology that is now a phenomenon and might give fair opportunity to everyone.
legendary
Activity: 1652
Merit: 1483
February 13, 2019, 04:42:18 AM
#52
I don't know how is completely works but I think you are mentioning about a new block but no history. If I know truely, we have one now. GRIN blockchain network works like that. Every block only includes its data and it never keeping on its blockchain. Every new block, brings new data but no one of them storing in network. So old data will be gone when every new block come.

It maybe good but also has risks. If someone can hack network, then this poeple can create a false data on next block. I said, I don't know how it is working. Only basic level. But I don't think it will be usefull.

thanks for bringing up grin---interesting example that's sort of related to what the OP is talking about. there is definitely some inherent scalability value in being able to safely remove all spent outputs from the network. everything could be stored, downloaded and fully validated more quickly that way (this is why people run pruned clients of course).

but grin can do this because it has a different security model than bitcoin, based on homomorphic encryption. validation includes verifying that the sum of all inputs = the sum of all outputs (plus mining fees). in this way, there is no public ledger like bitcoin has; transaction information can be removed.

to do this in bitcoin, we would need to hard fork to a different security model---pretty contentious. i'd rather just see sidechains with confidential transaction/mimblewimble capability, and let people prune on the mainchain as needed.
hero member
Activity: 1582
Merit: 670
February 13, 2019, 01:28:41 AM
#51
I was thinking about the ways to make the blockchain smaller, and the most obvious and simplest solution that I came up with consists in restarting the blockchain one day. For example, we can start with an empty blockchain every year with only initial balances written on it and without any transactions. I think that would make the whole network more reliable, while full nodes easier to maintain

Of course, the previous blockchains should be available at all times as well, whoever may need them. We may have to tie them up into one whole using links or whatever so that we could always trace all transactions back to the genesis block. Note that we don't necessarily have to restart with an empty blockchain as we can, for example, save the last 2-3 years of transactions once the blockchain is restarted

Is this a good idea?

You are talking about another Blockchain which will connect the old blockchains.  
The current blockchain will be always a lighter one but when you add old year's blockchains then it becomes the usual one

Well, I actually didn't mean like we should literally link them together (like one after another into one big file). It should be more like having a few separate blockchains on your hard disk. Each of these "closed" or "locked" blockchains would provide an entry and exit point (sort of) that would allow some application to run over a chain of transactions starting from the very first block and ending with the most recent one (or in the opposite direction)

The point is to remove information which is not required for current operation

I don't know how is completely works but I think you are mentioning about a new block but no history. If I know truely, we have one now. GRIN blockchain network works like that. Every block only includes its data and it never keeping on its blockchain. Every new block, brings new data but no one of them storing in network. So old data will be gone when every new block come.

It maybe good but also has risks. If someone can hack network, then this poeple can create a false data on next block. I said, I don't know how it is working. Only basic level. But I don't think it will be usefull.

What you're talking about is fundamentally against the principle of running a blockchain, and it's doubtful what its benefit which is obtained by doing something like that. Blockchain is registered on a lot of computers and it is very difficult for all of these records to be deleted or accepted to change by everyone.

Actually, it is not against. It is about working proof. And it is important how can you create. I don't say good but possible.
legendary
Activity: 3514
Merit: 1280
English ⬄ Russian Translation Services
February 12, 2019, 10:12:24 PM
#50
What you're talking about is fundamentally against the principle of running a blockchain, and it's doubtful what its benefit which is obtained by doing something like that. Blockchain is registered on a lot of computers and it is very difficult for all of these records to be deleted or accepted to change by everyone

How is that fundamentally against the principle of running a blockchain?

Care to explain? When I suggest that some transactions can be made reversible (please note, I don't speak about all transactions), people start telling that it is against the idea of blockchain (and I conceptually agree with them). But when I start talking about making older transactions completely irreversible (via checkpoints or otherwise), other people (though I wouldn't be in the least surprised if they turned out to be the same people actually) start telling me that it is against the principle of running a blockchain. That doesn't feel quite right, does it?
hero member
Activity: 896
Merit: 630
February 12, 2019, 03:52:44 PM
#49
What you're talking about is fundamentally against the principle of running a blockchain, and it's doubtful what its benefit which is obtained by doing something like that. Blockchain is registered on a lot of computers and it is very difficult for all of these records to be deleted or accepted to change by everyone.
legendary
Activity: 3514
Merit: 1280
English ⬄ Russian Translation Services
February 12, 2019, 03:27:13 PM
#48
Further, there seems to be a misunderstanding. The checkpoint which I speak about should only refer to old transactions (say, older than a year), while you seem to mean that it should lock all transactions immediately prior to the checkpoint. This is not how I imagine that

A checkpoint makes all transactions prior to the checkpoint irreversible. If that's not what you mean, maybe you should clarify

That's definitely not what I mean and I have clarified everything in the OP and in the following posts.
Then what did you mean? You haven't clarified at all. You've said multiple times that once the blockchain is pruned, all older transactions, e.g. older than one month, will be irreversible. How is that any different than a checkpoint at all?

Are you kidding or what?

You just said that a checkpoint is about making all transactions irreversible right before the checkpoint, i.e. even one minute prior to the checkpoint and now you ask me how what I suggest in this topic is different from a checkpoint at all. Further, if we make all transactions which are 1 year old (and older) irreversible by pruning the blockchain, how could it possibly allow miners to game the system if checkpoints are used specifically to make transactions irreversible, i.e. prevent miners from throwing their little shenanigans (as you were saying yourself)? Now I'm starting to seriously question your whole attitude here
legendary
Activity: 1666
Merit: 1196
STOP SNITCHIN'
February 12, 2019, 03:11:07 PM
#47
I guess this can be easily controlled

I don't know which specific approach should be used but as I understand the probabilities can be easily calculated. So there likely shouldn't be a lot of human arbitrariness in deciding how much of the blockchain should remain before we prune it.

What is that based on? What are the probabilities?

I don't know what they numerically amount to (if this is your question) but it is the probabilities of someone reorganizing the blockchain beyond the active snapshot of it. I suspect they are infinitesimal if we talk about transactions older than 1 year. In fact, I'm inclined to think that all transactions older than 1 month can be considered practically irreversible

That probability is not concrete. Hash power distribution is dynamic, constantly changing, and we also don't know whether a single entity controls multiple pools. Plus, by making all transactions older than 1 month irreversible, you create new incentives for miners to game the system. The fact that you say the probabilities can be easily calculated yet you have no idea what they are shows the weakness of your claims.

In other words, if leaving 1 year of transactions is enough to make such an attack nearly impossible, it seems like a good trade-off, especially if we consider the exponential growth of the blockchain in the future. Indeed, it may not come at all, but what are we all doing here then?

I think the burden is on you to show why it's so important to free up that storage space. It's not a major problem for scaling. Why is it a good trade-off? What will we gain?

It is not just about storage space as it is also about network bandwidth. I don't think it will be an overall good idea to download the whole blockchain once its size exceeds a few (dozen) gigabytes (given that bandwidth is not going to substantially increase in the foreseeable future, or ever)

So a pruned blockchain is sort of must-have if expect Bitcoin to grow

Anyone who has upload or storage limitations doesn't need to run an archival node. They can still run a full node, contribute to network security and secure their own transactions. There's just no basis for what you're saying.

Upload bandwidth becomes an issue with much bigger blocks. If we're drastically increasing the block size, we can talk about appropriate trade-offs to make, but right now it's completely unnecessary.

This is a solution looking for a problem.

Further, there seems to be a misunderstanding. The checkpoint which I speak about should only refer to old transactions (say, older than a year), while you seem to mean that it should lock all transactions immediately prior to the checkpoint. This is not how I imagine that

A checkpoint makes all transactions prior to the checkpoint irreversible. If that's not what you mean, maybe you should clarify

That's definitely not what I mean and I have clarified everything in the OP and in the following posts.

Then what did you mean? You haven't clarified at all. You've said multiple times that once the blockchain is pruned, all older transactions, e.g. older than one month, will be irreversible. How is that any different than a checkpoint at all?
Pages:
Jump to: