Please use this identifier to cite or link to this item:
https://er.chdtu.edu.ua/handle/ChSTU/6414| Title: | Дослідження механізмів забезпечення захисту даних в мережі блокчейн |
| Authors: | Нечипоренко, Ольга Володимирівна Дудін, В'ячеслав Юрійович |
| Issue Date: | Jan-2024 |
| Abstract: | У процесі обробки даних в блокчейн-системі проводиться автоматизована оцінка ризиків введення та обробки недостовірних даних, а також аналіз санкціонованої поведінки користувачів з метою визначення аномалій у їх поведінці. На основі аналізу вимог та методів забезпечення безпеки даних обґрунтована необхідність розробки способів забезпечення безпеки обробки даних в блокчейн-системі. Розроблена модель для виявлення загроз порушення інформаційної безпеки даних, що враховує залежність між загрозами даних та рівнем небезпеки. Запропонована модель відрізняється від традиційного підходу до представлення загроз, враховуючи конкретні загрози для даних в блокчейн-системі та числові значення рівня небезпеки порушення деяких характеристик безпеки. Вона дозволяє визначити актуальні загрози для блокчейн-системи та ті, що впливають на достовірність даних. Методи забезпечення достовірності інформації, оброблюваної в блокчейн-системі, розширюють клас методів для виявлення недостовірних даних. Удосконалена модель відрізняється підходом до досягнення консенсусу, включаючи автоматизовану оцінку ризиків введення та обробки недостовірних даних, розроблену з використанням теорії нечітких множин. Цей метод забезпечує достовірність персональних даних в блокчейн-системі на рівні організацій та держави загалом. Також досліджено санкціоновану поведінку користувачів, яка формалізує поведінку та дозволяє виявляти аномалії. Результати показали ефективність методів при експлуатації в умовах, що максимально наближені до реальних. Подальші дослідження рекомендується проводити в напрямках розширення специфічних загроз для блокчейн-систем, вдосконалення методів виявлення недостовірних даних та дослідження альтернативних конфігурацій нейронних мереж для аналізу ризиків введення та обробки недостовірних даних в блокчейн-системі. |
| URI: | https://er.chdtu.edu.ua/handle/ChSTU/6414 |
| Appears in Collections: | 174 Автоматизація, комп'ютерно-інтегровані технології та робототехніка (Автоматизація та комп'ютерно-інтегровані системи та компоненти) |
Files in This Item:
| File | Description | Size | Format | |
|---|---|---|---|---|
| М_151_2023_Дудін.pdf Restricted Access | 1.58 MB | Adobe PDF | View/Open Request a copy |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.
Extracted text
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОІЧНИЙ УНІВЕРСИТЕТ
ФАКУЛЬТЕТ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ І СИСТЕМ
КАФЕДРА РОБОТОТЕХНІКИ ТА СПЕЦІАЛІЗОВАНИХ КОМП’ЮТЕРНИХ СИСТЕМ
Пояснювальна записка
до кваліфікаційної роботи
освітнього ступеню «магістр»
на тему: ДОСЛІДЖЕННЯ МЕХАНІЗМІВ ЗАБЕЗПЕЧЕННЯ ЗАХИСТУ
ДАНИХ В МЕРЕЖІ БЛОКЧЕЙН
Виконав: здобувач вищої освіти 2 курсу,
групи МАКІТ-2209
спеціальності 151 Автоматизація та
комп’ютерно-інтегровані технології,
освітня програма «Автоматизація
комп’ютерно-інтегровані системи та
компоненти»
Дудін В.Ю.
(Прізвище ім’я по-батькові)
Керівник Нечипоренко О.В.
(Прізвище ім’я по-батькові)
Рецензент
(Прізвище ім’я по-батькові)
Черкаси 2023 року
2
ЗМІСТ
ПЕРЕЛІК УМОВНИХ ПОЗНАЧЕНЬ, СИМВОЛІВ, ОДИНИЦЬ, СКОРОЧЕНЬ І
ТЕРМІНІВ .................................................................................................................... 3
ВСТУП ......................................................................................................................... 4
РОЗДІЛ 1 АНАЛІЗ ТЕХНОЛОГІЙ ДЕЦЕНТРАЛІЗОВАНОГО РЕЄСТРУ ДЛЯ
РОЗРОБКИ БЛОКЧЕЙН СИСТЕМИ ........................................................................ 8
1.1. Основні аспекти технології розподіленого реєстру ..................................... 8
1.2. Відмінності між розподіленим реєстром та класичними базами даних .. 11
1.3. Базові механізми побудови технології блокчейн ....................................... 17
1.4. Головні складові механізмів безпеки технології blockchain ...................... 25
Висновки до першого розділу .............................................................................. 32
РОЗДІЛ 2 ДОСЛІДЖЕННЯ ОСНОВНИХ МЕХАНІЗМІВ БЕЗПЕКИ
ТЕХНОЛОГІЇ БЛОКЧЕЙН ...................................................................................... 34
2.1. Класифікаційна схема мережі blockchain .................................................... 34
2.2. Структура ланцюга блокчейн та принцип його роботи ............................. 38
2.3. Основні властивості безпеки даних blockchain мережі .............................. 43
2.4. Механізми досягнення надійності в технології .......................................... 46
Висновки до другого розділу ............................................................................... 55
РОЗДІЛ 3 МОДЕЛЬ ВИЗНАЧЕННЯ ПОРУШЕННЯ БЕЗПЕКИ ДАНИХ У
БЛОКЧЕЙН-СИСТЕМІ ............................................................................................ 57
3.1. Недоліки існуючих методів моделювання загроз ....................................... 57
3.2. Основні потенційні загрози блокчейн-системі ........................................... 60
3.3. Визначення різних небезпечних впливів на блокчейн мережу ................. 65
Висновки до третього розділу .............................................................................. 71
ВИСНОВКИ ............................................................................................................... 73
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ ................................................................. 75
3
ПЕРЕЛІК УМОВНИХ ПОЗНАЧЕНЬ, СИМВОЛІВ, ОДИНИЦЬ,
СКОРОЧЕНЬ І ТЕРМІНІВ
ACL – Список контролю доступу
Blockchain – Блокчейн
BM – Менеджер блоків
CH – Голова кластера
LBM – Локальний менеджер блоків
OBM – Менеджери накладених блоків
P2P – Технологія рівний до рівного
PKI – Інфраструктура відкритого ключа
PoS – Доказ частини виконаної роботи
PоW – Доказ виконаної роботи
БД – База даних
ЗКЗІ – Засоби криптографічного захисту інформації
ІС – Інформаційна система
НСД – Несанкціонований доступ
ПДн – Персональні дані
ПЗ – Програмне забезпечення
СППР – Система підтримки прийняття рішень
СУІБ – Система управління інформаційною безпекою
4
ВСТУП
Актуальність. На даний момент використання обчислювальної техніки в
господарському, фінансовому та економічному управлінні, а також зростання
електронної комерції та бізнесу спричиняють швидкий розвиток інформаційних
технологій. Цей розвиток призводить до постійного збільшення спектру загроз
для безпеки інформації, яка обробляється в інформаційних системах. У такому
контексті виникає актуальність дослідження механізмів захисту інформації в
мережі блокчейн з врахуванням сучасних підходів до безпеки даних, зокрема
розподіленої структури і технологій забезпечення цілісності інформації. Серед
найперспективніших методів зберігання, обробки та захисту даних важливе
місце належить методам, що використовують хмарні платформи, зокрема ті, що
базуються на технології блокчейн.
Обробка даних в блокчейн-системах вимагає нового етапу у забезпеченні
безпеки інформації, що вносить додаткові вимоги до інформаційних систем
через специфіку даних, нові технології обробки інформації та завдання, що
виникають на сучасному етапі розвитку інформаційних технологій. Також
виникає потреба в постійному розширенні спектру потенційних загроз та
вдосконаленні існуючих методів захисту даних.
Наразі існує недостатньо вивчені моделі виявлення загроз порушення
інформаційної безпеки даних у блокчейн-системі, методи забезпечення безпеки
даних у цих системах, а також методики аналізу санкціонованої поведінки
користувачів. Санкціонована поведінка користувача – це дії, які не порушують
правила доступу, але суперечать об'єктивній потребі забезпечення безпеки даних
у блокчейн-системі. Дана суперечність створює наукове завдання, пов'язане з
дослідженням методів забезпечення безпеки даних у цих системах.
Таким чином, забезпечення безпеки персональних даних під час їх обробки
в блокчейн-системах є актуальним завданням, і розробка захищених блокчейн-
систем стає важливою проблемою.
5
Мета роботи – дослідження механізмів захисту інформації в розподіленій
структурі мережі блокчейн з врахуванням сучасних технології забезпечення
конфіденційності та цілісності даних.
Мета дослідження досягається вирішенням наступних завдань:
− дослідити вплив розподіленої структури блокчейн і технічні аспекти,
такі як блоки, хеш-функції та механізми консенсусу для визначення
ефективності забезпечення безпеки;
− проаналізувати механізми виявлення та усунення загроз безпеки
інформації у блокчейн-системі для запобігання потенційним атакам та
виявлення аномалій в системі;
− вивчити можливості розширення блокчейн-мережі для включення
нових механізмів захисту даних та адаптації до нових вимог безпеки;
− розробка моделі виявлення загроз порушення інформаційної безпеки
даних, що обробляються в блокчейн-системі, яка враховує склад
специфічних загроз.
Об’єкт дослідження – процеси обробки та захисту даних у блокчейн-
системі.
Предмет дослідження – механізми забезпечення захисту даних в мережі
блокчейн.
Методи дослідження. Для розв'язання поставлених завдань використано
методологічний апарат, який включає в себе комплексні підходи та концепції,
такі як системний підхід для аналізу взаємодії складних систем, методи
вилучення слабоформалізованих знань для отримання інсайтів з
неструктурованих даних, теорію інформації та кодування для забезпечення
ефективної обробки та передачі інформації, а також концептуальне моделювання
для розробки абстрактних представлень системи для вирішення складних
завдань у сфері інформаційної безпеки та технологічного розвитку.
Наукова новизна одержаних результатів полягає у наступних аспектах:
1. Досліджено та проаналізовано не лише традиційні аспекти, такі як
блоки, хеш-функції та механізми консенсусу, але й визначено їхній
6
вплив на ефективність забезпечення безпеки. Розглянуті альтернативні
підходи до цих елементів, що відкривають нові можливості та
покращують загальну стійкість системи.
2. Удосконалено методи виявлення та усунення загроз безпеки в
блокчейн-системі, що враховують сучасні тенденції та специфіку цієї
технології, що сприяє ефективнішому запобіганню атак та
оперативному виявленню аномалій.
3. Удосконалено архітектури та забезпечення високого ступеню
гнучкості блокчейн-мережі для впровадження нових механізмів
захисту даних та адаптації до змінюючихся вимог безпеки.
Практичне значення отриманих результатів. Практична значимість
полягає в здатності визначити ідентифіковані загрози, які є актуальними для
блокчейн-систем. Отримані в ході дослідження результати сприяють
забезпеченню надійності персональних даних при їх обробці в блокчейн-системі.
Крім того, отримані результати дозволяють оперативно виявляти відхилення у
поведінці користувачів, що є важливим аспектом для забезпечення безпеки та
недопущення можливих інцидентів в інформаційних системах блокчейн.
Апробація результатів роботи. Результати кваліфікаційної роботи
магістра доповідалися й обговорювалися на науковій конференції:
− Сучасні технології в енергетиці, електромеханіці, системах управління
та машинобудуванні: Матеріали V Всеукраїнської науково-практичної
інтернет-конференції (м. Харків, 20-21 квітня 2023 р.) / Навчально-
науковий професійно-педагогічний інститут Української інженерно-
педагогічної академії [упоряд. П.О. Чикунов]. – Харків: ННППІ УІПА,
2023.
− «Сучасні методи, інформаційне, програмне та технічне забезпечення
систем керування організаційно-технічними та технологічними
комплексами»: Тези доповідей дев’ятої міжнародної науково-технічної
Internet-конференції: (25 листопада 2022 р., Київ), 2022.
7
Публікації. Результати досліджень опубліковані в:
− Study of the application of blockchain technologies in automated
cryptocurrency arbitration systems / O.V. Nechyporenko, V.Yu Dudin //
Сучасні технології в енергетиці, електромеханіці, системах управління
та машинобудуванні: Матеріали V Всеукраїнської науково-практичної
інтернет-конференції (м. Харків, 20-21 квітня 2023 р.) / Навчально-
науковий професійно-педагогічний інститут Української інженерно-
педагогічної академії [упоряд. П.О. Чикунов]. – Харків: ННППІ УІПА,
2023. – С. 17.
− Improvement of the control system of the electrical equipment of the
metalworking machine / O.V. Nechyporenko, D.A. Semenenko,
V.Yu. Dudin // «Сучасні методи, інформаційне, програмне та технічне
забезпечення систем керування організаційно-технічними та
технологічними комплексами»: Тези доповідей дев’ятої міжнародної
науково-технічної Internet-конференції: (25 листопада 2022 р., Київ),
2023. – С. 147-148.
Структура та обсяг кваліфікаційної роботи. Кваліфікаційна робота
складається із перелік умовних позначень, символів, одиниць, скорочень і
термінів, вступу, трьох розділів, висновку та списку використаних джерел.
Загальний обсяг роботи складає 80 сторінок, 22 рисунки, 5 таблиць. Список
використаних джерел містить 51 найменування.
8
РОЗДІЛ 1
АНАЛІЗ ТЕХНОЛОГІЙ ДЕЦЕНТРАЛІЗОВАНОГО РЕЄСТРУ ДЛЯ
РОЗРОБКИ БЛОКЧЕЙН СИСТЕМИ
1.1. Основні аспекти технології розподіленого реєстру
Розподілений реєстр – це база даних, розподілена між обчислювальними
пристроями або мережевими вузлами. Кожен вузол отримує інформацію від
інших вузлів і зберігає точну копію реєстру. Вузли оновлюються незалежно один
від одного [10]. Головною особливістю цього реєстру є відсутність
централізованого управління. Кожен вузол фіксує всі оновлення реєстру
незалежно від дій інших вузлів. Потім вузол виконує оновлення, щоб
переконатися, що більша його частина повністю наблизиться до остаточної
версії. Алгоритм консенсусу використовується для автоматичного отримання 1
копії реєстру. Після досягнення згоди розподілений реєстр оновлюється, і
остання узгоджена версія реєстру зберігається на кожному вузлі бази даних.
Ця методологія зберігання інформації відрізняється розподілом даних між
значною кількістю комунікаційних вузлів або обчислювальних пристроїв,
синхронізацією та спільним використанням відповідно до розподілених
алгоритмів. Це характеризується відсутністю централізованого розподіленням та
географічним розподілом реплікація бази даних на всіх вузлах зв'язку. Щодо
змісту, це перша база даних, яка повністю усуває потребу в централізованому
сервісі, розподіляє базу даних по всіх вузлах зв'язку, відповідає за перевірку
інформації та системи [2].
Класична база даних представляє собою систему з організованою
структурою, спроектовану для опрацювання, зберігання та модифікації
взаємозалежних даних, переважно великих обсягів. Ці бази даних активно
використовуються для ефективного функціонування Інтернет-мережі, зокрема
для динамічних веб-сайтів із значним обсягом інформації, таких як корпоративні
портали і магазини. Зазвичай такі сайти розробляються з використанням мов
9
програмування серверів, таких як PHP, або на платформі управління вмістом
(CMS), наприклад WordPress, і вони формуються динамічно під час взаємодії між
базами даних та скриптами після отримання запиту від клієнта до веб-сервера.
У випадку розподіленої бази даних будь-який вузол може внести зміни в
реєстр, незалежно від інших вузлів, після чого всі вони узгоджують свої зміни, і
при досягненні консенсусу дані додаються до реєстру. Кожен учасник мережі
має власну ідентичну копію реєстру, а сам процес внесення змін займає лише
кілька хвилин.
Рис. 1.1. Різновид реєстрів: централізований, децентралізований, розподілений
Розподілені реєстри значно знижують вартість довіри та створюють
можливості уникнути довіри до державних установ, банків, нотаріальних контор
та адвокатів [3]. Ці записи втілюють інноваційні парадигми збору та передачі
даних, які можуть революціонізувати спосіб взаємодії окремих осіб, підприємств
та державних установ. Використання розподілених реєстрів, відомих завдяки
криптовалюті, включає в себе електронні, фінансові, статистичні, юридичні
даних – це можливо для всіх типів інформації.
Розподілені реєстри можуть класифікуватися як публічні, федеративні та
приватні. Публічні реєстри відкриті для всіх учасників, які можуть внести зміни
та переглядати інформацію. Федеративні реєстри контролюються групою людей
10
та забезпечують конфіденційність, використовуючись, наприклад, в
банківському секторі. Приватні реєстри обмежені доступом і використовуються
для аудиту та зберігання внутрішньої інформації організацій.
Технологія розподіленого реєстру (DLT) є різноманітною і може зберігати
різні види даних, що робить її використання універсальним у різних галузях, де
необхідне безпечне зберігання інформації.
Блокчейн, як один із типів розподілених реєстрів, використовує
послідовність блоків для досягнення достовірного консенсусу в розподіленій
системі. Ця технологія може існувати без центрального сервера, адже якість
інформації досягається реплікацією бази даних та довірою, заснованою на
обчисленнях. Однак структура блокчейна суттєво відрізняється від інших
розподілених реєстрів, оскільки дані в ньому організовані в блоки та захищені
криптографічними методами.
Блокчейн представляє собою стійко розширюваний реєстр записів, де
можливі лише додавання даних, а зміни чи видалення інформації з попередніх
блоків не допускається. Ця характеристика робить блокчейн ідеальним для
відображення подій, обробки транзакцій, відстеження операцій з активами та
управління записами. В основі блокчейну лежить ланцюжок блоків, який є базою
даних, куди фіксуються дані про всі транзакції в мережі, що перетворює його в
регістр.
Кожна мережа починає свою діяльність з первинного блоку (Genesis block),
до якого поступово приєднуються всі наступні блоки. Кожен блок містить
інформацію про останні транзакції та обмежений розміром, що призводить до
необхідності ланцюжка блоків для функціонування мережі [8].
Хоча кожен блокчейн є розподіленим реєстром, не кожен розподілений
реєстр є блокчейном. Обидва концепти вимагають досягнення консенсусу та
децентралізації між вузлами. Однак в блокчейні інформація організована в
блоки, та можливе лише додавання нових даних. Розподілені реєстри, загалом і
блокчейн зокрема, є концептуальними новаціями в управлінні інформацією, що
знаходять своє застосування в різноманітних галузях. І, хоча блокчейн спочатку
11
використовувався у криптовалютах, його застосування шукається у різних
сферах від державних органів до комерційних організацій, економістів та інших
сфер.
Переваги розподілених реєстрів включають автоматизацію, ефективність та
висока ступінь прозорості, оскільки управління здійснюється Користувачем та
розповсюджується по мережі. Завдяки сучасній розподіленій базі даних
забезпечується високий рівень безпеки системи зберігання даних і стійкість до
злому і маніпуляцій. Також розглядається можливість проведення економічних
та швидкі транзакції відбуваються без посередників та централізованого
управління.
1.2. Відмінності між розподіленим реєстром та класичними базами
даних
База даних (БД) – це систематизований та організований набір інформації.
Серед різних видів БД найбільш поширеною є реляційна база даних (РБД).
Інформацію у реляційних БД можна уявити у вигляді таблиці, що складається з
рядків і стовпців.
Реляційна БД представляє собою групу взаємопов'язаних таблиць, що
базуються на реляційній моделі даних, винайденій Е.Ф. Коддом у 1970 році. Для
взаємодії з цим типом БД використовується декларативна мова програмування
SQL. Серед найпопулярніших систем управління реляційними БД можна
відзначити продукти компаній Microsoft (Microsoft SQL Server), Oracle (Oracle
Database), та IBM (IBM DB2).
Однією з ключових особливостей реляційної бази даних є високий рівень
централізації: всі операції з інформацією, такі як зміна, запит, видалення,
додавання фізично обробляється центральним процесором або сервером,
розташованим в одному місці.
Цими системами керують спеціалізовані організації або окремі особи, і
користувачі взаємодіють із системою у формі запиту-відповіді [10].
12
Рис. 1.2. Вигляд архітектури мережі типу «клієнт-сервер» для розподіленої бази
даних
Іншою важливою категорією баз даних є розподілені бази даних (DDB), які
є мережею взаємопов'язаних баз даних, розкиданих по комп'ютерних мережах.1
транзакції, що використовують інформацію з таких баз даних, обробляються
децентралізовано за участю мереж з різних центрів (ЦП, процесори), і з
розвитком різнорідного Інтернету інформація поширюється, потреба організацій
в обробці і зберіганні великих обсягів неструктурованих і структурованих даних
зростає, і розподілені бази даних розподіляються. він стає все більш
масштабованим. Він виявився найбільш ефективним з точки зору підвищення
відмовостійкості.
Відомі розподілені бази даних включають нереляційні бази даних NoSQL
(MarkLogic, MongoDB тощо).) Містити.).Розподілені бази даних SQL (Microsoft,
Oracle, IBM тощо).І NewSQL (Google Spanner, Clustrix) - це поєднання перших
двох категорій. Всі ці бази даних засновані на архітектурі клієнт-сервер
(рис. 1.2), в якій клієнт ініціює запити на редагування або читання даних, а
сервери, підключені до розподіленої мережі, виконують ці запити для зберігання
13
інформації. Існує також інший вид розподіленої мережі, що відомий як
однорангова пірінгова мережа (peer-to-peer network), де може відсутні виділені
сервери, і кожен такий клієнт одночасно виконує роль сервера (рис. 1.3).
Рис. 1.3. Архітектура мережі виду peer2peer
Пирингові мережі, як системи без визначених серверів, не
використовуються для створення корпоративних баз даних у явному вигляді.
Однак популярним прикладом реалізації такої мережі є протокол BitTorrent, який
дозволяє користувачам надавати файли для завантаження іншим користувачам.
В цьому випадку файли дублюються у всій мережі, і доки хоча б один власник
приймає участь у обміні інформацією, файл залишається доступним для всіх.
Важливо відзначити, що ця мережа є частково децентралізованою, оскільки
без трекера BitTorrent – веб-сайту, що об'єднує користувачів, взаємодія
користувачів неможлива. Таким чином, можна виділити кілька ключових
відмінностей між розподіленими та традиційними базами даних [12]. Перша
відмінність полягає в централізації, оскільки у роботі розподілених баз
14
відповідальність лежить на одному чи декількох центрах. Довіра повністю
покладається на ці центри, і користувачі очікують високого рівня довіри щодо
їхньої діяльності.
У цьому контексті довіра означає надійне, безперервне та послідовне
подання збереженої інформації та забезпечення неперервного доступу. Крім
того, центр відповідає за підтвердження (підтвердження або відхилення) жовтня
та здійснення транзакцій, які є набором транзакцій, що передаються з одного
стану у базі даних в інший.
Друга відмінність полягає в представленні інформації у поточний момент
часу. У традиційних базах кожен клієнт, звертаючись до бази даних, бачить
поточний стан, зазвичай, без можливості перегляду інформації у попередніх
версіях. Сучасні бази часто дозволяють перегляд історії змін, але вони не завжди
надійно перевіряють, що дані не були змінені неправомірно, що виникає
проблеми довіри до адміністратора.
Третя відмінність – це можливість клієнта виконувати операції CRUD
(створення, читання, оновлення, видалення) з інформацією. Клієнти традиційних
баз мають можливість взаємодії з інформацією, вносячи зміни, переглядаючи,
оновлюючи та видаляючи записи.
Розподілені записи займають невизначене місце в ієрархії типів баз даних.
Це може бути пов'язано з плутаниною термінів "база даних" та "реєстр", які часто
використовуються як взаємозамінні. Деякі фахівці описують розподілений
реєстр як один із видів розподілених баз даних. [1]. Використання терміну
"реєстр" може бути визначено шляхом використання фінансових даних в якості
терміну, що представляє реєстр.
Незважаючи на те, що це визначення має загальну схожість із визначенням
розподіленої бази даних (РБД), розподілений реєстр володіє рядом
особливостей. Різниця в децентралізації полягає в тому, що відмінності
полягають у тому, що в традиційних системах управління базами даних (СУБД)
різні частини бази даних можуть знаходитися на різних серверах або вузлах
мережі, розподілений реєстр зберігає повну та оновлену базу даних на кожному
15
вузлі. Перенасичення тут пов'язане з іншою функцією розподіленого реєстру -
відсутністю довіри користувачів до центрального вузла або недовірою один до
одного [6].
Рис. 1.4. Діаграма розподіленої бази даних
Такі умови можуть виникнути, коли користувачі бази даних вважають, що
адміністратор центрального вузла має можливість контролювати інформацію. На
рис. 1.4 і 1.5 показано схематичне зображення розподіленої бази даних і
розподіленого реєстру.
Червона межа на графіку визначає умовну "довірчу межу". У розподіленій
базі даних всі вузли працюють в умовах повної довіри, але в розподіленому
реєстрі довіра повністю відсутня, і кожен вузол, що представляє окрему
компанію, вимагає перевірки отриманої інформації.
В умовах відсутності довіри, база даних, створена з використанням
технології розподіленого реєстру, виглядає як однорангова однорангова мережа
16
з такою архітектурою, всі вузли будуть рівноправними учасниками. На відміну
від традиційних баз даних, в яких вся відповідальність за точність інформації
лежить на ядрі, в розподіленому реєстрі всі вузли беруть участь в цьому процесі.
Рис. 1.5. Діаграма розподіленого реєстру
Кожен учасник постійно створює нові записи у своїй базі даних, тому
кожному вузлу потрібен механізм координації змін у базі даних. Цей механізм
відомий як алгоритм консенсусу.
Ще одна важлива особливість розподіленого реєстру-активне використання
методів шифрування, зокрема, використовуються криптографічно стабільні хеш-
функції, які перетворюють вхідні дані в послідовність бітів певної довжини.
Пари відкритого та приватного ключів також використовуються для підписання
та перевірки повідомлень. Розподілені реєстри відзначаються тим, що зберігають
всю історію транзакцій, використовуючи транзакцію як основну одиницю
17
обліку. Це дозволяє забезпечити незмінність транзакцій та використовувати
криптографію для забезпечення безпеки і анонімності, хоча відзначається
можливість прослідковування історії транзакцій, порушуючи анонімність
учасників мережі.
1.3. Базові механізми побудови технології блокчейн
Починаючи з 2009 року все більшої популярності набувають інформаційні
системи, що базуються на технології блокчейн (англ. block chain). Блокчейн – це
технологія обробки даних, в якій можна виділити такі основні принципи [54]:
− структура зберігання даних є вибудованою за певними правилам
ланцюжок блоків, що містять інформацію;
− кожен блок ланцюжка пов'язаний із сусідніми блоками за допомогою
відомостей про хеш-суму попереднього блоку;
− самі по собі блоки та інформація, що міститься в них, є
загальнодоступними;
− копії ланцюжка блоків зберігаються на різних комп'ютерах.
Блоки ланцюжка складаються з наступних основних елементів:
− «корисні» дані;
− службова інформація;
− хеш-сума попереднього блоку ланцюга;
− хеш-сума поточного блоку ланцюга.
«Корисними» даними може бути будь-яка інформація, у розподіленому
зберіганні якої виникає потреба. Службова інформація може містити, наприклад,
час створення блоку, складність обчислень, довільне число для обчислення хеш-
суми. Хеш-сума попереднього блоку використовується для однозначного
впорядкування блоків. Винятком є хеш-сума попереднього блоку, що вказується
в першому блоці (генезис блоці) – вона, як правило, генерується випадковим
чином. Хеш-сума поточного блоку забезпечує достовірність інформації, що
міститься в блоці, і пов'язує його з наступним блоком ланцюга. У загальному
18
вигляді ланцюжок блоків представлений на рис. 1.6. У процесі розвитку
технології блокчейн основні її принципи також розвиваються та змінюються.
Рис. 1.6. Узагальнена схема ланцюжка блоків
На сьогоднішній день умовно можна виділити п'ять поколінь технології
блокчейн.
Перше покоління технології блокчейн
Перше покоління ланцюжків блоків (блокчейн 1.0) є основою цифрових
систем грошових розрахунків, першим та найбільш популярним представником
яких є запущений у 2009 році біткоін [5]. Одним із головних недоліків біткоїну є
метод обчислення хешу. Оскільки вирішення завдання обчислення хешу
проводиться децентралізовано, переможцем може бути лише один учасник
обчислень (майнер).
Отже, більшість роботи, проведеної майнерами, виконується марно, так як
виконувані обчислення не виконують жодної корисної мети. На грудень
2021 року загальна обчислювальна потужність (хешрейт) майнерів біткоїну
становить приблизно 174 квінтильйону хешей в секунду. Звідси випливає ще
один недолік – тенденція до централізації обчислень. На ранніх етапах
переможцями могли ставати майнери одинаки, але на сьогоднішній день, зі
збільшенням загальної обчислювальної потужності майнерів і, як наслідок,
складності обчислень, єдиним способом обчислити хеш швидше решти (і
19
отримати винагороду) є об'єднання майнерів. Відповідно до звіту фірми з
управління цифровими активами CoinShares, за станом12 на червень 2021 року
близько 65% ефективної обчислювальної потужності обладнання, задіяного в
видобутку криптовалюти, зосереджено у Китаї.
Друге покоління технології блокчейн
Друге покоління ланцюжків блоків (блокчейн 2.0) підтримує виконання
функцій реєстрації, підтвердження та передачі не тільки валюти, а й інших видів
активів – всіх видів контрактів та власності. Протоколи блокчейн другого
покоління можуть використовувати як розподілений журнал записів біткоїну,
так і створювати власні розподілені журнали записів.
Можна виділити наступні напрямки застосування технології блокчейн
другого покоління:
− розумні активи;
− розумні контракти;
− гаманці;
− децентралізовані додатки (Decentralized Applications, DApps) [6],
децентралізовані автономні організації та корпорації (Decentralized
Autonomous Organization/Corporation, DAO/DAC) [7–5],
децентралізовані автономні товариства (Decentralized Autonomous
Society, DAS);
− штучний інтелект.
Розумні активи дозволяють робити угоди з будь-якою власністю – як
матеріальною (наприклад, нерухомістю, транспортними засобами), так і
віртуальною (акціями, замовленнями, авторськими правами тощо). Після
реєстрації активу у розподіленому журналі записів, управління власністю на
нього переходить до власника секретного ключа. Передача секретного ключа
означає передачу власності. Загальний зміст розумних контрактів випливає з ідеї
розумних активів. Розумний контракт – це спосіб здійснення угоди у
розподіленому журналі записів, заснований на використання криптовалюти та
розумних активів для формування угод за допомогою технології блокчейн.
20
Прикладом розумного контракту є транзакція, що знаходиться в розподіленому
журналі записів незадіяним, поки не настане певна дата або подія – передача
спадщини у день смерті власника активу, здійснення купівлі або продажу на
біржі з появою будь-якої новини, автоматична передача прав на власність від
фінансової компанії фізичній особі після всіх виплат за позикою, тощо.
Повсюдне впровадження механізмів керування доступом (QR-коди,
доступ до Wi-Fi, датчики, програмний код тощо), заснованих на застосуванні
технології блокчейн, дозволить значно спростити та прискорити процедуру
забезпечення доступу. У частині судової практики, точно укладені угоди та
впровадження автоматизованих механізмів їх виконання можуть суттєво
зменшити кількість суперечок [20]. Спільне використання розумних активів та
розумних контрактів уможливлює побудову системи кредитування,
використовуючи як заставу розумні активи позичальника, що знижує витрати на
страхування від шахрайства та неправомірних дій і, як наслідок, здатне зробити
кредитування значно безпечнішим і вигіднішим [61]. Відмінною рисою
розумного контракту є необхідність довіри між учасниками – розумний контракт
виконується автоматично, що працює на технології блокчейн кодом, який не
залишає місця для людського чинника Однак, на сьогоднішній день застосування
розумних контрактів вимагає серйозного доопрацювання нормативно-правової
бази, що регулює процедури виконання контрактних зобов'язань [32].
Третє покоління технології блокчейн
Одним із ключових напрямків розвитку технології «блокчейн» третього
покоління є застосування методу, заснованого на застосуванні прямих
ациклічних графів (Directed Acyclic Graph, DAG). Прямі ациклічні графи – це
структура обробки даних, в основі якої лежить топологічне дерево.
Розташування блоків у такій структурі не обов'язково має бути послідовним (як
у технологіях блокчейн 1.0 та 2.0) та може забезпечувати прямі зв'язки між будь-
якими транзакціями ланцюга. Ланцюг у такій структурі починає формуватися
вже не з блоків, а з транзакцій. Хеш при цьому обчислюється з батьківської
транзакції і передається до наступної, пов'язаної з нею, транзакції. Основними
21
перевагами застосування прямих ациклічних графів є швидкість, простота
забезпечення зростання та підвищена безпека системи обробки даних. У
ланцюжку блоків першого покоління для створення нового блоку потрібно
близько 10 хвилин (біткоїн). Блок ланцюжки другого покоління створюється за
20 секунд (Ethereum). Із застосуванням прямих ациклічних графів пропадає
необхідність збирання транзакцій у блоки, що в теорії забезпечує проведення
сотень тисяч транзакцій на секунду. Відмова розробників систем, заснованих на
технології блокчейн, від високої складності обчислення хешу призводить до
необхідності об'єднання майнерів у пули, що, у свою чергу, призводить до
більшої децентралізації мережі та, як наслідок, більшої безпеки.
Загалом, незалежно від застосування прямих ациклічних графів, третє
покоління ланцюжків блоків дозволяє реалізовувати розв'язання завдань, не
пов'язаних з грошовим обігом та ринковими транзакціями. Прикладами таких
рішень є:
− служби ідентифікації (система безпеки електронної пошти KeyID,
системи зіставлення 32-розрядних буквено-цифрових ідентифікаторів з
ім'ям, що легко читаються. OneName та BitID, системи ідентифікації на
базі адреси біткоін-гаманця типу Bithandle);
− служби атестації, які забезпечують доказ авторства (наприклад,
вебслужба Proof of Existence) та цілісність документів: існування
заповітів, договорів, довіреностей, медичних свідоцтв, боргових
розписів);
− персоніфікований уряд, який забезпечує моментальні виплати
криптовалюти активним учасникам соціальних взаємовідносин
(наприклад, переказ коштів потерпілим внаслідок дорожньо-
транспортної пригоди);
− керуючі служби, що переймають на себе частину традиційних
державних послуг (наприклад, укладання шлюбів з наступною
прив'язкою договору опіки над дитиною, прав володіння нерухомістю
тощо);
22
− системи ідентифікації особи, які забезпечують людей міжнародними
паспортами, які не прив'язані до конкретної держави (проект World
Citizien [33]);
− рішення, спрямовані на боротьбу з цензурою в Інтернеті (проекти по
децентралізації DNS (Namecoin, забезпечує функціонування доменних
імен верхнього) рівня .bit), WikiLeaks (wikileaks.bit), записів Twitter
(проект Alexandria) і т.п.).
Четверте покоління технології блокчейн
Прикладами рішень, основаних на технології блокчейн четвертого
покоління, є Opporty Plasma Cash, PolkaDot, Universa та EOS.
Opporty Plasma Cash – це рішення, спрямоване на підвищення
масштабування ланцюжків блоків. Оптимізація навантаження на мережу
досягається зменшенням даних, переданих із дочірніх ланцюжків у кореневий
ланцюжок блоків. Це дозволяє знизити комісійні за транзакції для смарт-
контрактів та децентралізованих додатків. У основі цього рішення лежить
твердження про те, що користувачеві необхідно мати відомості лише про
транзакції, що містять монети, які вони хочуть відстежувати. Таким чином, для
користувача відсутня необхідність завантаження цілих блоків ланцюжка. На
сьогодні це рішення дозволяє досягти швидкості роботи мережі в 5000
транзакцій у секунду.
PolkaDot – це блокчейн-екосистема, що забезпечує об'єднання
різноманітних ланцюжків (обмін даними між ланцюжками, заснованими на
різних варіаціях технології "блокчейн"), а також загальну інформаційну безпеку.
У перспективі також планується забезпечення роботи децентралізованих
додатків та інших сервісів. В якості механізму досягнення консенсусу у проекті
використовується доказ концепції. До складу екосистеми PolkaDot входять такі
основні компоненти: сполучна мережа (Relay Chain) – центр системи, що
забезпечує обмін транзакціями між ланцюжками, досягнення консенсусу, а
також загальну безпеку екосистеми; парачейни (Parachains) – різнорідні
ланцюжки блоків, які забезпечують проведення транзакцій; мости (Bridges) –
23
своєрідні посилання на ланцюжки блоків, що мають власні механізми
досягнення консенсусу. Серед основних суб'єктів екосистеми PolkaDot можна
назвати: колаторів (керують парачейнами, збирають транзакції користувачів,
підтверджують блоки з урахуванням алгоритму Proof of Validity; одержують
нагороду у вигляді 100% комісій мережі); валідаторів (підтверджують
інформацію, що міститься в блоках парачейнів; додають нові блоки в ланцюг-
ретранслятор; за верифікацію даних одержують токени проекту); номінатори
(підбирають надійних валідаторів, забезпечуючи захист ланцюга-
ретранслятора); фішермени (відстежують порушення з боку валідаторів; за
виявлені факти порушень одержують значну нагороду). Усього випущено 1 млрд
монет. Передбачається, що власники токенів повинні мати повний контроль над
екосистемою, винагороджуватися за хорошу поведінку та втрачати токени за
погану. PolkaDot – проект 2016 року, авторства Гевіна Вуда. Нині управляється
швейцарським фондом Web3.
EOS – це блокчейн-платформа, призначена для забезпечення роботи
децентралізованих додатків. Акцент, зроблений на масштабованість, а також
нульові комісії за транзакції роблять її конкурентом Ethereum. Відносна
централізація забезпечує швидкість роботи тисячу транзакцій в секунду. За
заявою розробника, платформа здатна забезпечити обробку кількох мільйонів
транзакцій за секунду. У якості алгоритму консенсусу використовується
делегування доказу частки (Delegated Prof of Stake). Відносини між ними
регулюються смарт-контрактами. Творцем платформа є компанія Block.one. ICO
EOS організовано у червні 2017 року та за рік забезпечило збирання понад
$4 млрд. Запуск мережі відбувся у червні 2018 року.
П'яте покоління технології блокчейн
До технічного рішення, заснованого на п'ятому поколінні технології
блокчейн, можна віднести проект Telegram Open Network (TON). TON – це
платформа для створення блокчейн-екосистеми, що забезпечує зберігання
персональних даних («телеграм паспорт») у хмарному сховищі та реєстрації в
сервісах, що вимагають підтвердження особистості.
24
TON складається з наступних основних елементів [14]:
− ланцюжок блоків (TON Blockchain) – основний компонент TON [5];
− мережа (TON Network) – забезпечує комунікації всіх компонентів TON;
− служби та програми (TON Services and Applications) – платформа для
прикладних сервісів;
− система оплати (TON Payments) – забезпечує платежі.
Основні типи блокчейн-систем
Загалом блокчейн-системи можна підрозділити на дві групи, зумовлені
можливістю розмежування – публічні (Public Blockchain) та приватні (Private
Blockchain). У публічних системах доступ до участі в роботі мережі відкритий,
будь-хто може вносити нові записи та отримувати доступ до читання існуючих.
Подібні рішення доцільно застосовувати у криптовалютах. Прикладами таких
систем є Біткоїн, Ethereum, Litecoin.
У приватних системах для внесення нових записів чи читання існуючих
потрібно розширення. Серед областей застосування таких систем можна
виділити корпоративні системи. Прикладами таких систем є Hyperledger,
Hashgraph, R3 Corda та Quorum.
Доцільність застосування технології «блокчейн»
У роботі [7] показано доцільність застосування технології блокчейн, а
також для уточнення типу блокчейн-системи необхідно звернути увагу на такі
основні умови обробки даних:
− наявність необхідності у зберіганні даних;
− наявність необхідності запису даних кількома користувачами;
− відсутність довіреної третьої сторони, яка підтверджує дані;
− наявність або відсутність необхідності в анонімності;
− наявність або відсутність необхідності у публічній перевірці даних (для
визначення необхідності застосування публічної ексклюзивної системи
(Public Permissionless Blockchain) або приватної ексклюзивної системи
(Private Permissionless Blockchain)).
25
1.4. Головні складові механізмів безпеки технології blockchain
У загальних термінах, технологія блокчейн представляє собою
новаторський підхід до розробки розподілених баз даних. Цей термін
використовується в галузі комп'ютерних наук для пояснення обміну даними та
їх структурування в системі. Блокчейн передбачає управління та контроль
розподіленої бази даних групою осіб з метою спільної взаємодії та колективного
зберігання інформації. Вся інформація представлена у вигляді послідовного
ланцюга блоків.
Блоки є непідвищуваними файлами, в яких фіксуються дані про проведені
транзакції до моменту їх створення. Кожен блок містить також всі транзакції, які
не включені в попередні блоки. При створенні нового блоку він завжди додається
в кінець ланцюга блокчейну.
Операція або транзакція включає передачу інформації від одного адресу до
іншого, аналогічно фінансовим транзакціям. Мережа працює за схожим
алгоритмом, пересилаючи інформацію між учасниками.
Рис. 1.7. Схема передачі даних у асиметричних криптосистемах
Базові принципи блокчейн включають використання різноманітних
технологій та методів шифрування, таких як смарт-контракти, хеш-таблиці,
асиметричні алгоритми шифрування, алгоритм консенсусу, хеш-функції та
26
майнінг. Дозволяючи всім учасникам працювати в децентралізованій мережі,
блокчейн забезпечує безпеку, незмінність та анонімність обміну інформацією.
Асиметричні алгоритми шифрування
Алгоритм асиметричної криптографії-це набір методів інформаційної
безпеки, які використовують 2 ключа в криптографії (рис. 1.7).
Шифрувальний процес виконується першим ключем, який є відкритим і не
придатним для розшифрування. Другий ключ, який є секретним,
використовується лише для розшифрування. Важливо відзначити, що відкритий
ключ не може замінити секретний ключ у виконанні цієї процедури, і обидва
ключі абсолютно унікальні [18].
Криптографічна хеш-функція використовується для перетворення будь-
якої інформації у рядок цифр і букв. Важливо відзначити, що функції, які
використовуються у технології blockchain, працюють лише в одному напрямку.
Це означає, що відновлення початкової інформації за отриманим хешем є
неможливим.
У випадку Bitcoin, наприклад, хеш складається з 64 символів або 256 біт.
На перший погляд, неймовірно, що безмежна кількість інформації може бути
унікально перетворена в один рядок з 64 символів. Проте всі криптографічні
функції працюють саме таким чином, маючи найменшу ймовірність створення
колізій, тобто ситуацій, коли різні масиви інформації отримують однакові
значення хешу.
Розглянемо деякі найпоширеніші криптографічні хеш-функції, які
використовуються у технології blockchain.
SHA-256 – це алгоритм криптографічної хеш-функції, який створює хеш з
256 біт. Його особливість полягає в тому, що розшифрування та злам його дуже
складні завдання через велику кількість варіантів перебору. Він опрацьовує
інформацію, розподілену на 512-бітні блоки, і на виході надає 256-бітний хеш-
код.
MD5 – це алгоритм, який генерує криптографічний рядок завдовжки 128
біт, що є унікальним для будь-якої інформації. Цей метод застосовується для
27
створення унікальних ідентифікаторів людини або інших даних. MD5
призначений для застосування в додатках цифрового підпису, де великі обсяги
інформації надійно стискаються перед зашифруванням за допомогою ключа.
Хеш-таблиця
Хеш-таблиця-це структура даних, яка використовується для зберігання
всіх пар ключ-значення, і положення елемента повністю залежить від значення
елемента. У цих таблицях реалізовано 3 типи операцій: видалення по ключу,
додавання нової пари по типу ключ-значення та пошук по ключу.
Існує 2 основних типи хеш-таблиць:
− таблиці з явними адресами – ці таблиці використовують безперервний
масив як сховище інформації.
− таблиці лінійного вирівнювання – у даних таблицях здійснюється
пошук вільних комірок до тих пір, поки не будуть знайдені вільні
комірки. Іншими словами, якщо ви намагаєтеся вставити дані, а
клітинка вже заповнена, вона перейде до наступної комірки, поки ви не
знайдете порожню клітинку.
Рис. 1.8. Розв’язання колізій за допомогою ланцюгів
Однією з основних проблем хеш-таблиць є те, що зіткнення можуть
виникати, коли хеш-функція недостатня або коли розмір таблиці недостатній
28
щодо кількості ключів. Це означає, що 1 осередок може містити 2 ключа
(рис. 1.8).
Оброблення зіткнення, якщо знаходиться посилання на елемент у
зв'язаному списку, намагаються вставити в певну комірку хеш-таблиці. У цьому
випадку вам просто потрібно додати новий елемент до списку. Під час пошуку
подивіться на ланцюжок і порівнюйте ключі один з одним, поки не знайдете
потрібний елемент. Основним недоліком цієї таблиці є те, що якщо у вас довгий
масив заповнених комірок, середній час пошуку елементів у таблиці буде
довшим. Для вирішення цієї проблеми використовується подвійне хешування.
Основна ідея полягає у використанні іншої хеш-функції для визначення кроку
зміщення у разі зіткнення в комірці; це пошук вільного місця замість лінійної
прокрутки на 1 крок.
У разі відкритої адресації (закритого хешування) всі елементи таблиці
зберігаються в самій хеш-таблиці без використання пов'язаного списку
(рис. 1.9). На відміну від методу лінійного редагування, хеш-таблиця із закритим
хешем може утворитися, коли вся таблиця повністю заповнена, і додавання
нових елементів неможливо.
Рис. 1.9. Приклад розв’язання колізій в хеш-таблиці з відкритою адресацією
29
Розв'язанням цієї проблеми є динамічне розширення розміру хеш-таблиці,
одночасно вносячи зміни до самої структури. Основною складністю при
розробці таких таблиць є складний механізм видалення елемента з таблиці. Після
видалення інформації з хеш-таблиці виникає ситуація, коли неможливо
здійснити пошук ключа, який раніше заповнював комірку під час вставки. Таким
чином, потрібно вжити певних заходів для ідентифікації всіх порожніх клітинок.
Смарт-контракти
Смарт-контракти подібні до звичайних контрактів, які регулюють купівлю
та продаж різних активів, таких як нерухомість, акції або гроші. Однак вони
функціонують без посередництва третіх сторін (рис. 1.10).
Рис. 1.10. Графічне представлення смарт-контракту
Припустимо, що громадянин "А" бажає придбати квартиру у громадянина
"Б". Замість традиційного переказу коштів, він може скористатися блокчейном
та криптовалютою. Громадянин "А" отримає квитанцію, яка буде включена до
смарт-контракту.
Якщо громадянин "Б" передає ключі протягом визначеного терміну,
громадянин "А" автоматично здійснює платіж. У випадку невиконання умов,
система вимагатиме повернення коштів. Таким чином, обов'язковим є виконання
умов обох сторін.
30
Переваги смарт-контрактів включають:
− Захист від помилок: автоматизовані смарт-контракти уникнуть
помилок, які можуть виникнути при ручному укладанні договору.
− Захист від втручання: жодна третя сторона не може втрутитися у
договір, оскільки рішення приймаються автоматично.
− Вигода: відсутність необхідності сплачувати комісію посередникам або
третій стороні.
− Безпека: Смарт-контракти захищені від хакерів завдяки високому
рівню кодування, який неможливо підробити.
− Швидкість: обробка документів здійснюється швидше, ніж у
реальному житті.
Стандартний смарт-контракт складається з трьох основних частин:
цифрових підписів сторін, предмета угоди та математично-описаних умов угоди,
які мовами програмування вводять інформацію до договору.
Рис. 1.11. Приклад хеш-дерева
31
Поняття майнінгу
Основними учасниками процесу майнінгу є майнери, вузли мережі, які
отримують транзакції для подальшого додавання в блок. Коли транзакція
завершена, інші вузли приймають транзакцію для наступної перевірки. Потім він
додає їх до певного" пулу " пам'яті для створення блоку та об'єднує кілька жовтня
в 1 блок. Перед початком транзакції майнер додає транзакцію, за жовтень якої
буде встановлена комісія за його роботу. Після хешування функції процес
об'єднується в хеш-дерево, де зіставляється, щоб досягти «вершини дерева»
(рис. 1.11).
Ідентифікатор кожного блоку генерується шляхом додавання поточного
хешу до хешу попереднього блоку та додавання випадкового числа відповідно
до протоколу. Можуть бути випадки, коли 2 вузли додають перевірений блок, і
користувач починає перевіряти блок на основі даної інформації, але це
неправильно. У цьому випадку конкурс триватиме до тих пір, поки не будуть
отримані 2 блоки на основі 1 з 1 попереднього блоку.
Рис. 1.12. Забезпечення консенсусу в блокчейн-мережі
32
Алгоритм консенсусу
Даний алгоритм є ключовим компонентом технології blockchain,
відповідальним за забезпечення цілісності та безпеки розподіленої системи
(рис. 1.12).
Оскільки блокчейн є децентралізованою системою і не має центрального
органу для прийняття рішень, мережі необхідно самостійно вирішувати питання.
Ці алгоритми представляють лише декілька підходів до досягнення консенсусу
в блокчейн-мережах, і розробники можуть комбінувати їх або використовувати
різні модифікації для вдосконалення характеристик мережі.
Механізми консенсусу гарантують виконання протоколу та забезпечують
достовірність всіх транзакцій. Відмінність між алгоритмом та протоколом
заключається в тому, що перший представляє собою набір дій та правил, які
система повинна дотримуватися для досягнення своєї мети, тоді як алгоритм є
механізмом, який підтверджує виконання цих протоколів.
Висновки до першого розділу
Під час аналізу технологій децентралізованого реєстру для розробки
блокчейн-системи було виявлено, що вони сприяють вирішенню проблем,
пов'язаних із безпекою та прозорістю у сучасних інформаційних системах.
Використання розподіленого реєстру дозволяє уникнути єдиного центру
управління, зменшуючи ризики маніпуляцій та зловживань. Технології блокчейн
забезпечують високий рівень надійності за рахунок розподіленості даних та
застосування криптографії.
Важливим елементом аналізу було визначення варіативності алгоритмів
консенсусу, таких як Proof-of-Work, Proof-of-Stake, Delegated-Proof-of-Stake, які
визначають правила прийняття рішень та обрання нових блоків. Ці алгоритми
впливають на продуктивність, вартість та довкілля, що стає важливим у виборі
підходу для конкретного застосування. Крім того, слід відзначити, що технології
децентралізованого реєстру застосовуються у різних галузях, від фінансів до
логістики та охорони здоров'я, що свідчить про їхню універсальність та широкі
33
можливості в сучасному суспільстві. У зв'язку з ростом популярності та
розвитком технологій децентралізованого реєстру слід звернути увагу на пошук
оптимальних рішень з урахуванням конкретних вимог та обмежень кожного
конкретного проекту.
34
РОЗДІЛ 2
ДОСЛІДЖЕННЯ ОСНОВНИХ МЕХАНІЗМІВ БЕЗПЕКИ ТЕХНОЛОГІЇ
БЛОКЧЕЙН
2.1. Класифікаційна схема мережі blockchain
Блокчейн – це структура даних, яка дозволяє додавати нові записи до
розподіленої бази даних, відкритої для різних незалежних учасників. Існує 3
основних типи блокчейнів: публічний, приватний та гібридний.
Публічний блокчейн є відкритим ресурсом, доступним для будь-якого
охочого. Ці мережі іноді називають "безправними", оскільки вони не визначають
права користувачів для взаємодії з технологією. Це не зменшує його
захищеність; навпаки, публічний блокчейн забезпечує високий рівень безпеки та
самоуправління. Багато вузлів ускладнюють фальсифікацію даних, оскільки
будь-які зміни потрібно внести у всі бази. Хоча публічний блокчейн є відкритим
і прозорим, його головним недоліком є низька продуктивність через велику
кількість вузлів, які витрачають час на перевірку транзакцій. Ця архітектура
також обмежена масштабованістю через технічні обмеження вузлів, які не
можуть значно збільшити продуктивність. Зі збільшенням кількості вузлів
виникає проблема великого енергоспоживання [16].
Приватний блокчейн є системою із чітко визначеними учасниками, яка
часто використовується компаніями для внутрішнього аудиту. В таких системах
доступ надається лише обраним користувачам, оскільки центральний орган
(підприємство) відповідає за створення, перевірку та список учасників, які
можуть переглядати транзакції. У приватному блокчейні можливі зміни записів,
що відрізняє його від систем із публічним блокчейном, де дані неможливо
змінити чи видалити. Учасники взаємознайомі, але деталі транзакцій
залишаються приватними. Ця система корисна для компаній, які хочуть
підвищити ефективність без публічного доступу до своїх транзакцій та
потребують контролю над учасниками мережі.
35
Приватний блокчейн – це тип блокчейну, в якому доступ до мережі
обмежений дозволеними учасниками. Це відрізняє його від публічного
блокчейну, в якому будь-хто може брати участь у мережі та перевіряти
транзакції.
Приватні блокчейни часто використовуються організаціями, які хочуть
забезпечити конфіденційність та контроль своїх даних. Вони також можуть бути
використані для підвищення продуктивності та ефективності операцій в
залежності від умови роботи.
Переваги приватних блокчейнів:
− Конфіденційність. Приватні блокчейни забезпечують конфіденційність
даних, оскільки доступ до мережі обмежений дозволеними
учасниками. Це може бути важливо для організацій, які обробляють
чутливі дані, такі як особисті дані або комерційна інформація.
− Контроль. Приватні блокчейни забезпечують контроль над мережею,
оскільки організація, яка створює мережу, контролює, хто може брати
участь у мережі та мати доступ до даних. Це може бути важливо для
організацій, які хочуть захистити свої активи та інтелектуальну
власність.
− Продуктивність. Приватні блокчейни можуть бути більш
продуктивними, ніж публічні блокчейни, оскільки вони не потребують
такого великого числа вузлів для перевірки транзакцій. Це може бути
важливо для організацій, які обробляють великі обсяги даних.
Недоліки приватних блокчейнів:
− Централізованість. Приватні блокчейни є централізованими, оскільки
організація, яка створює мережу, контролює мережу. Це може бути
недоліком, оскільки це може призвести до ризику злому або
зловживання.
− Вартість. Приватні блокчейни можуть бути дорожчими, ніж публічні
блокчейни, оскільки організація, яка створює мережу, несе витрати на
створення та обслуговування мережі.
36
Приклади приватних блокчейнів:
− Quorum – це приватна блокчейн-платформа, заснована на технології
Ethereum. Quorum розроблена компанією JPMorgan Chase для
фінансових установ.
− Hyperledger Fabric – це відкрита платформа для розробки розподілених
застосунків, яка підтримує приватні мережі. Hyperledger Fabric
використовується різними організаціями, включаючи урядові установи
та підприємства.
− R3 Corda – це платформа для розробки розподілених застосунків,
орієнтованих на фінансові послуги. Corda підтримує приватні мережі.
Приватні блокчейни все ще перебувають на ранніх етапах розвитку, але
вони мають потенціал для революціонування способу, яким ми взаємодіємо з
цифровими даними.
Рис. 2.1. Публічна та приватна архітектура мережі blockchain
Гібридний блокчейн представляє собою розподільну мережу, управліну за
допомогою визначених заздалегідь вузлів. Такі системи є комбінацією
публічного та приватного блокчейнів. Подібно до приватних систем, гібридний
блокчейн може мати єдину точку відмови у випадку хакерської атаки, проте ці
37
блокчейн системи використовують вдосконалені криптографічні методи для
підвищення рівня безпеки аудиту. Керівництво в такій мережі не здійснюється
одним центральним органом, але за допомогою кількох схвалених користувачів.
Гібридний блокчейн представляє собою сполучення централізованої та
децентралізованої системи, що дозволяє контролювати кількість користувачів,
які можуть перевіряти транзакції [8].
Гібридний блокчейн – це тип блокчейну, який поєднує в собі функції
публічного та приватного блокчейну. У публічному блокчейні будь-хто може
брати участь у мережі та перевіряти транзакції. У приватному блокчейні доступ
до мережі обмежений дозволеними учасниками. Гібридний блокчейн пропонує
переваги обох типів блокчейнів. Він забезпечує прозорість і безпеку публічного
блокчейну, а також конфіденційність і контроль приватного блокчейну.
Існує кілька різних способів реалізації гібридного блокчейну. У деяких
випадках гібридний блокчейн може складатися з двох окремих блокчейнів, один
публічний і один приватний. У інших випадках гібридний блокчейн може бути
єдиною мережею, яка має різні рівні доступу для різних учасників.
Прикладів гібридних блокчейнів:
− Hyperledger Fabric – це відкрита платформа для розробки розподілених
застосунків. Hyperledger Fabric підтримує різні типи мереж, включаючи
приватні, публічні та гібридні.
− Corda – це платформа для розробки розподілених застосунків,
орієнтованих на фінансові послуги. Corda підтримує гібридні мережі, в
яких деякі учасники мають доступ до всієї інформації, а інші мають
доступ лише до частини інформації.
− XinFin – це блокчейн-платформа, яка поєднує в собі технології
Ethereum та Quorum. XinFin підтримує гібридні мережі, в яких деякі
транзакції є публічними, а інші є приватними.
Гібридні блокчейни все ще перебувають на ранніх етапах розвитку, але
вони мають потенціал для революціонування способу, яким ми взаємодіємо з
цифровими даними.
38
Мережі блокчейн класифікуються за різними критеріями. За доступністю,
вони можуть бути публічними (доступними для всіх, такі як Bitcoin та Ethereum)
або приватними (з обмеженим доступом). За консенсусом, використовуються
різні механізми, такі як Proof of Work, Proof of Stake, Delegated Proof of Stake, і
інші. За спрямованістю, деякі блокчейни орієнтовані на обіг криптовалют, тоді
як інші покликані виконувати смарт-контракти.
Щодо структури, блокчейни можуть бути одноланцюжковими (де новий
блок додається до попереднього) або багатоланцюжковими, використовуючи
паралельні ланцюги. За функціональністю, вони поділяються на універсальні
(застосовуються для різних цілей) та спеціалізовані (розроблені для конкретних
завдань або галузей). Ця класифікація допомагає врахувати різноманітні аспекти,
такі як призначення, консенсус-механізми та функціональність, щоб краще
розуміти різновиди мереж блокчейн та їх використання.
2.2. Структура ланцюга блокчейн та принцип його роботи
Ланцюжок блоків складається з 3 основних компонентів: мережі,
ланцюжка блоків і керуючого блоку. Блок діє як структура даних, яка опрацьовує
запити та розподіляє їх між вузлами мережі.
У блокчейн-мережі блокчейн містить дані про рух інформації в системі.
Блок складається з 2 частин: заголовка і корпусу. Останній включає перелік змін,
що розташовані в поточному блоку і призначені для передачі в мережу
блокчейнів. Заголовок містить інформацію, яка забезпечує стійкість всієї мережі.
Класична назва мережі блокчейн включає наступні поля:
− Хеш-значення попереднього блоку.
− Номер версії-поточна версія блоку.
− Мітка часу, яка вказує на створення блоку.
− Хеш усіх транзакцій у поточному блоці.
− Біти – максимальне число, що не переважає хеш блок.
− Nonce – це числовий параметр, який встановлюється під час майнінгу,
тому хеш цілого блоку буде меншим за певне значення.
39
Ці 6 полів організовують заголовок блоку. Решта блоку-це транзакція, яку
майнер вибирає для включення в блок. Алгоритм Merkle використовується на
етапі його створення. Алгоритм використовується для отримання хешу всіх
транзакцій у блоці, що сприяє обчисленню хешу для всього блоку та можливий
розмір блоку визначаються в різних реалізаціях мережі блокчейнів.
Хеші використовуються для швидкого розрізнення одного набору
інформації від іншого без порівняння кожного біта. Цей процес значно
прискорює перевірку інформації. Кожен блок має свій власний заголовок, корінь
дерева Merkle, хеш попереднього блоку та включає транзакції. Кожен блок
містить одну або більше транзакцій і змішується з партнером або самим собою,
якщо партнера немає. Ці транзакції виконуються до того часу, поки не буде
отримано один кеш, який є коренем дерева Меркле, для перевірки достовірності
блоку та правильного порядку всіх транзакцій.
Рис. 2.2. Співвідношені блоки, які утворюють зв'язаний список
Кожен учасник мережі обробляє базу транзакцій, яку представляє ланцюг
блоків. Повна копія цього ланцюга містить усі транзакції, які відбулися в системі.
Транзакція залишається непідтвердженою до того моменту, поки інформація про
неї не об'єднана в спеціальній формі - блоках. Від кожного блоку в ланцюгу існує
40
лише один унікальний шлях до нульового блоку. Слідуючи за блоками від
нульового блоку, можна спостерігати розгалуження для кожного наступного
блока. Оскільки блоки створюються різними майнерами, може виникнути
ситуація, коли один і той же блок служить попередником для двох наступних.
Кожен блок може містити загальну інформацію про транзакції, а також деталі
лише щодо тих транзакцій, які проводяться в межах цього конкретного блоку.
Кожна гілка займає однакове положення, поки не стане на 1 коротше (рис. 2.3).
Система автоматично виявляє довгі ланцюжки, ігноруючи короткі гілки.
Транзакції, класифіковані за короткими гілками, втрачають свій затверджений
статус і відхиляються [8].
Рис. 2.3. Базова послідовність блоків в ланцюгу
41
Система зберігання даних утримує інформацію щодо всіх змін у
незашифрованій формі. Щоб уникнути подвійних витрат, використовуються
часові мітки, які застосовуються шляхом поділу ланцюжка на блоки. Кожен
новий блок перевіряє транзакції, що містяться в попередньому блоці.
Блокчейн – це однорангова система без центрального вузла, керована
потоком інформації децентралізації. Централізоване управління здійснюється
шляхом організації великої кількості користувачів. На додаток до
децентралізованим структурам цифрові токени використовуються для захисту
від потенційних загроз для мережі. жовтень. Основним компонентом
програмного забезпечення є комп'ютерне обладнання, що містить всі вузли
(рис. 2.4).
Рис. 2.4. Принцип роботи блокчейн-мережі
Повний вузол представляє собою особистий комп'ютер, розташований у
різних місцях, який забезпечує неперервну функціональність мережі. Мережа
42
блокчейнів може бути представлена у вигляді комп'ютера, на якому запущена
програма з алгоритмом, призначеним для захисту системи, і кожен вузол містить
точну копію всіх змін, введених в ланцюжок блоків.
Обслуговування таких вузлів є складним завданням і вимагає великих
інвестицій, тому управління транзакціями не є безкоштовним. Принцип роботи
блокчейн-мережі можна описати в чотирьох основних етапах:
Створення блоку
Блокчейн складається з блоків, які містять дані. Кожен блок містить хеш
попереднього блоку, а також дату створення блоку та список транзакцій, які були
включені до блоку. Хеш – це унікальна послідовність символів, яка генерується
для кожного блоку. Щоб створити новий блок, учасник мережі, який називається
майнером, повинен вирішити математичну задачу. Задача ця дуже складна, тому
майнери використовують потужні комп'ютери. Перший майнер, який вирішить
задачу, отримує винагороду за додавання блоку до блокчейну.
Перевірка блоку
Після того, як новий блок створений, він повинен бути перевірений іншими
учасниками мережі. Цей процес називається консенсусом.
Додання блоку до блокчейну
Якщо блок перевірений і прийнятий іншими учасниками мережі, він
додається до блокчейну. Блокчейн постійно зростає, оскільки до нього
додаються нові блоки.
Доступ до блокчейну
Блокчейн – це відкритий реєстр, тому будь-хто може отримати доступ до
нього. Це означає, що будь-хто може перевірити транзакції, які були включені до
блокчейну. Щоб отримати доступ до блокчейну, можна використовувати
спеціальне програмне забезпечення, яке називається блокчейн-клієнтом.
Блокчейн-мережі все ще перебувають на ранніх етапах розвитку, але вони
мають потенціал для революціонування способу, яким ми взаємодіємо з
цифровими даними.
43
2.3. Основні властивості безпеки даних blockchain мережі
Децентралізація мережі blockchain
Децентралізація – це процес розподілу інформації з боку загального
глобального керівного органу. Цей тип системи управління вже давно
використовується багатьма компаніями, але децентралізовані системи почали
з'являтися після появи технології блокчейн. Децентралізація в мережі блокчейнів
досягається за рахунок відсутності центрального сервера, на якому всі учасники
ланцюжка рівні. Підтвердження змін в цій системі здійснюється учасниками
особисто. Технологія передбачає використання декількох копій даних для
розподілу даних та обчислювальної потужності по всьому світу, запобігання
втратам та мінімізації або скидання впливу DDoS-атак.
Децентралізація забезпечує високий рівень збереження інформації та
безпеки змін. Дані для всіх транзакцій зберігаються кожним користувачем, а
транзакції контролюються кількома незалежними вузлами, тому система взагалі
не може бути змінена. Фінансова структура з використанням локальної системи
знижує безпеку і швидкість транзакцій, які залежать від ємності і робочого
навантаження локального сервера. Завдяки великій кількості учасників
блокчейн-мережі по всьому світу потужність і швидкість значно зросли.
Основна перевага децентралізованої системи – відсутність зовнішнього
регулювання. У децентралізованій системі це часто неможливо, оскільки
можливості належать великій кількості користувачів, а технологія є
загальнодоступною. Таким чином, мережа не може регулюватися владою, вона
залежить тільки від пропозицій і запитів користувача.
Декілька прикладів децентралізованого управління представляють
криптовалютні біржі, які базуються на технології блокчейн і дозволяють
кожному користувачеві маневрувати своїми коштами.
У порівнянні із централізованими біржами, які пропонують лише
можливість купівлі або обміну валютою на їхніх серверах, децентралізовані
біржі дозволяють власникам повністю контролювати свої електронні кошти,
забезпечуючи безпеку за допомогою приватних зашифрованих ключів, які
44
зберігаються лише у власника. У централізованій системі кошти знаходяться у
фінансовому закладі, який має право на їхнє зняття або блокування.
Один з найвідоміших прикладів децентралізованої криптовалюти – Bitcoin,
використовує технологію блокчейн, яка дозволяє легко відслідковувати історію
всіх платежів, зберігаючи при цьому анонімність учасників. Ethereum, інша
децентралізована криптовалюта, надає платформу для розробки власних
криптовалютних проектів. Ripple, яка існує з 2012 року, співпрацює з урядом та
фінансовими закладами, спрощуючи систему транзакцій, проте її централізація
полягає у виборі вузлів мережі компанією.
Прозорість blockchain мережі
Прозорість в мережі блокчейн призводить до обмеження конфіденційності
даної системи. У цій технології ідентифікація особи здійснюється за допомогою
криптографічного публічного ключа. За допомогою аналізу історії транзакцій
можна відстежити рух коштів, але в імена подивитися не вдасться. Замість цього
ми бачимо лише записи, як, наприклад,
"21Mf82jf023Kf92dfasfk291kfds821ksdf2FJK2l відправив 1 Bitcoin".
Рис. 2.5. Приклад виконання змін в Bitcoin
Це дозволяє відслідковувати всі транзакції, пов'язані з певною адресою, але
водночас не розкриває особисту інформацію. Такий підхід є перспективним,
зокрема для компаній, які хочуть впроваджувати фінансові аспекти у систему
блокчейн. Знання публічної адреси може дати повний зріз фінансових
транзакцій, залишаючи при цьому особисті дані невідомими. Це особливо
45
актуально для компаній, які бажають залишити свої фінансові операції в
таємниці.
На рисунку 2.5 показаний приклад зміни в мережі Біткойн. Пропоновані
елементи збирають публічну адресу відправника, хеш транзакції і одержувача,
дату і час транзакції, переведену суму, статус транзакції і винагороду, що
присуджується майнеру за виконання цієї транзакції. Сума транзакції, зазначена
під час виконання, становить $ 239,53, а винагорода для Майнера – 3,11.
Незмінюваність blockchain мережі
Криптографічна хеш-функція забезпечує повну стабільність мережі
блокчейн. Дана функція обробляє вхідний рядок довільної довжини та
перетворює його у вихідні дані фіксованої довжини. Для біткойнів
застосовується алгоритм хешування SHA-256.
Рис. 2.6. Приклад кодування інформації алгоритмом SHA-256
Отже, незалежно від вхідного рядка, результат кодування буде
представлений у фіксованих 256 бітах. Це полегшує роботу з великими обсягами
інформації, оскільки вмістити значну кількість даних можна лише шляхом
фіксації хешів та слідкування за ними, замість зберігання об'ємних наборів
інформації. Криптографічна хеш-функція зазначається змінами при найменших
змінах вхідного рядка, включаючи навіть зміну регістру букви.
46
2.4. Механізми досягнення надійності в технології
Головною перевагою блокчейн, як зазначалося раніше, є відсутність
додаткових витрат, таких як оплата роботи посередників або комісії. Процес
передачі даних ініціюється однією стороною, що є абсолютно безпечним, і
призводить до створення блоку. Цей блок перевіряється розподіленим великим
числом комп'ютерів у мережі. Після вдалої перевірки блок додається до
ланцюжка, створюючи унікальний запис з ідентифікаторами. Спроба підробки
запису майже неможлива, оскільки це призвело б до підробки мільйонів записів
у всьому ланцюжку.
Наприклад, при оплаті послуг дистанційно через персональний комп'ютер
чи мобільний телефон банк стягує додаткову комісію за обробку платежів.
Використання технології блокчейн комунальними компаніями може допомогти
економити кошти для користувачів та забезпечити високий рівень захисту для
всіх операцій. В цьому випадку сторони представлені комунальною компанією
та споживачем.
Квитанція за послуги, яка в суті є смарт-контрактом, визначає, що
споживач повинен оплатити певну суму за надані послуги. Цей вид квитанції,
подібно до грошових транзакцій у блокчейн мережі, є унікальним, піддається
перевірці без доступу до конфіденційної інформації транзакції чи особистих
даних і не може бути змінений. Усе це надається абсолютно безкоштовно.
Блокчейн може змінити спосіб розгляду концепції платежів, зберігання і
передачі коштів, а також інших процесів, а це може суттєво змінити підходи до
оплати [6].
Блокчейн буде існувати до тих пір, поки існує принаймні один комп'ютер,
підключений до мережі, оскільки будь-хто може переглядати транзакції, не
маючи доступу до їх змісту. Вся інформація про транзакції зберігається на різних
пристроях, що робить систему високостійкою, непридатною для різних
хакерських атак і технічних проблем. Із розвитком криптографії з'являються нові
методи шифрування, що роблять блокчейн відкритим та надійно захищеним
одночасно.
47
Однією з ключових переваг блокчейну є його висока ступінь захищеності.
У порівнянні з паперовими угодами, які можуть бути підроблені, блокчейн
дозволяє використовувати електронні договори. У такому випадку відсутня
необхідність в посередниках, оскільки весь процес відбувається в
децентралізованому автономному режимі, що забезпечує прозорість технології.
Учасники угоди є рівноправними анонімними користувачами, і система
автоматично анулює контракт та повертає ресурси учасникам у разі порушення
обов'язків.
Після реєстрації даних в мережі блокчейн їх практично неможливо змінити
або видалити. Це рішення робить технологію ідеальною для застосування в
різних фінансових структурах, де необхідне зберігання даних про транзакції та
іншої інформації. Технологія блокчейн не дозволяє співробітникам завдати
навмисних збитків, адже всі операції перевіряються тисячами комп'ютерів у
процесі майнінгу. Однак одним із головних недоліків системи, побудованої на
технології блокчейн, є можливість "атаки 51%". Гіпотетично, контроль над
більшістю потужності хешування мережі може порушити функціонування всієї
системи, але на практиці такі маніпуляції блокчейном не вдалося здійснити.
Іншим значущим недоліком технології блокчейн є обмежена пропускна
спроможність, що призводить до того, що кількість транзакцій, яку вона може
обробити за певний час, значно менша, ніж у платіжних систем, таких як Visa і
MasterCard. Це може призвести до втрати вузлів мережі та складнощів у
завантаженні інформації для зберігання. Збільшення навантаження на
електромережу також стає проблемою через велику кількість енергії, яку
витрачають комп'ютери для складних обчислень.
Важливою проблемою блокчейн є застосування двох типів ключів:
публічного і приватного. Публічний ключ використовується для проведення
транзакцій, а приватний - для доступу до фінансів. Втрата приватного ключа
практично надає неможливим відновлення доступу до фінансів, що є серйозним
недоліком системи [16]. Інформація в блокчейні повинна бути незнищенною та
повинна бути ефективно захищена від потенційних зловмисників. Алгоритми
48
консенсусу відіграють важливу роль у забезпеченні цих функцій і є одним з
найважливіших елементів технології blockchain. Оскільки дані в блокчейні
розподілені, а центрального сервера немає, hозподілені учасники системи
повинні узгоджуватися щодо перевірки транзакцій, які надходять в мережу.
Важливо розрізняти консенсусні алгоритми і концепції децентралізації [6].
Протокол визначає спосіб взаємодії між учасниками мережі, встановлює,
які дані можуть бути передані, визначає вимоги до успішної блокової перевірки
і водночас діє як механізм перевірки відповідності правилам, встановленим
протоколом, – перевірки транзакції, перевірки балансу і підпису, а також
перевірки фактичної перевірки. дані. Для виконання перевірки блоку.
Консенсус передбачає узгодження всіх сторін щодо певного рішення. У
контексті мережі блокчейн учасники досягають згоди щодо вмісту блокчейну. З
огляду на децентралізовану природу системи, що складається з різних учасників
із власними інтересами та знаннями, консенсус встановлюється, коли більшість
учасників приймає певний стан речей. Основна проблема з розподіленими
обчисленнями і багатоагентними системами полягає в забезпеченні надійності
всієї системи при наявності різних неробочих процесів. У переважній кількості
випадків для цього потрібно, щоб процес узгоджував певні значення, необхідні
під час розрахунку. Ці процеси визначаються як консенсус. Для забезпечення
безпеки, консенсусний протокол повинен бути відмовостійким [22].
В даний час існує багато консенсусних алгоритмів, що використовуються
в різних протоколах блокчейнів.
− Proof-of-Stake;
− Proof-of-Work;
− Apache Kafka;
− BFT (Byzantian-Fault-Tolerance);
− DPoS (Delegated-Proof-of-Stake, делегований доказ ставкою);
− PoET (Proof-of-Elapsed-Time, доказ очікуванням);
− Proof-of-Capacity;
− Byzantian-Fault-Tolerance.
49
Proof-of-Work
Одним з найпоширеніших методів консенсусу, який спочатку знайшов
своє застосування в біткойнах, є перевірка працездатності. Концепція доказу
роботи була вперше описана Синтією Дворк і Моні Наор в 1993 році в статті під
назвою "оцінка досягнень в області криптографії за допомогою обробки або
боротьби зі спамом". Навіть якщо цей термін ще не використовувався, автори
висунули ідею про те, що для доступу до спільних ресурсів користувачам
необхідно вирішувати дуже складні, але обчислювальні завдання, щоб запобігти
зловживанню ресурсами [11].
Термін "свідоцтво про найм" з'явився у статті 1999 року "Свідоцтво про
найм та протоколи про хлібний пудинг". [18] автор: Маркус Якобссон і Арі
Джуелс. Суть концепції полягає в тому, що кожному Майнер дається завдання,
яке необхідно вирішити протягом певного періоду часу (в разі мережі біткойнов
цей час становить близько 10 хвилин). Задача сформульована наступним чином:
"знайти значення x таким чином, щоб хеш SHA (x) мав N верхніх нульових бітів."
У мережі біткойнів кількість обчислюваних бітів динамічно коригується
залежно від кількості учасників, тому час для вирішення цієї проблеми відносно
стабільний. Функція, що використовується в обчисленні, дорівнює SHA-256.
Якщо 1 учасник мережі (неповнолітній) знайде правильну відповідь, Інші
перевірять його рішення. І коли більшість схвалює знайдене рішення,
досягається консенсус і блок зберігається.
Майнери мають свій власний інтерес у вирішенні цих задач, оскільки за
кожну успішно записану та підтверджену транзакцію вони отримують
винагороду. Якщо особа хоче прискорити валідацію своєї транзакції, вона може
запропонувати майнерам більшу винагороду, щоб скоротити час очікування.
Однак такий алгоритм має і свої недоліки, такі як великі енерговитрати і потребу
в потужному обладнанні.
Proof-of-Stake
Алгоритм консенсусу вперше був реалізований в однорангових валютах у
2012 році. Таким чином, вузол з найбільшою кількістю токенів має більше
50
можливостей для створення наступного блоку. Іншими словами, чим вище
баланс (стейк), тим вигідніше положення вузла.
При такому підході майнерам також потрібно хешувати дані, але
складність цього процесу знову залежить від балансу. У порівнянні з перевіркою
працездатності цей алгоритм не вимагає великого енергоспоживання.
Також серед переваг є той факт, що для здійснення атаки на таку мережу
зловмиснику потрібно мати більше жетонів, а потім використовувати власні
колоди, але цей підхід має і недоліки, такі як можливість створення групи людей,
які просто намагаються зберегти жетони. в їх руках. У цьому випадку ідея
мережевої децентралізації сумнівна [7].
Delegated-Proof-of-Stake (DPoS)
Підтвердження наявності переданих акцій (dpo) є ще однією
альтернативою підтвердженню бізнесу, а також є покращення підтвердження
наявності акцій.1 Алгоритм був розроблений Даніелем Ларімаром в 2014 році і
знайшов застосування в таких криптовалюта, як Bitshares, Steem, Ark і Lisk [12].
Основна ідея алгоритму-здатність учасників делегувати свою" роботу " іншим.
Учасник може передати свій голос іншому учаснику мережі, який буде
працювати від його імені. Оскільки DPoS є удосконаленою версією PoS, чим
вищий баланс токенів учасника, тим більший вплив його голосу на мережу. В цій
системі винагорода за створення блоку зазвичай розподіляється між учасниками,
які проголосували за того, хто власне здійснив запис блоку.
Однією з переваг DPoS порівняно з класичним Proof-of-Stake є те, що
учасники стимульовані працювати чесно, оскільки в будь-який момент їхні
голоси можуть бути відкликані. Крім того, цей алгоритм працює швидше, ніж
його класичний варіант.
Proof-of-Authority (PoA)
Термін Proof-of-Authority був введений у 2017 році Гевіном Вудом, одним
із засновників мережі Ethereum [13]. В системі Proof-of-Authority блоки
фіксуються перевіреними валідаторами, які заздалегідь обираються і насправді є
модераторами мережі. Тут вага визначається не кількістю токенів, а репутацією.
51
Таким чином, відповідно до певного алгоритму блокчейн буде визначати,
який валідатор зареєструє наступний блок. Важливо відзначити, що бути
верифікатором - непросте завдання: ви вкладаєте певну суму грошей в нього та
інші мережі, щоб вони проголосували за цей процес гарантує, що верифікатор
буде не тільки випадковим учасником, але і людиною з високою репутацією.
Proof-of-Importance (PoI)
Доказ важливості в даний час широко використовується в криптовалютах
NEM. Цей алгоритм віддає перевагу користувачам, які зарекомендували себе в
мережі з хорошою репутацією: "спочатку працюйте на репутацію, а потім
працюйте на вас."Репутація буде рости за рахунок активної участі в екосистемі
блокчейна і взаємодії з іншими учасниками. Чим ви більш респектабельні, тим
більше у Вас шансів створити наступний блок [14].
Підтвердження значущості вирішує проблему підтвердження ставки, якщо
1 учасник або група осіб можуть контролювати мережу, купуючи більше токенів.
Тут кількість токенів на балансі не збільшує ймовірність створення блоків. Крім
того, торгувати фондами вигідніше, ніж тримати їх на балансі, тому вам потрібно
активно використовувати кошти, щоб отримати Жовтневу перевагу.
Біткойн вирішив проблему консенсусу, послідовно перераховуючи кожен
новий блок, використовуючи дека різних варіантів без параметрів (числа,
використані один раз). Щоб блок був прийнятий, його хеш повинен бути меншим
за певне значення, яке визначає його обчислювальну складність.
Вихідні дані хеш-функції розподіляються рівномірно, що унеможливлює
створення блоку таким чином, щоб він задовольняв цій умові. Комп'ютери
мережевого інтелектуального аналізу даних змагаються в пошуку відповідних
параметрів одноразового номера. Коли мета досягнута, комп'ютер Майнінг
передає блок в мережу, в той час як інші учасники перевіряють транзакцію.
Основна мета полягає не в тому, щоб надати занадто багато повноважень одній
особі чи організації, тому важливо вибирати обмежені ресурси для управління
блоком. Залежно від типу блокчейн-системи для досягнення консенсусу
використовуються різні алгоритми. Основна мета цього алгоритму-забезпечити
52
існування єдиної історії транзакцій, вільної від неприпустимих або
конфліктуючих транзакцій. Наприклад, вам не потрібно витрачати більше
ресурсів, ніж містить ваш обліковий запис, або витрачати один і той же ресурс 2
рази (в 2 рази більше).
Рис 2.7. Узагальнена схема методу захисту ПДн при їх обробці в РРПДн
Загальний порядок забезпечення обробки даних у розподіленому реєстрі
персональних даних (РРПДн)
При побудові РРПДН необхідно вирішити наступні задачі:
− визначити мету обробки ПДн, а також відповідний склад ПДн, обробку
яких доцільно здійснювати у розподіленій системі;
− визначити загальну архітектуру РРПДн;
− визначити порядок зберігання даних;
53
− розробити механізм досягнення консенсусу, який би стимулював
користувачів до участі у забезпеченні роботи РРПДн, а також
автоматизовану оцінку ризиків внесення та обробки в РРПДн
недостовірних ПДн;
− визначити метод обчислення хеш-функції;
− визначити узагальнений порядок розвитку РРПДн;
− визначити метод розрахунку компрометації ПДн під час їх обробки у
РРПДн.
На рис. 2.7 представлена узагальнена схема запропонованого методу
захисту ПДн за їх обробці в РРПДн.
Узагальнений порядок досягнення консенсусу
У таблиці 2.1 представлені узагальнені відомості про деякі з найбільш
поширених алгоритмів досягнення консенсусу.
Таблиця 2.1
Узагальнені відомості про алгоритми досягнення консенсусу
№ Найменування Приклади
Узагальнений опис
п/п алгоритму блокчейн-систем
1 Proof of Work Майнери вирішують криптографічні завдання, Bitcoin,
(PoW) щоб створити блок, який потім потрібно додати до Ethereum,
ланцюжка. Цей процес вимагає великої кількості Litecoin,
енергії та обчислювальних потужностей. Система Monero,
спеціально спроектована таким чином, щоб ZCash,
завдання ускладнювалися зі зростанням кількості Dogecoin
блоків у ланцюгу. Коли майнер знаходить блок,
він відправляє його до мережі для перевірки.
Перевірка того, чи належить блок ланцюжку чи ні,
є простим процесом.
2 Proof of Stake Валідатори повинні блокувати деякі зі своїх VCash,
(PoS) монет як ставка. Після цього вони розпочинають BitBay,
перевірку блоків. Коли вони виявляють блок, який Peercoin,
може бути доданий у ланцюжок, вони Qtum,
підтверджують його, ставлячи ставку. Якщо блок Stratis
додається, то валідатори отримують винагорода,
пропорційно ставці.
54
Продовження таблиці 2.1
3 Proof of Stake Доказ часу ставки використовує вік монети. Але Vericoin
Time (PoST) замість того, щоб брати кількість монет для
розрахунку віку, використовується період часу,
протягом якого монети утримувалися за
конкретною адресою.
4 Delegated Значно доопрацьований алгоритм PoS. У DPoS Steemit,
Proof of Stake токени не голосують за самі блоки, але голосують EOS,
/ DPoS за обрання делегатів, які проведуть перевірку від BitShares
свого імені. Делегати періодично переобираються.
Система працює швидко. Якщо обрані вузли
постійно пропускають блоки або публікують
недійсні транзакції, які голосують проти них та
замінюють їх найкращим варіантом.
5 Kafka, RBFT, Комплексне застосування алгоритмів у межах Hyperledger
Sumeragi, однієї системи.
Proof of
Elapsed Time
6 Proof of Алгоритм поєднує переваги Proof of Work і Proof Тестова мережа
Activity (PoA) of Stake. Майнінг починається традиційним Ethereum Kovan
способом.ю майнери змагаються у вирішенні
завдання та отриманні нагороди. Різниця в тому,
що блоки не містять транзакцій, а містять лише
відомості про заголовку та адресу.
7 Proof of Burn Майнер надсилає монету на випадкову адресу Slimcoin
Згенерованого хешу. Імовірність отримати ключ
практично дорівнює нулю, тому витратити гроші
за цією адресою практично неможливо. Через"
спалювання " таких монет у Майнер з'являється
шанс знайти блок PoB і отримати за це
винагороду. Імовірність Майнінг збільшується зі
збільшенням кількості" згорілих " монет. Має сенс
використовувати такий алгоритм тільки на більш
пізньому етапі існування криптовалюта.
8 Proof of Кожен майнер обчислює значний обсяг даних, які Burstcoin
Capacity (PoC) записуються в дискові підсистеми (жорсткі диски,
хмарні системи зберігання). Перший набір даних у
такому poc називається:
"Ділянка". Для кожного нового блоку в ланцюжку
блоків майнер зчитує великий обсяг даних (1/4096
від загального збереженого обсягу) і повертає
результат (дата завершення), який є кількістю
секунд, що минули з моменту створення
останнього блоку.
55
Проводження таблиці 2.1
9 Proof of Вартість кожного користувача в мережі NEM
Importance визначається як сума коштів, наявних на його
(PoI) балансі, і кількість транзакцій, здійснених з його
гаманця / гаманця. На відміну від Pos, який
враховує лише баланс доступних коштів
користувача, PoI враховує кількість коштів у
мережі блокчейнів та активність користувача.
Такий підхід залучає користувачів не тільки до
зберігання грошей на своїх рахунках, але і до їх
активного використання.
10 Proof of Всі транзакції і блоки перевіряються з VeChain
Authority використанням затвердженої облікового запису
(PoAuthority) (верифікатора). Транзакції і генерація блоків
виконуються автоматично з використанням
обчислювальної потужності валідаторів.
Створення нових блоків не повинно бути завданням, що потребує значних
обчислювальних ресурсів (як у разі застосування методу підтвердження роботи
(Proof of Work [11])). З урахуванням специфіки аналізованої блокчейн-системи
найбільш підходящим є алгоритм Proof of Authority, призначений для
забезпечення роботи приватних мереж і дозволяє виділяти привілейованих
валідаторів. Пропонується розширити його функціональні можливості
процедурою автоматизованої оцінки достовірності даних, що вносяться в
блокчейн-систему. Спочатку право на створення нових блоків, а також
можливість делегування цих блоків.
Висновки до другого розділу
У ході дослідження основних механізмів безпеки технології блокчейн
виявлено, що ця інноваційна система вирішує численні виклики, пов'язані з
безпекою та довірою в сучасних інформаційних та фінансових середовищах.
Безпека в технології блокчейн забезпечується за допомогою
криптографічних методів, децентралізованого характеру системи та
використання розподіленого реєстру. Спроектовані механізми консенсусу, такі
як Proof-of-Work та Proof-of-Stake, гарантують валідність транзакцій і
56
виключають можливість маніпуляцій. Технологія блокчейн також вирішує
проблеми конфіденційності, забезпечуючи анонімність учасників та
застосування "розумних контрактів", що дозволяють автоматизувати виконання
угод.
У зв'язку з позитивними аспектами технології блокчейн у сфері безпеки,
важливо враховувати потреби конкретних галузей та продумано впроваджувати
ці інновації, забезпечуючи баланс між високим рівнем захисту та ефективністю
функціонування.
57
РОЗДІЛ 3
МОДЕЛЬ ВИЗНАЧЕННЯ ПОРУШЕННЯ БЕЗПЕКИ ДАНИХ У
БЛОКЧЕЙН-СИСТЕМІ
3.1. Недоліки існуючих методів моделювання загроз
При моделюванні загроз даних, що обробляються в блокчейн-системах,
повинні бути враховано особливості блокчейн-технології (особливості
архітектури, застосовуваних методів захисту, сфери застосування тощо).
Для захисту даних у блокчейн-системі повинні застосовуватися методи
розробки моделей погроз. Однак, при застосуванні зазначених методів для
розробки моделі загроз даним, що обробляються в блокчейн-системі,
проявляються наступні протиріччя:
1 загрози не враховують значну частину загроз, актуальних саме для
блокчейн-систем;
2 порядок визначення актуальності загроз не передбачає кількісної
оцінки небезпеки загроз, що враховує окремі характеристики безпеки –
конфіденційності, цілісності, доступності та достовірності.
Таким чином, розробка моделі загроз даним при їх обробці в блокчейн-
системі є більш складним завданням, ніж розробка моделі загроз даним, що
обробляється без застосування технології блокчейн.
Запропонована модель спрямована на виявлення поточних загроз
порушення інформаційної безпеки даних, які обробляються в блокчейн-системі:
− пропонується для використання при розробці блокчейн-систем
незалежно від країни експлуатації;
− може знайти застосування не як заміна традиційному методу, а як його
доповнення, що дозволяє врахувати специфіку технології «блокчейн».
В узагальненому вигляді метод визначення актуальних загроз,
представлений на рис. 3.1. На рисунку виділено заходи, які пропонується
уточнити з урахуванням особливостей блокчейн-систем.
58
Рис. 3.1. Метод визначення актуальних загроз
Метою розробки цієї моделі є виявлення поточних загроз порушення
інформаційної безпеки даних, які обробляються в системі блокчейн –
забезпечення безпеки (конфіденційності, цілісності, доступності, достовірності)
інформації.
У рамках розробки моделі загроз блокчейн-системі можна виділити такі
невирішені завдання:
− визначення складу основних специфічних загроз блокчейн-системі;
− визначення складу деструктивних впливів загроз;
− розробка методу присвоєння числових значень характеристикам
небезпеки деструктивних впливів загроз;
59
− розробка методу встановлення зв'язку між характеристиками
небезпеки деструктивних впливів загроз, важливістю об'єкта захисту та
складом порушуваних характеристик безпеки об'єкта захисту.
Передбачається, що реалізація будь-якої загрози може призвести до
здійснення певних деструктивних впливів. Для кожної потенційної загрози
необхідно підготувати список деструктивних впливів, яких може призвести її
реалізація.
Кожний d-ий деструктивний вплив на o-ий об'єкт пропонується описати у
вигляді чотирьох коефіцієнтів Kdoα, Kdoβ, Kdoγ, Kdoε, де α, β, γ, ε – індекси, що
відображають складові небезпеки, пов'язані з порушеннями конфіденційності,
цілісності, доступності та достовірності. Значення коефіцієнтів деструктивних
впливів залежить від важливості об'єктів, куди спрямовані деструктивні впливи.
Коефіцієнти деструктивних впливів виражають небезпеку порушення
конкретних характеристик безпеки.
Для використання коефіцієнтів деструктивних впливів щодо загрози
необхідно надати їм числові значення. Як математичний апарат для присвоєння
числових значень пропонується застосувати теорію нечітких множин.
Головною трудністю, яка ускладнює застосування теорії нечітких множин
при розв'язанні практичних завдань, є необхідність задання функції
приналежності поза межами самої теорії. Внаслідок цього, адекватність цієї
функції може бути перевірена лише засобами теорії. У кожному відомому методі
побудови функції належності встановлюються свої вимоги і обгрунтування для
вибору саме такого методу [40].
У рамках розв'язуваної задачі при побудові характеристичних функцій
приналежності множині небезпек пропонується використовувати прямий метод
експертних оцінок, у межах якого:
− x – значення небезпеки порушення характеристики безпеки об'єкта
захисту;
− U – множина значень небезпеки порушення характеристики безпеки
об'єкта захисту;
60
− A – множина значень високої небезпеки порушення характеристики
безпеки об'єкта захисту;
− B – множина значень середньої небезпеки порушення характеристики
безпеки об'єкта захисту;
− С – множина значень низької небезпеки порушення характеристики
безпеки об'єкта захисту;
− D – множина значень безпеки (нульової небезпеки) об'єкта захисту;
− μA(x) – характеристична функція приналежності до множини небезпеки
А, μA(x)=[1;0];
− μB(x) – характеристична функція приналежності до множини небезпеки
B, μB(x)=[1;0];
− μC(x) – характеристична функція приналежності до множини небезпеки
C, μC(x)=[1;0];
− μD(x) – характеристична функція приналежності до множини небезпеки
D, μD(x)=[1;0].
Характеристичні функції приналежності множині небезпеки виражають
приблизні значення небезпеки порушення характеристик безпеки, обумовлені
ступенем важливості об'єкта захисту.
3.2. Основні потенційні загрози блокчейн-системі
Пропонований у розділі перелік потенційних загроз блокчейн-системі є
вичерпним. З урахуванням швидких темпів розвитку блокчейн-технологій,
перелік загроз повинен регулярно оновлюватися та доповнюватись у кожному
конкретному випадку розробки моделі загроз для чергової блокчейн-системи з
урахуванням моделі порушника. Склад потенційних загроз значною мірою
залежить від застосовуваного механізму досягнення консенсусу.
Загрози, пов'язані із захопленням більшої частини мережі (> 50% мережі)
Полягає у контролі консенсусу за рахунок контролю над більшою
частиною блокчейн-мережі одним учасником або групою осіб, які вступили до
змови. У такій ситуації в домінуючому об'єднанні підтверджуватиметься лише
61
обрані транзакції та відхилятимуться всі інші. Приклади подібних вдало
реалізованих тактичних наступів (ТН) – ТН на блокчейн-системи, засновані на
базі Ethereum Krypton та Shift у 2016 році, а також ТН на Bitcoin Gold 2018 року.
Можливими методами захисту є:
− збільшення кількості підтверджень, необхідних для схвалення
транзакцій (в Krypton було збільшено до 1000 підтверджень);
− добровільне зниження частки в мережі (приклад: ghash.io у 2014 році
після досягнення частки 51% добровільно знизив її до 39,99%);
− значний розмір комісії за транзакції (винагорода майнерам), що робить
ТН на блокчейн-мережі невигідними (приклад: блокчейн Bitcoin).
У роботі [41] представлено опис та порівняння методів забезпечення
безпеки, заснованих на багаторазовому підтвердженні блоків, що
застосовуються в Bitcoin та Ethereum.
Подвійна витрата
Подвійна витрата – витрата більшої кількості грошей, ніж є на рахунку
зловмисника. Загроза може бути реалізована при володінні переважно блокчейн-
мережею. Приклад – подвійне витрачання в мережі Bitcoin Gold у 2018 році після
взяття зловмисником під контроль 51% хешрейту мережі.
ТН Сібіли
Загроза за рахунок ТН Сібіли [42] – спроба заповнення блокчейн-мережі
підконтрольними йому клієнтами. Такий ТН може призвести до припинення
роботи мережі, реалізації загроз, пов'язаних із захопленням більшої частини
мережі та подвійної витрати, а також до порушення конфіденційності транзакцій.
Можливими методами захисту є:
− оцінка параметрів хоста (розмір сховища, пропускна спроможність
мережі тощо) з метою визначення належності зібраних даних окремим
комп'ютерам;
− пред'явлення вимог до генерації блоку (наприклад, у блокчейні Bitcoin
з PoW механізмом досягнення консенсусу обчислювальні вимоги до
генерації блоків пропорційні обчислювальній потужності мережі);
62
− введення обмежень на кількість акаунтів, які можуть створюватися з
IP-адреси протягом певного проміжку часу;
− використання довіреного сертифікованого центру, що забезпечує
верифікацію користувачів мережі.
DDoS
DDoS – пересилання великої кількості запитів. Методами захисту можуть
бути:
− обмеження розміру блоку (наприклад, у блокчейні Bitcoin – 1 МБ), що
забезпечує зниження ризиків забивання пулів пам'яті повних вузлів;
− обмеження розміру скрипта (у блокчейні Bitcoin – до 10 000 байт);
− обмеження кількості перевірок підпису та мультипідпису, які може
вимагати блок (у блокчейні Bitcoin – до 20 000 підписів та до 20 ключів
відповідно);
− блокування підозрілих вузлів та транзакцій (у блокчейні Bitcoin
здійснюється реєстрація нестандартних транзакцій (розміром більше
100 КБ) та за умови обробки транзакцій клієнт перевіряє, що всі виходи
не витрачені).
Зламування криптографічних алгоритмів
На думку ряду експертів, у найближчому майбутньому очікується поява
квантових комп'ютерів, обчислювальні потужності яких можуть зламати
застосовувані в даний час криптографічні алгоритми за досить короткий термін
[43, 44]. Одним із методів захисту може бути використання великих симетричних
ключів у поєднанні з конкретними стандартами захищених протоколів.
ТН за рахунок маршрутизації
ТН за рахунок маршрутизації можливий у разі вступу в змову Інтернет-
провайдерів, що забезпечують передачу даних у мережі блокчейн. На прикладі
Біткоіна, є думка, що близько 30% вузлів використовують підключення 13
Інтернет-провайдерів, а 60% трафіку відбувається через інфраструктуру трьох
провайдерів. Таким чином, теоретично, становиться можливими два основних
сценарії ТН – поділ мережі на різні компоненти та створення затримок у
63
додаванні нових блоків. У першому випадку вузли втрачають зв'язок між собою,
створюються паралельні ланцюжки блоків, частина ізольованих майнерів
працює марно (втрачаючи інформацію про транзакції та не отримуючи виплат).
У другому випадку можливе формування досить великого для блокування
роботи мережі пулу транзакцій.
Внесення до реєстру некоректної інформації
Помилкова інформація, введена в блок реєстру одного разу, буде
дублюватися в всіх наступних блоках. Вирішенням проблеми – санкціонований
перелік усіх блоків з видаленням помилкових даних, проте воно може вимагати
значних тимчасових та матеріальних витрат. Також можуть застосовуватись
спеціалізовані засоби контролю достовірності даних, що вносяться в блок даних.
Загрози за рахунок вразливостей у смарт-контрактах
До вразливостей смарт-контрактів можна віднести:
− вразливості, пов'язані з генерацією винятків та припиненням виконання
коду (наприклад, актуально для мови Solidity до версії 0.4.10, яка
спалювала весь gas у смарт-контрактах Ethereum);
− вразливості, пов'язані з викликами функцій іншого смарт-контракту
(наприклад, функція call в смарт-контрактах Ethereum може передати в
функцію, що викликається весь доступний gas).
У роботі [45] пропонується класифікація вразливостей смарт-контрактів на
базі Ethereum за трьома рівнями:
1 вразливості рівня мови Solidity:
− за рахунок непрямого виконання невідомого коду;
− за рахунок повторного входу;
− рахунок ефекту винятків;
− за рахунок ліміту gas у send функції;
− за рахунок зберігання секретів;
2 вразливості рівня Ethereum Virtual Machine:
− за рахунок незмінності коду контракту;
− за рахунок обмеження на розмір стека викликів;
64
3 вразливості рівня блокчейну:
− за рахунок непередбачуваності стану контракту;
− за рахунок тимчасової складової.
У роботі [46] зазначено, що причини появи вразливостей у смарт-
контрактах, загалом, зумовлені недостатнім розумінням розробниками смарт-
контрактів семантики використовуваної ними платформи.
Загальний порядок визначення небезпеки загрози
Передбачається, що при розробці моделі загроз, як вихідні дані
використовуються перелік об'єктів захисту, а також відомості про архітектурні
особливості блокчейн-системи.
Рис 3.2. Загальний порядок визначення небезпеки загрози
Для визначення небезпеки загроз пропонується:
− визначити склад основних потенційних загроз блокчейн-системі;
− визначити склад деструктивних впливів ймовірних загроз;
65
− визначити важливість об'єктів захисту;
− визначити небезпеку порушення характеристик безпеки об'єктів
захисту;
− визначити небезпеку деструктивних впливів;
− визначити рівень потенційної шкоди;
− визначити небезпеку загрози.
Схематично загальний порядок запропонованого методу представлений на
рис. 3.2. Пропонований метод відрізняється математичним обґрунтуванням
числових значень параметрів безпеки об'єктів захисту.
3.3. Визначення різних небезпечних впливів на блокчейн мережу
Визначення складу деструктивних впливів
Реалізація будь-якої загрози призводить до здійснення певних
деструктивних впливів. Для кожної потенційної загрози необхідно підготувати
список деструктивних впливів.
Пропонується виділити такі деструктивні впливи, здатні вплинути на
безпеку блокчейн-системи:
− ознайомлення;
− часткове блокування (зниження показників швидкості роботи);
− повне блокування (припинення роботи);
− модифікація;
− видалення.
Визначення важливості об'єкта захисту
Під важливістю об'єкта захисту розуміється якісна характеристика,
визначальна цінність об'єкта захисту для забезпечення стану характеристики
безпеки об'єкта захисту у межах допустимих значень. Градацію важливості
об'єкта захисту пропонується представити чотирма ступенями: найвища – перша,
найнижча – четверта. Для оцінки ступеня важливості об'єкта захисту
пропонується розглянути кожен об'єкт захисту з позиції необхідності
66
забезпечення станів конфіденційності, цілісності, доступності та достовірності.
Таким чином, кожному об'єкту захисту будуть відповідати чотири
характеристики важливості. При визначенні ступеня важливості даних
пропонується враховувати у т.ч. збитки, до яких може призвести порушення
характеристик безпеки, а також прийнятність витрат (часових, фінансових тощо)
на відновлення значень характеристик безпеки даних.
Для визначення важливості даних необхідно експертним шляхом (методом
експертних оцінок) присвоїти кожному об'єкту даних, визначений у таблиці 3.1,
ступінь важливості.
Таблиця 3.1
Зіставлення наслідків від порушення безпеки даних та ступеня
важливості об'єкт захисту
Наслідки, до яких може призвести Висновок про рівень важливості
порушення безпеки даних об'єкту
Високі збитки 1-й ступінь
Значні збитки 2-й ступінь
Помірна шкода 3-й ступінь
Незначні збитки 4-й ступінь
При визначенні ступеня важливості об'єктів, які забезпечують
працездатність основних програмних та технічних засобів блокчейн-системи,
пропонується виконати наступні дії:
− визначити склад службових файлів;
− визначити допустимість їх блокування та часові витрати;
− визначити можливість їх відновлення;
− визначити наслідки, до яких може призвести порушення доступності та
цілісності службових файлів;
− присвоїти кожному службовому файлу певний ступінь важливості.
У таблиці 3.1 запропоновано градацію ступенів важливості об'єкта захисту
в залежності від можливих наслідків, до яких може призвести порушення
67
характеристик безпеки об'єкта захисту. Визначення ступеня важливості об'єкта
захисту необхідне для визначення небезпеки порушення характеристик безпеки
об'єктів захисту.
Оскільки завдання виявлення об'єктів захисту, а також визначення їх
важливості є досить трудомістким, видається доцільним вирішувати її силами не
тільки адміністратора безпеки інформації, але й залучати для її вирішення
фахівців з інших профільних структурних підрозділів (пов'язаних з конкретними
об'єктами захисту або технологіями обробки даних).
Визначення небезпеки порушення характеристик безпеки об'єктів захисту
Як математичний апарат для присвоєння числових значень
характеристикам небезпеки порушення характеристик безпеки об'єктів захисту
пропонується застосувати теорію нечітких множин.
При визначенні зразкових числових значень характеристик небезпеки
порушення характеристик безпеки об'єктів захисту передбачалося:
− чим вище значення x, тим вище значення небезпеки;
− неприпустимо робити висновок про 100% приналежність
характеристичної функції певній множині (нечіткі множини значень
небезпеки повинні бути субнормальними – жодна характеристична
функція приналежності має приймати значення, що дорівнює одиниці);
− для однозначного визначення значень коефіцієнтів деструктивних
впливів всі характеристичні функції повинні мати один максимум –
бути унімодальними.
Прикладні значення небезпеки порушення характеристик безпеки з
урахуванням застосування теорії нечітких множин, представлені в таблиці 3.2 і
для наочності на діаграмі Заде (рис. 3.3).
Для уточнення зразкових числових значень функцій приналежності до
множин небезпеки зроблені наступні припущення:
− на доступність не може вплинути ознайомлення з об'єктом захисту;
− на конфіденційність не можуть вплинути блокування, модифікація та
видалення об'єкта захисту;
68
− на цілісність не можуть вплинути ознайомлення та блокування об'єкта
захисту;
− на достовірність не можуть вплинути ознайомлення, блокування та
видалення;
− при повному блокуванні небезпека порушення доступності вища, ніж
при частковому.
Таблиця 3.2
Зразкові значення небезпеки порушення характеристик безпеки
Зразкові значення небезпеки порушення характеристик безпеки
Функції належності
Нульова Низька Середня Висока
множині небезпеки
небезпека небезпека небезпека небезпека
μA(x) 0,20 0,40 0,70 0,90
μB(x) 0,40 0,70 0,90 0,70
μC(x) 0,70 0,90 0,70 0,40
μD(x) 0,90 0,70 0,40 0,20
Рис. 3.3. Зразкові значення небезпеки порушення характеристик безпеки
69
При уточненні значень функцій приналежності множині небезпек
здійснено зсув по осі x на 0,1-0,2. Таким чином, з урахуванням значень,
представлених у таблиці 3.2, уточнені числові значення порушення
характеристик безпеки, виражені максимальними значеннями відповідних
функцій власності, прийняли значення, подані у таблиці 3.3.
Таблиця 3.3
Уточнені числові значення небезпеки порушення характеристик безпеки
Ступінь Числові значення характеристик безпеки
Деструктивні важливості
Конфіденційність Цілісність Доступність Достовірність
впливи об'єкта
(Kdoα) (Kdoβ) (Kdoγ) (Kdoε)
захисту
Перша 0,9 – – –
Друга 0,7 – – –
Ознайомлення
Третя 0,5 – – –
Четверта 0,3 – – –
Перша – – 0,7 –
Блокування Друга – – 0,5 –
часткове Третя – – 0,3 –
Четверта – – 0,1 –
Перша – – 0,9 –
Блокування Друга – – 0,7 –
повне Третя – – 0,5 –
Четверта – – 0,3 –
Перша – 0,9 0,8 0,9
Друга – 0,7 0,6 0,7
Модифікація
Третя – 0,5 0,3 0,5
Четверта – 0,3 0,1 0,3
Перша – 0,9 0,9 –
Друга – 0,7 0,7 –
Вилучення
Третя – 0,5 0,5 –
Четверта – 0,3 0,3 –
70
Отримані числові значення характеристик небезпеки порушення окремих
характеристик безпеки об'єктів захисту необхідні для подальшого визначення
небезпеки деструктивних впливів.
Визначення загрози
Відповідно до рекомендацій, небезпека загрози визначається експертним
методом та може приймати три значення – висока, середня і низька.
Пропонується уточнений метод, що врахує деструктивні впливи, до якого
можуть привезти загрози безпеці інформації.
Небезпека загрози t виражається відношенням загрози Dto, до прийнятних
збитків Da і визначається наступним співвідношенням:
Рівень прийнятних збитків є унікальним для кожного окремого об'єкта
захисту, задається експертним шляхом і не може набувати значення, що
дорівнює нулю. В разі, коли збитки від реалізації деструктивного впливу Dto
перевищують допустимі збитки Da, він набуває значення, яке дорівнює Da.
Для визначення актуальності загрози, числові характеристики небезпеки
необхідно інтерпретувати вербально. Для забезпечення вербальної інтерпретації
числових значень пропонується застосувати теорію нечітких множин. Загальна
форма запису нечітких підмножин матиме наступний вигляд:
де А – множина високої небезпеки, B – множина середньої небезпеки, C –
множина низької небезпеки, μA(x) – характеристична функція приналежності
множині високої небезпеки, μB(x) – характеристична функція приналежності до
множини середньої небезпеки, μC(x) – характеристична функція приналежності
71
до множини низької небезпеки. Отримані показники інтерпретації небезпеки
загрози представлені у таблиці 3.4.
Таблиця 3.4
Вербальна інтерпретація небезпеки загрози
Інтервал небезпеки загрози Вербальна інтерпретація показника
0,67 - 1,00 Висока
0,34 - 0,66 Середня
0,00 - 0,33 Низька
Висновки до третього розділу
Встановлено та систематизовано взаємозв'язок між:
− загрозами, які становлять потенційну небезпеку для оброблюваних
даних у блокчейн-системі;
− характеристиками деструктивних впливів;
− ступенем важливості оброблюваних даних;
− рівнем ризику порушення окремих аспектів безпеки (включаючи
достовірність);
− можливими шкодами внаслідок потенційних загроз для блокчейн-
системи.
Запропонована модель загроз даних, які обробляються в системі блокчейн,
дозволяє:
− визначити загрози, актуальні для блокчейн-систем;
− визначити загрози, що впливають на достовірність даних;
− забезпечити виконання вимог державних стандартів;
Відрізнається від класичного обліку:
− специфічних загроз даним, що обробляються у блокчейн-системі;
− числових значень ступеня небезпеки порушення деяких характеристик
безпеки (у т.ч. достовірності).
72
Таким чином, поставлене в роботі завдання (розробка моделі виявлення
поточних загроз порушення безпеки інформації даних, оброблюваних у
блокчейн-системі) вирішена і при виявленні загроз даним додатково
враховуватимуться:
− загрози, актуальні для блокчейн-систем;
− числові характеристики безпеки даних (конфіденційності, цілісності,
доступності та достовірності).
73
ВИСНОВКИ
Мета роботи досягнута через впровадження нових функцій та
властивостей у системі захисту даних, які обробляються в системі блокчейн. В
разі виявлення поточних загроз безпеці інформації, оброблюваної в блокчейн-
системі, враховуються конкретні загрози для даних та числові значення рівня
небезпеки порушення окремих характеристик безпеки. Також розглядається
взаємозв'язок між загрозами для даних, рівнем небезпеки порушення
характеристик безпеки, ступенем деструктивного впливу та важливістю даних.
У процесі обробки даних в блокчейн-системі проводиться автоматизована
оцінка ризиків введення та обробки недостовірних даних, а також аналіз
санкціонованої поведінки користувачів з метою визначення аномалій у їх
поведінці. На основі аналізу вимог та методів забезпечення безпеки даних
обґрунтована необхідність розробки способів забезпечення безпеки обробки
даних в блокчейн-системі. Розроблена модель для виявлення загроз порушення
інформаційної безпеки даних, що враховує залежність між загрозами даних та
рівнем небезпеки.
Запропонована модель відрізняється від традиційного підходу до
представлення загроз, враховуючи конкретні загрози для даних в блокчейн-
системі та числові значення рівня небезпеки порушення деяких характеристик
безпеки. Вона дозволяє визначити актуальні загрози для блокчейн-системи та ті,
що впливають на достовірність даних. Методи забезпечення достовірності
інформації, оброблюваної в блокчейн-системі, розширюють клас методів для
виявлення недостовірних даних.
Удосконалена модель відрізняється підходом до досягнення консенсусу,
включаючи автоматизовану оцінку ризиків введення та обробки недостовірних
даних, розроблену з використанням теорії нечітких множин. Цей метод
забезпечує достовірність персональних даних в блокчейн-системі на рівні
організацій та держави загалом.
74
Також досліджено санкціоновану поведінку користувачів, яка формалізує
поведінку та дозволяє виявляти аномалії. Результати показали ефективність
методів при експлуатації в умовах, що максимально наближені до реальних.
Подальші дослідження рекомендується проводити в напрямках розширення
специфічних загроз для блокчейн-систем, вдосконалення методів виявлення
недостовірних даних та дослідження альтернативних конфігурацій нейронних
мереж для аналізу ризиків введення та обробки недостовірних даних в блокчейн-
системі.
75
СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ
1. A Novel Approach to Implement Decentralized Voting System Using
Blockchain / Tito Nadar, Mehul Rawal, Jay Patel, Abhishek Shah, A. S. Revathi,
2020. – Р. 311-321.
2. Ahram Т. Blockchain technology innovations, in Proc. Technology &
Engineering Management (TEMSCON), 2019 IEEE Conference on, 2019. – P.
137–141.
3. Ben-David A. FairplayMP: a system for secure multi-party computation /
A. Ben-David, N. Nisan, B. Pinkas // ACM CCS 2018. – 2018. – P. 257-266.
4. Bitcoin's Largest Competitor Hacked: Over $59 Million «Ethers»8 Stolen In
Ongoing Attack [Електронний ресурс] / Режим доступу:
https://www.zerohedge.com/news/2020-06-17/bitcoins-largest-
competitorhacked-over-59-million-ethers-stolen-ongoing-attack (дата
звернення: 19.10.2023).
5. Blockchain Basics: A Non-Technical Introduction in 25 Steps / Daniel Drescher,
2019. – Р. 29-30.
6. Blockchain By Example: A developer's guide to creating decentralized
applications using Bitcoin, Ethereum, and Hyperledger / Bellaj Badr, Richard
Horrocks, Xun (Brian) Wu, 2018. – Р. 241-255.
7. Blockchain For Dummies (For Dummies (Computer/Tech)) / Tiana Laurence,
2019. – Р. 95-99.
8. Blockchain Technology Explained: The Ultimate Beginner’s Guide About
Blockchain Wallet / Alan T. Norman, 2018. – Р. 43-45.
9. Blockchain: A Practical Guide to Developing Business, Law, and Technology
Solutions / Rene Madsen, 2020. – Р. 26-52.
10. Blockchain: The Insights You Need from Harvard Business Review / Don
Tapscott, Marco Iansiti, Karim R. Lakhani, Catherine Tucker, 2019. – Р. 122-
123.
76
11. Cachin C. Blockchain Consensus Protocols in the Wild / C. Cachin, M. Vukolic.
// Proceedings of 31th International Symposium on Distributed Computing. –
2021. – 505 р.
12. Cambridge Handbook of Smart Contracts, Blockchain Technology and Digital
Platforms / Larry A. DiMatteo, Michel Cannarsa, Cristina Poncibò, 2019. –
Р. 101-107.
13. Camenisch J. Concepts and languages for privacy-preserving attribute-based
authentication / J. Camenisch, M. Dubovitskaya, R. Enderlein, A. Lehmann,
G. Neven, C. Paquin, F. Preiss // IFIP Working Conference on Policies and
Research in Identity Management. – Vol. 19. – 2020. – P. 25 – 44.
14. Camenisch J. Concepts and languages for privacy-preserving attribute-based
authentication / J. Camenisch, M. Dubovitskaya, R. Enderlein, A. Lehmann,
G. Neven, C. Paquin, F. Preiss // IFIP Working Conference on Policies and
Research in Identity Management. – Vol. 19. – 2020. – P. 25-44.
15. Camenisch J. On the Portability of Generalized Schnorr Proofs / J. Camenisch,
A. Kiayias, M. Yung // EUROCRYPT 2019 (LNCS). – Vol. 5479. – 2019. –
P. 425 – 442.
16. Chase B., Macbrough E. Analysis of the XRP ledger consensus protocol. Cornell
University, 2021 – [Електронний ресурс]. – Режим доступу:
https://arxiv.org/abs/1802.07242. (дата звернення: 21.10.2023).
17. Chase M. Malleable Proof Systems and Applications / M. Chase, M. Kohlweiss,
A. Lysyanskaya, S. Meiklejohn // EUROCRYPT 2022 (LNCS). – Vol. 7237. –
2022. – P. 281 – 300.
18. Chase M. Malleable Proof Systems and Applications / M. Chase, M. Kohlweiss,
A. Lysyanskaya, S. Meiklejohn // EUROCRYPT 2022 (LNCS). – Vol. 7237. –
2022. – P. 281-300.
19. Chris Dannen. Introducing Ethereum and Solidity. – Brooklyn, New York, USA:
Apress, 2020. – 197 р.
20. Coinmarketcap [Електронний ресурс]. – Режим доступу:
https://coinmarketcap.com/ (дата звернення: 17.10.2023).
77
21. Consensus Algorithm – [Електронний ресурс]. – Режим доступу:
https://whatis.techtarget.com/definition/consensus-algorithm. (дата звернення:
22.10.2023).
22. Conte de Leon, Daniel & Stalick, Antonius & Jillepalli, Ananth & Haney,
Michael & Sheldon, F.T. Blockchain: properties and misconceptions. Asia
Pacific Journal of Innovation and Entrepreneurship, 2020. – Р.288 – 289.
23. Creating a Trusted Experience with Blockchain [Електронний ресурс] / Sony
Global Education. – Режим доступу: https://blockchain.sonyged.com/ (дата
звернення: 24.10.2023).
24. Ekblaw A. A. Case Study for Blockchain in Healthcare: «MedRec» prototype
for electronic health records and medical research data / A. Ekblaw, A. Azaria,
J. Halamka // MIT Media Lab, Beth Israel Deaconess Medical Center. – 2021. –
Т. 13. – P. 1–13.
25. Eyal I. Majority is not Enough: Bitcoin Mining is Vulnerable / I. Eyal, E. Sirer.
// International Conference on Financial Cryptography. – 2018, 436 р.
26. Geth Documentation — [Електронний ресурс]. – Режим доступу:
https://geth.ethereum.org. (дата звернення: 24.10.2023).
27. Gromovs G. Blockchain and Internet of Things require innovative approach to
logistics education / G. Gromovs, K. Lammi // Silesian University of
Technology. – Katowice, 2021. – Т. 12. – P. 23–34.
28. Hakansson E. Blockchain based approach to enhance big data authentication in
distributed environment,” in Proc. 9th International Conf. Ubiquitous and Future
Networks (ICUFN), IEEE, 2017. – P. 887-892.
29. Information Security Technology for Applications: Internet Voting in Estonia /
Vinkel P., 2019. – Р. 80-82.
30. Kumar S. An Efficient and Secure Protocol for Ensuring Data Storage Security
in Cloud Computing / S. Kumar, R. Subramanian. // International Journal of
Computer Science Issues. – Vol. 8. – 2011. – P. 261 – 274.
31. Кastering Bitcoin: Programming the Open Blockchain / Andreas M.
Antonopoulos, 2019. – Р. 334-340.
78
32. Kwon J. Tendermint: Consensus without mining. – [Електронний ресурс]. –
Режим доступу: https://github.com/tendermint/tendermint/wiki. (дата
звернення: 22.10.2023).
33. Lamport L. The Byzantine generals problem / L. Lamport, R. Shostak, M. Pease.
// ACM Transactions on Programming Languages and Systems. – Vol. 43. –
2021. – P. 382 – 401.
34. Lazaroiu C. Smart district through IoT and blockchain / C. Lazaroiu, M. Roscia
// 6th IEEE International Conference on Renewable Energy Research and
Applications. – San Diego, 2021. – P. 451–461.
35. Lou W. SPREAD: Enhancing Data Confidentiality in Mobile Ad Hoc Networks
/ W. Lou, W. Liu, Y. Fang // INFOCOM 2019. Twenty-third Annual Joint
Conference of the IEEE Computer and Communications Societies, IEEE. –
2019. – Vol. 4. – P. 2404-2413.
36. Mrantz M. Fundamental analysis for dummies / M. Mrantz – Hoboken: Wiley
Publishing Inc., – 2019. – 387 p.
37. Nagpal R. 17 blockchain platforms – a brief introduction [Електронний ресурс]
/ Режим доступу: https://medium.com/blockchain-blog/17-blockchain-
platforms-a-brief-introduction-e07273185a0b (дата звернення: 19.10.2023).
38. Nakamoto S. Bitcoin: A Peer-to-Peer Electronic Cash System [Електронний
ресурс] / Bitcoin.org. – Режим доступу: https://bitcoin.org/bitcoin.pdf (дата
звернення 28.10.2023).
39. Nguyen NT. Consensus-based timestamps in distributed temporal databases /
NT. Nguyen // The Computer Journal. – Vol. 44. – 2021. – P. 398 – 409.
40. Proof of Work and Proof of Stake consensus protocols: a blockchain application
for local complementary currencies / Sothearath SEANG, Dominique TORRE,
2018. – Р. 111.
41. Tapscott D. Announces International Blockchain Research Institute
[Електронний ресурс] / Офіційний сайт Nasdaq. – Режим доступу:
https://www.nasdaq.com/article/don-tapscott-announces-international-
blockchain (дата звернення 29.10.2023).
79
42. The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments / Joseph
Poon, Thaddeus Dryja – K.: 2021. – Р. 5 – 54.
43. Vazaroiu C. Smart district through IoT and blockchain / C. Vazaroiu, M. Roscia
// 6th IEEE International Conference on Renewable Energy Research and
Applications. – San Diego, 2021. – P. 454 – 461.
44. Vessenes P. Ethereum Contracts are Going to be Candy for Hackers
[Електронний ресурс] / Режим доступу:
https://vessenes.com/ethereumcontracts-are-going-to-be-candy-for-hackers
(дата звернення: 19.10.2023).
45. Wang L. The Impact of US Stock Market on the Co-Movements of BRIC Stock
Markets – Evidence from Linear Conditional Granger Causality. Open Journal
of Statistics, – 2019, Р. 849 – 858.
46. Watters A. The Blockchain for Education: An Introduction [Електронний
ресурс] / Hack Education – особистий блог Одри Уоттерса. – Режим
доступу: http://hackeducation.com/2021/09/07/blockchain-education-guide
(дата звернення 05.09.2023).
47. Беляева К. С. Розробка засобів верифікації протоколу консенсусу в
децентралізованих системах / Беляева К.С., Пенко В.Г. // Інформатика,
інформаційні системи та технології: тези доповідей шістнадцятої
всеукраїнської конференції студентів і молодих науковців Одеса, 19 квітня
2020 р. – Одеса, 2020. – С.61-62.
48. Лубенець І. Огляд цифрових криптовалют [Електронний ресурс] / Блог
експертів про фінанси – 202.0 – Режим доступу:
http://www.prostoblog.com.ua/lichnye/byudzhet/obzor_tsifrovyh_kriptovalyut.
(дата звернення: 23.09.2023).
49. Молчанова Е. Глобальна сервісна природа сучасних криптовалют //
Міжнародна економічна політика. – № 1. – 2020. – С. 60 – 79.
50. Основи технології блокчейн: комп'ютерний практикум [Електронний
ресурс]: навч. посіб. для студентів спеціальностей 126 «Інформаційні
системи та технології» та 121 «Інженерія програмного забезпечення» / КПІ
80
ім. Ігоря Сікорського; уклад.: В.А. Яланецький. – Електронні текстові дані
(1 файл: 2.1 Мбайт). – Київ: КПІ ім. Ігоря Сікорського, 2022. – 89 с.
51. Поливка Н. Криптовалюти і «різноманітні біткойни» / Н. Поливка //
Юридична Газета online. – [Електронний ресурс]. – Режим доступу:
http://yur-gazeta.com/publications/practice/informaciyne-pravo-
telekomunikaciyi/ kriptovalyuti-i-riznomanitni-bitkoini.html (дата звернення:
20.10.2023).