Доказ роботи (PoW)
Що таке доказ роботи (PoW)?
Доказ роботи (PoW) описує систему, яка вимагає несуттєвих, але здійсненних зусиль для запобігання несерйозному чи зловмисному використанню обчислювальної потужності, наприклад, надсилання електронної пошти зі спамом або запуску атак відмови в обслуговуванні. Потім концепція була адаптована до захисту цифрових грошей Хелом Фінні у 2004 році через ідею “багаторазового підтвердження роботи” за допомогою алгоритму хешування SHA-256.
Після введення в 2009 році біткойн став першим широко прийнятим додатком ідеї PoW від Finney (Фінні також був одержувачем першої транзакції з біткойнами). Доказ роботи також є основою багатьох інших криптовалют, що дозволяє забезпечити надійний, децентралізований консенсус.
Ключові винос
- Доказ роботи (PoW) – це децентралізований механізм консенсусу, який вимагає від членів мережі витрачати зусилля на вирішення довільної математичної головоломки, щоб ніхто не міг грати в систему.
- Доказ роботи широко використовується в майнінгу криптовалют для перевірки транзакцій та видобутку нових токенів.
- Завдяки підтвердженню роботи, біткойн та інші криптовалютні транзакції можуть бути оброблені одноранговими та безпечними способами без необхідності довіреної третьої сторони.
- Підтвердження масштабної роботи вимагає величезної кількості енергії, яка лише збільшується, коли до мережі приєднується все більше шахтарів.
- Proof of Stake (POS) був одним із кількох нових механізмів консенсусу, створених як альтернатива доведенню роботи.
Розуміння підтвердження роботи
Це пояснення буде зосереджено на доказі роботи, оскільки вона функціонує в мережі біткойн. Біткойн – це цифрова валюта, яка базується на своєрідному розподіленому реєстрі, відомому як ” блокчейн “. Ця книга містить запис усіх біткойн-транзакцій, розміщених у послідовні “блоки”, так що жоден користувач не може двічі витратити будь-які свої володіння. З метою запобігання фальсифікаціям книга є загальнодоступною або “розповсюдженою”; змінена версія буде швидко відхилена іншими користувачами.
Користувачі виявляють фальсифікації на практиці за допомогою хешів, довгих рядків чисел, які служать доказом роботи. Помістіть заданий набір даних через хеш-функцію (біткойн використовує SHA-256), і вона генерує лише один хеш. Через “ефект лавини”, навіть незначна зміна будь-якої частини вихідних даних призведе до абсолютно невпізнаваного хешу. Незалежно від розміру вихідного набору даних, хеш, що генерується даною функцією, буде однакової довжини. Хеш є односторонньою функцією: його не можна використовувати для отримання вихідних даних, лише для перевірки відповідності даних, що генерують хеш, вихідним даним.
Генерування будь-якого хешу для набору біткойн-транзакцій було б тривіальним для сучасного комп’ютера, тому для того, щоб перетворити процес на „роботу”, мережа біткойнів встановлює певний рівень „складності”. Цей параметр налаштовано таким чином, щоб новий блок був ” видобутий ” – доданий до блокчейну шляхом створення дійсного хешу – приблизно кожні 10 хвилин. Складність встановлення досягається встановленням “цілі” для хешу : чим нижче ціль, тим менший набір дійсних хешів і тим важче генерувати. На практиці це означає хеш, який починається з дуже довгого рядка нулів.
Короткий огляд
Доказ роботи спочатку створювався як запропоноване рішення для зростаючої проблеми спаму.
Особливі міркування
Оскільки даний набір даних може генерувати лише один хеш, як майнери переконуються, що генерують хеш нижче цілі? Вони змінюють вхідні дані, додаючи ціле число, яке називається nonce (“число, використане один раз”). Як тільки дійсний хеш буде знайдений, він транслюється в мережу, а блок додається до блокчейну.
Видобуток корисних копалин – це процес конкуренції, але це скоріше лотерея, ніж перегони. У середньому хтось буде створювати прийнятні докази роботи кожні десять хвилин, але хто це буде, хтось здогадується. Майнери об’єднуються, щоб збільшити свої шанси на видобуток блоків, що генерує комісію за транзакції та протягом обмеженого часу винагороду за новостворені біткойни.
Підтвердження роботи надзвичайно ускладнює зміну будь-якого аспекту блокчейну, оскільки така зміна потребує повторного видобутку всіх наступних блоків. Це також ускладнює користувачеві або пулу користувачів монополізацію обчислювальної потужності мережі, оскільки обладнання та потужність, необхідні для виконання хеш-функцій, дорогі.
Короткий огляд
Якщо частина майнінгової мережі починає приймати альтернативний доказ роботи, це називається хард форком.
Приклад підтвердження роботи
Доказ роботи вимагає, щоб комп’ютер випадково брав участь у хеш-функціях, поки не вийде на вихід з правильною мінімальною кількістю початкових нулів. Наприклад, хеш для блоку # 429818, видобутого 14 вересня 2016 року, наприклад, є 000000000000000004dd3426129639082239efd583b5273b1bd75e8d78ff2e8d. Винагорода за цей успішний хеш становила 12,5 BTC.
Цей блок завжди буде містити 2012 транзакцій, що включають трохи більше 1000 біткойнів, а також заголовок попереднього блоку. Якби хтось намагався змінити суму транзакції навіть на 0,000001 біткойн, отриманий хеш буде невпізнанним, а мережа відхилить спробу шахрайства.
Питання про доказ роботи
Що означає доказ роботи?
PoW вимагає від вузлів мережі, щоб надати докази того, що вони витратили обчислювальну потужність (тобто роботу), щоб досягти консенсусу децентралізованим способом і запобігти поганим дійовим особам, що обганяють мережу.
Як підтвердження роботи підтверджує крипто-транзакцію?
Сама робота довільна. Для біткойнів це передбачає ітерації алгоритмів хешування SHA-256. Однак “переможець” раунду хешування об’єднує та записує транзакції з mempool у наступний блок. Оскільки “переможець” вибраний випадковим чином пропорційно виконаній роботі, він стимулює всіх в мережі діяти чесно і фіксувати лише справжні транзакції.
Чому криптовалюти потребують підтвердження роботи?
Оскільки вони децентралізовані та однорангові за дизайном, блокчейни, такі як криптовалютні мережі, вимагають певного способу досягнення як консенсусу, так і безпеки. Доказ роботи – один із таких методів, який робить надто ресурсомістким, щоб намагатися обігнати мережу. Існують також інші механізми доказу, які менш ресурсомісткі, але мають інші недоліки або недоліки, такі як доказ ставки (PoS) та доказ опіку. Без механізму доказу мережа та дані, що зберігаються в ній, були б вразливими до атак або крадіжок.
Чи використовує біткойн підтвердження роботи?
Так. Він використовує алгоритм PoW, заснований на функції хешування SHA-256, щоб перевірити та підтвердити транзакції, а також випустити в обіг нові біткойни.
Чим доказ ставки (PoS) відрізняється від PoW?
PoS – це механізм консенсусу, який випадковим чином призначає вузол, який виконує майнінг або перевірку блокових транзакцій, відповідно до кількості монет, що містяться в цьому вузлі. Чим більше токенів зберігається в гаманці, тим більша потужність майнінгу йому ефективно надається. Хоча PoS набагато менш ресурсомісткий, він має ще кілька недоліків, включаючи більший шанс атаки на 51% у менших альткойнах і стимулів зберігати токени і не використовувати їх.