milirep.blogg.se

Bip65 reference miner
Bip65 reference miner





bip65 reference miner
  1. Bip65 reference miner update#
  2. Bip65 reference miner upgrade#
  3. Bip65 reference miner full#
  4. Bip65 reference miner code#
bip65 reference miner

Bip65 reference miner code#

I haven't touched this code so they should work. These allow creating transactions that can't be spent until some time in the future. The only untested parts of the code now are CSV and CLTV. Once the activation block is reached the rules are automatically enforced all the time. Would I need to do something else to support properly these softforks? Would this be enough for indicating support for the remaining softforks and use them? What rule strings do we have put for Bip 65, 66, etc if we want to indicate support and use if they are activated? I just know that for SegWit, it is "segwit". I added a "Rules" option where one can add rules for the GetBlockTemplate call.

Bip65 reference miner update#

More testing is welcome, and I invite you to comment the update if needed clo1, you are the expert. It also worked with legacy transactions produced by 0.10.2 in Testnet too, so current normal mining should be unaffected. RieMiner is now able (if the segwit Rule is set in the options, like below) to mine Segwit transactions between "t" addresses in TestNet, and also blocks with mixed segwit + legacy transactions, so I assume that rieMiner is now SegWit ready in case it ever gets actived. I updated rieMiner to include SegWit support (at least experimental for now) after struggling to understand how and where I had to put that default_witness_commitment. Sorry, I didn't realize there was a pull request. I didn't want to spend any more time on something we might not activate anyway. I believe this is in the default_witness_commitment field of getblocktemplate. HexStrToBin(json_string_value(json_object_get(json_array_get(jsonTxs, i), "txid")), txHashInvTmp)Īlso from BIP145, 'a secondary merkle root MUST be calculated as per BIP 141's commitment structure specification to be inserted into the generation (coinbase) transaction'. JsonGbt = sendRPCCall(_curl, "\n") įrom BIP145, 'when witness transactions are included in the block, the primary merkle root MUST be calculated with those transactions' "txid" field instead of "hash" '. In order for them to show up in the getblocktemplate call you need to add a parameter to the call. Segwit transactions can now be added to mempool. Once activated getblocktemplate will return 'segwit' in the 'rules' field.

Bip65 reference miner full#

You then need to mine 2 full cycles of 288 blocks before segwit activates. The correct bits were already set in version so there is nothing to do here. Once this is done 'segwit' will show up in the vbavailable field of getblocktemplate. If we decide to activate segwit we will change the mainnet timeout to something reasonable.Ĭ = 14935968000 // I added a 0 Change line 213, testnet segwit nTimeout to something really big. To activate segwit you first have to change the activation time window in chainparams.cpp. Some pages I came across while searching for default_witness_commitment I couldn't find documentation showing exactly what is needed anywhere but here is some: I have heard about support bits for Softforks, do I need to implement them, or they are already included in the GetBlockTemplate call? I think that we could add these support choices as options in the configuration file if needed.Īlso, could you please merge my pull request that updates remaining Bitcoin icons to Riecoin ones? "In the transactions you need to use the txid field instead of the hash field." What do you mean?

Bip65 reference miner upgrade#

For Stratum, as the Coinbase comes from the pool, owners will need to upgrade their code as well. For anything involving the Coinbase, everything is in GetBlockTemplateData::coinBaseGen() in GBTClient.cpp for GetBlockTemplate. I plan to release the first stable rieMiner 0.9 version in December 16, it would be great that until then, it provides everything needed for 0.16.3.Įlse, you can do these yourself and make pull requests as you seem to be very knowledgable about Bitcoin Core code (honestly, I am not that good in this field).

bip65 reference miner

Could you give me some documentation about these? I need to know precisely everything I have to do to implement these features in rieMiner.







Bip65 reference miner