Публічні та приватні ключі: що це і як вони працюють

Публічні та приватні ключі: що це і як вони працюють

www.binance.com
хв
21 січня 2022 р
Без #приватних та #публічних #ключів не вдасться перекладати та отримувати криптовалюту. Вони також потрібні для забезпечення конфіденційності та #захисту цифрових #активів. Їх можна використовувати з будь-якого пристрою та будь-якого криптогаманця, без прив'язки до місця. 

Що таке публічні та приватні ключі

Для роботи з криптовалютою використовуються спеціальні програми-гаманці. Щоб переказувати та обмінювати цифрові гроші, потрібно мати два види ключів шифрування:

  • приватний (закритий);

  • громадський (відкритий). 

Обидва ключі прив'язуються до програмного гаманця і можуть бути імпортовані в інший гаманець за бажанням користувача. 

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

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

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

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

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

Як виглядають закриті та відкриті ключі

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

У мережі біткоїну використовуються інші формати створення приватних ключів:

  • Частковий ключ Біткоїн (у форматі WIF): 51 символ base58, починається з «5»: 5JPeWYZx922hXi49Lg2RIPWLIqcmDGS9YegMNgANvx8cJa6kNK8

  • Короткий (стиснутий WIF): 52 символи base58, починається з «К» або «L»: KykxZQLSNPYVtYCsoqFGFnEqpRar997zihJgvfrPo8LapFrAtaea

  • B Формат NINE (64 символи [0-9A-F]): 4BBFF74CA25A2A00409DCB24EC0418E9A41F9B3B56216A183E0E9731F4589DC6

  • У Base64 форматі (44 символи): S7/3TKJaKgBAncsk7AQY6aQfmztWIWoY Pg6XMFRYncY=

У більшості криптовалютних гаманців, що працюють з ВТС, використовується WIF-формат. Для звичайних транзакцій достатньо стисненого ключа, що складається із 52 символів. У

гаманцях для зберігання Ethereum найчастіше використовується код із 64 символів. 

Публічний ключ для роботи з транзакціями біткоїну також може мати різну кількість символів:

  • Адреса Біткоїн гаманця: 1DcEeFRGc4mfRLXWiVZySpmmXk7SsVLfMG

  • Коротка адреса: 1BSUkuwtdM7gkdy6W4Q954gNKWBgy4A19Q

  • Публікаційний ключ (130 символів [0-9А-F]): 0DA7FA296B3F6D

  • Публічний ключ (короткий, 66 символів [0-9А-F]): 03D7A51212E4EEFE40C72B201E74AA3557DEFD940ACESC3E107687577CD45FF962 

Найпоширеніший варіант – це коротка адреса. Він може починатися з одиниці чи трійки.

Методи шифрування у криптовалюті

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

Симетричне шифрування

Є найпопулярнішим і найпростішим способом кодування даних транзакції. Повідомлення шифруються та розшифровуються за допомогою одного ключа. Тобто виконуються симетричні дії. 

Одержувачу повідомлення передається ключ, з якого він може розкодувати дані.

Асиметричне шифрування

При такому методі кодування даних використовуються 2 ключі:

  • відкритий - необхідний для запуску операції;

  • закритий – щоб розшифрувати повідомлення.

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

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

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

Хешування

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

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

Принцип роботи

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

Схема застосування має такий вигляд:

  • Користувач, якому потрібно переказати гроші, дає свій публічний ключ. 

  • Відправник використовує отриманий набір символів для шифрування транзакції – її запуск у безпечному режимі.

  • Виконується переклад криптовалюти на вказану адресу криптовалютного гаманця.

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

Для наочного прикладу можна представити таку ситуацію:

  • Користувач А хоче відправити 5 біткоїнів користувачеві Б.

  • Користувач Б надає публічний ключ користувачу А.

  • За допомогою публічного ключа користувач А створює транзакцію та шифрує її за допомогою приватного ключа.

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

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

Відмінності приватного та публічного ключів

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

Рівень доступу

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

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

Процес шифрування

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

Ці два набори символів працюють у парі один з одним:

  • Без відкритого ключа відправник не зможе запустити транзакцію. 

  • Без приватного ключа одержувач зможе авторизувати (розшифрувати) переклад. 

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

Зміна приватних ключів (свіпінг)

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

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

Виконання свіпінгу може бути корисним у таких ситуаціях:

  • З'явився ризик злому. Наприклад, на ПК встановлений десктопний гаманець, і на цьому комп'ютері була запущена підозріла програма. Щоб уникнути крадіжки закритого ключа, варто перевести всі кошти на інший гаманець.

  • З'явилася потреба у ліквідації старого гаманця. При виході зручнішої програми можна перевести на нього кошти, відмовившись від застарілого варіанта.

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

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

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

Імпортування ключів

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

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

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

При імпорті важливо звернути увагу на захист приватного ключа на новому ПЗ.

Як правильно зберігати закриті ключі

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

Зловмисники можуть вкрасти криптовалюту, отримавши доступ до вмісту жорсткого диска на ПК, а також зламавши обліковий запис на хмарному сервісі або онлайн-платформі. Щоб такого не сталося, потрібно використовувати найнадійніші варіанти захисту. 

До них відносяться 3 способи зберігання приватних ключів:

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

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

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

При використанні криптогаманців потрібно подбати про створення максимально надійного сховища закритого ключа. 

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

Коментарі

Популярні дописи з цього блогу

«Люди в блакитному» частина 2. Встановили агентів російських спецслужб у залі «Крокус».

«Вилаят Хорасан», подробности биографий подозреваемых и версии теракта

"Men in Blue" part 2 We have identified agents of the Russian secret services in the "Crocus" hall Our editorial staff continues to analyze photos and videos of the terrorist