From cee59bd6112799b62b7c8449a4f66ac0a2146ba6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=D0=90=D0=BD=D1=82=D0=BE=D0=BD=20=D0=A2=D1=80=D0=BE=D1=88?=
=?UTF-8?q?=D0=B8=D0=BD?=
Date: Sun, 20 Sep 2026 00:18:02 +0300
Subject: [PATCH] cards: label the preset TARs (ISD / UICC RFM / ADF RFM) after
Counter
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- the three TAR inputs move to the right of the Counter field and get
visible labels: ISD TAR, UICC RFM TAR, ADF RFM TAR (placeholders removed)
- names verified against the pinned specs: TS 101 220 Annex D ('00 00 00'
Issuer Security Domain, 'B0 00 00' UICC Shared File System, 'B0 00 01'
ADF) and TS 102 226 §7.2/§7.3 (MF implicitly selected, no ADF access vs
ADF implicitly selected, TAR linked to the ADF AID); help EN/RU updated
with the references
- card list TAR header/tooltip use the new names
- html test guards the labels and the Counter -> TAR field order
- SW cache simple-v200 (version stays 2.6.0, relabel/layout only)
---
frontend/help-ru.html | 16 ++++++++--------
frontend/help.html | 16 ++++++++--------
frontend/index.html | 23 +++++++++++++++++------
frontend/sw.js | 2 +-
frontend/tests/html.test.js | 6 ++++++
5 files changed, 40 insertions(+), 23 deletions(-)
diff --git a/frontend/help-ru.html b/frontend/help-ru.html
index 0a9696e..d985b85 100644
--- a/frontend/help-ru.html
+++ b/frontend/help-ru.html
@@ -55,7 +55,7 @@
2.1 SIM RFM
CLA = A0 (GSM 11.11 / TS 151 011, ISO 7816-4). Удалённое управление файлами классических SIM-карт.
Команды собираются в виде цепочки: нажмите кнопку + SELECT (или другую командную кнопку), чтобы добавить строку, заполните её поля — предпросмотр цепочки (над кнопкой упаковки) обновится автоматически. Добавьте строку GET RESPONSE, чтобы получить данные после SELECT. Кнопка Упаковать в Secured packet упаковывает всю цепочку в пакет SCP80 и устанавливает TAR SCP80 в UICC TAR выбранной предустановки (по умолчанию B00000). Текущий DF сессии SIM RFM — MF, поэтому пути SELECT адресуют файлы от MF.
Команды собираются в виде цепочки: нажмите кнопку + SELECT (или другую командную кнопку), чтобы добавить строку, заполните её поля — предпросмотр цепочки (над кнопкой упаковки) обновится автоматически. Добавьте строку GET RESPONSE, чтобы получить данные после SELECT. Кнопка Упаковать в Secured packet упаковывает всю цепочку в пакет SCP80 и устанавливает TAR SCP80 в UICC RFM TAR выбранной предустановки (по умолчанию B00000) — TAR UICC Shared File System RFM: MF выбирается неявно, ADF недоступны, поэтому пути SELECT адресуют файлы от MF.
| Команда | INS | Описание | @@ -95,8 +95,8 @@
|---|
| Поле | Описание |
|---|---|
| ADM | Необязательный администраторский PIN (hex или до 8 ASCII-цифр), сохраняется в предустановке для последующего использования файловым менеджером; представлениями SCP80/SCP81 не используется |
| KIc / KID | Индикаторы ключа и алгоритма (например, 15 = индекс 1, 3DES-CBC2; x2 = AES); задаются вместе с ключами |
| SPI1 / SPI2 | Security Parameter Indicators |
| ISD TAR | Toolkit Application Reference для операций ISD/RAM (представление SCP80 RAM, цепочки RAM/GP); по умолчанию по спецификации 000000, подставляется при пустом значении |
| UICC TAR | TAR для SIM RFM (TS 31.116); по умолчанию B00000 — сессия SIM RFM выбирает файлы от MF |
| USIM TAR | TAR для USIM RFM (TS 31.115); по умолчанию B00001 — текущий DF сессии USIM RFM — ADF.USIM |
| ISD TAR | TAR Issuer Security Domain (TS 101 220, приложение D); используется для операций RAM/GP (представление SCP80 RAM, цепочки RAM/GP); по умолчанию по спецификации 000000, подставляется при пустом значении |
| UICC RFM TAR | TAR UICC Shared File System RFM (TS 102 226 §7.2, TS 101 220 приложение D): MF выбирается неявно и доступны только файлы под MF (ADF недоступны); используется представлением SIM RFM; по умолчанию B00000 |
| ADF RFM TAR | TAR ADF RFM (TS 102 226 §7.3, TS 101 220 приложение D): ADF выбирается неявно, TAR привязан к AID приложения — ADF.USIM в представлении USIM RFM; по умолчанию B00001 |
| Counter | Счётчик повторов (5 байт); увеличивается и сохраняется после каждой успешной отправки SCP80 |
| KIc key / KID key | 16/24/32 hex-символа (ключи 8/16/24 байта 3DES) или 32/48/64 hex-символа (ключи 16/24/32 байта AES) |
| PSK identity | SCP81 HTTP OTA: идентификатор, который карта присылает в TLS-рукопожатии (например, 89390100000129506903) |
| PSK key | SCP81 HTTP OTA: 32 hex-символа (16 байт) для PSK TLS-слушателя; ключ выбирается по идентификатору, который предъявляет карта |
Столбец SCP81 показывает, задана ли в предустановке рабочая пара PSK: ✓ (зелёный) — идентификатор и ключ заданы; ⚠ (жёлтый) — задано только одно из двух, и слушатель такую предустановку игнорирует; — — PSK нет. Идентификатор и ключ PSK задаются вместе. Кнопка Редактировать загружает предустановку в форму (кнопка Add становится Сохранить; Отмена очищает форму), поэтому поля можно менять без повторного ввода карты; Удалить удаляет строку. Обмен предустановками: Экспорт в файл для выгрузки и Импорт из файла для загрузки. Выбранная предустановка автоматически заполняет форму Secured Packet и устанавливает TAR для операции (RAM/GP → ISD TAR, SIM RFM → UICC TAR, USIM RFM → USIM TAR); изменения сразу передаются работающему слушателю SCP81.
+Столбец SCP81 показывает, задана ли в предустановке рабочая пара PSK: ✓ (зелёный) — идентификатор и ключ заданы; ⚠ (жёлтый) — задано только одно из двух, и слушатель такую предустановку игнорирует; — — PSK нет. Идентификатор и ключ PSK задаются вместе. Кнопка Редактировать загружает предустановку в форму (кнопка Add становится Сохранить; Отмена очищает форму), поэтому поля можно менять без повторного ввода карты; Удалить удаляет строку. Обмен предустановками: Экспорт в файл для выгрузки и Импорт из файла для загрузки. Выбранная предустановка автоматически заполняет форму Secured Packet и устанавливает TAR для операции (RAM/GP → ISD TAR, SIM RFM → UICC RFM TAR, USIM RFM → ADF RFM TAR); изменения сразу передаются работающему слушателю SCP81.
CLA = A0 (GSM 11.11 / TS 151 011, ISO 7816-4). Remote File Management for classic SIM cards.
Commands are assembled as a chain: press a command button (e.g. + SELECT) to append a row, fill that row’s fields, and the chain preview (above the pack button) updates automatically. Add a GET RESPONSE row to fetch data following a SELECT. Press Pack into Secured packet to wrap the whole chain into an SCP80 packet; packing sets the SCP80 TAR to the selected preset’s UICC TAR (B00000 by default). A SIM RFM session’s current DF is MF, so SELECT paths address files from MF.
Commands are assembled as a chain: press a command button (e.g. + SELECT) to append a row, fill that row’s fields, and the chain preview (above the pack button) updates automatically. Add a GET RESPONSE row to fetch data following a SELECT. Press Pack into Secured packet to wrap the whole chain into an SCP80 packet; packing sets the SCP80 TAR to the selected preset’s UICC RFM TAR (B00000 by default), the UICC Shared File System RFM TAR: the MF is implicitly selected and no ADF can be accessed, so SELECT paths address files from MF.
| Command | INS | Description | @@ -95,8 +95,8 @@
|---|
| Field | Description |
|---|---|
| ADM | Optional administrator PIN (hex, or up to 8 ASCII digits), stored in the preset for later use by the file manager; not used by the SCP80/SCP81 views |
| KIc / KID | Key and algorithm indicators (e.g. 15 = index 1, 3DES-CBC2; x2 = AES), required together with the keys |
| SPI1 / SPI2 | Security Parameter Indicators |
| ISD TAR | Toolkit Application Reference for ISD/RAM operations (SCP80 RAM view, RAM/GP chains); spec default 000000, prefilled when empty |
| UICC TAR | TAR for SIM RFM (TS 31.116); spec default B00000 — a SIM RFM session selects from MF |
| USIM TAR | TAR for USIM RFM (TS 31.115); spec default B00001 — a USIM RFM session's current DF is ADF.USIM |
| ISD TAR | Issuer Security Domain TAR (TS 101 220 Annex D); used for RAM/GP operations (SCP80 RAM view, RAM/GP chains); spec default 000000, prefilled when empty |
| UICC RFM TAR | UICC Shared File System RFM TAR (TS 102 226 §7.2, TS 101 220 Annex D): the MF is implicitly selected and only files under the MF are accessible (no ADFs); used by the SIM RFM view; spec default B00000 |
| ADF RFM TAR | ADF RFM TAR (TS 102 226 §7.3, TS 101 220 Annex D): the ADF is implicitly selected and the TAR is linked to the application's AID — ADF.USIM in the USIM RFM view; spec default B00001 |
| Counter | Replay counter (5 bytes); advanced and saved after each successful SCP80 send |
| KIc key / KID key | 16/24/32 hex chars (8/16/24-byte 3DES) or 32/48/64 hex chars (16/24/32-byte AES) keys |
| PSK identity | SCP81 HTTP OTA: the identity the card sends in the TLS handshake (e.g. 89390100000129506903) |
| PSK key | SCP81 HTTP OTA: 32 hex chars (16 bytes) for the PSK TLS listener, picked by the identity the card presents |
The SCP81 column shows whether the preset supplies a usable PSK pair: ✓ (green) — identity and key set; ⚠ (amber) — only one of the two, so the listener ignores the preset; — — no PSK. PSK identity and key must be set together. Edit loads a preset into the form (the Add button becomes Save; Cancel clears it) so fields can be changed without re-entering the card; Remove deletes the row. Presets can be shared with Export to file and restored with Import from file. The selected card preset auto-fills the Secured Packet form and sets the TAR for the operation (RAM/GP → ISD TAR, SIM RFM → UICC TAR, USIM RFM → USIM TAR); edits are pushed into a running SCP81 listener automatically.
+The SCP81 column shows whether the preset supplies a usable PSK pair: ✓ (green) — identity and key set; ⚠ (amber) — only one of the two, so the listener ignores the preset; — — no PSK. PSK identity and key must be set together. Edit loads a preset into the form (the Add button becomes Save; Cancel clears it) so fields can be changed without re-entering the card; Remove deletes the row. Presets can be shared with Export to file and restored with Import from file. The selected card preset auto-fills the Secured Packet form and sets the TAR for the operation (RAM/GP → ISD TAR, SIM RFM → UICC RFM TAR, USIM RFM → ADF RFM TAR); edits are pushed into a running SCP81 listener automatically.