4.2.18.2.4 ES10b 服务器认证(SM-DP+)异常用例
TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases
-man 人工切片
- 终态
- ok `_ok` 复用(结构 A1-A7 PASS;`_ok` run 无厂商错误行)
- ErrorCount
- 0
- 执行 job
- 20261007_124620:4e08029bca10487eab261a0d7ef9320f
- html_run
- 20261007_124620
- 包 sha256
- fd0dd645aa5ec4f3…
- 包大小
- 243.3 KB
日志源:logs/20261007_124620/extracted/ESIM_TEST_SGP_23/TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_01_Error_With_Incorrect_SM_DPauth_certificate.html
-cas 盲生成
- 终态
- failed 纯 native 零卡态前置(N0)
- ErrorCount
- 43
- 执行 job
- b03d36f242f348e4876c9a777d08fa37
- html_run
- 78cea006eeb8_att3
- 包 sha256
- 4d95b9ed5994ec8d…
- 包大小
- 843.2 KB
- 判定
- RERUN
- 路由
- native_N0
- 状态轴
- execution=red_verify / place=not_attempted / release=not_ready / card_state=n/a
差异概览(机械口径)
闭包文件层(l1)
man 34 / cas 82 个 JS;共同 31,一致 30,man-only 3,cas-only 51
命令序列层(l2)
man 40 / cas 66 条命令;完全一致 5,核心一致 8,长度尾部差 3,man-only 27,cas-only 53
规范覆盖(l3)
spec_steps 0,缺失 REQ 1 项,checkData 135 次,计数缺口 0,物化 FULL,执行 FAIL
断言自证(attestation)
js 断言 55 条 / 绑定层 0 条 / 缺口 0
机械差异分类
| 轴 | 说明 | 计数 |
|---|---|---|
| RUN_DIFF | man 通过 / cas 失败 | 1 |
| SCRIPT_DIALECT | 闭包文件差:man-only 3 / cas-only 51;命令序列差:man-only 27 / cas-only 53 | 134 |
| GEN_DIFF | REQ 覆盖缺口:['同 §4.2.18.1 全集'] | 1 |
对比报告
4.2.18.2.4 TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases — -man ↔ -cas diff 报告
交付形态说明:本报告随专家交付包分发——-man/-cas脚本包 zip 与 190server HTML 执行日志已内联至packages/、evidence-html/,相应路径已相对化;TTR、spec_intl、caseir 等仓内留痕仍为生成机原始路径(未随包)。
- 生成时间:2026-10-08 22:57:10 |引擎:holiday-blk5/0.1|配对状态:
PAIRED - 分母口径:卡侧 61 之一
1. 配对与包
| 侧 | 包/源 | sha256 | 源类型 | 入口用例 |
|---|---|---|---|---|
-man | 4.2.18.2.4-TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases-man.zip | fd0dd645aa5ec4f37daa0cb33cc1ec918d943ba7877eb10818d0238dd9ea3dab | zip | TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_01_Error_With_Incorrect_SM_DPauth_certificate |
-cas | 4.2.18.2.4-TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases-cas.zip | 4d95b9ed5994ec8df37647325adfa42157f815f456bd30d6f0849953528428a5 | zip | — |
- man 源路径:
../packages/man/4.2.18.2.4-TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases-man.zip - cas 源路径:
../packages/cas/4.2.18.2.4-TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases-cas.zip - 上游来源:{"man_ledger": true, "cas_ledger": true, "naming_map": true, "html_probe": true, "man_package": true, "cas_package": true}
- 适用性:naming-map=
M["M", "M", "M", "M", "M"];caseir=M
2. 执行摘要(双方 job/终态)
| 侧 | 终态/计划 | 备注 | ErrorCount | job_id | 业务状态 | TTR | 诊断包 |
|---|---|---|---|---|---|---|---|
-man | ok | _ok 复用(结构 A1-A7 PASS;_ok run 无厂商错误行) | 0 | 20261007_124620:4e08029bca10487eab261a0d7ef9320f | — | /Users/yuhu/cas/原料/切片/4.2.18.2.4-TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases/logs/20260907_185430_ok/extracted/ESIM_TEST_SGP_23/TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_01_Error_With_Incorrect_SM_DPauth_certificate.ttr | — |
-cas | failed | 纯 native 零卡态前置(N0) | 43 | b03d36f242f348e4876c9a777d08fa37 | — | /Users/yuhu/cas/experiments/4.2.18.2.4-TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases-20261004_022634/logs/b03d36f242f348e4876c9a777d08fa37/result/TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases/TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_01_07_merged.ttr | — |
- cas 块4账本:decision=
RERUN;route=native_N0;live 事件 1 条(4.6 波次进行中;以块4终版账本为准) - cas 4.6 波次最新执行:terminal=
failed;stage=verify;job=b03d36f242f348e4876c9a777d08fa37;gaps=["trace verdict=FAIL", "S20-SW: 期望 SW=9000,实际值 'dt20_not_executed:no_usable_material_set'(行 198)不符——证据矛盾", "结果通道 verdict='FAIL'"] - cas 失败归因引用(块4):
b5-attribution.md - cas 证据来源分层:
RERUN→ 本轮 4.6 波次执行
3. HTML 执行日志状态
-man:NATIVE(../evidence/4.2.18.2.4/man/TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_01_Error_With_Incorrect_SM_DPauth_certificate.html;sha256bad31a1eb0a6a4bd91dacc80138dfefeb98978d6386ceb173ed492844f19f8b8;85974 bytes)-cas:NATIVE(../evidence/4.2.18.2.4/cas/TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_01_07_merged.html;sha256504ab01577c65b8afdf024ac85f10af58e6751d1f91b842a23c2344d94375910;108748 bytes)- 纪律:原生缺失 →
HTML_UNAVAILABLE显式阻断(附探针结论);派生件仅标DERIVED_NOT_NATIVE,不冒充原生。
4. L1 脚本/依赖/命名差异(源文件闭包级)
- 闭包规模:man 34 文件 / cas 82 文件;同名 31(字节同 30,内容异 1)
- 同名内容异:
Import/TestCase_SGP_23.js - man-only 文件 3:
ESIM_TEST_SGP_23.UCE,ESIM_TEST_SGP_23.sol,MANIFEST.json - cas-only 文件 51:
Import/CapInfo.js,Import/ExecuteTestCase.js,Import/ExecuteTestCase_CSC.js,Import/ExecuteTestCase_LoadProfile_via_bip.js,Import/ExecuteTestCase_Local_Management.js,Import/ExecuteTestCase_Non_Telecom_Profile.js,Import/ExecuteTestCase_Performance.js,Import/ExecuteTestCase_PressureTest.js,Import/ExecuteTestCase_ProfileFormatTest_V_2_3_1.js,Import/ExecuteTestCase_ProfileServicesListTest.js… - 注:man 包=切片最小闭包(
script/投影);cas 包=slice_native 全工程投影(厂商参照闭包+生成体)。闭包规模差为打包形态差异;同名文件字节差集中于Import/TestCase_SGP_23.js(TC 入口本体)。
4.1 入口代码对照
- 行数:man 280 / cas 839;字符:man 10816 / cas 85076
- man 顶层调用 Top:[["TestStepStart2", 49], ["TraceStart", 7], ["ResetCard", 7], ["TS_TERMINAL_CAPABILITY_cmd", 7], ["TS_MANAGE_CHANNEL_OPEN", 7], ["TS_SELECT", 7], ["RSP_profile_load_procedure_LPAd", 7], ["ES10b_GetEUICCInfo1", 7], ["ES10b_AuthenticateServer", 7], ["RecoverCard", 7]]
- cas bind 调用:[["checkData", 135], ["sendApdu", 16], ["resetAndAtr", 1], ["runToSteadyState", 1], ["sendTerminalProfile", 1], ["manageChannelOpen", 1]]
| 方言映射对 | 命中数 |
|---|---|
| ResetCard() ↔ bind.resetAndAtr() | 7 |
| TS_*_cmd() ↔ bind.* 命令封装 | 21 |
unified diff(截断预览)
--- man
+++ cas
@@ -1,279 +1,838 @@
-// slice of Import\TestCase_SGP_23.js - cases: TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_01_Error_With_Incorrect_SM_DPauth_certificate + TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_02_Error_With_Invalid_SM_DP_Signature + TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_03_Error_Unsupported_Curve + TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_04_Error_eUICC_Challenge_Mismatch + TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_05_Error_Unknown_CI_PK + TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_06_Error_Invalid_Certificate_Role_OID + TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_07_Error_No_RSP_session_on_going (extracted verbatim)
-
-function TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_01_Error_With_Incorrect_SM_DPauth_certificate()
-{
- tracenamestr = "测试目的:执行AuthenticateServer指令,使用错误的SM-DPauth证书(如 签名无效)";
- curDis.TraceStart(sno++,tracenamestr);
-
- curDis.TestStepStart2(stno++,"复位;");
- ResetCard();
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送Terminal Capability命令;");
- TS_TERMINAL_CAPABILITY_cmd();
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
-
- curLogicChannel = 1;
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
- pkId_CI_ForVerification = pkId_CI_ECDSA_BRP;
- pkId_CI_ForSigning = pkId_CI_ECDSA_BRP;
- var Profile_load_procedure = new RSP_profile_load_procedure_LPAd(PROFILE_OPERATIONAL1_DATA);
- Profile_load_procedure.ICCID = ICCID_OP_PROF1;
- Profile_load_procedure.ES10b_GetEUICCInfo1();
-
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
- Profile_load_procedure.ES10b_GetEUICCChallenge();
-
- Profile_load_procedure.isErrorTest=true;
- euiccAuthenticateErrorCode=AuthenticateErrorCode.invalidCertificate;
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行AuthenticateServerRequest;");
- Profile_load_procedure.DPauthInforObj.Cert = CERT_S_SM_DPauth_INV_SIGN_BRP;
- Profile_load_procedure.ES10b_AuthenticateServer();
-
- RecoverCard();
-
+// Author: 卡思Cas智能体
+// Date: 20261004-022634
+// Function: (purpose 原文未由 SGP.23 该 TC 提供,corpus vacuum 登记)TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases,Test Sequence #01-#07 Error(本 TC 全部 7 条 Test Sequence 合并展开),适用性 M。
+// Test points: ICH-IC1-K1-C1 ATR_present;ICH-IC1-K2-C2 FCP_Template;ICH-IC1-K2-C4 SW
+// ICH-IC1-K3-C4 SW;ICH-IC1-K4-C4 final SW;ICH-IC2-K1-C4 SW;ICH-IC2-K1-C3 CHANNEL_NUMBER extracted
+// ICH-IC2-K2-C4 SW;S1-C1 SW;S1-C2 R_EUICC_INFO1 outer tag
+// S1-C2 R_EUICC_INFO1 required members present;S2-C1 SW;S2-C2 R_CHALLENGE outer tag
+// S2-C2 R_CHALLENGE required members present;S2-C2 tagOfeuiccChallenge
+// S2-C2 lengthOfeuiccChallenge;S4-C1 SW;S4-C2 structure_error;S4-C3 transactionId echo
+// S4-C2 R_AUTH_SERVER_INV_CERT authenticateResponseError structure
+// S4-C2 authenticateErrorCode invalidCertificate;S5-C1 SW;S5-C2 R_EUICC_INFO1 outer tag
+// S5-C2 R_EUICC_INFO1 required members present;S6-C1 SW;S6-C2 R_CHALLENGE outer tag
+// S6-C2 R_CHALLENGE required members present;S6-C2 tagOfeuiccChallenge
+// S6-C2 lengthOfeuiccChallenge;S8-C1 SW;S8-C2 structure_error;S8-C3 transactionId echo
+// S8-C2 R_AUTH_SERVER_INV_SIGN authenticateResponseError structure
+// S8-C2 authenticateErrorCode invalidSignature;S9-C1 SW;S9-C2 R_EUICC_INFO1 outer tag
+// S9-C2 R_EUICC_INFO1 required members present;S10-C1 SW;S10-C2 R_CHALLENGE outer tag
+// S10-C2 R_CHALLENGE required members present;S10-C2 tagOfeuiccChallenge
+// S10-C2 lengthOfeuiccChallenge;S12-C1 SW;S12-C2 structure_error;S12-C3 transactionId echo
+// S12-C2 R_AUTH_SERVER_INV_CURV authenticateResponseError structure
+// S12-C2 authenticateErrorCode unsupportedCurve;S13-C1 SW;S13-C2 R_EUICC_INFO1 outer tag
+// S13-C2 R_EUICC_INFO1 required members present;S14-C1 SW;S14-C2 R_CHALLENGE outer tag
+// S14-C2 R_CHALLENGE required members present;S14-C2 tagOfeuiccChallenge
+// S14-C2 lengthOfeuiccChallenge;S16-C1 SW;S16-C2 structure_error;S16-C3 transactionId echo
+// S16-C2 R_AUTH_SERVER_INV_CHALLENGE authenticateResponseError structure
+// S16-C2 authenticateErrorCode euiccChallengeMismatch;S17-C1 SW;S17-C2 R_EUICC_INFO1 outer tag
+// S17-C2 R_EUICC_INFO1 required members present;S18-C1 SW;S18-C2 R_CHALLENGE outer tag
+// S18-C2 R_CHALLENGE required members present;S18-C2 tagOfeuiccChallenge
+// S18-C2 lengthOfeuiccChallenge;S20-C1 SW;S20-C2 structure_error;S20-C3 transactionId echo
+// S20-C2 R_AUTH_SERVER_INV_CI authenticateResponseError structure
+// S20-C2 authenticateErrorCode ciPKUnknown;S21-C1 SW;S21-C2 R_EUICC_INFO1 outer tag
+// S21-C2 R_EUICC_INFO1 required members present;S22-C1 SW;S22-C2 R_CHALLENGE outer tag
+// S22-C2 R_CHALLENGE required members present;S22-C2 tagOfeuiccChallenge
+// S22-C2 lengthOfeuiccChallenge;S24-C1 SW;S24-C2 structure_error;S24-C3 transactionId echo
+// S24-C2 R_AUTH_SERVER_INV_OID authenticateResponseError structure
+// S24-C2 authenticateErrorCode invalidOid;S25-C1 SW;S25-C2 R_EUICC_INFO1 outer tag
+// S25-C2 R_EUICC_INFO1 required members present;S27-C1 SW;S27-C2 structure_error
+// S27-C3 tid_unchecked;S27-C2 R_AUTH_SERVER_NO_SESSION authenticateResponseError structure
+// S27-C2 authenticateErrorCode noSessionContext
+// S27-C3 error transactionId present (any value accepted)
+// 本函数由 CaseIR 4.2.18.2.4 编译生成(4.2.18.2.4-TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases-20261004_022634,SGP.23 v1.16 × SGP.22 v2.7):字节权威=CaseIR,非誊录黄金脚本。
+// Value-free template: every data byte is injected from CaseIR fields; no scaffold globals (see docs/speconly/compile-symbol-migration.md).
+// 适用性 M:编译期门,运行时由 harness 环境前置承担。
+function TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_01_07_merged() {
+ var bind = curBind;
+ // Seq#07 附加 (卡态)No RSP session is on-going(未调用 ES10b.GetEUICCChallenge): declared unexpanded (non-PROC row or K corpus vacuum; see CaseIR open_items).
+
+ // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 1):RESET(K 语料机械展开)
+ var s28 = bind.resetAndAtr();
+ bind.checkData("ICH-IC1-K1-C1 ATR_present", "1", s28.atr_hex !== "" ? "1" : "0");
+
+ // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 2):SELECT_MF(K 语料机械展开)
+ // FCP outer tag not materialized from clause: tag-face asserted only when corpus fixes the tag byte (e.g. TS 102 221 FCP '62').
+ var s29 = bind.sendApdu("00", "A4", "00", "04", "3F00", "00", "9000");
+ bind.checkData("ICH-IC1-K2-C2 FCP_Template", "1", s29.resp.length > 0 ? "1" : "0");
+ bind.checkData("ICH-IC1-K2-C4 SW", "9000", s29.sw);
+
+ // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 3):TERMINAL_CAPABILITY_LPAd(K 语料机械展开)
+ var s30 = bind.sendApdu("80", "AA", "00", "00", "A9058100830107", null, "9000");
+ bind.checkData("ICH-IC1-K3-C4 SW", "9000", s30.sw);
+
+ // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 4):TERMINAL_PROFILE(K 语料机械展开)
+ var steady31 = bind.runToSteadyState(function () {
+ return bind.sendTerminalProfile("FFFFFFFF7F9D00DFBF00001FE2000000C7EB0000000168005000000000000200", "9000");
+ });
+ bind.checkData("ICH-IC1-K4-C4 final SW", "9000", steady31.final.sw);
+
+ // IC head inline (initial_conditions → PROC_OPEN_LOGICAL_CHANNEL_AND_SELECT_ISDR, K row 1):MANAGE_CHANNEL_OPEN(K 语料机械展开)
+ // CHANNEL_NUMBER extraction and dynamic CLA rebinding are CasBind internal state (chaining rule; no generated-code re-implementation).
+ var s32 = bind.manageChannelOpen("9000");
+ bind.checkData("ICH-IC2-K1-C4 SW", "9000", s32.sw);
+ bind.checkData("ICH-IC2-K1-C3 CHANNEL_NUMBER extracted", "1", s32.chan !== null ? "1" : "0");
+
+ // IC head inline (initial_conditions → PROC_OPEN_LOGICAL_CHANNEL_AND_SELECT_ISDR, K row 2):MTD_SELECT(K 语料机械展开)
+ // CLA = bound channel (cla_rule) and <L> length binding are CasBind internal state (chaining rule; no generated-code re-implementation).
+ var s33 = bind.sendApdu(null, "A4", "04", "00", "A0000005591010FFFFFFFF8900000100", null, "9000");
+ // MTD_SELECT expected face is SW-only (K Annex C.2 open-channel procedure step 2: no FCI content assertion in corpus); no fabricated template parse.
+ bind.checkData("ICH-IC2-K2-C4 SW", "9000", s33.sw);
…(差异行超限,共 1119 行,此处截断)
- man:
ESIM_TEST_SGP_23.UCE;入口 [('TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_01_Error_With_Incorrect_SM_DPauth_certificate', 'TC_EUICC_ES10B.AuthenticateServer_SM-DP+_ErrorCases', 'Import\\\\ExecuteTestCase_SGP_23.js(TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_01_Error_With_Incorrect_SM_DPauth_certificate)')];参数 {"ReaderName": "Identiv SCR35xx USB Smart Card Reader 0"} - cas:
TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases/TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases.uce;入口 [('TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_01_07_merged', 'TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases', 'Import\\\\ExecuteTestCase_spec.js(TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_01_07_merged)')];参数 {"ReaderName": "Identiv SCR35xx USB Smart Card Reader 0"}
5. L2 步骤/APDU/step_map 差异(结构化对齐)
- 命令计数:man 40 / cas 66;精确对齐 5,核心(CLA·INS·P1·P2·Lc)同 8,man-only 27,cas-only 53
| # | -man | -cas | 对齐 | |
|---|---|---|---|---|
| 1 | @RESET | @RESET | exact | |
| 2 | 80AA000007A9058100830137 | 80AA000007A9058100830107 | core_same | |
| 3 | 0070000001 | 0070000001 | exact | |
| 4 | 01A4040010A0000005591010FFFFFFFF8900000100 | 01A4040010A0000005591010FFFFFFFF8900000100 | exact | |
| 5 | 01C0000021 | 01C0000021 | exact | |
| 6 | 81E2910003BF2000 | 81E2910003BF200000 | core_same | |
| 7 | 81E2910003BF2E00 | 81E2910003BF2E0000 | core_same | |
| 8 | 01C000001A | 01C000001A | exact | |
| 9 | 81E2910003BF2000 | 81E2910003BF200000 | core_same | |
| 10 | 81E2910003BF2D00 | 81E2910003BF2E0000 | core_same | |
| 11 | 81E2910003BF2800 | 81E2910003BF200000 | core_same | |
| 12 | 81E2910003BF2800 | 81E2910003BF2E0000 | core_same | |
| 13 | 81E2910003BF2B00 | 81E2910003BF200000 | core_same | |
| — | man-only: 0070000000, 01C00000A9, 01C0000015, 81E21100FFBF388202F130498010170AF898D2EA…7525350, 81E21101FF54455354310B300906035504061302…E060355, 81E29102F81D1104073005880388370A300E0603…3000010, @RESET, 00A40004023F00, 00C0000020, 80AA000007A9058100830137, 8010000023FFFFFFFF7F9D00DFBF00001FE20000…0000038, 801200000F | |||
| — | cas-only: 00A40004023F0000, 00C0000020, 8010000020FFFFFFFF7F9D00DFBF00001FE20000…0000200, 801200000F, 801400000C810301250082028281830100, 81C00000A9, 81C0000015, 01E21100FFBF3882031D30528010159560FAE716…5040A00, 01E21101FF0C0752535054455354310B30090603…BE53000, 01E21102FF0E0603551D1104073005880388370A…0030500, 01E2910325000081030800008203010000830301…2010000, 81C00000A9 |
6. L3 规范字段/Expected/REQ/通过条件差异
- spec:/Users/yuhu/cas/原料/切片/4.2.18.2.4-TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases/spec_intl/SGP.23-v1.16_4.2.18_AuthenticateServer_SM-DP+_ErrorCases.md(风格:mapping);caseir:
/Users/yuhu/cas/experiments/4.2.18.2.4-TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases-20261004_022634/caseir_materialized_gate.json
spec_intl 为人工核订映射表风格(规范步骤 ↔ 厂商脚本实现 ↔ 实跑结果):
| 规范步骤 | man 脚本实现 | man 实跑结果 |
|---|---|---|
| IC1 PROC_EUICC_INITIALIZATION_SEQUENCE | ResetCard()(L9)→ TS_TERMINAL_CAPABILITY_cmd()(L12) | 通过(步骤 1-2=APDU3/6,复位+TC SW=9000) |
| IC2 PROC_OPEN_LOGICAL_CHANNEL_AND_SELECT_ISDR | TS_MANAGE_CHANNEL_OPEN()(L15)→ `TS_SELECT("Select ISD",ISD_R_AID,"90 | 通过(步骤 3-4=APDU11/17,通道 01+ISD-R 9000) |
| 1 #GET_EUICC_INFO1 | BRP CI 注入 pkId_CI_ForVerification/ForSigning=pkId_CI_ECDSA_BRP(L23-2 | 通过(步骤 5=APDU23,R_EUICC_INFO1 SW=9000) |
| 2 #GET_EUICC_CHALLENGE | ES10b_GetEUICCChallenge()(L30) | 通过(步骤 6=APDU29,R_CHALLENGE SW=9000) |
| 3 组装:#CERT_S_SM_DPauth_INV_SIGN(同根 CI、签名无效) | isErrorTest=true(L32)+`euiccAuthenticateErrorCode=invalidCertificate | 通过(缺陷证书随请求 BF388202F1 下发(APDU37-47),载荷含 INV_SIGN 证书体) |
4 MTD_STORE_DATA_SCRIPT(#AUTH_SMDP_INV_CERT) → #R_AUTH_SERVER_INV_CERT+SW=0x9000 | ES10b_AuthenticateServer()(L36) | 通过(步骤 7=APDU35 起;响应 BF3817 A1 15=authenticateResponseError(APDU5 |
| 4 断言 a:AuthenticateResponseError 中 S_TRANSACTION_ID 与请求相同 | 过程库错误分支解析+raw 字节比对 | 通过(字节级:请求 8010 170AF898D2EA781B846BB449C5187F9F(APDU37-41)↔ 错误响应 |
| 4 断言 b:错误码语义(规范表 190 未锁值;SGP.22 L9094 枚举 invalidCertificate=1) | AuthenticateErrorCode 检查(过程库) | 通过(期望值: 01=实际值: 01(APDU61/62)=invalidCertificate(1),与注入载体 INV_SIGN |
| (收尾,非规范步骤) | RecoverCard()(L38) | 通过(Transaction 2 APDU63-168:复位→MemoryReset 删 OP/TP+Reset default SM-DP |
cas CaseIR 步骤/检查:
| 步 | 动作 | checks | REQ |
|---|---|---|---|
| 1 | [Seq#01] MTD_STORE_DATA (#GET_EUICC_INFO1) | ["S1-C1", "S1-C2"] | [] |
| 2 | [Seq#01] MTD_STORE_DATA (#GET_EUICC_CHALLENGE) | ["S2-C1", "S2-C2"] | [] |
| 3 | [Seq#01] Step4 输入准备(InitiateAuthentication):设 <EUICC_CI_PK_ID_TO_BE_US | [] | [] |
| 4 | [Seq#01] MTD_STORE_DATA_SCRIPT (#AUTH_SMDP_INV_CERT) | ["S4-C1", "S4-C2", "S4-C3"] | ["RQ26_005", "RQ26_006", "RQ31_052", "RQ45_006", "RQ45_026_1", "RQ45_026", "RQ45_028", "RQ55_005", "RQ57_100", "RQ57_095", "RQ57_105", "RQ57_107", "RQ26_010"] |
| 5 | [Seq#02] MTD_STORE_DATA (#GET_EUICC_INFO1) | ["S5-C1", "S5-C2"] | [] |
| 6 | [Seq#02] MTD_STORE_DATA (#GET_EUICC_CHALLENGE) | ["S6-C1", "S6-C2"] | [] |
| 7 | [Seq#02] Step4 输入准备(InitiateAuthentication):<S_SMDP_SIGNATURE1> 不以 #SK | [] | [] |
| 8 | [Seq#02] MTD_STORE_DATA_SCRIPT (#AUTHENTICATE_SMDP) | ["S8-C1", "S8-C2", "S8-C3"] | ["RQ31_052", "RQ45_006", "RQ45_026_1", "RQ45_026", "RQ45_028", "RQ55_005", "RQ57_100", "RQ57_097", "RQ57_105", "RQ57_107", "RQ26_010"] |
| 9 | [Seq#03] MTD_STORE_DATA (#GET_EUICC_INFO1) | ["S9-C1", "S9-C2"] | [] |
| 10 | [Seq#03] MTD_STORE_DATA (#GET_EUICC_CHALLENGE) | ["S10-C1", "S10-C2"] | [] |
| 11 | [Seq#03] Step4 输入准备(InitiateAuthentication):serverSignature1 用 <RANDOM | [] | [] |
| 12 | [Seq#03] MTD_STORE_DATA_SCRIPT (#AUTH_SMDP_INV_CURV) | ["S12-C1", "S12-C2", "S12-C3"] | ["RQ26_005", "RQ26_006", "RQ31_049", "RQ31_052", "RQ45_006", "RQ45_026_1", "RQ45_026", "RQ45_028", "RQ55_005", "RQ57_097", "RQ57_100", "RQ57_105", "RQ57_107", "RQ26_010"] |
| 13 | [Seq#04] MTD_STORE_DATA (#GET_EUICC_INFO1) | ["S13-C1", "S13-C2"] | [] |
| 14 | [Seq#04] MTD_STORE_DATA (#GET_EUICC_CHALLENGE) | ["S14-C1", "S14-C2"] | [] |
| 15 | [Seq#04] Step4 输入准备(InitiateAuthentication):serverSigned1.euiccChallen | [] | [] |
| 16 | [Seq#04] MTD_STORE_DATA_SCRIPT (#AUTH_SMDP_INV_CHALLENGE) | ["S16-C1", "S16-C2", "S16-C3"] | ["RQ26_005", "RQ26_006", "RQ31_050", "RQ31_052", "RQ57_098", "RQ57_100", "RQ57_105", "RQ57_107", "RQ26_010"] |
| 17 | [Seq#05] MTD_STORE_DATA (#GET_EUICC_INFO1) | ["S17-C1", "S17-C2"] | [] |
| 18 | [Seq#05] MTD_STORE_DATA (#GET_EUICC_CHALLENGE) | ["S18-C1", "S18-C2"] | [] |
| 19 | [Seq#05] Step4 输入准备(InitiateAuthentication):<EUICC_CI_PK_ID_TO_BE_USED | [] | [] |
| 20 | [Seq#05] MTD_STORE_DATA_SCRIPT (#AUTHENTICATE_SMDP) | ["S20-C1", "S20-C2", "S20-C3"] | ["RQ26_005", "RQ26_006", "RQ26_033", "RQ31_048", "RQ31_051", "RQ31_052", "RQ45_006", "RQ45_026_1", "RQ45_026", "RQ45_028", "RQ57_099", "RQ57_100", "RQ57_105", "RQ57_107", "RQ26_010"] |
| 21 | [Seq#06] MTD_STORE_DATA (#GET_EUICC_INFO1) | ["S21-C1", "S21-C2"] | [] |
| 22 | [Seq#06] MTD_STORE_DATA (#GET_EUICC_CHALLENGE) | ["S22-C1", "S22-C2"] | [] |
| 23 | [Seq#06] Step4 输入准备(InitiateAuthentication):选取 #CERT_S_SM_DPpb_ECDSA(P | [] | [] |
| 24 | [Seq#06] MTD_STORE_DATA_SCRIPT (#AUTH_SMDP_INV_OID) | ["S24-C1", "S24-C2", "S24-C3"] | ["RQ26_005", "RQ26_006", "RQ31_052", "RQ45_006", "RQ45_026_1", "RQ45_026", "RQ45_028", "RQ45_030", "RQ57_096", "RQ57_100", "RQ57_105", "RQ57_107", "RQ26_010"] |
| 25 | [Seq#07] MTD_STORE_DATA (#GET_EUICC_INFO1) | ["S25-C1", "S25-C2"] | [] |
| 26 | [Seq#07] Step3 输入准备:<S_TRANSACTION_ID>、#S_EUICC_CHALLENGE、<S_SMDP_CHAL | [] | [] |
| 27 | [Seq#07] MTD_STORE_DATA_SCRIPT (#AUTH_SMDP_INV_CHALLENGE) | ["S27-C1", "S27-C2", "S27-C3"] | ["RQ26_005", "RQ26_006", "RQ31_052", "RQ57_094", "RQ57_100", "RQ57_105", "RQ57_107"] |
6.1 充分性分析(启发式,不作最终裁定)
- cas:
NO_MECHANICAL_GAPS(全步有检查=True;REQ 全覆盖=False;ErrorCount==0=False) - cas 物化核对(启发式旁证,权威见下行 attestation):声明检查 47 项 / 生成体 checkData 135 次 / S 标号重合 47 / 计数缺口 0 / 形态
FULL;执行面FAIL(计数缺口须结合绑定层隐含断言核验,非直接判缺陷) - cas 编译器自证(check_attestation,同批构建):声明 None = js 55 + binding 0 + gap 0;缺口判定以本行为权威(启发式计数仅旁证)
- man:映射行 9;TTR 期望/实际回声 64;厂商工具内置审计(TTR 期望/实际回声行为证据);脚本字节级充分性不可完全外部验证
- cas 信息步(无线上断言义务):[3, 7, 11, 15, 19, 23, 26]
- REQ 声明面 vs caseir 引用面差异(1 项,非等价缺口判定):['同 §4.2.18.1 全集']
- caseir open_items:
- Seq#07 Initial Condition「无 RSP session」须由编排保证(本序列不发 GetEUICCChallenge)
- 无效证书 #CERT_S_SM_DPauth_INV_SIGN / #CERT_S_SM_DPauth_INV_CURVE / #CERT_S_SM_DPpb_ECDSA 字节来自 SGP.26 捆绑,不在输入包
- E_tc Seq#07 REQ 列原文「RQ26_006RQ31_052」缺空格,已按两条 REQ(RQ26_006、RQ31_052)转录并登记
- 每条 Test Sequence 执行后须按 2.2.2 执行 clean-up(CU)恢复 Common Initial State
- R2 残余占位:命令数据已按 S22_auth_srv 闭合为模板字面量;<S_TRANSACTION_ID>/<EUICC_CHALLENGE>/服务器 challenge/签名 为 G_annexB 运行时动态值,serverCertificate 字节在 SGP.26 捆绑不在输入包,DeviceInfo 内层标签与 SubjectKeyIdentifier/Certificate 编码标签语料缺席(保守占位),各 <L_*> 长度随动态值定,分块 P1/P2 逐块值运行时定
- CtxParams1 CHOICE 备选项按语料(S22_auth_srv :71)无显式标签 → 承载 SEQUENCE 标签 30 编码;若 SGP.22 原文该备选带显式标签则为语料漂移点,回原件裁定
7. 分类结论(封闭枚举)
| 轴 | 计数 | 说明 |
|---|---|---|
RUN_DIFF | 1 | man 通过 / cas 失败 |
SCRIPT_DIALECT | 134 | 闭包文件差:man-only 3 / cas-only 51;命令序列差:man-only 27 / cas-only 53 |
GEN_DIFF | 1 | REQ 覆盖缺口:['同 §4.2.18.1 全集'] |
- 置信度:heuristic;需人工复核:False
8. 证据路径
- man 包:
../packages/man/4.2.18.2.4-TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases-man.zip - man TTR:
/Users/yuhu/cas/原料/切片/4.2.18.2.4-TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases/logs/20260907_185430_ok/extracted/ESIM_TEST_SGP_23/TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_01_Error_With_Incorrect_SM_DPauth_certificate.ttr - cas 包/源:
../packages/cas/4.2.18.2.4-TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases-cas.zip - cas TTR:
/Users/yuhu/cas/experiments/4.2.18.2.4-TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases-20261004_022634/logs/b03d36f242f348e4876c9a777d08fa37/result/TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases/TC_eUICC_ES10b_AuthenticateServer_SM_DP_ErrorCases_01_07_merged.ttr - spec_intl:
/Users/yuhu/cas/原料/切片/4.2.18.2.4-TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases/spec_intl/SGP.23-v1.16_4.2.18_AuthenticateServer_SM-DP+_ErrorCases.md - caseir:
/Users/yuhu/cas/experiments/4.2.18.2.4-TC_eUICC_ES10b.AuthenticateServer_SM-DP+_ErrorCases-20261004_022634/caseir_materialized_gate.json - step_map:
—