Що таке Майнінг криптовалюти?

Що таке Майнінг криптовалюти?

Майнінг криптовалюти є одним з ключових елементів, що дозволяють криптовалюті працювати в якості тимчасової (P2P) децентралізованої мережі, без необхідності участі центрального органу з третьої сторони. Це процес, в якому транзакції між користувачами перевіряються і додаються в публічний реєстр blockchain, а також процес, який використовується для введення нових монет в існуючий оборот.

Як це працює?

Майнер – це вузол в мережі, який збирає транзакції, і працює щоб організувати їх в блоки. Коли відбуваються транзакції, вузли Майнери отримують і перевіряють транзакції, додають їх у пул пам’яті і починають збирати кілька транзакцій в блок.

Перший крок в процесі Майнінгу блоку, це хешування кожної транзакції в пул пам’яті.

Перед запуском процесу, майнер вузол додає транзакцію, в якій вони відправляють собі нагороду за Майнінг. Ця транзакція називається «coinbase», це транзакція, в якій монети створюються «з повітря», і в більшості випадків вона є першою в новому блоці. Після того, як кожна транзакція хешується, ці хеші потім об’єднуються в щось, що назване деревом Меркле або хеш-деревом, що означає що хеші організовані в пари, а потім знову хешуються до тих пір, поки не буде досягнута «вершина дерева», також звана як кореневий хеш або корінь Меркле. Кореневий хеш разом з хешем попереднього блоку і випадковим числом, називаємо одноразовий код (nonce), потім поміщається в заголовок блоку. Тема блоку потім хешується, виробляючи висновок, який буде служити ідентифікатором блоків.

Ідентифікатор блоків повинен бути менше певного цільового значення, заданого протоколом. Іншими словами, хеш заголовка блоку повинен починатися з певної кількості нулів. Це цільове значення, також відоме як складність хешування, масштабується, гарантуючи, що темп, з яким створюються нові блоки, залишається пропорційним до кількості потужності хешування в мережі.

Проте, іноді відбувається так, що два Майнери одночасно додають підтверджений блок, і мережа закінчується двома конкуруючими блоками. Майнери починають Майнити наступний блок, грунтуючись на блоці, який вони отримали спочатку. Конкуренція між цими блоками триватиме до тих пір, поки наступний блок не буде створений на основі одного з конкуруючих блоків. Блок, який залишається покинутим, називається осиротілим або застарілим блоком. Майнер цього блоку повернуться до Майнінгу ланцюга блоку переможця.

(* В Proof of Work – orphan-block, stale-block, в Proof of Stake – uncle-block)

Пули для Майнінгу

У той час як винагороду за блок надається Майнеру, який перший виявляє дійсний хеш, ймовірність знаходження хеша дорівнює загальній потужності Майнінгу в мережі. Майнер з невеликим відсотком майнінгової потужності мають дуже мало шансів здобути наступний блок самостійно. Для вирішення цієї проблеми створюються пули для Майнінгу, це означає об’єднання ресурсів Майнерів, які ділять свою обчислювальну потужність мережі, і розподіляють нагороду однаково серед всіх в пулі, в залежності від обсягу роботи, яку вони вносять в ймовірність знаходження блоку.