Bitcoin Core працює над вирішенням проблеми «атаки викривлення часу»

Новини криптовалюта

Розробники Биткоина мають розбіжності з багатьох питань, включаючи і думку щодо необхідності вирішення різних проблем. Це стосується і давньої проблеми «атаки викривлення часу» (timewarp attack).

Співзасновник Blockstream Марк Фриденбах (Mark Friedenbach) недавно виявив, що експлойт можна використовувати для підтримки масштабування Биткоина, тобто залучити більше користувачів і обробляти більше транзакцій швидше, якщо розробники приймуть ідею і втілять її в життя.

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

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

Грегорі Максвелл, співзасновник Blockstream і один з найвідоміших розробників Биткоина, наприклад, нещодавно закликав виправити давню можливість атаки в розсилці для розробників. Максвелл не висловився щодо концепції Фриденбаха, але цей заклик з’явився незабаром після того, як почалася дискусія про ідею, що отримала назву Forward Blocks.

Дослідження Фриденбаха пропонує концепцію, яку розробники, які прагнуть захистити протокол, знаходять вельми привабливою. Вона дозволяє збільшити розмір блоку Биткоина без необхідності тотального оновлення всіх користувачів, які працюють з програмним забезпеченням (враховуючи, що цей параметр довгий час був каменем спотикання в межах співтовариства, деякі вважають цю ідею свого роду «проривом»).

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

Подорожі в часі

Для початку необхідно розібратися, чому ця атака взагалі можлива.

Читайте также:
Девід Маркус: «якщо США будуть перешкоджати запуску Libra, Китай виграє криптовалютную гонку»

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

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

Щоб з’ясувати, чому це відбувається, аналітична блокчейн-компанія Chainalysis недавно випустила
звіт, в якому розповідалося про те, як змінилася інтенсивність подібних помилок з плином часу.

«Знижується з часом кількість помилок у тимчасових мітки відображає еволюцію залучених у роботу користувачів», – відзначає головний економіст та співавтор звіту Філіп Грэдвелл (Philip Gradwell) стверджуючи, що кількість помилок тимчасових міток «різко зростає», коли в майнинговой індустрії відбувається технологічна зміна.

Наприклад, коли майнеры почали об’єднуватися разом, щоб сформувати «пули» на початку 2012 року, кількість помилок часових відміток збільшилася до 8%. За твердженням Грэдвелла, ці дані свідчать про те, що помилки відбуваються випадково, а не зі злим умислом, оскільки майнер необхідно звикнути до нового обладнання.

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

На щастя, подібну атаку досить складно здійснити.

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

У випадку, коли одна група майнер отримує переважна більшість хэшрейта, атака спотворення часу була б найменшою проблемою для спільноти Биткоина. Це означало б централізацію мережі, а саме кінець децентралізації Биткоина, яка є однією з його ключових характеристик. Не кажучи вже про те, що тоді майнеры зможуть виконувати так звану «атаку 51%», щоб завдяки своєму перевазі чинити вплив на мережу.

Читайте также:
Агустін Карстенс: «ЦБ можуть випустити свої кріптовалюти раніше, ніж передбачалося»

Пропозиції

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

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

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

«Зворотна сумісність» – ключова характеристика. Вимога полягає в тому, щоб зміна не спровокувало розділення мережі.

Після запиту Максвелла з’явилося кілька різних пропозицій.

Розробник Bitcoin Core Джонсон Лау (Johnson Lau) висунув пару ідей, як хороших, так і поганих, щоб показати компроміси різних підходів. Він стверджував, що «наївний» підхід повинен складатися у вимозі того, щоб блок не ставив менше, ніж у більш раннього блоку.

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

Читайте также:
Coinbase Card стали доступні ще в 6 країнах Європи

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

Ідея Лау навіть викликала невелику філософську дискусію про «софтфорках» – назад сумісному способі внесення подібних змін в код Биткоина і про те, як різні рішення можуть мати різні наслідки.

«В цілому, софтфорки краще, так як вони не обездоливают майнер, які вирішили не оновлюватися», – написав
творець BitTorrent Брем Коен (Bram Cohen), який в даний момент зосередив зусилля своїх розробників на криптовалютной індустрії.

В цілому він підтримав пропозицію Лау, але посперечався про часовому інтервалі тривалістю три години. «Проблема в тому, що він все одно дозволяє здійснення атак, хоч і в меншій мірі», – сказав Коен. Інший розробник Скотт Робертс (Scott Roberts) погоджується з Коеном, хоча вважає, що три години можуть бути «не зовсім відповідним інтервалом».

«Я не знаю, яке рішення буде прийнято в результаті, але я думаю, що виправлення повинно полягати в обмеженні часових відміток на плюс-мінус 24 години від попередньої позначки», – сказав Робертс.

Інша ідея

Є проблема, яка полягає в тому, що викорінення атаки спотворення часу зруйнує концепцію Forward Blocks.

«Рішення проблеми атаки спотворення часу призведе до неможливості досягнення внутрішньомережевого масштабування концепції Forward Blocks. Можливо, все ж варто розгортати оновлення proof-of-work або підвищувати стійкість до цензури шардинга», – сказав Фриденбах. «Але тоді головна перевага масштабування Биткоина, яка так хвилює людей, зникне».

Розмірковуючи про це, Фриденбах вніс ще одне речення, яке зберегло б Forward Blocks, але виключило б «найгірші експлойти» атаки спотворення часу. Він стверджує, що «воно може бути розпочато раніше, щоб запобігти необачне використання помилки викривлення часу».

Читайте также:
Австралійський університет запустить програму післявузівської навчання за блокчейну

Але багато розробники Биткоина не впевнені, що концепцію Forward Blocks необхідно зберегти в чистому вигляді.

Генеральний директор Blockstream Адам Бек (Adam Back) стверджує, що, хоча він вважає це дослідження цікавим, він не впевнений, що спільнота підтримає його.

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

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

Він говорить, що існують більш прості і менш заїжджені підходи», ніж той, який запропонував Фриденбах, щоб прискорити масштабування Биткоина першого рівня.

Однак Фриденбах продовжує стверджувати, що Forward Blocks повинні бути збережені в якості інструменту:

«Небезпечні наслідки помилки спотворення часу можна запобігти, не виправляючи помилку повністю, і, отже, не блокуючи Forward Blocks або пов’язані з ними рішення для масштабування».

Источник

Оцініть статтю
Популярний портал | Proexpress.com.ua | все найцікавіше в Україні

Thanks!

Our editors are notified.