Шары в майнинге что это
Что такое шары в майнинге?
При запуске любого майнинга пользователь периодически видит текст с найденными шарами, в etherium это надпись share found в других майнерах может быть Accepted share, или просто слово yes.
Опытные майнеры пишут, что чем чаще эта надпись мелькает, тем лучше. Возникает вопрос, что такое шары в майнинге и можно ли на них повлиять. Для ответа нужно понимать механизм работы алгоритма.
Последний сводится к выполнению одной простой задачи – нахождению цифровой подписи нового блока альткоинов. Если подходящее решение было найдено, происходит транзакция, которая передает данные на пул. Там информация проверяется, и если подпись была найдена правильно, майнер получает вознаграждение. Повлиять на процесс можно только путем увеличения вычислительной мощности: чем больше хэшрейт, тем чаще проскакивают шары.
Шары в процессе майнинга
Наблюдая за работой программы-майнера, можно увидеть, что некоторые шары принимаются, а другие отклоняются. Подробную статистику предоставляет пул. Нужно понимать, что чем больше отклоненных шар, тем меньше доход от майнинга.
Все шары делятся на хорошие и плохие. В первом случае найденная цифровая подпись признается ликвидной и передается на пул, во втором – цифровое значение не удовлетворяет требованиям и признается негодным. Причин появления плохих шар может быть несколько:
Следить и всячески стараться увеличить количество валидных блоков нужно, чтобы получать максимальную прибыль от добычи альтов.
Зачем нужны шары
Кроме того, что share необходимы для поиска цифровой подписи нового блока, они используются в качестве идентификатора майнера. Сложность добычи любых альтов растет в геометрической прогрессии, соответственно, на одном ПК или ферме найти блок крайне сложно. На это уйдет от нескольких месяцев до 2-3 лет. Проблема решается объединением майнеров в сообщество – pool.
Поскольку участников пула много, а награда за блок одна, прибыль распределяется между майнерами пропорционально их вкладу. Каждая шара содержит неповторяющуюся цифровую подпись майнера. Ее невозможно подделать, скопировать или изменить. Соответственно, процедура раздачи альтов становится максимально прозрачной и честной.
Сложность шары
Найденная шара еще не означает, что будет открыт новый блок. Это только возможное решение. Поэтому считать будущий доход, отталкиваясь от количества принятых share, нельзя. Рассмотрим простой пример, как сложность решений влияет на добычу криптовалюты: хэшрейт пула – 5 Ph/s, мощность видеокарты класса GeForce 1070 – около 35 Mh/s. Установлено 5 карт. Составляем пропорцию: 35 000 000*5*100%/5 000 000 000 000 000=0,0000035%. Соответственно, чтобы получать хотя бы 1% от доходов пула, нужно около 300 000 ферм.
Предложенный вариант имеет весомый недостаток, предполагается, что вся мощность пула приносит валидные решения. Однако на практике все по-другому: полезные подписи присылают как владельцы крупных шахт, так и маленькие фермеры. Чтобы найти решение одного блока, нужно быстрее других пулов подобрать из шар цифровой ключ. Чтобы распределять прибыль адекватно вкладу в общее дело, каждая найденная шара записывается в статистику майнера, и после нахождения блока ему выдается соразмерная награда.
Еще один важный момент состоит в том, что существует несколько пулов, которые добывают альткоины, при этом найденный блок может быть только один. Не всегда его получает сообщество, к которому подключена программа-шахтер. Поэтому при расчете прибыли учитываются те share, которые майнер передал для блока, найденного на используемом пуле.
При расчете вознаграждения сложность шар подбирается еще и с учетом времени, которое требуется для нахождения одного блока. Все эти нюансы привели к тому, что появились различные системы формирования выплат: PPS, PROP, PPLNT и др. Наиболее часто используется PPLNS.
Как работают выплаты PPLNS
При данном алгоритме происходит оплата последнего количества найденных шар. Итоговую цифру устанавливает владелец пула. Определяется она исходя из общего количества share, которые нужны для нахождения блока.
Рассмотрим пример: ограничение установлено в 30 000, за время нахождения блока майнер успел передать 500 шар, вознаграждение за блок – 10 альткоинов. Формула выглядит так: 500*10/30000=0,16. Пользователь получит столько альтов на баланс.
Каждый раз решение задачи занимает разное время и приносит различный результат. Используя одни и те же технические ресурсы, за час можно получить как 1000 шар, так и 500 или 2000. Поэтому предложенная система расчетов считается одной из наиболее честных и удобных.
При добыче альтов приходится полагаться не только на оборудование, но и на удачу, 100% успеха зависит от нее. Тем не менее процесс майнинга криптовалют сводится к решению математических задач, поэтому доход майнер получит всегда. Также нужно понимать, что для разных альтов количество найденных блоков в день отличается. Чем их больше, тем выше шанс получить награду.
Что такое шара (share) на пальцах
Бывалый
Многие балконные майнеры запускают батник, он им что-то пишет, но они даже и не понимают, что же они отправляют на пул. Что же такое те самые шары, которые пулы показывают в виде красивых графиков? Я почитал форум, но здесь никто так и не ответил на вопрос «что же такое share?». Что именно ваше программное обеспечение для майнинга присылает на пул и, самое главное, зачем это нужно? Чтобы было понятнее, я перевел эту статью с английского (https://ethereum.stackexchange.com/questions/4529/for-pool-mining-what-exactly-is-a-share) и немного её адаптировал для восприятия новичком.
Итак, из предыдущего поста (http://miningclub.info/threads/chto-takoe-majning-i-blokchejn-na-palcax.15561/) всем стало понятно, что майнер ищет криптографическую подпись для текстового блока транзакций, которая удовлетворяет критерию сложности сети. Сложность автоматически подстраивается таким образом, чтобы каждый блок транзакций заверялся, например, каждые 10 минут. Сейчас сложность настолько высока, что найти подпись для блока транзакций в том же Etherium в одиночку абсолютно нереально. Например, если у вас одна карта Nvidia GeForce 1080Ti (самая мощная сейчас в линейке), то на поиск подписи блока транзакций вы потратите в среднем 1,5 года! Но это в среднем, а может так случиться, что и три и четыре года ваша карта будет молотить эфир и не найдет ничего! Поэтому майнеры объединяют свои вычислительные мощности в пулы, а потом вознаграждение за найденные подписи блока делят пропорционально в зависимости от вложенных в поиск блока ресурсов. Но как же пул узнает, сколько ресурсов вложил в поиск блока конкретный майнер, которого пул не знает и которому априори не доверяет? Ответ простой: с помощью шар (shares). Но что такое шара?
Итак, как пример, предположим, что текущая сложность составляла 10000 попугаев. Чтобы быть принятым криптовалютной сетью как валидный (и получения соответствующего эмиссионного вознаграждения) найденный блок должен быть «лучше», чем 10000. Вероятность этого события совершенно ничтожна (в среднем 1 раз в 1,5 года). Но, если много мелких майнеров объединяют усилия, то рано или поздно (но гораздо раньше, чем через 500 дней) с определенной степенью удачи они этот блок найдут и получат вознаграждение. Но как делить между майнерами это вознаграждение? Как понять, сколько работы вложил каждый конкретный майнер? Да еще и так, чтобы быть абсолютно уверенным в этом, потому что мошенников на каждом шагу толпа стоит.
Теперь объясню, почему майнер не может забрать валидный блок себе и получить всю награду. Этому есть две причины: во-первых, для того, чтобы шары были действительными, они должны иметь пул в качестве получателя вознаграждения, поэтому найденный блок уже дает по умолчанию вознаграждение в пул, независимо от того, кто его транслирует, а во-вторых пул не пересылает весь блок майнерам, а пересылает всего лишь заголовок, который содержит хэши фактического содержимого блока транзакций.
То, что майнер действительно может сделать, так это тайно уничтожить найденный блок и не отправлять его обратно в пул. Это нанесло бы пулу ущерба больше, чем одиночному майнеру. Из-за ряда сложных причин из теории игр это могло бы привести к преимуществу для атакующего, если атакующий имеет заметное количество вычислительных мощностей вне данного пула. (Это «атака удержания блока»). Но в статистике это становится заметным, если вы делаете это много раз, а сама атака не приносит никакой пользы типичному мелкому майнеру, поэтому эти атаки считаются довольно редкими. Таким образом, во всей базовой стратегии майнинга «шара» довольно хорошо отражает справедливое распределение вознаграждения от коллективного майнинга на пуле.
Что из себя представляют принятые и отклоненные шары?
В этом посте мы поговорим о шарах в майнинге. Чтобы быть точными, мы объясним что из себя представляют принятые и отклоненные шары и какое соотношение между ними хорошее.
Что такое шары?
Шара — это результат процесса майнинга. Этот результат отправляется от майнера на пул и способствует поиску нового блока на блокчейне (в процессе подтверждая транзакции).
Вы можете представить шару как математическую задачу, решаемую с помощью случайного числа. Майнер пробует много разных случайных чисел, пока решение не будет правильным. Чем больше случайных чисел может попробовать майнер за выделенное время, тем больше вероятность правильного решения математической задачи.
Майнеры решают математические задачи и отправляют решения обратно на пул. Если они решают задачу верно, они получают награду за блок.
Что такое принятые шары?
Как говорит название, принятые шары — это шары, которые были решены верно и вовремя. На NiceHash вы получаете оплату за каждую успешно принятую шару, которая была отправлена на наш stratum-сервер.
Что такое отклоненные шары?
Отклоненные шары — это термин для всех шар, которые отклоняются по любой из причин ниже:
Наиболее часто встречающиеся отклоненные шары — это ‘шары выше цели’ и ‘устаревшие шары’.
Что такое хорошее соотношение принято/отклонено?
Вы должны стремиться к 100% принятых шар и 0% отклоненных шар. В долгосрочной перспективе это практически невозможно, поскольку между майнером и stratum-сервером NiceHash всегда будет латентность.
Из всех типов отклонений допускаются только устаревшие шары (до 1%-2%, в зависимости от алгоритма). Любые другие отклоненные шары возникают в результате неправильной конфигурации системы и могут быть потенциально устранены.
Как устранить шары выше цели (неверные шары)?
Шары выше цели в основном появляются из-за нестабильного разгона. Чтобы решить эту проблему, снизьте настройки разгона в предназначенной для этого программе. Чтобы узнать больше об оверклокинге и андерклокинге, прочитайте эту статью.
Как устранить устаревшие шары?
Устаревшие шары в основном появляются из-за высокой латентности между вашим ригом и stratum-сервером NiceHash. Нормальная латентность между майнером и NiceHash должна быть в районе 10-100 мс (чем меньше, тем лучше).
Устаревшие шары могут возникнуть в результате использования VPN или медленного интернет-соединения. Попробуйте отключиться от VPN или использовать более быстрое интернет-соединение.
Обратите внимание, что некоторые алгоритмы с быстрым изменением работы склонны к высокой латентности больше других.
Что важнее – шары или хешрейт?
Сложность вычислений топовых криптовалют настолько высока, что для самостоятельного расчета хеша понадобятся годы работы топовой видеокарты. Поэтому майнеры объединятся в пулы, которые оптимизируют добычу, распределяя вычисления между участниками. Владельцы ферм, запуская на своем компьютере bat-файл программы для добычи криптовалюты, часто даже не вникают, что такое шары (shares) в майнинге, для чего нужны и как влияют на заработок. Дело в том, что среди тысяч участников пула правильный хеш рассчитывает только один компьютер.
Вознаграждение за найденную подпись делится между майнерами пропорционально затраченным вычислительным ресурсам. И если правильные ключи служат доказательством работы (proof-of-work) для блокчейна, то shares подтверждают работу участников пула, которые имеют право на свою часть вознаграждения.
Что такое Шара (Share)
Share – это хеш, который меньше цели (для сложности, которая обычно ниже, чем сложность сети). У каждого сгенерированного хеша есть шанс быть действительной шарой. Майнеры не имеют никакого контроля над тем, когда они будут генерировать шару, поскольку это происходит случайным образом. Когда один майнер в пуле находит решение хеша, награды могут быть разделены по количеству шар, предоставленных каждым майнером.
Существует несколько методов наград: PPLNS, PPS, PPS+ и т.д. Эти типы наград рассчитывают «справедливую шару» награды, но все пулы используют share в качестве «прокси» для работы, выполненной каждым майнером. Шара не имеет реальной стоимости. Единственный хэш, который стоит чего-то, это тот, который решает блок. Share – это просто метод разделения любых наград, полученных пулом.
Отличия шары от хеша
Система автоматически регулирует показатель сложности вычислений ключе подписи блоков, который затрудняет расчет хешей при увеличении общей мощности сети. Например, блоки биткоина должны закрываться каждые 10 минут. Если к сети присоединяется больше майнеров или они апгрейдят оборудование, скорость расчетов растет и время закрытия блока уменьшается. В ответ алгоритм повышает сложность расчетов и восстанавливает длительность закрытия блока.
Принимая хеши, алгоритм блокчейна оценивает трудоемкость вычислений и отсеивает ключи, сложность которых «хуже» заданной. Эти непринятые блокчейном хеши ресурс учитывает в качестве доказательства работы каждого майнера.
Блокчейн требует в качестве PoW валидный хеш, но для корректного учета производительности пулом этот показатель не подходит. Вероятность получения валидного ключа при соло-майнинге составляют примерно 1 хеш за полтора года непрерывных вычислений. Однако, участвуя в распределенных вычислениях, они вносят вклад в общее дело. Он зависит от производительности «железа» и качества канала передачи данных (при нестабильном доступе к интернету ключи могут теряться, не достигая получателя). Пул ведет подсчет количества принятых шар от каждого майнера. Хорошие принимаются в качестве хешей, плохие служат мерилом работы.
Для этой цели ресурс устанавливает собственный критерий сложности, помогающий отобрать хорошие shares. Отличие хеша в том, что хеш соответствует требованиям блокчейна, а шара — требованиям пула.
Например, при сложности 1000 пул устанавливает собственную границу сложности для учета подходящих «частей». Например, 10. В таком случае все «претенденты в хеши», сложность которых ниже 1000 и выше 10, учитываются сайтом как shares. Если же участнику посчастливится «добыть» ключ со сложностью выше 1000, пул отправит его в блокчейн и получит за его публикацию вознаграждение.
Зачем нужны шары
Награда за подпись блока распределяется между участниками пропорционально количеству сгенерированных шар при майнинге, которые были приняты и учтены пулом. Он производит выплату за те шары, которые были приняты за период расчета очередного хеша (если последний был найден).
Вероятность найти верное решение пропорциональна хешрейту, задействованному в майнинге. Следовательно, больший хешрейт должен быть лучше оплачен. Shares — единственный способ честного распределения оплаты за блок между участниками процесса.
Учет шар позволяет пулу произвести реальный расчет хешрейта каждого воркера. В целом чем больше шар отправлено за период, тем выше хешрейт участника.
Признаки появления запоздалых шар
В системе пула может быть такое: система не отправляет команду «отбой», или рабочая клиент-программа по каким-то причинам не понимает действие возникновения причины, то есть, не понимает команду «отбой», и тогда примерно 0,5-1,5% шар будут признаны устаревшими.
Сам принцип отбоя реализован через программу long polling.
Иногда большое количество устаревших шар в сети, например ethermine stale shares, если параметры мощности пула очень высокие, а ваш пинг ниже средних показателей.В ряде случаев проблема может заключаться в других причинах, например, ваша ферма фризит.
Причины могут быть разные, тот же «глюк» снятия программы статистики, например с чего-нибудь системного (в данном случае с параметров сети), кроме этого могут возникать иные причины: пиковые процентные нагрузки; проблемы с сетевым драйвером; неожиданные «капризы» антивирусной программы; вы обратились к неисправному жёсткому диску или к другим системным параметрам вход-выход.
Шары и безопасность майнинга
Распространенный вопрос среди новичков — зачем майнеру отправлять валидную шару, подходящую для подписи блока данных, в пул. Ведь выгоднее отправить ее в блокчейн и получить вознаграждение самостоятельно.
Система работы пула организована так, что все шары несут в себе информацию о ресурсе, для которого они предназначены. Поэтому ресурс получит монеты независимо от того, будет ли направлен валидный ключ непосредственно от него или из другого источника. Шары без сведений о пуле попросту недействительны.
Самостоятельно «пересобрать» подпись майнеры не могут. Они не получают содержимого всего блока, к которому требуется рассчитать подпись. Для работы достаточно лишь заголовка с хешами фактического содержимого блока. То есть, воркер без пула не в состоянии собрать и отправить валидный хеш.
Единственный вред, который теоретически может нанести майнер — не отправлять найденный валидный ключ на ресурс. Такое действие наносит группе ущерб больший, чем одиночке. Теоретически, при наличии собственных вычислительных мощностей, такая атака может принести определенную выгоду. Она носит название «атака удерживания блока» и увеличивает шансы атакующего самостоятельно найти и представить хеш. Но такие систематические действия быстро вычисляются владельцами ресурса при анализе статистических данных. И пользу они могут принести лишь мощным противникам, а не мелким майнерам. Поэтому попытки применить такие атаки на практике крайне редки.
В результате шары лишь используются в качестве доказательства участия воркера в поиске ключей и служат для расчета итогового вознаграждения.
Шары в майнинге: что это такое
Если описывать максимально просто, то шары в майнинге – это варианты решения в вычислениях блока. Точнее – это недостаточно правильные решения. Однако благодаря числу попыток (числу предлагаемых вариантов) pool автоматически определит долю участия майнера в общей работе по нахождению блока и пропорционально этой доле начислит вознаграждение. Впрочем, последнее уже зависит от формата начисления вознаграждения, предлагаемого в пуле. Ну, а для того, чтобы подробнее разобраться, что такое шары в майнинге, надо обратиться к статье.
Содержание статьи
Share: сущность понятия
Слово «шара» (фонетический эквивалент английского слова «share») и переводится как «доля» – доля количества решений в майнинге, предложенных оборудованием криптодобытчика, по отношению к общему количеству вычислительных решений, с помощью которых перебором pool пытается отыскать одно правильное. Чем мощнее майнинговое оборудование у участника, тем больше решений оно предложит – и тем больше работы на общее благо сделает. Поэтому владелец оборудования может рассчитывать на большее вознаграждение независимо от того, чьё именно устройство всё-таки отыщет подпись блока. Если оборудованию криптодобытчика в составе пула повезет отыскать верную подпись блока, то теоретически (если условия pool позволяют) он может получить вознаграждение и за найденный блок, и за величину доли своего участвующего в криптодобыче оборудования.
Фактически же все немного сложнее. Поэтому для создания полной картины, разделим её на несколько смысловых блоков:
Чтобы не оставалось «пробелов» в понимании, рассмотрим два последних смысловых блока еще детальнее.
Разница между верным решением, шарой и «мусором»
Уровни, о которых мы говорили выше, определяются сложностью криптосети (переход на высший уровень) и требованиями того пула, в составе которого происходит майнинг (переход на второй уровень). Пуловая планка сложности гораздо ниже сетевой планки. То есть, пул принимает большее количество вариантов как валидные для себя шары и здесь найти приемлемое решение проще, чем верную подпись в криптосети.
Например, уровень сложности задания в криптосистеме равен 10 тысячам условных единиц. Чтобы сеть выплатила вознаграждение за блок, нужно чтобы решение майнера соответствовало поставленным условиям – превышало планку сложности в 10 тысяч единиц. Pool в этой ситуации устанавливает свою планку на уровне 100 условных единиц и рассматривает как валидные для себя все варианты вычислений, которые ее преодолевают. Остальные предложения (а их большинство) отклоняются и отправляются в «мусор». Другими словами, шары – это все предложения, которые находятся в промежутке между 100 и 10 тысячами.
Здесь очевидно, что одно из решений, превысивших отметку в 100 единиц, будет претендовать и на статус решающего блока. Такой вариант удовлетворит требованиям не только пула, но и сетевому стандарту. Pool отправит этот верный вариант в криптосеть и получит криптовалютное вознаграждение. Но тот пользователь, чья видеокарта нашла правильное решение, тем не менее, всей награды не получит. Получателем награды указан pool – с ним криптосетью и будет произведён расчёт. Только после этого идёт распределения наград по доле участия.
Фактическая сложность, конечно, измеряется не в условных единицах, а в гигахешах (Gh или G), терахешах (Th или T), петахешах (Ph или P) и т.д.. Например, один Ph = миллиону Gh. Однобуквенные символы, хоть и реже, но тоже можно встретить в пуловых обозначениях. Таким образом, рубежная сложность пула 4 G (или 4 Gh) означает, что при общесетевой сложности в 3,12 P (Ph – петахеша) пул для обнаружения верного результата, в среднем, должен получить от пользователей 780 тысяч шар.
От сложности шар в майнинге не зависит количество блоков, найденных пулом, и она не влияет на величину вознаграждения. Величина награды «от пула» определяется количеством шар, предложенным оборудованием криптодобытчика. Сама же система придумана для справедливого распределения наград за задействованные в майнинге мощности.
Система Shares в концепции PoW удобна и справедлива потому, что соответствует принципу соотношения мощности всей сети и мощности используемого для майнинга оборудования. Если пользователь в соло майнинге будет добывать криптовалюту с сетевой сложностью Х и получит Y валидных блоков, то за одно и то же время он задействует столько же мощностей, сколько понадобится для обнаружения шар X*Y сложностью =1.
Сложность пуловых шар в майнинге подбирается и устанавливается так, чтобы майнеры, с одной стороны, могли комфортно и с видимой материальной отдачей вливать свои мощности в общий «бассейн», но, с другой стороны, чтобы пул не «лёг» от огромного количества ненужных и простых вариантов вычислений.
Шара, установленная пулом, не фиксируется в блокчейне сети, но фиксируется в статистике пула для того, чтобы справедливо распределить награду в случае нахождения валидного блока. С этой точки зрения, шара в майнинге – это безусловное доказательство количество корректной работы, произведенной вычислительным устройством.
Модели распределения вознаграждения «от участия» в майнинге
Способов оценки участия оборудования криптдобытчика в майнинге существует множество: PPS, PPLNS, PPLNT, PROP и др. Все эти аббревиатуры – сокращения от англоязычного описания содержания модели. Так, например, PPLNS расшифровывается как «Pay Per Last N Shares», что переводится как «оплата за последние N шар», а PPS – «Pay Per Shares» – как «оплата за шару».
Есть и другие способы распределения доходов в майнинге, но здесь перечислены те, где учитываются шары.