Реестр (CFA-Core)
Логика ведения реестра и проверки целостности
CFA-Core: Реестр ЦФА
CFA-Core — это центральный сервис системы, отвечающий за соблюдение правил информационной системы (ИС) и взаимодействие с распределенным реестром.
Функции сервиса
- Выпуск (Эмиссия): Проверка параметров решения о выпуске и создание записи в DLT.
- Погашение: Процесс списания ЦФА со счета клиента и выплата денежных средств.
- Проверка целостности: Ежедневный аудит соответствия данных в DLT и
Ledger-DB. - Криптографический контроль: Вычисление хэшей блоков и цепочек согласно ГОСТ.
Алгоритм формирования блока ЦФА
Каждая транзакция по передаче прав на ЦФА проходит следующие этапы:
- Валидация: Проверка баланса отправителя и отсутствия блокировок в
KYC/AML Engine. - DLT-запись: Отправка транзакции в Hyperledger Besu.
- Формирование расширенного хэша:
- Берется
stateRootиз Besu. - Добавляются метаданные транзакции (время, ID клиента).
- Вычисляется хэш:
$H = \text{GOST}(stateRoot || metadata)$.
- Берется
- Подпись Оператора: Хэш подписывается квалифицированной электронной подписью (КЭП) Оператора ИС.
Интерфейс администратора (Аудит)
Для регулятора (ЦБ РФ) и внутреннего аудита предусмотрен интерфейс мониторинга целостности:
- Вычисление хэшей: Возможность вручную пересчитать хэш любого блока и сравнить его с эталонным значением в реестре.
- Проверка цепочки: Визуализация связи блоков. Если хотя бы один бит в истории изменится, цепочка хэшей будет разорвана.
Loading diagram...
Синхронизация: DLT ↔ Ledger-DB
Для обеспечения финальности и скорости платформа использует механизм двухфазной синхронизации.
| Этап | Контур | Действие | Статус |
|---|---|---|---|
| 1. Request | API | Заявка на перевод | CREATED |
| 2. Validation | Core | Проверка KYC и лимитов | PROCESSING |
| 3. DLT Submit | Besu | Запись в блокчейн | ONCHAIN_SUBMITTED |
| 4. On-chain Confirm | Besu | Транзакция в блоке | FINALIZED |
| 5. Projection | Ledger | Обновление балансов в БД | SETTLED |
Обработка расхождений (Reconciliation)
Если транзакция прошла в блокчейне (FINALIZED), но не отразилась в Ledger-DB (например, из-за сбоя Kafka), запускается процесс Reconciliation Worker:
- Сканирует новые блоки в Besu.
- Проверяет наличие соответствующей
OperationвLedger-DB. - При отсутствии — принудительно создает операцию на основе данных из DLT.
Стандарты хэширования
| Тип данных | Алгоритм | Обоснование |
|---|---|---|
| Транзакции DLT | SHA-256 / SHA-512 | Стандарт Ethereum / Hyperledger |
| Реестр ЦФА | ГОСТ 34.11-2012 | Требование ФСБ/ЦБ РФ для ИС |
| Подпись блока | ГОСТ 34.10-2012 | Квалифицированная электронная подпись |