Cold storage minting proposal

Well, I describe the threat as “latent” because it surfaces only in the condition where minting keys are introduced but still fail to increase the total number of honest nodes minting with adequate stakes. I believe the most likely scenario, however, will be that more stakes will begin participating in minting and PoS difficulty will accordingly increase such that examples like the one provided by mhps will become much more rare.

[quote=“cryptog1, post:160, topic:2336”]Which is most dangerous from a network security perspective?
1M minting keys of 1ppc each or 1 minting key holding 1M ppcs?[/quote]
The answer to this question is a little nuanced because I believe a single miniting-only key is potentially capable of signing multiple stakes. Therefore, there’s really no fundamental difference between the two cases because you don’t specify how many individual “unspent outputs” are present in the 2nd case. (Granted, theft of a minting key is much more damaging when it “contains” many stakes!)

If your question implies a single 1M PPC stake then the 1st case is definitely “most dangerous.” A single 1M PPC stake can only produce a block once every 30 days, whereas the 1st case currently has a very high probability of minting consecutive blocks. Fortunately, a 1 PPC stake caps it’s minting power at exactly 90 coin-days whereas a 3 PPC stake achieves the same probability of minting after only 30 days. With Peercoin’s 10-minute block time, there is only “room” for ~4320 blocks per month, so as long as at least that many >3 PPC stakes are actively minting any given month, the probability of successfully attacking the network with 1M 1 PPC stakes drops precipitously.

Let me ask a quick question. I have my Peercoins distributed across like 200 or more wallets because I was scared of them being hacked when I first got into this. They’re all in cold storage. When this gets implemented, what will I have to do in order to start minting with all these wallets? I don’t need my private keys right? I’m just wondering if it’s going to be a huge hassle to setup because I have so many wallets.

Unfortunately, it appears that you will have to spend all of your coins into the new type of address. You will lose your stored coin-age. In light of this fact, I honestly recommend that you go ahead and start minting to earn your rewards now. As far as I can tell individual attacks against private Bitcoin-based wallets remain scarce, so unless there are extremely extraordinary circumstances compromising the security of your computer and/or access to the Internet, I think you may be overvaluing the risk, particularly with such divided holdings. If you are still paranoid you can import each address into its own isolated wallet with its own encryption. (I provided instructions for doing this here: Cryptoblog - notícias sobre bitcoin e criptomoedas!)

Furthermore, we need your stakes supporting the network! Withholding from minting is itself a risk! If an attack on the Peercoin blockchain is successful you may end up much worse off than having a few sets of coins stolen.

…on a completely separate note, I feel like I may have overstated my case a bit at the end of the previous post. As I think about it, “precipitously” is likely too strong of a word. One million is a lot of stakes! However, I do believe that the fundamental premise remains valid that increasing minting participation even a little will have powerful effects on securing the network.

Unfortunately, it appears that you will have to spend all of your coins into the new type of address. You will lose your stored coin-age. In light of this fact, I honestly recommend that you go ahead and start minting to earn your rewards now. As far as I can tell individual attacks against private Bitcoin-based wallets remain scarce, so unless there are extremely extraordinary circumstances compromising the security of your computer and/or access to the Internet, I think you may be overvaluing the risk, particularly with such divided holdings. If you are still paranoid you can import each address into its own isolated wallet with its own encryption. (I provided instructions for doing this here: Cryptoblog - notícias sobre bitcoin e criptomoedas!)[/quote]

I think in the long run maintaining 200 paperwallets is not easy without incurring risks of damage or loss. It’s far better to import the keys to a handful of encrypted wallets using the importprivkey command (no loss of coin days that way). The importing can be done offline, even on a un-networked on a peerbox. (edit: I have crossed out the previous sentence because it can be complicated) After consolidating, say, 50 addresses in one wallet, leave the wallet minting for a while. After most addresses find stakes, backup the wallet and save several copies in different places. Get a new wallet, consolidate the next 50 addresses…

Very true.

One can quantify the threat with josojo’s formula at Cryptoblog - notícias sobre bitcoin e criptomoedas!
NumberOfCoinsParticipatingInAttack=1,000,000,
collected coindays by the attacker= 60 (maximum),
NumberOfCoinsMintingMainchain=4294901760 xPoSdif / ( 600);
PoSdif=12

Probability to find a block in 10min
=NumberOfCoinsParticipatingInAttack60/(NumberOfCoinsParticipatingInAttack60+NumberOfCoinsMintingMainchain)
= 40%

So it’s more effective than the half-million-ppc address (only finds ~25%). The attacker can get 6 blocks in less than 2 days.

It mints 7x24, and by pure chance it finds 6 blocks in a row every a few months.
A) Excuse my ignorance. What is the issue with finding 6 blocks in a row compared to say 2 blocks in a row? It probably has to do with a high probability to be able to alter the blockchain, I sense though like in bitcoin.
Therefore, there's really no fundamental difference between the two cases because you don't specify how many individual "unspent outputs" are present in the 2nd case.
B) I would assume that the minting key holding 1M ppcs has 1M unspent outputs then.
A single 1M PPC stake can only produce a block once every 30 days, whereas the 1st case currently has a very high probability of minting consecutive blocks
C) So it seems that the danger in terms of network's security lays on the ability to "find" consecutive blocks (related to A) ).... However, assuming B), can you clarify why case 1) is more likely to mint consecutive blocks than 2) ? Having a single stake of 1M unspent coins should give you a probability to mint the next block that dwarfs the probability to mint of a stake of only 1 unspent coin... Sure in case 1), you have 1M of such stakes...So I guess you can put in a row those minting stakes...and try to spend several of them every 10mn...So if the probability of a stake of 1ppc to mint the next block is say 1%, if you try to spend 100 of such stakes at the same time every 10mn, you can achieve a 1%*100=100% probability to mint the next block, which would be higher than the probability of 2), because the probability of 2) is lower than 100% even if it could be very close to 100%. Is this what you are implying?

[quote=“cryptog1, post:165, topic:2336”]

It mints 7x24, and by pure chance it finds 6 blocks in a row every a few months.

A) Excuse my ignorance. What is the issue with finding 6 blocks in a row compared to say 2 blocks in a row?
It probably has to do with a high probability to be able to alter the blockchain, I sense though like in bitcoin.[/quote]

Yes. The more confirmations you wait, the more you can trust that the transactions that’s of interest to you don’t end up in a block that gets orphaned.

6 confirmations for Peercoin is what is required by the coin exchange btc-e.com. I’m not sure why. From some calculations made by people, smarter then me, on this forum, 6 confirmations is probably to little for bigger sums of money.

Yes. The more confirmations you wait, the more you can trust that the transactions that's of interest to you don't end up in a block that gets orphaned.
Right right the number of conf.

So I read through this thread but I don’t think I ever saw the issue of a hacker amassing a large amount of minting addresses from users and suddenly minting them. This would devastate security. Has this been addressed?

[quote=“cryptog1, post:165, topic:2336”]

It mints 7x24, and by pure chance it finds 6 blocks in a row every a few months.

A) Excuse my ignorance. What is the issue with finding 6 blocks in a row compared to say 2 blocks in a row?
It probably has to do with a high probability to be able to alter the blockchain, I sense though like in bitcoin.[/quote]

6 confirmations are needed for the network to consider a transaction complete (try it with a wallet). If you have 6 consecutive pos blocks and these blocks have more combined coin-age other nodes on the network will automatically regard your chain as the main chain and discard other chains. You can do a double spend attack this way.

[quote=“mhps, post:169, topic:2336”][quote=“cryptog1, post:165, topic:2336”]

It mints 7x24, and by pure chance it finds 6 blocks in a row every a few months.

A) Excuse my ignorance. What is the issue with finding 6 blocks in a row compared to say 2 blocks in a row?
It probably has to do with a high probability to be able to alter the blockchain, I sense though like in bitcoin.[/quote]

6 confirmations are needed for the network to consider a transaction complete (try it with a wallet). If you have 6 consecutive pos blocks and these blocks have more combined coin-age other nodes on the network will automatically regard your chain as the main chain and discard other chains. You can do a double spend attack this way.[/quote]

Right.

Any updates of cold locked minting feature?

I’m working on it. Most of my time is taken by Nu but I think cold minting addresses will be implemented before the end of the year. Then it will require some reviewing and testing.

That’s very good news! This will likely boost the minting rate (that is already higher from quarter to quarter) even further.
If you need testers once the internal testing has been successful I’m sure you find some here :wink:

I’m working on it. Most of my time is taken by Nu but I think cold minting addresses will be implemented before the end of the year. Then it will require some reviewing and testing.[/quote]

awesome

I’m working on it. Most of my time is taken by Nu but I think cold minting addresses will be implemented before the end of the year. Then it will require some reviewing and testing.[/quote]

Thank you for your updates. Good luck!

I’m working on it. Most of my time is taken by Nu but I think cold minting addresses will be implemented before the end of the year. Then it will require some reviewing and testing.[/quote]

Sigmike, some people are taking your post here as meaning that cold-locked minting will be live and ready for use by the end of the year. From what I understand, this is going to be included in v0.5, so is it correct to assume that if cold-locked minting is ready before the end of the year, that it still might end up being delayed until Sunny is finished with the rest of the v0.5 update?

It won’t be live and ready. It should be ready for testing only, and probably not even on testnet yet, so very few people will be able to test it.

Yes it’s going to be included in v0.5. But no other major changes are planned for 0.5. The only other protocol change may be allowing null data transactions to enable colored coins and open transaction.

So yes, v0.5 will happen after cold minting addresses are implemented. I don’t know how much time finalizing v0.5 will take.

It won’t be live and ready. It should be ready for testing only, and probably not even on testnet yet, so very few people will be able to test it.

Yes it’s going to be included in v0.5. But no other major changes are planned for 0.5. The only other protocol change may be allowing null data transactions to enable colored coins and open transaction.

So yes, v0.5 will happen after cold minting addresses are implemented. I don’t know how much time finalizing v0.5 will take.[/quote]

Just to be sure. You are talking about peerunity wallet or peercoin core?

Peercoin core, but Peerunity will have to follow the protocol changes.

I made a first pull request with the protocol and RPC changes (there’s no GUI changes yet): https://github.com/ppcoin/ppcoin/pull/78