Как стать автором
Обновить

Механизм комиссий в Биткоине и зачем дружить с майнерами

Время на прочтение 8 мин
Количество просмотров 17K
Всего голосов 25: ↑20 и ↓5 +15
Комментарии 11

Комментарии 11

Транзакция, разумеется, будет отправлена всем, просто друг в статье просто знает какую транзакцию включить в блок.
Как отправить транзакцию с нулевой комиссией другу-майнеру – действительно интересный вопрос. Как обычная транзакция по сети она вряд ли пройдет, поскольку по умолнанию конфигурация узлов имеет параметр minRelayFee не равный нулю. Это означает, что транзакция должна обязательно иметь комиссию больше некоторого порогового значения, чтобы узлы могли отреагировать на нее и передать дальше. Поэтому придется хитрить, чтобы доставить «заговоренную» транзакцию другу.

Один из вариантов состоит в том, чтобы насильно соединить узел пользователя с узлом майнера, вручную вписав сетевой адрес в конфиг пользователя, а на узле майнера установить minRelayFee равным нулю. Но есть проблема: узел друга должен отличать заранее «заговоренные» транзакции от транзакций других пользователей.

Поэтому другой вариант решения – это использование API собственного производства в кошельке пользователя и узле друга-майнера.
Нормальные кошельки предоставляют возможность пользователям выгрузить транзакцию перед отправкой в сеть (или получить для уже созданной) ее какое-то сериализованное в текстовую строку (json или hex например bitcoin-core или electrum) и загрузить ее в ноду майнера.

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

Можно вперед например продавать. Кому-то деньги сегодня могут быть нужнее чем деньги завтра, а кому то наоборот важно подешевле, пусть и завтра.
Плюс фиксированная цена, иногда важно знать точно будущую прибыль/затраты. Плюс точное время прохождения транзакции, независимое от состояния сети.
Еще одна важная задача, которую решает механизм комиссий, – это “трагедия общин”. В контексте Биткоина подразумевается защита от спама транзакциями. Наличие обязательных комиссий означает, что злоумышленнику дорого обойдется на протяжении длительного времени засорять сеть фейковыми транзакциями, если у него будут такие намерения.

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

Есть теория, что в момент пиара Bitcoin Cash и проблемы вокруг форка segwit2x, крупнейшие пулы майнинга так и делали.
Тогда никто не мешает выдавать пустые блоки, зачем вообще тогда что-то включать в блок? А на сэкономленные секунды успеть раньше других начать майнить следующий блок.
как минимум один пул так и делал
как дружба с майнерами снижает комиссии до нуля
кто-то забыл, что со временем награда за блок будет равна 0 и только комиссией и будет выражаться доход? соответственно смысла полностью забесплатно подтверждать нет. если это не свои комиссии. ну а если альтернативные варианты оплаты, то они всеравно будут стремиться к обычной комсе…
Хорошо когда есть друг с 10% мощностей BTC))).
Зарегистрируйтесь на Хабре , чтобы оставить комментарий