关于 Reboot Restore 的数据加密

关于 Reboot Restore 数据加密方式的说明。

数据加密是 PC 用户熟悉的概念与常见实践。数据加密的目标是防止未经授权的访问计算机数据。实现这一目标有多种技术,但它们都遵循一个简单的思想——将数据转换成另一种形式或代码,只有持有密钥(正式称作解密密钥)或密码的人才能访问。Reboot Restore 作为 Windows 的时间机器软件,提供计算机数据的即时恢复。表面上,Reboot Restore Rx Pro 技术似乎与数据加密无关。但在实践中,Reboot Restore 带来了一种独特而有效的数据防护方式,使数据免受未经授权的访问。本白皮书将阐述 Reboot Restore 如何以独特、简单而有效的方式实现数据加密;这一能力其实是 Reboot Restore 即时数据恢复设计的附带成果。

标准数据加密是如何工作的

在说明 Reboot Restore 的数据加密方式之前,我们先简要回顾一下标准的数据加密。数据加密的目的是保护计算机系统中存储的数字数据的机密性。要理解不同的数据加密技术,我们需要先了解数据在计算机系统中是如何存储与访问的。

计算机数据存储的整体过程是一个复杂话题。在基于 Windows 的计算机中,这是 Windows 操作系统的主要职责之一,通过其文件系统管理器来处理已存储数据。但整体过程可以分解为两个基本步骤:第一步,定位已存储的数据(索引系统)。第二步,读写已存储的数据(真正的数据本身)。标准数据加密的重点放在第二步,也就是真正的数据上。借助 DES、AES 等各种加密算法,加密软件把数据通过一连串复杂运算变换成另一段定长密文。这是一个非常高效的过程,但它需要时间——对每一位数据进行加密。实践中,经常能看到加密软件耗费数小时才能对一整个硬盘的数据完成加密或解密。

Reboot Restore 的加密是如何工作的

Reboot Restore 的数据加密聚焦于数据存储过程的第一步——索引系统。我们知道,Reboot Restore 是一款数据保护软件,它并非设计成数据加密软件。其数据加密能力只是其数据保护设计的一个非预期结果。

在没有安装 Reboot Restore 的 Windows 系统上,IO 文件管理器看到的数据存储是「非黑即白」的布局:黑色代表已使用的空间,白色代表空闲空间。

img

而在安装了 Reboot Restore 的同一系统上,IO 文件系统看到的数据存储仍然是「非黑即白」,但这个黑白只是整个彩色布局中的一小部分。

img

使用 Reboot Restore 时,我们会注意到:在某一个 Reboot Restore 快照中看不到其他快照的数据。这是因为当前快照的文件系统中,没有对其他快照中文件的「索引」。这正是 Reboot Restore 数据保护哲学的体现:保护数据免受损害的最佳方式,就是让它对破坏因素不可见。

同样的哲学可以扩展到数据加密:防止未授权访问数据的最佳方式,就是让数据对未授权用户不可见。

这便是 Reboot Restore 实现数据加密的基础。

问题是,我们如何让数据对未授权访问不可见?

存储在 Reboot Restore 快照中的数据,只有在该快照内部可见;要访问快照,就是访问数据的钥匙。Reboot Restore 加载快照的动作,由 Reboot Restore 的预操作系统(pre-OS)子系统完成,它从不可见的快照表(这些表并不作为文件存在于文件系统中)读取快照信息。此外,快照表的内容使用 AES 加密。为防止未经授权的用户加载快照表,加载与解密快照表的动作被一个预操作系统密码所保护——从而让对受保护数据的「访问」彻底安全。

接下来,一个严格的用户可能仍然会对其真正数据的安全性感到怀疑。如果未授权用户以某种方式找到了通向数据的路径,Reboot Restore 如何防止其访问真正的数据?Reboot Restore 对这个问题的回答是:不做任何额外处理,只延续其原本为即时数据保护与恢复所做的设计。这正是 Reboot Restore Rx Pro 设计的精妙之处。在一个简单的测试中,我们可以看到 Reboot Restore Rx Pro 能在几秒钟内为 1TB 磁盘创建或恢复一份快照。这说明 Reboot Restore 的数据保护与恢复并没有备份或还原真正的数据——否则远不止几秒。Reboot Restore 写入与读取受保护数据的整个过程,可被视作一种「加密」技巧。

数据加密的定义是:数据(或称明文)通过加密算法与加密密钥进行加密,过程生成密文;只有用正确的密钥解密后,才能看到其原始形式。

Reboot Restore 通过一个子系统和一个内核系统来保护 PC 上已存储的数据。子系统与内核系统会创建一份扇区映射(sector map)与一层虚拟屏障(virtual shield),让操作系统对扇区级别的数据移动毫不知情。由于所有位于扇区上的数据都有对应的扇区映射条目,Reboot Restore 将每个在扇区映射中有条目的扇区标记为「Used(已使用)」;反之,所有在扇区映射中没有对应条目的扇区则被标记为「Free(空闲)」。安装时,硬盘会由内核系统分类,把「Used」扇区纳入虚拟屏障的保护。此分类完全独立于操作系统本身。

安装 Reboot Restore 之后发生的任何改动,都被归类为「Snapshot Used(快照已用)」扇区。「Snapshot Used」扇区分类让所有被改动的数据都变得唯一可辨。「Snapshot Used」扇区是在「Used」扇区之上的延伸,并通过链式指针关联。操作系统并不知道「Used」扇区与「Snapshot Used」扇区之间存在这种两级指针链接。

img

从上图可以看出,在安装了 Reboot Restore 的系统上,扇区 40 的内容本身并未被加密;但若不访问 Reboot Restore Rx Pro 的快照表,不对扇区间的链接关系进行重新解读,我们就无法知道扇区 40 的真实内容其实在扇区 41 中。存储于扇区 40 中的数据,已经通过一串重定向链接被有效地、意外地「加密」了。

这正是 Reboot Restore 设计的精妙之处:与标准加密软件不同——后者把真正的数据变换成另一种形式——Reboot Restore Rx Pro 把构成文件的数据切成小块,通过快照表的重定向与索引把它们链接起来;其结果便是数据在没有显式加密过程的前提下,被有效地「加密」成了另一种形式。

没有快照表这张「地图」,就无法把所有链接拼接起来还原出存储于快照中的数据(在某种意义上就是将数据加密);而如上所述,快照表的地图本身也经过加密,并得到了妥善保护。

小结

Reboot Restore 以一种独特而有效的角度、作为意外收获实现了数据加密。它克服了标准加密过程耗时冗长的缺点——Reboot Restore 对数据的加密既即时又安全。对于它本就令人惊艳的即时数据恢复能力而言,这是一份恰到好处的附加值。

分类:常见问题(FAQ)