Pages:
Author

Topic: error - page 26. (Read 360488 times)

legendary
Activity: 924
Merit: 1000
April 19, 2014, 07:32:19 PM


Problem #1: If the algorithm doesn't adjust difficulty up quickly, whoever is bringing the huge hash power gets away with an insane amount of coin in a few hours, because the difficulty remains low for a long time (because it adjusts too slowly).  These coins are then dumped on the market, hurting the value of the coin.  When coins are defined, a key characteristic is how often they are generated: "X blocks every Y minutes."  RPC was defined as 1 block = 1 coin = every 2 minutes.  When spikers can snatch 1 coin every 12 seconds, as they did a few times lately, that screws everyone else, who has invested work and earned returns at the normal rate of work of 1 coin every 120 seconds, or thereabouts.  In 10 minutes, spikers can grab 2 hours worth of coins, leave, and return and do it again.


Hence why i don't understand why there wasn't a fixed minimum of 2 minutes per block in the first place, hence no one would get a block every 12 seconds.

Somebody screwed up the coding somewhere.
legendary
Activity: 1540
Merit: 1052
May the force bit with you.
April 19, 2014, 09:57:21 AM

Very good points. I agree about Digishield not being a good solution because of the slow step-down after a sudden hashrate increase.

I also agree about changing the 11% to a 20% max swing. I thought of this a few days ago and it seemed mathematically more sound to me too.

Currently Tranz (our previous successful fork coder) has offered to put in KGW with the time warp fix.

Does anyone think my original proposed solution (1 block change and 20% max difficulty swing) is better than KGW w/Time Warp Fix? Because otherwise I will take Tranz up on KGW w/time warp fix unless a valid argument can be put forth to show me this is a bad idea for some reason, or that my original idea was better.

Hi All.

I have coded up KGW with the TimeWarp Fix.

It is available here. https://github.com/Tranz5/ronpaulcoin/commit/cb142e59fae493e30a2d98793a0633960589224b
                           https://github.com/Tranz5/ronpaulcoin/commit/314e18a34acb4eb6588ca88ff470c3f0aa46b44e

This can be pulled into the main repo, if you want to. You should only need to change line 1177 in main.
Code:
+    int nKGWDiffFork = 1000000;
To the block you want to change on. I suggest at least 1 month in the future.

I have not tested this change(compiled and caught up, but not mined on), a few members of the community should get together and run this through testnet. Start at block zero and go up through block 5000. Make sure it works as you would like.

Regarding any bounties, give it to the testers or to a food bank.

Thanks, good luck!

Thanks for your help Tranz. I think we should use block 50,000 as the point of change.

Will we need to worry about any fork issues with users who haven't updated by then? Or will it work itself out?
Old clients will be forked off yes.  You can forcibly remove them, I didn't add that in.

Best to get the ACP up to date and start relaying checkpoints a few thousand blocks before and a few thousand afterwards. You Should send alerts to old clients, a week before and the day off.
hero member
Activity: 875
Merit: 1003
April 19, 2014, 09:49:29 AM

Very good points. I agree about Digishield not being a good solution because of the slow step-down after a sudden hashrate increase.

I also agree about changing the 11% to a 20% max swing. I thought of this a few days ago and it seemed mathematically more sound to me too.

Currently Tranz (our previous successful fork coder) has offered to put in KGW with the time warp fix.

Does anyone think my original proposed solution (1 block change and 20% max difficulty swing) is better than KGW w/Time Warp Fix? Because otherwise I will take Tranz up on KGW w/time warp fix unless a valid argument can be put forth to show me this is a bad idea for some reason, or that my original idea was better.

Hi All.

I have coded up KGW with the TimeWarp Fix.

It is available here. https://github.com/Tranz5/ronpaulcoin/commit/cb142e59fae493e30a2d98793a0633960589224b
                           https://github.com/Tranz5/ronpaulcoin/commit/314e18a34acb4eb6588ca88ff470c3f0aa46b44e

This can be pulled into the main repo, if you want to. You should only need to change line 1177 in main.
Code:
+    int nKGWDiffFork = 1000000;
To the block you want to change on. I suggest at least 1 month in the future.

I have not tested this change(compiled and caught up, but not mined on), a few members of the community should get together and run this through testnet. Start at block zero and go up through block 5000. Make sure it works as you would like.

Regarding any bounties, give it to the testers or to a food bank.

Thanks, good luck!

Thanks for your help Tranz. We'll use block 55,000 as the point of change.

Will we need to worry about any fork issues with users who haven't updated by then? Or will it work itself out?
full member
Activity: 140
Merit: 100
April 19, 2014, 09:49:14 AM
Thank you Tranz!

This bodes very well for the future of ronpaulcoin. We're still getting consistent returns here at chunkypools.com/rpc

If you're looking for a pool with great features, a custom interface, and a supportive community... look no further than chunky!

We also just launched our own in house trading group, entry can be gained via mining.
brand new
Activity: 0
Merit: 0
April 19, 2014, 05:14:54 AM
That was awfully nice of Tranz to offer the fix for free!

Well, we need to do something soon because the difficulty is stuck on 12 and the net hash rate is dead.  The malicious strategy of "sticking" small coins with a high hash rate in order to stagnate them might be being used against us.

I don't know what the time table is on coding the change from every 48 blocks to 1 block, or if Tranz will do it.

I tried mucking around in the GitHub code for about an hour, and cannot find out what calls ComputeMinWork in main.cpp so I have no idea how difficult the code change will be.  Moreover, the main repository, branched from litecoin, still shows max diff swing of 400%, so maybe I'm missing something.

As I see it: KGW is complicated vs. 1-block-readjustment is simple.

Kimoto Gravity Well algorithm is described here:
https://forum.megacoin.co.nz/index.php?topic=893.0

Why and how his algo of total past blocks / 144 ^ -1.228 works is beyond me.  As far as I can tell, it's basically a kind of weighted average that gives extra weight to the recently-completed blocks?

Since the algorithm is obscure to me, there's really nothing more to go on except its empirical performance unless someone can provide a better argument.  How well has KGW worked for other coins that suffer spikes?  That's the key question.

I have no idea how fast a KGW-based coin retargets difficulty back down.  Does anyone else?  This is a key consideration while the mining community is small.

Other coins have adopted a 1-block-retarget -- the question is, does this make KGW irrelevant?

https://www.noblemovement.com/kimotos-gravity-well-vs-1-block-retargeting/

Because KGW used the times to complete multiple blocks, did that make it vulnerable to time warp?  Are there other possible exploits?  With a 1-block adjustment, it seems the potential for future exploits is small, because the logic is simple.

So:

Pros for KGW:
Tranz already did it.
Works better than what we have.

Cons for KGW:
Math obscure: how fast does it target diff back down?
Since other coins use it, if there is some other exploit, then perhaps it will be quickly fixable, provided you have someone like Tranz around to patch the code.  But what if you don't?  I'm presuming here Colin can patch one line in ComputeMinWork by himself if we go with 1-block-readjustment.  Shocked

Pros for 1-block-readjustment:
Gets diff up and DOWN fast.
Should be easy to code, but I have no idea.
Max swing easily fixable in the future if we don't like 11%/20% (Go for 20%, Colin!)
I'm presuming it's less exploitable because it's simpler and clearer.

Cons for 1-block-readjustment:
Somebody's gotta code it.
??
legendary
Activity: 1540
Merit: 1052
May the force bit with you.
April 19, 2014, 01:15:43 AM

Very good points. I agree about Digishield not being a good solution because of the slow step-down after a sudden hashrate increase.

I also agree about changing the 11% to a 20% max swing. I thought of this a few days ago and it seemed mathematically more sound to me too.

Currently Tranz (our previous successful fork coder) has offered to put in KGW with the time warp fix.

Does anyone think my original proposed solution (1 block change and 20% max difficulty swing) is better than KGW w/Time Warp Fix? Because otherwise I will take Tranz up on KGW w/time warp fix unless a valid argument can be put forth to show me this is a bad idea for some reason, or that my original idea was better.

Hi All.

I have coded up KGW with the TimeWarp Fix.

It is available here. https://github.com/Tranz5/ronpaulcoin/commit/cb142e59fae493e30a2d98793a0633960589224b
                           https://github.com/Tranz5/ronpaulcoin/commit/314e18a34acb4eb6588ca88ff470c3f0aa46b44e

This can be pulled into the main repo, if you want to. You should only need to change line 1177 in main.
Code:
+    int nKGWDiffFork = 1000000;
To the block you want to change on. I suggest at least 1 month in the future.

I have not tested this change(compiled and caught up, but not mined on), a few members of the community should get together and run this through testnet. Start at block zero and go up through block 5000. Make sure it works as you would like.

Regarding any bounties, give it to the testers or to a food bank.

Thanks, good luck!
hero member
Activity: 875
Merit: 1003
April 18, 2014, 06:57:41 PM
hero member
Activity: 875
Merit: 1003
April 18, 2014, 06:48:56 PM
Good news:

Tranz has fixed his development computer (it was down) and said he is willing to update RonPaulCoin with Kimoto Gravity Well and the time exploit fix

So, RonPaulCoin version 2.0 is about to be coded!

Please donate to the him because he OFFERED TO HELP AND IS DONATING HIS TIME:

DONATIONS FOR DIFFICULTY FIX - FUNDRAISING GOAL = 2.0 BTC (but we can probably get it done with less)
BTC - 1DsdqTs5Wge7opUpXABp8n3P8TyAxLKYuU (click to see how much has been donated)
RPC - RLiV45m25WPgMQkdBZdNdYFFMQNjCT3JZn
(click to see how much has been donated)


We currently have about 0.33 BTC and 116 RPC
brand new
Activity: 0
Merit: 0
April 18, 2014, 02:30:58 PM
He might have good policy reasons for saying that: the IRS wants it reported as income.  Sales transacted in cryptocurrency would be subject to tax.  The Federal gov't has prosecuted mints that have struck physical Bitcoins with addresses as QR codes for issuing currency.

If all we are doing is bartering with cryptocurrency, that's good enough as far as I'm concerned.  That's why if we ever get a precious metals vendor, it should just be a copper, silver or gold coin, with the RPC image, but no stated amount or address on it.  It's just pretty metal.
sr. member
Activity: 392
Merit: 250
April 18, 2014, 12:20:35 PM
Ron Paul: Bitcoin is not ‘True Money’

Quote
US Congressman Ron Paul does not believe bitcoin is ‘true money,’
but he is still a big fan of the concept.

source coindesk.com
brand new
Activity: 0
Merit: 0
April 18, 2014, 01:51:47 AM
Chiznitz said:
Quote
Not sure why we would not go with digishield, its being used in almost all coins that are moving from KGW, I'm sure it has issues but the issues of not using it are much greater.

There is a lot of copycatting happening and not a lot of original thought put into the math.  One solution catches on (Digishield because Doge adopted it) and other cryptos blindly copy it.  Just because other cryptos are doing it doesn't mean the solution is any good!  Digishield is better than nothing, but the question is: What works best?  Or, can another approach work better than DigiShield?

If you look at the link a few posts above, which describes the DigiShield algorithm, the problem I see is that the difficulty rises quickly, and lowers slowly.  The problem is spikes, which are by nature short-lived and bring a sudden increase in total net hash power.  This causes TWO problems for the coin:

Problem #1: If the algorithm doesn't adjust difficulty up quickly, whoever is bringing the huge hash power gets away with an insane amount of coin in a few hours, because the difficulty remains low for a long time (because it adjusts too slowly).  These coins are then dumped on the market, hurting the value of the coin.  When coins are defined, a key characteristic is how often they are generated: "X blocks every Y minutes."  RPC was defined as 1 block = 1 coin = every 2 minutes.  When spikers can snatch 1 coin every 12 seconds, as they did a few times lately, that screws everyone else, who has invested work and earned returns at the normal rate of work of 1 coin every 120 seconds, or thereabouts.  In 10 minutes, spikers can grab 2 hours worth of coins, leave, and return and do it again.

Problem #2: If the algorithm doesn't adjust difficulty down quickly, after the spike is over, the smaller, regular miners are left with a very high difficulty.  This means:
(A) a very long time to solve blocks,
(B) long confirmation times, and
(C) miners lose interest, because it takes forever to get a coin.  Their labor & electicity is better spent elsewhere.

Moreover, (C) makes (A) and (B) even worse because blocks have to be solved before the 48-blocks per re-adjustment threshold is reached.

DigiShield solves Problem #1; it doesn't address Problem #2, because by design it lowers values slowly.

Colin's solution addresses Problem #1 AND Problem #2, and is thus better.

The spike yesterday is a good example (I saw 1.54 GH/s, compared to normal values around 0.4 GH/s).  Difficulty jacked up from 3 - 4 to 16, and now is slooowly falling off.  Why?  Difficulty adjusts every X blocks (48 right now), but when the difficulty goes high from a spike, and then the big hashers leave, it takes FOREVER for smaller miners to get through those next 48 blocks.  Difficulty right now is still 13, and the total net hash rate is 0.04 GH/s.  Chunky's Pool was virtually empty after the last spike.  Thus we see Problem 2 (C) above: miners lose interest.  As a result, it will take days for the difficulty to get back down to 4 where it was.  And anyone waiting on a transaction will have to wait days or hours -- because of (B).

Lastly, regarding 11% max swing for both increase and decrease...is there any reason why 11% is still the magic number?  Evaluated per block, it's still a good improvement, but wouldn't higher be better?

To take the last spike, the difficulty jumped from 4 (it was briefly 3.8 before that) to 16.  Waiting 48 blocks to adjust, that means a max of 48 blocks to plunder.  Waiting 1 block to adjust, it would take just 14 blocks to adjust from diff 4 to diff 16. (1.11 ^ 14 = 4.3)  If we chose a max swing of 20%, it would take only 8 blocks to adjust from diff 4 to diff 16 (1.2 ^ 8 = 4.3).

Colin's solution will still mean a slower return to normal difficulty, however.  Why?  Because when the big hasher leave, blocks still have to be processed before the difficulty readjusts.  Adjusting every block is MUCH better than every 48 blocks in this regard.  BUT, because max swing is capped at 11%, all the 11% steps downward will still take a time.

Take the last spike again as an example.  When the difficulty hit 16, and total net hash returned to normal (0.04 GH/s), it now takes 15 - 20 minutes to solve EACH block.  So 14 blocks to readjust downward is going to mean about 3.5 hours (14 blocks x 15 mins per block).  It will actually be less, more like 2.5 hours, because the difficulty is slowly adjusting down, but you get my point?  When the spike is on, blocks fly by, so difficulty adjusts in a few minutes.  Plunder is thus stopped.  But when the spike is gone, blocks still crawl, and thus the return to low difficulty still takes hours.

My quartile approach, which no one seems to like but me  Tongue  tries to solve this by ignoring the spike hashrate values when they are gone, and getting the difficulty back down more quickly to baseline, as defined by the lower 75% of block hash rates.  I think it would solve Problem #2 even better than Colin's solution.  But if Colin increased the max swing to a value greater than 11%, then problem #2 would not be as big.  People can ride out a few slow hours.  But a few slow days is horrible!

That's my $0.02.  I'd love to see more argument, not just "other people use KGW / DigiShield."
hero member
Activity: 574
Merit: 500
April 17, 2014, 04:45:09 PM

 Another problem is the fact that trade is only one exchange about it and very few people know. It is foolish to sell now so cheap - their number is sufficiently small and the real price at the very beginning of trade and even more!


RPC is more than one exchange.


Also, icanprogram has been fixing coins for .3btc bounty. 

Not sure why we would not go with digishield, its being used in almost all coins that are moving from KGW, I'm sure it has issues but the issues of not using it are much greater.


I'm an operator in #ronpaulcoin in irc, colin hop in and I can get you with icanprogram, should save us some BTC Smiley
hero member
Activity: 715
Merit: 500
April 16, 2014, 03:50:53 AM

 Another problem is the fact that trade is only one exchange about it and very few people know. It is foolish to sell now so cheap - their number is sufficiently small and the real price at the very beginning of trade and even more!
sr. member
Activity: 314
Merit: 250
April 15, 2014, 04:53:16 PM
every time I thought it can not get lower it fall.. this coin is near dead. I really want to know what we will do if asic miners will start attack this coin. I lost >500% and I think it will newer go up so high.

Don't worry, the price is not the problem, problem is volume. Once it is traded on Cryptsy, with next big pump of altos, RPC will gain value too, the only risk is, that Cryptsy will remove RPC, because of low trade volume. So first, devs should write to other popular threads, where are lot of cool devs who can help with new version. And what we can do is buy and sell some RPC to ourselves. Like buy your own orders. It will cost us some trade fees, but it will prolong the time on cryptsy. In few months, USD trading will be active on cryptsy and than houndrets of milions of USD will come there and those money will be spent on all coins. If Wall Street come there, they will definitelly invest in coins like CASH, BEN, DEM, etc, and never into Moon, Cat, Doge, etc...  Those serious bilionair bankers will buy mostly USD related coin names.
hero member
Activity: 875
Merit: 1003
April 15, 2014, 07:34:57 AM
Sent 50 RPC to version 2.0 development! (That's about 0.05 BTC right now.)
Thank you very much! That is a generous contribution.

I'd like to propose FIVE issues to tackle for version 2.0 launch:

2) New difficulty adjustment: Did Colin definitively decide the fork will adopt the method of updating block difficulty per block as the solution, with no cap on maximum difficulty increase / decrease?

I'd rather Colin's proposal instead of modified KGW / DGW since the gravity well method's math is unclear, AFAIK.  I'd also vastly prefer it to DigiShield.

The only spec I've seen on DigiShield is here: http://www.reddit.com/r/Digibyte/comments/1yn6t1/digibyte_v_20_code_name_digishield/  
From what I guess, the quick upward adaptation is good against spikes, but the slow fall-off is going to mean long block times, long transaction confirmation times, and total net hashrate die-off as regular miners turn elsewhere when the difficulty remains high for a while after the spike is gone.  Not a big fan of DigiShield's approach, unless someone can argue otherwise.
I am actually not planning on implementing DigiShield because of what you mentioned.

My idea was to implement a difficulty change every single block and keep the 11% maximum difficulty swing (up and down). So basically, the only change would be from every 48 blocks to every 1 block. The 11% max swing creates a smoother difficulty adjustment, and one that (with the 1 block adjustment time) would more rapidly adjust to incoming hashpower without overshooting and spiking difficulty to 100x higher and then being abandoned there. The 1 block adjustment time and 11% max swing allows the difficulty to climb quickly but gradually until the miners who are trying to exploit the difficulty level with their super high hash rate are discouraged and leave. The difficulty can climb back down at that point without having to come back from the stratosphere.

We just need a developer who is willing to accept the bounty (the larger it gets the easier the task of finding a good dev) and we can get rolling. Tranz is currently too busy with life to help so we must look on for another dev. He loves our community though and sends his love Smiley

Thanks for your support and input.
full member
Activity: 224
Merit: 250
April 15, 2014, 05:25:26 AM
every time I thought it can not get lower it fall.. this coin is near dead. I really want to know what we will do if asic miners will start attack this coin. I lost >500% and I think it will newer go up so high.
brand new
Activity: 0
Merit: 0
April 13, 2014, 01:52:33 AM
Sent 50 RPC to version 2.0 development! (That's about 0.05 BTC right now.)

I'd like to propose FIVE issues to tackle for version 2.0 launch:

1) Heartbleed exploit: I'm presuming since it affects Bitcoin-QT it also affects RonPaul-QT?  If we need to change the wallet anyway, now's the time to kill two birds with one stone.

In case you're the only one on the planet who hasn't learned about Heartbleed yet:
https://bitcointalksearch.org/topic/bitcoin-core-bitcoin-qt-091-released-update-required-562400

2) New difficulty adjustment: Did Colin definitively decide the fork will adopt the method of updating block difficulty per block as the solution, with no cap on maximum difficulty increase / decrease?

I'd rather Colin's proposal instead of modified KGW / DGW since the gravity well method's math is unclear, AFAIK.  I'd also vastly prefer it to DigiShield.

The only spec I've seen on DigiShield is here: http://www.reddit.com/r/Digibyte/comments/1yn6t1/digibyte_v_20_code_name_digishield/  
From what I guess, the quick upward adaptation is good against spikes, but the slow fall-off is going to mean long block times, long transaction confirmation times, and total net hashrate die-off as regular miners turn elsewhere when the difficulty remains high for a while after the spike is gone.  Not a big fan of DigiShield's approach, unless someone can argue otherwise.

3) I'd STILL love to see a link to a precious metals vendor as a public relations perk to accompany version 2.0 launch.  

4) Want to set up an advertising fund? I remain happy to advertise this coin, especially now that it's not plummeting on cryptsy.  If we can get the fork resolved, and establish some unique uses for RPC, I think it's a golden time to rep the coin.

5) Blue-chip pools: Not the only places where RPC'ers can mine, but a quality pool partnership list with the RPC community.  Miners hop all over the place, and it's annoying to hop around when a pool's total hashrate means that you miss most blocks.  At the very least, give these time-tested pools a special billing at the top of the "pools" section of the website.  Developing a special relationship with a few pool operators will help the regular mining community keep total nethash high by making it easy to join a stable, dedicated pool.  This is NOT centralization.  The goal is quality assurance: keep total net hash rate more stable by making it easy to join good pools right off the bat.

CHUNKY'S POOL rocks.  I've been parked there, it's reliable, the operator is attentive, and he's involved in this form.
hero member
Activity: 875
Merit: 1003
April 12, 2014, 10:22:29 PM
Sent the .05 btc.

RPC was/is ftw!
Thank you!

Matching 0.1 sent.
You are a man of his word and I respect that. Thank you.
hero member
Activity: 910
Merit: 1000
April 10, 2014, 07:27:49 AM

WEBSITE REDESIGN - FUNDRAISING GOAL = 0.5 BTC
BTC - 1PMen2shpbDCmzP2ZjqnyRCUyfFbd5sNF4 (click to see how much has been donated)
RPC - RHnxM8h46oni5KrHWcPkvWo6KJWVRWMG59
(click to see how much has been donated)

The website is not complete  its being built from scratch to allow for some extra flexibility. All source will be shared with dev.
Here is the homepage/ Template design of the website I am building to give you a taste of my work and to find out what the community thinks!
New HomePage Template
http://rpchome.cryptotycoons.com/

If you like it and want me to continue my work, donate to the links above!
I am open to all suggestions as well. I plan to launch a beta site, and get feedback from the community so that everyone is happy with the page! =)
If you have a request share it and I can probably do it!
While it seems the fork is the priority of the community, I don't want people to think I have forgotten or given up!
I can have the website finished and launched within 48 hours of bounty completion!

Also feedback on the look and feel is always welcome =)
full member
Activity: 168
Merit: 100
April 09, 2014, 10:10:06 PM
Matching 0.1 sent.
Pages:
Jump to: