Проблема подвійних витрат: Чому безпечні транзакції цифрових грошей є викликом

Основна проблема цифрових валют

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

Цей феномен відомий під терміном «Double Spending» – шахрайська практика, яка підриває довіру до цифрових платіжних систем. Отже, центральне питання полягає в тому: як можна розробити системи, які ефективно запобігають таким подвійним витратам?

Історичний шлях: Централізовані рішення та їхні межі

Перед виникненням децентралізованих технологій шлях до уникнення подвійних витрат був чітко визначений: довіра до центральної установи. Криптограф Девід Чаум розробив на початку 1980-х років революційну систему під назвою eCash, що базується на його білому документі про сліпі підписи з 1982 року.

У моделі Чаума банк виступає в ролі посередника. Припустимо, що Дан хоче обміняти 100 доларів на цифрові гроші. Банк створює п'ять цифрових «банкнот» по 20 доларів кожна. Щоб зберегти анонімність, Дан додає до кожної банкноти сліпий фактор перед тим, як передати їх банку. Банк підтверджує своїм підписом, що кожна банкнота може бути обміняна на 20 доларів.

Коли Дан пізніше в ресторані Ерін платить за страву на 40 доларів, він відкриває два з цифрових купюр. Ерін може їх одразу обміняти в банку – ще до того, як Дан, можливо, витратить їх десь ще. Банк перевіряє підписи і зараховує на рахунок Ерін 40 доларів. Використані купюри таким чином вже безповоротно “згоріли”.

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

Революційна відповідь: Блокчейн та децентралізовані мережі

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

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

Процес працює наступним чином: Коли користувач надсилає транзакцію, вона не додається відразу до блокчейну. Спочатку її повинні включити до блоку майнери. Тому отримувач повинен вважати транзакцію дійсною лише після того, як її блок буде прикріплений. З кожним додатковим підтвердженням блоку обчислювальні витрати на зміну або переписування початкового блоку зростають експоненційно – концепція, яка тісно пов'язана з захистом від атак 51%.

Практичний сценарій у світі Bitcoin

Повертаючись до нашого прикладу: Дан відвідує ресторан Еріна і помічає наклейку на вікні: «Ми приймаємо Bitcoin». Він знову робить замовлення, і рахунок становить 0,005 BTC. Ерін дає йому публічну адресу, на яку він надсилає суму.

У транзакції в основному міститься цифрово підписане повідомлення, яке стверджує: 0,005 BTC, що були у володінні Дана, тепер належать Еріну. Кожен може через підпис Дана підтвердити, що Дан дійсно володів цими монетами і, отже, мав право їх передати.

Однак транзакція стає дійсною лише тоді, коли блок, що її містить, буде підтверджено. Непідтверджена транзакція схожа на 40 доларів в eCash, які потрібно обміняти в банку: Дан міг би витратити ті ж кошти ще раз десь інде. Тому рекомендується, щоб Ерін почекала щонайменше 6 підтверджень блоку ( приблизно годину ), перш ніж приймати платіж від Дана.

Три обличчя подвійних витрат: вектори атак на Bitcoin

Хоча Біткоїн був розроблений з великими зусиллями, щоб запобігти атакам подвійного витрачання, все ж існують спеціалізовані методи атак, особливо проти користувачів, які приймають непідтверджені транзакції:

51%-атаки: Один учасник або організація контролює більше 50% мережевої хеш-ставки і може виключати транзакції або змінювати їх порядок. У Bitcoin це практично неможливо, але вже траплялося в інших мережах.

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

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

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

Чому низькі транзакційні значення є слабким місцем

Для продажів меншої вартості торговці часто не хочуть чекати, поки транзакції будуть включені в блок. Жваве фастфуд-ресторан не може дозволити собі чекати на підтвердження мережі з кожним продажем. Однак, якщо він приймає “Швидкі платежі”, він стає вразливим для атакуючих: Клієнт може замовити бургер, заплатити 0,0001 BTC і відразу ж надіслати ті ж кошти з вищою комісією на свою власну адресу. Завдяки кращій комісії друга транзакція підтверджується першою, перша стає недійсною – шахрай отримує свій бургер безкоштовно.

Висновок: Технологічне рішення для старої проблеми

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

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

BTC0.94%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • Прокоментувати
  • Репост
  • Поділіться
Прокоментувати
0/400
Немає коментарів
  • Закріпити