Jump to content

Вопрос по майнингу биткоин - NONCE


Recommended Posts

Posted

Добрый вечер!

 

Есть вопрос к специалистам по майнингу:

 

у современных майнеров скорость перебора хешей 13 тера хешей в секунду (asic s9) т.е. 13 х 1 000 000 000 000 000  хешей в секунду 

значение nonce меняется в перделах от 0 до 

4 238 458 157

 

посмотрел последние 400 блоков

 

получается что 1 asic S9  меньше чем за 1 секунду найдет требуемый блок подобрав нужный nonce

 

почему так не происходит на практике?

где собака порылась ))

Posted (edited)

потому что для нахождения правильного хеша важен не только nonce. Да, пул даёт задания с низкой сложностью и учитывает найденные шары для выплаты награды, но если диапазон nonce кончился, а хеш>цели, то пул меняет соль и высылает новое задание.

Edited by vvvb1
Posted
2 минуты назад, vvvb1 сказал:

потому что переберается не только nonce. Если диапазон кончился, а хеш>цели, то пул меняет соль и высылает новое задание.

не совсем понял что за "соль"

в блоке есть следуюшие данные:

[strippedsize]
[weight] [height] [version] [versionHex] [merkleroot] [time] [mediantime] [nonce] [bits] [difficulty] [chainwork] [previousblockhash]

[nextblockhash]

 

какой из них соль?

при чем тут пул ?

Posted

соль в криптографии это строка-модификатор хешфункции, которая не меняет исходные данные, но влияет на получаемый хеш. В данном случае к соли относятся поля nonce, nbits, ntime. Пул при том, что майнит майнер не блок, а те задания которые ему даёт пул и уже ПО пула проверяет является ли найденная шара хешем блока или надо дальше задания раздавать.

Posted

Пул здесь не причем, я могу результат отправлять напрямую в сеть, для этого мне нужна только следующая информация из последнего блока для которого не найден хеш (SHA256) код PHP

 $version = littleEndian(1);
  $prevBlockHash = SwapOrder('00000000000008a3a41b85b8b29ad444def299fee21793cd8b9e567eab02cd81');
  $rootHash = SwapOrder('2b12fcf1b09288fcaff797d71e950e71ae42b91e8bdb2304758dfcffc2b620e3');
  $time = littleEndian(1305998791);
  $bits = littleEndian(440711666); 
  $nonce = littleEndian(2504433986);
function bitka($version , $prevBlockHash , $rootHash , $time , $bits , $nonce)
  {
	  $header_hex = $version . $prevBlockHash . $rootHash . $time . $bits . $nonce;
	  //dump($header_hex,"header_hex");
	  //convert from hex to binary 
	  $header_bin  = hex2bin($header_hex);
	  //hash it then convert from hex to binary 
	  //dump($header_bin,"header_bin");
	  $pass1 = hex2bin(hash('sha256', $header_bin ));
	  //Hash it for the seconded time
	  //dump(bin2hex($pass1),"pass1");
	  $pass2 = hash('sha256', $pass1);
	  //dump($pass2,"pass2");
	  //fix the order
	  $FinalHash = SwapOrder($pass2);
	 // dump($pass2,"pass2 swap");
  	return $FinalHash;
  }
 

 здесь нет никакой "соли"

 

в данном примере не хватает только значения сложности и проверки

 

при nonce = 2504433986, данный блок проходил POW (блок очень древний)

 

 

 

Posted

вы похоже тему для спора создали. Ещё раз: можете хеш хоть на бумажке искать и отправлять в сеть, однако сеть примет не любой хеш, а определенный, удовлетворяющий текущей сложности сети. Перебрали весь диапазон nonce, но шех не подходит - меняем, на единицу nbits или time и начинаем расчёты заново.

Posted (edited)

дело не в споре, а в правильном алгоритме

можете кинуть пруф ссыль что можно менять bit  и time ?

 

update: bits не менялось последние 400 блоков (

180091c1

)

 

значит его нельзя менять ?

 

Edited by Minherc
Posted
В 04.01.2018 в 19:16, Minherc сказал:

получается что 1 asic S9  меньше чем за 1 секунду найдет требуемый блок подобрав нужный nonce

 

Или не найдёт. Можно перебрать весь nonce, но так и не найти хеш, удовлетворяющий текущей сложности. Тогда придётся увеличить параметр time на 1 (то есть, на одну секунду) и снова с нуля перебирать nonce. Но ASIC-и считают так быстро, что для нахождения блока пришлось бы слишком часто инкрементировать time и он бы перестал отображать реальное время нахождения блока.

 

Поэтому решили расширить nonce параметром ExtraNonce. Но в заголовке блока места для лишнего параметра нет, поэтому ExtraNonce запихивают в scriptSig coinbase-транзакции.

Posted

Да, спасибо, уже разобрался.

 

Цитата

The Extra Nonce Solution

Since 2012, bitcoin mining has evolved to resolve a fundamental limitation in the structure of the block header. In the early days of bitcoin, a miner could find a block by iterating through the nonce until the resulting hash was below the target. As difficulty increased, miners often cycled through all 4 billion values of the nonce without finding a block. However, this was easily resolved by updating the block timestamp to account for the elapsed time. Because the timestamp is part of the header, the change would allow miners to iterate through the values of the nonce again with different results. Once mining hardware exceeded 4 GH/sec, however, this approach became increasingly difficult because the nonce values were exhausted in less than a second. As ASIC mining equipment started pushing and then exceeding the TH/sec hash rate, the mining software needed more space for nonce values in order to find valid blocks. The timestamp could be stretched a bit, but moving it too far into the future would cause the block to become invalid. A new source of "change" was needed in the block header. The solution was to use the coinbase transaction as a source of extra nonce values. Because the coinbase script can store between 2 and 100 bytes of data, miners started using that space as extra nonce space, allowing them to explore a much larger range of block header values to find valid blocks. The coinbase transaction is included in the merkle tree, which means that any change in the coinbase script causes the merkle root to change. Eight bytes of extra nonce, plus the 4 bytes of "standard" nonce allow miners to explore a total 296 (8 followed by 28 zeros) possibilities per second without having to modify the timestamp. If, in the future, miners could run through all these possibilities, they could then modify the timestamp. There is also more space in the coinbase script for future expansion of the extra nonce space.

 

вся подробная инфа тут кому надо http://chimera.labs.oreilly.com/books/1234000001802/ch08.html#_bitcoin_economics_and_currency_creation

Posted
29 минут назад, Tertrarij сказал:

Ищем майнеров для долгосрочного сотрудничества!

Зачем вы их ищете?

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Similar Topics

    • Гренландский вопрос: к чему приведет первая коррекция криптовалют 2026 года

      Международная политика вновь давит на думы инвесторов. Прошлую неделю рынок следил за протестами в Иране, а на этой Дональд Трамп сместил фокус внимания мира на Гренландию. Под гнетом быстро меняющихся событий на крипторынке случилась коррекция. С 16 по 23 января 2026 года биткоин снизился на 5,98%. Только в последние три дня первая криптовалюта предприняла робкие попытки роста. Их оказалось недостаточно даже для того, чтобы вернуться к важной психологической отметке $90 000.    

      in Новости криптовалют

    • Биткоин или альты? Ответ на извечный вопрос

      Биток и альты это как царь и народ. Если царь падает, то народ падает сильнее, царь сглаживает свое падение за счет народа, а если царь растет, то народ уже не падает, но всё равно всегда на дне остается, ведь царь растет за счет народа. А если народ бунтует и скидывает царя, то народ в еще большом дне оказывается. Теперь внимание вопрос: каковы нужны условия для роста народа? Нефть по 1000 долларов повысит рубль и зарплаты? Да, но не пропорционально росту нефти, далеко не пропорционально, при н

      in Биткоин

    • Общие вопросы по майнингу

      Господа "Вовчики"- новички! Ваше желание попав в наше крипто-царство побыстрее начать рубить бабло собственно говоря естественно понятно... И почти для всех кто здесь обитает-материальная составляющая этого увлекательного процесса "майнинга" имеет главное значение! Но! Уж будьте так любезны-попав в нашу многочисленную семью криптообразных начинать свое вхождение не с тупых вопросов про кнопку БАБЛО, а с хотя бы ПОВЕРХНОСТНОГО проглядывания Разделов этого форума и далее заголовков Тем в этих Разд

      in Общие вопросы по майнингу

    • Казахстан смягчил требования к майнингу и обороту криптовалют

      Президент Казахстана Касым-Жомарт Токаев подписал закон «О внесении изменений и дополнений в некоторые законодательные акты республики по вопросам искусственного интеллекта и цифровизации», который снимает некоторые ограничения на майнинг и оборот криптовалют в стране. Если ранее майнеры были обязаны продавать большую часть добытых криптовалют через биржу Международного финансового центра «Астана» (МФЦА), то теперь это требование исключено.    Кроме того, после вступления поправок в с

      in Новости криптовалют

    • Вопрос к блокчейн разработчикам, возможно ли создать такое, хотя бы первый этап?

      Предпосылки.  Цель создания платежной системы ULAM - борьба с бедностью, последствиями экономического кризиса 2020, предотвращению социального напряжения в обществе.   Ценность и принципиально отличие от подобных продуктов. В человеческом обществе самая большая ценность - это человеческая жизнь. Жизнь можно описать по разному, но есть общие описание жизни - это время жизни. Единица времени жизни в платежной системе ULAM - 1 секунда(понятный и известный параметр для челове

      in Поиск блокчейн разработчиков

×
×
  • Create New...