Peercoin v0.4.0 Released - Please Upgrade Before May 4th 14:00 UTC

solved - I enabled cookies and scripting.

My 10 coins are arriving. Thanks to sigmike and MUTO.

I sent you some extra coins to play with

I need some testnet nodesobsolete, while changing ppcoin to peercoin I’ve also changed DNS seeds

Thanks, I’m creating PoS-blocks quite a lot, so can test this also.

I just tried to provocate a error and spammed transactions to the blockchain in a loop via batch.

After several tens or even hundreds of transactions I closed ppcoind and startet my qt to see what happened. Now qt was veeery slow and it took several seconds to accept a transaction from my batch. I switched back to ppcoind but now I have the same problem here. Both get a permanent load of 100% for one core. Rebooted my machine but still the same. qt freezes from time to time (not responding)

I also noticed that some transaction are still not confirmed. Even after 45 min now 3659fff90dee7b58409eb999c7921560c03434bec8f6eefbac347973d6307b5a

Edit: Just got its first confirmation. CPU load also went down after that… will try to reproduce

Edit2: was able to reproduce CPU load goas down as soon as all transcactions have been confirmed atleast once. I guess this is related to communication with other nodes and not a bug

[quote=“MUTO, post:64, topic:1778”]I just tried to provocate a error and spammed transactions to the blockchain in a loop via batch.

After several tens or even hundreds of transactions I closed ppcoind and startet my qt to see what happened. Now qt was veeery slow and it took several seconds to accept a transaction from my batch. I switched back to ppcoind but now I have the same problem here. Both get a permanent load of 100% for one core. Rebooted my machine but still the same. qt freezes from time to time (not responding)

I also noticed that some transaction are still not confirmed. Even after 45 min now 3659fff90dee7b58409eb999c7921560c03434bec8f6eefbac347973d6307b5a

Edit: Just got its first confirmation. CPU load also went down after that… will try to reproduce

Edit2: was able to reproduce CPU load goas down as soon as all transcactions have been confirmed atleast once. I guess this is related to communication with other nodes and not a bug[/quote]

Keep up the good work challenging the testnet, Muto.

Quoted below is the most recent question from the Questions for Sunny Thread. Can this question be tested on testnet?

[quote=“Chronos, post:38, topic:1761”]Question: Is this attack feasible, to manipulate the mining difficulty? It was left as an open question on the thread. See Cryptoblog - notícias sobre bitcoin e criptomoedas!

[quote=“MUTO, post:64, topic:1778”]I just tried to provocate a error and spammed transactions to the blockchain in a loop via batch.

After several tens or even hundreds of transactions I closed ppcoind and startet my qt to see what happened. Now qt was veeery

[…]

Edit2: was able to reproduce CPU load goas down as soon as all transcactions have been confirmed atleast once. I guess this is related to communication with other nodes and not a bug[/quote]

When running these types of tests, it would be a good idea to have access to two nodes that you control, that are synced together with the config command addnode= (some node you control) and ensure it connects.

This way you can watch the debug.log on your “innocent node” to see what it thinks of your attack/misbehaving node. I bet you it probably disconnects you and logs it as a misbehaving node.

This probably is why your attack node had huge timeouts, and a constant search for new peers willing to “take your crap” after that type of test. In addition, it had to load all of your spammy transactions from your own wallet, it had to do all kinds of accounting work and block verification before the client could begin (all in a short time)

While the network probably handled it well, you can see, your own client was puking at the load. This is good. This means that an attack node will also run into this type of self-inflicted DoS against it’s own CPU and RAM, which is what we want.

By the way, think of how expensive this would have been, if you were using REAL coins. This is another reason why these types of attacks rarely occur, they are simply too expensive in real life.

Here’s a grep for the word behaving in the 0.3.0 ppcoin, it might explain some of what you experienced:

init.cpp:            "  -banscore=<n>    \t  "   + _("Threshold for disconnecting misbehaving peers (default: 100)") + "\n" +
init.cpp:            "  -bantime=<n>     \t  "   + _("Number of seconds to keep misbehaving peers from reconnecting (default: 86400)") + "\n" +
main.cpp:                pfrom->Misbehaving(100);
main.cpp:            pfrom->Misbehaving(1);
main.cpp:        pfrom->Misbehaving(1);
main.cpp:            pfrom->Misbehaving(20);
main.cpp:            pfrom->Misbehaving(20);
main.cpp:            pfrom->Misbehaving(20);
main.cpp:        if (tx.nDoS) pfrom->Misbehaving(tx.nDoS);
main.cpp:        if (block.nDoS) pfrom->Misbehaving(block.nDoS);
net.cpp:bool CNode::Misbehaving(int howmuch)
net.cpp:        printf("Warning: local node %s misbehaving\n", addr.ToString().c_str());
net.h:    // The idea is to detect peers that are behaving
net.h:    bool Misbehaving(int howmuch); // 1 == a little, 100 == a lot

I think your test made you “misbehaving a lot”. :slight_smile:

Thanks for your answer. And you are completely right. I saw in the console that the client tried to connect to other nodes and got connection timeouts from nearly every note. I am quite happy with the result of my test and how the network handled this “attack”

Posted using Tapatalk for Android.

[quote=“Cybnate, post:45, topic:1778”]Some GUI developments are underway. Here is a teaser: http://i.imgur.com/mOvwZzu.png

Stay tuned. Soon to be released 8)[/quote]

This looks great… so will this be available in the release or soon after?

There is a big empty space on the lower left side of the QT wallet. I’ve never figured out why no one puts a large coin logo there. Is it difficult from a programming perspective?

nope that should be possible :slight_smile:

Fuzzybear

nope that should be possible :slight_smile:

Fuzzybear[/quote]

I agree. That would look good.

Testnet protocol switch is today around 10PM UTC. If you haven’t yet upgraded testnet node to v0.4.0rc1, then you would need to redownload testnet blockchain.

I see that the testnet convert is suppose to happen at unix timestamp: 1395700000

Which is approximately Mon, 24 Mar 2014 22:26:40 GMT

Right now, my unix time is: 1395711307, so I’ve surpassed that mark.

My wallet didn’t upgrade I’m still at wallet version 60000 and protocol version 60004 with the following error:

“errors” : “WARNING: Blockchain redownload required approaching or past v0.4 upgrade deadline.”

I tried stopping my ppcoind, and re-starting it a few times, and no upgrade. No complaining in debug.log either.

I am on testnet. I do see this in the debug.log file:

Performing wallet upgrade to 60000

Shouldn’t that be saying 60004? A logic error of some sort?

Search for “Upgrade Info” in your debug.log. You should see lines like these:

Upgrade Info: upgrading txdb from v0.3
Upgrade Info: txdb upgrade to v0.4 detected

Confirming wallet 60000 and protocol 60004 on testnet.
Wallet has always been 60000 and protocol moved from 60003 to 60004. So that looks fine to me, but have to admit that I didn’t capture screenshots from last weekend of getinfo

Can’t confirm your text in my logfiles. Did you have higher log levels turned on or so?

Did find this consistently in log:

Upgrade Info: v0.4+ no txdb upgrade detected.

Not good? Even after restart.

Basics seems to work as usual after a few quick tests.

Suspect nothing happened as I can’t find any evidence, but maybe I shouldn’t?
Hope anyone can give us some light in the darkness…

[quote=“Cybnate, post:75, topic:1778”]Did find this consistently in log: Upgrade Info:

Upgrade Info: v0.4+ no txdb upgrade detected.

Not good? Even after restart.[/quote]

That means you never had to upgrade, the database was created with v0.4.

[quote=“sigmike, post:76, topic:1778”][quote=“Cybnate, post:75, topic:1778”]Did find this consistently in log: Upgrade Info:

Upgrade Info: v0.4+ no txdb upgrade detected.

Not good? Even after restart.[/quote]

That means you never had to upgrade, the database was created with v0.4.[/quote]
Thanks Sigmike, that makes sense.

[quote=“sigmike, post:74, topic:1778”]Search for “Upgrade Info” in your debug.log. You should see lines like these:

Upgrade Info: upgrading txdb from v0.3
Upgrade Info: txdb upgrade to v0.4 detected

Ugh, I wasn’t looking in the testnet directory (I was looking in the main .ppcoin directory)

Ok, found this:

Upgrade Info: upgrading txdb from v0.3 at timestamp 1395684209
Upgrade Info: txdb upgrade to v0.4 detected at timestamp 1395684209
Upgrade Info: txdb upgrade to v0.4 detected at timestamp 1395684209
Upgrade Info: txdb upgrade to v0.4 detected at timestamp 1395684209
Upgrade Info: txdb upgrade to v0.4 detected at timestamp 1395684209
Upgrade Info: txdb upgrade to v0.4 detected at timestamp 1395684209
Upgrade Info: txdb upgrade to v0.4 detected at timestamp 1395684209
Upgrade Info: txdb upgrade to v0.4 detected at timestamp 1395684209
Upgrade Info: txdb upgrade to v0.4 detected at timestamp 1395684209
Upgrade Info: txdb upgrade to v0.4 detected at timestamp 1395684209
Upgrade Info: txdb upgrade to v0.4 detected at timestamp 1395684209
Performing wallet upgrade to 60000

But if I run getinfo I still see:

"version" : "v0.4.0.0-gace33eb-beta",
"protocolversion" : 60004,
"walletversion" : 60000,

Ok, I shut down ppcoind, deleted the blk* files in the testnet directory.

I re-started ppcoind and re-downloaded the blockchain.

It worked. I still see this:

"version" : "v0.4.0.0-gace33eb-beta",
"protocolversion" : 60004,
"walletversion" : 60000,

But there is a difference now. Instead of just blk*.dat files, there are also these:

-rw------- 1 user user 24576 Mar 25 09:54 __db.001
-rw------- 1 user user 1843200 Mar 25 10:41 __db.002
-rw------- 1 user user 32776192 Mar 25 10:41 __db.003
-rw------- 1 user user 1179648 Mar 25 10:41 __db.004
-rw------- 1 user user 6316032 Mar 25 10:41 __db.005
-rw------- 1 user user 49152 Mar 25 10:41 __db.006

These must be the new transaction databases (txdb) which is part of the new 0.4 network that didn’t exist in 0.3

If I getinfo, my error line now is cleared and shows just:

“errors” : “”

So I’m good. It did require me to re-download the blockchain. I thought it might have been possible to NOT have to re-download the blockchain if I was running 0.4 before the testnet network converted.

From my experience it appears that every one must re-download the block chain when 0.4 goes on the live network in order to have their txdb files created and populated.

For me the db-files were created without redownloading the blockchain…

But the version also didn’t change

"version" : "v0.4.0ppc.rc1-beta", "protocolversion" : 60004, "walletversion" : 60000,