MoneroPulse

Тема в разделе "Мануалы", создана пользователем Mr. Pickles, 13 янв 2020.

  1. Mr. Pickles

    Команда форума Модератор Редактор

    Регистрация:
    11 сен 2017
    Сообщения:
    582
    Симпатии:
    210
    Что такое MoneroPulse?

    MoneroPulse является инфраструктурой, позволяющей производить экстренную проверку контрольных точек в блокчейне.

    Таким образом, MoneroPulse, по сути, позволяет избежать разветвлений блокчейна в результате ошибок в протоколе консенсуса (как в этом случае, произошедшем в 2014).

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

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

    Пользователи также могут установить автоматическую проверку контрольных точек в monerod, используя опцию --enforce-dns-checkpointing. В случае несоответствия monerod «откатит» локальный блокчейн на несколько блоков. В конечном счёте альтернативный («исправленный») форк станет «тяжелее» и узел последует ему, оставив «недействительный» форк. Данную опцию рекомендуется использовать с автоматическими полными узлами.

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

    DNS как основа MoneroPulse

    Контрольные точки сохраняются как TXT-записи DNS в доменах, контролируемых операторами.

    Вот как можно получить доступ к контрольным точкам, используя любой DNS-клиент:
    Код:
    dig -t txt checkpoints.moneropulse.net +dnssec
    В результате получаем:

    Код:
    (cut)
    
    ;; ANSWER SECTION:
    checkpoints.moneropulse.net. 299 IN  TXT  "1288616:875ac1bc7aa6c5eedc5410abb9c694034f9e7f79dce4c60698baf37009cb6365"
    checkpoints.moneropulse.net. 299 IN  TXT  "375000:c80c23e387585e12ffb6649d678e9ba328181797b9583a6d8911b77e25375737"
    checkpoints.moneropulse.net. 299 IN  TXT  "325000:4260d56368267bc2a70dd58d73c5ecf23b4e4d96e63c29a868e4a679b0741c7f"
    checkpoints.moneropulse.net. 299 IN  TXT  "233000:4f69bec2af6c0852412bdd10c19e6af10c8d738fe2618b5511a98efd03ab477e"
    checkpoints.moneropulse.net. 299 IN  TXT  "450000:4d098b511ca97723e81737c448343cfd4e6dadb3d8a0e757c6e4d595e6e48357"
    checkpoints.moneropulse.net. 299 IN  TXT  "250000:f59d31839bd909ec8830b4f7f66ff213f0bd006334c8523daee452725e5c7a79"
    checkpoints.moneropulse.net. 299 IN  TXT  "550000:c2e80a636438bd9f7a7ab432a6ad297e35540d80ff5b868bca098124cad2ff8c"
    checkpoints.moneropulse.net. 299 IN  TXT  "650000:1d567f2b491324375a825895c5e7b52857b38e4fed0e42c40909c2d52240b4e0"
    checkpoints.moneropulse.net. 299 IN  TXT  "800000:2ced10aa85357ab6c14bb12b6b56d1dde28940820dda30911b73a5cc9a301760"
    checkpoints.moneropulse.net. 299 IN  TXT  "850000:00e2b557dde9fd4a9e2e3dd7ddac962f5ca475eb1095bc50aa757fd1218ab0a5"
    checkpoints.moneropulse.net. 299 IN  TXT  "900000:d9958d0e7dcf91a5a7b11de225927bf7efc6eb26240315ce12372be902cc1337"
    checkpoints.moneropulse.net. 299 IN  TXT  "913193:5292d5d56f6ba4de33a58d9a34d263e2cb3c6fee0aed2286fd4ac7f36d53c85f"
    checkpoints.moneropulse.net. 299 IN  TXT  "913269:f8302e6b8ba1c49aad9a854b8d6c79d8272c6239dcbba5a75ed0784c1d4f56a1"
    checkpoints.moneropulse.net. 299 IN  TXT  "350000:74da79f6a136969abd6364bd3d37af273c408d6471e8ab598e80569b42415f86"
    checkpoints.moneropulse.net. 299 IN  TXT  "400000:1b2b0e7a30e59691491529a3d506d1ba3d6052d0f6b52198b7330b28a6f1b6ac"
    checkpoints.moneropulse.net. 299 IN  TXT  "500000:2428f0dbe49796be05ed81b347f53e1f7f44aed0abf641446ec2b94cae066b02"
    checkpoints.moneropulse.net. 299 IN  TXT  "600000:f5828ebf7d7d1cb61762c4dfe3ccf4ecab2e1aad23e8113668d981713b7a54c5"
    checkpoints.moneropulse.net. 299 IN  TXT  "700000:12be9b3d210b93f574d2526abb9c1ab2a881b479131fd0d4f7dac93875f503cd"
    checkpoints.moneropulse.net. 299 IN  TXT  "300000:0c1cd46df6ccff90ec4ab493281f2583c344cd62216c427628990fe9db1bb8b6"
    checkpoints.moneropulse.net. 299 IN  RRSIG  TXT 13 3 300 20180922151845 20180920131845 35273 moneropulse.net. 8CyqtsM2f9o6OHZYqtGPVf+8gcFM+eUyoMi29LlkcLtK1AXbZlKqCcdN NvdvB+4OzepmpTanSc+TbLWbz/sIzA==
    Следует отметить наличие подписи DNSSEC в конце.

    Контрольные точки дублируются на нескольких DNS-серверах:

    Основная сеть (Mainnet)
    Код:
    checkpoints.moneropulse.se
    checkpoints.moneropulse.org
    checkpoints.moneropulse.net
    checkpoints.moneropulse.co
    Отладочная сеть (Stagenet)
    Код:
    stagenetpoints.moneropulse.se
    stagenetpoints.moneropulse.org
    stagenetpoints.moneropulse.net
    stagenetpoints.moneropulse.co
    Тестовая сеть
    Код:
    testpoints.moneropulse.se
    testpoints.moneropulse.org
    testpoints.moneropulse.net
    testpoints.moneropulse.co
    MoneroPulse как вектор атаки

    Следует отметить, что MoneroPulse не создаёт блоки и не может самостоятельно разветвить блокчейн. Этот механизм просто подсказывает, какой из форков является действительным.

    В случае удачного взлома MoneroPulse злоумышленник сможет остановить работу всех автоматических узлов, выдавая им фальшивые контрольные точки. Этому частично препятствуют DNSSEC и использование множества доменов. Monero предполагает соответствие всех контрольных точек во всех доменах. Таким образом, взлом одного домена или регистратора не повлечёт за собой какого-либо сбоя.

    MoneroPulse также повышает авторитет операторов в случае спорных хардфорков. Но несмотря на все положительные стороны, MoneroPulse, по сути, централизует полномочия, сосредотачивая их в руках ведущих разработчиков или того, кто в конкретный момент времени пользуется инфраструктурой MoneroPulse.

    Кто является оператором MoneroPulse?

    Операторами MoneroPulse являются выбранные ведущие разработчики.

    «ВНИМАНИЕ! Не было получено двух действительных DNS записей контрольных точек MoneroPulse» (WARNING: no two valid MoneroPulse DNS checkpoint records were received). Что делать в этом случае?

    Это означает, что используемый вами DNS-сервер не подтверждает флаг +dnssec, необходимый для безопасного запроса контрольных точек.

    По умолчанию операционная система использует DNS-сервер вашего поставщика интернет-услуг (ISP).

    Чтобы исправить положение, вам необходимо либо изменить DNS-сервер в целом в сетевых настройках вашей системы, либо только для monerod.

    Многие предпочитают использовать DNS-серверы Google или Cloudfare, а не те, что предлагаются ISP.

    DNS-сервер Google:
    Код:
    DNS_PUBLIC=tcp://8.8.8.8 ./monerod
    DNS-сервер Cloudfare:
    Код:
    DNS_PUBLIC=tcp://1.1.1.1 ./monerod
    Ссылки
    Источник: MoneroPulse

    Перевод:
    Mr. Pickles (@v1docq47)
    Редактирование:
    Agent LvM (@LvMi4)
    Коррекция:
    Kukima (@Kukima)
     
  • О нас

    Наш сайт является одним из уникальных мест, где русскоязычное сообщество Monero может свободно общаться на темы, связанные с этой криптовалютой. Мы стараемся публиковать полезные мануалы и статьи (как собственные, так и переводы с английского) о криптовалюте Monero. Если вы хорошо владеете английским (или можете писать собственные статьи/мануалы) и хотите помочь в переводах и общем развитии Monero для русскоязычной аудитории - свяжитесь с одним из администраторов.