Twinny 发布离线许可验证机制:零信任架构下的安全网关升级
在 AI 工具日益普及的背景下,数据隐私与代码驻留(Code Residency)成为企业级应用的核心诉求。Twinny 团队近日在其官方博客中详细披露了其网关(Gateway)的许可验证架构升级,宣布彻底摒弃传统的云端激活服务器,转而采用一种完全离线、基于本地密钥签名的验证机制。
核心突破:从云端验证到本地签名
Twinny 网关的设计哲学是“没有任何东西离开您的网络”。因此,其许可检查系统不包含任何激活服务器、许可 API 或任何形式的“电话回家”行为。
1. 基于 Ed25519 的本地签名验证
传统的许可模式通常依赖云端 API 进行实时验证,而 Twinny 采用了一种更轻量且安全的离线模式:
- 令牌结构:许可令牌(Token)仅包含一行以
twl1.开头的字符串。 - 签名机制:令牌携带组织名称、座位数、有效期、可选联系邮箱及功能开关(如策略、录音、插件等)。这些声明(Claims)由 Twinny 团队持有的私钥使用 Ed25519 算法进行签名。
- 验证流程:
twinny-server内置了对应的公钥。安装时,网关通过 CLI 命令twinny-server license set或管理页面粘贴令牌,本地验证签名并应用配置,整个过程无需重启服务,耗时不到一秒。
2. 座位(Seat)管理与动态分配
Twinny 将“座位”定义为网关上的活跃密钥,每个开发者对应一个密钥。
- 免费额度:前五个座位永久免费,无需令牌。
- 即时生效:移除或吊销某个密钥会立即释放其座位,使得人员离职(Offboarding)或新成员加入的成本几乎为零。
- 团队许可:团队令牌包含总座位数(含免费五席)。
优雅降级:无网络依赖的过期策略
由于缺乏云端通知,Twinny 设计了一套完全本地执行的过期处理逻辑,确保在许可失效时系统仍能安全运行:
- 过期前 30 天:管理页面、启动横幅及日志中会提前预警。
- 过期后 14 天(宽限期):所有功能继续正常应用,系统自动处理。
- 宽限期结束后:
- 应用回归免费计划,策略、录音及插件功能自动关闭。
- 关键保护机制:现有的密钥不会被删除。最古老的五个密钥保留其座位,其余密钥被拒绝访问并显示明确提示。
- 管理员保障:最初创建的管理员密钥(Day One Key)永远是最古老的,因此运营人员永远不会因为许可过期而把自己锁在网关之外。
隐私边界:我们从不查询什么
Twinny 团队特别强调了其隐私承诺:
- 零上报:网关不会向任何外部服务器报告在线座位数、软件版本、使用量或许可安装状态。
- 知识边界:Twinny 只知道“我们发行了许可”,除此之外一无所知。即使是 30 天的试用令牌,其处理逻辑与正式令牌完全一致。
总结
此次更新标志着 Twinny 在构建“零信任”AI 协作环境上的又一重要里程碑。通过本地签名验证与严格的隐私边界,Twinny 确保了开发者代码与数据始终处于完全受控的本地环境中,为对安全性要求极高的团队提供了可靠的 AI 基础设施。
注:完整页面包含 CLI 输出示例及详细的宽限期规则,请参阅 Twinny 官方文档中的 #licensing 章节。