P2P-сети, доверие и безопасность. Почему в Биткоин-сетях все по-честному

Пост опубликован в блогах iXBT.com, его автор не имеет отношения к редакции iXBT.com

Хранится ли Биткоин у кого-то на компьютере? Уже выяснили, что нет. Есть ли какое-то физическое воплощение — часто рисуют золотые монетки с чеканкой? Тоже нет. А что все-таки такое этот Биткоин? И другая криптовалюта тоже? По сути — способ структурировать информацию. Просто огромная бухгалтерская книга (так и называется на английском: ledger, обычно это слово применяется к обычным гроссбухам в бухгалтерии).

Источник: ru.freepik.com

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

Что такое P2P

P2P расшифровывается как peer-to-peer. Понятие относится ко всем компьютерам в сети. Слово «peer» переводится по-разному, наиболее подходящий по смыслу — «ровесник». То есть, равный среди прочих. Это главный принцип системы, которую еще называют нодулярной (от слова «nod» — узел). Поскольку компьютеры-«узлы» равноправны, то ни один не может считать себя «главным», и это принципиальное отличие от большинства сайтов, где есть «хозяин» (сервер) и «клиент», у которого права ограничены.

Если добавляется блок в единый гроссбух, то все узлы получают информацию на равных правах. Даже если один компьютер взломают, он сгорит или случится еще что-нибудь непредвиденное, это никак не отразится ни на остальных узлах, ни на цепочке в целом. Ни один хакер или группа хакеров не смогут взломать все компьютеры, а если правильная информация останется хотя бы на одном из узлов, сеть P2P поможет восстановить ее буквально «из небытия».

Примерно так выглядит любая P2P-сеть
Примерно так выглядит любая P2P-сеть
Источник: ru.freepik.com

Преимущества сети P2P выглядят так:

  1. Состояние блокчейна всегда актуальное. Задержка может быть несколько минут, но транзакции в сети тоже не мгновенные. За это время данные успевают обновиться. Чтобы отслеживать блокчейн, можно использовать специальную программу, которая так и называется Blockchain Explorer.
  2. Нет «главных» компьютеров. Если сравнивать с обычными платежами через интернет, то сервер запрашивает информацию, клиент может ее только предоставить. Если возникает проблема на стороне сервера, деньги могут пропасть. Этим, кстати, пользуются мошенники, подсовывая фишинговые страницы и выманивая данные по картам и обычным электронным кошелькам у пользователей. В P2P-системе права доступа у всех одинаковые, вытащить чужие данные нельзя.
  3. Даже если один или несколько компьютеров взломали, это не повлияет на сеть в целом. Более того, P2P-система отслеживает «ошибки». «Подозрительные» компьютеры будут сразу же отключаться от сети, а попытки совершить через «плохие» узлы транзакцию получат отказ.
  4. Все узлы уничтожить нельзя. Их десятки тысяч, а может быть, миллионы по всему миру. Ни одному хакеру или группе хакеров не под силу взлом такого масштаба.
Peer to Peer
Peer to Peer
Автор: The 360 Degree Источник: en.wikipedia.org

Хорошо, но почему все-таки столько разговоров о безопасности Биткоина? И какое к этому отношение имеют P2P-сети? Ведь по торрентам, которые тоже используют эту систему, вирус очень даже можно передать — по крайней мере, если он зашит в том файле, который скачивает пользователь!

Клиент-сервер
Клиент-сервер
Автор: Mauro Bieg Источник: en.wikipedia.org

Проблема доверия

P2P-сеть существовала и до Биткоина. Однако раньше считалось, что узлы в одноранговой сети не настолько надежны. Проблема называлась «Дилеммой Византийских генералов». Выглядит она так.

Византийские генералы и их проблема (фото с музея)
Византийские генералы и их проблема (фото с музея)
Автор: Liverlion Источник: adapulse.io

Есть армия Византии. В ней несколько генералов, каждый командует своими людьми. Они должны решить — нападать или отступать. Однако среди генералов могут быть предатели, которые попытаются помешать.

Переводя с теоретического на практический: взломанные компьютеры или «плохие» узлы.

Что надо делать?

  1. Достичь консенсуса. Честные генералы должны решить что-то одно — нападать либо отступать.
  2. Доверие. Если один решает отступать, остальные соглашаются.
  3. Честность. У предателей не должно быть возможности повлиять на решения генералов.

Сатоши Накамото предложил решение этой проблемы. Основывалось оно на криптографии. В сети Биткоина узлы работают в одноранговой сети, не зная друг о друге. Никакого «доверия» тоже не требуется.

Однако есть правила:

  • Условия, при которых блоки добавляются в блокчейн;
  • Какие блоки при этом считаются «честными генералами»
  • Как решают конфликты.

Каждое правило изменило подход к P2P сети, превратив из инструмента для передачи обычных данных — программ, видео, музыки, — в криптографический финансовый инструмент.

Механизм консенсуса — как он работает

Просто всем дать равноправие, как это было с торрентами, недостаточно. Хакер может попытаться захватить узел, а потом через него рассылать «скам». И даже есть шанс, что заразит другие компьютеры — или обманет их, сделав поддельные транзакции. Но Сатоши Накамото предусмотрел такие риски. Он знал, что в обычных P2P-сетях проблема с недостоверной информацией существует. Вы и сами, наверняка, с ней сталкивались: например, если скачивали фильм или программу торрентом, а потом ничего не запускалось. И программа выдавала «ошибку хэша». Что ж, не повезло! Узел, с которого вы скачали, был испорчен. Хорошо еще, если вирус не поймали!

Консенсус между узлами
Консенсус между узлами
Источник: playground.com

Но то просто программа или фильм. А вот деньги — это деньги. Поэтому и придумали POW — Proof of Work или Доказательство работы.

Что это за доказательство? Их несколько:

  • Новый блок добавляется каждые десять минут — если какой-то узел справляется быстрее или медленнее, он скорее всего, будет помечен как «подозрительный» и автоматически выведен из блокчейн-сети.
  • Каждый блок проверяется. Вот и приходим к консенсусу. Все «византийские генералы» — узлы P2P-сети, обнаружив новый блок, решают: он настоящий? Доверять ли ему? По правилу Накамото, узлы не знают о решении друг друга.
  • Если возникает конфликт, то получается «вилка» или «форк» — чаще используется английское название. Да, бывает и так, что один «генерал» приказывает отступать, а второй нападать. Протокол консенсуса считает, что прав тот, кто длиннее… то есть, у кого длиннее цепочка. Дальше к длинной цепочке подключатся другие майнеры, постепенно все перейдут к ней, а ошибочная просто отомрет. Одним словом: размер имеет значение!
  • Транзакция запрещается автоматически, если заметят попытку двойного использования. Например, если у отправителя пять Биткоинов, и он пытается отдать эту сумму в двух разных местах. Один из платежей будет отклонен.
  • В каждой транзакции есть цифровая подпись владельца. Здесь используется двойное шифрование с открытым и приватным ключом. Подделать подпись практически невозможно.

Остается только еще один вопрос: а если все-таки пошла ветвиться «вилка», почему ошибочная должна «умереть?» И это тоже решается очень просто.

Почему майнеры «за правду»

Майнер — это человек, который получает деньги за обслуживание сети Биткоинов. Он использует свои компьютеры, видеокарты — иногда целые фермы. Разумеется, не за «спасибо». Каждый новый блок вознаграждается некоторым количеством монет.

Майнеру нет никакого смысла работать на ошибочный «зубец вилки». Если он будет добавлять блоки к плохому «форку», то никакого вознаграждения не получит. Только зря потратит электричество!

Иногда «форки» держатся некоторое время. Нужно подождать примерно шесть новых блоков, чтобы стало понятно, какой «зубец вилки» правильный, а какой нет. Потерять час времени и электроэнергии, конечно, обидно. Но не настолько, чем если бы это был день или два!

Существует один способ атаки блоков. Для этого надо вернуться к существующему блоку, который уже признан и официально «одобрен» всеми «византийскими генералами». А потом от него формировать поддельную цепочку.

Но и этот метод почти нереален: потребуется мощность тысяч майнеров, которые уже добавили информацию к этому блоку, сформировав цепь дальше. Слишком дорого. Оно просто того не стоит.

Выводы

  • P2P-сети существовали и до Биткоина, но сами по себе они не слишком безопасны.
  • P2P-сети дают «равноправие» всем участникам процесса передачи — «узлам».
  • В криптодобыче и транзакциях нужно доверие, чтобы избежать конфликтов.
  • Существует алгоритм POW — Proof of Work, доказательство работы, который помогает обезопасить P2P-сети.
  • Подделать POW невозможно, даже если получится создать неправильный блок, эта цепочка скоро погибнет.
  • Майнерам нет смысла поддерживать «плохие» цепочки — они не будут получать вознаграждение за блоки в них.

Подписывайтесь на наш новый Telegram, который посвящен только сфере криптовалют. Ссылку на канал можно найти ниже в разделе «Об авторе».

Изображение в превью:
Автор: freepik
Источник: ru.freepik.com
Автор не входит в состав редакции iXBT.com (подробнее »)
Об авторе
Подписывайтесь на новый Telegram, где будут выходить разные гайды и обзоры из мира криптовалют.

1 комментарий

D
Византийские генералы и их проблема (фото с музея)

А что это фото на музее делает? Внутрь не вместилось?

Добавить комментарий

Сейчас на главной

Новости

Публикации

Советский винтаж в Великобритании и Италии: почему зарубежные ценители до сих пор охотятся за Selena B-210

Переносной транзисторный радиоприёмник Selena B-210 выпускался Минским производственно-техническим объединением «Горизонт» (Минским радиозаводом) начиная с 1975-1976 годов. Данное устройство...

Стальной каркас над Манхэттеном: как строили Empire State Building

Весной 1930 года на Пятой авеню почти не было места для огромной стройки. Участок бывшего отеля Waldorf-Astoria был зажат улицами, вокруг шёл обычный манхэттенский трафик, а подрядчики собирались...

✦ ИИ  Что происходит, когда сервер нейросети перестаёт отвечать посреди запроса

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

Почему в квантовой физике все случайно: как устроено правило Борна и можно ли его доказать

В основе современной квантовой физики лежат два совершенно разных закона, которые описывают поведение микромира в зависимости от того, наблюдаем мы за ним или нет.Первый закон — это...

«Спидола» ПМП-60: приемник, который спас завод и стал легендой

В конце 1950-х годов Рижский электротехнический завод ВЭФ столкнулся с проблемой, знакомой многим советским предприятиям: ламповая радиоаппаратура перестала пользоваться спросом и затоварила...