У цьому розділі ми детальніше розглянемо дві дуже важливі частини (та учасників) мережі Bitcoin, які вперше були представлені у Модулі 5:
Вузли Bitcoin: Охоронці валідації, чия основна задача — зберігати копію реєстру Bitcoin і переконуватися, що всі транзакції є дійсними, а всі дотримуються однакових правил. Завдяки розподілу цієї роботи між багатьма людьми по всьому світу, Bitcoin залишається стійким до потенційного шахрайства без потреби у централізованій владі. Вузли допомагають підтримувати довіру до системи та її справжню децентралізовану сутність, де жодна людина чи група не має надмірної влади над іншими.
Майнери Bitcoin: Архітектори безпеки, які розв’язують криптографічні задачі за допомогою потужних комп’ютерів та електроенергії. Вони перевіряють і підтверджують транзакції, забезпечуючи їхню безпеку. Їхня обчислювальна робота допомагає зробити реєстр (або блокчейн) стійким до зловмисників, оскільки зміна блокчейну стає дуже енерговитратною.
Разом вузли та майнери Bitcoin працюють як команда, підтримуючи децентралізовану, безпечну та надійну систему — справді нову грошову систему, на яку можуть покладатися люди по всьому світу. Давайте розглянемо ці ролі детальніше, щоб зрозуміти, як вони сприяють роботі протоколу Bitcoin.
9.1 Вузли та майнери Bitcoin
Вузли Bitcoin можуть звучати технічно, але це просто програмне забезпечення, яке зберігає копію блокчейну Bitcoin на комп’ютері. Блокчейн — це спільний запис усіх транзакцій Bitcoin.
Коли ви запускаєте власний вузол, ви самостійно перевіряєте транзакції Bitcoin, а не довіряєте це комусь іншому. Це дає вам більше незалежності та допомагає зберігати децентралізацію мережі Bitcoin.
Ви можете уявити вузол Bitcoin як цифрового регулювальника руху з кількома важливими завданнями.
Він зберігає копію блокчейну, тобто історію всіх транзакцій Bitcoin.
Вузли з’єднуються з іншими вузлами по всьому світу та обмінюються інформацією. Наприклад, списком нових транзакцій, які очікують підтвердження, що називається мемпулом.
Вузли перевіряють, чи кожна транзакція відповідає правилам Bitcoin. Якщо транзакція недійсна, вузол її відхиляє.
Вузли також допомагають новим вузлам приєднатися до мережі, передаючи їм блокчейн. Однак кожен новий вузол все одно самостійно перевіряє всі правила.
Будь-хто може запустити вузол, встановивши програмне забезпечення, наприклад Bitcoin Core, і завантаживши блокчейн. Після налаштування вузол отримує нові блоки приблизно кожні 10 хвилин і перевіряє їх перед тим, як додати до своєї копії блокчейну.
Запуск вузла допомагає зробити мережу Bitcoin більш безпечною та децентралізованою, оскільки більше людей незалежно перевіряють систему.
Що таке вузол Bitcoin?
Мета майнінгу — не створення нових біткоїнів; це лише система стимулів. Майнінг — це механізм, за допомогою якого забезпечується децентралізована безпека Bitcoin. Андреас М. Антонопулос
Майнери збирають непідтверджені транзакції, формують блок і використовують енергію, щоб знайти ключ, який додає та захищає цей блок.
Майнери змагаються за те, щоб додати наступний блок транзакцій до блокчейну. Для цього вони повинні знайти особливе число, яке створює дійсний хеш блоку. Це можна уявити як пошук правильного ключа серед мільярдів можливостей. Перший майнер, який знаходить правильний хеш, виграє гонку та отримує право додати свій блок до блокчейну.
Коли майнер знаходить дійсний хеш, він ділиться своїм блоком з мережею. Інші майнери швидко перевіряють, чи рішення правильне. Якщо так, блок додається до блокчейну, допомагаючи зберігати публічний реєстр Bitcoin у безпеці.
Майнери заробляють біткоїни двома способами:
Блокова винагорода: Нові біткоїни створюються та надаються майнеру, який успішно додає блок до блокчейну.
Комісії за транзакції: Коли люди надсилають біткоїни, вони додають невелику комісію. Майнер, який додає блок, отримує комісії з транзакцій, включених у цей блок.
Халвінги Bitcoin
2009
2012
2016
2020
2024
50 BTC
25 BTC
12.5 BTC
6.25 BTC
3.125 BTC
Винагорода майнерів за завершення одного блоку зменшується вдвічі кожні 210 000 блоків, приблизно кожні чотири роки.
Bitcoin має фіксовану максимальну пропозицію у 21 000 000 біткоїнів, але всі вони не були створені на початку. Натомість нові біткоїни поступово вводяться в обіг через майнінг.
Коли майнери успішно додають новий блок транзакцій до мережі Bitcoin, вони отримують блокову винагороду у біткоїнах. У перші роки Bitcoin ця винагорода становила 50 біткоїнів за блок. Це стимулювало людей використовувати обчислювальну потужність і електроенергію для захисту мережі.
Приблизно кожні 210 000 блоків (приблизно кожні 4 роки) блокова винагорода зменшується вдвічі. Ця подія називається халвінгом. Халвінг уповільнює створення нових біткоїнів і допомагає гарантувати, що загальна пропозиція ніколи не перевищить 21 мільйон. З часом це робить біткоїн дедалі дефіцитнішим.
Обігова пропозиція означає загальну доступну кількість валюти. У випадку Bitcoin, загальна обігова пропозиція — це кількість монет, які були намайнені та перебувають в обігу на даний момент.
Графік емісії Bitcoin — це заздалегідь визначений і публічний план випуску нових біткоїнів в обіг, розроблений для підтримки дефіцитності Bitcoin з часом.
Після кожного халвінгу винагорода майнерів за додавання блоку зменшується вдвічі. Це знижує темпи створення нових біткоїнів.
Майнери все ще отримують комісії з транзакцій, включених у блок, який вони майнять. З часом очікується, що ці комісії стануть більшою частиною доходу майнерів.
Халвінги закладені в протокол Bitcoin і відбуваються автоматично приблизно кожні чотири роки. Завдяки цьому графік емісії Bitcoin є передбачуваним і прозорим.
У таблиці показано майбутні халвінги, включаючи приблизну дату, номер блоку, коли вони відбуваються, нову винагороду за блок і відсоток від загальної кількості біткоїнів, які вже будуть видобуті.
Подія
Дата
Блок
Винагорода
Видобуто
5-й халвінг
2028
1 050 000
1,5625 BTC
98,44 %
6-й халвінг
2032
1 260 000
0,78125 BTC
99,22 %
7-й халвінг
2036
1 470 000
0,390625 BTC
99,61 %
Чим більше біткоїнів видобувається, тим більше зростає обігова пропозиція, поки не буде досягнуто максимального обсягу у 21 000 000 біткоїнів, що очікується приблизно у 2140 році. Оскільки з часом створюється все менше нових біткоїнів, якщо попит зростає, ціна Bitcoin може підвищуватися. Це також стимулює майнерів продовжувати захищати мережу, надаючи свої обчислювальні потужності.
Що таке дійсний хеш блоку в Bitcoin?
У Bitcoin майнери змагаються, щоб знайти спеціальний код, який називається хеш блоку. Цей код ідентифікує блок транзакцій і дозволяє додати його до блокчейну.
Кожен блок містить інформацію про нещодавні транзакції, а також включає хеш попереднього блоку. Це пов’язує всі блоки між собою, утворюючи ланцюг від самого першого блоку (Генезис-блок) до найновішого.
Хеш працює як цифровий відбиток пальця для даних у блоці. Якщо будь-яка інформація в блоці буде змінена, відбиток також зміниться. Це дозволяє кожному легко перевірити, що історія транзакцій у блокчейні не була змінена, і допомагає захищати мережу.
Сатоші Накамото, творець Bitcoin, видобув Генезис-блок, який відкрив загалом 50 біткоїнів.
Гонка за видобуток блоку
Майнери змагаються, щоб знайти дійсний хеш блоку. Перший майнер, який його знаходить, додає новий блок до блокчейну та отримує винагороду у біткоїнах.
Щоб бути дійсним, хеш блоку має бути меншим за число, встановлене мережею, яке називається ціль складності. Оскільки хеші випадкові, майнери повинні постійно пробувати різні вхідні дані, поки не знайдуть відповідний.
Якщо занадто багато майнерів змагаються, блоки будуть знаходитися занадто швидко. Якщо майнерів занадто мало, пошук блоків займатиме надто багато часу. Щоб система працювала стабільно, Bitcoin автоматично коригує складність кожні 2 016 блоків (приблизно кожні два тижні).
Це коригування забезпечує, що в середньому новий блок додається до блокчейну приблизно кожні 10 хвилин.
рівень складності у майнінгу Bitcoin вимірює, наскільки важко знайти дійсний хеш блоку. Мережа коригує цю складність кожні 2 016 блоків (приблизно кожні два тижні), щоб нові блоки додавалися до блокчейну приблизно кожні 10 хвилин. Чим вища складність, тим важче майнерам знайти дійсний блок.
Знаходячи дійсний хеш блоку, майнер доводить, що виконав необхідну роботу для додавання нового блоку до блокчейну. Цей процес називається Proof of Work (PoW). Це механізм безпеки, який дозволяє Bitcoin підтверджувати транзакції та додавати нові блоки до блокчейну. Майнер, який першим знаходить дійсний хеш, отримує винагороду у біткоїнах, яка включає винагороду за блок і комісії за транзакції, що входять до цього блоку.
Proof of Work (PoW) допомагає захищати Bitcoin, роблячи спроби обману чи захоплення мережі надзвичайно дорогими. Натомість набагато вигідніше дотримуватися правил.
Майнери виконують чотири основні ролі:
Збирають транзакції: Майнери обирають транзакції, які були надіслані до мережі, і розміщують їх у кандидатському блоці.
Виконують Proof of Work: Майнери змагаються, щоб розв’язати складну математичну задачу, знаходячи дійсний хеш блоку.
Транслювати блок: Перший майнер, який знаходить правильне рішення, ділиться новим блоком із мережею.
Отримати винагороду: Якщо блок дійсний, його додають до блокчейну, а майнер отримує новостворені біткоїни та комісію за транзакції.
Багато майнерів по всьому світу намагаються створити наступний блок одночасно. Коли один майнер знаходить правильне рішення, мережа перевіряє блок. Якщо все правильно, його додають до блокчейну. Інші конкуруючі блоки відкидаються. Цей процес підтримує узгодженість мережі та запобігає подвійному витрачанню.
Майнери — це комп’ютери, які допомагають підтримувати та оновлювати реєстр Bitcoin.
Вони збирають транзакції та групують їх у блок. Потім вони пропускають дані блоку через алгоритм хешування, щоб створити унікальний код, який називається хешем.
Майнери повторюють цей процес багато разів, шукаючи хеш, який відповідає правилам Bitcoin. Перший майнер, який знаходить правильний хеш, отримує новостворені біткоїни як винагороду, а його блок додається до блокчейну.
Хеш кожного блоку також з’єднує його з попереднім блоком. Якщо хтось спробує змінити минулу транзакцію, хеші більше не співпадатимуть, і мережа відхилить змінену ланцюжок. Саме це забезпечує безпеку реєстру Bitcoin.
9.2 Що таке Mempool?
мемпул, скорочено від «memory pool» (пул пам’яті), — це як зал очікування для транзакцій у Bitcoin. Коли ви надсилаєте біткоїни, ваша транзакція спочатку транслюється в мережу та потрапляє до мемпулу.
Це можна уявити як чергу в ресторані. Ваше ім’я записують у список, і ви чекаєте, поки звільниться столик. Так само ваша транзакція чекає у мемпулі, поки майнер не включить її до блоку.
Вузли Bitcoin перевіряють кожну нову транзакцію, щоб переконатися, що вона дійсна і що біткоїни, які витрачаються, ще не були використані. Якщо транзакція дійсна, вона залишається у мемпулі, доки не буде підтверджена.
Майнери обирають транзакції з мемпулу та включають їх у нові блоки. Зазвичай спочатку обирають транзакції з вищою комісією.
Після того, як транзакцію включено до блоку, вона стає підтвердженою і назавжди записується у блокчейн Bitcoin.
Завдання: Дослідження мемпулу
Ця вправа знайомить студентів із безкоштовним відкритим інструментом, для використання якого не потрібні технічні навички. Він корисний для всіх, хто цікавиться Bitcoin — від початківців до досвідчених користувачів.
Основні моменти
Мемпул — це список непідтверджених транзакцій, який веде кожен вузол Bitcoin, а не якась окрема служба чи платформа.
Не існує єдиного універсального мемпулу. Mempool.space — лише один із багатьох.
Mempool.space — це відкритий і добре відомий візуальний блок-експлорер, яким легко користуватися. Він надає дані в реальному часі про непідтверджені транзакції, розміри комісій та іншу активність мережі.
Порада для студентів
Mempool.space робить набагато більше, ніж просто візуалізує блоки. Досліджуйте інші частини екосистеми Bitcoin: наприклад, Lightning, майнінг, хешрейт, пули та «окуляри» для перегляду блокового простору.
9.3 Як працюють транзакції
Тепер, коли ви розумієте, що таке публічні та приватні ключі, а також ролі вузлів і майнерів, ось як відбувається транзакція в Bitcoin від початку до кінця.
Адам хоче надіслати біткоїни Олексію. Він створює транзакцію з адресою Олексія, сумою для відправлення та комісією.
Адам підписує транзакцію своїм приватним ключем, щоб довести право власності.
Він транслює транзакцію в мережу Bitcoin.
Вузли отримують її та перевіряють, чи відповідає вона правилам, зокрема перевіряють підпис і чи має Адам достатньо біткоїнів.
Якщо транзакція дійсна, її поширюють мережею та додають до мемпулу, де очікують непідтверджені транзакції.
Майнери вибирають транзакції з мемпулу та включають їх у блок, який намагаються добути.
Коли майнер успішно добуває блок, його поширюють у мережі та перевіряють інші вузли.
Якщо блок дійсний, його додають до блокчейну. Олексій отримує біткоїни.
З додаванням нових блоків транзакція отримує підтвердження, що робить її більш захищеною.
Після включення в блок транзакція підтверджується. Адам більше не може витратити ці біткоїни, а Олексій може витратити отримане у новій транзакції.
Транзакція та комісія обрані → Підписано гаманцем і надіслано → Розповсюджено вузлами → Майнер додає транзакцію до шаблону блоку → Майнер виграє змагання Proof-of-Work → Новий блок перевіряється → Новий блок розповсюджується вузлами