From ab91fcff54adc588115022f15b1a14c0b53583d2 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: Thu, 17 Sep 2026 09:29:24 +0300 Subject: [PATCH] =?UTF-8?q?i18n:=20reword=20the=20Next-URI=20hint=20(RU:?= =?UTF-8?q?=20'=D0=92=D1=8B=D0=BA=D0=BB=20-=20=D0=BA=D0=BE=D0=BC=D0=B0?= =?UTF-8?q?=D0=BD=D0=B4=D0=B0=20=D0=B1=D0=B5=D0=B7=20=D0=BE=D1=82=D0=B2?= =?UTF-8?q?=D0=B5=D1=82=D0=B0')?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The dictionary hint, the RU help paragraph and README_RUS use the short 'выкл - команда без ответа' phrasing for the unchecked Next-URI case. SW cache otaman-v182 (index.html/help-ru.html changed). --- README_RUS.md | 2 +- frontend/help-ru.html | 2 +- frontend/index.html | 2 +- frontend/sw.js | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README_RUS.md b/README_RUS.md index 729e35b..f10ecec 100644 --- a/README_RUS.md +++ b/README_RUS.md @@ -567,7 +567,7 @@ Delivery PoR (SPI2 `01`) проще — карта возвращает PoR на - **Проброс (адрес карты)** — без слушателя и без цели: терминал подключает каждый BIP-канал к адресу, который карта запрашивает в OPEN CHANNEL (`Other address` + порт transport level, только TCP-клиент, удалённое соединение; порт по умолчанию спецификациями не задан, поэтому неполный запрос отклоняет канал). TLS завершается на той платформе, и используется сеть сервера (только для лаборатории). - **Capture (dump)** — принимает TCP-канал карты и записывает всё, что она отправляет (например, TLS ClientHello), не отвечая. -Блок **Настройки** (свёрнут по умолчанию, метка «изменены» при отличиях; применяются при **Start**, сохраняются в браузере) открывает HTTP-фрейминг (Chunked body / размер чанка, 0 = одна TLS-запись / заголовок Connection / компактные заголовки, допустимо по RFC 7230 §3.2 / Next-URI: флажок + шаблон, снято — одноразовый режим), фрейминг скрипта (неопределённая `AE 80 …` или определённая `AA` длина Command Scripting template, теги comprehension-required, необязательный `X-Admin-Targeted-Application` со своим флажком) и **Показывать события канала** (во всех режимах, TS 102 223 §7.5.11). Соединение удерживается между POST-запросами и аккуратно закрывается на 204. У TLS нет настроек: слушатель предлагает TLS 1.0–1.2 и все PSK-наборы, а карта выбирает; журнал и строка состояния показывают фактически использованные версию и набор, а сбой рукопожатия по причине TLS/набора пишется как `tls-handshake-failed`. +Блок **Настройки** (свёрнут по умолчанию, метка «изменены» при отличиях; применяются при **Start**, сохраняются в браузере) открывает HTTP-фрейминг (Chunked body / размер чанка, 0 = одна TLS-запись / заголовок Connection / компактные заголовки, допустимо по RFC 7230 §3.2 / Next-URI: флажок + шаблон, выкл - команда без ответа), фрейминг скрипта (неопределённая `AE 80 …` или определённая `AA` длина Command Scripting template, теги comprehension-required, необязательный `X-Admin-Targeted-Application` со своим флажком) и **Показывать события канала** (во всех режимах, TS 102 223 §7.5.11). Соединение удерживается между POST-запросами и аккуратно закрывается на 204. У TLS нет настроек: слушатель предлагает TLS 1.0–1.2 и все PSK-наборы, а карта выбирает; журнал и строка состояния показывают фактически использованные версию и набор, а сбой рукопожатия по причине TLS/набора пишется как `tls-handshake-failed`. **Script** выбирает список команд, отдаваемый в сессии: **None** (оставить настроенный на сервере скрипт) или один из скриптов, созданных на подвкладке **Scripts**; **Restart script** заново ставит выбранный скрипт в очередь с `force`, начиная с первого APDU. diff --git a/frontend/help-ru.html b/frontend/help-ru.html index 9ab3840..2b7297a 100644 --- a/frontend/help-ru.html +++ b/frontend/help-ru.html @@ -327,7 +327,7 @@
  • Проброс (адрес карты) — без слушателя и без цели: терминал подключает каждый BIP-канал к адресу, который карта запрашивает в OPEN CHANNEL (Other address + порт Transport level, только TCP-клиент, удалённое соединение; спецификации не задают порт по умолчанию, поэтому неполный запрос отклоняет канал). TLS завершается на той платформе, и используется сеть сервера (только для лаборатории).
  • Захват (dump) — принимает TCP-канал карты и записывает всё, что она отправляет (например, TLS ClientHello), не отвечая.
  • -

    Блок Настройки (по умолчанию свёрнут; при отличии от эталонных значений показывается метка изменены; применяются при Start, сохраняются в браузере) открывает HTTP-фрейминг — Chunked body / размер чанка (0 = весь ответ в одной TLS-записи), заголовок Connection, компактные заголовки (без необязательного пробела после :, допустимо по RFC 7230 §3.2) и Next-URI (флажок + шаблон; снято — одноразовый режим: карта выполнит команду, не вернёт строку ответа и закроет сессию) — и фрейминг скрипта (неопределённая длина AE 80 … / определённая AA в Command Scripting template, теги comprehension-required и необязательный X-Admin-Targeted-Application со своим флажком). Показывать события канала (ENVELOPE Channel status, TS 102 223 §7.5.11) действует во всех режимах. Соединение удерживается между POST-запросами и аккуратно закрывается на 204. У TLS нет настроек: слушатель предлагает TLS 1.0–1.2 и все PSK-наборы, а карта выбирает; строка состояния и TLS-журнал показывают фактически использованные версию и набор, а сбой рукопожатия по причине TLS/набора пишется как tls-handshake-failed.

    +

    Блок Настройки (по умолчанию свёрнут; при отличии от эталонных значений показывается метка изменены; применяются при Start, сохраняются в браузере) открывает HTTP-фрейминг — Chunked body / размер чанка (0 = весь ответ в одной TLS-записи), заголовок Connection, компактные заголовки (без необязательного пробела после :, допустимо по RFC 7230 §3.2) и Next-URI (флажок + шаблон; выкл - команда без ответа: карта выполнит команду, не вернёт строку ответа и закроет сессию) — и фрейминг скрипта (неопределённая длина AE 80 … / определённая AA в Command Scripting template, теги comprehension-required и необязательный X-Admin-Targeted-Application со своим флажком). Показывать события канала (ENVELOPE Channel status, TS 102 223 §7.5.11) действует во всех режимах. Соединение удерживается между POST-запросами и аккуратно закрывается на 204. У TLS нет настроек: слушатель предлагает TLS 1.0–1.2 и все PSK-наборы, а карта выбирает; строка состояния и TLS-журнал показывают фактически использованные версию и набор, а сбой рукопожатия по причине TLS/набора пишется как tls-handshake-failed.

    Сценарий выбирает список команд, отдаваемый в сессии — Нет (оставить настроенный на сервере скрипт) или один из скриптов подвкладки «Скрипты»; выбранный список передаётся серверу при старте слушателя.

    Строка состояния показывает слушатель, согласованный идентификатор и активные каналы (байты in/out). Панель Script results (R-APDUs) перечисляет каждый отданный C-APDU с его R-APDU/SW и прогрессом done/total; журнал HTTP OTA log фиксирует OPEN/CLOSE CHANNEL, SEND/RECEIVE DATA и каждый шаг TLS/HTTP/скрипта (tls-handshake, tls-request, script-send, script-rapdu, script-page, script-done, data-available, peer-close), кнопка Clear очищает его.

    5.2 Скрипты

    diff --git a/frontend/index.html b/frontend/index.html index fc579cb..dedeac2 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -11642,7 +11642,7 @@ const LANG_RU = { 'omit (implicit keep-alive)': 'не отправлять (неявный keep-alive)', "Compact headers (omit the optional space after ':')": 'Компактные заголовки (без необязательного пробела после «:»)', 'Send X-Admin-Next-URI (required to continue the session)': 'Отправлять X-Admin-Next-URI (нужен для продолжения сессии)', - 'Unchecked = one-shot: per GP Am. B §4.4.2 the card executes the command, returns no response string and closes the session.': 'Снято — одноразовый режим: по GP Am. B §4.4.2 карта выполнит команду, не вернёт строку ответа и закроет сессию.', + 'Unchecked = one-shot: per GP Am. B §4.4.2 the card executes the command, returns no response string and closes the session.': 'Выкл - команда без ответа: по GP Am. B §4.4.2 карта выполнит команду, не вернёт строку ответа и закроет сессию.', 'Send X-Admin-Targeted-Application': 'Отправлять X-Admin-Targeted-Application', 'custom': 'изменены', 'Script framing': 'Фрейминг скрипта', diff --git a/frontend/sw.js b/frontend/sw.js index 61e1bc1..92502ea 100644 --- a/frontend/sw.js +++ b/frontend/sw.js @@ -1,4 +1,4 @@ -const CACHE = 'otaman-v181'; +const CACHE = 'otaman-v182'; const URLS = [ 'index.html', 'help.html',