3 месяца назад
История
README.md
sim_translate
Утилита командной строки для разбора и отображения дампов SIM-карт в формате JSON.
Описание
sim_translate читает JSON-дамп, полученный инструментами чтения SIM-карт (например, osmocom-sim-reader), и выводит человекочитаемую сводку содержимого карты:
- Идентификация карты (name, ATR, ICCID)
- IMSI, GID1/GID2, SPN, SMSP, MSISDN
- Счётчики тарификации ACM / ACMmax
- Сырые значения SST, ECC, ACC, FEHPLMN
- Списки PLMN с декодированием технологий радиодоступа (AcT): PLMNsel, OPLMNwAcT, HPLMNwAcT, FPLMN
- Обзор приложений / DF
- Все элементарные файлы (EF) с содержимым и кратким превью
Требования
- Python 3.7+
- Сторонние зависимости отсутствуют
Использование
python3 main.py <dump.json>
Пример запуска
python3 main.py text.txt
Пример вывода
Card summary
------------
Name : UICC
ATR (hex) : 3b9f95801fc78031e073fe211b573c866...
ICCID : 89701501077131034794
IMSI : 250015001234567
...
PLMN lists
----------
PLMNsel : 25001, 25002
OPLMNwAcT :
25001 -> E-UTRAN (LTE), NR (5G)
HPLMNwAcT :
25001 -> E-UTRAN (LTE)
FPLMN (forbidden) :
Applications / DFs
------------------
MF/ADF.USIM File ID: 7fff DF name: a0000000871002
...
Working EF files (with content)
-------------------------------
EF path FID Size SFI Preview
...
Формат входного файла
Входной JSON-файл должен соответствовать структуре, которую формируют стандартные инструменты снятия дампов SIM-карт. Объект верхнего уровня содержит:
| Поле | Описание |
|---|---|
name |
Название профиля карты (например, "UICC") |
atr |
ATR в виде hex-строки |
iccid |
ICCID в виде десятичной строки |
files |
Словарь путей EF/DF и их содержимого |
Каждая запись в files может содержать объект fcp (File Control Parameters) и поле body с сырыми hex-данными или списком записей.
Декодирование PLMN / AcT
Байты PLMN декодируются согласно 3GPP TS 31.102. Поле Access Technology — 2 байта в порядке big-endian (первый октет старший). Поддерживаемые технологии радиодоступа:
| Бит | Маска | Технология |
|---|---|---|
| 15 | 0x8000 |
UTRAN |
| 14 | 0x4000 |
E-UTRAN (LTE) |
| 13 | 0x2000 |
E-UTRAN NB-S1 (NB-IoT) |
| 12 | 0x1000 |
E-UTRAN WB-S1 (LTE-M) |
| 11 | 0x0800 |
NG-RAN (5G) |
| 7 | 0x0080 |
GSM |
| 6 | 0x0040 |
GSM COMPACT |
| 5 | 0x0020 |
cdma2000 HRPD |
| 4 | 0x0010 |
cdma2000 1xRTT |
Описание
Утилита командной строки для разбора и отображения дампов SIM-карт в формате JSON.
Конвейеры
0
успешных
0
с ошибкой