Що таке адреса в технології Blockchain


Що таке Блокчейн адреса - блог Guland

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

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


Блокчейн Адреса 101

Коли Біткоін був вперше створений, він мав можливість відправляти Біткоін-платежі безпосередньо на IP-адреси. Ця можливість була включена для того, щоб звичайній людині було набагато вигідніше відправляти Біткоіни без необхідності мати справу з відкритими ключами і довгими адресами. Однак розробники Біткоіна незабаром зрозуміли, що це може бути вразливе місце для атак «людина посередині», тому вони видалили цю функцію, і вона до цих пір не відновлена.

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

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

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

Відкритий ключ: початок генерації адреси Blockchain

Після того, як Біткоін відмовився від ідеї Pay to IP, розробники переключилися на формат Pay To Public Key Hash (P2PKH), який ви, ймовірно, визнаєте як поточну систему адресації. Стандартний P2PKH матиме 34 буквено-цифрових символа і починається з «1», наприклад: 1K31KZXjcochXpRhjH9g5MxFFTHPi2zEXb.

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

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

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

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

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

Створення адреси Біткоін-Блокчейн

При створенні адреси гаманець ще раз використовує криптографічні алгоритми. Коротше кажучи, гаманець починається з хеширования відкритого ключа за допомогою SHA-256, а потім отримує результат і хеші за допомогою RIPEMD-160. Згодом байти 00 додаються в рядок в якості префікса, тому всі адреси P2PKH починаються з цифри 1, а також додаються чотири байти контрольної суми в кінці рядка. Нарешті, гаманець перетворює все це в рядок base58, і в результаті виходить адреса Біткоіна, яку ви дізналися.

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

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

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

Інші криптовалютні адреси

Таким чином, не тільки Біткоін використовує описаний вище метод для створення адрес. Інші монети використовують ті ж ECDSA, SHA-256 і RIPEMD160 для генерації адрес. Деякі добре відомі приклади – Dogecoin, Dash і Litecoin. Єдина відмінність полягає в тому, що хеш RIPEMD160 призводить до різних префіксам. Таким чином, адреси Dogecoin починаються з літери «D», адреси Litecoin починаються з літери «L», а адреси Dash починаються з літери «X».

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

Є й інші методи, використовувані для генерації адрес. Монета конфіденційності Monero заснована на алгоритмі Cryptonote і використовує інший алгоритм криптографічного підпису, відомий як EdDSA, для генерації відкритого ключа. Він також використовує так званий кільцевий підпис для забезпечення конфіденційності. Ці кільцеві підписи не дозволяють іншим побачити, який ключ підписав транзакцію. Це також означає, що адреси Cryptonote мають пару відкритих ключів – один ключ витрат і один ключ перегляду.

Crytponote додає байтовий префікс і хешує результат для контрольної суми, але для цього використовує Keccak-256, а не SHA-256. Потім результат перетворюється в base58 і дає набагато довший адрес в порівнянні з Біткоін-адресами. Адреса Monero буде виглядати наступним чином: 43ZZViHQKd42X7cajEtc6NUoxG4AvyMu3ZqpGTBP85uhEfYoPVAuGHxJcomMHEPp3NWiKJRUMnuAJ7dfBrPTcfjYMPJzz2a

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

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

Ефіріум Адреси

Ethereum багато в чому різний і унікальний, і його створення адрес є таким же. З самого початку користувачі Біткоіна були спантеличені, побачивши адреси Ethereum, що представляють собою довгі шістнадцятиричні рядки, що починаються з 0x, наприклад: 0x0eb81234567897ec23f1354ec754a2c4e4f9f565.

Дійсно, метод створення адрес, який використовується Ethereum, не так сильно відрізняється від Біткоіна. Він починається з закритого ключа, який використовує ECDSA для створення відкритого ключа, як і Біткоіни. Відкритий ключ потім хешується з використанням Keccak-256, який дає нам 32-байтовий рядок. Ethereum відкидає перші 12 байтів, а 20 байтів що залишилися дають шістьнадцяткову адресу з 40 символів, до якої додається префікс 0x. І це все. Нема перетворення в base58, що означає, що адреси Ethereum залишаються шістьнадцатерічними.

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

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

Є причина, по якій адреси здаються незавершеними, і це тому, що вони такими є. Коли Ефіріум був вперше випущений, ніхто не дбав про те, чи були адреси незакінченими. І були плани змінити адресну систему, тому те, що ми використовуємо сьогодні, не є останньою ітерацією. Розробники Ethereum все ще планують створити реєстр імен на основі розумних контрактів. Як тільки це буде завершено, криптовалюта повернеться до бачення Сатоши, де платіжні адреси набагато простіше використовувати і запам’ятовувати. І, можливо, Ethereum не розв’язав використовувати спеціально створені адреси, такі як Біткоін, просто тому, що розробники Ethereum думають, що можуть поліпшити цей метод. Пам’ятайте, що адреса – це просто спосіб направити інших в правильне місце розташування, тому йому потрібна тільки відповідна інформація, щоб дозволити виділення коштів на закритий ключ. Це можна зробити різними способами.

Фактично, розробники Ethereum небайдужі до формату ICAP, який є base58 і використовує контрольні суми, як Біткоіни і інші криптовалюти. Дійсно, потенційно приваблива особливість формату ICAP полягає в тому, що він сумісний з іншим існуючим форматом – системою міжнародного номера банківського рахунку (IBAN). Це означає, що всі існуючі банківські програми і системи можуть розуміти ці адреси ICAP Ethereum і взаємодіяти з ними.

IBAN використовується на міжнародному рівні для ідентифікації клієнтських рахунків в банківській сфері. IBAN включає в себе номер рахунку клієнта, банк, код країни і контрольну суму. ICAP включає в себе всю ту ж інформацію і використовує XE в якості ідентифікатора країни.

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

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

Використання імені користувача в якості вашої адреси

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

STEEM був створений на основі тієї ж концепції, що і BitShares. Спочатку він був пов’язаний з платформою соціальних мереж Steemit, але з тих пір виріс до зв’язку з декількома іншими платформами соціальних мереж з різною спрямованістю. Система STEEM використовує те, що називається доказом мозку, і являє собою поєднання докази роботи і докази ставки, коли користувачі генерують монети, публікуючи оригінальні матеріали, які потім «голосуються» або схвалюються іншими користувачами. В цілому, система досить складна, має можливість делегувати право голосу і систему курирування, яка також платить невеликі збори за майнінг. Він також включає три різні види токенів, які використовуються по-різному, щоб уникнути інфляції, забезпечити стабільність і стимулювати користувачів не виводити гроші з системи.

STEEM був підданий критиці як занадто централізований, але його адресна концепція, проте, дуже інтригує. Хоча він може бути більш централізованим, STEEM, схоже, вже виконав те, що Ethereum сподівається зробити з розумними реєстраторами імен контрактів. З STEEM кожен користувач отримує закритий ключ, який можна використовувати для підписання транзакцій. Адреси не є похідними від цих закритих ключів, а є просто іменами користувачів, обраними під час створення облікового запису в Steemit. Імена користувачів пов’язані з відкритими ключами в Блокчейні STEEM, що дозволяє виконувати перевірку підпису і транзакцій, але спосіб, яким це відбувається, унікальний, оскільки з’єднання з відкритим ключем / адресою не ґрунтується на алгоритмі, а замість цього засноване на довірі до платформи Steemit.

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

Якби Ethereum міг забезпечити децентралізовану, ненадійну криптовалюту з простотою системи адрес користувачів STEEM, ми б зробили великий крок вперед в Блокчейні і криптовалютах.

Як подолати прірву в розумінні Блокчейна (відео)


Сподобалася стаття? Будь ласка, оцініть і поділіться:

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд
Loading...

Вам також буде цікаво

Додайте коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *