EatWise 只做本地饮食记录和用户自配模型调用,不提供后端服务。安全治理重点是保护 API Key、用户图片和 AI 请求内容。
AI 输出约束、prompt 维护和协作边界见 docs/AI_GOVERNANCE.md。
当前项目处于个人实验阶段,只维护主分支最新代码。历史提交和旧 APK 不单独提供安全修复。
- API Key 仅保存在本机 DataStore。
- 图片保存到 App 私有目录。
- Android 系统备份默认关闭,避免把本地 Key、图片和分析记录同步到云端或新设备。
- 除用户配置的大模型 API 外,App 不主动上传数据到其他服务。每张图片默认会向该模型 API 并发发送饮食建议和粗略营养估算两次请求。
- 日志、Issue、PR 和文档中不得包含真实 Key、Authorization header、完整 base64 图片、完整请求体或完整响应体。
- 公开讨论中不得粘贴含个人信息的本机路径、用户饮食目标、截图或未脱敏模型输出。
- release keystore、签名密码和
local.properties只允许保存在本机或私密备份中,不得提交、上传到 Issue/PR 或附加到 GitHub Release。
如果发现安全问题,请不要在公开内容中贴出真实密钥、用户图片或完整网络请求。建议提供:
- 问题描述和影响范围。
- 复现步骤。
- 脱敏后的错误信息或日志片段。
- 设备、Android 版本和模型 Provider 类型。
- 如需截图或图片,请使用内置示例图片或自行打码后的非敏感图片。
- 优先修复会泄露 API Key、用户图片或本地文件路径的问题。
- 新增日志必须默认脱敏。
- 新增外部网络调用必须在 README 和维护文档中说明。
- 不把医疗诊断、药物建议或治疗方案作为 App 输出目标。
- 发布正式包前必须验证 APK 签名,并确认 release 资产中不包含 keystore、密钥、用户图片、日志或本地配置文件。