第3課

Безпека блокчейну

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

Огляд механізмів безпеки блокчейну

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

Прочитайте наш спеціальний і детальний курс про безпеку: Безпека блокчейну: криптографія, консенсус, злом

Якщо ви новачок і просто хочете трохи дізнатися про безпеку блокчейнів, продовжуйте читати нижче!

Основна безпека блокчейну

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

Відмінності в безпеці типів блокчейнів

Блокчейн-мережі можна класифікувати на загальнодоступні, приватні, дозволені та без дозволених на основі участі та доступу:

  1. Загальнодоступні блокчейни: публічні блокчейни, такі як біткойн, дозволяють будь-кому приєднатися до мережі та брати участь у ній. Учасники можуть залишатися анонімними, а мережа покладається на підключені до Інтернету комп’ютери для перевірки транзакцій і досягнення консенсусу за допомогою процесу, який називається «майнінг». Загальнодоступні блокчейни мають обмежений контроль ідентифікації та доступу.

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

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

  4. Дозволені блокчейни: дозволені мережі надають доступ лише вибраному набору користувачів, які ідентифікуються за допомогою сертифікатів. Ці мережі мають більш надійну ідентифікацію та засоби контролю доступу.
    Розробляючи блокчейн-програму, важливо визначити, який тип мережі найкраще відповідає вашим бізнес-цілям. Приватні та дозволені мережі пропонують більше контролю та є кращими з міркувань регулювання та відповідності. Навпаки, публічні мережі та мережі без дозволу забезпечують більшу децентралізацію та розподіл. Розуміючи різні механізми безпеки та типи мереж, ви можете вибрати найбільш підходящу блокчейн-мережу для своєї програми, забезпечуючи надійну безпеку та ефективну продуктивність.

Ідентифікація криптографічних методів і хеш-функцій

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

Що таке криптографічні хеш-функції?

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

Ключові висновки:

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

Криптографічні хеш-функції створені для забезпечення безпеки та забезпечують такі властивості:

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

Приклади криптографічних хеш-функцій і застосувань:

  • Криптовалюти: Криптографічні хеш-функції мають вирішальне значення в криптовалютах для безпечної обробки транзакцій. Біткойн, наприклад, використовує криптографічну хеш-функцію SHA-256 у своєму алгоритмі. Дерева Merkle, тип хеш-дерева, використовуються в криптовалютах для ефективної перевірки дійсності транзакцій і блоків шляхом групування транзакцій і створення єдиного хешу для кожної групи.
  • Перевірка пароля: зберігання паролів у вигляді звичайного тексту є небезпечним, тому більшість веб-сайтів зберігають хеші паролів. Коли користувач вводить свій пароль, система хешує введені дані та порівнює його зі збереженим хеш-значенням, щоб забезпечити відповідність.
  • Генерація підпису та перевірка: цифрові підписи перевіряють автентичність цифрових документів або повідомлень. Схема цифрового підпису зазвичай складається з трьох алгоритмів: алгоритму генерації ключа, алгоритму підпису та алгоритму перевірки підпису.
  • Перевірка цілісності файлів і повідомлень: хеш-функції можна використовувати для забезпечення цілісності повідомлень і файлів, що передаються між відправником і одержувачем. Порівнюючи обчислене хеш-значення з опублікованим значенням, одержувачі можуть підтвердити, що дані не були підроблені під час передачі.

Важливість захисту розумних контрактів і закритих ключів

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

Багатосторонні обчислення (MPC)

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

Розумні контракти без знань

Розумні контракти з нульовим знанням або zkapps пропонують інший підхід. У цих системах власник приватного ключа може запускати логіку, пов’язану з приватним ключем, локально, наприклад, підписувати транзакцію Bitcoin. Завдяки підтвердженню з нульовим знанням (ZKPs) інші можуть перевірити, чи приватний ключ використовувався правильно відповідно до договору, не знаючи самого приватного ключа. Однак цей підхід вимагає довіри до власника ключа, щоб уникнути витоку ключа або використовувати його зловмисно.

Абстракція облікового запису

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

Поєднання MPC із доказами нульового знання:

Щоб розширити сферу безпечних операцій смарт-контрактів, дослідники запропонували поєднати MPC із доказами з нульовим знанням. Цей підхід дозволяє виконувати будь-яку програму безпечним і перевіреним способом (через ZKP), причому різні частини програми походять від різних учасників (через MPC).

Нещодавня стаття під назвою «Експерименти зі спільними zk-SNARK: докази нульового знання для розподілених секретів» представляє рішення для поєднання цих двох методів. Хоча впровадження в ланцюжку ще не існує, очікується, що це нововведення може відкрити нові можливості для програмованих блокчейнів.

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

免責聲明
* 投資有風險,入市須謹慎。本課程不作為投資理財建議。
* 本課程由入駐Gate Learn的作者創作,觀點僅代表作者本人,絕不代表Gate Learn讚同其觀點或證實其描述。
目錄
第3課

Безпека блокчейну

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

Огляд механізмів безпеки блокчейну

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

Прочитайте наш спеціальний і детальний курс про безпеку: Безпека блокчейну: криптографія, консенсус, злом

Якщо ви новачок і просто хочете трохи дізнатися про безпеку блокчейнів, продовжуйте читати нижче!

Основна безпека блокчейну

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

Відмінності в безпеці типів блокчейнів

Блокчейн-мережі можна класифікувати на загальнодоступні, приватні, дозволені та без дозволених на основі участі та доступу:

  1. Загальнодоступні блокчейни: публічні блокчейни, такі як біткойн, дозволяють будь-кому приєднатися до мережі та брати участь у ній. Учасники можуть залишатися анонімними, а мережа покладається на підключені до Інтернету комп’ютери для перевірки транзакцій і досягнення консенсусу за допомогою процесу, який називається «майнінг». Загальнодоступні блокчейни мають обмежений контроль ідентифікації та доступу.

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

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

  4. Дозволені блокчейни: дозволені мережі надають доступ лише вибраному набору користувачів, які ідентифікуються за допомогою сертифікатів. Ці мережі мають більш надійну ідентифікацію та засоби контролю доступу.
    Розробляючи блокчейн-програму, важливо визначити, який тип мережі найкраще відповідає вашим бізнес-цілям. Приватні та дозволені мережі пропонують більше контролю та є кращими з міркувань регулювання та відповідності. Навпаки, публічні мережі та мережі без дозволу забезпечують більшу децентралізацію та розподіл. Розуміючи різні механізми безпеки та типи мереж, ви можете вибрати найбільш підходящу блокчейн-мережу для своєї програми, забезпечуючи надійну безпеку та ефективну продуктивність.

Ідентифікація криптографічних методів і хеш-функцій

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

Що таке криптографічні хеш-функції?

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

Ключові висновки:

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

Криптографічні хеш-функції створені для забезпечення безпеки та забезпечують такі властивості:

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

Приклади криптографічних хеш-функцій і застосувань:

  • Криптовалюти: Криптографічні хеш-функції мають вирішальне значення в криптовалютах для безпечної обробки транзакцій. Біткойн, наприклад, використовує криптографічну хеш-функцію SHA-256 у своєму алгоритмі. Дерева Merkle, тип хеш-дерева, використовуються в криптовалютах для ефективної перевірки дійсності транзакцій і блоків шляхом групування транзакцій і створення єдиного хешу для кожної групи.
  • Перевірка пароля: зберігання паролів у вигляді звичайного тексту є небезпечним, тому більшість веб-сайтів зберігають хеші паролів. Коли користувач вводить свій пароль, система хешує введені дані та порівнює його зі збереженим хеш-значенням, щоб забезпечити відповідність.
  • Генерація підпису та перевірка: цифрові підписи перевіряють автентичність цифрових документів або повідомлень. Схема цифрового підпису зазвичай складається з трьох алгоритмів: алгоритму генерації ключа, алгоритму підпису та алгоритму перевірки підпису.
  • Перевірка цілісності файлів і повідомлень: хеш-функції можна використовувати для забезпечення цілісності повідомлень і файлів, що передаються між відправником і одержувачем. Порівнюючи обчислене хеш-значення з опублікованим значенням, одержувачі можуть підтвердити, що дані не були підроблені під час передачі.

Важливість захисту розумних контрактів і закритих ключів

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

Багатосторонні обчислення (MPC)

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

Розумні контракти без знань

Розумні контракти з нульовим знанням або zkapps пропонують інший підхід. У цих системах власник приватного ключа може запускати логіку, пов’язану з приватним ключем, локально, наприклад, підписувати транзакцію Bitcoin. Завдяки підтвердженню з нульовим знанням (ZKPs) інші можуть перевірити, чи приватний ключ використовувався правильно відповідно до договору, не знаючи самого приватного ключа. Однак цей підхід вимагає довіри до власника ключа, щоб уникнути витоку ключа або використовувати його зловмисно.

Абстракція облікового запису

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

Поєднання MPC із доказами нульового знання:

Щоб розширити сферу безпечних операцій смарт-контрактів, дослідники запропонували поєднати MPC із доказами з нульовим знанням. Цей підхід дозволяє виконувати будь-яку програму безпечним і перевіреним способом (через ZKP), причому різні частини програми походять від різних учасників (через MPC).

Нещодавня стаття під назвою «Експерименти зі спільними zk-SNARK: докази нульового знання для розподілених секретів» представляє рішення для поєднання цих двох методів. Хоча впровадження в ланцюжку ще не існує, очікується, що це нововведення може відкрити нові можливості для програмованих блокчейнів.

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

免責聲明
* 投資有風險,入市須謹慎。本課程不作為投資理財建議。
* 本課程由入駐Gate Learn的作者創作,觀點僅代表作者本人,絕不代表Gate Learn讚同其觀點或證實其描述。