Поощрение полных Нод и споры о размере Блока

masternodes

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

Чем больше в сети Нод, тем лучше работает принцип децентрализации, и тем более защищена сеть – пользователи могут всегда и без проблем найти подходящий узел сети для передачи информации о своей транзакции. Но тут появляется проблема – число полных Нод в сети Биткойн постоянно снижается, с примерно 10.000 полных нод в прошлом году до примерно 6.000 на сегодняшний день. Одна из причин этого заключается в том, что поддержание работы Нод Биткойна в настоящий момент никак не вознаграждается, в то время как майнеры получают вознаграждение за свои услуги.

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

Как говорил Gregory Maxwell:

Неужели кто-то (кроме Mike Hearn, я думаю) полагает, что ситуация, при которой все будут зависеть от небольшого числа операторов Нод масштаба“Google” является удовлетворительной?

Gavin Andressen отвечал на это, оправдывая намечающуюся централизацию Нод, что Сатоши подразумевал это как оправданное решение, описывая будущее, в котором:

… для пользователей станет безопасно использовать Упрощённую Проверку Платежей (Simplified Payment Verification) для защиты от двойной траты, при которой потребуется проверка одних лишь заголовок блоков… так как по мере роста сети свыше определенного масштаба – задача полной проверки будет всё больше и больше делегироваться профессиональным участникам с фермами серверов…

Имеются ли альтернативы?
Например, в архитектуру криптовалюты DASH встроена система поощрения операторов полных Нод. Аналогично поощрению Майнеров, полные Ноды Dash (так называемые Мастерноды) получают свою часть вознаграждения при формировании новых блоков, результатом чего стало появление в сети Dash более более 3.000 работающих полных Нод в течение всего 19 месяцев существования этой криптовалюты. Это составляет примерно половину от размера сети Биткойна, несмотря на то, что капитализация Dash составляет мизерную часть от капитализации Биткойна.

Кроме того, на обновление до последней версии ПО Мастернодам отводится всего 7 дней, после чего она исключается из сети и перестаёт получать вознаграждение – поэтому операторы заинтересованы в непрерывном поддержании последней версии протокола. DASH проверяет выполнение этих требований с использованием так называемой Системы Proof of Service.

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

Так ли всё просто?
Поощрение Мастернод стало ответом на опасность того, что может появиться атакующая сторона, которая запустит множество Нод с целью выполнить Sybil атаку на сеть. Этого можно достигнуть существенно меньшими ресурсами, чем требуется для выполнения атаки на сеть, основанную на «Proof of Work».

Разработчик Биткойна Peter Todd недавно комментировал эту опасность:

Sybil атака на пространство IP адресов выполняется намного проще, по сравнению с часто упоминаемой атакой за счёт огромной вычислительной мощности, требуемой для создания фальшивых подтверждений. Поэтому злоумышленникам будет намного проще установить контроль над множеством Нод сети, к которым пользователи будут вынуждены подключаться, чем захватывать огромные вычислительные мощности.

В сети DASH эта потенциальная угроза решена путем требования залога в 1000 DASH для запуска Мастерноды. Эти монеты должны оставаться на «адресе холодного хранения», контролируемого оператором Мастерноды и связанного с узлом сети – для того, чтобы этот узел сети работал и получал вознаграждение.

«Если вы собираетесь реализовать надёжную Систему поощряемых Нод, вы должны также будете потребовать с них демонстрации залога, чтобы люди не могли получать контроль над неограниченным числом Нод и с их помощью атаковать сеть», – объясняет Daniel Diaz, член команды проекта Dash. “Требование залога очень важно, так как оно позволяет предотвращать Sybil атаки. Например, компании, занимающиеся мониторингом и анализом блокчейна не смогут бесплатно запускать поддельные Ноды и фабриковать транзакции.”

Несмотря на то, что эта система, кажется, хорошо работает для DASH, было бы безрассудным рассматривать её как Святой Грааль для дебатов о размере Блока. Тем не менее, Bitcoin существует не в вакууме, и было бы столь же безрассудно игнорировать потенциально полезные идеи, рождающиеся в Альткоин-пространстве, при обсуждении будущих направлений развития любой криптовалюты.

Оригинал статьи на cointelegraph.com



Categories: Альткойны, Инфраструктура

Tags: ,

31 replies

  1. комиссия в зависимост от суммы перевода делает неывгодными переводы крупных сумм – ОК, решение напрашивается: сделать комиссию фиксированной, начиная с этого вот предела крупной суммы. Не выше чем у SWIFT-a и дело с концом. Можно ж сделать все гибко, суть не в этом, а в том, чтобы была некая комиссия, очень низкая и выгодная для мелких сумм тоже, и при этом поддерживала бы и поощряла майнеров с полными нодами, тогда и проблема спама решена будет и сеть будет развиваться, и блокчейн действительно будет надежен во всех смыслах. А так что-то я не вижу в нем никакой надежности и вечности (в плане сохранности информации в нем). Вон уже реальное количество полных нод – 200. А дальше что будет? Это сейчас 32гб, а дальше? Ну КТО без поощрения будет качать их и держать? Бред, Брееееед……

    • 32? Вы отстали от жизни… )

      собственно, об этом и речь. Что, пока что, качают и держат энтузиасты (и то, признаюсь, что не держу ноду постоянно включенной. Хотя стоило бы, но надо либо вложиться в это дело, либо использовать общий канал/устройство, а там поддержание ноды банально мешает работать, порой)

  2. уже давно держу 24/7 запущенным биткоин-core кошелек, посмотрим как будет дальше

  3. Странно, что замалчивается другое негативное последствие полной ноды: она светит ip адрес. Через блокчейн по ip можно увидеть суммы в биткоинах. Держать полную ноду это равносильно написать на заборе почтовый адрес квартиры где деньги лежат с указанием суммы.

    • Во-первых, “через блокчейн по ip” ничего увидеть нельзя. Blockchain.info пытается “догадаться” откуда пришла транзакция, но часто неверно – ведь различия между собственной и транслируемой транзакцией пиры не делают. Во-вторых, необязательно держать кошелек именно на ноде. В-третьих, можно пользоваться TORом. В-четвертых, существуют сервисы, через которые можно транслировать свои транзакции вообще без привязке к ноде (для особых параноиков) – на том же blockchain.info такой есть.

      В-пятых, если вы думаете, что “легкие” SPV клиенты не оставляют за собой “след”, то вы сииильноо ошибаетесь. SPV клиенты часто зависят от “серверов”, и никто не мешает серверам полностью логировать всю активность пользователей.

      • “Blockchain.info пытается “догадаться” откуда пришла транзакция, но часто неверно” – ну если компания Blockchain.info не может установить откуда пришла транзакция, это не значит что этого никто при желании не может сделать. Даже ТОР не совсем выход, так как примерно год назад во время операции по отлавливанию сайтов продевающих наркотики в сети ТОР, право охранительные органы продемонстрировали как можно деанонимизировать трафик.

        Цитата из статьи: “DASH проверяет выполнение этих требований с использованием так называемой Системы Proof of Service”. Вот во время этого Proof of Service скорее всего можно установить ip интересуемой мастерноды.

      • То что Blockchain.info выдает сумму прошедшую через ваш ip с некоторой ошибкой не снимает вопроса. Включать TOR опасно: там настоящие преступники смогут использовать компьютер. Даже если не держать в ноде кошелек то все равно на этот ip падает подозрение, что там могут водиться биткоины. Всякие сервисы могут запоминать ip на годы.

        Смотрим на несколько лет вперед: Биткоин многократно вырос. Кризис углубился. Вокруг рыскают голодные медведи. В публичном доступе находятся адреса нод….

        • люди, развивающие биткоин, не ставят целью сделать его существование секретом. Как и своё участие в его поддержке/разработке.
          Не путайте возможность анонимных платежей, с необходимостью прятать все транзакции. Биткоин не создавался для “теневого” рынка (хоть и использовался там с успехом). Наоборот, одним из плюсов биткоин-протокола является прозрачность транзакций, позволяющая, в т.ч. заключать договора/сделки (по условию) при помощи блокчейна.

          Советую получше ознакомиться с механикой работы протокола и идеями, на которых он был создан; а не фокусироваться на отдельном случае прикладного применения.

  4. Грубо говоря, если нод 6000, то ботнет из 6001 машины, каждая из которых проксирует evil-ноду, это очень опасно?

    • Вот на сколько я понимаю, число полных нод в биткойне не является принципиальным. Представим что в мире всего осталось 10 полных нод транслирующих теперешний блокчейн, и кто-то запустил 10000 полных нод транслирующих его собственный “надуманный” блокчейн. Если я на компе запускаю программу полного клиента, то она скачает тот блокчейн у которого длиннее цепочка блоков(на самом деле важна не число намайненых блоков, а так называемая интегральная сложность, которая выражается как число блоков помноженная на сложность их добычи). Это является определением валидного блокчейна. И неважно что “надуманный” блокчейн мне очень много кто пытается впихнуть. Программа полного клиента не измеряет (по крайне мере для принятия валидного блокчейна) количества нод с одним и другим блокчейноми и точно не на основе этого решает какой блокчейн валиден.

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

      • “Если я на компе запускаю программу полного клиента, то она скачает тот блокчейн у которого длиннее цепочка блоков”

        А как ваш комп найдет эти 10 “правильных” Нод с “правильным” Блокчейном, при том что вся сеть будет запружена 10.000 других, “неправильных” Нод с “неправильным” Блокчейном?

        • Ну в этом я не силён, но насколько я знаю, полные ноды имеют списки ip адресов других полных нод у которых блокчейн одинаковый. То есть, чтобы найти эти 10 “правильных” нод, мне достаточно найти одну “правильную” ноду. В клиенте Bitcoin core прописано несколько первичных ip адресов, куда программа обращается для получения дальнейших ip адресов. За список первичных ip адресов ответственна Bitcoin Foundation. И если по каким-то причинам Bitcoin Foundation будет коррумпирована и не предоставит хотя-бы один ip адрес “правильной” ноды, то этим 10-и “правильным” нодам надо как-то прорекламироваться, что мол “вот у нас цепочка блоков длиннее нежели официально предоставляемая Bitcoin Foundation, можете скачать и сами проверить”. И если такое случится, то доверие к Bitcoin Foundation упадет и все просто будут прописывать в ручную первичный список ip адресов эти 10 “правильных” нод.

          В общем я хочу сказать, что для меня (я так понял из оригинальной статьи Сатоши Накамото) правильный блокчейн это самый длинный (в понятие интегральной сложности конечно) блокчейн с генесис-блоком который намайнил Накамото. И неважно кто предоставляет его: Bitcoin Foundation или сосед Петя, который распечатал его на бумаге.

          • “За список первичных ip адресов ответственна Bitcoin Foundation.”

            Это неудовлетворительное решение проблемы:
            1. Во-первых, это получается полная централизация в ключевом аспекте работы сети, которая должна вообще-то оставаться децентрализованной.
            2. Во-вторых, обыватели не будут у себя никакие статичные ip прописывать, а просто всех толпой перейдут на “неправильный” блокчейн. Хотя его после этого его уже нельзя будет назвать “неправильным”, ведь на нём абсолютное большинство будет сидеть.

            • “получается полная централизация в ключевом аспекте работы сети, которая должна вообще-то оставаться децентрализованной”

              Насколько мне известно все пир2пир сети работают так, что первичные ip адреса просто прописаны в программе-клиенте. Дэш-коин наверно тоже не исключение, иначе как найти первого пира? Тупо брутфорсить по всем ip и запрашивать блокчейн? Децентрализация от этого не страдает, так как можно просто прописать те ip, которые сам считаешь нужными. Вот кстате что я нашел по этому поводу:
              “There’s no way around having to know at least one initial peer to discover more. Fully P2P protocols, such as Gnutella or Gnutella2, or the simpler Overnet (made famous by Storm Worm), are based on each client having a start-up list of a few peers.”
              Пруфлинк: http://stackoverflow.com/questions/310607/peer-to-peer-methods-of-finding-peers

            • “Хотя его после этого его уже нельзя будет назвать “неправильным”, ведь на нём абсолютное большинство будет сидеть”

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

            • Покопался в программном коде Дэш, и вот пожалуйста, получите-распишитесь, явно прописаны начальные адреса (так называемые DNSseed’ы) где надо обращаться за актуальными списками ip адресов полных сетевых нод: https://github.com/dashpay/dash/blob/master/src/chainparams.cpp#L163

              Так что в Дэш, как высказался alex-ru, “получается полная централизация в ключевом аспекте работы сети”.

  5. Есть мнение, что год назад нод было не 10000, а 7000. https://getaddr.bitnodes.io/dashboard/?days=365

    • И на настоящий момент нод не 6000, а 6300. Таким образом, проседание составило не 40%, а только 10%.

      • Вообще-то, когда-то (в начале 2013-го) количество полных нод Биткойна было гораздо больше – около 40 тысяч, если мне не изменяет память. С тех пор, их число уже упало почти на порядок.

        • тут надо понимать, что полные ноды это ноды онлайн.
          я например пару раз в месяц синхронизируюсь, и так делают многие.

      • Ну а если считать не пассивные ноды, а активные с числом коннектов больше 100, то таких нод будет не 6300, а всего 200.

    • Да, что-то они напутали (я статью не писал, а только перевёл) кажется с 2014 годом – тогда вроде как 10.000 Нод было на пике у Биткойна.

      Однако, существует в сети и вот такое мнение, цитирую:
      “Чуть подросло, но все равно -880 нод за год https://getaddr.bitnodes.io/dashboard/?days=365
      Однако, рост в последний период это XT ноды – т.е. поднимали для “голосования” за большие блоки. А снижение скорости уменьшения количества фул нод может быть всего лишь следствием реализованного в Bitcoin 0.11 прунинга старых блоков, когда вроде бы и фулнода, а хранит только последние 550 Мб (по умолчанию) из 30 Гб всего блокчейна. Сдается мне таких недо-фулнод будет в биткоине все больше в процентном отношении…”

      • Интересно, как согласуется с этим вот “прунингом старых блоков” утверждение, что “нечто, однажды записанное в блокчейн, остается в нем навсегда” ?!
        Видимо точно так же, как соотносятся утверждение, что “транзанкции в биткоинах бесплатны” и “размер комиссии должен определяться рыночными механизмами” …

        • Ну, в блокчейне-то все остается, но ты по собственной инициативе “выбрасываешь” из своей копии 95% информации, которая, по твоему мнению, “устарела”. В чем проблема? А насчет “транзакции бесплатны” – это неуклюжий пиар энтузиастов, которые плохо разобрались в вопросе. Бесплатным может быть только сыр в мышеловке.

          • 1) Вот-вот-вот 🙂 А если 95% полных нод тоже по своей инициативе удалят 95% по их усмотрению устаревших блоков, то что останется от “блокчейна” ? Надежного такого , вечного? А?:)

            2) вот-вот вот! 🙂 поэтому вместо нахваливания “в энтузиазме” – транзакции бесплатны, нужно было делать все по-человечески, грамотно, и с дальновидностью. От комиссии в 0.1% от размера транзанкции , которая шла бы майнеру, ДЕРЖАЩЕМУ ПОЛНУЮ НОДУ (ТОЛЬКО ТАКОМУ) и добывшему блок – и тогда все встало бы на свои места. Но ведь нет….

            И, в конце-концов, хотябы с вашего сайта в статьях “для новичков что такое биткоин” можно-то убрать утверждения, что транзанкции бесплатны?:)

            • “от комиссии в 0.1% никто бы не умер”, хотел дописать:)

            • Ну да, осталось с тех времен когда различие было непринципиально. Хорошо, поправим с бесплатных на “крайне дешевые” денежные переводы, ок? 😉

            • Комса в процентах от суммы перевода плохая идея, поскольку делает платёжную систему невыгодной для перевода крупных сумм. В том же SWIFT оплата за перевод фиксированна.

            • пока что -prune запускается из командной строки. Это предполагает, что человек выполняющий “тонкую” настройку, примерно соображает, что делает. У людей “попроще” (менее грамотных в данном вопросе) будет работать полная нода.
              Фактически, данный “прунинг” должен, обратно, стимулировать увеличение кол-ва нод, за счёт дополнения сети “неполными”, а не вести к падению “полных”.

              напомню, что “кошельком” такая нода перестаёт быть в момент выполнения команды по “удалению устаревших блоков”.

  6. Опубликовано первое официальное промо-видео проекта DASH

    • DASH это очередной биткоин? Из видео не понятно какие преимущества перед биткоином, вообще сложилось ощущение что описали биткоин….

      Зато вот, что пишут у них на сайте:

      “Darksend использует очень большой список ключей и в процессе своей работы задействует их достаточно интенсивно. Это означает, что вам следует делать резервные копии чаще, чем при использовании Кошельков других криптовалют, так как в процессе анонимизации Dash производится много автоматических транзакций в фоновом режиме. В целях безопасности вам требуется делать резервную копию каждый раз, когда увеличивается баланс ваших анонимизированных Dash.”

      “Не запускайте свой Кошелёк в нескольких местах одновременно – это может привести к ошибкам в работе автоматической анонимизации средств, в результате чего возникает риск двойной отправки средств вашим Кошельком.”

      Особенно вот это впечатлило:

      “Используя Dash, вы действуете на свой страх и риск – следуйте всем инструкциям в точности и используйте только те средства, которые вы можете позволить себе потерять в случае, если что-то пойдёт не так.”

      Автор этого форка не Мавроди часом? )

Поделитесь своими мыслями

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s