使用公钥加密进行文档控制的系统和方法

文档序号:7679905阅读:144来源:国知局
专利名称:使用公钥加密进行文档控制的系统和方法
使用公钥加密进行文档控制的系统和方法
背景技术
在工商界中现在几乎普及的从基于纸件的文档到电子文档的迁移
的结果是,文档管理对于大型、中M甚至小型公司、企业和组织而言
已成为一个重要问题。
旧的、废弃的和多余的文档耗费联网的计算机系统中的大量服务 器空间。结果,这些实体可能需要经常地增加服务器空间,或采取实 现起来可能昂贵且不切实际的频繁文件备份和清除操作。此外,由于 现在的在计算机间以电子邮件发送文档的普通业务,单个文档可产生 在一个或多个不同计算机系统上存储的多个不同的文档或版本。因为 这些系统对现有文档仅采取快照一随后文档经常被更新或改变并且这 些新版本还在对较早版本没有引用或索引的情况下被保存,所以备份 和恢复系统可能会使该问题加剧。另外,当用户将网络服务器上的文 档复制到本地计算机系统,诸如膝上型或其他没联网的计算机系统时, 网络控制的文件维持系统可能不能执行例行删除或其他文件维持操
作。这些因素可能结合以增加文档管理的复杂性和对信息技术(IT)管
理员的保持。


为了便于更全面地理解本公开,现在将参考附图,在附图中,相 同的元素由相同的附图标记来表示。这些附图不应该被解释为限制本 公开,而意在仅为示例性的。
图l是根据本公开的至少一个实施例的用于文档保持的示例性的
基于公钥加密的系统的示意图2是根据本公开的至少一个实施例的将文档保存在用于文档保持的基于公钥加密的系统中的示例性方法的流程图3是根据本公开的至少一个实施例的使用用于文档保持的基于 公钥加密的系统来访问数据存储装置中存储的加密文档的示例性方法 的流程图4是示出根据本公开的至少一个实施例的用于在客户端应用、令 牌/密钥加密服务器和数据服务器之间进行对接的基于公钥加密的文档 保持接口程序的示例性组件的框图;以及
图5是示出根据本公开的至少一个实施例的文档破坏策略信息的 示例性的令牌/密钥加密表。
具体实施例方式
下面的描述意在传达对实施例的彻底理解,通过提供多个特定实 施例和涉及基于公钥加密的文档保持和管理的细节来描述所述实施 例。然而,应该明白,本公开不限于仅为示例性的这些特定实施例和 细节。还应该理解,本领域的一个普通技术人员,依据特定设计和其 他需求,按照已知系统和方法,将明白,以任何多个可选的实施例的 形式为本发明预期的目的和好处而使用本发明。
如这里所使用的,将使用术语"文档"来表示电子文件。用户应 用是可用于创建文档的程序。例如,可在用户应用(诸如,文本编辑 器、word处理应用、电子表格应用、呈现程序、便携式文档应用、数 据库等)中创建文档。
现在参照图1,描述了根据本公开的至少一个实施例的用于文档 保持的示例性的基于公钥加密的系统10的示意图。图1的示例性系统 10可包括计算机系统100,计算机系统100包括一个或多个用户应用 110、在所述一个或多个用户应用110之间用作接口的接口程序和当要 保存或访问电子类的文档时的保持系统组件,其中在各种实施例中可 使用所述一个或多个用户应用110来创建、访问和修改电子文档。系 统10还可包括操作系统(OS) 130,所述OS 130包括访问驱动器132和通信堆栈134。系统10还可包括密钥/令牌服务器140和一个或多个 数据存储装置150。应该明白,所述一个或多个数据存储装置150可包 括基于网络的存储装置、本地存储装置或文件管理系统。
在示例性实施例中,当用户尝试从用户应用IIO保存文档时,接 口程序120 (这里,在一些情况下被称为"垫片(shim)")可被自动 调用。然后,接口程序120可获得关于对当前文档的破坏策略的破坏 信息,并通过使用操作系统的通信堆栈134可获得用于对文档加密的 加密密钥。通过使用操作系统的访问驱动器132,接口程序120可在数 据存储装置150上将文档保存为加密文档,所述加密文档具有报头中 的指向密钥/令牌服务器140上的密钥的文档中的指针。密钥长度可以 是任何合适的长度。系统的各个实施例不依赖特定长度。如果在很好 私密性(PGP)环境下拥有该密钥,则该密钥可以为4096比特长。当 用户应用110随后尝试获得对来自数据存储装置150的加密文档的访 问时,接口程序120可被自动调用,在从文档报头中读取适当的指针 信息之后,接口程序120可向密钥/令牌服务器140请求密钥。如果该 密钥依旧有效,即密钥尚未超过在破坏策略中指定的有效期,则可将 该密钥返回到垫片,从而可通过请求应用来解密并浏览该文档。否则, 如果用于该文档的密钥已经期满,则接口程序120可向请求应用发送 表明该文档不再可用和/或已被破坏的消息。
图2是根据本公开的至少一个实施例的将文档保存在用于文档保 持的基于公钥加密的系统中的示例性方法的流程图。该方法的操作开 始于框200。在框205,请求文档保存操作。在各种实施例中,可经由 用户接口通过用户向用户应用提交保存命令来发起该文档保存操作。 在其他实施例中,可自动发起该文档保存操作,例如,通过由用户应 用执行的自动保存操作和/或每当创建新文档时。
在框210中,响应于接收到的保存请求,可自动调用用户接口程 序。在示例性实施例中,用户接口程序或在这里有时称为垫片可包括相对小(与用户应用的大小相比)的软件程序,从而能使其调用诸如
通信堆栈134和访问驱动器132的操作系统组件,所述软件程序是请 求应用在其上运行的用户的计算机系统100的操作系统。因此,垫片
可在服务器计算机上运行,和/或垫片可在网络或其他分布的计算环境 中的每个用户的计算机上本地地运行。以这种方式,不管文档被本地 地存储或被存储在集中服务器上,可以维持文档控制。另外,在示例 性实施例中,垫片可检测应用的请求,从而垫片可能不需要修改用户 应用本身以利用在当前公开中描述的各种系统和方法。
在框215中,例如,接口程序120可通过获得与对当前文档的破 坏有关的一个或多个规则来获得文档的破坏信息。可经由用户输入获 得所述破坏信息,S卩,可提示用户输入与对文档的破坏有关的一条或 多条信息,诸如破坏策略。另外,可提示用户从破坏信息和/或破坏策 略的预填充列表中选择一个或多个条目。替换地,或者另外,可从先 前指定的破坏策略和/或默认策略来获得破坏信息。例如,接口程序可 访问默认破坏策略,诸如在五年后删除文档。替换地,可能还存在为 与特定业务单位、人、团队等有关的文档指定的策略。破坏策略可应 用于特定类型、类别、时间段或其他标准的文档。另外,可经由从接 口程序120到密钥服务器140的电子请求来获得破坏信息。如这里所 讨论的,通过破坏文档的密钥来影响对文档的"破坏"。 一旦密钥被 破坏,就无法打开/阅读用该密钥创建的任何文档。因此,在密钥期满 之后不管文档位于什么地方,其是不可读的。
在框220中,可基于破坏信息将文档存储在指定的存储装置中。 在示例性实施例中,可对文档加密,并且可同时删除任何未加密版本。 另外,文档可优选地包括指向密钥服务器140上的密钥的指针,其中 只要所述密钥是可用的,就能在后来访问文档时使用所述密钥来对文 档解密。每当首次本地地或在基于网络的服务器上保存文档时,可执 行图2的示例性方法。另外,应该理解,可将图2中描述的技术应用于先前没有经受所 述技术的已经存在的文档。例如,如果请求保存操作,则可调用接口 程序来确定当前文档是否包括指向加密密钥的指针。如果包括,则以 在框200的上下文中描述的加密形式来保存所述文档。否则,可根据
本发明的各种实施例,执行在框215中开始的步骤,以将所述文档"迁
移"到文档保持系统。
现在参照图3,描述了根据本公开的至少一个实施例的使用用于
文档保持的基于公钥加密的系统来访问数据服务器中存储的加密文档
的示例性方法的流程图。该方法的操作在步骤300中开始。在步骤305 中,可调用接口程序。在各种实施例中,经由用户应用的接口通过用 户请求来进行步骤305,以访问在存储装置150中存储的文档。在示例 性实施例中,当接收到此类文档访问请求时可自动调用接口程序120。
在框310中,接口程序305可从数据存储装置(诸如,图l中的 数据存储装置150)请求文档。在各种实施例中,该步骤可包括通过使 用操作系统130的访问驱动器132 (如图1所示)来请求文档。如上所 述,数据存储装置150可位于正运行请求应用的相同的计算机系统, 例如,图1中的计算机系统100中。另外,例如,当请求访问网络服 务器上存储的文档时,数据存储装置150可为远程的。
在框315中,在检索了所请求的文档之后,接口程序120可读取 加密密钥标识符,所述加密密钥标识符可优选地位于加密文档的文档 报头中。在各种实施例中,加密密钥标识符可指向密钥服务器(诸如, 图1中的密钥服务器140)上的文件、索引或其他可寻址数据结构。应 该理解,对于没有根据这里所公开的各种系统和方法存储的文档,即 没有加密的文档,图4的方法的剩余框是可选的,这是因为检索到的 文档可被直接提供给请求用户应用。
在框320中,接口程序120可从密钥服务器140请求在文档中标识的加密密钥。密钥服务器140可相对于接口程序120位于不同的物
理位置,只要密钥服务器140可被远程(即,通过通信网络)访问即 可。在步骤325,可确定密钥是否有效,进而可指示当前文档是否被破 坏,并且因此不再是可访问的。根据至少一个实施例,所述确定可基 于用于当前文档的加密密钥的存在/不存在。如果在框325中,从密钥 服务器没有返回密钥,则接口程序可将"文档不再可用"消息返回到 请求应用。在至少一个实施例中,可向用户呈现指示所请求的文档不 再可用或已被破坏的消息和/或弹出屏。否则,如果在框325中,密钥 服务器返回了密钥,则操作可进行到框335,在那里可通过使用提供的 密钥对文档解密,并经由请求应用的接口向用户呈现解密文档。
现在参照图4,描述了示出根据本发明至少一个实施例的用于在 客户端应用、令牌/密钥加密服务器和数据服务器之间进行对接的基于 公钥加密的文档保持接口程序120的示例性组件的框图。如上面所讨 论的,在各种实施例中,可将程序120安装在用户计算机系统(诸如, 图1中的计算机系统100)上。另外,可将程序120保存在一个或多个 集中的网络计算机系统上。程序120可包括可提供用于使一个或多个 用户应用保存加密文档的功能的各种模块,以访问加密文档,并便于 组织的、集中的文档保持和破坏。在图4的示例中,存在应用接口模 块122、操作系统(OS)接口模块124、令牌/密钥服务器接口模块126 和数据存储接口模块128。应该明白,尽管在一些示例性实施例中,每 个模块可包括基于软件的程序的组件,每个模块还可被配置为在计算 机硬件、 一个或多个专用集成电路(ASIC)、硬件和软件的组合或其 他合适的配置上运行的单独的软件应用。此外, 一个或多个模块可被 组合,或被分成多个附加模块。另外,可利用附加模块和/或与图4中 示出的模块不同的模块。
在各种实施例中,应用接口模块122可包括用于与一个或多个用 户应用对接的一个或多个应用程序接口 (API)。如上面所讨论的,每 当兼容的用户应用请求文档和/或尝试保存文档时,可自动调用应用接口模块122。另外,应用接口模块122可从一个或多个兼容的用户应用
接收文档保存和文档访问请求。
操作系统(OS)接口模块124可允许接口程序120利用OS的现 有通信堆栈和访问服务器来访问一个或多个数据存储装置和密钥/令牌 服务器。在各种实施例中,OS接口模块124可专用于特定的操作系统, 诸如,例如WINDOWS、 LINUX、 MAC OS或其他合适的操作系统。 在其他实施例中,OS接口模块124可与多个不同的操作系统一起使用, 即,OS接口模块124可包括用多个不同的操作系统执行多余通信功能 的程序代码。
令牌/密钥接口模块126可与本地和/或远程加密密钥服务器(诸 如,图1中的密钥服务器140)对接。例如,在新创建的文档的文档存 储操作期间,接口程序120可利用令牌/密钥接口模块126来访问密钥 服务器140,以获得用于将被保存的文档的加密密钥信息。如上面所讨 论的,密钥服务器可提供用于标识对当前文档的破坏策略的信息,可 提示用户提供这种信息,和/或可使用一组默认策略信息。另外,可使 用用户指定的其他文档简档字段来确定合适的破坏策略。
作为另一示例,在文档访问操作中,令牌/密钥接口模块126可从 请求的文档(诸如,检索的加密文档的报头部分)读取密钥标识信息, 并将该信息传送给密钥服务器140,以确定该密钥是否依旧有效。如果 该密钥依旧有效,则令牌/密钥接口模块126可接收在对请求的文档解 密过程中将使用的密钥。否则,令牌/密钥接口模块126可从密钥服务 器接收密钥不可用的指示。如果没有返回密钥,则令牌/密钥接口模块 126可假定没有密钥可用,并因此向用户应用指示请求的文档不再可 用。
应该明白,图4中示出的特定模块仅为示例性的,不应该被解释 为必须或穷尽的。在各种实施例中,可期望使用比图4中示出的模块更多、更少或甚至不同的模块。
现在参照图5,描述了示出根据本发明的至少一个实施例的文档 破坏策略信息的示例性的令牌/密钥加密表400。应该明白,尽管在图5
的示例中将各种加密密钥/策略存储在单个表/文件400中,但在其他实
施例中,可以单独的数据结构存储一个或多个加密密钥/策略。在各种
实施例中,可通过单独的用户接口来定义一个或多个策略,通过所述 用户接口用户指定加密密钥、策略名称、破坏日期和/或策略所有人(即,
组织单位、人和/或责任实体)。在图5的示例中,存在分别由财务总 监(CFO)和总顾问(GC)所拥有的两个活动(active)破坏策略一billing records-2001和merger diligence。因为01/01/2004的破坏日期已经过去, 所以还存在标题为"billing records-1999"的密钥丢失的不活动(inactive) 策略。因此,如果请求了包括指向billingrecords-1999策略的指针的文 档,则密钥服务器将不返回加密密钥。因此,不管文档可以被存储在 什么地方,文档都将不再可访问。
本公开的各种实施例的特征在于,通过在文档创建时指定加密密 钥,将有效地破坏所有后续的版本,即根据指定的破坏策略使其变得 不可访问。另一特征在于,可通过单个破坏策略来控制对多个不同文 档的破坏,即不但是相同文档的不同版本,而是与相同的策略所有者 有关的独特文档。例如,如果在公司/企业/组织等中的特定项目上工作 的一个或多个人在与相同项目有关的多个系列文档上工作,则可为与 该项目有关的文档指定单个保持策略。每当创建与项目有关的新文档 时,用户可选择相应的策略,或可基于用户提供的其他文档标识字段 自动选择该策略。
在前面的说明书中,已经参照附图描述了各种示例性实施例。然 而,清楚的是,在不脱离在所附权利要求书中阐述本发明的较宽的范 围的情况下,可对其进行各种修改和改变,并可实现其他实施例。相 应地,说明书和附图被认为仅为示例性的,而非限制的目的。
权利要求
1.一种方法,包括响应于输入到应用中的用户保存命令,从所述应用将所述文档保存到电子存储介质;接收关于对所述文档的破坏的至少一个规则;以及与指向加密密钥服务器上的密钥的指针一起以加密形式存储所述文档。
2. 根据权利要求l所述的方法,还包括在以加密形式存储了所 述文档之后,破坏未加密文档。
3. 根据权利要求l所述的方法,其中,保存文档包括调用加密 接口程序。
4. 根据权利要求3所述的方法,其中,接收关于对所述文档的破 坏的至少一个规则包括接收从用户输入到所述加密接口程序的至少一个规则。
5. 根据权利要求3所述的方法,其中,接收关于对所述文档的破坏的至少一个规则包括接收从所述加密密钥服务器输入的至少一个 规则。
6. 根据权利要求l所述的方法,其中,接收关于对所述文档的破坏的至少一个规则包括接收文档破坏日期。
7. 根据权利要求6所述的方法,其中,存储所述文档包括与所 述加密密钥服务器上的所述文档的密钥相关联地存储所述文档破坏日 期。
8. 根据权利要求7所述的方法,还包括在所述文档破坏日期破 坏所述密钥,从而使所述文档不可用。
9. 一种包含存储在其中的计算机可读程序代码的计算机可读存 储介质,所述程序代码被配置为使处理器执行权利要求1的方法的步 骤。
10. —种系统,包括 加密密钥服务器,被配置为当请求应用最初保存文档时,向所述请求应用提供加密密钥; 存储所述加密密钥;以及只要所述密钥保持有效,响应于所述文档被随后打开,向请 求应用提供所述密钥。
11. 根据权利要求IO所述的系统,其中,所述服务器还被配置为 根据一个或多个密钥破坏规则破坏所述密钥。
12. 根据权利要求ll所述的系统,其中,从用户输入接收所述一 个或多个规则。
13. 根据权利要求ll所述的系统,其中,所述一个或多个规则是 所述加密密钥服务器的默认规则。
14. 根据权利要求ll所述的系统,其中,所述一个或多个规则指 定用于所述文档的所述加密密钥的期满日期。
15. 根据权利要求IO所述的系统,其中,所述加密服务器包括到 加密请求软件应用的基于软件的接口,所述加密请求软件应用为在计 算装置上运行的一个或多个用户应用对文档进行加密和解密。
16. 根据权利要求15所述的系统,其中,当随后向所述加密服务 器请求特定密钥时,则所述服务器被配置为,如果所述密钥还有效, 则提供所述密钥,否则向所述请求软件应用提供所述密钥不可用的指 示。
17. —种方法,包括 接收将文档控制策略应用于文档的请求; 将对加密密钥的请求发送到密钥服务器;将与所述文档相关联的文档策略信息发送到所述密钥服务器; 响应于对加密密钥的所述请求和所述文档策略信息而接收所述加 密密钥;响应于接收到所述加密密钥而用所述加密密钥对所述文档加密;以及与用于获得解密密钥的信息一起以加密形式存储所述文档。
18. 根据权利要求17所述的方法,还包括 接收访问加密文档的请求;响应于所述请求而将对所述解密密钥的请求发送到所述密钥服务器;如果所述密钥还有效,则接收所述解密密钥;以及 用所述密钥对文档解密。
19. 一种方法,包括从客户端接收对用于加密文档的加密密钥的请求,所述请求包括 文档策略信息;响应于所接收的请求,提供加密密钥; 将所述文档策略信息与所述加密密钥相关联;以及 将所述加密密钥发送到请求客户端。
20. 根据权利要求19所述的方法,还包括当随后尝试打开所述文档时,从所述客户端接收对解密密钥的请求;验证所述文档策略信息指示所述文档还可用;以及 如果所述文档可用,则将所述解密密钥发送到所述客户端。
全文摘要
提供了使用公钥加密进行文档控制的系统和方法。接口程序用作用户应用与数据存储系统之间的软件接口,用户应用用于创建和访问文档,并且数据存储系统以加密形式存储文档。当文档被保存时,获取与获得的对文档的破坏对应的信息。用指向令牌/密钥服务器上的加密密钥的指针来加密和存储文档。当文档随后被访问时,接口程序将读取所述指针,并尝试检索所述密钥。如果根据破坏策略密钥已期满,则文档不可访问。否则,通过使用所述密钥来对所述文档解密。可根据相同的破坏策略甚至相同的密钥来保存多个文档,从而用最少的处理不管文档的位置来显著增强“破坏”文档的能力。
文档编号H04L9/00GK101554010SQ200780041040
公开日2009年10月7日 申请日期2007年11月5日 优先权日2006年11月3日
发明者约翰-弗朗西斯·莫根 申请人:联合网络系统有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1