Шрифт:
Закладка:
• дата и время проведения операции;
• вход (публичные адреса, от которых Вася получил 50 BTC);
• количество BTC, которое Вася отправляет Феде;
• размер комиссии для майнера;
• выход (публичный адрес Феди – счет для поступления биткоинов).
Рис. 7.6. Биткоин транзакция ADdgk76239KwiUFBVm9Lfsa23JAHjdwagh37845623d2390
Шаг 2. Добавление транзакции в блок
Все транзакции, и Васина тоже, попадают в мемпул – виртуальный зал ожидания. Здесь другие участники сети (майнеры) выбирают, какие транзакции включить в свой блок.
Шаг 3. Проверка транзакции на достоверность
Как узнать, есть ли на самом деле у Васи деньги? А вдруг он переведет одни и те же криптомонеты дважды? Чтобы подтвердить, что Вася фактически владеет монетами, майнеры устраивают своего рода соревнование – кто быстрее проверит транзакцию на валидность (достоверность). Их устройства (ноды или узлы) раз за разом выполняют математические вычисления (хеш-функции). Представьте, что у вас есть связка ключей, но открывает дверь только верный ключ. Вы снова и снова перебираете все варианты, пока не наткнетесь на подходящий. Так же действуют и узлы майнеров: они перебирают миллионы комбинаций. Для таких вычислений требуется действительно мощная и дорогая техника, которая потребляет много энергии.
Шаг 4. Достижение согласия на добавление блока
Когда майнер находит правильный хеш, то отправляет блок остальным майнерам на проверку. Если проверка успешно пройдена, значит, майнеры пришли к согласию и этот блок может быть добавлен в блокчейн. В этом суть алгоритма консенсуса Proof-of-Work – майнеру требуется согласие других участников на включение блока в цепочку, а «доказательством» выполнения его работы являются произведенные расчеты.
После того, как блок стал частью цепочки, следующие за ним блоки будут считаться «подтверждением» для этого блока. Допустим, ваша транзакция попала в блок 205, а длина блокчейна 210 блоков, значит, она имеет 5 подтверждений. Всякий раз, когда добавляется новый блок после вашего, сеть достигает консенсуса по поводу достоверности транзакций, в том числе и вашей. Деньги не придут на счет получателя, пока валидность транзакции не доказана. Для небольших сумм достаточно двух подтверждений, для перевода на сумму свыше 1 млн. долларов около 60.
Шаг 5. Обновление базы данных
После добавления блока база данных обновляется на компьютерах всех пользователей.
Шаг 6. Поступление средств
И через какое-то время 50 биткоинов поступают на счет Феди.
Что такое стейкинг
Есть криптовалюты, которые применяют другой алгоритм – Proof-of-Stake (доказательство доли). В этом алгоритме нет майнинга, а значит, не требуется мощное вычислительное оборудование и высокое энергопотребление. В блокчейнах с POS подтверждение транзакции и создание блока происходит при помощи стейкинга – хранения криптовалюты на счете.
«Доказательство доли» используют такие криптовалюты как Ethereum 2.0, Tezos, Solana.
Как работает алгоритм «доказательство доли» и обеспечивает безопасность сделки:
• В стейкинге, когда вы переводите криптомонеты, транзакция попадает в пул, откуда распределяется случайным образом между валидаторами (узлами).
• Чтобы стать валидатором, пользователь блокирует монеты на своем счете, оставляя их в залог криптоплатформе. Это и есть “доказательство доли”: валидатор ставит свои деньги на то, что он не будет вредить блокчейну (например, проводить хакерскую атаку на его узлы), ведь в противном случае пострадает сам. Другими словами, валидатор, который ведет себя нечестно, будет оштрафован. Чем больше монет заблокировано, тем выше доверие к валидатору и больше шансов на получение права создать блок. Поэтому обработку транзакции алгоритм поручает владельцу с крупной суммой в кошельке.
• Задача других валидаторов проверить действительность созданного блока. Если блок действителен, то за транзакцию валидатор получает комиссию в виде процента. Но если валидатор, создавший блок, ошибся, то он теряет часть своих денег.
Стейкинг еще называют “ленивым майнингом”: якобы он хорош для получения пассивного дохода, и делать ничего не надо, только хранить деньги на кошельке. Но у этого способа заработка есть риски, о которых умалчивают биржи. К примеру, штрафы за бездействие и ошибки в расчетах. Высокая волатильность при фиксированном стейкинге становится проблемой. Валидатор не может быстро продать заблокированные монеты, если обстановка требует от них скорее избавиться. А на бессрочном стейкинге, где криптомонеты можно вывести в любой момент, много не заработаешь.
Стейкинг не требует больших финансовых вложений в оборудование, поэтому продолжает набирать популярность. Многие криптовалюты переходят с алгоритма POW на POS, например, Ethereum 2.0.
В отличие от алгоритма POW, где майнер получает двойное вознаграждение: от сети за создание блока и от пользователей за подтверждение транзакции; в POS валидатор получает только часть комиссии за проведение транзакции. Размер комиссии зависит от количества монет, которые валидатор заблокировал на счете для подтверждения доли.
Таблица 7.1. Сравнение майнинга и стейкинга
Как зарабатывают майнеры?
Как вы поняли, майнеры не работают бесплатно. Они получают:
1) вознаграждение от сети за добычу новых блоков. Монеты достаются только тому, кто сделает это раньше других. Так происходит выпуск новых биткоинов. Процесс эмиссии криптомонет путем добычи блоков называется майнинг. В 2022 г. за один добытый блок сеть платит 6,25 ВТС (это около 7,5 млн. рублей на момент написания книги).
Количество монет прописано в алгоритме блокчейна Биткоин, после того как добывается 210 тыс. следующих блоков, награда каждый раз уменьшается вдвое.
2) комиссию за проведение транзакций от пользователей. Чем выше комиссия, тем быстрее майнеры обрабатывают и подтверждают транзакцию. На комиссию не влияет сумма перевода: стоимость отправки 1 биткоина может быть выше, чем 1000 биткоинов.
От чего зависит размер комиссии
• от загруженности сети: чем выше спрос на услуги майнеров, тем больше комиссия за скорость. В-первую очередь майнеры добавляют в блок транзакции с большей комиссией, ведь их цель – заработать. Чтобы избежать очереди и ускорить перевод, придется установить премию майнерам выше, чем рекомендует биржа.
• от веса транзакции в байтах. Представьте, что вы пересылаете текстовый документ с сообщением когда, кому и сколько перевести монет. Чем длиннее сообщение, тем больше вес документа. На вес транзакции влияет:
– количество входов (адресов, с которых Вася изначально получил 50 BTC) Допустим, в этой транзакции три входа: от Марины 20 биткоинов, от Егора – 25 и от Семена – 10. Всего 55 монет;
– количество выходов (адресов, на которые переводятся деньги). В этом примере будет два выхода: 50 биткоинов на адрес Феди и 5 оставшихся монеток Вася отправит самому себе на счет в виде сдачи.
Рис. 7.7. Транзакция с 3 входами и с 2 выходами
Посчитаем, какую комиссию за свой перевод заплатит Вася. Транзакция с тремя входами и двумя