При вычислении хэш блока, в настоящее время следующие данные хешируется:
Блок номер версии, предыдущий блок хэш, хэш Merkle корень, время, трудность, нонс
Майнинг передать эту работу для клиентов, например, путем изменения транзакции coinbase (и, таким образом, корня Merkle) для каждого клиента (эта операция не требует ввода TX, и может содержать случайные данные), что позволяет избежать дублирования усилий между различными клиентами.
Когда клиенты хеширования, и они достигают трудности, установленного майнинг (ниже официальной Bitcoin сложности), они посылают этот хэш на сервер, чтобы доказать, что они выполнили работу. После того, как в то время, этот хэш достаточно заминировать реальный блок: любой, кто ранее показанный, чтобы иметь выполненную работу будет получать их пропорциональное соотношение Bitcoins. Во-первых в Bitcoins в новом блоке будет отправлен на адрес Bitcoin горного бассейна (coinbase сделки), а затем добыча Сам бассейн делит количество среди клиентов.
Проблема добычи бассейнов риски 51% атак из-за централизации горнодобывающей власти.
С простой регулировкой, я считаю, что можно предотвратить майнинг:
Вычисление хэш блока выполняется в несколько ином виде.
Во-первых, следующие данные будут подписаны по адресу, указанному в coinbase сделки:
Блок номер версии, предыдущий блок хэш, хэш Merkle корень, время, трудность, нонс
Затем конечный блок хэш будет рассчитываться на основе следующих данных:
Блок номер версии, предыдущий блок хэша, хэш Merkle корень, время, трудности, одноразовое значение, подпись + открытый ключ адрес coinbase
Эта подпись + открытый ключ входит в блок таким образом, чтобы его можно проверить, что владелец закрытого ключа адреса coinbase подписал эти данные. Это также означает, что есть знак операция при каждом вычислении хэша.
выгоды :
Если майнинг хотят передавать свои работы для клиентов, они постоянно получают запросы знака от клиентов, в результате чего огромное увеличения нагрузки на сервере (пропорционально объем работы, проделанный клиентами). Поскольку знак операции является медленная операция, большая часть работы не могут быть выполнены на анонимных клиентов больше. Или они посылают частные ключи адреса coinbase своих клиентов, что означает, что все эти клиенты могут претендовать на монеты, когда блок будет найден.
минусы:
Шахтеры должны постоянно держать свои ключи в памяти, потому что они постоянно подписания и это может увеличить вероятность того, что эти ключи украдены. Но шахтеры, разумеется, нет обычных пользователей и более глубокое понимание безопасности можно ожидать.
Это изменение вызывает разрыв совместимости со старыми блоками и может спровоцировать развитие СБИС, которые могут выполняться эллиптические операции кривой. Весьма радикальным в этом смысле, но с точки зрения реализации в протоколе Bitcoin изменение будет незначительным.