Bitcoin Forum
April 26, 2024, 07:18:58 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 [47] 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 »
  Print  
Author Topic: New Ixcoin fork -> I0coin  (Read 216909 times)
twobits
Sr. Member
****
Offline Offline

Activity: 574
Merit: 250



View Profile
August 25, 2011, 05:34:37 AM
 #921

That's with the block chain already deleted to start from scratch, actually.
Yes, you're right, I just tested. It looks like the i0coin network is dead. Perhaps the maintainer of the software can comment.

Just tried i0coin for fun after reading this.  I keep bouncing around between 3-5 connections and am sitting @ 14514 blocks

█████                █████      ███████             
█████                ███    █████████████       
█████                ██  █████████████████   
█████                █  ██████              ██████ 
█████                    ████                      ████ 
█████████████  █████                        ████
█████████████  █████                        ████
█████████████  █████                        ████
█████                    █████                             
█████                █  ██████              ███████
█████                ██  ███████████    █████ 
█████                ███    █████████    ████   
█████                █████      ███████    ██
███
███
███
███
███
███
███
███
███
HyperQuant.net
Platform for Professional Asset Management
███
███
███
███
███
███
███
███
███
WhitePaper
One-Pager
███
███
███
███
███
███
███
███
███
Telegram 
Facebook
Twitter
Medium
███
███
███
███
███
███
███
███
███
███
███
███
███
███
███
███
███
███
█████                █████      ███████             
█████                ███    █████████████       
█████                ██  █████████████████   
█████                █  ██████              ██████ 
█████                    ████                      ████ 
█████████████  █████                        ████
█████████████  █████                        ████
█████████████  █████                        ████
█████                    █████                             
█████                █  ██████              ███████
█████                ██  ███████████    █████ 
█████                ███    █████████    ████   
█████                █████      ███████    ██
1714159138
Hero Member
*
Offline Offline

Posts: 1714159138

View Profile Personal Message (Offline)

Ignore
1714159138
Reply with quote  #2

1714159138
Report to moderator
1714159138
Hero Member
*
Offline Offline

Posts: 1714159138

View Profile Personal Message (Offline)

Ignore
1714159138
Reply with quote  #2

1714159138
Report to moderator
Even in the event that an attacker gains more than 50% of the network's computational power, only transactions sent by the attacker could be reversed or double-spent. The network would not be destroyed.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
ArtForz
Sr. Member
****
Offline Offline

Activity: 406
Merit: 257


View Profile
August 25, 2011, 06:08:54 AM
 #922

The one week part of "one week or 2016 blocks" retargeting is b0rked.
Downloading the chain with a fresh datadir makes it try to retarget at block 1.
Then it tries to go back 2016 blocks. from block 1. Boom, NULL pointer.
With a client that already has the blockchain up to some point in the past, it'll start disagreeing on what the target should be (again, mistrigger of the after-7-days stuff)... around now.
Easy Fix: pull a Thomas and blatantly rip off solidcoins retargeting algo.

bitcoin: 1Fb77Xq5ePFER8GtKRn2KDbDTVpJKfKmpz
i0coin: jNdvyvd6v6gV3kVJLD7HsB5ZwHyHwAkfdw
smoothie
Legendary
*
Offline Offline

Activity: 2492
Merit: 1473


LEALANA Bitcoin Grim Reaper


View Profile
August 25, 2011, 06:25:19 AM
 #923

Easy Fix: pull a Thomas and blatantly rip off solidcoins retargeting algo.

+1 LOL

███████████████████████████████████████

            ,╓p@@███████@╗╖,           
        ,p████████████████████N,       
      d█████████████████████████b     
    d██████████████████████████████æ   
  ,████²█████████████████████████████, 
 ,█████  ╙████████████████████╨  █████y
 ██████    `████████████████`    ██████
║██████       Ñ███████████`      ███████
███████         ╩██████Ñ         ███████
███████    ▐▄     ²██╩     a▌    ███████
╢██████    ▐▓█▄          ▄█▓▌    ███████
 ██████    ▐▓▓▓▓▌,     ▄█▓▓▓▌    ██████─
           ▐▓▓▓▓▓▓█,,▄▓▓▓▓▓▓▌          
           ▐▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▌          
    ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓─  
     ²▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╩    
        ▀▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▀       
           ²▀▀▓▓▓▓▓▓▓▓▓▓▓▓▀▀`          
                   ²²²                 
███████████████████████████████████████

. ★☆ WWW.LEALANA.COM        My PGP fingerprint is A764D833.                  History of Monero development Visualization ★☆ .
LEALANA BITCOIN GRIM REAPER SILVER COINS.
 
coblee
Donator
Legendary
*
Offline Offline

Activity: 1653
Merit: 1286


Creator of Litecoin. Cryptocurrency enthusiast.


View Profile
August 25, 2011, 06:25:29 AM
 #924

The one week part of "one week or 2016 blocks" retargeting is b0rked.
Downloading the chain with a fresh datadir makes it try to retarget at block 1.
Then it tries to go back 2016 blocks. from block 1. Boom, NULL pointer.
With a client that already has the blockchain up to some point in the past, it'll start disagreeing on what the target should be (again, mistrigger of the after-7-days stuff)... around now.
Easy Fix: pull a Thomas and blatantly rip off solidcoins retargeting algo.

Well, that's a big failure. I guess this was never tested so it could be released so soon after ixcoin.

Given that i0coin price is down the drain, it would probably not even be worth fixing. Even if it was fixed, not many people would even bother downloading a new client. Most people have either moved on to SolidCoins or back to Bitcoin. Well it was fun while it lasted. Smiley

doublec
Legendary
*
Offline Offline

Activity: 1078
Merit: 1005


View Profile
August 25, 2011, 06:32:23 AM
 #925

Deposits and withdrawals in for i0coins in the i0coin exchange are suspended until the issue is fixed. This is to prevent withdrawals occurring on a 'split' chain and the receipient on a different split of the chain not getting their funds. Let's hope the developers comes up with a fix!
ArtForz
Sr. Member
****
Offline Offline

Activity: 406
Merit: 257


View Profile
August 25, 2011, 07:05:21 AM
 #926

Something like this should do the trick (disable the broken one-week crap, switch to solidcoin algo after block 14639).

Code:
diff -Nur I0coinClientv1.0-linux-stable-orig/src/main.cpp I0coinClientv1.0-linux-stable-dev/src/main.cpp
--- I0coinClientv1.0-linux-stable-orig/src/main.cpp 2011-08-18 23:15:50.000000000 +0200
+++ I0coinClientv1.0-linux-stable-dev/src/main.cpp 2011-08-25 08:23:52.143725519 +0200
@@ -644,7 +644,7 @@
     return nSubsidy + nFees;
 }
 
-unsigned int static GetNextWorkRequired(const CBlockIndex* pindexLast)
+unsigned int static GetNextWorkRequired_OLD(const CBlockIndex* pindexLast)
 {
     const int64 nTargetTimespan = 7 * 24 * 60 * 60; // two weeks
     const int64 nTargetSpacing = 5 * 60;
@@ -659,6 +659,7 @@
     // Only change once per interval
  if ( nRemaining != 0)
  {
+/* HORRIBLY BROKEN, *NEVER* use time() in here
  const CBlockIndex* pindexFirst = pindexLast;
  for (int i = 0; pindexFirst && i < nRemaining-1; i++)
  pindexFirst = pindexFirst->pprev;
@@ -666,6 +667,7 @@
 
  int64 rema = GetAdjustedTime() - pindexFirst->GetBlockTime();
  if(rema < nTargetTimespan)
+*/
  return pindexLast->nBits;
  }
 
@@ -691,6 +693,71 @@
 
     if (bnNew > bnProofOfWorkLimit)
         bnNew = bnProofOfWorkLimit;
+
+    /// debug print
+    printf("GetNextWorkRequired RETARGET\n");
+    printf("nTargetTimespan = %"PRI64d"    nActualTimespan = %"PRI64d"\n", nTargetTimespan, nActualTimespan);
+    printf("Before: %08x  %s\n", pindexLast->nBits, CBigNum().SetCompact(pindexLast->nBits).getuint256().ToString().c_str());
+    printf("After:  %08x  %s\n", bnNew.GetCompact(), bnNew.getuint256().ToString().c_str());
+
+    return bnNew.GetCompact();
+}
+
+//blatantly stolen from SolidCoin
+unsigned int static GetNextWorkRequired(const CBlockIndex* pindexLast)
+{
+    const int64 nTargetTimespan = 12 * 60 * 60; // 12 hours
+    const int64 nTargetSpacing = 3 * 60;    //3 minute blocks
+    const int64 nInterval = nTargetTimespan / nTargetSpacing;
+
+    // Genesis block
+    if (pindexLast == NULL)
+        return bnProofOfWorkLimit.GetCompact();
+
+//okay, maybe not this line
+    if ((pindexLast->nHeight+1) < 14640)
+        return GetNextWorkRequired_OLD(pindexLast);
+
+    // Only change once per interval
+    if ((pindexLast->nHeight+1) % nInterval != 0)
+        return pindexLast->nBits;
+
+    // Go back by what we want to be 14 days worth of blocks
+    const CBlockIndex* pindexFirst = pindexLast;
+    for (int i = 0; pindexFirst && i < nInterval-1; i++)
+        pindexFirst = pindexFirst->pprev;
+    assert(pindexFirst);
+
+    // Limit adjustment step
+    int64 nActualTimespan = pindexLast->GetBlockTime() - pindexFirst->GetBlockTime();
+    int64 nTwoPercent = nTargetTimespan/50;
+    //printf("  nActualTimespan = %"PRI64d"  before bounds\n", nActualTimespan);
+
+    if (nActualTimespan < nTargetTimespan)  //is time taken for a block less than 3minutes?
+    {
+         //limit increase to a much lower amount than dictates to get past the pump-n-dump mining phase
+        //due to retargets being done more often it also needs to be lowered significantly from the 4x increase
+        if(nActualTimespan<(nTwoPercent*16)) //less than a minute?
+            nActualTimespan=(nTwoPercent*45); //pretend it was only 10% faster than desired
+        else if(nActualTimespan<(nTwoPercent*32)) //less than 2 minutes?
+            nActualTimespan=(nTwoPercent*47); //pretend it was only 6% faster than desired
+        else
+            nActualTimespan=(nTwoPercent*49); //pretend it was only 2% faster than desired
+
+        //int64 nTime=nTargetTimespan-nActualTimespan;
+        //nActualTimespan = nTargetTimespan/2;
+    }
+    else if (nActualTimespan > nTargetTimespan*4)   nActualTimespan = nTargetTimespan*4;
+
+    // Retarget
+    CBigNum bnNew;
+    bnNew.SetCompact(pindexLast->nBits);
+    bnNew *= nActualTimespan;
+    bnNew /= nTargetTimespan;
+
+
+    if (bnNew > bnProofOfWorkLimit)
+        bnNew = bnProofOfWorkLimit;
 
     /// debug print
     printf("GetNextWorkRequired RETARGET\n");

bitcoin: 1Fb77Xq5ePFER8GtKRn2KDbDTVpJKfKmpz
i0coin: jNdvyvd6v6gV3kVJLD7HsB5ZwHyHwAkfdw
deepceleron
Legendary
*
Offline Offline

Activity: 1512
Merit: 1025



View Profile WWW
August 25, 2011, 10:05:54 AM
Last edit: August 25, 2011, 10:23:23 AM by deepceleron
 #927

birth and death of a fork. the start is late for a day or so. let's see if it will become a zombie after the retargeting  Cheesy

It is only truly dead after no one ever speaks its name again.
MaGNeT
Legendary
*
Offline Offline

Activity: 1526
Merit: 1002


Waves | 3PHMaGNeTJfqFfD4xuctgKdoxLX188QM8na


View Profile WWW
August 25, 2011, 10:25:20 AM
 #928

Something like this should do the trick (disable the broken one-week crap, switch to solidcoin algo after block 14639).


I think this is how it should be solved.
MaGNeT
Legendary
*
Offline Offline

Activity: 1526
Merit: 1002


Waves | 3PHMaGNeTJfqFfD4xuctgKdoxLX188QM8na


View Profile WWW
August 25, 2011, 04:17:31 PM
 #929

Any updates?
virtualfaqs
Hero Member
*****
Offline Offline

Activity: 700
Merit: 500



View Profile WWW
August 26, 2011, 09:58:13 AM
 #930

Sorry if this is the wrong place to post, but I couldn't find anywhere else.

Is anyone selling i0coins?

Thanks.

https://twitter.com/virtualfaqs
Looking for altcoin pump advice? Then follow me.
MaGNeT
Legendary
*
Offline Offline

Activity: 1526
Merit: 1002


Waves | 3PHMaGNeTJfqFfD4xuctgKdoxLX188QM8na


View Profile WWW
August 26, 2011, 05:38:27 PM
 #931

When is this fixed? Do we need >48 hours to copy/paste some code?

ArtForz
Sr. Member
****
Offline Offline

Activity: 406
Merit: 257


View Profile
August 26, 2011, 06:17:12 PM
 #932

Well, kr105 seems unable/unwilling/busy/run over by a bus... so... *shrug*.

bitcoin: 1Fb77Xq5ePFER8GtKRn2KDbDTVpJKfKmpz
i0coin: jNdvyvd6v6gV3kVJLD7HsB5ZwHyHwAkfdw
gw4tt
Full Member
***
Offline Offline

Activity: 126
Merit: 100


View Profile
August 26, 2011, 07:00:25 PM
 #933

IXCoin is going back up, it's at around 0.0027 right now. Not nearly as impressive as solidcoin, but way better than i0coin.
d.james
Sr. Member
****
Offline Offline

Activity: 280
Merit: 250

Firstbits: 12pqwk


View Profile
August 26, 2011, 07:50:59 PM
 #934

maybe i0coin should have some premine/bounty after all,
so the creator would have some benefit fixing the code.

You can not roll a BitCoin, but you can rollback some. Cheesy
Roll me back: 1NxMkvbYn8o7kKCWPsnWR4FDvH7L9TJqGG
AlexNeto
Hero Member
*****
Offline Offline

Activity: 658
Merit: 536


Z-pay.io


View Profile WWW
August 27, 2011, 04:40:52 AM
 #935

Does anyone has i0coins for sale?
Pm me.

🔥Z-pay.io🔥 - Anonymous bitcoin cheques. FREE mixing.

☝️             ☝️                 ☝️
kano
Legendary
*
Offline Offline

Activity: 4466
Merit: 1800


Linux since 1997 RedHat 4


View Profile
August 27, 2011, 01:45:03 PM
 #936

So I guess if whoever was actually in charge of i0coins doesn't do something very soon,
we can assume that someone else can/will take over this?

Heck I run my own modified bitcoind client/server for BTC so it's not that hard to do (except I don't have windows)

... and this is a thread about i0coins NOT ix ...

Pool: https://kano.is - low 0.5% fee PPLNS 3 Days - Most reliable Solo with ONLY 0.5% fee   Bitcointalk thread: Forum
Discord support invite at https://kano.is/ Majority developer of the ckpool code - k for kano
The ONLY active original developer of cgminer. Original master git: https://github.com/kanoi/cgminer
d.james
Sr. Member
****
Offline Offline

Activity: 280
Merit: 250

Firstbits: 12pqwk


View Profile
August 27, 2011, 07:36:04 PM
 #937

yup, if kr105 doesn't respond very soon we'll just have to adjust the client on our own and hopefully everyone else will update to the same codes.

You can not roll a BitCoin, but you can rollback some. Cheesy
Roll me back: 1NxMkvbYn8o7kKCWPsnWR4FDvH7L9TJqGG
MaGNeT
Legendary
*
Offline Offline

Activity: 1526
Merit: 1002


Waves | 3PHMaGNeTJfqFfD4xuctgKdoxLX188QM8na


View Profile WWW
August 28, 2011, 08:39:59 AM
 #938

maybe i0coin should have some premine/bounty after all,
so the creator would have some benefit fixing the code.

I would like to setup a bounty for fixing i0coins:

200 i0coins for the one who fixes it!

Who wants to add some more? Quote and add your name to the list!

Bounty list:

MaGNeT - 200 i0coins
d.james
Sr. Member
****
Offline Offline

Activity: 280
Merit: 250

Firstbits: 12pqwk


View Profile
August 28, 2011, 10:07:59 AM
 #939


I would like to setup a bounty for fixing i0coins:

200 i0coins for the one who fixes it!

Who wants to add some more? Quote and add your name to the list!

Bounty list:

MaGNeT - 200 i0coins
d.james - 400 i0coins

Total - 600 i0coins

^^ I'll double your bounty.

You can not roll a BitCoin, but you can rollback some. Cheesy
Roll me back: 1NxMkvbYn8o7kKCWPsnWR4FDvH7L9TJqGG
sd
Hero Member
*****
Offline Offline

Activity: 730
Merit: 500



View Profile
August 28, 2011, 10:41:39 AM
 #940

The one week part of "one week or 2016 blocks" retargeting is b0rked.
Downloading the chain with a fresh datadir makes it try to retarget at block 1.
Then it tries to go back 2016 blocks. from block 1. Boom, NULL pointer.
With a client that already has the blockchain up to some point in the past, it'll start disagreeing on what the target should be (again, mistrigger of the after-7-days stuff)... around now.
Easy Fix: pull a Thomas and blatantly rip off solidcoins retargeting algo.

Indeed, it should be an easy fix. Not that I've ever looked at the code, there might be reasons why this isn't an easy fix.


Software development in one line:

Develop -> Test it compiles -> Automated Unit Tests -> Test functionality -> User Acceptance testing -> Alpha -> Beta -> RC -> Production
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 [47] 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 »
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!