From 124e4e8da93fafa7a92848dc255aa6f3d12b9136 Mon Sep 17 00:00:00 2001 From: alexhz Date: Fri, 2 Aug 2013 12:57:58 +0000 Subject: [PATCH] Add upper limit for coinstake reward Such limit should stimulate large stake holders to use smaller inputs. This will ensure the growth of the difficulty and chain's strength. --- src/main.cpp | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 57fd7da..33c6003 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1073,6 +1073,12 @@ int64 GetProofOfStakeReward(int64 nCoinAge, unsigned int nBits, unsigned int nTi else nSubsidy = nCoinAge * nRewardCoinYear * 33 / (365 * 33 + 8); + // Set reasonable reward limit for large inputs since 20 Oct 2013 + // + // This will stimulate large holders to use smaller inputs, that's good for the network protection + if(fTestNet || STAKECURVE_SWITCH_TIME < nTime) + nSubsidy = min(nSubsidy, 10 * COIN); + if (fDebug && GetBoolArg("-printcreation")) printf("GetProofOfStakeReward(): create=%s nCoinAge=%"PRI64d" nBits=%d\n", FormatMoney(nSubsidy).c_str(), nCoinAge, nBits); return nSubsidy; -- 1.7.1