Forum Home
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular

    [Dev] Feathercoin 0.9.6.2 * Maintenance fix, build & upgrade issues notes.

    Technical Development
    8
    153
    74612
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • wrapper
      wrapper Moderators last edited by wrapper

      [FAQ] How does the stealth keys work

      stealth.cpp

      int StealthSecret(ec_secret& secret, ec_point& pubkey, const ec_point& pkSpend, ec_secret& sharedSOut, ec_point& pkOut)
      {
          /* 
      send:
          secret = ephem_secret, pubkey = scan_pubkey
      
      receive:
          secret = scan_secret, pubkey = ephem_pubkey
          c = H(dP)
      
      Q = public scan key (EC point, 33 bytes)
      d = private scan key (integer, 32 bytes)
      R = public spend key
      f = private spend key
      
      Q = dG  // Single use private key
      R = fG
      
      Sender (has Q and R, not d or f):
      
      P = eG
      
      c = H(eQ) = H(dP)
      R' = R + cG
          
      Recipient gets R' and P
      test 0 and infinity?
      */
      
      1 Reply Last reply Reply Quote 0
      • Wellenreiter
        Wellenreiter Moderators @wrapper last edited by

        @wrapper said in [Dev] Feathercoin 0.9.6.2 * Maintenance fix, build & upgrade issues notes.:

        In this shadow coding why is raw.push_back(0); // ? called twice?

        Raw is an array like data structure and you add two items to the array

        Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
        Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

        1 Reply Last reply Reply Quote 1
        • wrapper
          wrapper Moderators last edited by wrapper

          [FAQ] How do I create a file of the Feathercoin blockchain that I can import into other wallets?

          You can concatenate the FTC blocks into a bootstrap.dat file. This bootstrap.dat file can be copied into the .feathercoin or blockchain directory of the new wallet.

          When it starts the new wallet will recognize the bootstrap.dat and import the blockchain from disk, but will do all the normal synchronization validation checks in the process. Do not restart as it will rename the bootstrap.dat and proceed online.

          You can lelete the bootsrap.dat after the sync.

          Find your local blockchain:

          cd ~/.feathercoin/blocks
          

          Concatenate all your blkxxxxx.dat files and place the result in bootstrap.dat:

          cat blk* > bootstrap.dat
          

          In Windows :

          COPY /b blk0001.dat+blk0002.dat bootstrap.dat
          
          1 Reply Last reply Reply Quote 1
          • wrapper
            wrapper Moderators last edited by wrapper

            Sync speed test 0.9.6.2-dev using Bootstrap.dat

            Interesting points to note :

            Change over to Neoscrypt starts at 2:30 hrs or Hard Fork 4 - Block 432000

            Blocks processed against time

            0.9.6.1 sync speed test

            Block Rate per minute against blocks

            0.9.6.1 sync speed test

            1 Reply Last reply Reply Quote 0
            • wrapper
              wrapper Moderators last edited by

              Review if 0.9.x series Bitcoin Commits

              0.9.6.3.x

              1. Don’t poll showmyip.com, it doesn’t exist anymore

              Fixes #4679.

              This leaves us with only one candidate, checkip.dyndns.org.
              GetMyExternalIP should be phased out as soon as possible.

              https://github.com/bitcoin/bitcoin/commit/5332b0a429f42c49c4b70e71870f2202c0cfa844

              1 Reply Last reply Reply Quote 0
              • wrapper
                wrapper Moderators last edited by wrapper

                Testing @Bushstar fixes / regtest

                Console message :
                SSE2 unsupported, optimisations disabled

                init.cpp ~L480

                opt_flags = cpu_vec_exts();
                    if(GetBoolArg("-sse2", true)) {
                        /* Verify hardware SSE2 support */
                        if(opt_flags & 0x00000020) {
                            printf("SSE2 optimisations enabled\n");
                            nNeoScryptOptions |= 0x1000;
                        } else {
                            printf("SSE2 unsupported, optimisations disabled\n");
                        }
                    } else {
                        printf("SSE2 optimisations disabled\n");
                    }
                

                Notes

                SSE2 stands for Streaming SIMD Extensions 2 which is a standard on processors for a long time. This will enhance the security of your hardware against malicious software attacks by viruses and other malware.

                These three are actually a hard core requirement for Windows 8 installation. If anyone of them is missing, Windows 8 will not install on your computer. So this has to be taken care even before you buy a new license of Windows 8.

                https://stackoverflow.com/questions/2403660/determine-processor-support-for-sse2

                Call CPUID with eax = 1 to load the feature flags in to edx. Bit 26 is set if SSE2 is available.

                https://gist.github.com/hi2p-perim/7855506

                I’ve output the value of opt_flags
                opt_flags : = 0 SSE2 optimisations disabled

                Putting -sse2=false or true seemed to work , so -sse2 is true

                1 Reply Last reply Reply Quote 0
                • ghostlander
                  ghostlander Regular Member last edited by

                  It means the flags haven’t been set up properly. Maybe compiled without the assembly code.

                  1 Reply Last reply Reply Quote 1
                  • wrapper
                    wrapper Moderators last edited by wrapper

                    error message review review.

                    main.cpp ~L502, ~L 899, ~L2866, L898, L1502
                    miner…cpp L486
                    db.cpp L106

                    src/addrman.h ~L422 logprint, ~L411, logprint, ~L442 logprint

                    net.cpp ~L318 , L362
                    https://github.com/wrapperband/Feathercoin/commit/042e6c874b8e7a2a79b7daad2ffe6642efbcb291

                    netbase L360 LogPrint(),

                    checkpointsync.cpp L275, L291, L336 , L470, L381, L438, L444, L516,
                    https://github.com/wrapperband/Feathercoin/commit/161ac3d8ea70e17a324b5f835788f49fa6b597b3

                    rpcserver.cpp L666,

                    1 Reply Last reply Reply Quote 0
                    • Bushstar
                      Bushstar last edited by

                      It should be adding the assembly, if you try and compile without setting AM_PROG_AS it complains. I’ll take a look at it and see what’s wrong.

                      Donate: 6hf9DF8H67ZEoW9KmPJez6BHh4XPNQSCZz

                      1 Reply Last reply Reply Quote 2
                      • wrapper
                        wrapper Moderators last edited by wrapper

                        Error creating wallet.dat from scratch.

                        Works with release 0.9.6.1 Doesn’t work with --incompatible database.

                        BDB 4.8 and 5.1 have worked previously, seems to be issue with bdb 5.3

                        error creating a new wallet.dat. 0.9.6.2

                        EXCEPTION: St13runtime_error
                        CDB : Error 22, can’t open database wallet.dat
                        feathercoin in Runaway exception

                        Error initializing wallet database environment /home/wrapper/.feathercoin!

                        1 Reply Last reply Reply Quote 0
                        • wrapper
                          wrapper Moderators last edited by

                          @Cookieboy Docker Test set-ups OpenName?

                          https://michael.mckinnon.id.au/2016/05/13/building-a-namecoin-server-with-ubuntu-16-04/

                          1 Reply Last reply Reply Quote 0
                          • wrapper
                            wrapper Moderators last edited by wrapper

                            [FAQ] Is it trivial to change a Feathercoin portable wallet file to libdb 4.8?

                            Version 4.8 is not a requirement, just a recommendation. You can compile your own version and use newer versions of BDB by passing --with-incompatible-bdb to configure.

                            The main reason it is discouraged is because it breaks compatibility with the pre-built binaries. If you’re building from source you may not care.

                            But even if you do, it is trivial to convert your wallet back to a 4.8 wallet if you’re stuck with a 5.1 or 5.3 one. Use the bdb tools (packages db4.8-util db5.1-util on Ubuntu):

                            Code:

                            db5.1_dump wallet.dat.db5 | db4.8_load wallet.dat.db4
                            

                            [Ref:]
                            https://bitcointalk.org/index.php?topic=502482.0

                            Wellenreiter 1 Reply Last reply Reply Quote 0
                            • wrapper
                              wrapper Moderators last edited by wrapper

                              0.9.6.2 resync from scratch - debug.log size

                              Debug.log size ~8GB

                              Example messages :

                              2017-09-08 11:01:02 FindStealthTransactions() tx:1a6d82536f8800f9535af0d921c9c4b0bd5ed63f7ed98d496ea489a3c96199d6,BOOST_$
                              2017-09-08 11:01:02 txout scriptPubKey= 02bdd2463b241c6983e30fcec049028bd35a2c46b27751267e097d7ea730d86477 OP_CHECKSIG
                              2017-09-08 11:01:02 txout hash = a70281794fa18919284ce0825bb97985be0fd5351d70790f18cb295171a032cf
                              2017-09-08 11:01:02 ProcessBlock: ACCEPTED
                              2017-09-08 11:01:02 ProcessBlock: Preliminary checks
                              2017-09-08 11:01:02 AcceptBlockHeader,nHeight=14138
                              2017-09-08 11:01:02 GetNextWorkRequired pindexLast block Height=14137,nBits=486604799
                              2017-09-08 11:01:02 GetNextWorkRequired the next block Height=14138
                              2017-09-08 11:01:02 GetNextWorkRequired fork
                              2017-09-08 11:01:02 ConnectBlock hashPrevBlock=da6f4030e5784d44bf6487f714f97364c4d1d4230c7921ac83fbdb0a75b3da9d
                              2017-09-08 11:01:02 ConnectBlock view.GetBestBlock()=da6f4030e5784d44bf6487f714f97364c4d1d4230c7921ac83fbdb0a75b3da9d
                              2017-09-08 11:01:02 AddToWalletIfInvolvingMe,hash=53e2bcbb25acf1d2a5f14f8fa21f1251ec533567ca9c0cf7431fe27944d4f55e .
                              
                              2017-09-08 11:01:45 ERROR: ProcessBlock() : already have block 528 3d00776e6a58b274553a08f865f243e4c76d2ff2f2bdc80ae9d65$
                              2017-09-08 11:01:45 ERROR: ProcessBlock() : already have block 529 8f9ce5631e4da83f485bbaabd05b2103e2031cc171f3bd19c424f$
                              2017-09-08 11:01:45 ERROR: ProcessBlock() : already have block 530 5e552737f864c8e40b8870fa6005cda91801042e67d41f96a352b$
                              
                              
                              2017-09-08 11:13:59 BOOST_FOREACH nOutputIdOuter=1 ,find txout...
                              2017-09-08 11:13:59 txout scriptPubKey= OP_DUP OP_HASH160 70fd39db258cc19a4d89a3ab0e329927c1688e07 OP_EQUALVERIFY OP_CHECKSIG
                              2017-09-08 11:13:59 txout hash = 42c514bfd4afd25857c86633b4a645a94a15326308d42a4c63e42bc7a7f0d2d9
                              2017-09-08 11:13:59 AddToWalletIfInvolvingMe,hash=1dd3621d64f782e0c8200c4063283d38189d1c29976fb0597e674c4ef249c612 .
                              2017-09-08 11:13:59 FindStealthTransactions() tx:1dd3621d64f782e0c8200c4063283d38189d1c29976fb0597e674c4ef249c612,BOOST_FOREACH nOutputIdOuter=0 ,find txout...
                              2017-09-08 11:13:59 txout scriptPubKey= OP_DUP OP_HASH160 f1f717b9371a1a39a1c96f1138e0207f44e9b1fc OP_EQUALVERIFY OP_CHECKSIG
                              2017-09-08 11:13:59 txout hash = beee7a6b781b42fcb81f0e64be3df2e5d8b7dbad17ffb94ab258bd83e705a4fb
                              2017-09-08 11:13:59 BOOST_FOREACH nOutputIdOuter=1 ,find txout...
                              
                              2017-09-08 11:48:16 AcceptBlockHeader,nHeight=212619 
                              2017-09-08 11:48:16 GetNextWorkRequired pindexLast block Height=212618,nBits=470153547 
                              2017-09-08 11:48:16 GetNextWorkRequired the next block Height=212619 
                              2017-09-08 11:48:16 GetNextWorkRequired fork
                              2017-09-08 11:48:16 Difficulty rules regular blocks 
                              2017-09-08 11:48:16 GetNextWorkRequired(), nActualTimespan = 4  before bounds
                              2017-09-08 11:48:16 RETARGET: nActualTimespanShort = 86, nActualTimespanMedium = 71, nActualTimespanLong = 65, nActualTimeSpanAvg = 74, nActualTimespan (damped) = 63
                              2017-09-08 11:48:16 RETARGET: nActualTimespan = 63 after bounds
                              2017-09-08 11:48:16 RETARGET: nTargetTimespan = 60, nTargetTimespan/nActualTimespan = 0.9524
                              2017-09-08 11:48:16 GetNextWorkRequired RETARGET
                              2017-09-08 11:48:16 nTargetTimespan = 60    nActualTimespan = 63
                              2017-09-08 11:48:16 Before: 1c05f94b  0000000005f94b00000000000000000000000000000000000000000000000000
                              2017-09-08 11:48:16 After:  1c0645c1  000000000645c1f3333333333333333333333333333333333333333333333333
                              2017-09-08 11:48:16 ConnectBlock hashPrevBlock=c99dcb4dfb188f08e113cc0227dbb078b91a2ba1eb211747df6e93c2a3c1f8f9 
                              2017-09-08 11:48:16 ConnectBlock view.GetBestBlock()=c99dcb4dfb188f08e113cc0227dbb078b91a2ba1eb211747df6e93c2a3c1f8f9 
                              
                              2017-09-08 18:06:29 txout hash = bb18e80f5d0fb64e8ef641b915529ac5e163a65c542117285e35fae601fb1e72
                              2017-09-08 18:06:29 ProcessBlock: ACCEPTED
                              2017-09-08 18:06:29 ProcessBlock: Preliminary checks 
                              2017-09-08 18:06:29 ERROR: matches claimed amount, CheckProofOfWork() : hash doesn't match nBits
                              2017-09-08 18:06:29 AcceptBlockHeader,nHeight=808507 
                              2017-09-08 18:06:29 GetNextWorkRequired pindexLast block Height=808506,nBits=471031556 
                              2017-09-08 18:06:29 GetNextWorkRequired the next block Height=808507 
                              
                              UpdateTip: new best=90ff2216fefd3585d6227b9ad98742c2dee0799950f96008c739853aeaa00a91  height=762942  log2_work=57.908051  tx=2002507  date=2015-06-23 16:01:34 progress=0.476417
                              
                              1 Reply Last reply Reply Quote 0
                              • Wellenreiter
                                Wellenreiter Moderators @wrapper last edited by

                                @wrapper said in [Dev] Feathercoin 0.9.6.2 * Maintenance fix, build & upgrade issues notes.:

                                [FAQ] Is it trivial to change a Feathercoin portable wallet file to libdb 4.8?

                                Version 4.8 is not a requirement, just a recommendation. You can compile your own version and use newer versions of BDB by passing --with-incompatible-bdb to configure.

                                The main reason it is discouraged is because it breaks compatibility with the pre-built binaries. If you’re building from source you may not care.

                                But even if you do, it is trivial to convert your wallet back to a 4.8 wallet if you’re stuck with a 5.1 or 5.3 one. Use the bdb tools (packages db4.8-util db5.1-util on Ubuntu):

                                Code:

                                db5.1_dump wallet.dat.db5 | db4.8_load wallet.dat.db4
                                

                                [Ref:]
                                https://bitcointalk.org/index.php?topic=502482.0

                                Well if one needs to convert the db, it would be easier to export the private keys, compile a wallet with the desired bdb version and import the private keys again.

                                Our precompiled Linux binaries contained in the installation packages care compiled with the default bdb contained in the distributions, so they will work on a given system/distribution.

                                Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                                Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                                wrapper 1 Reply Last reply Reply Quote 0
                                • wrapper
                                  wrapper Moderators @Wellenreiter last edited by wrapper

                                  @Wellenreiter said in [Dev] Feathercoin 0.9.6.2 * Maintenance fix, build & upgrade issues notes.:

                                  Well if one needs to convert the db, it would be easier to export the private keys, compile a wallet with the desired bdb version and import the private keys again.

                                  Good idea but (re: Catch22) I can’t read the wallet.dat to export the private keys, as it says it is corrupt.

                                  Wellenreiter 1 Reply Last reply Reply Quote 0
                                  • Wellenreiter
                                    Wellenreiter Moderators @wrapper last edited by

                                    @wrapper

                                    Always do backups in time ;)
                                    you are in the worst situation, that can happen…

                                    Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                                    Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                                    1 Reply Last reply Reply Quote 0
                                    • wrapper
                                      wrapper Moderators last edited by wrapper

                                      A new version of zxing-cpp (zebra crossing QR code library), has been released.

                                      https://github.com/glassechidna/zxing-cpp/pull/57

                                      *   Installation working as a configuration package
                                      *   Fix source listing to not use GLOB per CMake recommendation. Files
                                          are listed explicitly in source_files.cmake so that if file listing
                                          changes, CMake can detect it and regenerate as needed.
                                      *   Added debug postfix for libs for side-by-side installation of different
                                          build variants (libzxing.lib and libzxing-debug.lib on Windows)
                                      
                                      Notes:
                                      
                                      *  Proper versioning is not being done in the installation config package. If a version is known, it should be added.
                                      *  I had to comment out the windows-specific stuff (core/win32) because it caused compiler issues in Windows SDK headers.
                                      
                                      Wellenreiter 1 Reply Last reply Reply Quote 0
                                      • wrapper
                                        wrapper Moderators last edited by wrapper

                                        Sync test from Bootstrap.dat 0.9.6.2 – Debug.log spam messages 8.5GB 35-hours

                                        Needs further investigation

                                        This message It has been reported as superflous error, it does not seem to indicate a fault. It incorrectly specified error message.

                                        ERROR: matches claimed amount, CheckProofOfWork() : hash doesn’t match nBits
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L1502

                                        Need “removing” from release build

                                        FindStealthTransactions() tx:1a6d82536f8800f9535af0d921c9c4b0bd5ed63f7ed98d496ea489a3c96199d6,BOOST_$
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/wallet.cpp#L1961

                                        txout scriptPubKey
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/wallet.cpp#L1985

                                        txout hash =
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/wallet.cpp#L1986

                                        ProcessBlock: ACCEPTED
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L3265

                                        ProcessBlock: Preliminary checks
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L3198

                                        AcceptBlockHeader,nHeight=
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L2936

                                        GetNextWorkRequired pindexLast
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L1313

                                        GetNextWorkRequired the next block Height=14138
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L1314

                                        GetNextWorkRequired fork
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L1323

                                        ConnectBlock hashPrevBlock=
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L1952

                                        ConnectBlock view.GetBestBlock()=
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L1953

                                        AddToWalletIfInvolvingMe,hash=5
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/wallet.cpp#L708

                                        ERROR: ProcessBlock() : already have block 528
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L3193

                                        BOOST_FOREACH nOutputIdOuter=1 ,find txout…
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/wallet.cpp#L708

                                        txout scriptPubKey= OP_DUP OP_HASH160
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/wallet.cpp#L1985

                                        Difficulty rules regular blocks
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L3193

                                        GetNextWorkRequired(), nActualTimespan = 4 before bounds
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L1383

                                        RETARGET: nActualTimespanShort = 86, nActualTimespanMedium = 71, nActualTimespanLong = 65, nActualTimeSpanAvg = 74, nActualTimespan (damped) = 63
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L1442

                                        RETARGET: nActualTimespan = 63 after bounds
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L1465

                                        RETARGET: nTargetTimespan = 60, nTargetTimespan/nActualTimespan = 0.9524
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L1466

                                        GetNextWorkRequired RETARGET
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L1480

                                        nTargetTimespan = 60 nActualTimespan = 63
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L1481

                                        Before: 1c05f94b 0000000005f94b00000000000000000000000000000000000000000000000000
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L1482

                                        After: 1c0645c1 000000000645c1f3333333333333333333333333333333333333333333333333
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L1483

                                        UpdateTip: new best=90ff2216fefd3585d6227b9ad98742c2dee0799950f96008c739853aeaa00a91 height=762942 log2_work=57.908051 tx=2002507 date=2015-06-23 16:01:34 progress=0.476417
                                        https://github.com/FeatherCoin/Feathercoin/blob/master-0.9/src/main.cpp#L2139

                                        1 Reply Last reply Reply Quote 0
                                        • Wellenreiter
                                          Wellenreiter Moderators @wrapper last edited by

                                          @wrapper said in [Dev] Feathercoin 0.9.6.2 * Maintenance fix, build & upgrade issues notes.:

                                          A new version of zxing-cpp (zebra crossing QR code library), has been released.

                                          Just triggered a build on the package repository.

                                          Feathercoin development donation address: 6p8u3wtct7uxRGmvWr2xvPxqRzbpbcd82A
                                          Openpgp key: 0x385C34E77F0D74D7 (at keyserver.ubuntu.com)/fingerprint: C7B4 E9EA 17E1 3D12 07AB 1FDB 385C 34E7 7F0D 74D7

                                          1 Reply Last reply Reply Quote 1
                                          • wrapper
                                            wrapper Moderators last edited by wrapper

                                            main.cpp#L1488

                                            bool CheckProofOfWork(uint256 hash, unsigned int nBits)
                                            {
                                                CBigNum bnTarget;
                                                bnTarget.SetCompact(nBits);
                                            
                                                // Check range
                                                if (bnTarget <= 0 || bnTarget > Params().ProofOfWorkLimit())
                                                    return error("Check range CheckProofOfWork() : nBits below minimum work");
                                            
                                                // Check proof of work matches claimed amount
                                                //LogPrintf("CheckProofOfWork() hash=%s \n",hash.ToString().c_str());
                                                //LogPrintf("CheckProofOfWork() nBits=%i \n",nBits);
                                                //LogPrintf("CheckProofOfWork() bnTarget.getuint256=%s \n",bnTarget.getuint256().ToString().c_str());
                                                if (hash > bnTarget.getuint256())
                                                    return error("matches claimed amount, CheckProofOfWork() : hash doesn't match nBits");
                                            
                                            return true;
                                            
                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post