安全
安全不是一个选项,而是整套架构。
lodos 的 Zero-Knowledge 来自设计,而非来自政策。这里告诉你它究竟如何运作,以及明文在哪里止步。
用大白话说清这份保证。
你的主密码永远不会离开你的 Mac。你的数据在写入磁盘之前就已加密。我们以及你选择的任何云,只能看到无法解读的密文。连我们自己也读不了你的 Vault。
我们能看到什么,又看不到什么。
一家公司能向你展示的最诚实的东西。
我们能看到
- 你的邮箱地址
- 你的订阅状态
- 存在一份加密备份这件事
- 它的大小和时间戳
我们永远看不到
- 你的 Vault 和 Secrets
- 你的 Wiki、任务和笔记
- 你的 AI 对话
- 你的主密码或密钥
明文在哪里止步。
你的密码派生出一把永不离开设备的密钥。这条线之后的一切都是密文。
AI 护城河
你的 AI 看不到你的 sk_live 密钥。
当某个任务需要凭证时,lodos 会在本地解密它,并作为环境变量传递给子进程,处于模型的视野之外,任务一结束便消失。AI 始终只接触到形如 {{secrets.stripe.sk_live}} 的引用。lodos 中没有任何工具会返回明文 secret,而且一项构建期不变量检查会在有人加入这样的工具时让发布失败。
引用
模型看到的是占位符,永远不是真实值。
注入
真实 secret 在运行时进入子进程,永远不进入对话记录。
审计
每一次访问都会追加到一条防篡改的 HMAC 链上。
强制执行,而非口头承诺
这道护城河在编译期就被检查。
每次发布都会运行一次构建期不变量扫描。一旦其中任何一条被违反,构建就会失败,这样这份保证就不会悄悄退化成一纸政策。
- 没有 bash、没有 exec、没有任何返回 secret 值的工具
- 没有原始模型 API 提供方,只有内嵌的 Claude Code
- 任何渲染路径上都没有 eval、Function、vm 或 child_process
- 未知工具一律拒绝执行,绝不静默放行
- agent 运行时明确禁用 bash
- 没有任何单一授权能凑齐致命三要素
- 仅声明式工作流,没有可执行的代码路径
点名所用的密码学原语。
没有自研加密。全是经过审计的标准构件。
Argon2id
内存密集型密钥派生,64 MB / 3 次迭代,抵御 GPU 和 ASIC 破解。
XChaCha20-Poly1305
通过 libsodium secretbox 实现认证加密,每个 section 独立密钥。
HMAC-SHA256 链
每一次 Vault 和 Wiki 操作都被签名并串联,任何篡改都会打断这条链。
160-bit 恢复密钥
高熵,设备本地生成,我们从不存储。
secretstream sync
64 KB 认证数据块,绑定到你的账户,因此数据块无法被重放。
不透明字段路径
审计日志只记录某个 secret 被使用过,绝不记录是哪一个。
lodos 对比云端 Company OS。
| lodos | 典型云端工具 | |
|---|---|---|
| 静态加密 | ||
| Zero-Knowledge(厂商无法读取) | ||
| 完全离线运行 | ||
| 防篡改审计记录 | ||
| AI 能读取你的 secrets | ||
| 零遥测 |
以及它无法防护的东西。
Zero-Knowledge 能保护你的数据不被我们和网络看到,但它无法保护一台已经被攻陷的设备,也救不了一个容易被猜中的主密码。强健的设备安全和一个强密码,依然需要由你来守住。我们宁愿把话说明白,也不愿夸大其词。
坦白说明的已知局限。
- 子进程的网络出口由 allowlist 把关,并非硬件级沙箱。
- macOS 公证仍在进行中,早期版本安装时会出现 Gatekeeper 提示。
- 我们从不代理第三方模型;你自带你自己的 Claude。