macOS 上的“统一日志记录”系统使用的哈希值背后的来源/逻辑是什么?

macOS 上的“统一日志记录”系统使用的哈希值背后的来源/逻辑是什么?

这个问题的灵感来自另一个问答主题关于 Mac 上明显只对 PC 有用的病毒/恶意软件的误报。

我的答案在那里认为哈希值BC8EE8D09234D99DD8B85A99E46C64(即“统一日志”系统目录中文件的文件名/private/var/db/uuidtext/7B/)只是误报。我坚信这种误报诊断是正确的……但我仍然觉得 Mac 上的哈希值与 PC 上的哈希值匹配很奇怪。这几率有多大,对吧?

无论如何,在试图理解为什么会发生这种情况时,我打开了运行 macOS High Sierra 10.13.1 的 Mac Pro 上的终端,并查看了该系统自己的/private/var/db/uuidtext/7B目录;ls -la输出如下:

total 128
drwxr-xr-x    9 root  wheel    306 Nov  8 09:33 .
drwxr-xr-x  259 root  wheel   8806 Sep 27 11:50 ..
-rw-r--r--    1 root  wheel   5732 Nov  1 09:27 122DC675FC3FC6A8184614F1ECBB99
-rw-r--r--    1 root  wheel     35 Nov 27 09:31 3AAA6D1D0C3D65A50B1B111ABEB6F3
-rw-r--r--    1 root  wheel    103 Nov 27 09:18 7F80A4BACE396A9BC2DA7E3C619493
-rw-r--r--    1 root  wheel   6605 Nov 27 09:21 96F54B98023EB49676A83C6A0E7A57
-rw-r--r--    1 root  wheel  32766 Nov 27 10:21 AE6788A12B367EA7442F303846B58D
-rw-r--r--    1 root  wheel   1310 Nov 27 14:26 E6B6AA12DD365CA5C5C8C8A2293D0B
-rw-r--r--    1 root  wheel    344 Nov  1 10:26 ECFE2546EB32328AF616F3154B2ABA

我还查看了我在家中使用的运行 macOS High Sierra 10.13.1 的 Mac Mini 上的同一目录,发现了以下内容:

total 48
drwxr-xr-x    7 root  wheel   238 Nov 27 18:12 .
drwxr-xr-x  259 root  wheel  8806 Sep 26 20:12 ..
-rw-r--r--    1 root  wheel  5732 Oct 29 13:59 122DC675FC3FC6A8184614F1ECBB99
-rw-r--r--    1 root  wheel    35 Nov 27 18:09 3AAA6D1D0C3D65A50B1B111ABEB6F3
-rw-r--r--    1 root  wheel   103 Nov 27 18:08 7F80A4BACE396A9BC2DA7E3C619493
-rw-r--r--    1 root  wheel  1310 Nov 27 18:20 E6B6AA12DD365CA5C5C8C8A2293D0B
-rw-r--r--    1 root  wheel   344 Nov  1 20:01 ECFE2546EB32328AF616F3154B2ABA

好吧,这看起来像是一堆无聊的哈希值,对吧?好吧,仔细看看:两个系统都显示了和的哈希值E6B6AA12DD365CA5C5C8C8A2293D0B7F80A4BACE396A9BC2DA7E3C619493我快速在 Google 上搜索了哈希值,虽然大多数项目都没有任何结果,但我发现上面提到的哈希值之一E6B6AA12DD365CA5C5C8C8A2293D0B——显示在此页面的文件目录列表中

/private/var/db/diagnostics/Special/0000000000000024.tracev3
/private/var/db/diagnostics/timesync/0000000000000002.timesync
/private/var/db/diagnostics/Persist/0000000000000011.tracev3
/private/var/db/uuidtext/58/CC0E0317B43D7A84C47DA1275642C0
/private/var/db/uuidtext/BB/88FC65AC78308A82030DAD82CCAC19
/private/var/db/uuidtext/FE/F349208E223E709FE2552800B9A460
/private/var/db/uuidtext/7B/E6B6AA12DD365CA5C5C8C8A2293D0B
/private/var/db/uuidtext/9A/CA0127E687388594751D5E4DD83168
/private/var/db/uuidtext/9A/79C2510A7335848F421652E5BAB381
/private/var/db/uuidtext/6C/791AD6426B34A495CC9B8B049A5489
/private/var/db/uuidtext/A7/A58DC0EEB3352CAAF1851A24A8ACF0
/private/var/db/uuidtext/B7/3EB177938B3A989405789F729A0C3B
/private/var/db/uuidtext/F0/24C78020883E28A8DA1D7DB12E39CB
/private/var/db/uuidtext/F7/1B60DC303734C3ABB4B011CDF19866
/private/var/db/uuidtext/F8/8F8299441C3E1AAEBEAFBB858AE1EA
/private/var/db/uuidtext/40/75E44E5F45386DB289C1E320CB1709

好吧,这太奇怪了。如果这些是系统哈希,应该是 100% 随机的(据我所知),那么为什么我办公室里的 Mac、家里的 Mac 和别人的 Mac(无论它们在哪里)在类似的目录中有完全相同的哈希文件名?

“统一日志”系统使用的哈希值背后的来源/逻辑是什么?为什么根据这些随意的观察,它们似乎是非随机的?

答案1

我认为这里存在一些误解: 哈希函数 永远不会随机:

哈希函数是可用于将任意大小的数据映射到固定大小的数据的任何函数。哈希函数返回的值称为哈希值、哈希码、摘要或简称哈希。

哈希函数接收数据并输出一个字符串,即哈希值。一个好的哈希函数是通过其冲突数量来衡量的,这意味着有多少不同的数据流可能生成相同的哈希值。现代哈希算法在这方面已经相当出色,并且被用于识别/指纹文件,例如查找病毒。

您发现的两个文件具有相同的哈希值,并且具有完全相同的大小,因此我认为它们也具有共同的内容。

因此,您可能已经证明您工作中的 Mac Pro 使用与家里的 Mac Mini 相同的哈希函数。

相关内容