用于提供加密文件系统的加密系统和方法技术方案

技术编号:3543752 阅读:184 留言:0更新日期:2012-04-11 18:40
提供了一种用于提供加密文件系统的加密装置和方法。示例性实施例的加密装置和方法使用加密方法组合,以便在需要修改加密文件系统中的文件的情况下减少所述文件所需的解密和重新加密量。对于每个明文块,所述加密方法是交织的或切换的。在一个示例性实施例中,交替使用明文块链接(PBC)和密码块链接(CBC)加密方法以加密数据块序列。明文块的加密依赖于明文或针对数据块序列中的上一数据块的明文生成的密码,以使加密比公知的电码本加密方法更安全。

【技术实现步骤摘要】
【国外来华专利技术】
本申请一般地涉及改进的数据处理系统和方法。更具体地说,本申请 涉及一种。
技术介绍
加密文件系统(EFS)是可用于Microsoft的Windows 2000TM、 Windows XPTM、 Windows Server 2003 ,以及现在Windows Media Center 2005TM操作系统的文件系统。EFS技术透明地允许将加密文件存储 在NT文件系统(NTFS)或其他类型文件系统上,以保护机密数据免受具 有计算机的物理访问权限的攻击者的攻击。用户验证和访问控制列表可以在操作系统运行时保护文件免受未经授 权的访问,但是如果攻击者获取计算机的物理访问权限,则它们会被轻易 地避开。 一种解决方案是将加密后的文件存储在计算机的盘上。EFS使用 公钥加密执行此操作并旨在确保没有正确密钥实际上不可能解密文件。但 是,EFS不会阻止对用户帐户密码的暴力攻击。换句话说,如果帐户密码 被轻易猜中,则文件加密不会提供多少保护。对于EFS,必须使用加密属性标记要由文件系统加密的文件和文件夹。 例如,对于NTFS中的文件权限,如果文件夹被标记为进行加密,则默认 情况下此文件夹中存在的所有文件和子文件夹也会净皮加密。当文件^L复制 到使用其他文件系统(例如FAT32 )格式化的其他巻时,在将文件和/或文 件夹复制到该文件系统之前,将对它们进行解密。唯一的例外是当*文 件时,在此情况下不解密文件。EFS通过^f吏用批量对称密钥(也称为文件加密密钥或FEK)加密文件 来工作,使用此对称密钥是因为与使用非对称密钥密码相比,它加密和解密大量数据所用的时间相对较少。用于加密文件的对称密钥然后使用与加 密文件的用户关联的公钥4皮加密,并且此加密后的数据4皮存储在加密文件 的头部。为了解密文件,文件系统使用用户的私钥解密存储在文件头部的 对称密钥。然后使用对称密钥解密文件。由于此操作在文件系统级别执行,因此对于用户是透明的。有关Microsoft的EFS的更多信息可以从 www.wikipedia.org的Wikipedia以及www.microsoft.com的Microsoft获取。EFS使用的加密被称为电码本(ECB)加密。对于ECB加密,使用 诸如数据加密标准(DES)、三重数据加密标准(3DES)、高级加密标准 (AES )之类的加密算法,通过加密密钥加密长度为加密密钥(例如56位、 128位等)的数据块。图l概念地示出了 ECB加密。如图l所示,将明文 块110连同加密密钥120 —起输入加密算法130。加密算法130使用加密 密钥120加密明文110以生成第一密文140。针对每个明文块110、 150和 160执行此类加密以生成作为包括加密文件190的加密数据块序列的一部 分的密文140、 170和180。使用ECB加密方法,密码破译者可以在没有发现加密密钥120的情况 下破坏加密。此方法的弱点归因于抄袭,即公知的明文以及常规开头和结 尾。例如,如果密钥破译者知道邮件以To:Bob开始并且密码是 oxG29vq,则在所有其他邮件上,当密码破译者遇到oxG29vq时, 密码破译者将知道明文是To:Bob。由于此漏洞,大多数安全系统(例 如IPsec、 ssh等)都不使用ECB。由于加密机制可以净皮应用于明文的速度,因此将ECB加密与7〉知的加 密文件系统一起使用。也就是说,如果需要更改加密文件系统中的文件的 一部分,则可以快速解密、修改和重新加密需要修改的文件的一部分,因 为每个明文块独立于每个其他明文块被加密。但是,如上所述,ECB加密 在密文和明文之间生成映射的能力方面具有固有的缺点。在公知的加密文 件系统中将不使用更精细和更安全的加密方法,因为每次对文件进行最细 微的更改时,都需要对整个文件或文件的大部分进行解密、修改以及然后重新加密。此类加密机制将引起不适合与加密文件系统一起使用的显著性能恶化。
技术实现思路
示例性实施例提供了一种。 示例性实施例的加密装置和方法使用加密方法组合,以便在需要修改加密 文件系统中的文件的情况下减少所述文件所需的解密和重新加密量。对于 每个明文块,所述加密方法是交织的或交替的。明文块的加密依赖于上一明文块的加密以使所述加密比ECB加密方法更安全,如先前所讨论的那 样。示例性实施例的加密方法被称为交替块链接(ABC)加密方法。当与公知的明文块链接(PBC)和密码块链接(CBC)方法单独相比 时,ABC加密方法将减少必须被解密、修改和/或重新加密的文件块的数 量。ABC加密方法将必须被解密、修改和/或重新加密的文件块的数量减 少到被更改的块加上两个其他块,即三个明文数据块。在一个示例性实施例中,这种对公知方法的改进通过在交替的明文数 据块中组合PBC与CBC加密方法来获得。例如,可以使用CBC加密来 加密所有奇数明文数据块,而可以使用PBC加密来加密所有偶数明文数据 块。因此,重新加密循环将在两个明文数据块之后停止。此外,将明文数 据块读入存储器时,仅需要解密所需的明文数据块和最多两个在先明文数 据块。此外,根据示例性实施例,ABC加密针对整个被加密的数据部分(例 如文件)仅需要一个初始化向量。由于加密机制是交替的,因此初始化向 量仅用于使用第一加密机制加密的第一数据块。后续数据块使用上一数据 块的明文或密码来加密。此外,块链接可以在整个数据部分(例如文件) 中使用,而不必在每次数据更改之后重新写入整个数据部分。在一个示例性实施例中,提供了一种用于加密数据序列的方法。所述 方法可以包括接收所述数据序列;使用至少两种加密机制来处理所述数 据序列中的数据块以生成加密数据序列;以及输出所述加密数据序列。使用至少两种加密机制来处理所述数据序列中的数据块可以包括在所述数 据序列中的每个数据块处,在所述至少两种加密机制之间交替。在一个示 例性实施例中,输出所述加密数据序列可以包括将所述加密数据序列作为 文件存储在加密文件系统(EFS )中。在所述数据序列中的每个数据块处,在所述至少两种加密机制之间交 替可以包括使用第 一加密机制加密所述数据序列中的第 一数据块,并且使 用不同于所述第 一加密机制的第二加密机制加密所述数据序列中的第二数 据块。通过所述第二加密算法加密所述第二数据块可以依赖于所述第一加 密机制的输入或输出之一。在所述至少两种加密机制之间交替还可以包括 使用所述第一加密机制加密所述数据序列中的第三数据块。通过所述第一 加密机制加密所述第三数据块可以依赖于所述第二加密机制的输入或输出 之一。在一个示例性实施例中,所述第一加密机制和所述第二加密机制中的 至少一个机制可以实现明文块链接(PBC)加密方法。此外,在一个示例 性实施例中,所述第 一加密机制和所述第二加密机制中的至少一个机制可 以实现密码块链接(CBC)加密方法。此外,在一个示例性实施例中,所述第一加密机制实现密码块链接 (CBC)加密方法并且所述第二加密机制实现明文块链接(PBC)加密方 法。所述第一加密机制可以使用针对所述数据序列中的上一数据块生成的 密码来生成所述CBC加密方法的第一密钥。所述第二加密机制可以使用 所述数据序列中的上一数据块的明文数据来生成所述PBC加密方法的第 二密钥。在一个示例性实施例中本文档来自技高网
...

【技术保护点】
一种在数据处理系统中加密数据序列的方法,所述方法包括: 接收所述数据序列; 使用至少两种加密机制来处理所述数据序列中的数据块以生成加密数据序列;以及 输出所述加密数据序列,其中使用至少两种加密机制来处理所述数据序列中的数据块包括:在所述数据序列中的每个数据块处,在所述至少两种加密机制之间进行切换。

【技术特征摘要】
【国外来华专利技术】US 2006-4-18 11/406,1841. 一种在数据处理系统中加密数据序列的方法,所述方法包括接收所述数据序列;使用至少两种加密机制来处理所述数据序列中的数据块以生成加密数据序列;以及输出所述加密数据序列,其中使用至少两种加密机制来处理所述数据序列中的数据块包括在所述数据序列中的每个数据块处,在所述至少两种加密机制之间进行切换。2. 如权利要求l中所述的方法,其中在所述数据序列中的每个数据块 处,在所述至少两种加密机制之间进行切换包括使用第一加密机制加密所述数据序列中的第一数据块;使用不同于所述第 一加密机制的第二加密机制加密所述数据序列中的第二数据块,其中通过所述第二加密算法加密所述第二数据块依赖于所述第一加密机制的输入或输出之一;以及使用所述第 一加密机制加密所述数据序列中的第三数据块,其中通过所述第 一加密机制加密所述第三数据块依赖于所述第二加密机制的输入或输出之一。3. 如权利要求2中所述的方法,其中所述第一加密机制和所述第二加 密机制中的至少一个机制实现明文块链接(PBC)加密方法。4. 如权利要求2中所述的方法,其中所述第一加密机制和所述第二加 密机制中的至少一个机制实现密码块链接(CBC)加密方法。5. 如权利要求2中所述的方法,其中所述第一加密机制实现密码块链 接(CBC)加密方法并且所述第二加密机制实现明文块链接(PBC)加密 方法,并且其中所述第 一加密机制使用针对所述数据序列中的上一数据块 生成的密码来生成所述CBC加密方法的第一密钥,并且所述第二加密机 制使用所述数据序列中的上一数据块的明文数据来生成所述PBC加密方 法的第二密钥。6. 如权利要求5中所述的方法,其中使用实现所述CBC加密方法的 所述第 一加密机制来加密所述数据序列中的所有奇数数据块,并且使用实 现所述PBC加密方法的所述第二加密;f几制来加密所述数据序列中的所有 偶数块。7. 如权利要求5中所述的方法,其中所述第一加密机制通过将针对所述上一数据块生成的所述密码与第一 加密密钥逻辑地组合来使用所述密码生成所述第一密钥,所述第二加密机制通过将所述上一数据块的所述明文数据与第二加密 密钥逻辑地组合来使用所述明文数据生成所述第二密钥,以及所述第二加密密钥是与所述第一加密密钥相同或不同的加密密钥。8. 如权利要求l中所述的方法,其中输出所^f口密数据序列包括将所 述加密数据序列作为文件存储在加密文件系统(EFS)中。9. 如权利要求l中所述的方法,还包括 接收所述加密数据序列; 标识所述数据序列中要被修改的数据块; 确定用于加密所述要被修改的数据块的加密方法;根据所确定的用于加密所述数据块的加密方法来解密所述数据块; 修改所述要被修改的数据块;以及 在修改之后重新加密所述要被修改的数据块。10. 如权利要求9中所述的方法,其中根据所确定的加密方法解密所 述数据块包括解密所述数据序列中恰好在所述要被修改的数据块之前的上一数据 块,所述解密使用用于恰好在所述上一数据块之前的数据块的密码,以便 获得所述上一数据块的明文数据;以及根据所获得的所述上一数据块的明文数据来解密所述要被修改的数据块。11. 如权利要求9中所述的方法,其中在修改之后重新加密所述要被 修改的数据块包括除了所述要被修改的数据块之外,重新加密所述要被 修改的数据块之后的最多两个其他数据块。12. 如权利要求9中所述的方法,其中根据所确定的加密方法解密所 述数据块包括除了所述要被修改的数据块之外,解密所述数据序列中的 所述要^L修改的数据块之前的最多 一个数据块。13. —种包括具有计算机可读程序的计算机可用介质的计算机程序产 品,其中当所述计算机可读程序在计算设备上执行时,将导致所述计算设 备执行以下操作接收数据序列;使用至少两种加密机制来处理所述数据序列中的数据块以生成加密数 据序列;以及输出所述加密数据序列,其中使用至少两种加密机制来处理所述数据 序列中的数据块包括在所述数据序列中的每个数据块处,在所述至少两 种加密机制之间进行切换。14. 如权利要求13中所述的计算机程序产品,其中所述计算机可读程 序导致所迷计算设备通过以下操作在所述数据序列中的每个数据块处,在 所述至少两种加密机制之间进行切换使用第 一加密机制加密所述数据序列中的第 一数据块;使用不同于所述第一加密机制的第二加密机制加密所述数据序列中的第二数据块,其中通过所述第二加密算法加密所述第二数据块依赖于所述第一加密机制的输入或输出之一;以及使用所述第 一加密机制加密所述数据序列中的第三数据块,其中通过所述第 一加密机制加密所述第三数据块依赖于所述第二加密机制的输入或输出之一。15. 如权利要求14中所述的计算4/l4呈序产品,其中所述第一加密机制 和所述第二加密机制中的至少一个机制实现明文块链接(PBC )加密方法。16. 如权利要求14中所述的计算机程序产品,其中所述第一加密机制 和所述第二加密^4,J中的至少一个机制实现密码块链接(CBC )加密方法。17. 如权利要求14中所述的计算机程序产品,其中所述第一加密机制 实现密码块链接(CBC)加密方法并且所述第二加密机制实现明文块链接 (PBC)加密方法,并且其中所述第一加密机制使用针对所述数据序列中 的上一数据块生成的密码来生成所述CBC加密方法的第一密钥,并且所 述第二加密机制使用所述数据序列中的上一数据块的明文数据来生成所述 PBC加密方法的第二密钥。18. 如权利要求17中所述的计算机程序产品,其中使用实现所述CBC 加密方法的所述第 一加密机制来加密所述数据序列中的所有奇数数据块, 并且使用实现所述PBC加密方法的所述第二加密机制来加密所述数据序...

【专利技术属性】
技术研发人员:SP马伦R尚卡尔U切利克坎WC康克林
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利