Whatsapp 媒体文件名将 Android 转换为 IOS

Whatsapp media file name convert Android to IOS

提问人:Aviv 提问时间:9/5/2023 更新时间:11/17/2023 访问量:132

问:

例如,如果我有WhatsApp数据库(msgstore.db),并且我想从Android中调用媒体文件的方式转换媒体文件的名称 IMG-20201026-WA0000.jpg

在 WhatsApp 应用程序中在 IOS 上调用它们的方式

例如,文件将变为IMG-20201026-WA0000.jpg384cf8623831c156d21ec1e96caebc6c.jpg

我无法研究WhatsApp如何为IOS操作系统中的文件命名

有许多程序可以将WhatsApp从Android转移到iPhone,他们知道如何更改文件的名称并将其返回,即从返回到他们是如何做到的?什么决定了文件的名称?384cf8623831c156d21ec1e96caebc6c.jpg IMG-20201026-WA0000.jpg

我试图做的是在ios中的WhatsApp数据库(ChatStorage.sqlite)和Android中的数据库(msgstore.db)之间找到一个共同点

我能够注意到,关于媒体的大小、确切的日期、下载文件的链接(加密格式 ~ .enc)、存储在 ZSTANZA 中的消息的唯一值,此外消息的哈希 ID 是公共部分

这些都没有让我成功地弄清楚如何将媒体文件从Android重命名为iPhone

Android iOS数据库 命名约定WhatsApp

评论

0赞 Aviv 10/1/2023
有没有人可以解释这一点?

答:

1赞 Daniel H. 11/17/2023 #1

您应该无法将“384cf8623831c156d21ec1e96caebc6c.jpg”转换回“IMG-20201026-WA0000.jpg”。WhatsApp 已使用 SHA256 对原始文件名进行哈希处理,以避免在其服务器上出现胶合,因此您无法将哈希值转换回其原始值。

评论

0赞 Aviv 11/19/2023
有趣。由于制造用于在 iPhone 和 Android 之间传输的计算机软件的公司(如 Backuptrans)能够毫无问题地执行此转换,因此从我对 WhatsApp 数据库进行的检查中,我无法找出他们是如何做到的
0赞 Daniel H. 11/20/2023
@Aviv 最有可能的是,服务器/客户端上有一个查找表,其中哈希值为键,原始文件名为值。
0赞 Aviv 11/21/2023
我在ChatStorage.sqlite或msgstore.db中找不到这样的东西,只是为了澄清我对“原始文件名”的意图: 当从 Android 上的 Whatsapp 应用程序发送/接收 X 文件时,它将保存为 IMG-20201026-WA0000.jpg 另一方面,在 iPhone 上,它被保存为 384cf8623831c156d21ec1e96caebc6c.jpg 其中 384cf8623831c156d21ec1e96caebc6c.jpg 和 IMG-20201026-WA0000.jpg 完全相同的文件 只是不清楚如何将 IMG-20201026-WA0000.jpg 变成384cf8623831c156d21ec1e96caebc6c.jpg,反之亦然