一、安全机制总览

Hermes在macOS上以桌面端(Electron)、网关(Gateway)与命令行(CLI)等多种形态运行,处理的数据涵盖用户会话、输入输出文件、技能与记忆,以及模型调用所依赖的各类凭据。通过对不同数据实施分层保护:业务数据存放于应用数据目录,依赖系统文件权限与磁盘加密(FileVault)保障;而凭据——包括OAuth会话令牌与网关连接令牌——依托系统钥匙串(macOS Keychain)与系统级加密存储保护,形成“密钥入钥匙串、密文落磁盘”的双层结构。该机制与部署形态无关,本机安装、优盘便携、多机迁移场景下保护逻辑一致。

具体实现上,Electron的安全存储接口(safeStorage)会生成随机对称密钥,存入登录钥匙串中名为“Electron Safe Storage”的条目(Electron框架的默认服务名);随后以该密钥对令牌做AES加密,密文写入用户数据目录下的连接配置文件(connection.json),文件位于仅当前用户可读写的应用数据目录内(文件本身为系统默认权限,由目录权限兜底)。读写策略遵循失败安全原则:拒绝用空密文覆盖有效令牌,解密失败时保留原条目等待重试;凭据仅以密文形式落盘,避免明文经日志或临时文件外泄。

对于Hermes涉及的令牌,主要有三类,安全价值各不相同,保护路径亦不相同:

(1)访问令牌(Access Token)有效期短(约15分钟),随每次请求发送,过期即失效。

(2)刷新令牌(Refresh Token)有效期较长(24小时轮换且带复用检测),仅在访问令牌过期时用于换取新令牌,是价值最高、最需保护的对象。在远程网关的OAuth模式下,两者均以HttpOnly会话Cookie(hermes_session_at / hermes_session_rt)形式保存在桌面端的持久化会话分区中,由 Chromium的Cookie加密机制保护(其密钥同样存放于系统钥匙串)。

(3)网关连接令牌(Gateway Connection Token)用于传统静态令牌模式的远程网关,经safeStorage加密后与网关地址等连接信息一并存于连接配置文件(令牌为密文,地址为明文),是钥匙串safeStorage条目的直接保护对象。此外,模型提供方的API Key不存入钥匙串,存放于.env与配置文件。

二、安全机制的技术考虑逻辑和评价

选择系统钥匙串而非“自研”加密,符合密钥管理的核心共识:密钥与数据分离、密钥不随数据文件迁移。macOS钥匙串由系统守护进程管理,与登录会话绑定;在Apple Silicon机型上,钥匙串主密钥由登录密码派生的密钥与Secure Enclave硬件密钥共同保护,理论上攻击者即使取得磁盘镜像或数据目录,也无法在包内还原明文。

macOS钥匙串(Keychain)本身是苹果为macOS平台构建的整套密码服务与信任边界:登录钥匙串(login keychain)由系统守护进程管理,其主密钥由用户登录密码经密钥派生函数生成,并在Apple Silicon机型上由Secure Enclave硬件安全模块提供硬件级保护——密钥材料在硬件内部生成、使用与销毁,应用与操作系统软件层均无法导出主密钥;钥匙串与登录会话绑定,锁定屏幕或注销后条目即不可访问;条目级访问受访问控制列表约束,并可与Touch ID等生物识别联动;钥匙串操作进入系统统一审计。配合FileVault全盘加密,攻击者即使取得磁盘镜像或应用数据目录,也需同时面对“密文、硬件保护的密钥、系统授权”三道门槛。

之所以把凭据保护决策托付给系统钥匙串而非Hermes完全自研加密,核心在于密码学工程的安全边界不在算法而在密钥管理的考虑。自研方案通常把密钥保存在应用目录或配置文件(与密文同盘),一旦数据目录整体泄露,密钥与密文同步落入攻击者之手,加密形同虚设;而应用层软件密钥无法获得Secure Enclave级别的硬件信任根,也无法天然获得“用户可见、可审计”的系统授权语义与登录会话绑定。复用平台成熟、经安全审计的密码基元(钥匙串、FileVault、TLS栈),把安全投入放在正确使用平台能力而非重新发明密钥管理上,是风险——收益比最优的决策。

需要澄清的是,选择系统钥匙串并不意味Hermes放弃自身安全机制,而是形成了更为纵深的防御分工:Hermes自身的安全能力——命令审批(approvals)、秘密脱敏(secret redaction)、最小权限工具集与沙箱化执行——负责“运行时防护”,即降低模型与工具在会话过程中误用或泄露凭据的概率;系统钥匙串负责“静态防护”,即保证凭据在任何时刻都以密文形态存在,且密钥受硬件与系统授权保护,两者正交互补。即使Hermes进程被完全攻破(模型被诱导、工具被滥用、进程内存被转储),钥匙串的ACL与系统授权仍是凭据的最后一道防线;退一步而言,即使磁盘镜像泄露,运行时机制也已把明文凭据暴露面压缩到最小。这构成了当前智能体安全范式中“平台信任根+应用运行时治理”的较优实践(如果谈不上最佳实践的话)。

对其安全性评价可从认证流程和访问控制方面进行。从认证流程观察,桌面端连接远程网关时,静态令牌模式以请求头(X-Hermes-Session-Token)与 WebSocket 参数(?token=)携带令牌;OAuth模式则在内嵌的Electron窗口(BrowserWindow)中打开网关登录页,经身份提供方(IDP)跳转后由回调接口将HttpOnly会话Cookie写入持久化会话分区,WebSocket升级改用每次重连前重新签发的一次性票据(?ticket=)。授权在应用内窗口完成而非系统浏览器,会话Cookie为HttpOnly且受Secure/Domain/Path作用域约束,一次性票据避免长命令牌随URL驻留。

访问控制方面,钥匙串条目维护访问控制列表,应用首次访问时由系统弹窗(允许/始终允许/拒绝)授权。当前发布采用ad-hoc签名,应用每次重签后代码身份(Code Directory Hash, CDHash)变化,ACL失效需重新授权——这可能带来重复弹窗的体验成本牺牲,但也证明授权机制真实生效。其可进一步改进的路径包括:改用开发者ID签名(Developer ID Signing)并经公证(Notarization)后,应用获得稳定代码身份,一是ACL授权一次长期有效,不再因重签反复弹窗;二是Gatekeeper不再提示“无法验证开发者”,分发可信度显著提升。

整体而言,静态加密(Encryption at Rest)作为成熟的存储机制,确保明文令牌不落盘;最小权限(Least Privilege)设计叠加ACL白名单与应用数据目录的权限隔离;密钥隔离用以实现密文可随数据迁移而密钥不随行,更换机器则必须重新认证,这构成macOS防泄露的典型特性,安全策略失败不以数据损失为代价。

从局限性上看,ad-hoc签名导致授权漂移,需通过官方签名收敛存在程序和费用上的一定障碍;已登录会话中钥匙串对本机进程开放,属于macOS固有信任模型;钥匙串条目构成单点依赖,误删safeStorage钥匙串条目将导致静态连接令牌全部无法解密(OAuth 会话Cookie由Chromium独立密钥保护,不受影响),需要引入包括密钥轮换(Key Rotation)等策略并定期清理失效连接。

总体而言,对个人AI智能体的使用场景,该模型达到系统级密钥保护与静态加密结合的行业基线。企业级部署若涉及关键信息基础设施,应评估国密算法(SM4等)与商用密码应用安全性评估(GB/T 39786)的要求。

三、安全机制的法律合规评价

从网络空间基本法律的符合性上,《个人信息保护法》第五十一条要求采取加密、去标识化等安全技术措施,《数据安全法》第二十七条与《网络安全法》第二十三条亦要求数据处理者采取加密等相应的安全技术措施。Hermes的令牌加密存储直接回应了上述安全技术措施要求,也契合网络安全等级保护2.0(GB/T 22239)对数据加密存储的条款。同样需要指出的是,加密不等于匿名化,令牌经密钥还原是,仍属个人信息范畴,而数据随应用迁移出境,仍受个人信息出境传输规则的约束。当然, 如不构成密钥的,则显著收紧了泄露面,属于合规意义上的加分项。欧盟GDPR第三十二条同样将加密列为适当技术与组织措施的示例,跨设备强制重新认证契合数据最小化与完整性原则。

针对生成式人工智能的密码应用,《生成式人工智能系统密码应用指引》(中国密码学会密评联委会2026年8月发布)作为GB/T 39786-2021的扩展,从运行环境与基础设施、数据、模型、应用(含智能体)四个层面提出密码应用指引。对照指引,可发现和进行AI领域密码应用合规性的进一步评价。

在凭证与敏感信息保护维度,Hermes与指引要求实质一致——指引8.5.1(d)要求“采用密码技术对API令牌等凭证进行存储机密性和完整性保护”,Hermes的网关连接令牌经safeStorage(AES 加密、密钥存于系统钥匙串)落盘,OAuth会话令牌以HttpOnly Cookie存储并由Chromium加密,可视为对指引条款的直接符合;8.3.1(d)敏感数据加密存储、8.5.2.1(c)短期访问令牌与最小权限、8.5.2.2(a)安全传输通道(HTTPS/WSS)亦可得出类似评价结论。

同样,指引的系统性要求也对Hermes的安全机制设计提出了改进空间。其中包括:8.3.4.2(a)建议对智能体技能包、长期记忆、上下文等敏感数据进行独立加密存储(Hermes当前依赖FileVault与文件权限兜底);8.5.2.5(a)建议对运行与工具调用日志施加消息鉴别码或数字签名完整性保护;8.5.2.2(c)建议对MCP等交互协议消息实施消息级加密。算法层面,指引附录以国密算法(SM2/SM3/SM4、TLCP、可信密码模块)为主要示例,个人场景使用AES加密可接受,企业级或涉关键行业部署需进一步评估国密适配与商用密码应用安全性评估要求。

总体而言,Hermes将凭据密钥管理与macOS平台安全边界组合,在加密强度、访问控制、审计溯源上呈现了可观测、可评价的图景,对智能体个人信息保护与数据合规实践具有参考价值。

*文章所涉观点内容谨代表作者本人,不代表所在单位

声明:本文来自苏州信息安全法学所,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。