Title: Про nBits объясните простыми словами, а? Post by: Many Coins on February 17, 2018, 10:10:24 PM Привет!
Может кто-нибудь простыми русскими словами объяснить про "сложность = 1.0", "block.nBits = 0x1d00ffff" и другие смежные вопросы? Я читал Вики - ничего не понял ??? То есть, например мне нужно снизить сложность вычислений от упомянутой 0x1d00ffff в 10 раз - это мне какое значение надо для block.nBits установить? И почему? Title: Re: Про nBits объясните простыми словами, а? Post by: A-Bolt on February 17, 2018, 10:42:57 PM Mastering Bitcoin (https://bitcoinbook.info/wp-content/translations/ru/book.pdf)
глава "Представление сложности" Title: Re: Про nBits объясните простыми словами, а? Post by: Many Coins on February 18, 2018, 07:37:18 AM Mastering Bitcoin (https://bitcoinbook.info/wp-content/translations/ru/book.pdf) глава "Представление сложности" Вау как круто!! Спасибище!! Я её всю прочту!! //мне просто придется это сделать - я прочитал эту главу и снова ничего не понял ;D по ходу не хватает базовых знаний всей этой кухни. Title: Re: Про nBits объясните простыми словами, а? Post by: Coin-1 on February 19, 2018, 02:52:05 PM То есть, например мне нужно снизить сложность вычислений от упомянутой 0x1d00ffff в 10 раз - это мне какое значение надо для block.nBits установить? И почему? Сложность майнинга - это процесс управляемый и, если речь о Bitcoin, задаётся количеством нулевых старших битов хеша смайненного блока. Ровно в 10 раз, наверно, не получится снизить сложность, так как здесь двоичная математика. Можно снизить, например, в 8 раз, уменьшив число нулевых битов на 3.Title: Re: Про nBits объясните простыми словами, а? Post by: Many Coins on February 19, 2018, 03:57:49 PM То есть, например мне нужно снизить сложность вычислений от упомянутой 0x1d00ffff в 10 раз - это мне какое значение надо для block.nBits установить? И почему? Сложность майнинга - это процесс управляемый и, если речь о Bitcoin, задаётся количеством нулевых старших битов хеша смайненного блока. Ровно в 10 раз, наверно, не получится снизить сложность, так как здесь двоичная математика. Можно снизить, например, в 8 раз, уменьшив число нулевых битов на 3.Отлично! ...но как это сделать? ;D Title: Re: Про nBits объясните простыми словами, а? Post by: neiros on February 19, 2018, 04:07:27 PM Я не заморачивался такими нюансами.
В debag.log подобной строчкой: Code: printf("=== 0x201fffff target: %s\n", CBigNum().SetCompact(0x201fffff).getuint256().GetHex().c_str()); Code: === 0x1f0fffff target: 000fffff00000000000000000000000000000000000000000000000000000000 Вот это тоже может понадобиться: Code: === CBigNum(~uint256(0) >> 10): 003fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff Title: Re: Про nBits объясните простыми словами, а? Post by: Many Coins on February 19, 2018, 07:31:04 PM Я не заморачивался такими нюансами. В debag.log подобной строчкой: Code: printf("=== 0x201fffff target: %s\n", CBigNum().SetCompact(0x201fffff).getuint256().GetHex().c_str()); Code: === 0x1f0fffff target: 000fffff00000000000000000000000000000000000000000000000000000000 То есть, я правильно понял, что если прописать block.nBits = 0x1f0fffff - то оно будет искать хэш с тремя лидирующими нулями (и меньше)? Title: Re: Про nBits объясните простыми словами, а? Post by: neiros on February 20, 2018, 06:33:01 AM То есть, я правильно понял, что если прописать block.nBits = 0x1f0fffff - то оно будет искать хэш с тремя лидирующими нулями (и меньше(хеш), т.е. и больше(нулей))? Да. При условии, что лимит это позволит(дополнение ::)). Title: Re: Про nBits объясните простыми словами, а? Post by: Many Coins on February 20, 2018, 11:07:57 AM Да. При условии, что лимит это позволит(дополнение ::)). Что за лимит? Еще какую-то переменную нужно поправить? **ну да, хэш меньше - нулей больше)) может случайно так совпасть, что первое совпадение будет не с 3-мя, а с 5-ю нулями, например. Title: Re: Про nBits объясните простыми словами, а? Post by: neiros on February 20, 2018, 12:30:06 PM Да. При условии, что лимит это позволит(дополнение ::)). Что за лимит? Еще какую-то переменную нужно поправить? Ага. Вот эту - https://github.com/neiros/---TTC---/blob/TTC-all-Lyra2REv2/src/chainparams.cpp#L35 |