Bitcoin Forum
June 26, 2024, 01:45:41 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Как работает пул изнутри?  (Read 555 times)
Ninazu (OP)
Newbie
*
Offline Offline

Activity: 58
Merit: 0



View Profile
November 03, 2017, 05:10:08 PM
 #1

Меня интересует как пул собирает из шар общую картинку, и как проверяет каждую шару на валидность.

Если правильно понимаю то изначально есть кусок работы, который делится на шары, шары даются воркерам и те их считают.
Пул вписывает свой кошелёк в новый блок, поэтому майнер не может найти решение(счётчик) и получить награду за блок сам, так как при этом хеш блока изменится.

Что представляет из себя шара с точки зрения запрос/ответ и их структура.
Как пул валидирует шары? (ведь если бы не было валидации то воркеры могли слать что угодно и получать прибыль даже не перебирая счётчик)
У шар есть TTL какой-то? если допустим воркер не отдает решение шары в какой-то период времени, то по идее его работу пул должен передать кому-то другому
Coin-1
Legendary
*
Offline Offline

Activity: 2492
Merit: 2232



View Profile
November 05, 2017, 11:11:30 AM
 #2

Читайте мануал по протоколу STRATUM.
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
November 07, 2017, 05:44:54 AM
 #3

а с какой целью интересуетесь?
Если у вас есть опыт в программировании, то можем совместно пул написать, а то я давно собирался, но времени нет.

OpenTrade - Open Source Cryptocurrency Exchange
amaclin1
Sr. Member
****
Offline Offline

Activity: 784
Merit: 305


View Profile
November 07, 2017, 02:04:37 PM
 #4

Меня интересует как пул собирает из шар общую картинку, и как проверяет каждую шару на валидность.
Если правильно понимаю то изначально есть кусок работы, который делится на шары, шары даются воркерам и те их считают.
Нет, не так.
Кусок работы - это "бросить монетку 80 раз подряд орлом вверх". (Для примера)
Как ты будешь её бросать - никого не волнует.
Шара - это последовательность из 80 бросков, где первые 60 сам воркер проверил и они действительно все орлом вверх.
Сервер, разумеется, тоже проверяет.

Вот Собрались Вася, Петя и Коля. И стали кидать монетки
Каждый кидает монетку 80 раз и если первые 60 раз она выпала орлом - то отправляет шару
даже не проверяя что выпало в конце
Вася отправил на сервер 100 шар - но ни одна из них не была длины 80
Петя отправил на сервер 150 шар - ему тоже не повезло.
Коле повезло, его 50-ая шара оказалась подходящей и пул получил награду.
Награду разделили пропорционально количеству присланных шар - то есть Васе досталась треть
всей награды, Пете досталась половина награды, а Коле досталась одна шестая.


Bitcoin SV GUI client for Windows and Linux
https://github.com/AlisterMaclin/bitcoin-sv/releases
amaclin1
Sr. Member
****
Offline Offline

Activity: 784
Merit: 305


View Profile
November 07, 2017, 02:09:18 PM
 #5

а с какой целью интересуетесь?
Если у вас есть опыт в программировании, то можем совместно пул написать, а то я давно собирался, но времени нет.

О!
Мне нужен пул для BitcoinCash
По идее мне нужно смайнить один блок с нужными мне транзакциями и я даже готов за это немного забашлять.
Но это такой гемор сам пул поднимать, а потом еще майнеров на него звать. Ужас какой-то

Но покопавшись на эту тему набрел на http://solo.ckpool.org/
Там ссылка на сорцы есть. Я в этом не копенгаген, но вроде технически поднять пул вроде не особо сложно.
Сложнее хэшрейт получить.

Bitcoin SV GUI client for Windows and Linux
https://github.com/AlisterMaclin/bitcoin-sv/releases
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
November 07, 2017, 03:32:05 PM
 #6

а с какой целью интересуетесь?
Если у вас есть опыт в программировании, то можем совместно пул написать, а то я давно собирался, но времени нет.

О!
Мне нужен пул для BitcoinCash
По идее мне нужно смайнить один блок с нужными мне транзакциями и я даже готов за это немного забашлять.
Но это такой гемор сам пул поднимать, а потом еще майнеров на него звать. Ужас какой-то

Но покопавшись на эту тему набрел на http://solo.ckpool.org/
Там ссылка на сорцы есть. Я в этом не копенгаген, но вроде технически поднять пул вроде не особо сложно.
Сложнее хэшрейт получить.


Пулы по РПЦ запрашивают у демона шаблон блока, если ты напишешь рпц-прокси который будет брать от демона один шаблон, а пулу отправлять поправленный, то тебе любой пул подойдёт.
Я умею поднимать для форков битка unomp и p2pool. Если интересно могу попробовать тебе помочь за символическую плату или бесплатно ))

OpenTrade - Open Source Cryptocurrency Exchange
amaclin1
Sr. Member
****
Offline Offline

Activity: 784
Merit: 305


View Profile
November 07, 2017, 04:04:11 PM
 #7

Пулы по РПЦ запрашивают у демона шаблон блока, если ты напишешь рпц-прокси который будет
брать от демона один шаблон, а пулу отправлять поправленный, то тебе любой пул подойдёт.
Зачем такие сложности? Мне на демоне надо кой-чо поправить, чтобы нода нестандартные
транзакции принимала. (Да, есть вторая проблема, как эти транзакции до пул-ноды доставить
но оно решаемо)

Главный аспект - я конкурировать с китайскими пулами по мощности не смогу. А майнить блок
целый год как-то грустно очень. Пока ищу контакты пул-админов. Может кто откликнется сам

https://bitcoin.stackexchange.com/questions/61657/how-to-find-a-btc-bcc-mining-node-with-modified-software

Форки мне не особо интересны. Нужен биткок или (это даже лучше) bitcoin cash

Bitcoin SV GUI client for Windows and Linux
https://github.com/AlisterMaclin/bitcoin-sv/releases
kzv
Legendary
*
Offline Offline

Activity: 1722
Merit: 1285

OpenTrade - Open Source Cryptocurrency Exchange


View Profile WWW
November 07, 2017, 04:26:27 PM
 #8

Пулы по РПЦ запрашивают у демона шаблон блока, если ты напишешь рпц-прокси который будет
брать от демона один шаблон, а пулу отправлять поправленный, то тебе любой пул подойдёт.
Зачем такие сложности? Мне на демоне надо кой-чо поправить, чтобы нода нестандартные
транзакции принимала. (Да, есть вторая проблема, как эти транзакции до пул-ноды доставить
но оно решаемо)

Главный аспект - я конкурировать с китайскими пулами по мощности не смогу. А майнить блок
целый год как-то грустно очень. Пока ищу контакты пул-админов. Может кто откликнется сам

https://bitcoin.stackexchange.com/questions/61657/how-to-find-a-btc-bcc-mining-node-with-modified-software

Форки мне не особо интересны. Нужен биткок или (это даже лучше) bitcoin cash

По мощности с кем угодно можно конкурировать, все упирается только в цену вопроса на найсхэше ))

OpenTrade - Open Source Cryptocurrency Exchange
amaclin1
Sr. Member
****
Offline Offline

Activity: 784
Merit: 305


View Profile
November 07, 2017, 05:28:33 PM
Last edit: November 07, 2017, 07:29:58 PM by amaclin1
 #9

По мощности с кем угодно можно конкурировать, все упирается только в цену вопроса на найсхэше ))
А туда владельцы асиков ходят? Или только нищеброды со своими карточками пытаются копейку слупить?
Мысль интересная в принципе.
То есть если у меня есть 12.5 BCH я могу купить мощностей достаточных для майнинга одного блока в сети BitcoinCash
Если повезет, конечно. Если не повезет - то не судьба. Может повезти на два блока. тогда даже профит получится.
Надо подумать.
Хотя я вообще не особо люблю в орлянку играть.

Update: я завел свой отдельный топик https://bitcointalk.org/index.php?topic=2372325
а то нехорошо в чужом топике свои идеи обсуждать. Простите.

Bitcoin SV GUI client for Windows and Linux
https://github.com/AlisterMaclin/bitcoin-sv/releases
Ninazu (OP)
Newbie
*
Offline Offline

Activity: 58
Merit: 0



View Profile
November 08, 2017, 09:25:43 AM
 #10

Спасибо за ответы. Для себя я это нарисовал так

Есть маска блока допустим 00000000FFFFFF.... тоесть нужно найти блок в хеше которого будут первые 4 нулевых байта. Но это сложно, поэтому пул раздает воркерам задачу искать хеши удовлетворяющих маску 0000FFFFFFFFFF... (достаточно первых 2-х нулей в хеше вместо 4-х) тоесть на два порядка проще найти такие. Есть вероятность что одна из таких шар будет решением блока.  Тогда награда за блок делится между всеми участниками которые слали шары.  И так как в блок вписывается кошелёк пула, воркер не может найти решение и сам им воспользоваться
Ninazu (OP)
Newbie
*
Offline Offline

Activity: 58
Merit: 0



View Profile
November 08, 2017, 09:28:02 AM
 #11

Ковыряясь в поисках исходников пула. Наткнулся на такое решение, вроде даже работает.
https://github.com/bonesoul/CoiniumServ

Мультимонетный пул. Нужно только немного подправить исходники, а то там оно лезет на Poloniex который поменял подход к апи и добавил капчу, поэтому ошибки срутся
amaclin1
Sr. Member
****
Offline Offline

Activity: 784
Merit: 305


View Profile
November 08, 2017, 09:31:59 AM
 #12

Спасибо за ответы. Для себя я это нарисовал так

Есть маска блока допустим 00000000FFFFFF.... тоесть нужно найти блок в хеше которого будут первые 4
нулевых байта. Но это сложно, поэтому пул раздает воркерам задачу искать хеши удовлетворяющих маску
0000FFFFFFFFFF... (достаточно первых 2-х нулей в хеше вместо 4-х) тоесть на два порядка проще найти такие.
Есть вероятность что одна из таких шар будет решением блока.  Тогда награда за блок делится между всеми
участниками которые слали шары.  И так как в блок вписывается кошелёк пула, воркер не может найти
решение и сам им воспользоваться

Да, все правильно понял. Объяснение корявое, на пальцах, но именно так и происходит.
Майнер (владелец асика) не может воспользоваться решением даже в пользу владельца пула
потому что сам блок с транзакциями ему не присылали - ему прислали только заголовок блока.

Bitcoin SV GUI client for Windows and Linux
https://github.com/AlisterMaclin/bitcoin-sv/releases
Pages: [1]
  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!