ui: HTTP OTA pill labels, CAT_TP paired with the BIP opening (v3.5.0)
- The first two Push commands sub-pills carry the HTTP OTA prefix
("HTTP OTA Trigger (Push SMS)", "HTTP OTA Store (SD admin params)"), so the
form headings drop it and read "Administrative session trigger (Push SMS)"
/ "Administrative session store data (SD admin params)".
- BIP channel opening (01) gains the same-message CAT_TP follow-up: an "Also
request the CAT_TP link establishment (02) in the same message" checkbox
with the shared CAT_TP fields (destination port mandatory, optional max SDU
/ identification data / extra TLVs). The preview and Pack then carry the
pair 80EC0101...80EC0102... as one command script (concatenated SMS when
over 140 octets) and -> Expanded Script appends both 22 Command TLVs.
Rationale (SIMalliance Stepping Stones R7 18.6): 01 carries the channel
parameters, 02 only the CAT_TP port, and the guide recommends both in the
same SMS; standalone 02 stays for cards with provisioned defaults.
- Help 2.7 EN/RU, READMEs and AGENTS document the pairing, the fact that 03 is
self-contained (it carries the mandatory OPEN CHANNEL TCP set, so no
companion 01) and the Stepping Stones PoR advice (no PoR on success; on
failure use SMS-SUBMIT / SPI2 0x20).
- pushSectionApdus vectors cover the 01+02 pair and its mandatory port;
sw cache -> simple-v250.
This commit is contained in:
@@ -231,7 +231,7 @@
|
||||
<p class="text-sm mb-3">Вставка raw APDU hex и отображение сворачиваемого дерева. Автоматически определяет контейнер: <strong>Expanded Script</strong> (начало <code class="font-mono text-sm">AA</code> или <code class="font-mono text-sm">AE80</code>, декодируется по ETSI TS 102 226 §5.2.1) или <strong>Compact C-APDU chain</strong> (последовательность C-APDU ISO 7816). Каждый узел показывает метку, hex и краткое описание; родительские узлы раскрываются в подэлементы.</p>
|
||||
|
||||
<h3 id="push-commands" class="text-lg font-medium mb-2">2.7 Пуш/триггер</h3>
|
||||
<p class="text-sm mb-3">Объединяет команды, заставляющие карту выйти в сеть. Три подвкладки переключают формы — <strong>Trigger (Push SMS)</strong>, <strong>Store (SD admin params)</strong> и <strong>«Триггер канала/линка»</strong> — показывается только выбранная форма; обе формы GP используют один набор полей (режим меняет только обёртку payload’а, а заголовок формы указывает режим). Они из разных спецификаций и доставляются по-разному: триггер администрирования это TLV-сообщение для Security Domain (HTTP OTA), а PUSH §9 это C-APDU (<code class="font-mono text-sm">80 EC 01 P2</code>) для приложения с поддержкой BIP и/или CAT_TP.</p>
|
||||
<p class="text-sm mb-3">Объединяет команды, заставляющие карту выйти в сеть. Три подвкладки переключают формы — <strong>HTTP OTA Trigger (Push SMS)</strong>, <strong>HTTP OTA Store (SD admin params)</strong> и <strong>«Триггер канала/линка»</strong> — показывается только выбранная форма; обе формы GP используют один набор полей (режим меняет только обёртку payload’а, а заголовок формы указывает режим). Они из разных спецификаций и доставляются по-разному: триггер администрирования это TLV-сообщение для Security Domain (HTTP OTA), а PUSH §9 это C-APDU (<code class="font-mono text-sm">80 EC 01 P2</code>) для приложения с поддержкой BIP и/или CAT_TP.</p>
|
||||
|
||||
<h4 id="http-ota" class="font-medium mb-1">Сессия администрирования (HTTP OTA)</h4>
|
||||
<p class="text-sm mb-3">Сборка payload’ов Remote Application Management over HTTP по GlobalPlatform <strong>GPC v2.2 Amendment B v1.1</strong> (§4.7). Два режима:</p>
|
||||
@@ -255,10 +255,11 @@
|
||||
<h4 id="push-ts102226" class="font-medium mb-1 mt-3">PUSH по TS 102 226 §9</h4>
|
||||
<p class="text-sm mb-2">Подвкладка <strong>«Триггер канала/линка»</strong> собирает запросы §9 тем же кодировщиком, что и строка <strong>PUSH</strong> в цепочке RAM/GP, показывает предпросмотр C-APDU, и предлагает <strong>«Упаковать в Secured packet»</strong> (TAR остаётся ручным: запрос адресован целевому приложению, а не Security Domain) и <strong>→ Расширенный скрипт</strong> (оборачивает каждый APDU в Command TLV <code class="font-mono text-sm">22</code> и добавляет их в конструктор Expanded Script).</p>
|
||||
<ul class="list-disc list-inside text-sm space-y-1 mb-3">
|
||||
<li><strong>Открытие BIP-канала</strong> (<code class="font-mono text-sm">01</code>) — необязательные COMPREHENSION-TLV OPEN CHANNEL; при пустом значении действуют умолчания приложения. Проактивную команду OPEN CHANNEL выдаёт само приложение (§9.1.1).</li>
|
||||
<li><strong>Установление соединения CAT_TP</strong> (<code class="font-mono text-sm">02</code>) — порт назначения в transport level <code class="font-mono text-sm">3C</code> с типом протокола 00 (обязателен), необязательные buffer size <code class="font-mono text-sm">39</code> / данные идентификации <code class="font-mono text-sm">36</code>.</li>
|
||||
<li><strong>TCP-соединение</strong> (<code class="font-mono text-sm">03</code>) — bearer <code class="font-mono text-sm">35</code>, transport level <code class="font-mono text-sm">3C</code> с типом протокола 02 = TCP-клиент, удалённое соединение, адрес назначения <code class="font-mono text-sm">3E</code> (<code class="font-mono text-sm">21</code> IPv4 / <code class="font-mono text-sm">57</code> IPv6 / <code class="font-mono text-sm">F0</code> FQDN), NAA/APN <code class="font-mono text-sm">47</code>; порт и адрес обязательны. Это параметры OPEN CHANNEL для TCP: соединение устанавливается через BIP или, если карта и терминал это поддерживают, через прямое IP-соединение (TS 102 483).</li>
|
||||
<li><strong>Открытие BIP-канала</strong> (<code class="font-mono text-sm">01</code>) — необязательные COMPREHENSION-TLV OPEN CHANNEL; при пустом значении действуют умолчания приложения. Проактивную команду OPEN CHANNEL выдаёт само приложение (§9.1.1). SIMalliance Stepping Stones R7 §18.6 рекомендует отправлять его <strong>вместе с CAT_TP-запросом в одном сообщении</strong> (параметры канала — в <code class="font-mono text-sm">01</code>, порт CAT_TP — в <code class="font-mono text-sm">02</code>), поэтому в форме есть флажок <em>«Также запросить установление соединения CAT_TP (02)»</em>; пара передаётся одним скриптом команд (конкатенированные SMS, если больше 140 октетов).</li>
|
||||
<li><strong>Установление соединения CAT_TP</strong> (<code class="font-mono text-sm">02</code>) — порт назначения в transport level <code class="font-mono text-sm">3C</code> с типом протокола 00 (обязателен), необязательные buffer size <code class="font-mono text-sm">39</code> / данные идентификации <code class="font-mono text-sm">36</code>. Отдельно он полагается на предустановленные на карте умолчания канала/CAT_TP, против чего предостерегает руководство Stepping Stones; предпочтительна пара выше.</li>
|
||||
<li><strong>TCP-соединение</strong> (<code class="font-mono text-sm">03</code>) — bearer <code class="font-mono text-sm">35</code>, transport level <code class="font-mono text-sm">3C</code> с типом протокола 02 = TCP-клиент, удалённое соединение, адрес назначения <code class="font-mono text-sm">3E</code> (<code class="font-mono text-sm">21</code> IPv4 / <code class="font-mono text-sm">57</code> IPv6 / <code class="font-mono text-sm">F0</code> FQDN), NAA/APN <code class="font-mono text-sm">47</code>; порт и адрес обязательны. Это параметры OPEN CHANNEL для TCP, и они обязательны в запросе, поэтому <code class="font-mono text-sm">03</code> <strong>самодостаточен</strong> — сопутствующий <code class="font-mono text-sm">01</code> не нужен. Соединение устанавливается через BIP или, если карта и терминал это поддерживают, через прямое IP-соединение (TS 102 483).</li>
|
||||
<li><strong>Пакет идентификации</strong> (<code class="font-mono text-sm">04</code>) не является триггером: он предполагает уже открытый TCP-канал и имеет смысл только как продолжение в том же сообщении, поэтому у TCP-запроса есть флажок <em>«Также отправить пакет идентификации (04)»</em>, добавляющий его (данные необязательны; при пустом значении используется ICCID). <code class="font-mono text-sm">04</code> также остаётся доступным в строке PUSH цепочки RAM/GP для сценариев.</li>
|
||||
<li><strong>PoR</strong> — Stepping Stones R7 §18.6.3 рекомендует <em>не</em> запрашивать PoR при успешной отправке (это может помешать обмену ME–карта); запрашивайте его только для разбора сбоя, в режиме SMS-SUBMIT (бит SPI2 <code class="font-mono text-sm">0x20</code> в SCP80).</li>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user