Что такое блокчейн
Блокчейн (переводится как «цепь из блоков») — это выстроенная по определенным правилам непрерывная последовательная цепочка блоков, содержащих информацию. По сути, блок — это единица информации в блокчейне.
Связь между блоками обеспечивается не только нумерацией (блок 3 следует за блоком 2), но и тем, что каждый блок содержит информацию и о себе, и о предыдущем блоке.
Что находится в самих блоках? В них записываются различные транзакции, например перевод с одного биткоин-адреса на другой. Но не только. Транзакции, из которых состоят блоки, могут содержать не только передачу ценности (того же биткоина), но и передачу данных.
Таким образом, блокчейн — это технология хранения, обработки и передачи данных и ценностей. Отличие от простой базы данных (сервер в подвале какой-нибудь компании) заключается в том, что блокчейн хранится на множестве компьютеров.
Изменение в базе данных происходит у всех участников сети (например, майнеров), поддерживающих конкретный блокчейн. Но только если все они согласны с изменениями. Такое согласие называется консенсус.
Впервые термин «блокчейн» появился как название базы данных (вроде Oracle или MySQL) системы Биткоин, однако с тех пор блокчейн стал распространенной технологией, которую чаще всего отождествляют с реестром (перечнем) транзакций криптовалют.
Вы отправляете деньги своему другу - транзакция записывается в блок - блок становится видимым для всех участников - майнеры подтверждают транзакцию(за это получают комиссию) - блок записывается в реестр и становится частью блокчейна - Ваш друг получает деньги
Что такое хеш
Хеш — это результат шифрования каких-либо данных. Это можно представить как сжатие или упаковку палатки в чехол. То есть хеш — это производная от всей содержащейся в блоке информации.
Существуют различные стандарты шифрования для получения хеш-сумм — например, Биткоин работает на стандарте SHA256.
Важно заметить, что слово «шифрование» используется для упрощения. Точнее будет сказать «хеширование», так как хеш, в отличие от шифра, нельзя вернуть в исходное состояние с помощью ключа.
Весь смысл хеширования заключается в том, что если изменить хотя бы один байт информации в первом блоке, то хеш этого блока уже будет другим. А поскольку хеш второго блока содержит оригинал хеша первого блока, то изменение первого блока без изменения второго блока невозможно. И так далее. Таким образом достигается неизменность внесенных данных в блокчейне.
Кто занимается хешированием
Итак, информация в блоках хранится в зашифрованном виде. Ее обработкой занимаются майнеры, которые с помощью своего оборудования обеспечивают безопасную передачу данных.
Майнинг — процесс выпуска новых блоков, строительство цепочки. Майнеры выполняют хеширование, то есть шифруют данные и подбирают хеш к блоку. Это сложные математические операции, требующие существенных вычислительных мощностей. Майнеры получают награду за очередной блок и комиссии, которые платят пользователи за транзакции.
Майнером может стать любой человек или компания, которые купят и установят специальное оборудование. Это может быть как специальное оборудование для хеширования (майнинг биткоинов), так и видеокарты (майнинг эфириумов).
Как осуществляются транзакции
Итак, майнеры — это участники сети, которые обрабатывают транзакции и зарабатывают на этом. А как технически транзакции попадают в блок?
Допустим, у вас есть кошелек (электронный, конечно) с 1 BTC. Вы хотите перевести другу 0,5 BTC. Сначала транзакция попадает в так называемый мемпул — очередь транзакций всех пользователей в сети. В очередной блок могут попасть не все транзакции: объем блока ограничен.
Очередность определяется комиссией, которую пользователи готовы заплатить. Это можно сравнить с отдельными приложениями для вызова такси: чем большую сумму вы назначите за поездку, тем быстрее уедете.
Что с комиссией
У разных блокчейнов есть свои нюансы, но в большинстве случаев пользователи сами решают, сколько они готовы заплатить за перевод. Поэтому первыми попадут в блок те, кто готов заплатить больше. Остальным придется ждать следующего блока.
Например, в сети Биткоин новый блок формируется примерно каждые 10—15 минут. Соответственно, если отправитель транзакции поставит слишком низкую комиссию, то он может прождать несколько часов, прежде чем его операция попадет в блок и выполнится.
Как правило, комиссия в блокчейн-сетях не зависит от объема пересылаемых ценностей. Так, если вы переводите биткоины на сумму, эквивалентную $100, вы можете заплатить такую же комиссию, как и крупный инвестор, который переводит биткоины на сумму $100 млн. Например, в 2020 году была зафиксирована транзакция на $1 млрд, за которую пользователь заплатил лишь $80 комиссии.
Кто отвечает за безопасность
Для примера представьте такую сказочную ситуацию: какой-то программист-жулик решил подзаработать. Подключился к блокчейну, создал фальшивый блок о переводе в свой кошелек денег и отправил его в сеть. Кто его остановит?
Как вы помните, блокчейн — это распределенный реестр, то есть данные о предыдущих транзакциях хранятся сразу на множестве устройств. Если информации о транзакциях нашего жулика нигде нет, кроме его собственного устройства, то фальшивый блок будет просто отвергнут сетью.
Таким образом, каждый блок должен проходить через процедуру проверки, когда сеть ищет доказательства законности операции и приходит к консенсусу. А кто ищет эти доказательства?
Помимо майнеров, в блокчейн-сети также существуют ноды (узлы) — это компьютеры, которые содержат всю историю блокчейна, то есть хранят у себя полную копию всех операций. Ноды необязательно являются майнинговыми устройствами. И наоборот, не все майнинговые устройства обязательно держат у себя полную историю блокчейна.
Конкретный принцип работы зависит от алгоритма консенсуса блокчейна. Есть два основных.
1. Доказательство работой
Многие защищенные блокчейны, например Биткоин, используют протокол консенсуса PoW, Proof-of-Work («доказательство работой»), в котором майнерам нужно решать сложные задачи по поиску хеша, чтобы создавать блоки. Эти протоколы потребляют большое количество вычислительной мощности и энергии, что снижает пропускную способность и увеличивает задержку в сети.
2. Доказательство владением
Кроме доказательства работой есть еще так называемое доказательство владением — Proof-of-Stake, сокращенно PoS. Примерами таких сетей являются Эфириум, Кардано и другие. В этих сетях блоки формируют не майнеры, а валидаторы или ноды (узлы). Валидаторы (участники сети, которые занимаются проверкой) держат на балансе монеты, за счет чего гарантируют свою порядочность.
Под порядочностью в данном случае подразумевается их готовность формировать транзакции правильно, то есть не переводить с адреса на адрес монеты, которых нет.
Монеты валидатора выступают залогом. Если валидатор нарушил правила, он потеряет часть своего стейка (монет, лежащих на ноде). Чем больше стейк у конкретного валидатора, тем чаще он добывает новый блок и зарабатывает комиссии.
В таких сетях безопасность обеспечить сложнее, так как для контроля сети достаточно купить токены и запустить ноду, то есть это чисто экономическая защита.
А в случае с Proof-of-Work необходимо, чтобы кто-то произвел оборудование, потом его нужно купить, установить и заплатить за электроэнергию.