# Additional Findings — 硬件生態與臨床功能全景

> 第二輪深挖（PID03.zip 內容、固件、HIS API、FPGA bitstream 元數據、hash 反匯編）。全部靜態證據。

## 1. 硬件身份鎖定

| 發現 | 證據 |
|---|---|
| **FPGA = Efinix Trion T55F324**（非 Intel/Altera） | `FPGA_ch16_5.rbf` 明文頭：`Family: Trion / Device: T55F324 / Width: 16 / Mode: passive` |
| **FPGA 項目名 YK2100** | RBF 頭：`Project: D:\Project\FPGA\YK2100_FPGA_T55_new\03_pnr`（開發者 Windows 路徑殘留） |
| **品牌 = Youkey** | `OEM_YOUKEY_ID = 1` + YK2100 項目名 → SonoiQ 原始品牌 Youkey，其餘 17 OEM 為白牌 |
| 板卡 FPGA 固件 | `fw/board/v2|v3/fpga/16|32/UFPGA.bin`（raw bitstream，0xFF 開頭無頭） |
| **WiFi MCU = TI CC3220R / CC3235S** | `fw/board/v2|v3/mcu/cc32{20r,35s}/mcuimg2.bin`；頭 `0030 0020` = Cortex-M4 向量表（SP=0x20003000） |
| 固件版本 | fpga/16 v3 = `191204001.3.18`；PID Global = `P25122602_004`（2025-12-26 構建） |
| RBF 工具鏈 | `Version: 2022.1.226`、`Generated: Wed Jul 31 11:07:04 2024`（Quartus/Efinity 2022.1） |

## 2. 探頭型號全集（PID03.zip，77 個型號目錄 + Global + AIModel，6,294 檔 344 MB）

| 類別 | 型號例 | 用途 |
|---|---|---|
| 凸陣 C | 03C5-2Ds、04C5-2Ds、05C5-2Vs、06C15s、07C15s、08C15s、C5-2Ds… | 腹部/產科 |
| 微凸高頻 | 05C60h、07C50h、07C60h、08C50h、08C60h（h 後綴） | 高頻微凸 |
| 線陣 L | L10-4Fs、L11-4Ds、L12-4Hs、06L40s、07L25h、07L40s、08L40h… | 淺表/血管/肌骨 |
| 相控陣 P | P4-2Fs、04P4-2Ds、05P4-2Ds、07P20s、08P4s | 心臟 |
| 腔內 E | E10-4Ds、E10-4Ks、06E10s、08E10s | 婦科/泌尿 |
| 複合 | 05L25E10 | 特殊 |
| Global | BGrayMap / DGrayMap / DXNode / ApodizeCurveLib / CMMParaLib | 全局灰階映射+切趾庫 |

每型號 `pattern0/Normal/` 含全套 DSP 參數（`.INF` 201KB 主描述 + ApodizePara、BlindArea、CodingLut、CosLutPara、DRPara、DSFilterPara、EmitFocusPara…）——**波束形成/DSC 完整參數集，換型號=換參數集**。

## 3. AI 模型全集（PID03/AIModel/，13 個 .pt，~165 MB）

| 模型 | 大小 | 對應功能 |
|---|---|---|
| ResUNet_Bladder.pt | 23.9 MB | 膀胱分割 |
| UNet_Sample400_SegClass_breast_lite.pt | 23.9 MB | **乳腺分割**（ExamTypesId.BREAST_EXAM 有入口） |
| UNet_Sample180_256x192_Carotid_recognition_v&l.pt | 17.7 MB | 頸動脈 |
| skin_segment.pt | 17.5 MB | 皮膚分割 |
| cardiac_ef.pt | 13.8 MB | 心臟 EF |
| lung_bline_detector.pt | 13.4 MB | 肺 B 線 |
| UNet_ob_hc.pt | 7.9 MB | 產科頭圍 |
| UNet_Sample7000_256x192_Thyroid.pt | 7.9 MB | 甲狀腺分割 |
| UNet_Varicosity.pt | 7.9 MB | 靜脈曲張 |
| ovary_pcos_classifier.pt | 6.5 MB | 多囊卵巢分類 |
| mobilenet_v3_classifier_3_n190_128x96_quantized.pt | 4.6 MB | MobileNetV3 量化分類器 |
| Thyroid_classifier_3_n7000_256x192_lite.pt | 4.6 MB | 甲狀腺分類 |

模型架構命名暴露訓練細節（`n190`/`n7000` = 訓練樣本數、`256x192` = 輸入尺寸、`v&l` = 血管+縱向）。

## 4. 臨床檢查模式全集（ExamTypesId，40+ 模式）

腹部（成人/兒科/新生兒/穿透）、心臟（成人/兒科/新生兒/胎兒）、產科（OB1/OB23）、婦科、**乳腺**、頸動脈、IMT（內中膜厚度）、**眼科**、**前列腺**、**睪丸**、泌尿、腎臟、肌骨、骨科、神經、甲狀腺、外周動脈/靜脈、上肢動脈/靜脈、**經顱 TCI**、急診套件（FAST/OB/ABD/血管/淺表）。

## 5. HIS 集成 API（HttpProtocol_hle）

- 用途：醫院資訊系統對接（`basicUserInfo` 用戶驗證、`addCheckItem` 回傳檢查項）
- 認證：`appKey` + `appSecret` + `ts` + `sign`；**sign = SHA-1（`MessageDigest.getInstance("SHA")`）+ Base64**
- 弱點：
  - **SHA-1 已過時**（碰撞可行）
  - `ts=168236588304` **硬編碼**（2023-04-25，非實時時間戳）
  - **HTTPS 證書驗證完全關閉**（`checkServerTrusted` 空實現 + `hostnameVerifier` 恆 true）——中間人可攔截 HIS 憑證
- 配置：用戶可在 `NetWorkPresetFrag` 設置服務器/帳號/密碼（http/https 可選）

## 6. Hash 算法反匯編確認（libdoppler, arm64）

| 功能 | 算法 | 反匯編證據 |
|---|---|---|
| B 模式 | **DJB2** | `mov w21, 0x1505`（=5381）+ `add w10, w21, w21, lsl 5`（×33）+ `add w21, w10, c` |
| Color | **BKDR**（乘加） | `mul w11, w21, w10` + `add w21, w11, c` |
| PW | **FNV-1**（乘異或） | `mul w12, w21, w10` + `eor w21, w12, w11` |

授權碼 = 對 SN 字符串計算以上公開算法，**可完全離線重現**（Java 一行代碼）。

## 7. 深挖完成狀態（2026-09-03，7 項全部完成 → docs/deepdive/）

1. ✅ `java-getmessage-semantics.md` — 消息泵反匯編：元素 `{int32 what; int32 arg1; int64 arg2}`、std::deque、`GetLongArrayElements`(0x5e0)/`ReleaseLongArrayElements`(0x620)、Java 側 arg2 截斷 int32
2. ✅ `wlan-command-codes.md` — 命令碼全集：0xFE 頭 + cmdid + dir + 2B LE 長度 + 0xFF 尾；D_* 設備碼 128-202 / W_* 參數碼 0-127；端口 8081/8082/8083/8093；hex-ASCII vs raw 編碼；**無 checksum**
3. ✅ `thirdparty-sdk-interface.md` — SDK 接口：7 extras key、5 錯誤碼、SAVEIMG_PATH/IMG_PATH 雙通道、**PHI 注入/外洩風險（高）**
4. ✅ `dispmode-values.md` — DispMode 全集：0=B 1=M 5=PW 8=BC 9=BM 16/17 雙幅 50/51 多幅 55=BPower 57/58/59=PW 疊加變體；值兼任硬件 scan-mode ID
5. ✅ `pid03-inf-format.md` — INF 格式：**GBK XML 標籤 + 二進制 payload 混合**，65 個標籤（發射/接收/波束形成/DSC/PW/MI-TI 全套 DSP 參數結構）
6. ✅ `cc32xx-firmware.md` — CC32xx：run-from-SRAM 影像（SP=0x20003000，reset 在 SRAM）、serial flash 檔（probeid.txt/uhandprobe.bin/sleep.bin）、AP 命令、v2/v3 差異 49%
7. ✅ `efinix-bitstream.md` — Efinix：_5 係完整未壓縮 T55 bitstream（3,459,240 B = 27.67Mbit，AN006 max 27.675Mbit 吻合）；5 個 718,569 B raw RBF 係 5 個不同板版本（~4.8:1 壓縮/截斷）；`fpgargb_lib.byteswap` 證實為 16-bit 字序反轉
