docs(huya): 分析 getGUID 生成机制 - getter读缓存/init生成/硬锚底层硬件

- phone_stalk_getguid: Stalker 跟踪 getGUID(0x20f8c8) 执行, 揭示内部调用
  (art::JNI::NewStringUTF 外层, libhydeviceid 内部函数+jsemalloc, 不读属性)
- phone_getguid_ioctl: getGUID 窗口 ioctl/openat/property_get 追踪 -> ioctl=0, 确认是 getter 非生成器
- phone_init_ioctl: init()(0x20e6e4) 窗口追踪 -> 巨大 ioctl 噪音(App启动) + open fileshydckey(设备密钥)
- getguid_stalk/ioctl/init 证据

结论: 32hex GUID = init 时用底层硬件指纹(SoC序列号等不可改)+hydckey经OLLVM保护算法生成并缓存;
getGUID 只是读取。单机不可铸造(种子为不可改硬件ID)。
This commit is contained in:
yml2213
2026-08-28 12:36:17 +08:00
parent 0c6aff6a6d
commit 022357ad79
6 changed files with 99047 additions and 0 deletions
File diff suppressed because it is too large Load Diff
+6
View File
@@ -0,0 +1,6 @@
{
"ioctl": [],
"openat": [],
"props": [],
"detached": []
}
File diff suppressed because it is too large Load Diff