OpenClaw 后端数据加密
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3faf7a6b/backend-encryption。
技能介绍
解决的问题
OpenClaw 在 Node.js/后端、CLI 或后台代理中运行时,可能需要在本地保存密钥、会话状态或敏感元数据。backend-encryption 针对这种场景,把加密从浏览器端 Web Crypto 移到服务端 crypto 模块,强调本地、离线、可分层管理,而不是依赖外部网络服务。
工作方式
- 主密钥:用
crypto.pbkdf2从 passphrase 派生,Salt持久化在配置中;相同 passphrase 可在重启后恢复同一个 Master Key。 - 密钥包装:随机生成
KEK并用MK加密;不同作用域的DEK再由KEK保护,避免明文落盘。 - 算法与网络:使用
AES-256-GCM包装密钥,不发起外部网络请求。 - 隔离模型:存储键采用
${userId}:${channelId}:key,在并发后端环境中分离不同用户和频道。
适用边界
该技能属于 Local Manual Mode,适合 CLI、后台任务或服务端代理;不适合期待自动登录、远程解密或跨机器免 passphrase 的场景。重启后必须提供 passphrase 才能解锁。若底层存储被泄露,不同用户密钥在结构上隔离,但仍需保护配置、passphrase 和存储文件权限。
使用场景
- Node.js 后台代理重启前,需要用 passphrase 派生 Master Key 并恢复本地密钥库。
- 为多用户 API 保存会话密钥,要求按 userId 与 channelId 分区且不明文落盘。
- 在 CLI 工具中处理资产元数据,用 KEK 包装 DEK 后再写入本地存储。
- 审计本地加密逻辑,确认只使用 Node crypto 且没有外部网络请求。
适合人员
- 维护 Node.js 后端代理的工程师,需要本地离线密钥管理。
- 构建多用户频道服务的开发者,要求不同用户密钥隔离。
- 编写 CLI 工具的安全工程师,需要 PBKDF2/AES-256-GCM 分层包装。
- 审查 OpenClaw 本地存储的架构师,确认无网络与明文密钥。