我正在查看 FreeOTFE,不知道它是否与最新的 TrueCrypt 兼容。启动后,它立即显示错误消息:
FreeOTFEExplorer.exe has encountered a problem and needs to close. We are sorry for the inconvenience.
AppName: freeotfeexplorer.exe AppVer: 3.51.0.0 ModName: kernel32.dll
ModVer: 5.1.2600.5781 Offset: 00012afb
请帮助我使其运行。
更新:在另一个系统上,我能够让它运行,但它无法安装任何东西,并提示缺少哈希驱动器。
如果您愿意,您可以回答为什么 TrueCrypt 本身不提供不依赖于驱动程序的功能。是的,他们说管理员可以监视用户,但这仍然比没有安全更好。此外,为什么不使用驱动程序的 FreeOTFE Explorer 与 FreeOTFE 相比受到限制?
答案1
Truecrypt 需要驱动程序,因为它在块级别运行。
需要“块级别”是因为大容量存储设备不了解任何文件,它们只了解 512 或 4096 字节的读写块。(大多数现代硬盘驱动器的标签上都有一个“LBA”编号。这是该驱动器的最高块编号。)
因此,在大多数(如果不是全部)操作系统上,都有一个与文件系统相关的小型软件堆栈。应用程序通过打开、读取、写入和关闭特定文件来处理文件。因此,您将拥有一个“文件系统驱动程序”,它可以理解所使用的特定文件系统,无论是 NTFS、FAT、ext4 还是其他。此文件系统驱动程序通过调用实际上向该特定设备的控制器发送/接收命令的较低级别的“控制器驱动程序”,将这些高级操作转换为对特定块号的读/写请求。
这是一件好事(tm),因为操作系统可以在任何存储设备上使用相同的文件系统软件。
Truecrypt 位于文件系统驱动程序和控制器驱动程序之间,在数据块传递到下层/上层之前对其进行加密/解密。
驱动程序在内核模式下运行,可以完全访问机器。因此,一些软件使用驱动程序来完成与设备通信以外的任务,例如 Belarc Advisor 的 BANTEXT 驱动程序。
因此,Windows 的设计者们明智地设计了这样一种设计:没有管理权限就无法安装驱动程序。Vista/7 更进一步,要求驱动程序必须使用 Microsoft 密钥进行签名。
答案2
虽然没有管理员权限就无法运行 TrueCrypt 软件(如 FreeOTFE),但我确实找到了一个名为TC探索者,您可能已经猜到了,其功能与 FreeOTFE Explorer 类似。从他们的项目页面来看,TCExplorer 是:
用于导入、导出、删除、重命名、查看、编辑和执行 TrueCrypt 容器中的文件的便携式软件
该软件是OTF探索器,因此它具有与 OTFExplorer 相同的限制:
- 无法处理 TrueCrypt 容器中带有 Unicode 名称的文件(但可以打开带有 Unicode 名称的 TrueCrypt 容器)
- 只能打开带有 FAT 分区的 TrueCrypt 容器
- 无法处理隐藏卷(可能不是 OTFExplorer 的限制)
有关 TCExplorer 的其他阅读材料,您可以找到其 CodeProject 的页面在这里。
答案3
至于为什么 Truecrypt 需要管理员权限,我记得网站上说得很清楚。他们有一个目标和一套他们想要满足的规格。
在他们看来,任何低于这个标准的软件都是失败的。我同意这一点。没有开发人员能够编写出能够做到的软件。一切在下面任何条件。另外,考虑到它是免费的,我不会花时间创建边际功能。
具体来说,对于 Truecrypt,他们想说他们符合 XYZ 规范和 ABC 基线。其他一切都排在第二位。
同样的事情也适用于 FreeOTFE。