На прошлой неделе я прочитал в теме о том, как мини-блоки (блоки с меньшим ПР образующихся при добыче и ни один список сделок не включены) могут быть использованы для переключения быстрее между лучшими цепями и уменьшить сиротский скорость блока.
Идея минутных блоков особенно интересно для меня, так как это также может помочь обнаруживать, если сеть разделена. Более точно, если пользователь был отключен от множества шахтеров с высоким процентом сети хэширования мощности. Этот метод не будет обнаруживать в сговоре вредоносных шахтеров, просто случайное разделение сети или раздельную атаку в исполнении партии, контролирующие звенья узла.
Таким образом, идея состоит в том ...
Когда шахтер находит решение в блок с ПР >= 1/20 мишени, но все еще не высоко, как мишень, забойщик публикует блок-заголовок. Теперь узлы получат около 2 мини-блоков в минуту, и они могут следить за текущую скорость хэша. В любое время, если скорость мини-блоков в минуту (подсчитываются в среднем на 1 час) снижается до менее чем на половину, то клиентское приложение предупреждает пользователя, что он был отключен от половины добычи энергии. Пользователь может проверить на форумах, если это разъединение происходит потому, что землетрясение произошло или что-нибудь, и решить, если он под целевой атаки или нет.
(Очевидно, что требуется, чтобы вычислить вероятность того, что узел обнаружения половины падения, когда его нет, и настроить время окна и скорость мини-блок, так что это очень редко).
Кроме того, модификация идеи может быть использована для проверки количества отдельных шахтеров в сети:
Пусть Kpriv, Kpub шахтера специального назначения ECDSA частный / открытый ключ.
В каждом блоке, забойщик также включает в coinbase поле значение х, вычисленное при х = SIGN (KPriv, г), где г случайное сообщение.
Когда шахтер находит решение в блок с ПР >= 1/20 мишени, но все еще не высоко, как мишень, забойщик издает кортеж (блок-заголовок, KPub, г), а другой выбирает г продолжать добычу.
Теперь каждый может убедиться в том, что мин-блок пришел из тождества, которому принадлежит Kpub, проверяя, что CheckSig (Kpub, х, г) == верно.
(Здесь я предполагаю, что ECDSA сопротивляется особый вид податливость)
Если шахтер находит решение целевой ПР, он не публикует его личность (значения KPub и г). Так как х ничего не стоит, не зная г, никто не может знать наверняка, кто является создателем блока.
В любое время, узлы могут вывести число различных активных шахтеров и информировать пользователя о каких-либо шаблон, который имеет значение для безопасности и стабильности сети.
Мнения?