I数据托管模型
数据从不外传。
从不回传任何信息。
SQAI 在您的数据所在之处运行。查询时不产生任何网络请求,没有服务持有您的数据行,没有遥测。本说明书记录了所有曾经过网络传输的字节——仅有两次数据移动,且均不涉及您的数据。
- 您的数据行
在您的进程内读取,从不复制、从不上传、始终由您独自持有。
从不 - 执行计划与结果
在进程内完成验证与执行。结果存储于有界本地存储中,15 分钟后自动过期。
从不 - 遥测
不存在任何遥测。无分析调用,无崩溃上报,无任何回传。
从不 - 运行时包
引擎代码,从 Cloudflare R2 一次性获取,在写入任何文件前完成验证。代码入站,数据行永不出站。
一次 · 入站 · 已签名 - 设备登录
可选。在您的设备与账号服务之间传输已签名的许可证令牌,从不涉及您的数据。
可选 · 仅令牌
查询时无需网络连接。安装后断网,每条查询依然正常响应。
只读不是一项设置。
它是工具本身的形态。
4,574 项开放能力 · 每一项均为读取 · 无写入路径可供误配置
III唯一的下载
文件落地前的六重校验。
运行时包是 SQAI 唯一会获取的内容——来自 Cloudflare R2 的引擎代码,在通过验证前一律视为不可信。验证在解压前启动,逐文件持续进行,安装过程保持原子性。
- 01
唯一受信密钥
发行版以单一 RSA-4096 发行密钥通过 RS256 签名。一把密钥负责验证;其余一概不信任。
- 02
先验证,后解包
在解包任何文件之前,签名已针对清单完成校验。被篡改或未签名的包永远到不了这一步。
- 03
Schema 与路径安全
清单必须能解析为预期的 schema,且所有列出的路径必须解析至安装根目录之内。
- 04
逐文件 sha256 校验
每个文件均经过哈希计算,并与已签名清单比对。任何一字节不符,整个安装即告失败。
- 05
未列出或符号链接 — 拒绝
清单中未列出的文件,或任何符号链接,均会直接导致包被拒绝。
- 06
原子安装,回滚下限保护
解压在临时目录中完成,随后通过一次原子重命名移入目标位置。低于已接受下限的版本将被拒绝,标记为 rollback_protected。
runtime_bundle 0.1.0sha256 4d64142e4c1ff63d299cfc8b172fdf97cb59169b545e1e02978e678a632ce6e1MIN_ACCEPTED_RUNTIME_VERSION 0.1.0 · below → rollback_protectedIV密钥与错误卫生
攻击面小,且保持小。
设备密钥
- 位置
- ~/.sqai — 位于您的主目录,不涉及任何系统级路径
- 权限
- 文件模式 600 — 仅您本人可读
- 签发方式
- 可选的设备登录(RFC 8628 设备码)
- 传输内容
- 已签名的许可令牌 — 绝不包含您的数据
模型所见内容
ENOENT: no such file or directory — /Users/dana/finance/q3-actuals.csvENOENT: no such file or directorysanitizeMessage 会从所有模型可见的错误中剥离绝对路径。您的文件系统结构永远不会出现在模型的上下文中。
V结果存储
一个句柄,不证明任何事。
大型结果以句柄形式保留,而非直接涌入模型上下文。该句柄经过设计,对发行租户以外的任何人毫无价值。
- result_id
- 16 个随机字节,base64url 编码 — 不可猜测,与任何查询或租户均不可关联
- 授权
- 租户范围限定 — 仅发行租户可兑换
- 错误租户
- result_not_found — 与从未存在过的句柄无从区分
- 生命周期
- 15 分钟 TTL · ≤256 条结果 · 总计 64 MB · 每租户 16 MB
result_id = base64url(randomBytes(16))
→ ok→ result_not_found非禁止访问 — 而是不存在。存在性从不披露。
VI离网操作手册
在断网环境中运行。
查询平面在设计上即为离线;唯一需要拉取的是计算运行时。如需完全断网运行,请自行获取包 — 验证器不关心字节的来源。
- 01
禁用自动安装
SQAI 将不再隐式拉取运行时。
$export SQAI_RUNTIME_AUTO_INSTALL=0 - 02
将包传输至目标环境
在联网机器上获取已签名的包,再按您自己的传输策略将其移入目标环境。
- 03
从文件安装
全部六项检查均针对本地文件执行 — 签名、清单、逐文件哈希,一项不少。
$sqai runtime install --from-file <bundle> - 04
就地验证
随时可针对唯一已接受的发行密钥,对已安装的运行时重新校验。
$sqai runtime verify
安装完成后:零网络依赖。查询、策略检查与溯源哈希均在本地计算。
VII安全审查问题
每次安全审查必问。
我的机器上究竟会有什么数据离开?
查询时,没有任何数据离开。在整个安装生命周期内,仅有两类数据经过网络传输:一是从 Cloudflare R2 入站的已签名运行时包(引擎代码,非数据行);二是仅在您选择设备登录时才会传输的已签名许可令牌。不存在任何遥测。
只读不过是个可以随意翻转的标志吗?
不是。数据库连接上的只读标志是一种承诺;SQAI 是一个从未暴露写入路径的平面。全部 4,574 个已暴露能力均为读操作——没有写入、DDL 或 eval 路径需要防护——而逃生通道(getUnsafeRuntime)对模型永远不可达。
模型能自行扩大访问权限吗?
不能。策略在 createSQAI() 时固化于代码中,并在执行前于进程内完成校验。模型填写的工具输入不携带任何 allowed* 字段,且调用允许列表之外的能力会抛出 unsupported_operation。
SQAI 支持离网运行吗?
支持。设置 SQAI_RUNTIME_AUTO_INSTALL=0,手动传输已签名的包,再通过 sqai runtime install --from-file 安装。相同的验证链会对该文件执行,查询平面在任何情况下均完全离线。
错误信息会将文件路径泄露给模型吗?
不会。sanitizeMessage 会从所有模型可见的错误中剥离绝对路径,模型永远无法获知您的文件系统结构。