4.2.12.2.1 ES10b 获取 eUICC 挑战码
TC_eUICC_ES10b.GetEUICCChallenge
-man 人工切片
- 终态
- red vendor_error_cases(厂商显式错误用例)
- ErrorCount
- 2
- 执行 job
- 17a3463a7c66_att2:17a3463a7c664097a9e3216dded6da6c
- html_run
- 17a3463a7c66_att2
- 包 sha256
- 4eb9cb9163f3c3f6…
- 包大小
- 242.5 KB
日志源(切片目录内相对路径):logs/17a3463a7c66_att2/extracted/ESIM_TEST_SGP_23/TC_eUICC_ES10b_GetEUICCChallenge_01_Nominal.html
-cas 盲生成
- 终态
- failed 纯 native 零卡态前置(N0)
- ErrorCount
- 3
- 执行 job
- de0c903597a8415096329dd0e27a40d3
- html_run
- 008bd1702c3a_att1
- 包 sha256
- 235ef6a3a8a01bd1…
- 包大小
- 833.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 43 / cas 24 条命令;完全一致 13,核心一致 7,长度尾部差 3,man-only 23,cas-only 4
规范覆盖(l3)
spec_steps 2,缺失 REQ 0 项,checkData 28 次,计数缺口 0,物化 FULL,执行 FAIL
断言自证(attestation)
js 断言 22 条 / 绑定层 0 条 / 缺口 0
机械差异分类
| 轴 | 说明 | 计数 |
|---|---|---|
| RUN_DIFF | 双端失败(形态比较另见 L2/L3) | 1 |
| SCRIPT_DIALECT | 闭包文件差:man-only 3 / cas-only 51;命令序列差:man-only 23 / cas-only 4 | 81 |
对比报告
4.2.12.2.1 TC_eUICC_ES10b.GetEUICCChallenge — -man ↔ -cas diff 报告
交付形态说明:本报告随专家交付包分发——-man/-cas脚本包 zip 与 190server HTML 执行日志已内联至packages/、evidence-html/,相应路径已相对化;TTR、spec_intl、caseir 等仓内留痕仍为生成机原始路径(未随包)。
- 生成时间:2026-10-08 22:57:09 |引擎:holiday-blk5/0.1|配对状态:
PAIRED - 分母口径:卡侧 61 之一
1. 配对与包
| 侧 | 包/源 | sha256 | 源类型 | 入口用例 |
|---|---|---|---|---|
-man | 4.2.12.2.1-TC_eUICC_ES10b.GetEUICCChallenge-man.zip | 4eb9cb9163f3c3f6164e00739690f6a788818ee10f01922ddb27463f25e24ae3 | zip | TC_eUICC_ES10b_GetEUICCChallenge_01_Nominal |
-cas | 4.2.12.2.1-TC_eUICC_ES10b.GetEUICCChallenge-cas.zip | 235ef6a3a8a01bd16b55a35dc419c8ec2c14a0aa06b2d4ecbad5cf53bacc975d | zip | — |
- man 源路径:
../packages/man/4.2.12.2.1-TC_eUICC_ES10b.GetEUICCChallenge-man.zip - cas 源路径:
../packages/cas/4.2.12.2.1-TC_eUICC_ES10b.GetEUICCChallenge-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 | red | vendor_error_cases(厂商显式错误用例) | 2 | 17a3463a7c66_att2:17a3463a7c664097a9e3216dded6da6c | — | /Users/yuhu/cas/原料/切片/4.2.12.2.1-TC_eUICC_ES10b.GetEUICCChallenge/logs/20261004_004200/extracted/ESIM_TEST_SGP_23/TC_eUICC_ES10b_GetEUICCChallenge_01_Nominal.ttr | — |
-cas | failed | 纯 native 零卡态前置(N0) | 3 | de0c903597a8415096329dd0e27a40d3 | — | /Users/yuhu/cas/experiments/4.2.12.2.1-TC_eUICC_ES10b.GetEUICCChallenge-20261004_021945/logs/de0c903597a8415096329dd0e27a40d3/result/TC_eUICC_ES10b_GetEUICCChallenge/TC_eUICC_ES10b_GetEUICCChallenge_01_Nominal.ttr | — |
- cas 块4账本:decision=
RERUN;route=native_N0;live 事件 1 条(4.6 波次进行中;以块4终版账本为准) - cas 4.6 波次最新执行:terminal=
failed;stage=verify;job=de0c903597a8415096329dd0e27a40d3;gaps=["trace verdict=PASS", "结果通道 verdict='FAIL'"] - cas 失败归因引用(块4):
b1-attribution.md - cas 证据来源分层:
RERUN→ 本轮 4.6 波次执行
3. HTML 执行日志状态
-man:NATIVE(../evidence/4.2.12.2.1/man/TC_eUICC_ES10b_GetEUICCChallenge_01_Nominal.html;sha2562f326b08c2d2b978fedd53a1e8fdd0fefd176fb08a63aebc808b3c049d616f1d;85342 bytes)-cas:NATIVE(../evidence/4.2.12.2.1/cas/TC_eUICC_ES10b_GetEUICCChallenge_01_Nominal.html;sha2567e5e1d3e94bd5fdea99c044cf00c2c0d062d2785c1f221fe94990b1e92fa63e5;27040 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 40 / cas 110;字符:man 1420 / cas 8591
- man 顶层调用 Top:[["TestStepStart2", 6], ["TC_eUICC_ES10b_GetEUICCChallenge_01_Nominal", 2], ["ES10b_GetEUICCChallenge", 2], ["TraceStart", 1], ["Ini_powerOn_eUICC_LPAe_not_activate", 1], ["TS_MANAGE_CHANNEL_OPEN", 1], ["TS_SELECT", 1], ["RSP_profile_load_procedure_LPAd", 1], ["ES10b_GetEUICCInfo1", 1], ["SubLevelError", 1]]
- cas bind 调用:[["checkData", 28], ["sendApdu", 8], ["resetAndAtr", 2], ["runToSteadyState", 2], ["sendTerminalProfile", 2], ["manageChannelOpen", 2]]
| 方言映射对 | 命中数 |
|---|---|
| TS_*_cmd() ↔ bind.* 命令封装 | 2 |
unified diff(截断预览)
--- man
+++ cas
@@ -1,39 +1,109 @@
-// slice of Import\TestCase_SGP_23.js - cases: TC_eUICC_ES10b_GetEUICCChallenge_01_Nominal (extracted verbatim)
+// Author: 卡思Cas智能体
+// Date: 20261004-021945
+// Function: (purpose 原文未由 SGP.23 该 TC 提供,corpus vacuum 登记)TC_eUICC_ES10b.GetEUICCChallenge,Test Sequence #01 Nominal,适用性 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 ATR_present;S2-C2 FCP_Template;S2-C1 SW;S3-C1 SW;S4-C1 final SW;S5-C1 SW
+// S5-C2 CHANNEL_NUMBER extracted;S6-C1 SW;S7-C1 SW;S7-C2 R_CHALLENGE outer tag
+// S7-C2 tagOfeuiccChallenge;S7-C2 lengthOfeuiccChallenge;S7-C3 R_CHALLENGE outer tag
+// S7-C3 tagOfeuiccChallenge;S7-C3 lengthOfeuiccChallenge;S8-C1 SW;S8-C2 R_CHALLENGE outer tag
+// S8-C2 tagOfeuiccChallenge;S8-C2 lengthOfeuiccChallenge
+// S8-C3 euiccChallenge differs between step 7 and step 8
+// 本函数由 CaseIR 4.2.12.2.1 编译生成(fullwave-blindgen-live-70,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_GetEUICCChallenge_01_Nominal() {
+ var bind = curBind;
-function TC_eUICC_ES10b_GetEUICCChallenge_01_Nominal()
-{
- tracenamestr = "测试目的:连续获取两次eUICC随机数,返回的随机数应不同";
- curDis.TraceStart(sno++,tracenamestr);
+ // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 1):RESET(K 语料机械展开)
+ var s9 = bind.resetAndAtr();
+ bind.checkData("ICH-IC1-K1-C1 ATR_present", "1", s9.atr_hex !== "" ? "1" : "0");
- curDis.TestStepStart2(stno++,"eUICC卡片初始化;");
- Ini_powerOn_eUICC_LPAe_not_activate();
+ // 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 s10 = bind.sendApdu("00", "A4", "00", "04", "3F00", "00", "9000");
+ bind.checkData("ICH-IC1-K2-C2 FCP_Template", "1", s10.resp.length > 0 ? "1" : "0");
+ bind.checkData("ICH-IC1-K2-C4 SW", "9000", s10.sw);
- curDis.TestStepStart2(stno++,"读卡器向卡片发送MANAGE_CHANNEL命令,打开辅助逻辑通道;");
- TS_MANAGE_CHANNEL_OPEN();
+ // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 3):TERMINAL_CAPABILITY_LPAd(K 语料机械展开)
+ var s11 = bind.sendApdu("80", "AA", "00", "00", "A9058100830107", null, "9000");
+ bind.checkData("ICH-IC1-K3-C4 SW", "9000", s11.sw);
- curLogicChannel = 1;
+ // IC head inline (initial_conditions → PROC_EUICC_INITIALIZATION_SEQUENCE, K row 4):TERMINAL_PROFILE(K 语料机械展开)
+ var steady12 = bind.runToSteadyState(function () {
+ return bind.sendTerminalProfile("FFFFFFFF7F9D00DFBF00001FE2000000C7EB0000000168005000000000000200", "9000");
+ });
+ bind.checkData("ICH-IC1-K4-C4 final SW", "9000", steady12.final.sw);
- curDis.TestStepStart2(stno++,"读卡器向卡片发送SELECT命令,选择ISD-R;");
- TS_SELECT("Select ISD",ISD_R_AID,"9000");
+ // 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 s13 = bind.manageChannelOpen("9000");
+ bind.checkData("ICH-IC2-K1-C4 SW", "9000", s13.sw);
+ bind.checkData("ICH-IC2-K1-C3 CHANNEL_NUMBER extracted", "1", s13.chan !== null ? "1" : "0");
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行GetEuiccInfo1Request;");
- 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();
+ // 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 s14 = 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", s14.sw);
+ // 步骤 1:IC1/1: RESET(PROC_EUICC_INITIALIZATION_SEQUENCE 展开1/4,K_annexC2_procs 表1256)(procedure_expansion)
+ var s1 = bind.resetAndAtr();
+ bind.checkData("S1-C1 ATR_present", "1", s1.atr_hex !== "" ? "1" : "0");
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,执行GetEuiccChallengeRequest;");
- Profile_load_procedure.ES10b_GetEUICCChallenge();
+ // 步骤 2:IC1/2: [SELECT_MF](展开2/4)(procedure_expansion)
+ // 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 s2 = bind.sendApdu("00", "A4", "00", "04", "3F00", "00", "9000");
+ bind.checkData("S2-C2 FCP_Template", "1", s2.resp.length > 0 ? "1" : "0");
+ bind.checkData("S2-C1 SW", "9000", s2.sw);
- var ChanllengeData1 = Profile_load_procedure.euiccChallenge;
+ // 步骤 3:IC1/3: [TERMINAL_CAPABILITY_LPAd](展开3/4)(procedure_expansion)
+ var s3 = bind.sendApdu("80", "AA", "00", "00", "A9058100830107", null, "9000");
+ bind.checkData("S3-C1 SW", "9000", s3.sw);
- curDis.TestStepStart2(stno++,"读卡器向卡片发送 StoreData命令,重复执行GetEuiccChallengeRequest;");
- Profile_load_procedure.ES10b_GetEUICCChallenge();
+ // 步骤 4:IC1/4: [TERMINAL_PROFILE](展开4/4)(procedure_expansion)
+ var steady4 = bind.runToSteadyState(function () {
+ return bind.sendTerminalProfile("FFFFFFFF7F9D00DFBF00001FE2000000C7EB0000000168005000000000000200", "9000");
+ });
+ bind.checkData("S4-C1 final SW", "9000", steady4.final.sw);
- var ChanllengeData2 = Profile_load_procedure.euiccChallenge;
+ // 步骤 5:IC2/1: [MANAGE_CHANNEL_OPEN](PROC_OPEN_LOGICAL_CHANNEL_AND_SELECT_ISDR 展开1/2,K_annexC2_procs 表1258)(procedure_expansion)
+ // CHANNEL_NUMBER extraction and dynamic CLA rebinding are CasBind internal state (chaining rule; no generated-code re-implementation).
+ var s5 = bind.manageChannelOpen("9000");
+ bind.checkData("S5-C1 SW", "9000", s5.sw);
+ bind.checkData("S5-C2 CHANNEL_NUMBER extracted", "1", s5.chan !== null ? "1" : "0");
- if (ChanllengeData1 == ChanllengeData2)
- obj.SubLevelError("每次获取的EUICCChallenge 应当不相同,实际获取的EUICCChallenge相同");
+ // 步骤 6:IC2/2: MTD_SELECT(procedure_expansion)
+ // CLA = bound channel (cla_rule) and <L> length binding are CasBind internal state (chaining rule; no generated-code re-implementation).
+ var s6 = bind.sendApdu(null, "A4", "04", "00", "A0000005591010FFFFFFFF8900000100", "00", "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("S6-C1 SW", "9000", s6.sw);
- RecoverCard();
+ // 步骤 7:1: MTD_STORE_DATA(tc_step;REQ: RQ31_029, RQ31_030, RQ31_031, RQ57_049, RQ57_050)
+ // <L> length binding and the conditional 61XX + GET RESPONSE chain (D.4.2) are CasBind internal state (chaining rule).
+ var sdCla7 = s5.chan !== null ? (s5.chan <= 3 ? 128 + s5.chan : 188 + s5.chan).toString(16).toUpperCase() : null;
+ var s7 = bind.sendApdu(sdCla7, "E2", "91", "00", "BF2E00", "00", "9000");
+ bind.checkData("S7-C1 SW", "9000", s7.sw);
+ var r2w7 = BindGecaProc.parseGecaResponse(s7.resp, {outer: "BF2E", required: ["80"]});
+ bind.checkData("S7-C2 R_CHALLENGE outer tag", "BF2E", r2w7.outer_tag === null ? "absent" : r2w7.outer_tag);
+ var r2ch7 = null; for (var r2ci7 = 0; r2ci7 < r2w7.children.length; r2ci7++) { if (r2w7.children[r2ci7].tag === "80") { r2ch7 = r2w7.children[r2ci7]; } }
+ var r2chal7 = r2ch7 === null ? "" : r2ch7.value;
+ bind.checkData("S7-C2 tagOfeuiccChallenge", "80", r2ch7 === null ? "absent" : r2ch7.tag);
+ bind.checkData("S7-C2 lengthOfeuiccChallenge", "10", r2ch7 === null ? "absent" : (r2ch7.len < 16 ? ("0" + r2ch7.len.toString(16).toUpperCase()) : r2ch7.len.toString(16).toUpperCase()));
…(差异行超限,共 137 行,此处截断)
- man:
ESIM_TEST_SGP_23.UCE;入口 [('TC_eUICC_ES10b_GetEUICCChallenge_01_Nominal', 'GetEUICCChallenge', 'Import\\\\ExecuteTestCase_SGP_23.js(TC_eUICC_ES10b_GetEUICCChallenge_01_Nominal)')];参数 {"ReaderName": "Identiv SCR35xx USB Smart Card Reader 0"} - cas:
TC_eUICC_ES10b_GetEUICCChallenge/TC_eUICC_ES10b_GetEUICCChallenge.uce;入口 [('TC_eUICC_ES10b_GetEUICCChallenge_01_Nominal', 'TC_eUICC_ES10b_GetEUICCChallenge', 'Import\\\\ExecuteTestCase_spec.js(TC_eUICC_ES10b_GetEUICCChallenge_01_Nominal)')];参数 {"ReaderName": "Identiv SCR35xx USB Smart Card Reader 0"}
5. L2 步骤/APDU/step_map 差异(结构化对齐)
- 命令计数:man 43 / cas 24;精确对齐 13,核心(CLA·INS·P1·P2·Lc)同 7,man-only 23,cas-only 4
| # | -man | -cas | 对齐 | |
|---|---|---|---|---|
| 1 | @RESET | @RESET | exact | |
| 2 | 00A40004023F00 | 00A40004023F0000 | core_same | |
| 3 | 00C0000020 | 00C0000020 | exact | |
| 4 | 80AA000007A9058100830137 | 80AA000007A9058100830107 | core_same | |
| 5 | 801200000F | 801200000F | exact | |
| 6 | 801400000C810301250082028281830100 | 801400000C810301250082028281830100 | exact | |
| 7 | 0070000001 | 0070000001 | exact | |
| 8 | 01A4040010A0000005591010FFFFFFFF8900000100 | 01A4040010A0000005591010FFFFFFFF8900000100 | exact | |
| 9 | 01C0000021 | 01C0000021 | exact | |
| 10 | @RESET | @RESET | exact | |
| 11 | 00A40004023F00 | 00A40004023F0000 | core_same | |
| 12 | 00C0000020 | 00C0000020 | exact | |
| 13 | 80AA000007A9058100830137 | 80AA000007A9058100830107 | core_same | |
| 14 | 801200000F | 801200000F | exact | |
| 15 | 801400000C810301250082028281830100 | 801400000C810301250082028281830100 | exact | |
| 16 | 0070000001 | 0070000001 | exact | |
| 17 | 01A4040010A0000005591010FFFFFFFF8900000100 | 01A4040010A0000005591010FFFFFFFF890000010000 | core_same | |
| 18 | 01C0000021 | 01C0000021 | exact | |
| 19 | 81E2910003BF2000 | 81E2910003BF2E0000 | core_same | |
| 20 | 81E2910003BF2D00 | 81E2910003BF2E0000 | core_same | |
| — | man-only: 8010000023FFFFFFFF7F9D00DFBF00001FE20000…0000038, 0070000000, 81E2910003BF2000, 01C00000A9, 81E2910003BF2E00, 01C0000015, 81E2910003BF2E00, 01C0000015, 8010000023FFFFFFFF7F9D00DFBF00001FE20000…0000038, 0070000000, 01C00000A9, 81E2910007BF3404820206C0 | |||
| — | cas-only: 8010000020FFFFFFFF7F9D00DFBF00001FE20000…0000200, 8010000020FFFFFFFF7F9D00DFBF00001FE20000…0000200, 81C0000015, 81C0000015 |
6. L3 规范字段/Expected/REQ/通过条件差异
- spec:/Users/yuhu/cas/原料/切片/4.2.12.2.1-TC_eUICC_ES10b.GetEUICCChallenge/spec_intl/SGP.23-v1.16_4.2.12_GetEUICCChallenge.md(风格:table);caseir:
/Users/yuhu/cas/experiments/4.2.12.2.1-TC_eUICC_ES10b.GetEUICCChallenge-20261004_021945/caseir_materialized_gate.json
| 步 | 规范动作 | Expected 片段 | 规范 REQ | cas 检查 | cas REQ | man 实现 | man 结果 |
|---|---|---|---|---|---|---|---|
| 1 | MTD_STORE_DATA (#GET_EUICC_CHALLENGE) | 2 | ["RQ31_029", "RQ31_030", "RQ31_031", "RQ57_049", "RQ57_050"] | ["S7-C1", "S7-C2", "S7-C3"] | ["RQ31_029", "RQ31_030", "RQ31_031", "RQ57_049", "RQ57_050"] | L25-28 Profile_load_procedure.ES10b_GetEUICCChallenge() + | 步骤5:StoreData 81E2910003BF2E00→6115→GET RESPONSE→9000,响应 BF2E 12 80 10 000102030405060708090A0B0C0D0E0F |
| 2 | MTD_STORE_DATA (#GET_EUICC_CHALLENGE) | 3 | ["RQ57_048"] | ["S8-C1", "S8-C2", "S8-C3"] | ["RQ57_048"] | L30-36 第二次 ES10b_GetEUICCChallenge() + ChanllengeData2 + | 步骤6:同请求→9000,响应逐字节同步骤5→断言报错(ttr APDU57)ErrorCount=2——见漂移点③ |
6.1 充分性分析(启发式,不作最终裁定)
- cas:
NO_MECHANICAL_GAPS(全步有检查=True;REQ 全覆盖=True;ErrorCount==0=False) - cas 物化核对(启发式旁证,权威见下行 attestation):声明检查 14 项 / 生成体 checkData 28 次 / S 标号重合 14 / 计数缺口 0 / 形态
FULL;执行面FAIL(计数缺口须结合绑定层隐含断言核验,非直接判缺陷) - cas 编译器自证(check_attestation,同批构建):声明 None = js 22 + binding 0 + gap 0;缺口判定以本行为权威(启发式计数仅旁证)
- man:mapping 行 4 / 规范步 2;TTR 期望/实际回声 60;厂商工具内置审计(TTR 期望/实际回声行为证据);脚本字节级充分性不可完全外部验证
- caseir open_items:
- R2 已闭合:PROC×2(K_annexC2_procs 表1256/1258 展开为 procedure_expansion 步骤);#GET_EUICC_CHALLENGE DER=BF2E00(S22_challenge.md:29)
- 逻辑通道号 <CHANNEL_NUMBER> 由 IC2 执行期动态分配
- CU 清理过程属测试工具职责,语料未含
7. 分类结论(封闭枚举)
| 轴 | 计数 | 说明 |
|---|---|---|
RUN_DIFF | 1 | 双端失败(形态比较另见 L2/L3) |
SCRIPT_DIALECT | 81 | 闭包文件差:man-only 3 / cas-only 51;命令序列差:man-only 23 / cas-only 4 |
- 置信度:heuristic;需人工复核:False
8. 证据路径
- man 包:
../packages/man/4.2.12.2.1-TC_eUICC_ES10b.GetEUICCChallenge-man.zip - man TTR:
/Users/yuhu/cas/原料/切片/4.2.12.2.1-TC_eUICC_ES10b.GetEUICCChallenge/logs/20261004_004200/extracted/ESIM_TEST_SGP_23/TC_eUICC_ES10b_GetEUICCChallenge_01_Nominal.ttr - cas 包/源:
../packages/cas/4.2.12.2.1-TC_eUICC_ES10b.GetEUICCChallenge-cas.zip - cas TTR:
/Users/yuhu/cas/experiments/4.2.12.2.1-TC_eUICC_ES10b.GetEUICCChallenge-20261004_021945/logs/de0c903597a8415096329dd0e27a40d3/result/TC_eUICC_ES10b_GetEUICCChallenge/TC_eUICC_ES10b_GetEUICCChallenge_01_Nominal.ttr - spec_intl:
/Users/yuhu/cas/原料/切片/4.2.12.2.1-TC_eUICC_ES10b.GetEUICCChallenge/spec_intl/SGP.23-v1.16_4.2.12_GetEUICCChallenge.md - caseir:
/Users/yuhu/cas/experiments/4.2.12.2.1-TC_eUICC_ES10b.GetEUICCChallenge-20261004_021945/caseir_materialized_gate.json - step_map:
—