Полные ноды в сети биткоин: сокращение, поощрение и перспективы
Как известно, биткоин основан на блокчейне, распределенном между множества узлов (далее — нод), которые составляют единую децентрализованную сеть.В отличие от традиционной банковской системы, в этой сети нет центрального узла, в котором хранится общий реестр. Биткоин-кошельки и майнеры, обеспечивающие безопасность сети, представляют собой большую часть нод. Но некоторые ноды более важны, чем другие. В сообществе существуют опасения, касающиеся количества полных нод, в каждом из которых хранится 35-гигабайтная копия всего блокчейна.
По определению, полная нода — это подключенный к сети биткоин-клиент, Bitcoin QT либо любая другая его реализация. Такая нода включает в себя полный, обновленный набор файлов блокчейна, а также открытый порт 8333, настроенный на прием входящих запросов. Это обязательный список требований, предъявляемый к полным нодам.
Причина снижения численности полных нод хорошо известна. Пользователей демотивирует необходимость хранить 35 гигабайт информации, необходимые для запуска клиента. Опасения по поводу того, что снижение количества полных нод само по себе приведет к незащищенности сети биткоин против атак, становится темой дебатов в Reddit и на форуме Bitcointalk.
Вследствие распространенной ошибки владельцев нод, многие из них скорее препятствуют работе сети, чем помогают ей. Такой ошибкой является закрытие порта 8333 для входящих запросов. Это в большинстве случаев происходит потому, что владельцы не знают о том, что их фаервол блокирует этот порт.
Когда порт блокирован, нода может одновременно поддерживать до 8 соединений с другими нодами. Если исправить эту ошибку во всей сети, это могло бы удвоить или даже утроить количество полных нод. Вследствие того, что изменение в программном обеспечении и осведомленности пользователей может привести к такой значительной разнице, некоторые разработчики считают, что мы уже достигли избытка нод.
Один из разработчиков ядра биткоина Гэвин Андерсен пошел даже дальше в критике этой ситуации прошлым летом на Reddit.
“Обычные люди не должны запускать полные ноды. Нам нужны полные ноды, которые всегда подключены к сети, имеют более 8 соединений (а если у вас только 8, то вы и есть часть проблемы, а не решения) и высокоскоростное подключение к интернету” — высказался Андерсен.
В ходе недавнего исследования количества биткоин-майнеров установлено, что их количество превышает 100 000. Bitnodes, сайт для отслеживания количества полных нод в реальном времени, показывает, что от 5 до 6 тысяч полных нод находится онлайн в каждый момент времени.
Предполагая рост сети биткоин и количества транзакций, инженер BitGo Джеймсон Лопп создал проект Statoshi, чтобы понять, является ли это число достаточным.
Его первоначальные опасения были связаны с тем, что мы наблюдаем слишком много легких кошельков, которые не содержат полной копии блокчейна и не имеют открытого порта для входящих запросов. Проведя детальный анализ данных и графиков, Лопп пришел к выводу, что “нынешнее количество нод значительно превышает необходимое для соответствия современному спросу.”
“Подавляющее большинство нод — это полные ноды, содержащие весь блокчейн; остальные ноды, составляют незначительную долю использования сети.”— считает Джеймсон.
Лопп не единственный биткоин-энтузиаст, поднимающий этот вопрос. Пользователь Reddit i_wolf долго размышлял над этим вопросом и недавно привел доводы о том, что содержание полных нод предоставляет владельцам дополнительную безопасность.
Так как частное лицо или бизнес может подвергнуться нападению в сети биткоин при помощи атаки Сивиллы (метода хакерской атаки, когда воры окружают жертву и пытаются скормить ей ложную информацию), наиболее надежной защитой будет иметь свою собственную полную ноду.
Иметь собственную полную ноду- значит иметь точную резервную копию блокчейна и информации, которую он содержит, чтобы при необходимости сверить данные.
Изобретатель биткоина Сатоши Накамото, также уделил этому вопросу внимание в вайтпейпере, который впервые описывал биткоин, когда он предложил использование легких клиентов.
“Бизнес, который получает регулярные платежи, наверняка будет хотеть иметь собственные ноды для самостоятельного обеспечения безопасности и быстрой верификации.” — Сатоши Накамото
В то время, как протокол биткоин мотивирует майнеров обеспечивать безопасность всей сети, нет никакой непрямой финансовой выгоды от поддержки собственной ноды. Некоторые пользователи публично заявили о необходимости финансового стимула для держателей нод, предлагая простой сбор для перераспределения среди владельцев. Другие предложили внедрение нового канала в сам биткоин-протокол с целью отправки части комиссии держателям нод, вместо майнеров. Подобная система, к примеру, реализована в DASH, где владельцы нод получают половину вознаграждения майнеров.
Наиболее эффективный стимул придумали в Bitnodes, организовав турнир между операторами нод по наибольшему количеству P2P-соединений. Победитель соревнования получает значительный приз, собранный из пожертвований.
Также на рынке представлены специализированные корпоративные хостинги, в частности Fullnode, которые решили предоставлять услуги хостинга полных нод. Однако, с ростом блокчейна им все труднее оставаться прибыльными, и недавно Fullnode объявил о скором закрытии сервиса.