Блокчейн

Блокчейн на масштабе: Coinbase, Binance

В 2022 году FTX хранила $10 миллиардов пользовательских средств. У неё не было ни cold storage, ни compliance-системы, ни audit trail - CEO переводил средства клиентов в свой хедж-фонд через бэкдор в базе данных. Coinbase в том же году хранила $256 миллиардов и прошла аудит SEC без замечаний. Разница между этими биржами - не в блокчейн-технологиях, а в инфраструктуре масштабирования: wallet архитектура, transaction processing pipeline, compliance automation и production-grade operations.

  • **Coinbase** обрабатывает 1.5B+ транзакций ежедневно на 250+ криптоактивах, хранит 98% средств в air-gapped cold storage с HSM и key ceremony
  • **Binance** пережила взлом на 40M в 2019 году и компенсировала пользователям из SAFU-фонда за 48 часов - благодаря архитектуре, где hot wallet содержал менее 2% средств
  • **Compliance-инфраструктура** крупных бирж подаёт тысячи SAR в месяц, сканирует каждую транзакцию через Chainalysis/Elliptic/TRM за 200ms и блокирует санкционные адреса в течение 15 минут после обновления OFAC-списка

Предварительные знания

  • Blockchain System Design (FAANG)

Hot/Cold Wallet архитектура: как хранить миллиарды

В январе 2019 года канадская биржа QuadrigaCX объявила: её основатель Джеральд Коттен умер, унеся с собой **единственные ключи** к cold wallets. $190 миллионов пользовательских средств - заблокированы навсегда. Оказалось, что вся «cold storage» была одним ноутбуком одного человека. Coinbase, хранящая $330+ млрд, устроена радикально иначе - ни один человек, ни одна машина не имеет полного доступа к средствам.

Крупные биржи используют **трёхуровневую** wallet-архитектуру: - **Hot wallet** (2-5% средств) - подключён к интернету, обслуживает вывод средств автоматически. Ключи в оперативной памяти или HSM, доступном по сети. Время подписи: миллисекунды. Риск: максимальный - **Warm wallet** (10-20% средств) - промежуточный буфер. Подключается к сети периодически для пополнения hot wallet. Требует M-of-N подписей от операторов. Время подписи: минуты - **Cold wallet** (75-90% средств) - полностью offline. Air-gapped компьютеры в банковских хранилищах. Ключи никогда не касались интернета. Время подписи: часы или дни. Требует физического присутствия нескольких ключевых лиц

**HSM (Hardware Security Module)** - специализированное устройство для криптографических операций. В отличие от обычного сервера, HSM **физически защищает** приватные ключи: попытка вскрытия корпуса уничтожает ключи (tamper-evident + tamper-responsive). Coinbase использует **FIPS 140-2 Level 3** HSM - стандарт, требующий защиту от физического проникновения, мониторинг вскрытия и стирание ключей при обнаружении атаки. Ключи генерируются **внутри** HSM и никогда не покидают устройство в открытом виде.

**Key Ceremony** - ритуал создания cold wallet ключей, длящийся 6-8 часов. Coinbase проводит его в банковском хранилище с видеозаписью каждого шага: 1. Несколько участников (key holders) съезжаются в физическое хранилище 2. Air-gapped компьютер загружается с read-only носителя (Live USB) 3. Генерируются MPC shares на отдельных HSM для каждого участника 4. Каждый HSM запечатывается в tamper-evident пакет с уникальным номером 5. HSM распределяются в разные банковские хранилища в разных городах 6. Air-gapped компьютер уничтожается 7. Аудиторы верифицируют процедуру по видеозаписи

**Страхование**: Coinbase страхует hot wallet через Lloyd's of London на $320M. Cold storage застрахована отдельно. Binance создал **SAFU (Secure Asset Fund for Users)** - резервный фонд в $1B для компенсации в случае взлома. После взлома 2019 года (7000 BTC украдено из hot wallet) Binance компенсировал все потери из SAFU за 48 часов.

**Incident Response при утечке hot wallet ключа:** 1. **Немедленно** - автоматическая заморозка всех withdrawals (circuit breaker) 2. **0-5 минут** - transfer оставшихся средств из скомпрометированного hot wallet в emergency cold address 3. **5-30 минут** - ротация ключей всех hot wallets, активация backup HSM 4. **30-60 минут** - уведомление регулятора (обязательно для лицензированных бирж) 5. **1-24 часа** - forensic analysis, определение вектора атаки Весь incident response **автоматизирован** и тестируется ежеквартально через drill exercises.

Биржа хранит 2B пользовательских средств. Hot wallet автоматически обслуживает withdrawals. Утром баланс hot wallet упал ниже порога. Warm wallet автоматически пополнил его. Через час баланс warm wallet тоже стал низким. Что должно произойти для пополнения warm wallet из cold storage?

High-Volume Transaction Engine: миллионы переводов в сутки

Coinbase обрабатывает **~$1.5B** в транзакциях ежедневно. Binance - **$10-20B** в пиковые дни. Каждая транзакция - это не просто «отправить крипту»: нужно выбрать правильный UTXO или nonce, рассчитать оптимальную комиссию, обработать возможный reorg, защититься от double-spend, и всё это на **десятках** блокчейнов одновременно. Withdrawal engine биржи - это финансовый конвейер уровня VISA, только вместо одной платёжной сети их полсотни.

**UTXO Consolidation** (Bitcoin, Litecoin) - критическая операция для бирж. Когда тысячи пользователей депозитят на биржу, каждый депозит создаёт отдельный UTXO. Чтобы отправить крупную сумму, нужно «склеить» сотни мелких UTXO в одну транзакцию. Проблема: комиссия Bitcoin пропорциональна **количеству inputs**, а не сумме. 500 мелких UTXO по $10 могут стоить $50+ в комиссии при высоком mempool. Биржи выполняют consolidation в **низкую нагрузку** (воскресенье 3-6 AM UTC), когда fee rate минимален.

**Fee Estimation и Bumping** - на высоконагруженном рынке комиссии меняются каждые секунды. Биржи используют собственные **Gas Price Oracle**: анализируют последние N блоков, mempool, pending транзакции конкурентов. Если транзакция «застряла» (mempool забит, fee слишком низкий), механизм **fee bumping** отправляет replacement: - **Bitcoin (RBF)**: Replace-By-Fee - та же транзакция с повышенной комиссией - **Ethereum (EIP-1559)**: новая транзакция с тем же nonce, но увеличенным `maxPriorityFeePerGas` (минимум +10% по спецификации) Coinbase устанавливает **3 уровня urgency**: low (следующие 6 блоков), medium (3 блока), high (следующий блок). Withdrawals пользователей - high. Consolidation - low.

**Double-Spend Protection** - биржа должна быть готова к **chain reorganizations**. Злоумышленник депозитит 1000 BTC на биржу, дожидается 2 confirmations, продаёт за USDT, выводит USDT - и тут его mining pool откатывает блоки, отменяя депозит. Биржа потеряла USDT, а BTC «исчез». Решения: - **Высокий порог confirmations**: Bitcoin - 3-6, Ethereum - 35, ETC - 40,000+ (после 51% атаки в 2020) - **Reorg Monitor**: слушает блокчейн и автоматически ревертит internal баланс если депозитная tx выпала из chain - **Withdrawal delay**: новый депозит не доступен для вывода N минут, даже если confirmations набрались

**Batch withdrawals** экономят до 80% комиссий. Вместо 100 отдельных Bitcoin-транзакций биржа создаёт **одну** транзакцию с 100 outputs. На Ethereum Binance использует **custom smart contract** для batch ERC-20 transfers: один `multicall` вместо 100 отдельных `transfer()`. Экономия на base gas (21,000 gas × 100 tx = 2.1M gas vs 1 tx с 100 transfer calls ≈ 0.5M gas).

Биржа отправляет 100 ETH withdrawals одновременно с одного hot wallet адреса. Все 100 транзакций используют nonce, полученный через eth_getTransactionCount('pending'). Что произойдёт?

Compliance Infrastructure: блокчейн под надзором

В августе 2022 года Tornado Cash (Ethereum mixer) попал в санкционный список OFAC. Последствия для бирж - мгновенные: любой адрес, взаимодействовавший с Tornado Cash, должен быть **заблокирован**. Coinbase заморозила аккаунты пользователей, которые когда-либо отправляли или получали средства через mixer. Это не выбор биржи - это **юридическое обязательство**. Лицензированная биржа без compliance-инфраструктуры - это биржа, ожидающая закрытия.

**Transaction Monitoring** - ядро compliance. Каждая входящая и исходящая транзакция проходит через аналитические системы: - **Chainalysis KYT (Know Your Transaction)** - real-time скоринг транзакций. Присваивает risk score от 0 до 100. Отслеживает «историю» средств на глубину десятков хопов: если BTC прошёл через darknet маркет 5 переводов назад - KYT это увидит - **Elliptic** - конкурент Chainalysis. Покрывает 99%+ всех криптоактивов. Визуализирует граф транзакций и кластеризует адреса по entity (биржа, mixer, ransomware) - **TRM Labs** - фокус на DeFi и cross-chain flows. Отслеживает bridges, DEX swaps, privacy protocols Coinbase использует **все три** одновременно (defense in depth): транзакция считается подозрительной, если хотя бы один провайдер поднял флаг.

**Travel Rule** (FATF Recommendation 16) - требование, чтобы при переводе крипты на сумму выше 1,000 (в ЕС - €1,000) биржа-отправитель передавала бирже-получателю **персональные данные** отправителя: имя, адрес, идентификатор. Это аналог SWIFT-сообщений в банковском мире. Реализация через протоколы **TRISA** (Travel Rule Information Sharing Architecture) или **OpenVASP**: 1. Пользователь A на Coinbase отправляет 5 BTC на адрес биржи Kraken 2. Coinbase определяет, что адрес принадлежит Kraken (через Chainalysis attribution) 3. Coinbase шифрует PII отправителя и передаёт Kraken через TRISA 4. Kraken верифицирует получателя и подтверждает приём 5. Только после этого транзакция broadcast в блокчейн Сложность: для **unhosted wallets** (MetaMask, Ledger) Travel Rule неприменим - нет «получающей организации». Регуляторы в ЕС (MiCA) требуют дополнительную верификацию при переводах на unhosted wallets.

**SAR (Suspicious Activity Report)** - юридически обязательный отчёт, который биржа подаёт в финансовую разведку (FinCEN в США, FIU в ЕС) при обнаружении подозрительной активности. Автоматические триггеры: - Транзакция > $10,000 (обязательный CTR в США) - Структурирование: множественные транзакции чуть ниже порога ($9,999 × 5) - Exposure к sanctioned entities (OFAC SDN list) - Rapid in/out: депозит и немедленный вывод (wash trading pattern) - P2P chaining: получение средств от множества мелких адресов с последующей консолидацией Coinbase подаёт **тысячи** SAR ежемесячно. Процесс автоматизирован на 90%: система генерирует черновик SAR, compliance officer проверяет и отправляет.

**Sanctions Screening** работает в real-time. OFAC обновляет SDN (Specially Designated Nationals) list нерегулярно - иногда несколько раз в день. Биржи подписаны на webhook обновлений и в течение **15 минут** обновляют свои внутренние блоклисты. Каждый адрес из SDN-списка блокируется на всех уровнях: нельзя получить средства, нельзя отправить, нельзя торговать. В 2022 году OFAC внёс **44 Ethereum-адреса** Tornado Cash - первый случай санкций против smart contract, а не физического лица.

Multi-Chain Infrastructure: 50 блокчейнов, один SLA

Coinbase поддерживает **250+** криптоактивов на **десятках** блокчейнов. Binance - ещё больше. Каждый блокчейн - это **отдельная инфраструктура**: свои ноды, свой RPC протокол, свои особенности (UTXO vs Account, PoW vs PoS, finality за секунды vs минуты). Node fleet для одной крупной биржи - это **тысячи серверов**, разбросанных по дата-центрам мира. Один упавший Ethereum-нод - и 10% withdrawals встают. Один отставший Bitcoin-нод - и баланс пользователя показывает устаревшие данные.

**Node Fleet Management** - каждый блокчейн требует кластер нод с разными ролями: - **Full Archive Nodes** - полная история с genesis block. Ethereum archive node: ~15 TB SSD. Нужны для `eth_call` по историческим блокам (compliance запросы, аудит) - **Full Nodes (pruned)** - последние N блоков. Ethereum pruned: ~1 TB. Обслуживают текущие запросы (balance, sendTransaction) - **Light/Fast Sync Nodes** - быстрый запуск для горизонтального масштабирования Binance запускает **собственные форки** нод-клиентов (Geth, Bitcoin Core) с оптимизациями: увеличенные лимиты RPC, batch-processing, custom metrics endpoints. Coinbase создал **Rosetta** - open-source стандарт API для всех блокчейнов, чтобы унифицировать интеграцию.

**Database Sharding** для transaction history - одна из сложнейших задач. Coinbase хранит **миллиарды** записей о транзакциях. Варианты шардирования: - **По user_id** - все транзакции пользователя на одном шарде. Быстрые запросы «покажи мои транзакции», но cross-user аналитика требует scatter-gather по всем шардам - **По blockchain** - каждая сеть на своём шарде. Логично, но «покажи все мои транзакции» требует запросов к десяткам шардов - **По времени** - горячие данные (последний месяц) на быстрых SSD, исторические - в cold storage (S3 + Athena). Самый распространённый подход для compliance-запросов На практике используется **гибридный подход**: primary sharding по user_id, secondary partitioning по времени внутри каждого шарда, и materialized views для cross-user запросов compliance-команды.

**Event-Driven Architecture** - все компоненты биржи общаются через events, а не прямые вызовы: 1. Block Listener обнаруживает новый блок → публикует `block.confirmed` event 2. Transaction Indexer обрабатывает event → публикует `deposit.detected` для каждого распознанного депозита 3. Balance Service обновляет баланс пользователя → публикует `balance.updated` 4. Notification Service отправляет push-уведомление пользователю 5. Compliance Engine параллельно запускает risk scoring Kafka обрабатывает **миллионы events в секунду** с гарантией at-least-once delivery. Каждый consumer - idempotent: повторная обработка того же event не создаёт дубликатов (deduplication по transaction hash + log index).

**Disaster Recovery** - биржа должна продолжать работу при потере целого дата-центра. Стратегия: - **Active-Active**: два+ региона обрабатывают трафик параллельно. При потере одного - второй принимает всю нагрузку - **RPO (Recovery Point Objective)**: 0 потерянных транзакций. Достигается через синхронную репликацию PostgreSQL между регионами (CockroachDB/Spanner для глобального масштаба) - **RTO (Recovery Time Objective)**: < 60 секунд. Автоматический failover через health checks - **Chaos Engineering**: регулярное «убийство» нод, сервисов, целых availability zones для проверки resilience. Netflix-стиль Game Days **SLA для пользователей**: Coinbase гарантирует 99.99% uptime API (< 52 минуты downtime в год). Реальность: в мае 2021 года при крахе крипторынка биржа упала на **4 часа** из-за 5x нагрузки - пользователи не могли продать активы. После этого инфраструктура была перепроектирована для 10x peak capacity.

Итоги

  • **Hot/Warm/Cold wallet** архитектура распределяет средства по уровням доступа: 2-5% в автоматическом hot wallet для withdrawals, 75-90% в air-gapped cold storage с HSM и key ceremony - потому что FTX показала, что происходит, когда один человек имеет доступ ко всему
  • **Transaction processing** на масштабе - это не один вызов `sendTransaction`, а конвейер из nonce management, fee estimation, batch processing, broadcast redundancy и reorg detection, работающий параллельно на десятках блокчейнов
  • **Compliance infrastructure** превращает прозрачный блокчейн в регулируемую финансовую систему: real-time risk scoring через Chainalysis/Elliptic, Travel Rule для межбиржевых переводов, автоматическая генерация SAR и immutable audit trail за 5 лет
  • **Production operations** для multi-chain биржи - это тысячи нод в нескольких регионах, event-driven architecture на Kafka, database sharding по user_id + time partitioning, и disaster recovery с RPO=0 и RTO<60 секунд

Связанные темы

Блокчейн на масштабе объединяет знания о кошельках, нодах, регулировании и системном дизайне в единую production-архитектуру:

  • System Design для блокчейна — Базовые паттерны проектирования, на которых построена архитектура биржи - от sharding до event sourcing
  • Кошельки и Key Management — HD wallets, MPC-TSS и HSM - фундамент hot/cold wallet архитектуры крупных бирж
  • Ноды и клиенты — Full nodes, archive nodes, light clients - из них строится node fleet биржи с тысячами инстансов
  • Регулирование и правовое поле — AML/KYC, FATF Travel Rule, OFAC-санкции - юридический фреймворк, который определяет архитектуру compliance-системы

Вопросы для размышления

  • FTX не имела ни cold storage, ни compliance-системы. Как вы думаете, почему регуляторы не обнаружили это раньше - и какие технические механизмы (audit trail, proof of reserves) могли бы предотвратить катастрофу?
  • Coinbase хранит 98% средств в cold storage, что означает задержку в часы для крупных переводов. Как бы вы спроектировали систему, которая балансирует между безопасностью (больше в cold) и скоростью вывода (больше в hot)?
  • Travel Rule требует передачи PII при межбиржевых переводах. Это противоречит идее privacy в криптовалютах. Возможно ли техническое решение (zero-knowledge proofs?), которое удовлетворит и регуляторов, и сторонников приватности?

Связанные уроки

  • dist-14-sharding
Блокчейн на масштабе: Coinbase, Binance

0

1

Войти

**Audit Trail** - регулятор может запросить историю любой транзакции за последние 5 лет. Биржа обязана предоставить: кто инициировал, когда, с какого IP, какие проверки пройдены, какой risk score присвоили, кто одобрил. Каждое действие записывается в **immutable log** (append-only база, часто на PostgreSQL с row-level security + отдельная запись в object storage для compliance). Удаление записей из audit log - **уголовное преступление** по законам большинства юрисдикций.

Пользователь депозитит 10 BTC на Coinbase. Chainalysis показывает, что 2 из 10 BTC прошли через Tornado Cash 3 транзакции назад (indirect exposure). Risk score: 65. Что должна сделать биржа согласно compliance-процедурам?

**Главная угроза - не хакеры, а операционные ошибки.** По данным Chainalysis, в 2023 году биржи потеряли больше средств из-за **багов в node-обновлениях и конфигурации**, чем из-за внешних атак. Примеры: - **dYdX (2023)** - обновление ноды без тестирования привело к неправильному расчёту позиций, $9M убытков - **Wormhole (2022)** - баг в bridge smart contract при обновлении, $320M украдено - **Ronin Bridge (2022)** - 5 из 9 validator ключей скомпрометированы из-за слабой key management, 625M Canary deployments, blue-green deployments и обязательный staging-environment для каждого обновления ноды - не опция, а необходимость.

Крупные биржи - это просто «большой кошелёк с веб-интерфейсом», масштабирование решается добавлением серверов

Биржа уровня Coinbase/Binance - это полноценная финансовая инфраструктура с десятками подсистем: от HSM-защищённого хранения ключей и real-time compliance с тремя независимыми аналитическими провайдерами до multi-region node fleet с sub-minute failover и immutable audit trail за 5 лет

Техническая сложность биржи не в блокчейн-части (отправить транзакцию - 5 строк кода), а в **operational excellence**: как не потерять средства пользователей при взломе, не нарушить закон при обработке подозрительных средств, не лечь при 10x нагрузке, и доказать регулятору, что каждая транзакция за последние 5 лет обработана корректно. Горизонтальное масштабирование серверов - малая часть этой задачи.

Биржа обрабатывает 50,000 withdrawal запросов в час. Block Listener обнаруживает reorg на 3 блока в Ethereum. 200 депозитов, подтверждённых в этих блоках, могут оказаться невалидными. Что должна сделать event-driven система?