Могут ли работники пула отследить биткойны?

Многие люди, занимающиеся майнингом биткойнов, участвуют в совместном майнинге. Участвуя в совместном майнинге, рабочие выполняют некоторые математические вычисления (которые я на самом деле не понял) и получают вознаграждение за свой вклад в генерацию нового блока.

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

Ответы (2)

Когда майнер в пуле находит действительный блок, пул получает вознаграждение (в настоящее время ~ 50 BTC) в специальной транзакции генерации в блоке. Адрес, получающий вознаграждение за генерацию в данном блоке, известен, и пулы публикуют статистику, какие блоки они нашли (и даже если нет, майнер, который его нашел, теоретически может знать, какие блоки он нашел сам, если его программное обеспечение для майнинга ведет учет это), поэтому вознаграждение за генерацию можно отслеживать (в той же мере, в какой можно отслеживать любую другую биткойн-транзакцию).

Математическая операция, выполняемая при майнинге, заключается в вычислении хэшей SHA-256 вариантов заголовка блока. Вы можете узнать больше о майнинге, например, в разделе Что такое майнинг?

Я понимаю. Что, если майнер НЕ находит блок, а только генерирует хэши? Сможет ли он по-прежнему знать, на каком блоке он работал со своими «коллегами-шахтерами»?
@Erik: каждый майнер в пуле работает с другим блоком, так что это не определено. В частности, обычно у каждого майнера будет свой адрес для транзакции генерации, и он не знает, что это такое, пока пул не опубликует его (что он сделает только в том случае, если майнер найдет блок). По сути, то, что майнер знает заранее, — это серийный номер блока, над которым он работал (и идентификатор предыдущего блока), и ветвь Меркла, необратимая сжатая сводка списка транзакций.
Также возможно иметь пул с умными майнерами, которые сами решают, над каким блоком работать, но обычно это не делается.
Если каждый майнер работает над своим блоком, как пул может создавать постоянные выплаты? Разве выплата не похожа на кредит из пула, так как блок еще не был сгенерирован?
Майнер в пуле может знать предыдущий блок, на котором строится. Таким образом, если предыдущий блок имеет высоту 1083, то майнер может знать, что текущий блок, над которым работает, — это блок 1084. В случае, когда есть форк и два 1.083, майнер в пуле может использовать только тот, который выбрал пул.
@Erik: Это вопрос о пулах умных майнеров? В таких пулах майнер по-прежнему кредитует пул в транзакции генерации, и чтобы доказать это, он отправляет пулу ветку Merkle этой транзакции для каждой шары. Затем пул распределяет вознаграждение за блок между майнерами. Существует также p2p-пул p2pool, где майнеры кредитуют как себя, так и других майнеров в транзакции генерации.
Нет, мой вопрос был не о пулах смарт-майнеров
Ok. В обычных пулах также верно, что блок, над которым работает каждый майнер, кредитует пул. Для каждого майнера это, вероятно, будет другой адрес, но все же адрес, принадлежащий пулу. Пул использует эти вознаграждения для выплаты майнерам, как именно зависит от используемой системы вознаграждения. В PPS пул вознаграждает майнеров за проделанную работу в надежде, что блок будет найден, до того, как он будет найден на самом деле. В большинстве других систем оплата производится при обнаружении блока, а вознаграждение за блок распределяется между майнерами, которые недавно выполняли работу.

Все, а не только майнеры, могут видеть каждую транзакцию в любом блоке. Быть майнером не дает вам особого понимания, которого нет у других пользователей. Весь блокчейн является общедоступным, а его полная копия хранится у каждого, кто управляет узлом Биткойн.

Однако это не означает, что вы можете легко связать транзакции с людьми. Все видят, что адрес A перевел X биткойнов на адрес B. Но не очевидно, как определить, кому принадлежат адреса A или B.