BYOAI 浏览器端密钥库
访问者自己的密钥在浏览器端具备抗 XSS 能力:一个不可导出的 AES-GCM CryptoKey 存放在 IndexedDB 中(JS 可以调用加密/解密,但永远读不到其原始字节),而该密钥的密文信封存放在 localStorage 中。必须同时攻破这两个存储才能窃取密钥——单独转储其中任何一个都毫无用处(app/src/lib/gate/byoai-vault.ts)。
与线路侧的 byoai-envelope(由 session_token 派生密钥的 AES-GCM,服务端从不存储)配套使用。端到端来看,访问者的密钥从未以明文形式保存在任何地方。