BitLocker 如何影响性能?

我是一个 ASP.NET/C # 开发人员。我一直在用 VS2010。我正在考虑在我的笔记本电脑上启用 BitLocker 来保护内容,但我担心的是性能下降。使用像 VisualStudio 这样的 IDE 的开发人员同时处理大量的文件。我觉得比一般的上班族强多了。

所以我很好奇是否有其他开发人员使用 BitLocker 进行开发。演出怎么样?很明显吗?如果是这样,情况很糟糕吗?

我的笔记本电脑是一个2.53 GHz 酷睿2双核,4 GB 内存和英特尔 X25-M G2固态硬盘。很时髦,但我希望一直这样。如果我听到一些关于 BitLocker 的不好的故事,我会继续做我现在正在做的事情,当我不在积极地工作的时候用密码保持 RAR,然后当我完成的时候删除它(但是这是如此的痛苦)。

2015年更新: 我一直在旅行时使用 Surface Pro 3上的 Visual Studio 2015,它默认启用了 BitLocker。它感觉很像我的台式机,是 i7-2600k@4.6 GHz。我认为在现代硬件与一个良好的固态硬盘,你不会注意到!

2021年更新: 我已经在我所有的电脑上启用了比特锁,现在它可以飞了。别担心。获取一个 NVMe SSD,不要回头看。

193252 次浏览

我过去常常在笔记本电脑上使用 PGP 磁盘加密产品(并在此基础上运行压缩的 NTFS!).如果要读取的磁盘数量很少,那么它似乎不会产生太大的影响; 而且按照磁盘标准,大多数软件源并不庞大。

你有大量的内存和相当快的处理器。我花了我的大部分时间思考, 打字或调试。

我不太担心。

使用带有 BitLocker 功能的笔记本电脑差不多2年了,它的规格也差不多(虽然很不幸没有 SSD) ,我可以说它真的没有那么糟糕,甚至可以引起注意。虽然我还没有在没有启用 BitLocker 的情况下使用过这台特殊的机器,但是与我的台式机相比(双核心,16GB,双 Raptor 磁盘,没有 BitLocker) ,它真的一点都不感觉迟钝。建设大型项目 也许吧需要一点时间,但不足以注意到。

为了证明这一点,我需要更多非科学的“证据”: 在我加入公司之前,我的许多同事在没有使用 BitLocker 的情况下大量使用他们的机器(在我加入公司之前,使用 BitLocker 是强制性的,尽管我非常肯定这两件事完全没有关系) ,而且他们也没有经历明显的性能下降。

就我个人而言,拥有一个像 BitLocker 这样的“永远在线”的解决方案比手动加密要好得多。另一方面,USB 设备的即时位置(Windows7上的新版本)太烦人了,无法使用,因为你不能轻易地与非 W7机器交换信息。因此,我对可移动媒体使用 TrueCrypt。

我在这里谈论的是一个理论上的观点; 我还没有尝试过 BitLocker。

BitLocker 使用128位密钥的 AES 加密。在一台2.53 GHz 的 Core2机器上,使用一个内核,加密速度应该在110MB/s 左右。这两个核心可以处理大约220MB/s,假设完美的数据传输和核心同步没有开销,并且没有什么需要 CPU 在同一时间(这是一个地狱的假设,实际上)。X25-M G2的读取带宽为250 MB/s (说明书上是这么说的) ,因此,在“理想”的条件下,BitLocker 必然会有一点减速。

然而 read 带宽并不那么重要。当您复制大型文件时,这很重要,而这并不是您经常做的事情。在日常工作中,访问时间要重要得多: 作为一名开发人员,您需要创建、写入、读取和删除许多文件,但这些文件都很小(大多数都远小于1MB)。这就是 SSD“时髦”的地方。加密不会影响访问时间。因此,我的猜测是,任何性能下降都是可以忽略不计的(*)。

(*)在这里,我假设微软的开发人员正确地完成了他们的工作。

使用我的 T73002.0 GHz 和 Kingston V10064gb SSD,结果如下

比特锁 关掉开始

顺序读取 243 MB/s → 140 MB/s

顺序写入 74.5 MB/s → 51 MB/s

随机读取 176 MB/s → 100 MB/s

随机写入,和4KB 的速度几乎相同。

显然,在这种情况下,处理器是瓶颈。然而在现实生活中,启动时间是相同的,Opera 11.5冷启动时有79个选项卡,所有从缓存加载的选项卡保持相同的4秒钟。

VS2010中的小型构建在这两种情况下都需要2秒钟。较大的建设需要2秒钟比之前的5。这些大概是因为我在看我的手表。

我想这完全取决于处理器、内存和 ssd 与 hdd 的组合。在我的情况下,处理器没有硬件 AES,所以编译是最坏的情况,需要周期的汇编和加密。

一个带有 Sandy Bridge 的新系统可能会在开发环境中更好地利用启用了比特锁的 SDD。

就个人而言,尽管性能受到影响,我还是会保持比特洛克功能,因为我经常出差。它花了不到一个小时的时间来打开/关闭 Bitlock,所以也许你可以在旅行的时候打开它,然后关闭它。

Thinkpad X61,Windows 7 SP1

对于许多应用程序来说,这种差异是巨大的。如果您当前受到存储吞吐量的限制,特别是在读取数据时,BitLocker 将减慢您的速度。

与其他基于软件的整个磁盘或整个分区加密(比如 TrueCrypt)进行比较是很有用的(如果您使用 Linux 进行双重引导,那么 TrueCrypt 具有优势,因为它可以同时在 Windows 和 Linux 上运行)。

一个更好的选择是使用硬件加密,这在许多 SSD 和日立7200RPM 硬盘中都可用。加密 v. not 的性能是不可检测的,加密对于操作系统是不可见的。如果你有一台像样的笔记本电脑,你可以使用内置的安全功能来生成和存储密钥,你的密码从笔记本电脑的加密密钥存储解锁。

一些实际测试..。

  • 戴尔纬度 E7440
  • 英特尔酷睿 i7-4600U
  • 16.0 GB
  • Windows 8.1专业版
  • LiteOn IT LMT-256M6M MSATA 256GB

这个测试使用的是一个系统分区。

分数下降:
读数: 5%
写: 16%

没有 BitLocker:

Without BitLocker

通过 BitLocker:

With BitLocker

因此,您可以看到,通过一个非常强大的配置和一个现代的 SSD 磁盘,您可以看到测试带来的小小的性能下降。我不知道一个典型的工作,特别是与视觉工作室。

我现在的工作机器配备了位置锁,比之前的型号升级了。我只是觉得更快。然而,我发现,在准确地记录数据方面,位置锁比真密码更加防弹。我在 SAS 中做了很多工作,它不断地将备份副本写入磁盘,并在最后将各种输出类型发送到磁盘。SAS 可以很好地将多线程进程的输出写回位置锁,但似乎不知道它的存在。对我来说,真密码不是这样的。我不确定发生了什么或者怎么发生的,但是我发现当处理源/输出数据在一个真密码容器中时,进程会失去同步,这是我在我的第二台工作计算机上安装的,因为它没有位置锁。不断的备份被发送到固态硬盘,而真实加密的结果是在一个普通的高清晰度。也许是速度的差异导致了错误。不管是什么原因,我不得不停止在第二台计算机上使用真密码,因为它使我的 SAS 结果在处理顺序方面不同步,并且它搞砸了我的一些进程和数据。在我的世界里很可怕。

我的同事成功地在同一台计算机上使用了 Trueccrypt,但他们使用的不是磁盘密集型应用程序。比如特种部队。

比特锁到去,比特锁应用于拇指驱动器的加密,当涉及到读/写时间的时候,确实减慢了很多事情。只要你记住 U 盘上的密码,并且愿意等待它格式化/初始化 U 盘,使用它并不太难,但是根据我的经验,它使得访问 U 盘的速度慢了大约4倍。不知道为什么它会减慢一个 U 盘而不是一个磁盘的速度,但是对我和我的同事来说就是这样。

基于我在工作中的成功,我为我的家用电脑买了 Windows Pro 来获得比特锁,并计划用它来加密一些目录,比如财务目录。