对至少一个数字文件的差异化策略的应用的制作方法

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


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