From 73f46e99c410d3aca48d15df2ce9639a89292629 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: Mon, 24 Aug 2026 20:34:01 +0300 Subject: [PATCH] genSp: unciphered packets drop CPL prefix + prominent PoR status; v1.9.5 pySim encode_cmd transmits the 2-byte CPL only when ciphering is applied; unciphered packets start at CHL. genSp always emitted it, so every SPI1=0x00 packet diverged from the pySim reference at byte 0 (sp-verify MISMATCH) and carried a length octet pair real cards need not expect. - genSp output: bytesToHex(ciphering ? packet : packet.subarray(2)); MAC input unchanged (still covers the virtual-CPL frame, matching pySim's sign-then-strip convention) - Secured packet page: PoR verdict now rendered prominently in a dedicated text-base semibold line ('PoR: por_ok' green / other statuses red) above the small detail line; hidden when no PoR was requested or the ENVELOPE failed - sp.test.js: three unciphered expectations updated to CHL-first form; ciphered vectors untouched (byte-identical) - version 1.9.4 -> 1.9.5 everywhere; SW cache otaman-v15 -> otaman-v16 --- docs/api.md | 2 +- frontend/index.html | 15 ++++++++++++--- frontend/sw.js | 2 +- frontend/tests/sp.test.js | 10 +++++----- pyproject.toml | 2 +- pysim_otaman_server/server.py | 2 +- 6 files changed, 21 insertions(+), 12 deletions(-) diff --git a/docs/api.md b/docs/api.md index 811db5f..190d4af 100644 --- a/docs/api.md +++ b/docs/api.md @@ -54,7 +54,7 @@ Returns server version for compatibility checking. **Example response:** ```json -{"version": "1.9.4"} +{"version": "1.9.5"} ``` ### `GET /api/status` diff --git a/frontend/index.html b/frontend/index.html index 71a7853..89ef629 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -18,7 +18,7 @@
-

OTAMan SIM OTA with a Human Face v1.9.4

+

OTAMan SIM OTA with a Human Face v1.9.5

github @@ -812,9 +812,10 @@ + - +