- 记录
- 仅采用人工精选的来源。
- 新聊天
- 不会自动添加。
- 选择
- 一组已知的频道或群组。尚未确定固定的聊天容量。
不具备的能力 它不会发现其他聊天记录,也不会补全早期的聊天历史。
模式、场景和证据级别
TgWitness 记录已连接账户所观察到的内容。第三方可借助独立的可信密钥验证该记录的完整性。
账户可见的更新
关联记录,每条均已签名
可信密钥 + 保留边界
h₁ → h₂ → h₃ · Ed25519已验证完整性。Telegram 的来源与消息的真实性仍是两个独立的问题。三个观察范围和一个调查预设。排除项和已启用的源类型仍然适用。
不具备的能力 它不会发现其他聊天记录,也不会补全早期的聊天历史。
不具备的能力 它不应用文件夹的动态 muted/read 条件。
不具备的能力 它不会自动加入聊天群组,也不会绕过源访问。
不具备的能力 它不会对所有现有聊天进行快照,也不会观察在其他客户端中触发的回调。
这些卡片仅用于本地比较,并非实时收集器控制项。它们不会更改任何账户。
不具备的能力 任何模式均不得读取秘密聊天内容、在进程停止时进行记录、自行加入消息源,或检索超出请求范围的早期历史记录 snapshot/export.
阅读详情仅已交付或明确请求的观察记录才会被纳入记录。来源不明的观察记录仍保持未知状态。
该面板按工作区应用这些开关。关闭某项开关会保留现有记录;重新开启该开关不会重建遗漏的事件。
| 分类 | 已保存 | 仍未知 |
|---|---|---|
| 消息 | 文本、ID、发送者元数据、回复上下文及原始更新信封。 | 不存在可由第三方验证的 Telegram 签名。 |
| 编辑 | 记录所有被观察到的版本,且不覆盖较早的版本。 | 中间编辑可能被遗漏;发送者不一定是编辑者。 |
| 删除 | 如有,请附上通知及先前保存的文本。 | 未提供删除者及确切操作时间。 |
| 无作用域的删除 | 账户级通知;未知对等方仍被明确标识。 | 不进行聊天内容推测。关联操作在可能的情况下使用先前保存的账户范围内的 ID。 |
| 反应 | 已交付的计数器及可见的近期身份信息。 | 并非所有反应器都是可见的;获取完整的可用列表需要单独查询。 |
| 成员资格 | 已发送的服务消息和参与者更新。 | 角色和聊天类型限制了可见性;沉默并不意味着不存在。 |
| 附件 | 原始版本描述符、已保存字节、 SHA-256 以及尝试结果。 | 已消失的文件可能无法获取;新版本不会取代它。 |
| 历史快照 | 当前可见的消息,被标记为历史观察记录。 | 早前的编辑记录和已消失的内容不会被重建。 |
| 自主行动 | 发送 messages/edits 及匹配的回复键盘 button_press 元数据。 | 在其他 Telegram 客户端中触发的回调不可见。 |
| 机器人按钮 | 回调、URL、Web 应用及请求元数据将随消息一并保留。 | URL 和 phone/location 请求均为文本,不会被自动打开或执行。 |
不具备的能力 开关不会屏蔽嵌入的元数据,也不会禁用操作记录。捕获操作不会识别 Telegram 未提供的行为主体。
阅读详情每个账户都有自己的工作区、日志、签名密钥、路由和队列。
启用 2FA 。
请从授权设备进行扫描; 2FA 可能仍需执行此操作。
导入该账户的会话文件。
导入支持的 Pyrogram 会话格式。
仅支持一个 Desktop 账户;若已设置,则使用本地通行码。
粘贴一个 Telethon StringSession.
选择会话及相应的配套元数据。
导入账户授权时需包含其数据中心标识符。
Direct · SOCKS5 · HTTP CONNECT · MTProxyMTProxy 处于实验阶段;内置的公共 MTProxy 列表可用。代理路由失败时不会回退到直接连接。
同一台机器上的两个工作区并不构成两个独立的见证者。
不具备的能力 导入操作不会绕过 Telegram 授权, 2FA 也不支持不受支持的会话格式。账户仍共享应用程序进程。
账户格式发送或回复消息、点击当前机器人按钮、保存链接预览后,请显式加入聊天或使用其启动参数启动机器人。
interaction.previewinteraction.requestedinteraction.result预览、请求和结果回执均经过签名。在按下按钮之前,服务器会再次获取消息,并拒绝已更改的键盘输入。返回的回调文本和 URL 仍作为记录上下文保留。
不具备的能力 不支持网络应用、支付、 phone/location 分享或内联查询。显示 URL 不会打开该链接。
阅读详情应展示缺口,而非隐藏。
重启后,系统会向 Telegram 查询遗漏的更新。有限的保留时长和过期的差异可能导致数据缺失。
默认设置:优先级来源每15分钟更新一次,其余来源每6小时更新一次。结果包括 message.recovered 以及 message.missing_on_recheck.
观察时段、附有原因的缺失记录以及未观察到的 ID 均随签名导出文件一同提供。重新检查时未发现的记录并不等同于删除通知。
不具备的能力 后续的历史快照不会抹去服务中断事件,也无法恢复所有已消失的版本。保存的光标并非对日志接受情况的无损确认。
阅读详情每种机制都针对一个有限的问题提供解答。请单独配置外部服务,并将它们的信任锚点保留在收集器之外。
SHA-256 chain + Ed25519 每个事件;第一个 previous_hash 为64个零。
第三方验证 基于固定收集器密钥的排序和签名。
不具备的能力 这并不证明其源自 Telegram 亦不证明其完整性。
python -m tgwitness.verify evidence.zip --fingerprint TRUSTED_SHA256manifest.json 列出文件哈希值; manifest.sig 对其进行签名。 media.saved 将附件字节绑定到一个事件上。
第三方验证 提供的文件与已签名的清单及媒体收据一致。
不具备的能力 它不会对单独下载的 CSV, HTML 或截图。
python -m tgwitness.verify evidence.zip --fingerprint TRUSTED_SHA256启动时进行检查点备份,默认每 5 分钟一次,并有序停止。请在其他位置保留一份副本。
第三方验证 后期的导出结果应与先前保留的长度和头部一致;可检测到回滚情况。
不具备的能力 它无法检测日志和所有保留检查点同时被替换的情况。
python -m tgwitness.verify evidence.zip --fingerprint TRUSTED_SHA256 --checkpoint checkpoint.json证据模式会发送一个检查点 SHA-256 至 RFC 3161 相关机构(FreeTSA, DigiCert) 及 OpenTimestamps 日历。
第三方验证 经过验证的 TSA 响应会标注这些字节的时间戳;已确认的 OpenTimestamps 证明将这些字节锚定至比特币。
不具备的能力 它不会将已准备的请求或待处理的日历收据视为已确认的时间戳。
python -m tgwitness.verify evidence.zip --fingerprint TRUSTED_SHA256 --tsa-ca trusted-ca.pem
ots upgrade checkpoint.ots
ots verify checkpoint.ots将主机、范围限定只读端点、新挑战及其专属 key/journal 以及 TGW1 频道帖子。
第三方验证 先前已接受的分支头;状态包括 ok、 key_changed、回滚、分叉、无效以及 no_response.
不具备的能力 它不会将同一收集器主机上的两个工作区视为独立的见证者。
python -m tgwitness.verify evidence.zip --fingerprint TRUSTED_SHA256 --witness witness.zip --witness-fingerprint WITNESS_SHA256 --channel result.jsonS3-兼容的副本,使用 AES-256-GCM; Object Lock 加密的副本(当存储桶支持时)。
第三方验证 仅在日志、检查点和已保存媒体的验证成功后,Restore 才会发布文件。
不具备的能力 若未提供导出的密钥,则无法恢复数据;若未检查存储响应,则不假设数据已被保留。
python -m tgwitness.replica restore --key-file KEY.json --out EMPTY_DIR签名运行收据:源代码哈希值、依赖项版本及进程上下文。由系统自行报告。
第三方验证 签名收集器对其自身执行情况的报告。
不具备的能力 它不提供独立的进程认证,也不排除记录前已遭入侵的可能性。
python -m tgwitness.verify evidence.zip --fingerprint TRUSTED_SHA256本地 SHA-256 实验
下一条记录保留了之前保存的链接。修改文本会改变记录 2 的计算哈希值。
h1以 64 个零开头h2包括已保存的 h1h3包括已保存的 h2静态示例: h2 涵盖“11:00见面”。更改该文本会改变 h2;记录 3 仍引用已保存的 h2.
SHA-256(e₂)SHA-256(e₂)虚构情境。在相关事件发生前开始收集数据;在记录内容的同时,保留其边界和空白处。
不具备的能力 它无法恢复从未被捕获过的原始数据。
不具备的能力 若通知中未提供操作主体,则无法据此识别删除者。
不具备的能力 它不会打开机器人网页应用、进行支付或记录其他客户端的回调。
不具备的能力 它不会将钱包、类似手机号码的字符串或用户名转化为经过验证的身份。
不具备的能力 它不能替代独立见证人或单独保留的解密密钥。
请提供已签名的原始文件、独立保存的密钥指纹、相关检查点以及验证结果。
python -m tgwitness.verify evidence.zip --fingerprint TRUSTED_SHA256 --checkpoint checkpoint.json请从可信副本中获取验证器,而非从正在检查的存档中获取。
不具备的能力 独立版 CSV 和 HTML 并非签名容器。密码用于保护传输机密性,而非真实性。多次导出不会合并账户日志。
阅读详情基本 artifacts 不包含额外的签名、时间戳或见证系统。脚本和日志记录器因实现而异;“部分”指仅限于捕获或可见的内容。
| 方法论 | 编辑 / 删除 | 记录签名 | 外部时间 | 独立见证人 | 覆盖范围 / 缺失部分 | 无作者的验证 |
|---|---|---|---|---|---|---|
| Telegram Desktop 导出 | 部分 | 无 | 无 | 无 | 无 | 无 |
| Telethon 快照脚本 | 部分 | 无 | 无 | 无 | 无 | 无 |
| 删除日志记录器:文本日志 | 部分 | 无 | 无 | 无 | 无 | 无 |
| 屏幕截图 / 网页截图 | 部分 | 无 | 无 | 无 | 无 | 无 |
| TgWitness 带配置的附加项 | 部分 | 是 | 是 | 是 | 部分 | 是 |
不具备的能力 该表格并未评估每一款脚本或日志记录产品。可选的时间和见证人验证需要各自的服务和信任锚点;其中没有任何一项能确立源头真实性。
阅读详情当验证范围保持明确时,验证才具有实用价值。
不具备的能力 任何模式或证据级别均不能确立法律可采性、Telegram消息的完整送达或现实世界中的身份。