Peercoin v0.7 testing

Peercoin v0.7

Peercoin v0.7 release will be hard fork. Current plan is to deploy it in December, 2018.

This network upgrade features changes proposed in two RFCs:

First we’ll engage in testing on the testnet network during the November.

Please run on testnet only.


Well, my tiny piece of the testnet is running the new code and mining/minting… hope it helps :rainbow:

Built on ubuntu linux 14.04 and running testnet, updating chain and minting

Binaries posted.

Peercoin testnet network has forked as planned almost a week ago after last common block of 372750, here’s a little report about current state.

Old chain

pow block 372751 mined on 2018-11-10 00:04:06 utc

naturally old clients don’t accept transactions with lower fees and disconnect from nodes that transmit such things:

018-11-16 06:40:13 received block 7ed2bfbdcbcd8bcbb710e6cf288dd30920968ac10b64fd5d5bd3c9c2751ee185 from
2018-11-16 06:40:13 CheckStakeKernelHash() : using modifier 0x0019e09f0e6fe970 at height=372668 timestamp=2018-11-09 11:08:17 UTC for block from height=349147 timestamp=2018-08-01 20:40:47 UTC
2018-11-16 06:40:13 CheckStakeKernelHash() : check protocol=0.5 modifier=0x0019e09f0e6fe970 nTimeBlockFrom=1533156047 nTxPrevOffset=158 nTimeTxPrev=1533156047 nPrevout=1 nTimeTx=1541807202 hashProof=00012bad521584ab1cec09da1c8e1898f516600554b56a8e0b9c2faed08b8f05
2018-11-16 06:40:13 ComputeNextStakeModifier: prev modifier=0xa537f28b16e58fb3 time=2018-11-09 23:21:19 UTC epoch=1541805679
2018-11-16 06:40:13 ComputeNextStakeModifier: new modifier=0x39b6fd4258b72c7d time=2018-11-09 23:42:32 UTC
2018-11-16 06:40:13 ERROR: CheckInputs() : ba5d45a085cd9c5ddbcc00d98b228703ee68c591cfadc2632402e18f7e51cfeb not paying required fee=0.03, paid=0.021667
2018-11-16 06:40:13 InvalidChainFound: invalid block=7ed2bfbdcbcd8bcbb710e6cf288dd30920968ac10b64fd5d5bd3c9c2751ee185  height=372751  log2_trust=54.994983  date=2018-11-09 23:46:42
2018-11-16 06:40:13 InvalidChainFound:  current best=a275173fdc9569ae744e46739ff3565a4f913ce77817b2192251817bc6518af3  height=372750  log2_trust=54.994975  date=2018-11-09 23:42:32
2018-11-16 06:40:13 InvalidChainFound: invalid block=7ed2bfbdcbcd8bcbb710e6cf288dd30920968ac10b64fd5d5bd3c9c2751ee185  height=372751  log2_trust=54.994983  date=2018-11-09 23:46:42
2018-11-16 06:40:13 InvalidChainFound:  current best=a275173fdc9569ae744e46739ff3565a4f913ce77817b2192251817bc6518af3  height=372750  log2_trust=54.994975  date=2018-11-09 23:42:32
2018-11-16 06:40:13 ERROR: SetBestBlock() : ConnectBlock 7ed2bfbdcbcd8bcbb710e6cf288dd30920968ac10b64fd5d5bd3c9c2751ee185 failed
2018-11-16 06:40:13 ERROR: AcceptBlock() : AddToBlockIndex failed
2018-11-16 06:40:13 ERROR: ProcessBlock() : AcceptBlock FAILED
2018-11-16 06:40:13 Misbehaving: (0 -> 100) DISCONNECTING
2018-11-16 06:40:13 disconnecting node
2018-11-16 06:40:13 socket select error 9

fork currently has 373622 blocks (87 blocks in last 24 hours), it is currently followed by many 0.7 clients.

New chain

Pos block 372751 minted on 2018-11-09 23:46:42 utc:

Fork currently has 373226 (95 blocks in last 24 hours)

Something I have also noticed is that nodes on new chain will not switch back to old chain even though it currently has more trust, because they won’t accept this version of block #372819:

2018-11-10 12:02:00 received block 08925a8fe143ac5a16e29ff7c68e469ddb4999df4dd551bca0803e7a0fe29511
2018-11-10 12:02:00 CheckStakeKernelHash() : using modifier 0x39b6fd4258b72c7d at height=372751 timestamp=2018-11-09 23:46:42 UTC for block from height=366463 timestamp=2018-10-23 21:29:32 UTC
2018-11-10 12:02:00 CheckStakeKernelHash() : check protocol=0.5 modifier=0x39b6fd4258b72c7d nTimeBlockFrom=1540330172 nTxPrevOffset=81 nTimeTxPrev=1540330172 nPrevout=0 nTimeTx=1541851319 hashProof=f2bc075612efc2082ec1dc4357c65c8d8c4813e09b92cf977f5b46705555f28f
2018-11-10 12:02:00 ERROR: CheckProofOfStake() : INFO: check kernel failed on coinstake 9ce2ec3e3ebffb403869750451e4d87bbbf3cd89c59d48593a1e27ac19c48d9a, hashProof=f2bc075612efc2082ec1dc4357c65c8d8c4813e09b92cf977f5b46705555f28f
2018-11-10 12:02:00 WARNING: ProcessBlock(): check proof-of-stake failed for block 08925a8fe143ac5a16e29ff7c68e469ddb4999df4dd551bca0803e7a0fe29511
2018-11-10 12:02:00 Misbehaving: (0 -> 1)

as it is based on different coinstakemodifier

2018-11-15 07:29:51 received block 08925a8fe143ac5a16e29ff7c68e469ddb4999df4dd551bca0803e7a0fe29511
2018-11-15 07:29:51 CheckStakeKernelHash() : using modifier 0xa537f28b16e58fb3 at height=372748 timestamp=2018-11-09 23:21:19 UTC for block from height=366463 timestamp=2018-10-23 21:29:32 UTC
2018-11-15 07:29:51 CheckStakeKernelHash() : check protocol=0.5 modifier=0xa537f28b16e58fb3 nTimeBlockFrom=1540330172 nTxPrevOffset=81 nTimeTxPrev=1540330172 nPrevout=0 nTimeTx=1541851319 hashProof=000000887723561d545c1b7ca66b7d585b8d52dd32249c38c06ec7bcc2184c39
2018-11-15 07:29:51 ComputeNextStakeModifier: prev modifier=0x803028351bab1525 time=2018-11-10 11:48:52 UTC epoch=1541850532
2018-11-15 07:29:51 ComputeNextStakeModifier: no new interval keep current modifier: pindexPrev nHeight=372818 nTime=1541851060
2018-11-15 07:29:51 SetBestChain: new best=08925a8fe143ac5a16e29ff7c68e469ddb4999df4dd551bca0803e7a0fe29511  height=372819  log2_trust=54.995438  moneysupply=410909239.60368  tx=728389  date=2018-11-10 12:01:59 progress=0.997986
2018-11-15 07:29:51 ProcessBlock: ACCEPTED

please update to rc2 which prevents 0.7 clients from working on old chain through use of hardened checkpoints.

2018-11-20 11:00:01 Test Network: genesis=0x00000001f757bb737f65 nBitsLimit=0x1d0fffff nBitsInitial=0x1d07ffff nStakeMinAge=86400 nCoinbaseMaturity=60 nModifierInterval=1200
2018-11-20 11:00:07 ERROR: LoadBlockIndexDB() : Failed stake modifier checkpoint height=371850, modifier=0xe98e44fbf7d1634c
2018-11-20 11:00:07 : Error loading block database.
Do you want to rebuild the block database now?
2018-11-20 11:00:07 Shutdown : In progress...

Resyncing now…

1 Like

sorry, i made a goof up with testnet checkpoints, please update and restart.

to help people who can’t get past this error, please delete your blocks/blk*.dat files and restart peercoind with these options:

./peercoind -testnet -daemon

1 Like

I don’t think forking during a major holiday is smart. I think we should postpone this fork until 10th of January 2019.

Edit: This will also give the people running the nodes sufficient time to upgrade.


Ask everyone, how can I download a PEERCOIN wallet from IPAD above, I can’t download it on the website, thank you

Giving more time for nodes to upgrade before the hard fork is always good and personally I see no need to rush protocol V07 activation, especially considering our history of v06 fork watch.

To be on the safe side I would rather implement signaling via block versions and activate when we get to 75% or it would be strongly advised to have such a hard fork date at least 2 months off, around 21st of January.

p.s. Maybe there’s a project that would benefit from lower fees during this holiday season that we don’t know about? That would explain the rush to release it.



Minting sync threshold was set too high, so nodes running 0.7-testing rc2 will seldom mint!


Gitian binaries are available for those not willing to build themselves but wanting to help testnet.

Please share the addresses where to send testcoins to.

Thanks to @nohea, we have a testnet pool setup to find pow blocks, if you have spare asics that you can spare to get some pow blocks into the new 0.7 chain, go for it:

username: testnet address
password: whatever


congrats, first PoW block on new fork has been found, meet block 373701

we have released rc5 of version 0.7, which will hopefully become final soon.

v0.7 changes are planned to become active on 12th of march.

please download and test:


I’ve uploaded .deb packages for Rasbian and Ubuntu 18.04.

Splash screens should be updated to the copyright year 2019 before releasing Peercoin v0.7.0. Maybe a task for @Buckkets ?

He is on the task already.

1 Like

Sorry, I don’t get Github notifications. My apologies for the delay. PR’d and merged

1 Like