docs: complete SCP80/RAM coverage — cards, presets, counter, PoR
- Fix duplicate /api/ram-install in api.md endpoints table - Add Card Preset section to RAM tab (fields, counter auto-increment) - Add SCP80 delivery mechanism explanation (ENVELOPE wrapping) - Add Cards subtab documentation (add/edit/delete presets, CNTR management) - Add PoR section (delivery PoR vs submit PoR, SPI2 bit 5)
This commit is contained in:
@@ -129,6 +129,22 @@ CLA = `00` (ETSI TS 102 221). Те же команды, что и SIM, но SELE
|
||||
|
||||
CLA = `80` (GlobalPlatform v2.3.1). Удалённое управление содержимым карты через SCP80.
|
||||
|
||||
Все операции RAM отправляются как защищённые пакеты SCP80 (ETSI TS 102 225) через SMS-PP-DOWNLOAD ENVELOPE. Карта должна поддерживать SCP03 (AES или 3DES) для безопасной транспортировки.
|
||||
|
||||
### Выбор карты (Card Preset)
|
||||
|
||||
Выберите сохранённую конфигурацию карты из выпадающего списка **Card preset**. Каждый пресет хранит:
|
||||
|
||||
| Поле | Описание |
|
||||
|---|---|
|
||||
| SPI1 / SPI2 | Уровень безопасности и настройки PoR |
|
||||
| Ключ KIc / KID | Hex ключи шифрования и MAC |
|
||||
| Индекс KIc / KID | Номер версии ключа |
|
||||
| TAR | Toolkit Application Reference (3 байта) |
|
||||
| Счётчик (CNTR) | 10-значный hex счётчик повторов, автоматически увеличивается после каждой успешной отправки SCP80 |
|
||||
|
||||
Пресеты карт управляются во вкладке **SCP80 → Cards** (см. ниже). Если пресет не выбран, RAM-вкладка предупреждает и отказывается выполнять.
|
||||
|
||||
### Операции
|
||||
|
||||
В RAM-подвкладке доступны две операции через выпадающий список **Operation**:
|
||||
@@ -346,6 +362,29 @@ CLA = `80` (GlobalPlatform v2.3.1). Удалённое управление со
|
||||
- ISO 9797-1
|
||||
- NIST SP 800-38B (CMAC)
|
||||
|
||||
### Подвкладка Cards
|
||||
|
||||
Пилл **Cards** во вкладке SCP80 управляет сохранёнными конфигурациями карт (пресеты). Каждый пресет хранит криптографические ключи, настройки SPI, TAR и счётчик повторов для SCP80-операций.
|
||||
|
||||
**Добавить карту:** заполните имя, SPI1/SPI2, ключи KIc/KID и их индексы, TAR, нажмите **Add**. Карта появится в списке и станет доступна в выпаданом списке **Card preset** на RAM-вкладке.
|
||||
|
||||
**Редактировать карту:** выберите карту в списке, измените поля, нажмите **Save**.
|
||||
|
||||
**Удалить карту:** выберите карту, нажмите **Delete**. Удаляет пресет из `localStorage`.
|
||||
|
||||
**Счётчик:** 10-значный hex-счётчик (CNTR) автоматически увеличивается после каждой успешной отправки SCP80 (ручные отправки Secured Packet и RAM-операции). Обновлённый счётчик автоматически сохраняется обратно в пресет.
|
||||
|
||||
### PoR (Proof of Reception)
|
||||
|
||||
PoR подтверждает, что карта получила и выполнила защищённый пакет. Два режима:
|
||||
|
||||
| SPI2 (бит 5) | Режим | Описание |
|
||||
|---|---|---|
|
||||
| `0x00` | Delivery PoR | PoR возвращается в ответе ENVELOPE (SW+данные) |
|
||||
| `0x20` | Submit PoR | PoR отправляется обратно как SMS-SUBMIT через прокоманду FETCH |
|
||||
|
||||
Delivery PoR (SPI2 `01`) проще — карта возвращает PoR напрямую в ответе ENVELOPE. Submit PoR (SPI2 `21`) используется, когда карта не может ответить inline (ограничено пространство ответа ENVELOPE).
|
||||
|
||||
---
|
||||
|
||||
## Конвертация (боковые панели SIM/USIM)
|
||||
|
||||
Reference in New Issue
Block a user