Блокчейн-акаунт — це ідентифікаційний шлюз користувача в блокчейн-мережі. Кожен акаунт має унікальну адресу, яку використовують для отримання активів, ініціювання транзакцій і взаємодії зі смарт-контрактами. На відміну від традиційних банківських рахунків, блокчейн-акаунти не створюються та не керуються центральною установою — вони повністю генеруються і контролюються користувачем за допомогою криптографічних механізмів.
З функціональної точки зору блокчейн-акаунти виконують такі ключові ролі:
Блокчейн-акаунт не є контейнером для зберігання активів. Активи в блокчейні фіксуються у розподіленому реєстрі, а адреса акаунта — це лише тег для ідентифікації права власності й операційних дозволів. Володіння приватним ключем акаунта означає контроль над активами, пов’язаними з цією адресою.
Безпека блокчейн-акаунтів ґрунтується на криптографічних системах і складається з трьох основних елементів: приватного ключа, відкритого ключа й адреси. Всі вони пов’язані строгими математичними залежностями й разом формують базову структуру акаунтної системи.
Під час створення блокчейн-акаунта спочатку генерується випадковий приватний ключ. Приватний ключ зазвичай є 256-бітним числом; його випадковість визначає рівень безпеки акаунта. Далі система застосовує алгоритми шифрування на еліптичних кривих для отримання відповідного відкритого ключа.
Відкритий ключ — це публічна версія приватного ключа; його можна передавати зовні, але він не дозволяє визначити приватний ключ. На практиці відкритий ключ проходить одну чи кілька хеш-операцій для формування адреси, яку використовують у мережі.
Логіка генерації коротко виглядає так:
Приватний ключ → Відкритий ключ → Адреса
Основні характеристики:
Ця структура забезпечує важливу властивість: користувач може підтвердити контроль над активами, не розкриваючи реальну інформацію приватного ключа. Це фундаментальна основа для можливості бездовірних транзакцій у блокчейні.
Не всі акаунти в блокчейн-мережі мають однакову структуру. Наприклад, в Ethereum акаунти поділяються на два типи: Externally Owned Account (EOA) та контрактний акаунт.
EOA контролюється користувачем і управляється приватним ключем. Більшість звичайних користувачів створюють EOA при використанні гаманців на кшталт MetaMask. Основна особливість EOA — можливість активно ініціювати транзакції та підтверджувати легітимність операцій підписом приватного ключа.
Контрактні акаунти, навпаки, не контролюються приватними ключами, а управляються кодом смарт-контракту, розгорнутого в блокчейні. Контрактні акаунти не можуть активно ініціювати транзакції; вони виконують задану логіку лише при отриманні транзакцій або викликів.
Основні відмінності між цими двома типами проявляються у кількох аспектах:
З розвитком технологій Web3 акаунтні системи постійно еволюціонують. Наприклад, сучасні концепції, такі як Account Abstraction, спрямовані на подолання меж між EOA та контрактними акаунтами, дозволяючи акаунтам поєднувати контроль користувача й логіку смарт-контракту — це підвищує користувацький досвід і гнучкість системи.
Розуміння цих двох структур акаунтів є важливою передумовою для подальшого вивчення ончейн-фінансів, DeFi-застосунків та інфраструктури Web3.