# secure_erase **Repository Path**: felivity_admin/secure_erase ## Basic Information - **Project Name**: secure_erase - **Description**: Secure Erase Pro 是一款专业的跨平台数据安全擦除工具,通过多次覆盖写入随机数据的方式,确保已删除文件无法被恢复,保护您的隐私安全。 - **Primary Language**: Dart - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-11-01 - **Last Updated**: 2026-01-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Secure Erase Pro - 安全数据擦除工具 [![Flutter](https://img.shields.io/badge/Flutter-3.9.2-blue.svg)](https://flutter.dev) [![License](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE) [![Platform](https://img.shields.io/badge/Platform-Android%20%7C%20iOS%20%7C%20Windows%20%7C%20macOS%20%7C%20Linux-lightgrey.svg)]() **Secure Erase Pro** 是一款专业的跨平台数据安全擦除工具,通过多次覆盖写入随机数据的方式,确保已删除文件无法被恢复,保护您的隐私安全。 ## 📱 软件功能 ### 核心特性 - **安全擦除**:使用加密级随机数据覆盖磁盘可用空间 - **多级擦除**:提供轻度(1次)和重度(3次)两种擦除模式 - **并发写入**:支持多线程并发写入,提升擦除效率 - **跨平台支持**:支持 Android、iOS、Windows、macOS 和 Linux - **实时进度**:可视化进度条和详细状态信息 - **智能清理**:自动清理临时文件,防止残留 ### 技术亮点 - **Isolate 并发**:使用 Dart Isolate 实现真正的并行处理 - **内存优化**:流式写入,避免内存溢出 - **智能分块**:自动分配任务到多个工作线程 - **异常处理**:完善的错误处理和恢复机制 - **权限管理**:自动处理存储权限申请 ## 🎯 使用场景 - **出售旧设备**:在出售手机或电脑前彻底擦除个人数据 - **隐私保护**:防止敏感文件被数据恢复软件找回 - **企业合规**:满足数据安全合规要求 - **日常清理**:定期清理磁盘空间,提升设备性能 ## 🚀 快速开始 ### 环境要求 - **Flutter SDK**: ^3.9.2 - **Dart SDK**: ^3.9.2 - **操作系统**: Android 5.0+ / iOS 11.0+ / Windows 10+ / macOS 10.15+ / Linux ### 安装依赖 ```bash flutter pub get ``` ### 运行应用 ```bash # 开发模式 flutter run # 发布模式(性能更好) flutter run --release ``` ## 🔧 编译与打包 ### Android APK ```bash # 生成 release APK flutter build apk --release # 输出路径:build/app/outputs/flutter-apk/app-release.apk ``` ### Android App Bundle (推荐) ```bash # 生成 App Bundle 用于 Google Play 上架 flutter build appbundle --release # 输出路径:build/app/outputs/bundle/release/app-release.aab ``` ### iOS ```bash # 生成 iOS release 版本 flutter build ios --release # 使用 Xcode 打开并签名 open ios/Runner.xcworkspace ``` ### Windows ```bash # 生成 Windows 可执行文件 flutter build windows --release # 输出路径:build/windows/runner/Release/ ``` ### macOS ```bash # 生成 macOS 应用 flutter build macos --release # 输出路径:build/macos/Build/Products/release/ ``` ### Linux ```bash # 生成 Linux 应用 flutter build linux --release # 输出路径:build/linux/release/bundle/ ``` ## 📋 使用方法 ### 1. 授予权限 首次启动应用时,系统会提示授予存储权限: - **Android**: 需要"管理所有文件"权限 - **iOS**: 自动使用应用专属目录 - **桌面端**: 无需额外权限 ### 2. 查看磁盘信息 应用会自动检测并显示: - 总磁盘容量 - 已用空间 - 可用空间(擦除目标) ### 3. 配置擦除参数 #### 擦除模式 - **轻度删除 (1次)**: 快速擦除,适合一般场景 - **重度删除 (3次)**: 多次覆盖,符合安全标准 #### 写入块大小 可选:1KB、64KB、256KB、1MB、4MB、10MB - **小数据块**:更安全,适合敏感数据 - **大数据块**:速度更快,适合大容量存储 #### 并发线程数 根据设备 CPU 核心数自动检测,可选范围:1-16 线程 - **推荐配置**:不超过设备硬件线程数 - **性能平衡**:线程越多速度越快,但资源占用越高 ### 4. 开始擦除 点击"开始擦除"按钮,应用将: 1. 生成加密级随机数据 2. 多线程并发写入临时文件 3. 实时显示进度和速率 4. 自动清理临时文件 5. 完成后显示统计信息 ### 5. 监控进度 - **进度条**:实时显示整体进度百分比 - **状态信息**:当前轮次、写入量、传输速率 - **预计时间**:根据当前速率估算剩余时间 ### 6. 取消操作 如需中途停止,点击"取消"按钮: - 安全终止所有写入操作 - 自动清理已生成的临时文件 - 恢复设备正常状态 ## ⚙️ 高级配置 ### 性能调优建议 | 设备类型 | 推荐块大小 | 推荐线程数 | 适用场景 | |---------|-----------|-----------|---------| | 手机/平板 | 256KB-1MB | 2-4 | 平衡性能与功耗 | | 笔记本 | 1MB-4MB | 4-8 | 中等容量快速擦除 | | 台式机/服务器 | 4MB-10MB | 8-16 | 大容量高性能需求 | ### 命令行工具 项目包含基准测试工具: ```bash # 运行性能基准测试 dart run tool/erase_benchmark.dart # 测试不同线程数的写入性能 # 输出示例: # workers=1 -> 45.2 MB/s (200 MB in 4.4s) # workers=2 -> 82.1 MB/s (200 MB in 2.4s) # workers=4 -> 145.6 MB/s (200 MB in 1.4s) ``` ## 🔒 安全说明 ### 擦除原理 1. **随机数据生成**:使用 `Random.secure()` 生成加密级随机数 2. **覆盖写入**:将随机数据写入磁盘可用空间 3. **多次覆盖**:重度模式执行 3 轮写入,符合 DoD 5220.22-M 标准 4. **文件删除**:每轮完成后立即删除临时文件 ### 注意事项 - ⚠️ **擦除过程不可中断**:强制关闭应用可能导致临时文件残留 - ⚠️ **耗时较长**:大容量存储可能需要数小时完成 - ⚠️ **电量充足**:建议在充电状态下执行重度擦除 - ⚠️ **温度监控**:长时间高负载可能导致设备发热 ### 局限性 - 无法擦除系统分区(需要 root/越狱权限) - 无法保证 SSD 的物理级别擦除(受限于闪存控制器) - 无法擦除已损坏的存储扇区 ## 🐛 故障排除 ### 常见问题 **Q: 应用无法获取磁盘信息** A: 检查存储权限是否授予,尝试重新启动应用 **Q: 擦除速度很慢** A: 尝试增大块大小和线程数,关闭其他占用存储的应用 **Q: 出现"空间不足"错误** A: 这是正常现象,表示已成功填满存储空间,应用会自动处理 **Q: 临时文件未自动删除** A: 手动清理工作目录,路径:`TemporaryDirectory/SecureEraseWork/` ### 日志调试 ```bash # 查看详细日志 flutter run --verbose # 捕获崩溃日志 flutter run > debug.log 2>&1 ``` ## 📄 许可证 本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情 ## 🤝 贡献指南 欢迎提交 Issue 和 Pull Request! 1. Fork 本仓库 2. 创建特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 开启 Pull Request ### 开发环境搭建 ```bash # 克隆仓库 git clone https://github.com/yourusername/secure_erase.git cd secure_erase # 安装依赖 flutter pub get # 运行测试 flutter test # 代码检查 flutter analyze ``` ## 📞 联系方式 - **问题反馈**: issues ## 🙏 致谢 - [Flutter](https://flutter.dev) - 优秀的跨平台开发框架 - [Dart](https://dart.dev) - 现代化的编程语言 - [path_provider](https://pub.dev/packages/path_provider) - 路径提供插件 - [permission_handler](https://pub.dev/packages/permission_handler) - 权限处理插件