Author

Topic: Как работает пул изнутри? (Read 576 times)

sr. member
Activity: 770
Merit: 305
November 08, 2017, 04:31:59 AM
#12
Спасибо за ответы. Для себя я это нарисовал так

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

Да, все правильно понял. Объяснение корявое, на пальцах, но именно так и происходит.
Майнер (владелец асика) не может воспользоваться решением даже в пользу владельца пула
потому что сам блок с транзакциями ему не присылали - ему прислали только заголовок блока.
newbie
Activity: 58
Merit: 0
Ковыряясь в поисках исходников пула. Наткнулся на такое решение, вроде даже работает.
https://github.com/bonesoul/CoiniumServ

Мультимонетный пул. Нужно только немного подправить исходники, а то там оно лезет на Poloniex который поменял подход к апи и добавил капчу, поэтому ошибки срутся
newbie
Activity: 58
Merit: 0
Спасибо за ответы. Для себя я это нарисовал так

Есть маска блока допустим 00000000FFFFFF.... тоесть нужно найти блок в хеше которого будут первые 4 нулевых байта. Но это сложно, поэтому пул раздает воркерам задачу искать хеши удовлетворяющих маску 0000FFFFFFFFFF... (достаточно первых 2-х нулей в хеше вместо 4-х) тоесть на два порядка проще найти такие. Есть вероятность что одна из таких шар будет решением блока.  Тогда награда за блок делится между всеми участниками которые слали шары.  И так как в блок вписывается кошелёк пула, воркер не может найти решение и сам им воспользоваться
sr. member
Activity: 770
Merit: 305
По мощности с кем угодно можно конкурировать, все упирается только в цену вопроса на найсхэше ))
А туда владельцы асиков ходят? Или только нищеброды со своими карточками пытаются копейку слупить?
Мысль интересная в принципе.
То есть если у меня есть 12.5 BCH я могу купить мощностей достаточных для майнинга одного блока в сети BitcoinCash
Если повезет, конечно. Если не повезет - то не судьба. Может повезти на два блока. тогда даже профит получится.
Надо подумать.
Хотя я вообще не особо люблю в орлянку играть.

Update: я завел свой отдельный топик https://bitcointalksearch.org/topic/sha256d-2372325
а то нехорошо в чужом топике свои идеи обсуждать. Простите.
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
Пулы по РПЦ запрашивают у демона шаблон блока, если ты напишешь рпц-прокси который будет
брать от демона один шаблон, а пулу отправлять поправленный, то тебе любой пул подойдёт.
Зачем такие сложности? Мне на демоне надо кой-чо поправить, чтобы нода нестандартные
транзакции принимала. (Да, есть вторая проблема, как эти транзакции до пул-ноды доставить
но оно решаемо)

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

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

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

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

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

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

Форки мне не особо интересны. Нужен биткок или (это даже лучше) bitcoin cash
kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
а с какой целью интересуетесь?
Если у вас есть опыт в программировании, то можем совместно пул написать, а то я давно собирался, но времени нет.

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

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


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

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

Но покопавшись на эту тему набрел на http://solo.ckpool.org/
Там ссылка на сорцы есть. Я в этом не копенгаген, но вроде технически поднять пул вроде не особо сложно.
Сложнее хэшрейт получить.
sr. member
Activity: 770
Merit: 305
Меня интересует как пул собирает из шар общую картинку, и как проверяет каждую шару на валидность.
Если правильно понимаю то изначально есть кусок работы, который делится на шары, шары даются воркерам и те их считают.
Нет, не так.
Кусок работы - это "бросить монетку 80 раз подряд орлом вверх". (Для примера)
Как ты будешь её бросать - никого не волнует.
Шара - это последовательность из 80 бросков, где первые 60 сам воркер проверил и они действительно все орлом вверх.
Сервер, разумеется, тоже проверяет.

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

kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
а с какой целью интересуетесь?
Если у вас есть опыт в программировании, то можем совместно пул написать, а то я давно собирался, но времени нет.
legendary
Activity: 2618
Merit: 2304
Читайте мануал по протоколу STRATUM.
newbie
Activity: 58
Merit: 0
Меня интересует как пул собирает из шар общую картинку, и как проверяет каждую шару на валидность.

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

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