Legacy (Легасі) та SegWit (Сегвіт) — дві дивні та незрозумілі для новачків у крипті слова, які використовуються для позначення форматів адрес Bitcoin-гаманців.
Хоча тема може здатися складною, вона дуже важлива для тих, хто вирішив зануритися у світ криптовалют. У попередніх статтях ми вже розглядали, що таке біткоїн, різні біткоїн-гаманці, а також як купити біткоїн. Здавалося б, цієї інформації достатньо, щоб стати повноцінним користувачем криптовалют, але…
Звичайно, такі відмінності можуть збити з пантелику — по-перше, незрозуміло, навіщо таке різноманіття, по-друге, виникає страх втратити кошти під час переказів (раптом біткоїни не дійдуть до одержувача). Що ж, побоювання частково виправдані, але "не такий страшний чорт, як його малюють".
У цій статті ми розберемо всі нюанси, пов’язані з Bitcoin-адресами, і покажемо, що насправді все просто!
Що таке Bitcoin-адреса?
Адреса Bitcoin-гаманця (унікальний ідентифікатор) — це щось на кшталт номера вашого криптовалютного рахунку. Вона потрібна як для отримання біткоїнів, так і для їх відправлення. Щоб зробити переказ (транзакцію), користувач має вказати адресу гаманця одержувача. У свою чергу, одержувач має надати свою адресу відправнику.
До недавнього часу проблем із розумінням різних типів адрес і транзакцій не було, оскільки всі учасники мережі використовували єдиний формат біткоїн-адрес — Legacy. Але з розвитком технологій змінився не лише формат запису адрес, а й спосіб обробки транзакцій між ними.
Давайте розглянемо детальніше ключові моменти цього питання…
Що таке Legacy?
Legacy-адреса (P2PKH — Pay To Public Key Hash) — це стандартний формат Bitcoin-адреси, який спочатку був закладений у протоколі та використовується більшістю криптогаманців і сервісів.
Така адреса, запропонована творцем біткоїна Сатоші Накамото, починається з цифри "1" (префікс)
Цей формат адрес був і залишається найпоширенішим з моменту запуску мережі Bitcoin.
Незважаючи на широке поширення Legacy-адрес, у них є низка недоліків:
-
Чутливість до регістру введених даних та незручність запису на папері;
-
Низький пріоритет для майнерів, оскільки таких транзакцій у блок поміщається значно менше;
-
Обмежена криптографічна стійкість використовуваного в Біткоїні алгоритму цифрового підпису;
-
Ризик пластичних транзакцій.
Технічні деталі! Bitcoin використовує алгоритм Base58 для перетворення відкритих ключів у зручний для читання формат. Він схожий на відомий Base64, але використовує скорочений алфавіт, щоб уникнути гомографічних атак.
Тому в Legacy-адресах ви ніколи не побачите символів: 0 (нуль), О (велика "о"), I (велика "i"), l (мала "L"), а також знаків "+" та "/".
Здавалося б, недоліки не такі вже й суттєві, але зі зростанням популярності біткоїна вони почали відігравати важливу роль.
Як відомо, комісія за транзакцію сплачується в сатоші (дрібній частині біткоїна), тому зі зростанням вартості BTC зросла і ціна транзакцій. Звичайно, при переказі $10 000 комісія в $5 здається невеликою, але для мікропереказів, де вона може становити 10% або більше від суми, це суттєвий недолік. Додайте до цього повільні перекази — і все, "приплыли"!
Що таке SegWit?
До кінця літа 2017 року звичайні користувачі BTC успішно використовували класичні Legacy-адреси для транзакцій. Але 24 серпня в мережі Bitcoin відбувся софт-форк, запропонований у березні 2016 року розробниками П. Велле та Г. Максвеллом.
Оновлення передбачало активацію протоколу Segregated Witness і новий формат біткоїн-адреси — Bech32 або SegWit-адресу (P2WPKH — Pay to Witness Public Key Hash).
Segregated Witness ("відокремлений підпис") дозволив зменшити розмір транзакцій у блоках мережі Bitcoin, вилучивши з них підписи та винісши їх у "додаткові дані" з подальшою індивідуальною обробкою.
Коротко про технологію: протокол SegWit відокремлює криптографічний підпис від самої транзакції та виносить його за межі основного блокчейну. При цьому звільнене місце в блоці заповнюється іншими транзакціями. Впровадження SegWit призвело до збільшення пропускної спроможності, оскільки в блок стало вміщатися більше транзакцій. Проблема високих комісій відпала сама собою, оскільки більше не потрібно було пропонувати майнерам вищу винагороду за пріоритетне підтвердження.
Оновлення торкнулося не лише методу формування блоків, а й самого формату запису публічних ключів Bitcoin-гаманців.
SegWit-адреси починаються з "bc1", причому вони нечутливі до регістру: bc1qnnc… = bc1Qnnc… = BC1QNNC…
Такий формат значно спростив використання адрес і зробив їх зручнішими для запису. Серед переваг SegWit-адрес:
-
Висока захищеність від помилок запису;
-
Збільшення пропускної спроможності транзакцій;
-
Зниження комісій до 50%.
Головний недолік оновленого протоколу в тому, що не всі криптовалютні сервіси його підтримують. Але є рішення — проміжний формат адрес, який називається Compatible.
Серед відомих криптогаманців SegWit підтримують Trustee Wallet, Trezor, Electrum, Ledger Nano S.
Що таке Multisignature та Compatible-адреси?
Цей тип адрес з’явився ще у 2012 році, щоб частково вирішити проблему дорогих транзакцій.
Головний науковий співробітник Bitcoin Foundation Г. Андерсон запропонував оновлення BIP-0016, яке покращило б логіку виконання транзакцій, дозволивши відправку не просто на адреси, а на програмовані ключі (щось схоже на смарт-контракти в Ethereum).
В результаті з’явилися біткоїн-адреси, які починаються з префікса "3".
При цьому структура адреси залишилася схожою на Legacy. Такі Multisignature-адреси часто використовуються в "гаманцях з мультипідписом", де один адрес має 2 або 3 приватних ключі.
Не заглиблюючись у технічні деталі, розглянемо їх взаємодію з Legacy та SegWit.
Впровадження SegWit не підтримувалося старими гаманцями — вони не розпізнавали Bech32-адреси й не знали, як з ними працювати. Тому проміжний формат P2SH, а саме Compatible, став своєрідним мостом між різними типами адрес. Спеціальний скрипт, зашифрований у ключі адреси 3ххх, дозволяє користувачам старих гаманців відправляти кошти на нові (3ххх), а власникам нових — витрачати їх за технологією SegWit (тобто з низькими комісіями).
Перехід з Legacy на SegWit у Trustee Wallet
Після впровадження протоколу SegWit у Trustee Wallet у деяких користувачів виникло питання: "Як так, я відправив частину коштів у BTC, а з балансу списалися всі, чому?".
Щоб відповісти на це питання, потрібно трохи заглибитися в роботу самого біткоїна.
Біткоїн досить складний у плані обробки транзакцій. Спрощено це можна описати так: коли ви хочете відправити частину балансу, з вашого гаманця йде не частина, а вся сума, яка ділиться на нового власника (отримана ним сума) і "решту" (те, що залишилося за вирахуванням комісії).
Що стосується підтримки SegWit у Trustee, важливо відзначити одну особливість. При відправці коштів з Legacy-адреси "решта" повертається не на Legacy, а на SegWit. Завдяки цьому перехід з застарілого, повільного та дорогого Legacy на швидкий і дешевий SegWit стає для користувача простим, зручним і не вимагає додаткових витрат.
Висновок
Світ не стоїть на місці, а світ криптовалют тим більше. Розвиток і вдосконалення протоколів неминучі.
У цій статті ми розглянули основні типи біткоїн-адрес і сподіваємося, що внесли ясність у це питання. Команда Trustee Wallet завжди йде в ногу з часом — приєднуйтесь до нас!
















































