Архитектура
Как устроен стек Kaz Smart Chain: исполнение, оркестрация, хранилище и прикладной слой.
Обзор#
Kaz Smart Chain — многослойная система. В основе — узлы Hyperledger Besu, исполняющие EVM и достигающие согласия по QBFT. Поверх них работает Hyperledger FireFly как оркестратор контрактов и токенов, IPFS — для внеблокчейнового хранения, а прикладной слой (NestJS + Next.js) предоставляет портал разработчика, Explorer и REST API.
Слои#
| Слой | Компонент | Роль |
|---|---|---|
| Исполнение | Besu (EVM, QBFT) | Транзакции, блоки, состояние, консенсус |
| Подпись | FireFly Signer / EVMConnect | Подпись и отправка транзакций, события |
| Оркестрация | FireFly Core | API к контрактам, токены, события, namespace |
| Хранилище | IPFS (Kubo) | Файлы, метаданные активов |
| Приложение | NestJS API | Портал, Explorer, gateway, метеринг |
| Интерфейс | Next.js | Веб-портал, Explorer UI, документация |
Besu и EVM#
Узлы Besu исполняют стандартный байткод EVM и поддерживают форки London и Berlin (активны с нулевого блока). Это означает полную совместимость с инструментами Ethereum на уровне контрактов. Каждая сеть (mainnet/testnet) имеет собственный genesis, набор валидаторов и изолированное состояние.
Hyperledger FireFly#
FireFly работает в gateway-режиме (без мультипартийного броадкаста) и предоставляет унифицированный API для регистрации контрактов, вызова методов, подписки на события и операций с токенами. Портал использует FireFly, чтобы по ABI поднять REST-эндпоинты к вашему контракту. Каждая сеть имеет свой инстанс FireFly с namespace default.
IPFS#
Для данных, которые не должны лежать в блокчейне целиком (изображения, метаданные, файлы), используется IPFS (Kubo). Публичный шлюз доступен на ipfs.kazsmartchain.org/ipfs/<CID> (только чтение; запись через API закрыта).
Прикладной слой#
- NestJS API — бизнес-логика портала: аутентификация по ЭЦП, кастодиальные кошельки, компиляция и деплой, gateway-вызовы, метрики использования.
- Next.js — веб-портал разработчика, Explorer и эта документация.
- PostgreSQL / Redis — хранение метаданных (разработчики, контракты, ключи, записи использования) и кеш.
Путь транзакции#
Когда вы вызываете метод записи контракта через gateway:
- Запрос с API-ключом приходит в NestJS API и проверяется (скоуп, владение контрактом).
- API формирует вызов и подписывает его кастодиальным ключом вашего кошелька.
- Транзакция уходит в Besu через слой подписи; по достижении блока возвращаются
txHash,blockNumber,gasUsedи статус. - Операция записывается в метрики использования для аналитики и истории кошелька.

