From 87f061ac4f8705184ad8574d6bb8f790c09471e6 Mon Sep 17 00:00:00 2001 From: yml2213 Date: Sat, 29 Aug 2026 01:42:10 +0800 Subject: [PATCH] =?UTF-8?q?feat(huya):=20hydeviceid=20hdid=E5=AD=97?= =?UTF-8?q?=E7=AC=A6=E4=B8=B2=E5=9C=B0=E5=9B=BE(6=E5=A4=84)=20+=20init=20b?= =?UTF-8?q?-cell=E5=85=A8=E9=9B=86=20+=20OTP=E9=95=BF=E5=BA=A6=E5=89=8D?= =?UTF-8?q?=E7=BC=80=E6=97=8F=E9=9B=B6=E5=91=BD=E4=B8=AD=E8=90=BD=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/HUYA_HDID_ALGORITHM_GEN.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/docs/HUYA_HDID_ALGORITHM_GEN.md b/docs/HUYA_HDID_ALGORITHM_GEN.md index 3d4a1a4..355f17a 100644 --- a/docs/HUYA_HDID_ALGORITHM_GEN.md +++ b/docs/HUYA_HDID_ALGORITHM_GEN.md @@ -770,3 +770,13 @@ UdbAESUtilC1(…) + encrypt ← 后段 → GUID32 缓存 = Java b(100) 直填 (非 native 计算) — 与 §11.8-§11.10 缓存读取器定案闭环 - 遗留: getHDID = 空 (40hex 缓存缺 b-cell) — 登录 32hex (ed0db8) 与 GUID/MID 缓存非同一格 - 产物: so/libhydeviceid_merged_r2.so (缓存正常版) + +## §11.28 hydeviceid r2-so hdid 字符串地图 + init b-cell 全集 (R5) +- init b-cell 调用 = {3, 100, 101, 102, 104} (SDKver/GUID/MID/empty) — 32hex 不在此路径 +- r2-so "hdid" 字符串 (6 处): + - 0x3ba484: "id: " / "hdid: " = 日志格式 (32hex 打印点!) + - 0x3dec8c: "hdid"/"sdid" 键对 = device 映射 (setSafeDeviceId 存储) + - 0x3c8930/0x3ddef4/0x3e0040: mid/hdid/guid 键集 + - 0x3ba2f4: hdid/ok/adb_ (调试) +- OTP mid 长度前缀族 (JCE varint/1/2/4B BE/LE + 消息名前置) = 零命中 → 组合含更深的 cred_packls 字段流 +- 下轮: 0x3ba484-xref (hdid: 日志的调用者 = 32hex 装配函数) + cred_packls 静态串流