You need to enable JavaScript to run this app.
Bankless Academy

Основи блокчейну

Дізнайся про базову архітектуру блокчейн-технології.
Почати урок

Вступ

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

Розібравши шари блокчейну, ти зрозумієш структуру, яку показує блокчейн-інструмент оглядач блоків: список блоків, транзакції всередині цих блоків і деталі кожної окремої транзакції. Щоб побачити це наживо, спробуй Etherscan, популярний оглядач блоків для Ethereum.

Структура блокчейну

Слово «блокчейн» може бути іменником (блокчейн Bitcoin) або означенням (блокчейн-технологія). У будь-якому разі блокчейн означає всю структуру, на якій побудовані криптовалюти.

Якщо придивлятися ззовні всередину, у блокчейні є 3 рівні структури:

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

Ця трирівнева структура утворює криптографічний реєстр: незмінну історію всіх транзакцій, здійснених у мережі.

Перевірка знань 1

Що таке блокчейн?

  • [ ] Упорядковані групи транзакцій, що звуться блоками

  • [ ] Спільний запис, який усі бачать, але ніхто не змінює

  • [ ] Блоки, з'єднані один за одним по порядку

  • [ ] Усе перелічене

Розглядаємо реєстр

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

Реєстр це список УСІХ транзакцій, коли-небудь зроблених у блокчейні, і для публічних блокчейнів його бачить кожен. Окремі групи транзакцій із реєстру утворюють блоки, які разом складають блокчейн.

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

Транзакції в реєстрі

Погляньмо на приклади транзакцій:

  • Аліса надсилає 5 ETH Бобу
  • Боб надсилає 2 ETH Чарлі

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


⇒ Аліса втратила 5 ETH

⇒ Боб отримав загалом 3 ETH (отримав 5, надіслав 2)

⇒ Чарлі отримав 2 ETH

Перевірка знань 2

Що з наведеного правдиве для публічних реєстрів блокчейну?

  • [ ] Усі транзакції публічні, а минулі транзакції незмінні

  • [ ] Реєстр показує, скільки криптовалюти зараз має кожна адреса

  • [ ] Реєстр зростає, коли до нього додають нові транзакції

  • [ ] Усе перелічене

Децентралізація

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

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

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

Перевірка знань 3

Що робить блокчейн децентралізованим?

  • [ ] Лише одна організація може писати в блокчейн

  • [ ] Він відповідає вимогам децентралізації від держави

  • [ ] Реєстр не контролює ніхто, він лежить на багатьох вузлах

  • [ ] Реєстр зберігається на одному захищеному сервері

Анатомія блока

Важлива властивість блокчейнів: дані минулих транзакцій не можна змінити після того, як вони потрапили в блок. Це тому, що кожен блок має унікальний хеш блока, наче відбиток пальця, яким блоки зчеплені один за одним. Ніхто не змінить минулі транзакції, не змінивши цей відбиток і відбиток КОЖНОГО наступного блока, бо кожен відбиток залежить від попереднього.

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

Перевірка знань 4

Для чого потрібен хеш блока?

  • [ ] Щоб зашифрувати дані блока і ніхто їх не прочитав

  • [ ] Щоб зчепити блоки й зробити минулі транзакції незмінними

  • [ ] Щоб транзакції надходили на правильну адресу

  • [ ] Щоб блокчейн лишався децентралізованим

Усередині блока

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

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

  • Аліса надсилає 5 ETH Бобу
  • Боб надсилає 2 ETH Чарлі

Згадай, що кожен блок також має посилатися на хеш блока попереднього блока, аби зчепити блокчейн.

Перевірка знань 5

Яка інформація міститься в блоці?

  • [ ] Уся інформація з попередніх блоків

  • [ ] Будь-що потрібне блокчейну, бо розмір блока необмежений

  • [ ] Дані транзакцій і посилання на попередній блок

  • [ ] Усі дані транзакцій за певний проміжок часу

Окремі транзакції

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

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

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

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

Перевірка знань 6

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

  • [ ] Надсилання чи отримання криптоактивів

  • [ ] Зміна розміру блока

  • [ ] Редагування минулих даних блокчейну

  • [ ] Усе перелічене

Адреси користувачів

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

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

Дивлячись на окрему транзакцію в оглядачі блоків, ми бачимо адреси From: і To:. Це не каже нам, які люди контролюють ці адреси, але дає змогу будь-кому відстежувати рух криптовалюти в реєстрі блокчейну.

Перевірка знань 7

Що правда про адреси блокчейну?

  • [ ] Це публічні ідентифікатори різних учасників блокчейну

  • [ ] В Ethereum вони завжди починаються з 0x

  • [ ] Хто контролює приватний ключ, той розпоряджається коштами

  • [ ] Усе перелічене