尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

AI代码追踪还能保护隐私:git-ai的Prompt安全存储与密钥脱敏机制详解

AI代码追踪还能保护隐私:git-ai的Prompt安全存储与密钥脱敏机制详解 AI代码追踪还能保护隐私git-ai的Prompt安全存储与密钥脱敏机制详解【免费下载链接】git-aiA Git extension for tracking the AI-generated code in your repos项目地址: https://gitcode.com/gh_mirrors/git/git-ai还在担心 AI 代码追踪工具会偷偷上传你的对话内容吗开源项目git-ai是一个用于追踪仓库中 AI 生成代码的 Git 扩展它一边帮你精确记录“哪几行代码来自 AI、哪几行来自人类”一边用本地 Prompt 安全存储和密钥脱敏Secret Redaction机制守住你的隐私未登录时 Prompt 永不外传API Key、Token 等高熵密钥在数据离开机器前会被自动打码。一、为什么“追踪 AI 代码”必须谈隐私使用 Claude Code、Cursor、Copilot 等 AI 编程助手时你的 Prompt 里经常夹带敏感信息粘贴进去的API Key、数据库密码内部接口地址、Token、配置文件片段尚未公开的业务逻辑描述git-ai 的原理是在每次 commit 前对 AI 与人类的编辑做Diff 检查点Checkpoint把归属信息写入 Git Notes之后git blame就能看到逐行归属。这套机制天然会接触你的对话数据——所以“数据存哪、传不传、传之前处理什么”就是隐私设计的核心问题。二、第一道防线Prompt 只存本地 SQLitegit-ai 把完整的 Prompt 记录存放在你电脑上的本地 SQLite 数据库中对应的prompts表包含工具、模型、消息体、提交哈希等字段建表语句见 internal_db.rs。关键隐私承诺见 />四、第二道防线基于信息熵的密钥检测算法那如果数据真的要上传比如你开启了个人仪表盘密钥怎么办git-ai 的答案是一个基于统计熵的密钥探测器核心代码在 secrets.rs。它不依赖“AWS Key 必须以 AKIA 开头”这类脆弱的正则而是像指纹学家一样分析字符串本身长度筛选只扫描 1590 个字符的连续 token太短太长直接忽略字符分布分析统计不同字符数、大小写/数字比例越“均匀随机”越可疑二元组Bigram检测自然代码和英文里高频出现的字符组合如er、on、st会显著降低“随机性得分”双重阈值判定随机概率低于 1/100000 的字符串直接放行不含数字的字符串要求更严格的阈值1/10000效果是——真正的密钥sk_test_4eC39HqLyjWDarjtT1zdp7dc、AKIAIOSFODNN7EXAMPLE会被稳定命中而普通变量名my_application_name、database_host几乎零误报。五、脱敏方式打码但不全遮命中密钥后redact_secret() 只保留首尾各 4 个字符中间用星号替换sk_live_abc123xyz→sk_l********xyz这样既杜绝了密钥泄露又保留了“这是哪一类 Key”的上下文线索方便排查问题。六、JSON 深度扫描一条 transcript 都不放过Agent 会话transcript是一棵复杂的 JSON 树。transcript_redaction.rs 中的redact_json_secrets()会递归遍历整棵树深度上限 32 层对每个字符串叶子节点做熵检测同时维护一份键名排除清单保护这些元数据字段不被误伤id/session_id/parentId/uuid等标识符字段timestamp、type、role、model、version、branch、path等元信息规则很简单存“身份”的字段不脱敏存“内容”的字段content、text、message、output一律过一遍熵检测。设计方案全文见 transcript-secret-redaction-design.md。七、脱敏发生在哪几个“关口”关口位置作用会话事件读取时stream_worker.rs原始事件进入指标管道前先redact_json_secrets守护进程日志daemon_log_layer.rs日志字符串字段先脱敏再截断重试队列脱敏发生在 SQLite 重试队列入队之前密钥永远不会以明文落盘到重试队列一句话总结密钥在任何一条“出机器”的路径上都被拦在源头。八、新手快速自查清单 安装 git-ai 后可以这样验证隐私设置不登录 零上传开源模式下唯一默认外发的是错误遥测把配置项telemetry_oss设为off即可彻底关闭检查仓库git log后查看 notes只会看到哈希与元数据看不到你的 Prompt 原文本地查 Prompt用git-ai show-prompt prompt_id按需查看数据不出本地看脱敏效果secrets.rs 内置了完整测试用例覆盖 .env 文件、JSON 配置、代码误报等场景九、延伸阅读核心模块路径密钥检测与脱敏算法src/authorship/secrets.rsJSON 递归脱敏src/daemon/transcript_redaction.rs本地 Prompt 存储SQLitesrc/authorship/internal_db.rsAuthorship Log 序列化元数据格式src/authorship/authorship_log_serialization.rs隐私政策说明data-privacy.md脱敏机制设计文档docs/superpowers/specs/2026-05-19-transcript-secret-redaction-design.mdgit-ai 的思路很清晰能不留就不留能不打码就不打码必须出门时先过安检。对于既想用 AI 提效、又想守住密钥与对话隐私的开发者来说这套“本地优先 熵检测脱敏”的组合拳是一个值得借鉴的隐私工程范本。【免费下载链接】git-aiA Git extension for tracking the AI-generated code in your repos项目地址: https://gitcode.com/gh_mirrors/git/git-ai创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表