Блокчейн, крипта и NFT
Блокчейн
Что такое блокчейн?
Наверняка все вы слышали о термине блокчейн, и явно в контексте криптовалют. Да, действительно, криптовалюта основана на технологии блокчейн, но здесь очень много разных ньюансов.
Блок* - основная единица данных. Чейн - цепочка. Соответственно, блокчейн это цепь из блоков, где один связан с другим. Данные передаются по цепочке, что позволяет выстраивать целую паутину с принципом децентрализации.
Блок — это структурированный элемент данных, который содержит информацию о транзакциях или других операциях в распределенной системе. Каждый блок имеет уникальный идентификатор, метку времени и ссылку на предыдущий блок. Эта структура обеспечивает непрерывность цепочки записей.
Децентрализация подразумевает отсутствие единого центра, где всё хранится. Плюсов много - нельзя закрыть или заблокировать всё сразу, и это порождает большую стабильность и независимость технологии от прочих стран.
Концепция такой технологии уже давно существует, но монетизировали её в XXI веке, организовав безопасный "серый" денежный рынок.
Блокчейн (blockchain) — это децентрализованная цифровая база данных, которая хранит информацию в виде цепочки блоков. Каждый блок содержит данные, такие как транзакции, время создания и уникальный идентификатор (хэш), связанный с предыдущим блоком. Это делает блокчейн устойчивым к изменениям: чтобы изменить один блок, нужно изменить все последующие.
Особенности блокчейна:
- Децентрализация. В отличие от традиционных баз данных, управляемых центральным сервером, блокчейн распределён по множеству компьютеров (узлов). Это исключает необходимость доверия к одному центру.
- Прозрачность. Все транзакции видны всем участникам сети, что обеспечивает открытость.
- Безопасность. Блокчейн защищён криптографией, что делает его практически неуязвимым для взлома.
- Неизменяемость. После записи данных в блок их нельзя изменить без согласия большинства участников сети.
- Автоматизация. С помощью смарт-контрактов можно автоматизировать выполнение условий.

Структура блока
Каждый блок в цепи содержит несколько ключевых компонентов, обеспечивающих его надежность и связь с остальной сетью.
| Компонент | Описание | Пример значения |
|---|---|---|
| Заголовок (Header) | Метаданные блока, включающие служебную информацию | Хеш предыдущего блока, временная метка |
| Номер блока (Nonce/Height) | Уникальный порядковый номер или случайное число для майнинга | 458921 |
| Хеш текущего блока | Криптографический отпечаток содержимого всего блока | 0x3a7f...9b2c |
| Хеш предыдущего блока | Ссылка на блок, предшествующий текущему в цепи | 0x1e4d...8a1f |
| Список транзакций | Набор операций, записанных в данный блок | [TX1, TX2, TX3...] |
| Меркл-корень | Хеш всех транзакций в блоке для быстрой проверки | 0x9c2b...4d1a |
Пример структуры данных блока в коде:
class Block:
def __init__(self, index, previous_hash, timestamp, transactions, nonce):
self.index = index
self.previous_hash = previous_hash
self.timestamp = timestamp
self.transactions = transactions
self.nonce = nonce
self.hash = self.calculate_hash()
def calculate_hash(self):
# Алгоритм вычисления уникального хеша на основе содержимого
block_string = f"{self.index}{self.previous_hash}{self.timestamp}{self.transactions}{self.nonce}"
return hashlib.sha256(block_string.encode()).hexdigest()
В этом примере класс Block создает объект, который автоматически генерирует свой уникальный идентификатор при инициализации. Значение хеша зависит от каждого элемента внутри блока, поэтому изменение даже одной запятой в списке транзакций полностью изменит хеш всего блока.
Принцип соединения блоков
Целостность системы обеспечивается тем, что каждый новый блок содержит хеш предыдущего блока. Это создает физическую невозможность изменения истории без пересчета всей последующей цепочки.
Процесс формирования связи между блоками выглядит следующим образом:
- Создается первый блок, называемый генезис-блок (Genesis Block). Он не имеет предыдущего блока и служит отправной точкой.
- Следующий блок получает хеш первого блока в поле
previous_hash. - При появлении третьего блока он получает хеш второго блока.
- Цепочка растет по мере добавления новых транзакций.
Если злоумышленник попытается изменить данные во втором блоке, хеш этого блока изменится. Третий блок, содержащий старый хеш второго блока, станет невалидным. Для восстановления связи потребуется пересчитать хеши всех блоков начиная со второго до самого конца цепочки. В крупных сетях это требует колоссальных вычислительных мощностей, что делает подмену данных экономически невыгодной.
Распределенная природа сети
Блокчейн функционирует как децентрализованная сеть, где каждая полная копия реестра хранится на множестве узлов (компьютеров).
Децентрализация означает отсутствие единого сервера, контролирующего данные. Любой участник сети может проверить актуальность информации, скачав полную копию цепочки блоков.
Основные характеристики распределенной архитектуры:
- Отказоустойчивость: выход из строя одного или нескольких узлов не останавливает работу системы.
- Прозрачность: все транзакции видны каждому участнику сети.
- Неизменяемость: история записей доступна для аудита в любой момент времени.
- Консенсус: узлы договариваются о правильности состояния реестра через специальные алгоритмы.
Алгоритм консенсуса определяет правила, по которым узлы добавляют новые блоки в цепь. Популярные механизмы включают Proof of Work (доказательство работы) и Proof of Stake (доказательство доли владения). Эти протоколы гарантируют, что все участники сети придут к единому мнению относительно порядка транзакций.
Различие между блокчейном и обычной базой данных заключается в архитектуре хранения и управления данными.
Обычная база данных работает по модели клиент-сервер. Администратор базы данных имеет полные права на чтение, запись и удаление информации. Пользователи зависят от доверия к владельцу сервера. Изменение записей возможно только с разрешения администратора.
Блокчейн работает по модели распределенного реестра. Ни один отдельный участник не обладает правом изменять существующие записи. Добавление новой информации требует согласия большинства участников сети. История изменений сохраняется навсегда и доступна для проверки.
Дополнительные детали о типах блокчейнов
Существует три основных типа блокчейн-сетей:
- Публичный блокчейн: Открыт для любого желающего. Доступ к чтению и записи имеют все пользователи. Примеры: Bitcoin, Ethereum. Высокая безопасность, но низкая скорость.
- Частный блокчейн: Доступ контролируется одной организацией. Только авторизованные узлы могут участвовать в создании блоков. Используется внутри компаний для оптимизации внутренних процессов.
- Консорциумный блокчейн: Управляется группой организаций. Решение о добавлении блока принимается большинством членов консорциума. Компромисс между публичностью и приватностью.
Процесс создания нового блока
Добавление нового блока в цепочку проходит через несколько этапов, зависящих от выбранного алгоритма консенсуса.
В сети с доказательством работы (Proof of Work) майнеры соревнуются в решении сложной математической задачи. Они перебирают различные значения nonce, пока не найдут хеш, удовлетворяющий определенным условиям (например, начинающийся с заданного количества нулей). Первый майнер, нашедший решение, предлагает новый блок сети.
Другие узлы проверяют корректность найденного решения и содержимое блока. Если проверка успешна, блок добавляется в цепочку, а майнер получает вознаграждение в виде криптовалюты. Этот процесс гарантирует, что создание блоков требует реальных затрат энергии и вычислительных ресурсов.
В сети с доказательством доли (Proof of Stake) выбор валидатора происходит на основе размера его доли в криптовалюте и времени удержания средств. Валидатор блокирует часть своих монет как залог и получает право создать следующий блок. Если он пытается добавить некорректные данные, его залог конфисковывается.
Криптография и криптовалюта
Что такое криптография?
Криптография — это наука о защите информации с помощью математических методов. В блокчейне используются криптографические инструменты:
- Шифрование данных, для защиты конфиденциальной информации.
- Хэширование, при котором выполняется преобразование данных в уникальные строки фиксированной длины (хэши). Хэши используются для проверки целостности данных.
- Цифровые подписи для подтверждения подлинности транзакций. Например, пользователь создаёт цифровую подпись с помощью своего приватного ключа, а другие участники сети проверяют её с помощью публичного ключа.
В первую очередь, такие технологии востребованы в сфере информационной безопасности, к примеру для шифрования трафика и обеспечения конфиденциальности. Вы помните, что такое шифр, как работают эти принципы и технологии.
Именно защищённость позволила породить на базе криптографии особую, новую валюту - криптовалюту.
Защита блокчейна строится на криптографических принципах и экономической мотивации участников.
Атака 51% представляет собой ситуацию, когда одна группа майнеров или валидаторов получает контроль над более чем половиной вычислительной мощности сети. Это позволяет ей переписать историю транзакций и провести двойную трату средств. Однако такие атаки крайне дороги и разрушают ценность самой криптовалюты, что делает их бессмысленными с экономической точки зрения.
Двойная трата (Double Spending) — попытка потратить одни и те же средства дважды. В блокчейне это предотвращается тем, что транзакция считается подтвержденной только после включения её в блок, который затем подтверждается следующими блоками. Чем больше блоков следует за транзакцией, тем сложнее её отменить.
Криптография обеспечивает целостность данных. Хеш-функции преобразуют входные данные в строку фиксированной длины. Любое изменение входных данных приводит к кардинальному изменению хеша. Асимметричное шифрование используется для создания цифровых подписей, подтверждающих авторство транзакции.
Что такое криптовалюта?
Криптовалюта — это цифровая валюта, работающая на основе блокчейна. Она не имеет физической формы и не контролируется центральными банками.
Децентрализация. У криптовалюты нет какого-то центрального цонтроля, сеть узлов является распределённой, а управление происходит через консенсус.

Блокчейн в криптовалюте реализован через цепочки блоков, хранение транзакций и защиту через криптографию:

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

Блокчейн, как можно понять из названия (block - блок, chain - цепь), состоит из цепочки блоков. Это блоки можно создавать - такой процесс называется майнингом (mining). Новые блоки создаются, транзакции проверяются, и за создание блока начисляется награда - криптовалюта:

Стейкинг подразумевает блокировку криптовалюты для участия в консенсусе, с дальнейшим подтверждением транзакций и вознаграждением за участие:

Самые известные криптовалюты
Биткоин (BTC)
Биткоин — первая в мире децентрализованная криптовалюта, появившаяся в 2009 году. Инициатор создания проекта использовал псевдоним Сатоши Накамото. Система функционирует без участия центральных банков или государственных органов.
Основная цель создания биткоина заключалась в разработке цифровой наличности, позволяющей проводить прямые платежи между пользователями без посредников. Технология базируется на распределенном реестре транзакций, известном как блокчейн. Каждый узел сети хранит полную копию истории всех операций.
Механизм консенсуса в сети Биткоин называется Proof of Work (доказательство работы). Майнеры используют вычислительные мощности для решения сложных математических задач. Первый майнер, нашедший решение, получает право добавить новый блок в цепочку и вознаграждение в виде новых монет.
| Характеристика | Значение |
|---|---|
| Дата запуска | 3 января 2009 года |
| Алгоритм консенсуса | Proof of Work (SHA-256) |
| Максимальное количество | 21 миллион монет |
| Время блока | Около 10 минут |
| Основное назначение | Цифровое золото, средство сбережения, платежная система |
Сеть Биткоин обладает высокой степенью безопасности благодаря огромной вычислительной мощности участников майнинга. Изменение данных в уже подтвержденных блоках требует пересчета хешей всех последующих блоков, что делает подмену информации практически невозможной.
Протокол предусматривает периодическое уменьшение награды за майнинг каждые четыре года. Это событие называют "халвинг". Оно ограничивает инфляцию и создает искусственный дефицит актива.
Эфириум (ETH)
Эфириум — открытая блокчейн-платформа второго поколения, запущенная в 2015 году. В отличие от Биткоина, который служит преимущественно средством хранения ценности, Эфириум предоставляет инфраструктуру для разработки децентрализованных приложений.
Разработчик платформы Виталик Бутерин предложил идею внедрения виртуальной машины, способной выполнять произвольный код внутри блокчейна. Эта функция позволила создавать смарт-контракты — программы, которые автоматически исполняются при наступлении определенных условий.
Смарт-контракт представляет собой набор правил, записанных в коде. Он гарантирует выполнение обязательств без участия третьих сторон. Примером использования может служить автоматическая выплата страховки при наступлении страхового случая, зафиксированного датчиками.
| Характеристика | Значение |
|---|---|
| Дата запуска | 30 июля 2015 года |
| Алгоритм консенсуса | Proof of Stake (после обновления The Merge) |
| Виртуальная машина | Ethereum Virtual Machine (EVM) |
| Язык контрактов | Solidity, Vyper |
| Основное назначение | Децентрализованные приложения, смарт-контракты, NFT |
Платформа Эфириум стала фундаментом для развития целой экосистемы финансовых инструментов. Децентрализованные финансы (DeFi) позволяют пользователям выдавать кредиты, получать проценты и торговать активами без банков.
Токены стандарта ERC-20 используются для создания собственных цифровых активов внутри сети Эфириум. Этот стандарт упростил разработку новых проектов и обеспечил совместимость различных приложений.
Токен Binance Coin (BNB)
Binance Coin — нативный токен криптовалютной биржи Binance. Проект был создан в 2017 году для обеспечения функциональности одной из крупнейших торговых площадок мира.
Изначально токен работал по принципу токена Эфириума (стандарт ERC-20). Позже создатели запустили собственную блокчейн-сеть BNB Chain, где BNB стал основным активом для оплаты комиссий и стейкинга.
Сеть BNB Chain поддерживает высокую скорость обработки транзакций при низких затратах. Это позволяет использовать платформу для микроплатежей и массовых приложений.
| Характеристика | Значение |
|---|---|
| Дата запуска | 2017 год |
| Алгоритм консенсуса | Proof of Staked Authority (PoSA) |
| Скорость блоков | 3 секунды |
| Комиссии | Низкие, оплата в BNB дает скидку |
| Основное назначение | Оплата комиссий биржи, участие в Launchpad, оплата услуг в экосистеме |
Токен имеет механизм сжигания части эмиссии. Периодически часть монет уничтожается навсегда, что снижает общее предложение и может влиять на стоимость актива.
Экосистема BNB включает в себя множество сервисов: децентрализованную биржу (DEX), кошельки, инструменты для разработчиков и партнерские программы.
Кардано (ADA)
Кардано — блокчейн-платформа третьего поколения, разработанная командой IOG и университетом Эдинбурга. Проект отличается научным подходом к созданию архитектуры.
Разработка ведется поэтапно с публикацией результатов исследований перед внедрением изменений. Это позволяет минимизировать риски ошибок и обеспечить надежность системы.
Архитектура Кардано разделена на два слоя: слой управления учетными записями (CSL) и слой вычислений (CCL). Такое разделение позволяет обновлять функциональность вычислений независимо от управления аккаунтами.
| Характеристика | Значение |
|---|---|
| Дата запуска | 2017 год (тестнет), 2020 год (главная сеть) |
| Алгоритм консенсуса | Ouroboros (Proof of Stake) |
| Подход к разработке | Академический, peer-reviewed |
| Язык смарт-контрактов | Plutus, Marlowe |
| Основное назначение | Масштабируемые dApps, управление идентификацией, финансовая инклюзия |
Протокол Ouroboros использует доказательство доли владения для достижения консенсуса. Валидаторы выбирают случайным образом для создания следующего блока в зависимости от количества заблокированных монет.
Платформа фокусируется на решении проблем масштабируемости и энергоэффективности. Исследования направлены на создание устойчивой инфраструктуры для глобального применения.
Солана (SOL)
Солана — высокопроизводительная блокчейн-платформа, ориентированная на обработку большого количества транзакций в секунду. Проект был представлен в 2020 году.
Ключевой особенностью сети является использование механизма исторического доказательства (Proof of History). Этот алгоритм создает криптографические часы, которые позволяют узлам синхронизироваться без постоянного обмена сообщениями.
Такой подход значительно ускоряет процесс подтверждения транзакций. Сеть способна обрабатывать тысячи операций в секунду при минимальных комиссиях.
| Характеристика | Значение |
|---|---|
| Дата запуска | 2020 год |
| Алгоритм консенсуса | Proof of History + Proof of Stake |
| Пропускная способность | До 65 000 транзакций в секунду |
| Время блока | 400 миллисекунд |
| Основное назначение | Высоконагруженные приложения, NFT, DeFi, игры |
Архитектура Соланы включает в себя несколько компонентов: кластер узлов, механизм лидерства и протокол шифрования. Разработчики оптимизировали работу памяти и дискового ввода-вывода для повышения скорости.
Платформа привлекла внимание сообщества благодаря возможности запуска сложных игр и финансовых приложений с низкой стоимостью использования.
TON (The Open Сеть)
TON — децентрализованная сеть, изначально разработанная командой Telegram. Проект претерпел значительные изменения после того, как регулирующие органы запретили запуск собственного токена Telegram.
Сообщество разработчиков взяло проект под свое управление и продолжило развитие сети как полностью децентрализованной платформы. Название сохранилось, но архитектура была переработана для соответствия принципам Web3.
Сеть TON объединяет в себе высокую скорость, низкие комиссии и интеграцию с мессенджером Telegram. Пользователи могут отправлять платежи и взаимодействовать с ботами прямо внутри приложения.
| Характеристика | Значение |
|---|---|
| Статус | Децентрализованная сеть (ранее проект Telegram) |
| Алгоритм консенсуса | Proof of Stake (Sharding-based) |
| Шардинг | Динамический шардинг для масштабирования |
| Интеграция | Глубокая интеграция с Telegram |
| Основное назначение | Микротранзакции, веб-приложения, NFT, платежи |
Динамический шардинг позволяет сети автоматически добавлять новые блоки обработки данных по мере роста нагрузки. Это обеспечивает линейное масштабирование производительности.
Экосистема TON включает в себя собственный кошелек, браузер для доступа к dApps и инструменты для разработчиков. Проекты могут легко интегрироваться с пользовательской базой Telegram.
Сравнительная характеристика платформ
Различные криптовалюты решают специфические задачи и имеют уникальные архитектурные особенности. Выбор платформы зависит от требований конкретного проекта.
| Параметр | Bitcoin | Ethereum | Binance Coin | Cardano | Solana | TON |
|---|---|---|---|---|---|---|
| Главная цель | Хранение ценности | Смарт-контракты | Экосистема биржи | Научная надежность | Высокая скорость | Интеграция с мессенджером |
| Скорость | Низкая | Средняя | Высокая | Средняя | Очень высокая | Высокая |
| Комиссии | Высокие | Переменные | Низкие | Низкие | Минимальные | Низкие |
| Консенсус | PoW | PoS | PoSA | PoS | PoH + PoS | PoS |
| Масштабируемость | Ограниченная | Через L2 | Высокая | Шариинг | Шардинг | Динамический шардинг |
Каждая платформа развивает свою нишу в области блокчейн-технологий. Биткоин остается эталоном безопасности, Эфириум доминирует в сфере смарт-контрактов, а новые игроки предлагают решения для конкретных сценариев использования.
Транзакции
Транзакция представляет собой операцию по передаче цифровых активов или исполнению смарт-контракта. Процесс её обработки проходит через несколько строгих этапов, обеспечивающих безопасность и неизменность данных.
Как работают транзакции?
- Пользователь инициирует транзакцию, указывая адрес получателя и сумму.
- Транзакция подписывается цифровой подписью с использованием приватного ключа.
- Транзакция отправляется в сеть, где майнеры (или валидаторы) проверяют её подлинность.
- После подтверждения транзакция добавляется в блок и становится частью блокчейна.
Инициация транзакции
Пользователь создает запрос на передачу средств с помощью программного обеспечения (кошелька). В этом этапе формируются обязательные параметры операции:
- Адрес получателя: Публичный ключ или хеш адреса, куда будут отправлены средства.
- Сумма перевода: Количество единиц валюты для передачи.
- Комиссия сети (Gas Fee): Вознаграждение узлам за обработку запроса.
- Nonce: Уникальный порядковый номер транзакции от конкретного отправителя, предотвращающий повторную отправку.
Программа собирает эти данные в структуру, соответствующую протоколу конкретной сети. Формирование происходит локально на устройстве пользователя до момента отправки в сеть.
Криптографическая подпись
Для подтверждения права распоряжения средствами используется асимметричная криптография. Пользователь подписывает созданную транзакцию своим приватным ключом.
Приватный ключ хранится в секрете только у владельца и никогда не передается в сеть. Алгоритм подписи генерирует уникальную строку данных, которая математически связывает содержимое транзакции с приватным ключом.
Этот процесс гарантирует два свойства:
- Аутентификация: Любой участник сети может убедиться, что владелец публичного адреса действительно инициировал операцию.
- Целостность: Любое изменение суммы или получателя после подписания сделает подпись недействительной.
Пример реализации подписи на языке Python:
import hashlib
from cryptography.hazmat.primitives import hashes
from cryptography.hazmat.primitives.asymmetric import ec
from cryptography.hazmat.backends import default_backend
def sign_transaction(private_key, transaction_data):
"""
Генерация цифровой подписи для транзакции.
private_key: Приватный ключ (закрытый)
transaction_data: Сериализованные данные транзакции
"""
# Вычисление хеша данных транзакции
message_hash = hashlib.sha256(transaction_data.encode()).digest()
# Подписание хеша приватным ключом
signature = private_key.sign(
message_hash,
ec.ECDSA(hashes.SHA256())
)
return signature
def verify_signature(public_key, transaction_data, signature):
"""
Проверка подписи публичным ключом.
public_key: Публичный ключ (открытый)
"""
message_hash = hashlib.sha256(transaction_data.encode()).digest()
try:
public_key.verify(signature, message_hash, ec.ECDSA(hashes.SHA256()))
return True
except Exception:
return False
В этом примере функция sign_transaction принимает данные и закрытый ключ, вычисляет их хеш и применяет алгоритм ECDSA для создания подписи. Функция verify_signature позволяет любому участнику сети проверить подлинность этой подписи, используя только открытый ключ отправителя.
Распространение и проверка в сети
Подписанная транзакция попадает в пул неподтвержденных транзакций (mempool). Узлы сети (ноды) принимают этот запрос и начинают его верификацию.
Проверка включает следующие действия:
- Проверка формата: Соответствие структуры транзакции спецификации протокола.
- Проверка подписи: Использование открытого ключа для подтверждения авторства.
- Проверка баланса: Анализ истории транзакций отправителя для наличия достаточных средств.
- Проверка двойной траты: Убеждение в том, что указанные средства еще не были потрачены ранее.
- Проверка комиссии: Оценка достаточности вознаграждения для приоритетной обработки.
Если транзакция проходит все проверки, она считается валидной и остается в пуле. Недействительные транзакции отбрасываются и не попадают в память сети.
Майнеры (в сетях Proof of Work) или валидаторы (в сетях Proof of Stake) выбирают набор валидных транзакций из пула для включения в новый блок. Критерии выбора часто включают размер комиссии: транзакции с более высокой комиссией получают приоритет.
Блокировка и консенсус
Выбранные транзакции упаковываются в новый блок вместе с другими данными. Майнер или валидатор начинает процесс достижения консенсуса для этого блока.
В сетях Proof of Work: Участник выполняет вычисления для нахождения хеша, удовлетворяющего сложным условиям (доказательство работы). Это требует значительных ресурсов времени и энергии.
В сетях Proof of Stake: Валидатор блокирует определенное количество монет как залог. Система случайным образом выбирает валидатора, который предложит блок. Если он действует честно, он получает награду. При попытке мошенничества залог сжигается.
После успешного создания блока остальные узлы сети проверяют его корректность. Они сверяют подписи, балансы и ссылки на предыдущие блоки. Если большинство узлов соглашается с состоянием нового блока, он добавляется в цепочку.
Запись в реестр и окончательность
Добавленный блок становится частью неизменяемой истории блокчейна. Транзакции внутри него считаются подтвержденными.
Количество подтверждений растет по мере добавления новых блоков поверх текущего. Чем больше блоков следует за транзакцией, тем выше степень ее необратимости.
| Уровень подтверждений | Статус транзакции | Вероятность отмены |
|---|---|---|
| 0 | Неподтвержденная | Высокая (может быть удалена из mempool) |
| 1 | Подтвержденная | Низкая (теоретически возможна атака 51%) |
| 3-6 | Окончательно подтвержденная | Практически нулевая |
В момент записи в блок транзакция меняет состояние учетных записей. Баланс отправителя уменьшается на сумму перевода и комиссию, баланс получателя увеличивается на полученную сумму. Эти изменения фиксируются в мировом состоянии (world state) сети.
Особенности обработки смарт-контрактов
Транзакции могут содержать не только передачу средств, но и вызов функций смарт-контракта. В таком случае данные транзакции включают код функции и необходимые аргументы.
При обработке такой транзакции узлы запускают виртуальную машину (например, EVM в Ethereum) для исполнения кода контракта. Результат выполнения обновляет внутреннее состояние контракта и может вызывать изменения балансов других аккаунтов.
Если при исполнении кода возникает ошибка (недостаточно газа, логическая ошибка), транзакция откатывается. Средства за вычетом затраченного газа возвращаются отправителю, а состояние реестра не меняется.
Пример структуры данных для вызова контракта:
{
"from": "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
"to": "0x1234567890abcdef1234567890abcdef12345678",
"value": "0",
"gas": "200000",
"gasPrice": "20000000000",
"Данные": "0xa9059cbb000000000000000000000000...0000000000000000000000000000000000000001"
}
Поле Данные содержит закодированный вызов метода контракта. В данном примере это стандартная функция перевода токенов ERC-20.
Обработка ошибок и отмена
Система блокчейна не имеет централизованного администратора, способного отменить транзакцию вручную. Если транзакция была успешно подписана и отправлена, она останется в истории навсегда.
Возможны следующие сценарии проблем:
- Недостаток средств: Транзакция будет отклонена узлами до попадания в блок.
- Ошибка в коде контракта: Транзакция выполнится частично или полностью откатится, но комиссия будет списана.
- Неправильный адрес: Средства будут отправлены на несуществующий или чужой адрес. Восстановить их невозможно без доступа к приватному ключу этого адреса.
Разработчики приложений внедряют механизмы предварительной валидации на стороне клиента, чтобы минимизировать вероятность таких ошибок. Пользователи должны тщательно проверять адресата и сумму перед подписанием транзакции.
Модели транзакций
Различные блокчейн-сети используют разные модели учета состояния, что влияет на скорость и стоимость транзакций.
Модель UTXO (Unspent Transaction Output) Используется в Биткоине. Каждая транзакция тратит предыдущие выходы (UTXO) и создает новые. Состояние системы определяется набором всех доступных выходов. Это обеспечивает высокую масштабируемость и конфиденциальность, так как нет единого глобального счета.
Модель Аккаунтов (Account Model) Используется в Эфириуме и большинстве альткоинов. Каждый адрес имеет текущий баланс и счетчик nonce. Транзакция изменяет баланс напрямую. Эта модель проще для разработки смарт-контрактов, но требует хранения большего объема данных о состоянии каждого аккаунта.
| Характеристика | Модель UTXO | Модель Аккаунтов |
|---|---|---|
| Представление данных | Набор неизрасходованных выходов | Балансы и nonce по адресам |
| Конфиденциальность | Высокая (трудно связать входы и выходы) | Средняя (балансы видны всем) |
| Параллелизм | Легче реализовать параллельную обработку | Требует синхронизации состояния |
| Сложность смарт-контрактов | Ниже (нет состояния между транзакциями) | Выше (поддержка сложного состояния) |
| Примеры сетей | Bitcoin, Litecoin | Ethereum, BNB Chain, Cardano |
Выбор модели зависит от требований к производительности, безопасности и функциональности сети.
Безопасность транзакций
Защита транзакций базируется на криптографии и экономических стимулах.
Цифровая подпись гарантирует, что только владелец приватного ключа может инициировать перевод. Взломать эту защиту можно только путем подбора ключа или использования уязвимостей в алгоритмах шифрования, что на сегодняшний день считается невозможным для современных стандартов.
Децентрализация предотвращает цензуру. Ни один узел не может запретить проведение валидной транзакции, если она соответствует правилам сети. Для остановки работы сети злоумышленнику потребуется захватить более 50% вычислительной мощности или доли стейкинга.
Экономические барьеры делают атаки невыгодными. Попытка изменить историю транзакций требует колоссальных затрат энергии или капитала, которые превышают потенциальную прибыль от мошенничества.
Криптобиржи
Криптобиржи — это платформы для покупки, продажи и обмена криптовалют.
Криптобиржа — это онлайн-платформа, обеспечивающая обмен криптовалют между собой или на традиционные фиатные деньги (доллары, евро, рубли). Сервис выступает посредником между покупателями и продавцами, предоставляя инструменты для поиска контрагента, исполнения сделок и хранения средств.
Платформы выполняют функции центрального узла ликвидности, где сходятся ордера на покупку и продажу. Они предоставляют графики котировок, историю торгов, инструменты технического анализа и системы безопасности для защиты активов пользователей.
Основные типы операций на биржах:
- Спот-торговля: Мгновенная покупка или продажа актива по текущей рыночной цене.
- Маржинальная торговля: Торговля с использованием заемных средств (кредитного плеча) для увеличения потенциальной прибыли или убытка.
- Фьючерсная торговля: Заключение контрактов на поставку актива в будущем по фиксированной цене.
- Стейкинг и депозиты: Получение процентов за хранение монет на счетах биржи.
Архитектура работы бирж
Процесс торговли на централизованной бирже (CEX) включает несколько этапов взаимодействия пользователя с системой.
- Регистрация и верификация (KYC): Пользователь создает аккаунт и проходит проверку личности. Это требование регулирующих органов для предотвращения отмывания денег.
- Депозит: Пользователь переводит средства со своего кошелька на счет биржи или пополняет баланс через банковский перевод.
- Размещение ордера: Пользователь задает параметры сделки: тип (лимитный или рыночный), актив, количество и цену.
- Сопоставление ордеров (Matching Engine): Специальный алгоритм находит совпадающие ордера покупателей и продавцов и исполняет сделку.
- Вывод средств: После завершения сделки пользователь может оставить активы на балансе биржи или вывести их на внешний кошелек.
Серверная часть биржи обрабатывает тысячи запросов в секунду. Для обеспечения высокой скорости используются инкрементальные базы данных и кэширование.
Обзор популярных платформ
Ниже приведены характеристики трех крупнейших мировых криптобирж.
Binance
Binance — крупнейшая в мире криптобиржа по объему торгов. Платформа предлагает широкий спектр услуг, включая спот, фьючерсы, стейкинг и децентрализованные продукты.
| Характеристика | Описание |
|---|---|
| Основание | 2017 год |
| География | Глобальная (с ограничениями в некоторых странах) |
| Комиссии | Низкие, скидка при использовании токена BNB |
| Ликвидность | Экстремально высокая |
| Особенности | Собственная блокчейн-сеть BNB Chain, Launchpad для новых проектов |
Платформа известна своей масштабируемостью и поддержкой сотен торговых пар. Система безопасности включает двухфакторную аутентификацию, антифишинговый код и резервный фонд SAFU для покрытия возможных взломов.
Coinbase
Coinbase — американская публичная компания, одна из первых легальных криптобирж в США. Платформа ориентирована на начинающих пользователей и институциональных инвесторов.
| Характеристика | Описание |
|---|---|
| Основание | 2012 год |
| География | США, Европа, Канада и другие страны |
| Комиссии | Средние/Высокие (удобство превыше экономии) |
| Ликвидность | Высокая |
| Особенности | Простой интерфейс, интеграция с банками США, публичная котировка акций (NASDAQ) |
Coinbase славится своим строгим соблюдением регуляторных норм и высоким уровнем доверия со стороны традиционного финансового сектора. Платформа предлагает образовательные курсы для обучения новичков.
Kraken
Kraken — старейшая и наиболее уважаемая биржа с фокусом на безопасность и надежность. Платформа известна отсутствием случаев крупных взломов и прозрачностью аудита резервов.
| Характеристика | Описание |
|---|---|
| Основание | 2011 год |
| География | Глобальная (с учетом локальных ограничений) |
| Комиссии | Конкурентные, зависят от объема торгов |
| Ликвидность | Высокая |
| Особенности | Поддержка фиатных валют многих стран, профессиональные инструменты трейдинга |
Kraken предоставляет расширенные возможности для маржинальной торговли и фьючерсов. Биржа регулярно публикует доказательства резервов (Proof of Reserves), подтверждая наличие всех средств клиентов.
Сравнительная таблица характеристик
| Параметр | Binance | Coinbase | Kraken |
|---|---|---|---|
| Целевая аудитория | Продвинутые трейдеры, массовый рынок | Новички, институционалы | Профессионалы, консервативные пользователи |
| Количество монет | Более 350 | Около 250 | Более 200 |
| Интерфейс | Сложный, много функций | Простой, минималистичный | Баланс простоты и сложности |
| Поддержка фиата | Карты, банковские переводы, P2P | Банковские переводы, карты | Банковские переводы, карты, чеки |
| Мобильное приложение | Отличное, полнофункциональное | Упрощенное, удобное | Полноценное, профессиональное |
| Безопасность | Высокая, есть фонд SAFU | Максимальная, страховка FDIC для фиата | Максимальная, отсутствие взломов |
Централизованные и Децентрализованные биржи
Существует два основных типа криптобирж, различающихся архитектурой управления средствами.
Централизованные биржи (CEX) хранят средства пользователей на своих серверах. Пользователь доверяет бирже управление приватными ключами. Это обеспечивает высокую скорость обработки сделок и удобство использования, но создает риск потери средств при взломе платформы или банкротстве компании.
Децентрализованные биржи (DEX) работают на смарт-контрактах без участия посредника. Пользователи торгуют напрямую со своих кошельков, сохраняя контроль над приватными ключами. Примеры: Uniswap, PancakeSwap. Такие платформы более безопасны в плане цензуры, но требуют от пользователя технических знаний и оплаты комиссий сети.
| Тип | Контроль над ключами | Скорость | Комиссии | Ответственность |
|---|---|---|---|---|
| CEX | Хранит биржа | Очень высокая | Низкие (внутри сети) | Пользователь не контролирует средства напрямую |
| DEX | Хранит пользователь | Зависит от сети | Зависит от нагрузки сети | Полный контроль у пользователя |
Риски и безопасность
Работа с криптобиржами сопряжена с рядом рисков, которые необходимо учитывать.
Риск взлома: Центральные хранилища средств являются привлекательной целью для хакеров. Даже при наличии систем защиты возможны утечки данных или компрометация внутренних серверов.
Риск регуляции: Государственные органы могут вводить ограничения на работу конкретных бирж или требовать блокировки счетов определенных пользователей. Это может привести к временному или постоянному недоступу к средствам.
Риск мошенничества: Недобросовестные проекты могут создавать фейковые биржи для кражи средств. Важно проверять репутацию платформы и использовать только известные сервисы.
Риск "Не твои ключи — не твои монеты": При хранении средств на бирже пользователь не имеет прямого доступа к приватным ключам. В случае отзыва лицензии биржи или судебного разбирательства доступ к активам может быть заблокирован.
Рекомендуется хранить крупные суммы на аппаратных кошельках, а на биржах оставлять только средства для активной торговли.
Основы криптографии
Основные понятия криптографии
В своей базовой форме криптография — это наука о преобразовании информации таким образом, чтобы только авторизованные стороны могли получить доступ к её содержанию. Для описания этого процесса вводятся следующие базовые термины:
- Открытый текст (plaintext) — исходное сообщение, представленное в читаемой форме и предназначенное для передачи или хранения. Это может быть текст документа, бинарные данные, сетевой пакет или любой другой цифровой объект.
- Шифртекст (ciphertext) — результат применения криптографического преобразования к открытому тексту. Шифртекст по своей сути не должен содержать информации о содержании исходного сообщения без обладания дополнительными сведениями.
- Ключ (key) — секретный параметр, используемый как при шифровании, так и при расшифровании. Без знания ключа восстановление исходного сообщения из шифртекста должно быть вычислительно неосуществимо.
- Алгоритм (cipher) — детерминированная математическая процедура, определяющая, как именно преобразуется открытый текст в шифртекст. Алгоритм может быть симметричным (один и тот же ключ для шифрования и расшифрования) или асимметричным (разные ключи: открытый и закрытый).
- Шифрование (encryption) — процесс применения алгоритма к открытому тексту с использованием ключа с целью получения шифртекста.
- Расшифрование (decryption) — обратный процесс, направленный на восстановление открытого текста из шифртекста с использованием ключа.
- Криптоанализ — область науки, изучающая методы, с помощью которых можно раскрыть содержание шифртекста без обладания ключом. Устойчивость криптосистемы оценивается по её стойкости к различным видам криптоаналитических атак.
Эти понятия формируют основу любого криптографического протокола, независимо от сложности и эпохи его происхождения.
Историческая эволюция шифров
Криптография прошла путь от элементарных подстановок до высокоматематизированных систем, основанных на теории чисел и алгебраической геометрии. Рассмотрим ключевые вехи этого пути.
Шифр Цезаря
Один из самых ранних известных шифров — шифр Цезаря, приписываемый Юлию Цезарю. Он представляет собой простую замену, при которой каждая буква алфавита сдвигается на фиксированное число позиций. Например, при сдвиге на 3: A → D, B → E и так далее. Несмотря на историческую значимость, этот шифр крайне уязвим: пространство ключей ограничено размером алфавита, а частотный анализ букв позволяет легко его взломать. Он служит иллюстрацией того, что простота реализации не гарантирует безопасность.
Шифр Виженера
В XVI веке Блез де Виженер предложил многоалфавитную подстановку, где ключ представляет собой слово, циклически повторяемое над открытым текстом. Каждая буква ключа определяет величину сдвига для соответствующей буквы сообщения. Этот метод значительно усложняет частотный анализ, поскольку одна и та же буква открытого текста может быть зашифрована разными символами. Однако даже Виженеров шифр не является стойким: методы Касиски и Фридмана, разработанные в XIX веке, позволяют определить длину ключа и последовательно расшифровать сообщение.
Машина «Энигма»
Во время Второй мировой войны немецкая армия использовала роторную шифровальную машину «Энигма», реализующую сложную полиграммную подстановку с переменной перестановкой алфавита при каждом нажатии клавиши. Несмотря на кажущуюся стойкость (пространство ключей исчислялось миллиардами), машина была взломана усилиями польских и британских криптоаналитиков, включая Алана Тьюринга. Ключевую роль сыграло использование предсказуемых фраз в сообщениях (например, «Heil Hitler»), а также разработка электромеханической машины «Бомба», автоматизировавшей перебор возможных настроек роторов. Этот эпизод стал поворотным моментом в истории криптографии: он продемонстрировал, что даже сложные шифры могут быть раскрыты при недостатке энтропии в ключах и протоколах.
Современная симметричная криптография
С развитием вычислительной техники и возникновением потребности в массовом шифровании данных (например, при передаче через интернет или хранении на диске) возникла необходимость в стандартизированных, быстрых и стойких алгоритмах. Так появилась эпоха блочных и поточных шифров.
DES и его преемники
В 1977 году Национальным бюро стандартов США (ныне NIST) был принят стандарт шифрования данных DES (Данные Encryption Standard). DES работал с 64-битными блоками и использовал 56-битный ключ. Уже в 1990-х годах стало ясно, что длина ключа недостаточна для защиты от атак полным перебором: в 1998 году Electronic Frontier Foundation построила специализированное устройство, взломавшее DES за несколько дней. В попытке продлить жизнь DES был предложен 3DES — тройное применение DES с разными ключами. Однако он оказался медленным и в итоге был признан устаревшим.
AES — золотой стандарт симметричной криптографии
В 2001 году NIST утвердил AES (Advanced Encryption Standard) в качестве нового федерального стандарта. AES — это блочный шифр с фиксированным размером блока 128 бит и поддержкой длины ключа 128, 192 или 256 бит. Он основан на субъективно простой, но математически строгой структуре под названием Substitution-Permutation Сеть. AES сочетает высокую стойкость, эффективность на различных архитектурах и устойчивость к известным атакам. На сегодняшний день не существует практических атак на полнораундовый AES при корректном применении. AES лежит в основе таких технологий, как WPA2/WPA3 для защиты Wi-Fi, шифрование дисков (BitLocker, FileVault, LUKS), защищённые архивы (7-Zip, ZIP с AES), а также TLS при передаче данных по HTTPS.
Поточные шифры: ChaCha20
В отличие от блочных шифров, поточные шифры генерируют псевдослучайную последовательность битов (keystream), которая побитово накладывается на открытый текст с помощью операции XOR. Такой подход особенно эффективен для потоковой передачи данных и устройств с ограниченными ресурсами. ChaCha20, разработанный Дэниелом Бернстайном, стал популярным благодаря своей высокой скорости на процессорах без аппаратной поддержки AES (например, на мобильных устройствах). Он используется в современных версиях протокола TLS (начиная с 1.3), в протоколе QUIC (база HTTP/3) и в мессенджерах, таких как Signal.
Устаревшие и небезопасные алгоритмы
Некоторые ранее популярные шифры сегодня считаются небезопасными:
- RC4 — поточный шифр, широко использовавшийся в SSL/TLS и WEP. Критические уязвимости в его генераторе псевдослучайных чисел привели к его полному запрету в современных протоколах.
- Blowfish — хотя и не взломан, его малый размер блока (64 бита) делает его уязвимым к атаке «birthday», особенно при шифровании больших объёмов данных.
Режимы работы блочных шифров
Блочные шифры по своей природе работают с фиксированными блоками данных. Для шифрования сообщений произвольной длины используются режимы сцепления блоков (block cipher modes of operation).
- ECB (Electronic Codebook) — самый простой режим, при котором каждый блок шифруется независимо. Его главный недостаток — идентичные блоки открытого текста приводят к идентичным блокам шифртекста, что позволяет распознать структуру данных (например, на изображении остаются видимыми контуры). ECB не рекомендуется к использованию в любых практических сценариях.
- CBC (Cipher Block Chaining) — каждый блок перед шифрованием комбинируется (XOR) с предыдущим шифртекстом. Первый блок использует случайный вектор инициализации (IV), который должен быть уникальным для каждой сессии. CBC обеспечивает лучшую диффузию, но уязвим к атакам на отступления при неправильной реализации (например, атака BEAST в TLS 1.0).
- GCM (Galois/Counter Mode) — современный режим, сочетающий режим счётчика (CTR) с механизмом проверки целостности на основе полей Галуа. GCM обеспечивает аутентифицированное шифрование с присоединёнными данными (AEAD), то есть одновременно конфиденциальность и целостность. Он широко используется в TLS 1.2/1.3, IPsec и других протоколах, требующих высокой производительности и безопасности.
Асимметричная криптография
Если симметричная криптография требует, чтобы обе стороны заранее обладали общим секретным ключом, то асимметричная криптография (или криптография с открытым ключом) решает одну из фундаментальных проблем информационной безопасности — проблему распределения ключей. В этой модели каждая сторона генерирует пару ключей: открытый ключ (public key), который может быть свободно распространён, и закрытый ключ (private key), который хранится в строгой тайне. Данные, зашифрованные открытым ключом, могут быть расшифрованы только соответствующим закрытым ключом, и наоборот — это свойство лежит в основе всей архитектуры современной цифровой безопасности.
RSA — первый практичный асимметричный алгоритм
Алгоритм RSA, предложенный в 1977 году Роном Ривестом, Ади Шамиром и Леонардом Адлеманом, стал первым широко применимым методом асимметричного шифрования. Его безопасность основана на вычислительной сложности факторизации больших целых чисел: даже при знании произведения двух больших простых чисел (это и есть часть открытого ключа), восстановление самих множителей без закрытого ключа требует неприемлемо больших вычислительных ресурсов при достаточной длине ключа.
RSA используется не столько для шифрования самих сообщений (из-за низкой скорости и ограничений по размеру блока), сколько для:
- обмена симметричными ключами (например, в начальной фазе TLS-рукопожатия);
- создания и проверки цифровых подписей.
Для обеспечения стойкости к современным атакам рекомендуется использовать ключи длиной не менее 2048 бит; 3072 и 4096 бит считаются более перспективными в контексте развития квантовых вычислений.
ECC — криптография на эллиптических кривых
В 1985 году Нил Коблиц и Виктор Миллер независимо предложили использовать эллиптические кривые над конечными полями в криптографии. Алгоритмы на основе этой теории получили название ECC (Elliptic Curve Cryptography). Вместо задачи факторизации ECC опирается на задачу дискретного логарифма на эллиптической кривой (ECDLP), которая считается значительно более сложной при эквивалентном уровне безопасности.
Преимущество ECC — компактность ключей. Например:
- 256-битный ключ ECC обеспечивает стойкость, сопоставимую с 3072-битным ключом RSA;
- 384-битный ключ ECC ≈ 7680-битный RSA.
Это приводит к существенной экономии памяти, пропускной способности и вычислительных ресурсов — особенно критично для мобильных устройств, встроенных систем и блокчейн-платформ. ECC используется в:
- протоколах TLS 1.2/1.3 (через кривые P-256, X25519);
- Bitcoin и Ethereum (для генерации адресов и подписей);
- Signal, WhatsApp (для сквозного шифрования);
- SSH (алгоритмы ecdsa-sha2-nistp256, ed25519).
Особо стоит отметить EdDSA (Edwards-curve Digital Signature Algorithm), реализацию ECC на кривой Edwards, предложенную Дэниелом Бернстайном. Она обеспечивает высокую скорость, устойчивость к побочным каналам и детерминированную генерацию подписей, что исключает ряд уязвимостей, присущих классическим схемам.
Протоколы обмена ключами: Diffie–Hellman и его эволюция
В 1976 году Уитфилд Диффи и Мартин Хеллман предложили революционный протокол обмена ключами, позволяющий двум сторонам, не имеющим предварительного общего секрета, сгенерировать общий симметричный ключ по открытому каналу связи, прослушиваемому злоумышленником.
Идея проста: стороны выбирают общую базу (например, большое простое число p и генератор g) и обмениваются публичными частями своих вычислений. Благодаря свойствам модульной арифметики, каждая сторона может вычислить один и тот же общий секрет, но внешний наблюдатель — нет, поскольку ему придётся решить задачу дискретного логарифма.
Современные реализации используют:
- классический DH (на конечных полях) — уступает место более эффективным аналогам;
- ECDH (Elliptic Curve Diffie–Hellman) — вариант на эллиптических кривых, обеспечивающий тот же уровень безопасности с меньшими затратами;
- X25519 — конкретная реализация ECDH на кривой Curve25519, рекомендованная IETF и используемая в TLS 1.3, Signal и других протоколах.
Важно: базовый DH не обеспечивает аутентификации и уязвим к атаке «человек посередине» (MITM). Поэтому в реальных протоколах он комбинируется с цифровыми подписями или сертификатами.
Применение криптографии
Современные криптографические примитивы редко используются в изоляции. Они интегрируются в криптографические протоколы, решающие комплексные задачи безопасности.
TLS/SSL — основа безопасного интернета
Протокол Transport Layer Безопасность (TLS) обеспечивает конфиденциальность и целостность данных при передаче по сети. При установлении соединения (рукопожатии):
- Сервер передаёт свой сертификат, содержащий открытый ключ (обычно RSA или ECDSA).
- Клиент проверяет подлинность сертификата через доверенные центры сертификации (CA).
- Стороны согласовывают симметричный сеансовый ключ — либо через RSA key transport (клиент шифрует ключ открытым ключом сервера), либо через (EC)DHE — ephemeral Diffie–Hellman, обеспечивающий perfect forward secrecy (PFS): даже если закрытый ключ сервера будет скомпрометирован в будущем, прошлые сессии останутся защищёнными.
- Весь последующий трафик шифруется симметричными алгоритмами (AES-GCM, ChaCha20-Poly1305).
SSH — безопасный удалённый доступ
Secure Shell (SSH) использует асимметричную криптографию для аутентификации пользователей и серверов. Пользователь генерирует пару RSA или Ed25519 ключей. Открытый ключ размещается на сервере, закрытый — хранится локально. При подключении клиент доказывает владение закрытым ключом без его передачи, используя цифровую подпись. Это исключает необходимость передачи паролей и защищает от перехвата учётных данных.
PGP/GPG — шифрование почты и файлов
Pretty Good Privacy (PGP) и его свободная реализация GnuPG (GPG) реализуют гибридную криптосистему для шифрования электронной почты и файлов. При шифровании сообщения:
- генерируется случайный симметричный ключ;
- сообщение шифруется этим ключом (обычно AES);
- симметричный ключ шифруется открытым ключом получателя (RSA или ECC);
- оба фрагмента передаются вместе.
Такой подход сочетает эффективность симметричного шифрования и удобство распределения ключей в асимметричной модели.
Цифровые подписи
Цифровая подпись — криптографический аналог рукописной подписи. Она обеспечивает:
- аутентичность (сообщение действительно отправлено владельцем закрытого ключа);
- целостность (любое изменение сообщения сделает подпись недействительной);
- неотказуемость (non-repudiation) — отправитель не может отрицать факт отправки.
Подпись создаётся путём хеширования сообщения и шифрования хеша закрытым ключом. Получатель проверяет подпись, расшифровывая её открытым ключом и сравнивая с хешем полученного сообщения.
Криптография и криптовалюты
Криптовалюты — класс децентрализованных цифровых активов, функционирующих без доверенного центра. Их безопасность и функциональность целиком зависят от криптографических механизмов.
Криптографические основы блокчейна
-
Хеширование
Каждый блок в цепочке содержит хеш предыдущего блока, что создаёт неизменяемую последовательность. Любое изменение данных в блоке приведёт к изменению его хеша и нарушению всей цепи. Используются криптографические хеш-функции (SHA-256 в Bitcoin, Keccak в Ethereum), обладающие свойствами:- детерминированности;
- устойчивости к коллизиям;
- «лавинного эффекта».
-
Асимметричная криптография для управления активами
Владение криптовалютой определяется закрытым ключом. Адрес кошелька — это хеш открытого ключа (в Bitcoin:RIPEMD160(SHA256(public_key))). Чтобы потратить средства, владелец создаёт транзакцию и подписывает её своим закрытым ключом. Сеть проверяет подпись с помощью открытого ключа, включённого в транзакцию. Если подпись верна — транзакция принимается. -
Эллиптические кривые в действии
Bitcoin использует стандартную кривую secp256k1. Закрытый ключ — случайное 256-битное число; открытый ключ — точка на кривой, полученная умножением базовой точки на закрытый ключ. Обратная операция (восстановление закрытого ключа из открытого) эквивалентна решению ECDLP и считается вычислительно невозможной. -
Цифровые подписи: ECDSA и Schnorr
Bitcoin изначально использовал ECDSA (Elliptic Curve Digital Signature Algorithm). Однако в 2021 году в рамках обновления Taproot была добавлена поддержка Schnorr-подписей, которые позволяют агрегировать несколько подписей в одну, повышая конфиденциальность и эффективность.
Что криптография не обеспечивает в криптовалютах
Важно понимать: криптография защищает достоверность операций, но не решает проблемы:
- управления приватными ключами (утеря ключа = потеря активов);
- социальной инженерии и фишинга;
- уязвимостей в смарт-контрактах;
- централизации майнинга или валидации.
Криптография — фундамент, но не панацея.
Токены и смарт-контракты
Что такое токен?
Токены — это цифровые активы, созданные на базе существующих блокчейнов (например, Ethereum).
Типы токенов:
- Фунгируемые токены (Fungible Tokens) - Каждый токен идентичен другому (например, Bitcoin, ETH).
- НФТ (NFT) - Уникальные токены, представляющие цифровые или физические активы.
- Утилитарные токены - Предоставляют доступ к услугам или продуктам (например, токены для оплаты комиссий).
- Секьюрети токены - Представляют долю в компании или проекте.
Что такое смарт-контракт?
Смарт-контракт — это программа, которая автоматически выполняет условия соглашения, если они соблюдены. Например, если вы покупаете товар, смарт-контракт переводит деньги продавцу только после подтверждения доставки.
Примеры смарт-контрактов:
- DeFi (децентрализованные финансы), кредитование, стейкинг, обмен токенами.
- Страхование, автоматическая выплата компенсации при наступлении страхового случая.
- Игры, распределение наград между игроками.
NFT и DeFi
NFT (Non-Fungible Token) — это уникальный токен, который представляет собой цифровой или физический актив. В отличие от обычных токенов, каждый NFT уникален и не может быть заменён другим.
DeFi (Decentralized Finance) — это экосистема финансовых сервисов, работающих на блокчейне без участия банков или других посредников.
DeFi-приложения работают на смарт-контрактах, пользователи предоставляют свои активы в пулы ликвидности для получения дохода.
Заблокированные токены приносят проценты — это стейкинг. Децентрализованные биржи (DEX) позволяют обменивать токены напрямую.
См. также
Другие статьи этого же раздела в боковом меню (как на странице «О разделе»). Волатильность — это степень изменения цены актива за определённый период. Криптовалюты отличаются высокой волатильностью — стоимость может измениться на 10–30 за один день. Итоги — материал энциклопедии Вселенная IT. Чек-лист самопроверки — материал энциклопедии Вселенная IT.Криптовалюты
Итоги
Чек-лист самопроверки