Электронный журнал ATM — виды и особенности
Справочная заметка ATM: Электронный журнал ATM — виды и особенности.
Электронный журнал ATM — виды и особенности
Что такое Electronic Journal
Electronic Journal (EJ) — хронологический журнал событий и транзакций, происходящих на ATM. Используется при расследовании инцидентов, reconciliation, dispute/chargeback и аудите.
Юридическая сила EJ зависит от юрисдикции, политики банка, целостности журнала, цепочки хранения, доступности device logs/видео и правил платежной схемы.
Пришёл на смену бумажному (физическому) журналу — рулону бумаги, который распечатывался внутри банкомата параллельно с чеком клиента. Степень вытеснения бумажного журнала зависит от поколения ATM и требований конкретного банка.
Виды журналов ATM
mindmap
root((Журналы ATM))
По носителю
Бумажный (устаревший)
Электронный EJ
По содержимому
Транзакционный журнал
Журнал устройств (hardware log)
Журнал безопасности (security log)
Сервисный журнал (maintenance log)
Журнал ключей (key log)
По хранению
Локальный (на диске ATM)
Централизованный (EJ-сервер)
Гибридный (локально + синхронизация)
По формату
Открытый текст (plaintext)
Сжатый (compressed)
Зашифрованный (encrypted)
Подписанный (digitally signed)
1. Виды по содержимому
1.1 Транзакционный журнал (Transaction Journal)
Основной вид EJ. Фиксирует каждую транзакцию пошагово:
| Событие | Пример записи |
|---|---|
| Начало транзакции | TXN_START STAN=123456 PAN=****1234 TYPE=WITHDRAWAL AMT=5000 |
| Чтение карты | CARD_READ OK track2=ok chip=ok |
| Ввод PIN | PIN_ENTERED (не значение PIN — только факт) |
| Авторизационный запрос | AUTH_REQ MTI=0200 STAN=123456 HOST=192.168.1.1 |
| Авторизационный ответ | AUTH_RESP MTI=0210 RC=00 AUTHCODE=A1B2C3 |
| Диспенсирование | DISPENSE 5x1000 RUB CDM_STATUS=OK |
| Shutter | SHUTTER_OPEN / CASH_TAKEN / SHUTTER_CLOSED |
| Возврат карты | CARD_EJECTED |
| Печать чека | RECEIPT_PRINTED |
| Конец транзакции | TXN_END STATUS=OK |
1.2 Журнал устройств (Hardware / Device Log)
Фиксирует события оборудования, не связанные напрямую с транзакциями:
| Событие | Описание |
|---|---|
| Jam диспенсера | CDM_JAM slot=2 banknotes_stuck=3 |
| Уровень кассеты | CDM_CASHU slot=1 count=150 status=LOW |
| Кончилась лента принтера | PTR_PAPEROUT |
| Ошибка Card Reader | IDC_JAMMED card_captured=true |
| Открытие/закрытие сейфа | SAFE_DOOR_OPENED operator=ENGINEER_1 |
| Перезапуск устройства | CDM_RESET reason=POWERUP |
1.3 Журнал безопасности (Security Log)
Фиксирует события, связанные с физической и логической безопасностью:
| Событие | Описание |
|---|---|
| Вход в supervisor mode | SUPERVISOR_LOGIN user=SVC01 time=14:30:22 |
| Загрузка ключей (RKL) | KEY_LOAD type=ZPK status=OK (значение ключа никогда не пишется) |
| Tamper event | TAMPER_DETECTED sensor=EPP action=ZEROIZE |
| Попытка несанкционированного доступа | SECURITY_VIOLATION process=unknown.exe blocked=true |
| Открытие верхнего отсека | UPPER_CABINET_OPEN |
1.4 Сервисный журнал (Maintenance Log)
Фиксирует действия инженеров и инкассаторов:
| Событие | Описание |
|---|---|
| Инкассация | REPLENISHMENT slot=1 old_count=150 new_count=3000 denom=1000 |
| Замена кассеты | CASSETTE_CHANGE slot=3 old=CAS001 new=CAS005 |
| Обновление ПО | SW_UPDATE version=7.5.1 status=SUCCESS |
| Диагностика | DIAG_RUN CDM_TEST=PASS EPP_TEST=PASS |
2. Виды по формату хранения
2.1 Открытый текст (Plaintext)
- Простые ASCII/UTF-8 строки
- Легко читать и искать (grep, текстовый редактор)
- Недостаток: нет защиты от модификации, занимает больше места
- Применяется в старых/бюджетных системах, в тестовых средах
[2026-05-05 14:22:35.412] TXN_START STAN=123456 PAN=****1234 AMT=5000 RUB
[2026-05-05 14:22:49.315] AUTH_RESP MTI=0210 RC=00 AUTH=A1B2C3
[2026-05-05 14:22:52.500] TXN_END STATUS=OK
2.2 Сжатый (Compressed)
- Применяется сжатие: ZIP, GZIP, LZ4, ZLIB
- Значительно уменьшает объём: степень сжатия 60–80% для текстовых логов
- Критично для ATM с ограниченным диском (Compact Flash 4–8 GB)
- Для чтения требуется распаковка
- Часто: сжатие + ротация файлов (hourly/daily)
Ротация EJ:
ej_20260505_00.gz (00:00–01:00)
ej_20260505_01.gz (01:00–02:00)
...
ej_20260505_23.gz (23:00–24:00)
2.3 Зашифрованный (Encrypted)
Обеспечивает конфиденциальность данных журнала:
| Параметр | Значение |
|---|---|
| Алгоритм | AES-256 (типично) |
| Ключ | Хранится в HSM или TPM ATM |
| Стандарт | PCI DSS требует защиту cardholder data в хранилище |
| Применение | Современные ATM с жёсткими требованиями PCI |
| Чтение | Требует дешифрования на авторизованной системе |
[!note] PAN в EJ PCI DSS требует защищать cardholder data и ограничивать хранение чувствительных данных. Для EJ практический вывод: не хранить полный PAN без защиты, не писать PIN/CVV, маскировать PAN в пользовательских и расследовательских представлениях. Конкретный шаблон маскирования и retention задаются политикой банка и применимыми правилами.
2.4 Подписанный (Digitally Signed)
- Каждая запись (или блок записей) подписывается цифровой подписью
- Гарантирует целостность и неотрекаемость: невозможно изменить запись без обнаружения
- Алгоритм: RSA или ECDSA
- Ключи: сертификат ATM (PKI-инфраструктура банка)
- Критично для юридической значимости EJ в суде / при арбитраже
flowchart LR
RECORD["Запись EJ\n(событие + timestamp)"]
PREV_HASH["Hash предыдущей\nзаписи (chain)"]
SIGN["Подпись\n(RSA/ECDSA)"]
FINAL["Запись в журнал\n{data, prev_hash, signature}"]
RECORD --> SIGN
PREV_HASH --> SIGN
SIGN --> FINAL
Hash chaining (цепочка хэшей): каждая запись включает хэш предыдущей — изменение любой записи нарушает цепочку.
2.5 Комбинированный
На практике применяются комбинации:
- Compressed + Encrypted: сжатие → шифрование → сохранение
- Compressed + Signed: сжатый файл подписывается целиком
- Encrypted + Signed: шифрование + цифровая подпись
3. Виды по месту хранения
graph TD
subgraph ATM_LOCAL["Локальное хранилище ATM"]
DISK["HDD/SSD/CF\nна ATM"]
RING["Ring buffer\n(перезапись старых)"]
end
subgraph CENTRAL["Централизованное хранилище"]
EJ_SRV["EJ-сервер банка"]
DB["EJ Database\n(SQL / NoSQL)"]
ARCH["Архив\n(Tape / Cold storage)"]
end
ATM_LOCAL -->|"SFTP / TCP\nрегулярная выгрузка"| CENTRAL
style ATM_LOCAL fill:#e8f4fd
style CENTRAL fill:#e8fde8
| Тип хранения | Описание | Плюсы | Минусы |
|---|---|---|---|
| Локальный | На диске ATM | Доступен без сети | Ограниченный объём, риск потери при поломке |
| Централизованный | На EJ-сервере банка | Защита, поиск по всему парку, долговременное хранение | Зависимость от сети |
| Гибридный | Локально + синхронизация | Надёжность + доступность | Сложность реализации |
Размер EJ на диске
| Фактор | Типичное значение |
|---|---|
| Объём на транзакцию (plaintext) | 1–3 KB |
| Транзакций в день (нагруженный ATM) | 500–2 000 |
| Объём в день | 0.5–6 MB/день |
| После сжатия | 0.1–1.5 MB/день |
| Retention 13 месяцев (сжатый) | ~0.5–20 GB |
4. EJ по производителям ATM
[!warning] Ограничение источников Форматы EJ по производителям чаще всего описаны в официальной документации вендора, договорах поддержки или руководствах для участников проекта. Если нет публичной документации производителя, конкретные имена файлов, бинарные/XML-форматы, уровни журналирования и команды выгрузки нужно помечать
Нужен источник.
NCR APTRA / NDC
Публично подтверждено только на обзорном уровне: NCR/APTRA — исторически распространенный ATM software stack, включая multivendor APTRA deployments. В открытом вебе встречаются копии APTRA supervisor/developer manuals с описанием EJ backup, ejdata.log, ejrcpy.log, init/recopy journal и уровней журналирования, но такие документы помечены как proprietary/confidential. Поэтому их можно использовать только как практический ориентир, не как проверенный публичный нормативный источник.
Статус для базы: Нужен источник для точных форматов EJ и команд.
Diebold Nixdorf / Wincor / Vynamic
Публично подтверждено: Vynamic View Log & Journal Manager собирает и управляет log files, Windows event logs, electronic journal и ATM terminal software logging; заявлено маскирование sensitive identification data для PCI compliance и drill-down от transaction summary к journal details для dispute handling.
Статус для базы: функции centralized log/journal collection подтверждены публично; точные форматы legacy ProTopas/DDC/Vynamic EJ требуют vendor documentation.
KAL Kalignite
Публично подтверждено: Kalignite software suite позиционируется как multivendor ATM software для сетей разной сложности и размера. Утверждения о конкретном формате EJ, экспорте CSV/XML/PDF и named Journal Manager требуют публичной страницы KAL или документации проекта.
Статус для базы: multivendor context подтвержден; конкретный EJ format — Нужен источник.
TellME / российские multivendor stacks
Публично подтверждено: SmartCard-Service описывает TellME 7 как cross-platform ATM solution для оборудования разных производителей и поддержку cash recycling devices. Конкретный формат EJ/выгрузки зависит от внедрения, агента и интеграции с EMS.
Статус для базы: multivendor/cross-platform context подтвержден; точные EJ formats — Нужен источник.
5. Содержимое EJ — детальный пример
=====================================
ELECTRONIC JOURNAL - ATM-001
Date: 2026-05-05
Terminal: ATM-001 (ProCash 2050xe)
Location: MOSCOW, ARBAT ST, 10
=====================================
[14:22:35.001] === SESSION START ===
[14:22:35.100] CARD_INSERTED
[14:22:35.412] CARD_READ
Track2: OK
Chip: OK (EMV)
PAN: 427612******9012
Expiry: 2712
AID: A0000000031010 (Visa Credit)
[14:22:41.100] PIN_ENTERED
EPP: OK
Format: ISO9564-Format0
[14:22:41.200] TXN_START
Type: WITHDRAWAL
Amount: 5000.00 RUB
STAN: 123456
F22: 051 (EMV Chip+PIN)
[14:22:41.300] AUTH_REQUEST_SENT
MTI: 0200
STAN: 123456
Host: 192.168.1.100:4000
F55: [EMV data present, ARQC verified]
[14:22:42.415] AUTH_RESPONSE_RECEIVED
MTI: 0210
RC: 00 (APPROVED)
RRN: 260505142241
Auth: A1B2C3
F54: Avail=12500.00 RUB
[14:22:42.500] DISPENSE_COMMAND
Requested: 5000 RUB
Mix: 5 x 1000 RUB → Cassette 2
[14:22:43.100] DISPENSE_RESULT
Dispensed: 5 x 1000 RUB = 5000 RUB
Rejected: 0
CDM: OK
[14:22:43.200] SHUTTER_OPEN
[14:22:45.800] CASH_TAKEN
Time to take: 2.6 sec
[14:22:45.900] SHUTTER_CLOSED
[14:22:46.100] CARD_EJECTED
[14:22:46.500] RECEIPT_PRINTED
[14:22:46.600] TXN_END
Status: OK
Duration: 11.5 sec
=====================================
CASH UNIT STATUS (after transaction)
Slot 1: 1000 RUB — 2150 notes (OK)
Slot 2: 1000 RUB — 1845 notes (OK)
Slot 3: 500 RUB — 2980 notes (OK)
Reject: 5 notes
=====================================
6. EJ в reconciliation и dispute
flowchart TD
EJ_DATA["EJ: TXN_END STATUS=OK\nDISPENSE 5x1000 RUB"]
HOST_DATA["Host Log:\nSTAN=123456 RC=00 AMT=5000"]
CAMERA["Видеозапись:\nКлиент взял деньги 14:22:45"]
CLAIM["Клиент: деньги\nне получил"]
EJ_DATA -->|"Доказательство 1"| VERDICT
HOST_DATA -->|"Доказательство 2"| VERDICT
CAMERA -->|"Доказательство 3"| VERDICT
CLAIM --> VERDICT
VERDICT{Все три\nисточника\nсовпадают?}
VERDICT -->|"Да: деньги выданы"| ACQ_WIN["Chargeback отклонён\nв пользу эквайера"]
VERDICT -->|"Нет: EJ показывает\nREVERSED"| ISS_WIN["Chargeback принят\nВозврат клиенту"]
7. Требования к хранению EJ
| Требование | Источник | Значение |
|---|---|---|
| Срок хранения | Правила схемы / закон / политика банка | Нужен источник для конкретной юрисдикции и сети |
| Маскирование PAN | PCI DSS / политика банка | Не раскрывать полный PAN без необходимости и защиты |
| Защита в хранилище | PCI DSS / политика банка | Шифрование, tokenization или другие контролируемые меры |
| Целостность | Внутренние политики банков | Digital signing или hash chaining |
| Доступность | Требования к расследованию | Поиск за любую дату в пределах срока хранения |
| Аудит доступа | PCI DSS / политика банка | Логировать доступ к системам и расследовательским данным |
8. EMS-системы для работы с EJ
| Система | EJ-функции |
|---|---|
| NCR APTRA Vision | Просмотр, поиск, экспорт, alerting по аномалиям |
| WebIUS | Journal Manager: поиск по ATM, экспорт CSV/PDF |
| Vynamic View | Централизованный EJ viewer |
| Kalignite Enterprise | Multi-terminal journal search, export |
| TellME Unified Agent | Выгрузка EJ в сторонние EMS |
| Собственные системы банков | EJ → хранилище данных → BI/аналитика |
[!warning] Нужен источник Названия отдельных viewer/manager-компонентов и поддерживаемые форматы экспорта нужно проверять по актуальной документации продукта. Публично подтвержденный источник сейчас найден для Vynamic View Log & Journal Manager; для остальных строк нужен vendor source или документация внедрения.
9. Формат EJ в NDC-среде
В NDC-окружении EJ часто содержит копии самих NDC-сообщений:
[14:22:41] NDC TX_REQ: T\T\ATM00001\260505\142241\123456\...
[14:22:42] NDC TX_REP: F\T\ATM00001\260505\142242\123456\D\...
[14:22:43] NDC DISPENSE: amount=5000 notes=5x1000
[14:22:45] NDC CASH_TAKEN
[14:22:46] NDC CARD_EJECTED
[14:22:46] NDC STATUS: InService
Это позволяет полностью воспроизвести сессию для диагностики.
10. EJ в incident evidence package
EJ — один из источников доказательств, но не единственный. Для расследования его нужно сопоставлять с:
- host/switch logs;
- device/XFS events;
- кассетными счётчиками;
- reject/retract data;
- CCTV;
- service records;
- security alerts;
- reconciliation.
Критично синхронизировать время и фиксировать timezone. В EJ не должны попадать открытый PIN, clear PIN block и значения криптографических ключей.
Практический checklist: ATM-Incident-Evidence-Package.
Связанные заметки
- TERM-ej — краткое определение термина
- ATM-Процессинг-обзор — EJ в reconciliation
- ATM-Сценарии-сбоев — EJ при сбоях
- ATM-No-Dispense-и-Reversal — EJ как доказательство
- ATM-Incident-Evidence-Package — единый checklist расследования
- ATM-Fraud-Monitoring — корреляция EJ с transaction, device и physical signals
- ATM-Security-Threat-Model — EJ в detection и incident response
- ATM-WebIUS — EJ Viewer в WebIUS
- ATM-KAL-Kalignite — Kalignite Journal Manager
- TERM-reconciliation · TERM-dispute · TERM-pci-dss
- ATM-МИР-и-НСПК · ATM-Российская-регуляторика
Источники
- PCI SSC: Document Library — PCI DSS v4.0.1.
- Diebold Nixdorf: Vynamic View Log & Journal Manager product card.
- Diebold Nixdorf: Vynamic View.
- NCR: APTRA multivendor ATM software public announcement.
- KAL: ATM Software.
- SmartCard-Service: TellME 7 solutions.
- НСПК: Правила ПС «Мир» v4.3.
- Mastercard: Chargeback Guide — ATM disputes.