# 安全与应用锁

## 应用锁

在 **设置 → 安全** 中，**解锁时要求设备所有者认证** 会把整个应用置于 Face ID
（并回退到设备密码）之后。你可以选择它何时生效：

- 只要启用了它，就会在启动时锁定；
- **进入后台时锁定** —— 打开它也会一并启用所有者认证的要求，因此这项设置
  不会处于半配置状态；
- **闲置后自动锁定** —— 从不、1 分钟、5 分钟、15 分钟，或 1 小时。

锁定期间，Tessera 还会停止广播[接力](https://bambouville.com/docs/zh-hans/continuity/)会话，收到的接续会等待
Face ID。

锁定界面显示“— 已锁定 —”；轻点即可用 Face ID 或设备密码解锁。

锁定不只是表面功夫：它会吊销所有已缓存的密钥使用授权，并取消正在进行的 SSH
握手。即使关闭了应用锁，让应用进入后台也总会使 30 秒的
[密钥连续连接授权](https://bambouville.com/docs/zh-hans/keys/#连续连接授权)失效。

## 密钥

私钥保存在 iOS 钥匙串中；P-256 Enclave 密钥永不离开 Secure Enclave，并且可以
设置为每次使用都要求生物识别。参见[密钥](https://bambouville.com/docs/zh-hans/keys/)，完整细节见公开的
[私钥安全审计](https://github.com/bambouville/tessera/blob/main/docs/private-key-security-audit.md)。

## 主机密钥

每台服务器都会在首次接触时被固定，并在每次连接时重新校验；密钥变更会触发
醒目的警告。参见[主机密钥验证](https://bambouville.com/docs/zh-hans/host-keys/)。

## 隐私

Tessera 没有后端、没有账户、没有分析统计 —— 连接直接从你的设备通向你的机器。
跨设备功能同样直接：[附近设置](https://bambouville.com/docs/zh-hans/nearby-setup/)在你的局域网上点对点进行，
[接力](https://bambouville.com/docs/zh-hans/continuity/)从不传输凭据。详情见[隐私政策](https://bambouville.com/docs/zh-hans/privacy/)。

## 诊断

**设置 → 诊断** 可以写入一份本地日志（`tessera-diagnostics.log`，上限 20 MB，
已脱敏）以便排查问题，另有**详细诊断**和**滚动诊断**开关用于更深入的记录。

- **发送给开发者** —— 打开一封已填好收件人的邮件（dev@bambouville.com），
  并附上日志。在你查看邮件内容并点按发送之前，什么都不会送出；如果设备上
  没有邮件账户，Tessera 会转而引导你使用导出。
- **导出日志** —— 通过 iOS 共享表单发送到你选择的目标位置。
- **上传日志** —— 通过「上传到主机」面板发送到你自己的某台服务器。
- **刷新** / **清空**。

日志绝不会自动离开设备 —— 上面每一条路径都是你明确选择发送的结果。缺陷报告
请提交到 [GitHub Issues](https://github.com/bambouville/tessera/issues)。
