提供对数字文件的差异化访问的制作方法

文档序号:6352434阅读:158来源:国知局
专利名称:提供对数字文件的差异化访问的制作方法
提供对数字文件的差异化访问相关申请的交叉引用
本申请包含序列号为TBD (代理人案号201000333-1)、标题为“Application ofDifferential Policies to at Least One Digital Document”、于与文本相同的日期提交的共同主题待审且共同转让的PCT申请,藉此该PCT申请的公开内容通过引用以其整体被并入。
背景技术
近年来,存在远离在纸上打印信息而朝着使用包含数字内容的数字文件前进的增加的趋势。数字文件的示例包括例如便携式文件格式(Pdf)文件、电子表格、电子图、通过使用文字处理应用而生成的文件、以及html页面。数字文件还可以包括复合文件,复合文件包括不同类型的格式的混合。在纸件文件的情况下,使用个人的签名或其他手写标记来确定被授权的个人是否进行了对文件的各种改变或添加。然而,这种修改对于数字文件来说不可能或不方便,因为这些类型的修改将需要个人打印数字文件、对文件进行签名或以其他方式对文件进行标记,并扫描所标记的文件以证明该个人进行了修改。控制对文件(纸件和电子二者)的访问的这种方式容易被攻击并且可能容易被伪造。已经提出用于防止或减少对数字文件的攻击和伪造的各种技术。典型地,这些技术采用数据库,在数据库上存储数字文件,并且,通过防止用户对数据库或数据库所连接至的网络的访问来控制对该数据库或网络的访问,除非该用户持有某秘密信息,诸如用户标识和密码。同样地,为了使这些安全性技术实行对数字文件的访问控制,用户需要被授权对数据库或网络进行访问。然而,典型地,出于各种安全性原因(诸如,为了防止拥有该数据库或网络的公司或政府实体的承包商或非雇员进行访问),禁止或不期望对该数据库或网络进行访问。通常,出于简明和适应性的目的,作为整体提供或者根本不提供访问控制。


根据参照附图的以下描述,本发明的特征将变得对本领域技术人员来说显而易见,在附图中:
图1图示了根据本发明的实施例的数字文件工作流程的简化示意 图2示出了根据本发明的实施例的、包含图1中所描绘的差异化访问控制设备的差异化访问提供系统的简化框 图3示出了根据本发明的实施例的、用于在多个工作流程参与者当中提供对数字文件的差异化访问的方法的流程图,其中,工作流程参与者中的至少一个处于公共安全环境之外;
图4示出了根据本发明的实施例的、将差异化访问提供给多个工作流程参与者所依照的方式的图;以及
图5示出了根据本发明的实施例的、可用作用于实现或执行图3中所描绘的过程中的一个或多个的平台的计算机系统的框图。
具体实施例方式出于简明和示意的目的,通过主要参照示例实施例来描述本发明。在以下描述中,阐述了许多具体细节,以提供对实施例的透彻理解。然而,对本领域普通技术人员来说将显而易见的是,可以在不限于这些具体细节的情况下实施本发明。在其他实例中,未详细描述公知的方法和结构,以避免不必要地模糊实施例的描述。本文公开的是一种用于在多个工作流程参与者当中提供对数字文件的差异化访问的方法和设备,其中,工作流程参与者中的至少一个处于公共和统一安全的环境中的至少一个之外。换言之,例如,多个用户可能正在具有不同安全性级别的环境中访问文件。数字文件可以包括复合文件,复合文件由具有分离的文件或可寻址的文件片段的形式的多种个体可寻址和可访问的部分(单元)组成。例如,这些单元可以包括html片段、xml节点、展示幻灯片、文字处理文本框、电子表格文件的部分、包含图的电子对象、具有flash视频能力的电子对象等等。贯穿本公开,将个体可寻址和可访问部分记载为“原子单元”。此外,特定数字文件的原子单元可以包括与彼此相同的格式或不同的格式。还如本文所公开的,可以通过控制针对数字文件或数字文件中包含的一个或多个原子单元而向每一个工作流程参与者供给的密钥的类型和数目,来提供由工作流程参与者对数字文件或对数字文件中包含的原子单元中的一个或多个的差异化访问。因此,在一个方面,可以以相对简单且低廉的方式提供并实行对工作流程参与者授权的访问的差异化级别。贯穿本公开,附图标记后的术语“η”意在表示大于I的整数值。此外,术语“一”和“一个”意在表示至少一个特定元素。首先参照图1,其中示出了根据本发明的实施例的数字文件工作流程100的简化图。对本领域普通技术人员来说应当显而易见的是,图1中所描绘的图表示概括性图示,并且,在不脱离数字文件工作流程100的范围的前提下,可以添加其他组件或者可以移除、修改或重新布置现有组件。数字文件工作流程100被描绘为包括差异化访问控制设备102和多个工作流程参与者I IOa-110η。数字文件工作流程100还被描绘为包括数字文件120,数字文件120包含多个原子单元122a-122n。一般来讲,差异化访问控制设备102被配置为通过以受控方式将用于访问原子单元122a-122的密钥分发给工作流程参与者IlOa-1lOn中的每一个,来差异化控制由工作流程参与者IlOa-1lOn中的每一个对数字文件120中的原子单元122a_122n中的一个或多个的访问。差异化访问控制设备102可以包括硬件设备(诸如,计算机、服务器、电路等),该硬件设备被配置为执行在差异化控制对原子单元122a-122n的访问的过程中的各种功能。以下更详细地讨论差异化访问控制设备102所执行的各种功能。工作流程参与者IlOa-1lOn —般表示以下计算设备,通过这些计算设备,工作流程参与者IlOa-1lOn可以接收原子单元122a_122n中的一个或多个,并在被授权充分的访问时执行对原子单元122a-122n中的一个或多个的查看、编辑和确认中的至少一项。所述计算设备可以包括例如个人计算机、膝上型计算机、平板计算机、个人数字助理、蜂窝电话坐寸O根据实施例,差异化访问控制设备102处于安全环境中,在该安全环境中,数字文件拥有者/创建者/主人可访问工作流程控制设备102,并且,工作流程参与者IlOa-1lOn的一些或所有计算设备处于该安全环境之外。换言之,工作流程参与者IlOa-1lOn中的一些或所有不可以访问来自控制对数字文件120的访问的公共数据库的数字文件120。取而代之,通过例如电子邮件、共享服务器、直接文件传送、可移除存储介质等,向工作流程参与者IlOa-1lOn并在工作流程参与者IlOa-1lOn当中供给数字文件120。在对工作流程控制设备102的安全环境的访问不切实际或被禁止的实例中,工作流程参与者IlOa-1lOn中的一些或所有可能未被授权该访问。数字文件120可以包括具有数字形式的任何合理地合适的类型的文件,并可以包括一个或多个数字文件,这些数字文件可以具有相对于彼此相同或不同的格式。合适的文件类型的示例包括例如便携式文件格式、电子表格、JPEG或任何其他图像、文字处理文件、超文本标记语言(html)等。此外,原子单元122a-122n—般包括数字文件120内的个体可寻址元素,诸如签名行、电子表格内的区格或列、段落、图形框等。如本文以下更详细地讨论的那样,差异化访问控制设备102被配置为识别要对工作流程参与者IlOa-1lOn中的每一个授权的差异化访问级别,并且基于所确定的访问级别,识别(选择)一个或多个密钥130并(可选地)将该一个或多个密钥130供给至工作流程参与者110a-110n。此外,差异化访问控制设备102被配置为生成(或导出)所需的加密和签名密钥,对数字文件120的一个或多个原子单元122a-122n进行加密和签名,并将加密和签名后的文件140供给至第一工作流程参与者110a。此外,数字文件120被配置为由第一工作流程参与者I IOa供给至第二工作流程参与者IlOb (例如,由第一工作流程参与者将数字文件发电子邮件至第二参与者或者通过邮寄包含数字文件的⑶等),由第二工作流程参与者IIOb供给至第三工作流程参与者110c,以此类推。可替换地,数字文件120可以由工作流程参与者IlOa-1lOn检索。根据示例,在工作流程参与者IlOa-1lOn中的至少一些之间供给数字文件120所依照的顺序是预定的。在另一示例中,工作流程参与者IlOa-1lOn访问数字文件120所依照的顺序可以不是预定的。此外,由于差异化访问控制设备102可以处于文件主人/拥有者/创建者的某安全环境内,并且工作流程参与者IlOa-1lOn中的至少一些处于公共安全环境之外,因此差异化访问控制设备102不必须涉及:在将加密和签名后的文件140第一次传送至第一工作流程参与者IlOa后,由工作流程参与者IlOb-1lOn供给和/或检索数字文件120。现在特别参照图2,其中示出了根据示例的、包含图1中所描绘的差异化访问控制设备102的差异化访问提供系统200的简化框图。对本领域普通技术人员来说应当显而易见的是,图2中所描绘的框图表示概括性图示,并且,在不脱离差异化访问提供系统200的范围的情况下,可以添加其他组件或者可以移除、修改或重新布置现有组件。如图2中所示,差异化访问控制设备102包括用户界面模块202、密钥关联模块204、加密模块206、签名模块208、访问级别识别模块210、密钥识别模块212、密钥生成/导出模块213、密钥供给模块214和数字文件供给模块216。模块202-216可以包括软件模块、硬件模块或者软件和硬件模块的组合。因此,在一个实施例中,模块202-216中的一个或多个包括电路组件。在另一实施例中,模块202-216中的一个或多个包括计算机可读存储介质上存储的软件代码,该软件代码可由处理器执行。在任何方面,差异化访问控制设备102被配置为由处理器220实现和/或执行。因此,例如,差异化访问控制设备102可以包括包含处理器220的计算设备的集成和/或追加的硬件设备。作为另一示例,差异化访问控制设备102可以包括计算机可读存储设备,在该计算机可读存储设备上存储所述模块202-214中的每一个的软件,并且由处理器220执行该软件。进一步如图2中所示,处理器220被配置为从输入设备230接收输入。输入设备230可以包括例如以下用户界面:通过该用户界面,用户可以将数字文件120供给至差异化访问控制设备102中。输入设备230还可以包括以下用户界面:通过该用户界面,用户可以针对工作流程参与者IlOa-1lOn中的每一个定义将被授权给原子单元122a_122n中的一个或多个的访问级别。在任何方面,处理器220被配置为执行或实现差异化访问控制设备102,以差异化地控制由工作流程参与者对原子单元122a-122n中的一个或多个的访问。差异化访问提供系统200还包括输出界面240,通过该输出界面240,可以将密钥130以及加密和签名后的文件140供给至工作流程参与者IlOa-1lOn中的一个或多个。存在密钥可以通过其被分发给对应工作流程参与者的不同机制。这些不同机制的非穷举示例包括:
O文件主人/作者/创建者可以将适当的密钥130直接(以加密的形式)发电子邮件给每个工作流程参与者I IOa-1 IOn。2)可以要求工作流程参与者IlOa-1lOn登录至其中存储密钥130的云基础服务,以检索适当的密钥130。3)可以以加密或非加密的形式将适当的密钥130存储在可移除存储介质(诸如,紧致盘、便携式拇指驱动器等)上,并手动地将该适当的密钥130分发给工作流程参与者llOa-llOn。4)工作流程参与者IlOa-1lOn可能已经持有来自先前使用的适当的密钥130。5)可以将适当的密钥130包含在数字文件自身内。在序列号为TBD (代理人案号201000358-1)的美国专利申请中讨论该示例的更详细讨论。6)可以通过包括例如生物统计(诸如,语音、虹膜和/或指纹识别和确认)的安全性代理来访问适当的密钥。在传送至工作流程参与者IlOa-1lOn之前,可以将密钥130和签名后的文件140存储在数据存储器218中。数据存储器218可以包括易失性和/或非易失性存储器,诸如DRAM、EEPR0M、MRAM、相变RAM (PCRAM)、忆阻器(Memristor)、闪存等。附加地或可替换地,数据存储器218可以包括被配置为从可移除介质(诸如,软盘、CD-ROM、DVD-ROM或者其他光或磁介质)读取并写入到可移除介质的设备。针对图3来更详细地描述可以依照其实现差异化访问控制设备102的模块202-216的各种方式,图3描绘了根据本发明的实施例的用于在多个工作流程参与者IlOa-1lOn当中提供对数字文件的差异化访问的方法300的流程图,其中,该多个工作流程参与者IlOa-1lOn中的至少一个处于公共安全环境之外。对本领域普通技术人员来说应当显而易见的是,方法300表示概括性图示,并且,在不脱离方法300的范围的情况下,可以添加其他步骤或者可以移除、修改或重新布置现有步骤。
特别参照图1和2中所描绘的差异化访问控制设备102来进行对方法300的描述。然而,应当理解,在不脱离方法300的范围的情况下,可以在与差异化访问控制设备102不同的设备中实现方法300。在步骤302处,访问将被置于多个工作流程参与者IlOa-1lOn当中的一个工作流程中的数字文件120。例如,差异化访问控制设备102通过用户界面模块202从输入设备230接收数字文件120。作为另一示例,用户指示差异化访问控制设备102访问来自例如数据存储器214的数字文件120。作为另一示例,根据模板(诸如例如,应用形成过程)来创建新数字文件120。 在步骤304处,例如通过密钥关联模块204将第一密钥集合与原子单元122a_122n中的至少一个相关联。第一密钥集合包括加密密钥,或者可替换地,包括加密-解密密钥对以及签名和验证密钥对。此外,尽管图3中未明确地示出,一个或多个附加的密钥集合可以与其他原子单元122a-122n中的一个或多个相关联。因此,例如,密钥集合可以与原子单元122a-122n中的每一个相关联。此外,对于不包含敏感或私密材料的原子单元122a_122n中的一个或多个,密钥集合可以仅包括签名-验证对。此外,第一密钥集合可以与多个原子单元122a-122n相关联,以便例如对工作流程参与者IlOa授权对与第一密钥集合相关联的多个原子单元122a-122n中的每一个的相同级别的访问。在步骤306处,例如通过加密模块206使用一个或多个加密密钥来对一个或多个原子单元122a-122n进行加密。所述一个或多个原子单元122a_122n可以使用任何标准或专有的加密机制,诸如例如对称AES加密、双鱼(Twofish)加密、非对称RSA等。根据实施例,可以使用相应的特殊地生成、导出和/或指派的加密密钥来对将被提供以差异化访问级别的原子单元122a-122n中的每一个进行加密。在步骤308处,例如通过签名模块208使用一个或多个签名密钥来对一个或多个加密后的原子单元122a-122n进行签名。可以例如通过使用数字签名算法、基于RSA的签名等来对一个或多个加密后的原子单元122a-122n进行签名。根据实施例,使用特殊地指派、生成或导出的签名密钥来对已被加密的原子单元122a-122n中的每一个进行签名。根据实施例,在执行步骤304-308之前,可以考虑对将要针对将被授权给每个工作流程参与者的各个访问级别而对一个或多个原子单元122a-122n中的哪些进行加密的确定,来确定原子单元122a-122n中的哪些需要差异化访问。同样地,可以在步骤304-308之前进行关于将要对原子单元122a-122n中的哪些进行加密的确定。在步骤310处,例如通过访问级别识别模块210识别将被授权给工作流程参与者IlOa-1lOn中的每一个的、对一个或多个原子单元122a_122n的访问级别。更特别地,例如,访问级别识别模块210可以跟踪通过用户界面模块202从输入设备230接收到的指令,这些指令识别将接收数字文件120以及将被授权给工作流程参与者IlOa-1lOn中的每一个的针对一个或多个原子单元122a-122n的差异化访问权限的工作流程参与者110a_110n。此夕卜,访问级别识别模块210可以将从输入设备230接收到的信息存储在数据存储器218中。在另一示例中,将被授权给一个或多个原子单元122a-122n的访问级别可以被存储在数据存储器218中,并且,访问级别识别模块210可以访问数据存储器218以检索访问级别信肩、O根据示例,可以针对一个或多个原子单元122a_122n中的每一个而对工作流程参与者IlOa-1lOn授权“不许访问”级别、“只读访问”级别和“修改访问”级别之一。同样地,例如,可以针对加密和签名后的数字文件140中包含的原子单元122a-122n而对工作流程参与者IlOa授权不同的访问级别。此外,可以针对原子单元122a-122n中的一个或多个而对第一工作流程参与者IlOa授权与第二工作流程参与者IlOb不同的访问级别。对于“不许访问”级别下的原子单元122a_122n,对工作流程参与者IlOa授权用于接收原子单元122a-122n中的一个或多个的能力,但不对工作流程参与者IlOa授权用于打开或以其他方式读取或修改这些原子单元的能力。同样地,例如,工作流程参与者IlOa-1lOn可以访问包含工作流程参与者IlOa已被针对其授权“不许访问”级别的原子单元122a-122n的数字文件120,但可能不能够读取或修改那些原子单元122a_122n。然而,可能要求该工作流程参与者IlOa认证该工作流程参与者IlOa已被针对其授权不许访问级别的原子单元122a-122n以及该原子单元122a_122n中的所有其他原子单元。例如,该情形可能在已经对工作流程参与者IlOa授权了用于查看原子单元122a-122n中的一个或多个的访问、但尚未对工作流程参与者IlOa授权用于查看原子单元122a-122n中的其他原子单元的访问时发生。然后,可以要求工作流程参与者IlOa将数字文件120传送至可能已被针对工作流程参与者IlOa不可访问的那些原子单元122a-122n授权了访问权限的一个或多个后续的工作流程参与者110b-110n。作为另一示例,例如,该情形可能在已经针对加密和签名后的数字文件140中包含的原子单元122a-122n中的每一个而对工作流程参与者IlOa授权了“不许访问”级别、但已经选择了该工作流程参与者IlOa来接收用于在稍后的时刻访问数字文件140的适当密钥时发生。对于“只读访问”级别下的原子单元122a_122n,对工作流程参与者IlOa授权用于打开并访问工作流程参与者IlOa已被针对其授权了“只读访问”级别的加密和签名后的数字文件140的原子单元122a-122n的能力。然而,工作流程参与者IlOa未被批准修改那些原子单元122a-122n。在一个方面,接收到加密和签名后的数字文件140的工作流程参与者IlOb可以确定并必须在接收时自动验证原子单元122a-122n何时已被未批准的工作流程参与者IlOa修改,如本文以下更详细地讨论的那样。对于“修改访问”级别下的原子单元122a_122n,对工作流程参与者IlOa授权对于读取和修改工作流程参与者已被针对其授权了“修改访问”级别的原子单元122a-122n的批准。在一个方面,可以向工作流程参与者IlOa供给对应的签名密钥,以使工作流程参与者IlOa能够在对原子单元122a-122n进行修改和加密之后对原子单元122a_122n中的一些或所有进行签名。此外,可能已经给被识别为从第一工作流程参与者IlOa接收加密和签名后的数字文件140的第二工作流程参与者IlOb提供了适当的验证密钥,第二工作流程参与者IlOb可以使用该适当的验证密钥来确定第一工作流程参与者IlOa是否曾被批准修改原子单元122a-122n中的一个或多个。如果至少被授权只读访问,则还可以给第二工作流程参与者IlOb提供适当的解密密钥,以能够对修改后的原子单元122a-122n进行解密。在步骤312处,基于所识别的访问级别,例如通过密钥识别模块212对将针对原子单元122a-122n中的一个或多个向工作流程参与者IlOa-1lOn中的每一个供给哪些密钥130进行识别。因此,例如,对于第一原子单元122a,可以识别第一工作流程参与者IlOa以接收第一密钥集合130,并且可以确定第二工作流程参与者IlOb以接收第二密钥集合130。同样,对于第二原子单元122b,可以确定第一工作流程参与者IlOa以从第二工作流程参与者IlOb接收不同的密钥集合130,以此类推。根据实施例,对于工作流程参与者IlOa-1lOn将被授权“不许访问”级别的那些原子单元122a-122n,密钥识别模块212可以确定那些工作流程参与者IlOa-1lOn将接收用于那些原子单元122a-122n的验证密钥,而不是用于那些原子单元122a_122n的加密或签名密钥。对于工作流程参与者IlOa-1lOn将被授权“只读访问”级别的那些原子单元122a-122n,密钥识别模块212可以确定那些工作流程参与者I IOa-1 IOn将接收用于那些原子单元122a-122n的解密密钥和验证密钥,而不是加密和签名密钥。对于工作流程参与者IlOa-1lOn将被授权“修改访问”级别的那些原子单元122a_122n,密钥识别模块212可以确定那些工作流程参与者IlOa-1lOn将接收用于那些原子单元122a_122n的加密密钥、验证密钥和签名密钥。在步骤314处,基于已在步骤312处被识别为向工作流程参与者IlOa-1lOn中的每一个供给的密钥130,例如通过密钥供给模块214向工作流程参与者IlOa-1lOn中的每一个供给一个或多个密钥130。密钥供给模块214可以通过任何合适的装置将密钥130供给至工作流程参与者IlOa-1lOn,如上文更详细地描述的那样。例如,密钥供给模块208可以通过电子邮件、通过传送可移除存储介质中的密钥、或者通过其他安全通信信道来供给密钥。在步骤316处,例如通过文件供给模块216将(一个或多个)原子单元122a_122n供给至第一工作流程参与者110a。更特别地,例如,文件供给模块214可以将数字文件140供给至第一工作流程参与者110a。现在转至图4,其中示出了根据实施例的、可以将差异化访问提供给多个工作流程参与者IlOa和IlOb所依照的方式的图400。应当理解的是,图400是概括性图示,并且,在不脱离图400的范围的情况下,其中可以包括其他元素。因此,例如,尽管在图400中已经描绘了两个工作流程参与者IlOa和110b,但是应当理解的是,其中公开的各种原理可以适用于任何数目的工作流程参与者llOc-llOn。图400包括两个图表410和420。这两个图表410和420均描绘了两个工作流程参与者IlOa和IlOb以及三个原子单元122a-122c的简单例子。第一图表410描绘了针对原子单元122a-122c中的每一个而提供给工作流程参与者IIOa和IlOb中的每一个的访问级别的示例。第二图表420描绘了基于已针对原子单元122a-122c中的每一个而对工作流程参与者IlOa和IlOb授权的访问级别,来向工作流程参与者IlOa和IlOb供给的对应的密钥集合。在图4中所描绘的示例中,已经针对第一原子单元122a而对第一工作流程参与者授权了修改访问级别,并且针对第二和第三原子单元122b和122c授权了不许访问级别。此外,已经针对第一和第二原子单元122a和122b而对第二工作流程参与者IlOb授权了只读访问级别,并且针对第三原子单元122c授权了修改访问级别。如第二图表420中所不,对于第一原子单兀122a而言,向第一工作流程参与者IlOa供给用于该原子单元122a的加密和解密密钥(E1, D1)以及签名和验证密钥(S1, V1X此外,向第二工作流程参与者IlOb仅供给用于第一原子单元122a的解密和验证密钥(D1,V1X对于第二和第三原子单元122b和122c而言,向第一工作流程参与者IlOa仅供给用于那些原子单元122b和122c的验证密钥(V2,V3)。对于第二原子单元122b而言,向第二工作流程参与者IlOb供给用于该原子单元122b的解密和验证密钥(D2,V2)。对于第三原子单元122c而言,向第二工作流程参与者IlOb供给用于该原子单元122c的加密和解密密钥(E3,D3)以及签名和验证密钥(S3,V3)。在第二工作流程参与者IlOb意欲在被第一工作流程参与者I IOa修改后访问第一原子单元122a的实例中,向第二工作流程参与者IlOb供给第二密钥集合,以能够认证由第一工作流程参与者IlOa对至少一个原子单元122a的修改。第二密钥集合可以不同于第一密钥集合,从而使得第二工作流程参与者IlOb能够验证第一工作流程参与者IlOa的签名。图中提出的操作中的某些或所有可以作为实用程序(utility)、程序或子程序而包含在任何期望的计算机可读存储介质中。此外,所述操作可以由计算机程序体现,这些计算机程序可以以多种形式(活动和不活动二者)存在。例如,它们可以作为由以源代码、目标代码、可执行代码或其他格式的程序指令组成的(一个或多个)软件程序而存在。以上任一项可以被体现在计算机可读存储介质上,计算机可读存储介质包括存储设备。示例性计算机可读存储介质包括传统计算机系统RAM、ROM、EPROM、EEPROM和磁或光盘或带。以上内容的具体示例包括在⑶ROM上或经由互联网下载对程序的分发。因此,应当理解的是,能够执行上述功能的任何电子设备可以执行以上列举的那些功能。现在转至图5,其中示出了根据本发明的实施例而配置的计算设备500的示意表示。设备500包括:一个或多个处理器502,诸如中央处理单元;一个或多个显示设备504,诸如监视器;一个或多个网络接口 508,诸如局域网LAN、无线802.1lx LAN、3G移动WAN或WiMax WAN ;以及一个或多个计算机可读介质510。这些组件中的每一个操作性地稱合至一个或多个总线512。例如,总线512可以是EISA、PC1、USB、火线、NuBus或PDS。计算机可读介质510可以是参与将指令提供给处理器502以供执行的任何合适介质。例如,计算机可读介质510可以是:非易失性介质,诸如光或磁盘;易失性介质,诸如存储器;以及传输介质,诸如同轴电缆、铜线和光纤。传输介质还可以采取声、光或射频波的形式。计算机可读介质510还可以存储其他软件应用,包括文字处理器、浏览器、电子邮件、SP时消息收发、媒体播放器和电话软件。计算机可读介质510还可以存储:操作系统514,诸如Mac OS、MS Windows、Unix或Linux ;网络应用516 ;以及差异化访问控制应用518。操作系统514可以是多用户、多处理、多任务、多线程、实时等。操作系统514还可以执行基本任务,诸如:辨别来自输入设备(诸如,键盘或键区)的输入;将输出发送至显示器504和设计工具506 ;在介质510上跟踪文件和目录;控制外围设备,诸如盘驱动器、打印机、图像捕捉设备;以及管理一个或多个总线512上的业务。网络应用516包括用于建立和维护网络连接的各种组件,诸如,用于实现包括TCP/IP、HTTP、以太网、USB和火线的通信协议的软件。差异化访问控制应用518提供用于如上所述控制数字文件在多个工作流程参与者当中的工作流程的各种软件组件。在特定实施例中,由应用518执行的过程中的某些或所有可以被集成至操作系统514中。在特定实施例中,所述过程可以至少部分地在数字电子电路中、或者在计算机硬件、固件、软件中、或者在其任何组合中实现。尽管贯穿整个即时公开具体地进行了描述,但是本发明的代表性实施例在广泛的应用上具有实用性,并且以上的讨论并不意在且不应当理解为限制,而是作为本发明的方面的示意性讨论而提供。本文已描述和示意的内容是本发明的实施例及其一些变型。本文使用的术语、描述和附图仅通过示意的方式而提出,而并不意在作为限制。本领域技术人员将认识到,许多变型在本发明的精神和范围内是可能的,其中,本发明旨在由以下权利要求及其等同物限定,在权利要求中,除另有指示外,所有术语在其最宽合理意义下表示。
权利要求
1.一种用于在多个工作流程参与者(IlOa-1lOn)当中提供对数字文件(120)的差异化访问的方法(300),其中,所述多个工作流程参与者中的至少一个处于公共和统一安全的环境中的至少一个之外,所述数字文件包括至少一个原子单元(122a),所述方法包括: 将第一密钥集合与所述至少一个原子单元相关联(304),所述第一密钥集合包括加密密钥、签名密钥和验证密钥; 使用所述加密密钥来对所述至少一个原子单元进行加密(306); 使用所述签名密钥来对加密后的至少一个原子单元进行签名(308); 从将被授权给工作流程参与者中的每一个的针对所述至少一个原子单元的多个访问级别中识别访问级别(310); 基于所识别的访问级别, 识别要向工作流程参与者中的每一个供给第一密钥集合中的密钥中的哪个(312); 向工作流程参与者中的每一个供给所识别的一个或多个密钥(314),其中,所述加密密钥使得能够读取,所述签名密钥使得能够修改,以及所述验证密钥使得能够对所述至少一个原子单元进行认证;以及 将加密和签名后的至少一个原子单元供给至所述多个工作流程参与者中的第一工作流程参与者(316)。
2.根据权利要求1所述的方法(300),其中,向工作流程参与者中的每一个供给所识别的一个或多个密钥(314)还包括: 向被识别为针对所述至少一个原子单元而被授权不许访问级别的工作流程参与者供给验证密钥,同时排除用于所述至少一个原子单元的签名密钥和加密密钥; 向被识别为针对所述至少一个原子单元而被授权只读访问级别的工作流程参与者供给加密密钥和验证密钥,同时排除用于所述至少一个原子单元的签名密钥;以及 向被识别为被采用修改访问级别加以授权的工作流程参与者供给用于所述至少一个原子单元的加密密钥、签名密钥和验证密钥。
3.根据权利要求2所述的方法(300),其中,所述加密密钥包括加密密钥和解密密钥的非对称密钥对,以及其中,向被识别为被授权只读访问级别的工作流程参与者进行供给还包括向被识别为被授权只读访问级别的工作流程参与者供给所述至少一个原子单元的解密密钥和验证密钥(314),以及其中,向被识别为被授权修改访问级别的工作流程参与者进行供给还包括向被识别为被授权修改访问级别的工作流程参与者供给所述至少一个原子单元的加密密钥、解密密钥、签名和验证密钥。
4.根据权利要求2所述的方法(300、320),其中,对第一工作流程参与者授权修改访问级别,以及其中,向工作流程参与者中的每一个供给所识别的一个或多个密钥还包括向所述多个工作流程参与者中的被配置为从所述第一工作流程参与者接收修改后的数字文件的第二工作流程参与者供给第二验证密钥,所述第二验证密钥被配置为使得能够对所述第一工作流程参与者针对所述至少一个原子单元的修改进行认证(324)。
5.根据权利要求1所述的方法(300),其中,所述数字文件(120)包括第一原子单元(122a)和第二原子单元(122b),其中,所述第一原子单元包括所述至少一个原子单元,所述方法还包括: 将第二密钥集合与所述第二原子单元相关联,所述第二密钥集合包括第二加密密钥、第二签名密钥和第二验证密钥(304); 使用所述第二加密密钥来对所述第二原子单元进行加密(306); 使用所述第二签名密钥来对加密后的第二原子单元进行签名(308); 从将被授权给工作流程参与者的针对所述第一原子单元的所述多个访问级别中识别第一访问级别(310); 从将被授权给工作流程参与者的针对所述第二原子单元的所述多个访问级别中识别第二访问级别,针对工作流程参与者中的至少一个,所述第二访问级别与所述第一访问级别不同(312); 根据将针对所述第一原子单元和所述第二原子单元而授权给工作流程参与者的所识别的访问级别,向工作流程参与者中的每一个供给所述第一密钥集合中的所识别的一个或多个密钥和所述第二密钥集合中的所识别的一个或多个密钥(314);以及 将包含加密和签名后的第一原子单元和第二原子单元的数字文件供给至所述第一工作流程参与者(316)。
6.根据权利要求5所述的方法(300),其中,向工作流程参与者中的每一个供给所述第一密钥集合中的所识别的一个或多个密钥和所述第二密钥集合中的所识别的一个或多个密钥还包括:向工作流程参与者中的至少一个供给与用于访问所述第二原子单元的多个密钥不同的用于访问所述第一原子单元的多个密钥,从而使所述至少一个工作流程参与者具有针对所述第一原子单元和所述第二原子单元的不同的访问级别(314)。
7.根据权利要求5所述的方法(300),其中,所述数字文件(120)包括多个原子单元(122a-122n),以及其中,所 述第一密钥集合与所述多个原子单元的第一集合相关联,以及其中,所述第二密钥集合与所述多个原子单元的第二集合相关联。
8.根据权利要求1所述的方法(300),其中,识别访问级别(310)还包括: 识别将对所述第一工作流程参与者针对所述至少一个原子单元而授权的第一访问级别(310); 识别将对所述多个工作流程参与者中的第二工作流程参与者针对所述原子单元而授权的第二访问级别(310); 根据将被授权给所述第一工作流程参与者的所确定的访问级别,向所述第一工作流程参与者和所述第二工作流程参与者供给所识别的一个或多个密钥(314)。
9.一种用于在多个工作流程参与者(IlOa-1lOn)当中提供对数字文件(120)的差异化访问的设备(102),其中,所述多个工作流程参与者中的至少一个处于公共和统一安全的环境中的至少一个之外,所述数字文件包括至少一个原子单元(122a-122n),所述设备包括: 一个或多个模块(202-216),其被配置为:将第一密钥集合与所述至少一个原子单元相关联,所述第一密钥集合包括加密密钥、签名密钥和验证密钥;使用所述加密密钥来对所述至少一个原子单元进行加密;使用所述签名密钥来对加密后的至少一个原子单元进行签名;从将被授权给工作流程参与者中的每一个的针对所述至少一个原子单元的多个访问级别中识别访问级别;基于所识别的访问级别,识别要向工作流程参与者中的每一个供给第一密钥集合中的密钥中的哪个;向工作流程参与者中的每一个供给所识别的一个或多个密钥,其中,所述加密密钥使得能够读取,所述签名密钥使得能够修改,以及所述验证密钥使得能够对所述至少一个原子单元进行认证;以及将加密和签名后的至少一个原子单元供给至所述多个工作流程参与者中的第一工作流程参与者;以及处理器(220 ),被配置为实现所述一个或多个模块。
10.根据权利要求9所述的设备(102),其中,所述一个或多个模块还被配置为: 向被识别为针对所述至少一个原子单元而被授权不许访问级别的工作流程参与者供给验证密钥,同时排除用于所述至少一个原子单元的签名密钥和加密密钥; 向被识别为针对所述至少一个原子单元而被授权只读访问级别的工作流程参与者供给加密密钥和验证密钥,同时排除用于所述至少一个原子单元的签名密钥;以及 向被识别为被采用修改访问级别加以授权的工作流程参与者供给用于所述至少一个原子单元的加密密钥、签名密钥和验证密钥。
11.根据权利要求9所述的设备(102),其中,对所述第一工作流程参与者授权修改访问级别,以及其中,所述一个或多个模块还被配置为向所述多个工作流程参与者中的被配置为从所述第一工作流程参与者接收修改后的数字文件的第二工作流程参与者供给第二验证密钥,所述第二验证密钥被配置为使得能够对所述第一工作流程参与者对所述至少一个原子单元的修改进行认证。
12.根据权利要求9所述的设备(102),其中,所述数字文件(120)包括第一原子单元(122a)和第二原子单元(122b),其中,所述第一原子单元包括所述至少一个原子单元,所述一个或多个模块(202-216)还被配置为: 将第二密钥集合与所述第二原子单元相关联,所述第二密钥集合包括第二加密密钥、第二签名密钥和第二验证密钥; 使用所述第二加密密钥来对所述第二原子单元进行加密; 使用所述第二签名密钥来对加密后的第二原子单元进行签名; 从将被授权给工作流程参与者的针对所述第一原子单元的所述多个访问级别中识别第一访问级别; 从将被授权给工作流程参与者的针对所述第二原子单元的所述多个访问级别中识别第二访问级别,针对工作流程参与者中的至少一个,所述第二访问级别与所述第一访问级别不同; 根据将针对所述第一原子单元和所述第二原子单元而授权给工作流程参与者的所识别的访问级别,向工作流程参与者中的每一个供给所述第一密钥集合中的所识别的一个或多个密钥和所述第二密钥集合中的所识别的一个或多个密钥;以及 将包含加密和签名后的第一原子单元和第二原子单元的数字文件供给至所述第一工作流程参与者。
13.根据权利要求12所述的设备(102),其中,所述一个或多个模块(202-216)还被配置为:向工作流程参与者中的至少一个供给与用于访问所述第二原子单元的多个密钥不同的用于访问所述第一原子单元的多个密钥,从而使所述至少一个工作流程参与者具有针对所述第一原子单元和所述第二原子单元的不同的访问级别。
14.一种其上嵌入有一个或多个计算机程序的计算机可读存储介质(410),所述一个或多个计算机程序实现用于在多个工作流程参与者(IlOa-1lOn)当中提供对数字文件的差异化访问的方法(300),其中,所述多个工作流程参与者中的至少一个处于公共和统一安全的环境中的至少一个之外,所述数字文件包括至少一个原子单元(122a),所述一个或多个计算机程序包括指令集,其用于: 将第一密钥集合与所述至少一个原子单元相关联(304),所述第一密钥集合包括加密密钥、签名密钥和验证密钥; 使用所述加密密钥来对所述至少一个原子单元进行加密(306); 使用所述签名密钥来对加密后的至少一个原子单元进行签名(308); 从将被授权给工作流程参与者中的每一个的、针对所述至少一个原子单元的多个访问级别中识别访问级别(310); 基于所识别的访问级别,识别要向工作流程参与者中的每一个供给第一密钥集合中的密钥中的哪个(312); 向工作流程参与者中的每一个供给所识别的一个或多个密钥,其中,所述加密密钥使得能够读取,所述签名密钥使得能够修改,以及所述验证密钥使得能够对所述至少一个原子单元进行认证(314);以及 将加密和签名后的至少一个原子单元供给至所述多个工作流程参与者中的第一工作流程参与者(316)。
15.根据权利要求14所述的计算机可读存储介质(410),其中,向工作流程参与者中的每一个供给所识别的一个或多个密钥(314)还包括用于执行以下操作的指令集: 向被识别为针对所述至少一个原子单元被授权不许访问级别的工作流程参与者供给验证密钥,同时排除用于所述至少一个原子单元的签名密钥和加密密钥; 向被识别为针对所述至少一个原子单元被授权只读访问级别的工作流程参与者供给加密密钥和验证密钥,同时排除用于所述至少一个原子单元的签名密钥;以及 向被识别为被采用修改访问级别加以授权的工作流程参与者供给用于所述至少一个原子单元的加密密钥、签名密钥和验证密钥。
全文摘要
在一种用于在工作流程参与者当中提供对数字文件的差异化访问的方法中,其中,工作流程参与者中的至少一个处于公共安全环境之外(300),包括加密密钥、签名密钥和验证密钥的第一密钥集合与(一个或多个)原子单元相关联(304)。使用加密密钥来对(一个或多个)原子单元进行加密,并使用签名密钥来对该(一个或多个)原子单元进行签名(306、308)。识别将对工作流程参与者中的每一个授权的对(一个或多个)原子单元的访问级别以及用于基于所识别的访问级别而向工作流程参与者中的每一个供给的第一密钥集合中的密钥(310、312)。此外,向工作流程参与者中的每一个供给所识别的一个或多个密钥(314),并将加密和签名后的(一个或多个)原子单元供给至第一工作流程参与者(316)。
文档编号G06F21/62GK103098071SQ201080069205
公开日2013年5月8日 申请日期2010年9月21日 优先权日2010年9月21日
发明者H.巴林斯基, S.J.辛斯克 申请人:惠普发展公司,有限责任合伙企业
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1