Windows Mobile - 安全设备擦除

时间:2010-12-09 10:41:50

标签: c# security windows-mobile delete-file

我需要在Windows Mobile中提供安全的擦除功能,并提供以下详细信息:

  1. 设备上的所有文件都应使用强密钥加密(已完成)。
  2. 用户不应该能够在资源管理器中查看文件。
  3. 设备不应显示用于加密文件的已用磁盘空间。
  4. 我的应用程序应该能够使用用于加密的相同密钥在同一位置获取(恢复)文件(通过解密)。

1 个答案:

答案 0 :(得分:1)

冒着家长化的风险 - 不能很好地完成。

C#没有对底层Flash结构的任何访问权限,实际上不可能从文件系统接口擦除固态内存中的内容 - 原因如下:

  • 磨损均衡 - 固态控制器/文件系统会将加密文件写入不同位置,而不是删除它。
  • 即使你让文件系统覆盖数据,也几乎没有保证它实际上会这样做 - 闪存的擦除模式使控制器可能重新定位整个扇区(所有128kbit,通常足够) ,并将旧的标记为空以限制重写 - 写入很容易损坏闪存,控制器尽其所能确保数据均匀写入。穿过记忆。

您需要编写内核驱动程序才能完成此任务。

同样适用于(3.) - 无法从用户区域完成。

不要像那样出售安全产品 - 它不会阻止对手,并且会令人讨厌。