основні ідеї

  • Підтвердження роботи (PoW) — це консенсусний механізм, призначений для запобігання подвійним витратам у цифрових платіжних системах.

  • Підтвердження роботи (PoW) є ключовою частиною процесу майнінгу, який передбачає додавання нових блоків транзакцій до блокчейну та створення нових одиниць криптовалюти.

  • Біткойн та багато інших криптовалют використовують Proof of Work (PoW) як спосіб захисту своєї мережі блокчейну та даних.

вступ

Коротше кажучи, Proof of Work (PoW) — це механізм, призначений для запобігання подвійним витратам у цифрових платіжних системах. Багато інших криптовалют використовують Proof of Work (PoW) як спосіб захисту своєї мережі блокчейн та її даних. Ці механізми часто називають алгоритмами консенсусу або механізмами консенсусу, оскільки вони залучають кілька сторін, які досягають консенсусу, не довіряючи одна одній.

Proof of Work був першим консенсусним алгоритмом, який з’явився, і залишається одним із найважливіших разом із Proof of Stake (PoS), оскільки він був представлений Сатоші Накамото в його Технічному посібнику з біткойнів у 2008 році, але сама технологія була винайдена задовго до ця дата.

Алгоритм HashCash Адама Бека є першим прикладом алгоритму Proof of Work (PoW) до криптовалюти, де одержувач міг обмежити спам, вимагаючи від відправника невеликої кількості обчислень перед надсиланням електронного листа. але ціна вища для тих, хто надсилає масові електронні листи.

Що таке подвійні витрати?

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

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

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

Для отримання більш детальної інформації про подвійні витрати ви можете прочитати Пояснення подвійних витрат.

Чому Proof of Work (PoW) важливий?

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

Блокчейн Bitcoin, наприклад, діє як загальнодоступна база даних (публічний запис) транзакцій, яку може бачити кожен користувач. Уявіть собі це так: у вас і трьох ваших друзів є блокнот для відстеження ваших транзакцій у біткойнах, і щоразу, коли хтось із вас хоче переказати вартість, ви записуєте це так:

Аліса платить Бобу 5 BTC, Боб платить Керол 2 BTC тощо.

Однак щоразу, коли ви здійснюєте транзакцію, ви повинні посилатися на транзакцію, вказуючи, звідки надійшли кошти, тому, якби Боб заплатив Керол 2 BTC, вхідні дані фактично були б такими: 

Боб платить Керол 2 BTC із транзакції, попередньо здійсненої з Алісою.

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

Це може добре працювати в невеликих групах, де всі знають один одного, оскільки вони погоджуються, хто з друзів має додати транзакції до блокнота. Але як це буде з групою з 10 000 підписників? Щоденник не спрацює, оскільки ніхто не довіряє це робити незнайомцям.

Тут вступає в дію механізм Proof of Work (PoW). Він гарантує, що користувачі не витрачатимуть гроші, які вони не мають права витрачати, використовуючи теорію ігор із криптографією, алгоритм Proof of Work (PoW) дозволяє будь-кому оновити блокчейн відповідно до правил системи.

Як працює Proof of Work (PoW)?

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

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

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

Хешування даних блоку означає передачу їх через хеш-функцію для генерації хеш-значення блоку, яке діє як «відбиток» — воно представляє ідентичність ваших вхідних даних, і кожен блок має унікальне хеш-значення.

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

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

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

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

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

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

Для основних криптовалют зараз неймовірно складно виконати умови. Чим вищий хешрейт у мережі, тим важче знайти правильне хеш-значення. Це робиться для того, щоб блоки не знаходилися швидко.

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

Ми підсумуємо те, що ми знаємо на даний момент:

  • Майнінг складний і дорогий, але він забезпечує безпеку мережі.

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

  • Створення правильного хеш-значення потребує часу, але інші користувачі можуть легко перевірити його дійсність, повторивши процес хешування.

Поки що виглядає добре. Але що, якщо ви хочете обдурити? Що завадить вам помістити купу шахрайських транзакцій у блок і створити дійсне хеш-значення?

Тут постає роль шифрування з відкритим ключем. Ми не будемо детально обговорювати цю тему в цій статті, але ви можете звернутися до статті «Що таке шифрування з відкритим ключем». Для комплексного вигляду. Коротше кажучи, є кілька чудових крипто-трюків, які дозволяють будь-якому користувачеві перевірити, чи має особа право переказати гроші, які вона намагається витратити.

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

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

Ось чому привабливість Proof of Work (PoW): вона робить шахрайство дорогим, а чесність — прибутковою. Будь-який сумлінний майнер прагне окупити свої інвестиції, тому очікується, що він буде діяти таким чином, що, швидше за все, забезпечить дохід.

Доказ роботи (PoW) проти доказу частки (PoS)

Існує багато консенсусних алгоритмів, окрім Proof of Work (PoW), найвідомішим з яких є Proof of Stake (PoS).

У системах підтвердження ставок майнери замінені валідаторами. Немає майнінгу та конкуренції, щоб вгадати хеш-значення. Замість цього користувачі вибираються випадковим чином – якщо вибрано, вони повинні запропонувати (або «сформувати») блок. Якщо блокування є правильним, вони отримують винагороду, що складається з комісії з транзакцій блоку.

Однак не можна вибирати жодного користувача - скоріше протокол вибирає користувачів на основі кількох факторів. Щоб отримати кваліфікацію, учасники повинні зарезервувати частку, яка є заздалегідь визначеною сумою рідної валюти блокчейну. Квота діє як гарантія: подібно до того, як відповідачі платять великі суми грошей, щоб вони не пропустили судовий процес, аудитори резервують квоту, щоб запобігти шахрайству. Якщо вони спробують обдурити, їхня частка буде анульована (або її частина буде вирахована).

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

Проте Proof of Stake (PoS) не має такої репутації та престижу, як Proof of Work (PoW), і хоча його можна вважати марнотратним, майнінг є єдиним консенсусним алгоритмом, який був перевірений на практиці протягом більше десяти років, з механізм Proof of Stake, що сприяє PoW Bitcoin, забезпечив транзакції на трильйони доларів з моменту його запуску, і сховище має пройти належне довгострокове тестування, щоб переконатися, що Proof of Stake (PoS) може конкурувати з Proof of Work (PoS). Щодо функцій безпеки.

Заключні думки

Proof of Action було оригінальним рішенням проблеми подвійних витрат і довело свою надійність і безпеку. Біткойн довів, що нам не потрібні центральні органи влади, щоб запобігти подвійній витраті грошей. Завдяки розумному використанню криптографії, хеш-функцій і теорії ігор користувачі можуть домовитися про стан фінансової бази даних у децентралізованому середовищі.

Схожі статті

  • Що таке майнінг цифрової валюти? Який механізм його роботи?

  • Що таке криптографія з відкритим ключем?

  • Що таке алгоритм консенсусу в блокчейні?

Відмова від відповідальності: цей вміст надається вам «як є» лише для загальної інформації та в освітніх цілях, без будь-яких заяв або гарантій. Його не слід тлумачити як фінансову, юридичну чи іншу пораду, а також як рекомендацію щодо придбання будь-якого конкретного продукту чи послуги. Для надання консультацій необхідно звернутися за допомогою до профільних консультантів. Якщо стаття надано третьою стороною, зауважте, що висловлені думки належать цій третій стороні та не обов’язково відображають погляди Binance Academy. Будь ласка, прочитайте нашу повну заяву про відмову від відповідальності, щоб дізнатися більше. Ціни на цифрові активи можуть коливатися, вартість ваших інвестицій може зрости або зменшитися, і ви можете не повернути інвестовану суму. Ви несете повну відповідальність за свої інвестиційні рішення, і Binance Academy не несе відповідальності за будь-які збитки, які ви можете понести. Цю статтю не слід тлумачити як фінансову, юридичну чи професійну пораду. Для отримання додаткової інформації перегляньте наші Умови використання та Попередження про ризики.