Forwarded from CryptoBotan
✅✅✅
Спецификация протокола Stratum V2
Для стека биткоина
⬇️⬇️⬇️
Предыдущие посты о протоколах майнинга: Stratum V1 и BetterHash. Stratum V2 - это объединение этих двух решений для повышения децентрализации майнинга.
Stratum V1, разработанный SlushPool 7 лет назад, используется почти всеми майнинговыми пулами. С ростом сети, изъяны, которые никуда не делись, стали представлять угрозу для экосистемы Биткойна:
Транзакции, входящие в блоки, не отправляются майнерам. Оператор пула решает какие из них будут включены в блок. Оператор пула отвечает за распределение вознаграждений. Так же оператор пула может заблокировать определенные обновления протокола, так как имеет возможность выбирать версию блока.
Майнинг в соло имеет проблему, связанную с неравномерным распределением наград. Если обратиться к статистике, то 3-4 пула, контролируют 50% хэшрейта сети и могут выбирать транзакции, которые будут включены в блоки.
Коротко о майнинге в пуле:
Майнер в пуле подключает свои вычислительные мощности к серверу пула, к которому подключены остальные майнеры пула. Каждый из них передает свои вычислительные мощности пулу и объединив их вместе, пул ищет блок транзакций. При успешном хэшировании, пул получает вознаграждение и делит между участниками сети.
Пул состоит из n-го количества майнеров и каждый пытается найти решение для блока. Майнеры запрашивают у оператора пула частичный “шаблон блока" (“block template”). Это неполный блок Биткойна, без доказательства работы. В процессе поиска майнеры отправляют свои решения (Share, Шары) оператору пула и тот проверяет правильность решения.
Новая версия позволит майнерам добывать собственные блоки, вместо предлагаемых пулом. Также Stratum V2 использует решение "Job Negotiation", дающее майнерам возможность выбирать транзакции включаемые в блоки. Вместо того чтобы оператор пула отправлял шаблон блока майнеру (“block template”), майнер отправляет шаблон блока оператору пула. Такое решение позволяет майнерам самим выбирать транзакции и версию блока.
Stratum V1 основан на JSON и не имеет криптографической аутентификации, что делает его более медленным, тяжелым и менее безопасным. Связь Stratum V2 осуществляется в двоичном коде.
Stratum V2 повышает передачу данных между майнерами, прокси-серверами и операторами пулов, что повышает пропускную способность сети.
\\\
Stratum V1 имеет проблемы с безопасностью, так как уязвима для атак MITM (Человек посередине), что позволяет перехватывать хэшрейт и присваивать награду третей стороне. Изображение
Такая атака возможна так как нет никакой криптографической аутентификации данных, для проверки того, что компьютер майнера действительно связан с компьютером оператора пула, и только с ним.
Новая версия протокола использует режим блочного шифрования - AEAD для устранения этой уязвимости. Операторы пула криптографически подписывают шаблоны частичных блоков. Если майнер знает открытый ключ оператора пула, он может проверить, что шаблон частичного блока поставляется с действительной подписью и, следовательно, действительно предоставляется оператором.
Еще больше об изменениях в протоколе здесь
stratumprotocol.org
Video about Stratum V2 by ChicoCrypto
#Mining
Спецификация протокола Stratum V2
Для стека биткоина
⬇️⬇️⬇️
Предыдущие посты о протоколах майнинга: Stratum V1 и BetterHash. Stratum V2 - это объединение этих двух решений для повышения децентрализации майнинга.
Stratum V1, разработанный SlushPool 7 лет назад, используется почти всеми майнинговыми пулами. С ростом сети, изъяны, которые никуда не делись, стали представлять угрозу для экосистемы Биткойна:
Транзакции, входящие в блоки, не отправляются майнерам. Оператор пула решает какие из них будут включены в блок. Оператор пула отвечает за распределение вознаграждений. Так же оператор пула может заблокировать определенные обновления протокола, так как имеет возможность выбирать версию блока.
Майнинг в соло имеет проблему, связанную с неравномерным распределением наград. Если обратиться к статистике, то 3-4 пула, контролируют 50% хэшрейта сети и могут выбирать транзакции, которые будут включены в блоки.
Коротко о майнинге в пуле:
Майнер в пуле подключает свои вычислительные мощности к серверу пула, к которому подключены остальные майнеры пула. Каждый из них передает свои вычислительные мощности пулу и объединив их вместе, пул ищет блок транзакций. При успешном хэшировании, пул получает вознаграждение и делит между участниками сети.
Пул состоит из n-го количества майнеров и каждый пытается найти решение для блока. Майнеры запрашивают у оператора пула частичный “шаблон блока" (“block template”). Это неполный блок Биткойна, без доказательства работы. В процессе поиска майнеры отправляют свои решения (Share, Шары) оператору пула и тот проверяет правильность решения.
Новая версия позволит майнерам добывать собственные блоки, вместо предлагаемых пулом. Также Stratum V2 использует решение "Job Negotiation", дающее майнерам возможность выбирать транзакции включаемые в блоки. Вместо того чтобы оператор пула отправлял шаблон блока майнеру (“block template”), майнер отправляет шаблон блока оператору пула. Такое решение позволяет майнерам самим выбирать транзакции и версию блока.
Stratum V1 основан на JSON и не имеет криптографической аутентификации, что делает его более медленным, тяжелым и менее безопасным. Связь Stratum V2 осуществляется в двоичном коде.
Stratum V2 повышает передачу данных между майнерами, прокси-серверами и операторами пулов, что повышает пропускную способность сети.
\\\
Stratum V1 имеет проблемы с безопасностью, так как уязвима для атак MITM (Человек посередине), что позволяет перехватывать хэшрейт и присваивать награду третей стороне. Изображение
Такая атака возможна так как нет никакой криптографической аутентификации данных, для проверки того, что компьютер майнера действительно связан с компьютером оператора пула, и только с ним.
Новая версия протокола использует режим блочного шифрования - AEAD для устранения этой уязвимости. Операторы пула криптографически подписывают шаблоны частичных блоков. Если майнер знает открытый ключ оператора пула, он может проверить, что шаблон частичного блока поставляется с действительной подписью и, следовательно, действительно предоставляется оператором.
Еще больше об изменениях в протоколе здесь
stratumprotocol.org
Video about Stratum V2 by ChicoCrypto
#Mining