# Telegram · 公开展示

Canonical page: https://phishdestroy.github.io/TgWitness/zh/docs/reference/showcase/

通过有效期有限且可撤销的链接，发布所选公共频道的已保存消息和已签名的快照。

[Project context and measured scale](https://phishdestroy.github.io/TgWitness/docs/reference/overview/)

[Documentation index](https://phishdestroy.github.io/TgWitness/zh/llms.txt)

通过有效期有限且可撤销的链接，发布所选公共频道的已保存消息和已签名的快照。

[TgWitness](https://github.com/phishdestroy/TgWitness/blob/main/README.md) / [文档](https://github.com/phishdestroy/TgWitness/blob/main/docs/README.md) · [部署与恢复](https://phishdestroy.github.io/TgWitness/zh/docs/reference/deployment/)

![部署与恢复](https://phishdestroy.github.io/TgWitness/assets/chapter-operate.svg)

**“访问 → 公共展示**”功能利用现有的 访问令牌系统创建一个独立的只读页面。该功能读取安装实例中保存的观察记录，但不会 为访客启动采集器、登录 Telegram 或获取频道。

## 发布页面

1. 为每个您希望展示的公共频道保存一个源配置文件。该频道必须 在其最新保存的配置文件中拥有一个公共用户名；群组和私聊 不符合条件。
2. 开放**访问 → 公共展示区**（或 `/showcase-manage.html`）作为管理员。
3. 从最多 16 个工作区中选择频道，输入公共页面标题，并 选择链接有效期为 1 天、7 天或 30 天。工作区内部标签不会 对外发布。最多可包含 64 个频道。
4. 审核选定频道的文本以供发布，然后点击**“预览选定 记录”**。预览使用与访客页面相同的服务器端投影。
5. 点击“**创建展示链接**”。在链接可见时将其复制。在 另一个浏览器中打开该链接，在分发前预览收件人的页面。

该链接的 URL 片段中包含一个访问令牌。页面在发起 API 请求前会移除该 片段，并将其替换为浏览器会话。 任何持有该链接的人均可打开所选内容，直至链接过期或被撤销。 新链接允许 100 个并发会话，每个会话最长持续一小时。现有的 访问控制还可以通过 授权 API 实施地址限制和登录次数限制。普通审阅者访问属于另一种模式，仍包含 最初允许的消息和文件。

## 访客所见内容

| 可见 | 保持私密 |
| --- | --- |
| 精选的公共频道名称、用户名及个人资料观察日期 | 账户身份、内部工作区标签和未选中的来源 |
| 捕获的文本及每次保存的编辑内容 | 结构化的发件人 ID、姓名、用户名、电话号码和个人资料信息 |
| 删除记录（如有）及先前保存的文本 | 附件、头像、缩略图、文件名和原始有效载荷 |
| 标记用于指示作者/个人资料或附件已被记录 | 转发和回复元数据、网络路由、IP 地址及凭据 |
| 选定频道的事件计数、当前采集开关、心跳和检查点间隔 | 数据收集控制功能和常规证据导出 API |
| 签名指纹、日志检查点和一致性证明 | 签名密钥和 Telegram 会话 |

**公开消息的文本不会自动匿名化。**消息中包含的姓名、提及、电话 号码或链接仍将保留在文本中。 `Redacted`适用于结构化的作者/个人资料字段。发布前请检查实际选中的内容， 包括保留的编辑和删除内容。

“符合条件”反映的是**最新保存的源配置文件**，而非实时查询 Telegram 的结果。 如果后续的配置文件中不再包含该公共频道的用户名，新的请求 将排除该频道。当公共可见性发生变化时，请刷新源配置文件。 读者可能已经保存了之前收到的内容。

原始的签名记录保持不变。显示的投影会单独进行签名， 并包含指向原始记录的哈希值。投影 签名用于验证所显示内容的真实性；它并非原始事件 对经过编辑的字节所做的签名。

## 检查签名和连续性

展开**“指纹与已签名检查点**”，并下载快照。页面 刷新后，下载内容将包含之前的浏览器快照以及其日志边界之间的 默克尔一致性证明。当页面可见且显示其第一页观察结果时，系统会每 一分钟自动刷新一次。

安装 TgWitness 后，请在离线状态下验证下载的文件：

```
python -m tgwitness.showcase_verify showcase.json --fingerprint TRUSTED_COLLECTOR_SHA256
```

指纹必须来自一个单独的可信参考源。若要与 您自己保留的快照进行比对，请使用 `--previous earlier.json`；这将覆盖 下载文件中携带的先前快照。当前证明必须从 该保留的边界开始。经过身份验证的客户端可使用 `GET /api/showcase/{workspace_id}?challenge=<32-hex-random>&from_count=<retained-count>`。 较短的日志会返回 HTTP 409 状态码，而非静默重置边界。

已签名的检查点会提交至**整个收集器**日志，包括其 记录计数和不透明的头部哈希值。显示的消息计数仅适用于 选定的公共频道。该页面绝不会列出其他日志的内容。 这些是事件计数，而非唯一消息计数。设置描述的是 当前配置，而非每个早期的记录间隔。

签名和一致性验证可检测相对于保留 边界所发生的变更。它不会独立重新计算已签名的计数器、认证 Telegram 来源、证明捕获过程未中断，也不会替代独立见证人。 如需进行此类审查，请使用[证据验证器](https://github.com/phishdestroy/TgWitness/blob/main/docs/TRUST.md)、 [独立见证](https://phishdestroy.github.io/TgWitness/zh/docs/reference/witness/)人和[经过规模测试的记录](https://phishdestroy.github.io/TgWitness/zh/docs/reference/verification/)。 合成安装环境会明确标注为“合成”。

## 撤销或托管该页面

在展示管理器或现有的**“访问**”部分中使用**“撤销”功能**，可关闭 链接并终止其所有会话。当请求检测到访问已结束时， 访客将清除显示的记录。每次 请求都会检查有效期和权限。展示权限无法直接转换为普通面板访问权限； 请创建新的权限以切换模式。

通过安装环境现有的 HTTPS 地址提供页面服务。发布 链接不会打开新端口、创建隧道或更改 DNS。HTML 和 API 仍保留在用户的安装环境中。展示页面的访问者无法通过此访问权限使用常规的 消息、个人资料、媒体、导出或管理 API。
