首页 / 专利库 / 银行与财务事项 / 票据交换所 / 用于安全交易管理和电子权利保护的系统和方法

用于安全交易管理和电子权利保护的系统和方法

阅读:58发布:2020-11-10

专利汇可以提供用于安全交易管理和电子权利保护的系统和方法专利检索,专利查询,专利分析的服务。并且本 发明 提供了用于包括安全交易管理和 电子 权利保护的电子商业活动的系统和方法。遵照本发明而使用的诸如计算机之类的电子设备有助于确保只能以经过授权的方式 访问 和使用信息,并维护了信息的完整性、可用性和/或 保密性 。结合上述电子设备使用的安全子系统提供了一个虚拟分发环境(VDE),所述虚拟分发环境强制执行了一个安全的处理和控制链(举例来说)以控制和/或计量或监视对电子存贮的或传播的信息的使用。该虚拟分发环境可以用来保护电子商业活动中以及其他电子的或由电子促进的交易中的各种参与者的权利。采用诸如可在各 节点 上建立安全的、受保护的环境的安全 半导体 处理配置来保障分布式与其它 操作系统 环境及体系结构。这些技术可以用来支持(举例来说)使用“电子高速公路”可能用到的端到端电子信息分发功能。,下面是用于安全交易管理和电子权利保护的系统和方法专利的具体信息内容。

1.一个用于安全的信息内容传递的方法,该方法包括:
a)将数字信息密封在一个或多个数字容器中;
b)加密至少一部分所述数字信息;
c)关联用于管理与所述被加密数字信息和/或数字容器交互作用 的、至少部分安全的控制信息;
d)将一个或多个所述一个或多个数字容器传递给一个数字信息 用户;
e)使用受保护处理环境以安全地控制对至少一部分所述数字信 息的解密。
2.一个用于安全的信息内容传递的系统,该系统包括:
用于加密至少一部分数字信息的加密装置;
用于将数字信息密封在一个或多个数字容器中,并用于关联用于 管理与所述被加密数字信息交互作用的、至少部分安全的控制信息的 容器处理装置;
用于将一个或多个所述一个或多个数字容器传递给一个数字信息 用户的传递装置;以及
用来安全地控制对至少一部分所述数字信息的解密的至少一个受 保护处理环境。
3.一个用于安全的数字信息传递的方法,其特征在于下面的步 骤:
(a)通过使用第一至少一个VDE节点加密至少一部分所述数字信 息,(b)通过使用所述第一至少一个VDE节点创建和加密来控制多个 用户对至少一部分所述数字信息的使用的控制信息,(c)安全地将所述 数字信息提供给所述多个用户,以及(d)使用不同于所述第一至少一 个VDE节点的至少一个VDE节点用以处理所述控制信息的至少部 分,并用以控制所述用户对所述被加密数字信息的使用。
4.一个用于安全的数字信息传递的系统,其特征在于:
用于加密至少一部分所述数字信息的第一至少一个VDE节点,
用于通过使用所述第一至少一个VDE节点创建和加密用来控制 多个用户对至少一部分所述数字信息的使用的控制信息的装置,
用于安全地将所述数字信息提供给所述多个用户的装置;以及
用以处理所述控制信息的至少部分并用以控制所述用户对所述被 加密数字信息的使用的、不同于所述第一至少一个VDE节点的至少一 个VDE节点。
5.一个用于安全的信息内容传递的方法,其中,至少部分经过加 密的信息内容被密封在至少一个数字容器中,并且该数字容器被传递 给一个数字信息用户,该方法的特征在于下列步骤:
将用于管理与所述被加密数字信息和/或数字容器交互作用的、至 少部分安全的控制信息与被密封的信息内容和/或数字容器相关联;
使用受保护处理环境以至少部分地根据该控制信息安全地控制对 至少一部分所述被加密信息内容的解密。
6.一个用于安全的信息内容传递的系统,其中,至少部分经过加 密的信息内容被密封在至少一个数字容器中,并且该数字容器被传递 给一个数字信息用户,该系统的特征在于:
将用于管理与所述被加密数字信息和/或数字容器交互作用的、至 少部分安全的控制信息与被密封的信息内容和/或数字容器相关联的 一个数据结构;以及
使用以至少部分地根据该控制信息安全地控制对至少一部分所述 被加密信息内容的解密的受保护处理环境。
7.一个用于安全的信息内容传递的方法,其特征在于下列步骤: (a)加密至少一部分所述数字信息,(b)将受保护控制信息与至少一部 分所述数字信息相关联,以及(c)将至少一部分所述被加密数字信息提 供给一个第一用户,并通过使用至少一部分所述受保护控制信息而部 分地控制对至少一部分所述被加密数字信息的使用,其中,所述第一 用户进一步将(a)所述被加密数字信息的所述至少一部分的一个拷 贝,或(b)所述被加密数字信息两者至少其中之一提供给一个第二用 户,其中,所述第二用户将所述被加密数字信息与另外的控制信息相 关联,以便用来控制一个第三用户对所述被加密数字信息的使用。
8.一个用于安全的信息内容传递的系统,其特征在于:
用于加密至少一部分所述数字信息的装置;
用于将受保护控制信息与至少一部分所述数字信息相关联的装 置;
用于将至少一部分所述被加密数字信息提供给一个第一用户的装 置;
用于通过使用至少一部分所述受保护控制信息而至少部分地控制 对至少一部分所述被加密数字信息的使用的装置;
用于允许所述第一用户将(a)所述至少一部分所述被加密数字 信息的一个拷贝或(b)所述被加密数字信息两者至少其中之一提供给 一个第二用户的装置;以及
用于允许所述第二用户将所述被加密数字信息与另外的控制信息 相关联,以便用来控制一个第三用户对所述被加密数字信息的使用的 装置。
9.一个用于安全的数字交易管理的方法,该方法包括:
a)在第一地点加密数字信息;
b)允许一个第一方安全地将至少一个控制与所述信息相关联,以 用于确保对所述信息的使用的至少一个结果;
c)允许一个或多个另外方安全地将至少一个另外的控制与所述 信息相关联以用于确保对所述信息的使用的至少一个结果;
d)将所述信息的至少一个部分分发给一个位于不是第一位置和 另外位置、不是第一方和另外方的一方,以及
f)在所述第三位置解密至少一部分所述信息,并确保对所述信息 的使用的所述结果。
10.一个用于安全的数字交易管理的系统,该系统包括互连的结 构以执行下列功能:
a)加密数字信息;
b)允许一个第一方安全地将至少一个控制与所述信息相关联,以 用于确保对所述信息的使用的至少一个结果;
c)允许一个或多个另外方安全地将至少一个另外的控制与所述 信息相关联以用于确保对所述信息的使用的至少另外的一个结果;
d)将至少一部分所述信息分发给一个另外方;以及
e)解密至少一部分所述信息,以及
f)安全地确保所述结果。
11.一个用于安全的数字交易管理的系统,其中数字信息被一个 第一方在一个第一地点加密和分发,该系统的特征在于:
一个第一受保护处理环境,用于允许第一方安全地将至少一个控 制与所述信息相关联,
一个另外的受保护处理环境,用于允许另外方将至少一个另外的 控制与所述信息相关联,以及
一个又一另外的受保护处理环境,用于解密至少一部分所述信 息,同时至少部分地根据第一控制和另外的控制来控制对该信息的使 用的至少一个结果。
12.一个用于安全的数字交易管理的方法,其中数字信息被一个 第一方在一个第一地点加密和分发,该方法的特征在于下列步骤:
允许第一方安全地将至少一个控制与所述信息相关联,
允许另外方将至少一个另外的控制与所述信息相关联,以及
传送第一控制和另外的控制;
解密至少一部分所述信息,同时至少部分地根据被传送的控制来 控制至少一个结果。
13.一个用于安全地自动分布的电子进程的方法,该方法包括:
a)向多个参与者提供安全的、互相协作的、通用的权利管理处理 装置;
b)创建安全进程管理控制,以自动地、至少部分远程地、以及安 全地支持涉及电子事件的要求;
c)向参与者站点安全地分发进程管理控制;
d)在所述参与者站点的参与者处理装置的控制下安全地维护至 少一部分所述进程管理控制;
e)在所述参与者站点自动地管理电子进程,以加强涉及所述电子 信息内容的利益。
14.一个用于安全地自动分布的电子进程的系统,该系统包括:
位于多个参与者站点的、互相协作的权利管理处理装置;
用于创建用以远程地、自动地、以及安全地支持涉及电子事件的 要求的安全进程管理控制,并用于向参与者站点安全地分发进程管理 控制的控制创建装置;
用于在所述参与者地点的处理的控制下安全地维护至少一部分所 述进程管理控制的安全性装置;以及
用于在多个参与者地点自动地管理电子过程以加强涉及所述电子 信息内容的利益的管理装置。
15.一个用于使用位于多个站点的互相协作处理器的自动分布的 电子进程的方法,其特征在于下列步骤:
安全地向处理器分发用以自动地和安全地支持涉及电子事件的要 求的进程管理控制;
在处理器的控制下安全地维护至少一部分所述进程管理控制;以 及
使用处理器以分布式方式自动地管理位于多个站点的电子进程, 以加强涉及电子事件的利益。
16.一个用于使用位于多个站点的互相协作处理器自动分布的电 子进程的系统,其特征在于:
用以安全地向处理器分发用以远程地、自动地和安全地支持涉及 电子事件的要求的进程管理控制的、与处理器相连的分发装置;
用以在处理器的控制下安全地维护至少一部分所述进程管理控制 的进程控制装置;以及
用以使用处理器以分布式方式自动地管理位于多个站点的电子进 程以加强涉及电子事件的利益的管理装置;
17.一个用于安全地执行优先权利系统的方法,其特征在于下列 步骤:
允许一个第一用户创建电子信息内容上的至少一个控制;以及
允许一个第二用户提供电子信息内容上的至少一个另外的控制, 以及/或者改变就位的控制,该第二控制受到第一控制的控制。
18.一个用于安全地执行优先权利系统的系统,其特征在于:
用于允许一个第一用户提供电子信息内容上的至少一个控制的一 个第一安全环境;以及
用于允许一个第二用户提供电子信息内容上的至少一个另外的控 制以及/或者改变就位的控制—其中该第二控制受到第一控制的控 制—的一个第二安全环境。
19.一个用于安全地执行优先权利系统的方法,其特征在于下面 的步骤:允许一个第一用户创建至少一个电子控制,所述电子控制至 少部分地规定了一个第二用户所具有的、创建用于对电子信息内容的 使用和/或访问进行控制的、另外的电子控制权利。
20.一个用于安全地执行优先权利系统的系统,其特征在于:用 于允许一个第一用户创建至少一个电子控制的至少一种装置,所述电 子控制至少部分地规定了一个第二用户所具有的、创建用于对电子信 息内容的使用和/或访问进行控制的、另外的电子控制权利。
21.一个用于使用受保护处理环境的方法,该方法包括:
a)向多个参与者分发互相协作的、受保护处理环境;
b)提供一个由一个第一方使用的、第一互相协作的、受保护处理 环境,以允许所述参与者(a)加密数字信息,以及(b)创建用于管理对 所述数字信息的使用的至少一个方面的控制信息;
(c)作为对来自所述第一参与者的一个或多个指令的响应加密所 述的数字信息;
(d)使所述的数字信息对一个第二参与者可用;
(e)通过使用一个第二互相协作的受保护处理环境来满足由所述 控制信息强制的要求,并允许所述第二参与者使用所述数字信息的至 少一个部分;
(f)通过使用所述第二互相协作的受保护处理环境,安全地汇报涉 及所述第二参与者对所述数字信息的使用的至少一个方面的信息。
22.一个用于使用受保护处理环境的系统,该系统包括:
分发给多个参与者的互相协作的、受保护处理环境;包括由一个 第一参与者使用的、第一互相协作的、受保护处理环境,以允许所述 参与者(a)加密数字信息,以及(b)创建用于管理对所述数字信息的使 用的至少一个方面的控制信息;还包括一个第二互相协作的受保护处 理环境;
用于加密所述的数字信息作为对来自所述第一参与者的一个或多 个指令的响应以及用于使所述的数字信息对一个第二参与者可用的装 置;
第二互相协作的受保护处理环境用来满足由所述控制信息强制的 要求并允许所述第二参与者使用所述数字信息的至少一个部分、以及 用来安全地汇报涉及所述第二参与者对所述数字信息的使用的至少一 个方面的信息的装置。
23.一个用于使用分发给多个参与者的受保护的处理环境的方 法,其特征在于下列步骤:
使用第一互相协作的、受保护处理环境加密数字信息以及规定对 所述数字信息的使用的至少一个方面的管理要求的控制信息;
使用与第一受保护处理环境互相协作的第二受保护处理环境来强 制由所述控制信息规定的要求,并有条件地允许对至少一部分所述数 字信息的使用;以及
使用第二受保护处理环境来汇报反映对所述数字信息的使用的至 少一个方面。
24.一个用于使用分发给多个参与者的受保护的处理环境的系 统,其特征在于:
一个第一受保护处理环境,用于加密数字信息以及处理规定了对 所述数字信息的使用的至少一个方面的管理要求的控制信息;
一个与第一受保护处理环境互相协作的第二受保护处理环境,用 来强制由所述控制信息规定的至少一个要求并有条件地允许对至少一 部分所述数字信息的使用;并用来汇报反映对所述数字信息的使用的 至少一个方面的信息。
25.一个安全网络体系结构,它含有多个协同工作的、互连的、 带有受保护处理环境的节点,至少一部分所述节点可以相互通信,该 安全网络体系结构的特征在于:VDE保护的信息可以从一个源节点 被移动到一个目的地节点,并且至少部分地由目的地节点处理。
26.在一个含有多个协同工作的、互连的、带有受保护处理环境 的、可以相互通信的节点的安全网络体系结构中,一个含有下列步骤 的方法:
将VDE保护的信息从一个源节点移动到一个目的地节点,并且该 VDE保护的信息至少部分地由目的地节点处理。
27.一个含有多个相互协作互连节点的安全局域网拓扑结构,其 特征在于:至少某些节点含有带有定义了受保护处理环境的软件的网 络工作站,并且至少一个节点含有提供保护形式的信息供网络工作站 受保护处理环境处理的一个安全数据库服务器
28.一个在一个含有多个相互协作互连节点的安全局域网拓扑结 构中的方法,其特征在于下列步骤:
至少部分地用网络工作站执行定义受保护处理环境的软件,以及
用安全数据库服务器提供供网络工作站受保护处理环境处理的信 息。
29.一个包含具有受保护处理环境的多个节点的分布式电子权利 管理系统,其特征在于:多个节点中的至少一个提供受保护处理环境, 该受保护处理环境为一个含有至少另一个节点的至少一部分受保护处 理环境的客户执行服务器功能。
30.一个在包含具有受保护处理环境的多个节点的分布式电子权 利管理系统中的方法,其特征在于:由多个节点中的至少一个提供受 保护处理环境,并由该受保护处理环境为一个含有至少另一个节点的 至少一部分受保护处理环境的客户执行服务器功能。
31.一个用于安全地管理涉及电子商业价值链活动的电子协定的 方法,该方法包括:
a)由一个第一参与者使用受保护处理环境以安全地规定用于管 理电子商业进程的规则和/或控制;
b)安全地使所述被规定规则和/或控制对一个第二参与者可用;
c)使用不同于第一受保护处理环境的受保护处理环境以进一步 安全地规定用于管理至少一个涉及所述第一参与者和所述第二参与者 共同商业利益的电子商业进程的规则和/或控制;
d)使用所述受保护处理环境来安全地、电子地协商出代表所述第 一参与者和所述第二参与者两者电子利益的至少一个聚合规则和/或 控制集合;
e)使用受保护处理环境来管理符合至少一部分所述聚合规则和/ 或控制集合的所述电子商业进程。
32.一个用于安全地管理涉及电子商业价值链活动的电子协定的 系统,该系统包括:
一个第一参与者的受保护处理环境,用来安全地规定用于管理电 子商业进程的规则和/或控制,以及安全地使所述被规定规则和/或控制 对一个第二参与者可用;
一个不同于第一参与者受保护处理环境的第二参与者受保护处理 环境,用来进一步安全地规定包含用于管理至少一个涉及所述第一参 与者和所述第二参与者共同商业利益的电子商业进程的装置的规则和 /或控制;
第一参与者和第二参与者受保护处理环境中的至少一个,用来安 全地、电子地协商出代表所述第一参与者和所述第二参与者两者电子 利益的至少一个聚合规则和/或控制集合;以及
第一参与者和第二参与者受保护处理环境中的至少一个,包括用 来管理符合至少一部分所述聚合规则和/或控制集合的所述电子商业 进程的装置。
33.一个用于通过使用第一和第二受保护处理环境而安全地管理 涉及电子商业价值链活动的电子协定的方法,其特征在于:
使用第一受保护处理环境,安全地规定用于管理电子商业进程的 规则和/或控制;
使用第二受保护处理环境,进一步安全地规定用于管理至少一个 涉及第一参与者和第二参与者商业利益的电子商业进程的规则和/或 控制;
使用第一和第二受保护处理环境中的至少一个来安全地、电子地 协商出代表该第一参与者和所述第二参与者两者电子利益的至少一个 聚合规则和/或控制集合;以及
使用第一和第二受保护处理环境中的至少一个来管理符合至少一 部分所述聚合规则和/或控制集合的所述电子商业进程。
34.一个用于通过使用第一和第二受保护处理环境而安全地管理 涉及电子商业价值链活动的电子协定的系统,其特征在于:
第一环境,它包括用于安全地规定用于管理电子商业进程的规则 的装置;
第二环境,它包括用于进一步安全地规定用于管理至少一个涉及 第一参与者和第二参与者商业利益的电子商业进程的规则的装置;
第一和第二受保护处理环境中的至少一个,它包括用来安全地、 电子地协商出至少部分地代表所述第一参与者和所述第二参与者两者 电子利益的至少一个聚合规则集合的装置;以及
第一和第二受保护处理环境中的至少一个,它包括用来来管理符 合所述至少一部分所述聚合规则集合的所述电子商业进程的装置。
35.一个用于管理分布式电子商业环境的方法,该方法包括:
a)建立一个安全的确认权威机构,用以对电子商业参与者鉴别其 用户身份,其中所述身份包括一个或多个用户类别参数;
b)通过使用由所述确认权威机构允许的一个或多个证明来确认 所述用户身份;
c)至少部分地根据包含在上述经过确认证的身份中的类别参数 信息控制对被分发的电子信息的使用。
36.一个用于安全地管理分布式电子商业环境的系统,该系统包 括:
用于为电子商业参与者创建其用户身份的装置,其中所述身份包 括一个或多个用户类别参数;
一个确认权威机构,用于通过使用由所述确认权威机构允许的一 个或多个证明来认证所述用户身份而鉴别该用户的身份;以及
用于至少部分地根据包含在上述经过确认的身份中的类别参数信 息控制对被分发的电子信息的使用的装置。
37.一个用于安全地管理分布式电子商业环境以允许与一个具有 经过确认权威机构证明的用户身份的电子商业参与者之间的交互作用 的方法,其特征在于:
建立一个用户身份;
确认该用户身份和用户类别参数;以及
将至少一个用户类别参数与该用户身份相关联,其中所述经过确 认的类别参数至少部分地用于控制对被分发的电子信息的使用。
38.一个用于管理分布式电子商业环境以允许与一个具有经过确 认的用户身份的电子商业参与者之间的交互作用的系统,其特征在 于:
用于将至少一个用户类别参数与已建立的用户身份相关联的装 置;
用于查明用户身份和/或用户类别参数的真实性的装置;以及
用于至少部分地根据所述身份来控制对被分发的电子信息的使用 的装置。
39.一个如权利要求38所述的系统,其中,类别参数代表用户的 年龄,而控制装置包括用来根据用户的年龄而控制对被分发的电子信 息的使用的装置。
40.一个通过使用确认安全地建立用户身份的方法,其特征在 于:
出示一个反映至少一个用户类别特征的电子标记;
确定一个电子证明是否鉴别了由该标记反映的用户类别特征;以 及
将该标记用作授权的基础
41.一个用于通过使用证明识别用户的系统,其特征在于:
用于出示一个反映至少一个用户类别特征的电子标记的装置;
用于获得一个电子证明的装置;
用于确定一个电子证明是否鉴别了由该标记反映的用户类别特征 的装置;以及
用于将被证明的、经过鉴别的标记用作授权的基础的装置。
42.一个用于安全地管理分布式电子商业环境的系统,该系统包 括:
用于通过指定至少一个用户类别而识别一个电子商业参与者的装 置;
用于鉴别该用户身份的装置;以及
用于至少部分地根据该用户类别来控制对被分发电子信息的使用 的装置。
43.一个用于安全地管理分布式电子商业环境以支持与一个电子 商业参与者之间的交互作用的方法,其特征在于:
建立一个用户身份以及一个相关的用户类别参数;以及
使用该类别参数以至少部分地控制对被分发电子信息的使用。
44.一个用于管理分布式电子商业环境以支持与一个电子商业参 与者之间的交互作用的系统,其特征在于:
用于将至少一个用户类别参数与一个用户身份相关联的装置;
用于鉴别该用户身份和/或该用户类别参数的装置;以及
用于至少部分地根据所述身份控制对被分发电子信息的使用的装 置。
45.一个如权利要求44所述的系统,其中,类别参数代表用户的 年龄,而控制装置包括用来根据用户的年龄而控制对被分发的电子信 息的使用的装置。
46.一个用于安全地建立用户身份的方法,其特征在于:
出示一个反映至少一个用户类别特征的电子标记;
确定由该标记反映的该用户类别特征是真实的;以及
将该标记用作授权的至少部分基础。
47.一个用于安全地建立用户身份的系统,其特征在于:
出示一个反映至少一个用户类别特征的电子标记的装置;
鉴别由该标记反映的该用户类别特征;以及
用于将该被鉴别的标记用作授权的基础的装置。
48.一个鉴别用户身份的方法,其特征在于:
接收一个认证请求以及相关用户身份;以及
发放一个用于鉴别与用户身份相关的至少一个用户类别特征的电 子证明,以便根据用户类别特征进行授权。
49.一个鉴别用户身份的系统,其特征在于:
用于接收一个认证请求以及相关用户身份的装置;以及
用于发放一个用于鉴别与用户身份相关的至少一个用户类别特征 的电子证明以便根据用户类别特征进行授权的装置。
50.一个安全地建立用户身份的方法,其特征在于:
接收一个认证请求;以及
发放一个指定了至少一个用户类别特征的电子证明。
51.一个用于通过使用证明来安全地建立用户身份的系统,其特 征在于:
用于接收一个认证请求以及相关用户身份的装置;以及
用于发放一个指定了至少一个用户类别特征的电子证明的装置。
52.一个管理权利的方法或系统,其特征在于:使用一个经过密 码签名的标记来确认一个类别中的成员资格,鉴别该标记,并且由该 标记代表的该类别成员资格被用作授予和/或拒绝给予权利和/或权限 的基础。
53.一个管理权利的方法或系统,其特征在于:使用一个经过密 码签名的标记来认证一个类别中的成员资格,查明该标记的身份,并 且由该标记代表的该类别成员资格被用作允许一个出示该标记的用户 创建电子规则的基础。
54.一个管理权利的方法或系统,其特征在于:使用一个经过密 码签名的标记来确认一个类别中的成员资格,确认该标记,并且由该 标记代表的该类别成员资格被用作允许一个出示该标记的用户在电子 规则下行使权利的基础。
55.一个支持分布式电子商业电子协定系统的方法,该方法包 括:
a)支持分布的、互相协作的安全客户受保护处理环境节点;
b)创建至少一个系统范围内的安全通信密钥;
c)对于多个客户节点之间的通信使用公开密钥加密;
d)支持各个客户对电子控制信息的传递,其中所述控制信息至少 部分地规定了他们各自的电子商业协定权利;
e)支持至少一个受保护处理环境,用来通过至少部分地根据所述 对电子控制信息的安全传递而创建一个或多个电子协定来确定所述客 户的各自的和/或集合的权利;
f)使用安全软件容器数据控制结构以确保对客户的电子权利的 持久维护;
g)使用提供支持对应于电子商业模型协定的强制执行的规则和/ 或控制的数据结构的安全软件容器。
56.一个分布式电子协定系统,该系统包括:
多个分布的、互相协作的安全客户受保护处理环境节点,用来支 持各个客户对电子控制信息的传递,其中所述控制信息至少部分地规 定了所述客户各自的电子商业模型协定权利,并用来对于所述多个客 户节点之间的通信使用公开密钥加密和鉴别;
与所述节点耦合的装置,用于创建至少一个系统范围内的安全通 信密钥;以及
至少一个受保护处理环境,用于:
a)通过至少部分地根据所述对电子控制信息的安全传递而创建 一个或多个电子协定来确定电子商业模型客户的各自的和/或集合的 权利;
b)使用安全软件容器数据控制结构以确保对商业模型客户的电 子权利的持久维护;以及
c)使用提供支持对应于电子商业模型协定的强制执行的控制的 数据结构的安全软件容器。
57.一个支持分布式电子商业电子协定系统的方法,其中该系统 包括:使用至少一个系统范围内的安全通信密钥的、分布的、互相协 作的安全客户受保护处理环境节点;对于多个客户节点之间的通信使 用公开密钥加密和鉴别;并使用一个确认权威机构以建立客户身份, 该方法的特征在于:
支持对电子商业模型协定权利控制信息的安全交付;
通过至少部分地根据所述对电子控制信息的安全传递而创建一个 或多个电子协定来确定电子商业模型客户的各自的和/或集合的权 利;
使用安全软件容器数据控制结构以确保对商业模型客户的电子权 利的远程持久维护;以及
使用提供支持对应于电子商业模型协定的强制执行的规则与控制 的数据结构的安全软件容器。
58.一个分布式电子商业电子协定系统,该系统包括:使用至少 一个系统范围内的安全通信密钥的、分布的、互相协作的安全客户受 保护处理环境节点;对于多个客户节点之间的通信使用公开密钥加密 和鉴别;使用一个确认权威机构以建立客户身份,并支持对电子商业 模型协定权利控制信息的安全传递;
在至少一个节点处理的装置,用于通过至少部分地根据所述对电 子控制信息的安全传递而创建一个或多个电子协定来确定电子商业模 型客户的各自的和/或集合的权利;以及
位于至少一个节点的装置,用于使用安全软件容器数据控制结构 以确保对商业模型客户的电子权利的远程持久维护;并用于使用提供 支持对应于电子商业模型协定的强制执行的规则与控制的数据结构的 安全软件容器。
59.一个安全处理电子货币的方法,其特征在于下列步骤:
将电子货币包装进一个软件容器中,以及
传递该软件容器作为对商品或服务的付款。
60.一个安全处理电子货币的系统,其特征在于:
用于将电子货币包装进一个软件容器中的装置,以及
用于传递该软件容器作为对商品或服务的付款的装置;
61.用于在一个组织内部管理权利的方法或系统,其特征在于: 电子容器在组织内部分发,该电子容器带有相关的控制,该控制至少 部分地强制实施一个涉及对该容器和/或其中的信息内容的使用的组 织层次结构。
62.一个组织权利管理的方法,其特征在于下列步骤:
在组织内部分发电子容器,以及
根据与该电子容器相关的电子控制,限制在组织内部或外部对该 电子容器和/或其中的信息内容的使用、访问和/或进一步分发。
63.一个组织权利管理的系统,其特征在于:
用于分发电子容器的装置;以及
用于根据与该电子容器相关的电子控制限制在组织内部或外部对 该电子容器和/或其中的信息内容的使用、访问和/或进一步分发的装 置。
64.一个组织权利管理的方法,其特征在于下列步骤:
在组织内部分发电子容器,以及
使用该电子容器,以便至少部分地管理组织内部人员对信息内容 的使用。
65.一个用于组织权利管理的系统,其特征在于:
用于在组织内部分发电子容器的装置,以及
用于使用该电子容器以便至少部分地管理组织内部人员对信息内 容的使用的装置。
66.一个组织权利管理的方法,其特征在于下列步骤:
在组织内部分发电子容器,以及
使用该电子容器,以便至少部分地管理组织内部的资金使用。
67.一个用于组织权利管理的系统,其特征在于:在组织内部分 发的、用于至少部分地管理组织内部的资金使用的电子容器。
68.一个组织权利管理的方法,其特征在于下列步骤:
在组织内部分发受保护处理环境,以及
使用该环境,以便至少部分地管理组织内部人员对信息内容的使 用。
69.一个用于组织权利管理的系统,其特征在于:在组织内部分 发的、用于至少部分地管理组织内部的信息内容使用的受保护处理环 境。
70.一个组织权利管理的方法,其特征在于下列步骤:
在组织内部分发受保护的处理环境,以及
使用该处理环境,以便至少部分地管理组织内部人员对资金的使 用。
71.一个用于组织权利管理的系统,其特征在于:在组织内部分 发的、用于至少部分地管理组织内部的资金使用的多个受保护处理环 境。
72.一个含有:
一个用户输入设备,
一个用户显示设备,
至少一个处理器,以及
至少一个定义了一个受保护处理环境的元素的权利管理设备,
其特征在于:该受保护处理环境存贮和使用许可、方法、密钥、 程序和/或其他信息以电子地管理权利。
73.在一个含有:
一个用户输入设备,
一个用户显示设备,
至少一个处理器,以及
至少一个定义了一个受保护处理环境的元素的权利管理设备中,
一个操作该设备的方法,其特征在于下列步骤:存贮和使用许可、 方法、密钥、程序和/或其他信息以电子地管理权利。
74.一个含有至少一个至少部分地定义了一个受保护处理环境的 处理器元素的权利管理设备,其特征在于:该受保护处理环境存贮和 使用许可、方法、密钥、程序和/或其他信息以电子地管理权利。
75.在一个含有至少一个至少部分地定义了一个受保护处理环境 的处理器元素的权利管理设备中,一个包括存贮和使用许可、方法、 密钥、程序和/或其他信息以电子地管理权利的方法。
76.一个将信息电子地存贮在一个存放库中并在请求时分发该信 息的方法,其特征在于:通过将电子控制与该信息相关联而保护该信 息,该电子控制用来强制执行该信息中的权利。
77.一个用来将信息电子地存贮在一个存放库中并在请求时分发 该信息的系统,其特征在于:用于通过将电子控制与该信息相关联而 保护该信息的装置,还包括用来使用该电子控制而强制执行该信息中 的权利的装置。
78.一个自保护电子容器,该自保护电子容器含有:
一个用于包含数字信息的电子容器结构,以及
一个在出现破坏的情况下保护或销毁数字信息的电子保护机制。
79.一个用于含有一个用于包含数字信息的电子容器结构的自保 护电子容器的方法,其特征在于:检测破坏企图,并在出现所述企图 的情况下保护或销毁数字信息。
80.一个创建自保护容器系统的方法,该方法包括:
提供至少一个所有物,
提供至少一个属性,
提供至少一个密码密钥,
提供至少一个将该密钥与该有产权物和/或属性相关联的组织结 构,以及
或者明确地或者通过引用将该所有物、属性、密码密钥和组织结 构密封进一个电子容器结构中。
81.一个自保护容器系统,该系统包括:
至少一个所有物,
至少一个属性,
至少一个密码密钥,以及
至少一个将该密钥与该所有物和/或属性相关联的组织结构。
82.一个包含带有受保护处理环境的多个节点的分布式电子权利 管理系统,其特征在于:每个节点都可以执行自管理进程作为对电子 部件的响应。
83.一个自管理电子部件,该部件包括:
至少一个用于执行一个交易的至少一部分的方法;
至少一个用于生成审核信息的方法;以及
至少一个用于安全地接收和解释管理信息的方法。
84.一个自管理电子部件,它执行下列方法:
至少一个用于执行一个交易的至少一部分的方法;
至少一个用于生成审核信息的方法;以及
至少一个用于安全地接收和解释管理信息的方法。
85.一个定义了至少一个参数和/或功能的自描述电子部件,其特 征在于:该部件包括至少用来创建一个描述该参数和/或功能的人类可 读的界面的一个安全的、描述性的部分。
86.一个用于处理一个定义了至少一个参数和/或功能的自描述电 子部件的方法,其特征在于下列步骤:至少部分地使用该部件以至少 部分地根据该部件的一个安全的、描述性的部分来创建一个描述该参 数和/或功能的人类可读的界面。
87.一个执行电子交易的方法,该方法包括:
接收多个部件,
电子地检测事件的发生,
根据该事件确定该多个被接收部件中的一个子集以处理该事件, 以及
作为对该事件的响应,根据该部件子集执行至少一个电子进程。
88.一个用于执行电子交易的系统,该系统包括:
用于接收多个部件的装置,
用于电子地检测事件的发生的装置,
用于根据该事件确定该多个被接收部件中的一个子集以处理该事 件的装置,以及
用于作为对该事件的响应根据该部件子集执行至少一个电子进程 的装置。
89.一个分布式交易处理方法,其特征在于:
在第一地点接收一个第一电子部件,
在第二地点接收一个第二电子部件,
电子地检测第一地点上的一个事件的发生,
作为对该事件检测的响应,至少部分地根据第一电子部件在第一 地点处理一个电子交易的一个第一部分,
安全地将至少一个信号从第一地点传送到第二地点,以及
至少部分地根据第二电子部件在第二地点处理该电子交易的至少 一个第二部分。
90.一个如权利要求89所述的方法,其特征还在于:
将至少一个信号从第二地点传送到第一地点,以及
至少部分地根据来自第二地点的信号的接收,在第一地点执行该 电子交易的至少一个第三部分。
91.一个分布式交易处理系统,其特征在于:在第一地点的一个 装置,该装置用来接收一个第一电子部件、用来电子地检测一个事件 的发生、用来作为对该事件检测的响应,至少部分地根据第一电子部 件在第一地点处理一个电子交易的一个第一部分、以及用来安全地将 至少一个信号从第一地点传送到第二地点;以及
在第二地点的一个装置,该装置用来接收一个第二电子部件、并 用来至少部分地根据第二电子部件在第二地点处理该电子交易的至少 一个第二部分。
92.一个如权利要求91所述的系统,其特征还在于:
在第二地点用来将至少一个信号从第二地点传送到第一地点的装 置,以及
在第一地点用来至少部分地根据来自第二地点的信号的接收,在 第一地点执行该电子交易的至少一个第三部分的装置。
93.一个包含带有受保护处理环境的多个节点的分布式电子权利 管理系统,其特征在于:每个节点都可以执行电子进程作为对电子部 件的接收和装配的响应,并且节点在装配电子部件之前对每个电子部 件进行鉴别。
94.一个分布式电子权利管理方法,该方法包括:
由至少一个受保护处理环境执行电子进程,作为对电子部件的接 收和装配的响应,以及
在受保护处理环境内装配电子部件之前对每个电子部件进行鉴 别。
95.一个如权利要求94所述的方法,其中,鉴别步骤包括从一个 确认权威机构获得一个对应证明的步骤。
96.一个包含带有受保护处理环境的多个节点的分布式电子权利 管理系统,其特征在于:每个节点都可以执行电子进程作为对电子部 件的接收和装配的响应,并且节点通过从一个确认权威机构获得一个 对应证明来对每个电子部件进行鉴别。
97.在一个包含带有受保护处理环境的多个节点的分布式电子权 利管理系统中,一个发放允许每个节点在装配电子部件以执行和/或控 制电子权利管理进程之前鉴别电子部件的证明的确认机构。
98.在一个包含均带有受保护处理环境的多个节点的分布式电子 权利管理系统中的一个方法,其特征在于下列步骤:允许每个节点在 装配电子部件以执行和/或控制电子权利管理进程之前发放鉴别电子 部件的证明。
99.一个包含带有受保护处理环境的多个节点的分布式电子权利 管理系统,其特征在于:所述节点强制执行使用和/或访问控制,并能 够电子地从用户获取报酬,并且/或者对使用信息执行其他处理供后续 传送给权利持有者。
100.在一个包含带有受保护处理环境的多个节点的分布式电子 权利管理系统中的一个方法,其特征在于下列步骤:强制执行使用和/ 或访问控制,并电子地从用户获取报酬并且/或者对使用信息执行其他 处理供后续传送给权利持有者。
101.一个包含带有受保护处理环境的多个节点的分布式电子权 利管理系统,其特征在于:每个节点都根据来自多个其他节点的信息 的接收而强制执行使用和/或访问控制。
102.一个分布式电子权利管理方法,其特征在于下列步骤:由受 保护处理环境根据来自多个其他节点的信息的接收而强制执行使用和 /或访问控制。
103.一个包含带有受保护处理环境的多个节点的分布式电子权 利管理系统,其特征在于:每个节点都能够至少暂时地将电子信用扩 展到一个相关用户,用来向权利持有者支付报酬。
104.在一个包含带有受保护处理环境的多个节点的分布式电子 权利管理系统中,一个操作该环境的方法,其特征在于下列步骤:至 少暂时地将电子信用扩展到一个相关用户,用来向权利持有者支付报 酬。
105.一个包含各带有受保护处理环境的多个节点的分布式电子 权利管理系统,其特征在于:所述节点能够在授予用户访问和/或使用 电子保护信息的权利之前向一个票据交换所请求和获取用户专用的电 子信用保证。
106.在一个包含各带有受保护处理环境的多个节点的分布式电 子权利管理系统中的一个方法,其特征在于下列步骤:在授予用户访 问和/或使用电子保护信息的权利之前向一个票据交换所请求和获取 用户专用的电子信用保证。
107.一个包含各带有受保护处理环境的多个节点的分布式电子 权利管理系统,其特征在于:每个节点都能够执行和/或请求一个电子 借或贷交易,以此作为授予用户访问和/或使用电子保护信息的权利的 一个条件。
108.在一个包含各带有受保护处理环境的多个节点的分布式电 子权利管理系统中的一个方法,其特征在于下列步骤:执行和/或请求 一个电子借或贷交易,以此作为授予用户访问和/或使用电子保护信息 的权利的一个条件。
109.一个包含各带有受保护处理环境的多个节点的分布式电子 权利管理系统,其特征在于:每个节点都能够维护用户活动的审核跟 踪供汇报给一个集中式地点之用,该集中式地点根据该审核跟踪分析 用户活动。
110.在一个包含各带有受保护处理环境的多个节点的分布式电 子权利管理系统中的一个方法,其特征在于下列步骤:
在多个地点维护用户活动的审核跟踪供汇报给一个集中式地点之 用,以及
在集中式地点根据该审核跟踪分析用户活动。
111.一个包含带有受保护处理环境的多个节点的分布式电子权 利管理系统,其特征在于:所述节点能够根据用户活动和/或将用户活 动与不相关事件相关联的电子控制来监视用户活动并触发不相关事件 的发生。
112.一个如权利要求111所述的方法,其中不相关事件是对一个 应用程序的激活。
113.一个如权利要求111所述的方法,其中不相关事件是对一个 安全容器的使用。
114.一个如权利要求111所述的方法,其中不相关事件是对受保 护处理环境的使用。
115.在一个包含带有受保护处理环境的多个节点的分布式电子 权利管理系统中的一个方法,其特征在于下列步骤:在所述节点上监 视用户活动,并根据用户活动和将用户活动与不相关事件相关联的电 子控制来触发不相关事件的发生。
116.一个如权利要求115所述的方法,其中不相关事件至少下列 之一:
对一个应用程序的激活,
对一个安全容器的使用,以及
对受保护处理环境的使用。
117.一个破坏包含带有受保护处理环境的多个节点的分布式电 子权利管理系统的方法,其特征在于下列步骤:
暴露一个证明私有密钥以允许一个人通过查问/应答协议,
攻破(a)初始化查问/应答安全性以及/或者(b)暴露外部通信密钥 两者中至少一个,
至少部分地根据上面提到的步骤创建一个处理环境,以及
使用该处理环境参与到分布式权利管理中来。
118.一个用于破坏包含带有受保护处理环境的多个节点的分布 式电子权利管理系统的处理环境,其特征在于:
包括一个被暴露的证明私有密钥以允许通过查问/应答协议的装 置,
用于攻破(a)初始化查问/应答安全性以及/或者(b)暴露外部通信 密钥两者中至少一个的装置,
用来参与到分布式权利管理中来的装置。
119.一个破坏包含带有受保护处理环境的多个节点的分布式电 子权利管理系统的方法,其特征在于下列步骤:破坏用于电子容器的 许可记录,并使用该受到破坏的许可记录来访问和/或使用电子信息。
120.一个破坏包含带有受保护处理环境的多个节点的分布式电 子权利管理系统的系统,其特征在于:用于使用一个电子容器的受到 破坏的许可记录来访问和/或使用电子信息的装置。
121.一个破坏受保护处理环境的方法,其特征在于下列步骤:
暴露至少一个系统范围内的密钥,以及
使用该密钥来得到对信息内容和/或管理信息的未经授权的访 问。
122.一个系统,它包括下列装置:
使用至少一个受到破坏的系统范围内的密钥来未经授权地解密和 破坏受保护处理环境的信息内容和/或管理信息。
123.一个包含带有受保护处理环境的多个节点的分布式电子权 利管理系统,其特征在于:所述节点可以在以未加密形式发布信息内 容之前电子地向信息内容中加入指纹。
124.在一个包含带有受保护处理环境的多个节点的分布式电子 权利管理系统中的一个方法,其特征在于:在至少一个所述节点中执 行下面的步骤:以未加密形式发布信息内容之前电子地向信息内容中 加入指纹。
125.一个包含带有受保护处理环境的多个节点的分布式电子权 利管理系统,其特征在于:所述节点可以在将信息内容加入到一个电 子容器中之前或允许对该信息内容使用之前,在电子信息内容中嵌入 含有标识了信息内容权利持有者以及来源标记的规定信息的电子指 纹。
126.在一个包含带有受保护处理环境的多个节点的分布式电子 权利管理系统中的一个方法,其特征在于下列步骤:在将信息内容加 入到一个电子容器中之前或允许对该信息内容使用之前,在电子信息 内容中嵌入含有包括标识了信息内容权利持有者以及来源标记的信息 在内的规定信息的电子指纹。
127.一个包含带有受保护处理环境的多个节点的分布式电子权 利管理系统,其特征在于:该系统包含从一个或多个所述多个节点接 收使用信息的一个或多个使用票据交换所,
128.在一个包含带有受保护处理环境的多个节点的分布式电子 权利管理系统中的一个方法,其特征在于下列步骤:由一个使用票据 交换所从一个或多个所述多个节点接收使用信息。
129.一个包含带有受保护处理环境的多个节点的分布式电子权 利管理系统,其特征在于:该系统包含从一个或多个节点接收有关对 信息内容的使用或访问的财务信息的一个或多个财务票据交换所。
130.在一个包含带有受保护处理环境的多个节点的分布式电子 权利管理系统中的一个方法,其特征在于下列步骤:由一个或多个票 据交换所从一个或多个所述多个节点接收财务信息。
131.一个包含带有受保护处理环境的多个节点的分布式电子权 利管理系统,其特征在于:该系统包含从一个或多个所述多个节点接 收信息并分析接收到的信息的一个或多个分析票据交换所。
132.在一个包含带有受保护处理环境的多个节点的分布式电子 权利管理系统中的一个方法,其特征在于下列步骤:由一个或多个分 析票据交换所从一个或多个所述多个节点接收信息并分析接收到的信 息。
133.一个处理有关对电子信息内容的使用或访问的信息的方 法,其中该信息收自一个或多个带有受保护处理环境节点。
134.一个用于向一个受保护处理环境节点提供信用以便与信息 内容交互作用的方法。
135.一个包含带有受保护处理环境的多个节点的分布式电子权 利管理系统,其特征在于:该系统包含向一个或多个所述多个节点传 送权利和/或许可信息的一个或多个票据交换所。
136.在一个包含带有受保护处理环境的多个节点的分布式电子 权利管理系统中的一个方法,其特征在于下列步骤:从一个票据交换 所向一个或多个所述多个节点传送权利和/或许可信息。
137.一个包含带有受保护处理环境的多个节点的分布式电子权 利管理系统,其特征在于:该系统包含定期向一个或多个所述节点传 送密码资料的一个或多个票据交换所,该密码资料更新和/或替换将要 过期的密码材料。
138.在一个包含带有受保护处理环境的多个节点的分布式电子 权利管理系统中的一个方法,其特征在于下列步骤:定期地从一个或 多个票据交换所向一个或多个所述节点传送密码材料,该密码资料更 新和/或替换将要过期的密码材料。
139.一个安全电子容器,其特征在于:该容器含有用来控制对该 容器外部的电子信息内容的使用和/或访问的电子控制。
140.一个方法,该方法包括:
访问包含在一个安全电子容器中的电子控制;以及
使用该控制至少部分地控制对该容器外部的电子信息内容的使用 和/或访问。
141.一个安全电子容器,其特征在于:该容器含有至少部分地控 制对被分发的电子信息内容的使用和/或访问的电子控制。
142.一个方法,该方法包括:
访问包含在一个安全电子容器中的电子控制;以及
使用该控制至少部分地控制对被分发的电子信息内容的使用和/ 或访问。
143.一个安全电子容器,其特征在于:该容器含有根据时间使电 子信息内容过期的电子控制。
144.一个用于处理安全电子容器的方法,该方法包含下面的步 骤:至少部分地按照该容器内的电子控制,根据时间使电子信息内容 过期。
145.一个计量对电子信息的使用和/或访问的方法,其特征在于下 列步骤:维护一个包含根据时间和/或主题再划分该计量信息的数据分 区的位图计量器数据结构。
146.一个用于计量对电子信息的使用和/或访问的系统,其特征在 于:用于维护一个包含根据时间和/或主题再划分该计量信息的数据分 区的位图计量器数据结构的装置。
147.一个包含带有受保护处理环境的多个节点的分布式电子权 利管理系统,其特征在于:该系统允许至少某些节点安全地说明对电 子信息内容的特许使用,并安全地强制执行该说明。
148.在一个包含带有受保护处理环境的多个节点的分布式电子 权利管理系统中的一个方法,其特征在于下列步骤:允许至少某些节 点安全地说明对电子信息内容的特许使用,并安全地强制执行该说 明。
149.一个包含带有一个或多个安全处理单元和一个或多个与至 少一个所述安全处理单元操作相连的安全数据库的一个或多个电子设 备的文件管理系统,所述系统还含有经过保护的使用控制信息,其中 (a)至少一部分所述控制信息被安全地存放在一个或多个所述安全数 据库中,(b)至少一部分所述控制信息控制使用信息的产生,至少一 部分该使用信息被汇报给一个或多个参与者。
150.在一个包含带有一个或多个安全处理单元和一个或多个与 至少一个所述安全处理单元操作相连的安全数据库的一个或多个电子 设备的文件管理系统中的一个用于处理受保护使用控制信息的方法, 该方法用于(a)将至少一部分所述控制信息安全地存放在一个或多个 所述安全数据库中,(b)至少部分地根据所述控制信息,控制使用信 息的产生,并至少将一部分使用信息汇报给一个或多个参与者。
151.一个包含带有受保护处理环境和一个或多个与至少一个所 述受保护处理环境操作相连的安全数据库的多个电子设备的文件管理 系统,所述系统还含有经过保护的使用控制信息,其中(a)至少一部 分所述控制信息被安全地存放在一个或多个所述安全数据库中,(b) 至少一部分所述控制信息控制使用信息的产生,以及将至少一部分所 述使用信息向一个或多个参与者的汇报。
152.在一个包含带有受保护处理环境和一个或多个与至少一个 所述受保护处理环境操作相连的安全数据库的多个电子设备的文件管 理系统中的一个用于处理使用控制信息的方法,该方法包括(a)用 于将至少一部分所述控制信息安全地存放在一个或多个所述安全数据 库中,(b)至少部分地根据所述控制信息,控制使用信息的产生,并 将至少一部分使用信息汇报给一个或多个参与者。
153.一个包含带有一个或多个安全处理单元和一个或多个与至 少一个安全处理单元操作相连的安全数据库的电子设备的电子合同系 统,所述系统还含有用于允许多方参与一个电子协定的装置,至少一 个所述数据库含有用于管理一个多方电子协定的至少一部分的安全控 制信息。
154.在一个包含带有一个或多个安全处理单元和一个或多个与 至少一个安全处理单元操作相连的安全数据库的电子设备的电子合同 系统中的一个方法,其特征在于下列步骤:允许多方参与一个电子协 定,并利用至少一个所述数据库中含有的安全控制信息来管理一个多 方电子协定的至少一部分。
155.一个包含至少一个安全处理单元和至少一个与至少一个所 述安全处理单元操作相连的安全数据库的电子设备装备,所述装备含 有用于监控设备使用的至少一个方面的使用以及至少部分地根据受保 护电子使用控制信息控制所述使用的装置。
156.在一个包含至少一个安全处理单元和至少一个与至少一个 所述安全处理单元操作相连的安全数据库的电子设备装备中的一个方 法,其特征在于下列步骤:监控设备使用的至少一个方面的使用以及 至少部分地根据受保护电子使用控制信息控制所述使用。
157.一个包含一个受保护处理环境和至少一个与所述受保护处 理环境操作相连的安全数据库的电子设备装备,所述装备含有用于监 控设备使用量的至少一个方面的使用以及至少部分地根据至少部分地 通过使用所述受保护处理环境而经过处理的受保护电子使用控制信息 控制所述使用的装置。
158.在一个包含一个受保护处理环境和至少一个与所述受保护 处理环境操作相连的安全数据库的电子设备装备中的一个方法,其特 征在于下列步骤:监控设备使用的至少一个方面的使用以及至少部分 地通过使用所述受保护处理环境而至少部分地根据经过处理的受保护 电子使用控制信息控制所述使用。
159.一个含有一个或多个CPU的电子设备装备,其中至少一个 CPU安装了一个集成安全处理单元,所述装备存放被设计为由所述集 成安全处理单元安全地处理的、受保护的设备使用控制信息。
160.在一个含有一个或多个CPU的电子设备装备中的一个方 法,其中至少一个CPU安装了一个集成安全处理单元,该方法包括下 列的步骤:用所述集成安全处理单元存贮并安全地处理受保护模部 件设备使用控制信息。
161.一个含有至少一个第一安全处理单元和一个或多个视频控 制器的电子设备装备,其中至少一个视频控制器安装了至少一个第二 安全处理单元,所述装备存放被设计为由所述安装的安全处理单元安 全地处理的、受保护的视频功能控制信息。
162.在一个含有至少一个第一安全处理单元和一个或多个视频 控制器的电子设备装备中的一个方法,其中至少一个视频控制器安装 了至少一个第二安全处理单元,该方法的特征在于下列步骤:存放被 设计为由所述安装的安全处理单元安全地处理的、受保护的视频功能 控制信息。
163.一个含有一个或多个视频控制器的电子设备装备,其中至少 一个视频控制器安装了至少一个安全处理单元,所述装备存放被设计 为由所述安装的安全处理单元安全地处理的、受保护的视频功能控制 信息,其中所述视频功能控制信息的至少一部分被存放在与所述至少 一个安全处理单元中的至少一个操作相连的一个安全数据库中。
164.在一个含有一个或多个视频控制器的电子设备装备中的一 个方法,其中至少一个视频控制器安装了至少一个安全处理单元,该 方法包含下列步骤:将被设计为由所述安装的安全处理单元安全地处 理的、受保护的视频功能控制信息存放在与所述至少一个安全处理单 元中的至少一个操作相连的一个数据库中。
165.一个含有一个或多个视频控制器和至少一个安全处理单元 的电子设备装备,所述装备存放被设计为由所述安全处理单元安全地 处理的部件、模块化受保护视频功能控制信息,其中至少一部分所述 视频功能控制信息被存放在与所述至少一个安全处理单元中的至少一 个操作相连的一个安全数据库中。
166.在一个含有一个或多个视频控制器和至少一个安全处理单 元的电子设备装备中的一个方法,该方法包含下列步骤:将被设计为 由所述安全处理单元安全地处理的部件、模块化受保护视频功能控制 信息存放在与所述至少一个安全处理单元中的至少一个操作相连的一 个安全数据库中。
167.一个含有至少一个安全处理单元和一个或多个网络通信装 置的电子设备装备,其中至少一个网络通信装置安装了至少另一个安 全处理单元,所述装备存放被设计为由所述集成安全处理单元处理的 受保护网络控制信息。
168.在一个含有至少一个安全处理单元和一个或多个网络通信 装置的电子设备装备中的一个方法,其特征在于下列步骤:将至少另 一个安全处理单元安装进至少一个网络通信装置中,将网络控制信息 至少部分地存放在所述安装的安全处理单元中,并用所述安全处理单 元安全地处理所述受保护网络控制信息。
169.一个含有一个或多个调制解调器的电子设备装备,其中至少 一个调制解调器安装了至少一个安全处理单元,所述装备存放被设计 为由所述安装的安全处理单元安全地处理的模块化、部件受保护调制 解调器控制信息。
170.在一个含有一个或多个调制解调器的电子设备装备中的一 个方法,其中至少一个调制解调器安装了至少一个安全处理单元,该 方法的特征在于下列步骤:由所述集成安全处理单元存放并安全地处 理模块化、部件受保护调制解调器控制信息。
171.一个含有至少一个安全处理单元和一个或多个调制解调器 的电子设备装备,其中至少一个调制解调器安装了至少另一个安全处 理单元,所述装备存放被设计为由所述被装入安全处理单元安全地处 理的受保护调制解调器控制信息。
172.在一个含有至少一个安全处理单元和一个或多个调制解调 器的电子设备装备中的一个方法,其中至少一个调制解调器安装了至 少另一个安全处理单元,该方法含有下面的步骤:在所述被装入安全 处理单元中存放并安全地处理受保护调制解调器控制信息。
173.一个含有至少一个安全处理单元和一个或多个CD-ROM设 备的电子设备装备,其中至少一个CD-ROM设备安装了至少另一个安 全处理单元,所述装备存放被设计为由所述安装的安全处理单元安全 地处理的受保护CD-ROM控制信息。
174.在一个含有至少一个安全处理单元和一个或多个CD-ROM 设备的电子设备装备中的一个方法,其中至少一个CD-ROM设备安装 了至少另一个安全处理单元,该方法的特征在于下列步骤:在所述安 装的安全处理单元中存放并安全地处理受保护CD-ROM控制信息。
175.一个含有一个或多个网络通信装置的电子设备装备,其中至 少一个网络通信装置安装了至少一个安全处理单元,所述装备存放被 设计为由所述安装的安全处理单元安全地处理的模块化、部件受保护 网络控制信息。
176.在一个含有一个或多个网络通信装置的电子设备装备中的 一个方法,其中至少一个网络通信装置安装了至少一个安全处理单 元,该方法特征在于下列步骤:由所述安装的安全处理单元存放并安 全地处理受保护网络控制信息。
177.一个含有一个受保护处理环境和一个与所述安全处理环境 操作相连的安全数据库的顶置控制器装备,所述装备还含有控制信 息,该控制信息用来根据在所述受保护处理环境中对至少一部分所述 控制信息的处理而控制对所述控制器的使用,其中至少一部分所述控 制信息被存放在所述数据库中。
178.在一个含有一个受保护处理环境和一个与所述安全处理环 境操作相连的安全数据库的顶置控制器装备中的一个方法,其特征在 于下列步骤:(a)使用机顶控制器装备中的控制信息来根据在所述受 保护处理环境中对至少一部分所述控制信息的处理而控制对所述控制 器的使用,并将至少一部分所述控制信息存放在所述数据库中。
179.一个含有一个用于控制对电子游戏的使用的受保护处理环 境的电子游戏装备,所述装备含有游戏使用控制信息、与所述受保护 处理环境操作相连的、用来至少部分地存放用以对所述游戏的至少一 个的至少一部分的使用的至少某些方面进行控制的控制信息的数据库 装置、以及含有受保护电子游戏信息内容的移动对象。
180.在一个含有一个用于控制对电子游戏的使用的受保护处理 环境的电子游戏装备中的一个方法,该方法含有下面的步骤:
(a)在与所述受保护处理环境操作相连的数据库装置中包括游戏 使用控制信息;以及
(b)至少部分地由被存贮的使用控制信息来控制对所述游戏的至 少一个的至少一部分的使用的至少某些方面。
181.一个如权利要求178所述的方法,该方法还含有下面的步 骤:控制对含有受保护电子游戏信息内容的移动对象的使用。
182.一个含有用来控制对交互式游戏的使用的互相协作的受保 护处理环境的电子游戏装备,所述装备含有受保护的游戏使用控制信 息、以及与所述受保护处理环境操作相连的、用来至少部分地存放游 戏使用控制信息的数据库装置。
183.在一个含有受保护处理环境的电子游戏装备中的一个方 法,该方法包括:
(a)在一个与所述受保护处理环境操作相连的安全数据库装置中 存放受保护的游戏使用控制信息;以及
(b)至少部分地根据被存放的游戏使用控制信息来控制对交互式 游戏的使用。
184.一个含有用来控制游戏的使用的互相协作的受保护处理环 境的电子游戏装备,所述装备含有部件、模块化、受保护的游戏使用 控制信息,其中至少一部分所述受保护控制信息由在至少一个电子价 值链中保护其各自权利的多个参与者独立地提供。
185.在一个含有用来控制游戏的使用的互相协作的受保护处理 环境的电子游戏装备中的一个方法,该方法含有下面的步骤:
(a)由多个参与者独立地提供部件、模块化、受保护的游戏使用 控制信息的至少一部分;以及
(b)使用该控制信息来至少部分地保护至少一个电子价值链中的 所述多个参与者的各自权利。
186.一个含有用来控制对多媒体的使用的受保护处理环境的电 子多媒体装备,所述装备含有部件、模块化、多媒体使用控制信息、 以及与所述受保护处理环境操作相连的、用来至少部分地存放多媒体 使用控制信息的数据库装置。
187.在一个含有用来控制对多媒体的使用的受保护处理环境的 电子多媒体装备中的一个方法,该方法含有下面的步骤:在与所述受 保护处理环境操作相连的一个数据库装置中存放多媒体使用控制信 息,以及使用该被存放的控制信息来控制多媒体。
188.一个含有一个用于控制对多媒体的使用的受保护处理环境 的电子多媒体装备,所述装备含有多媒体使用控制信息、与所述受保 护处理环境操作相连的、用来至少部分地存放多媒体使用控制信息的 数据库装置、以及含有被分发的多媒体电子信息内容的受保护移动对 象。
189.在一个含有一个受保护处理环境的电子多媒体装备中的一 个方法,该方法的特征在于下列步骤:在与所述受保护处理环境操作 相连的数据库装置中存放多媒体使用控制信息,并至少部分地根据该 被存放的信息来控制含有被分发的多媒体电子信息内容的受保护移动 对象。
190.一个含有用来控制对多媒体的使用的互相协作的受保护处 理环境的电子多媒体装备,所述装备含有部件、模块化、受保护的多 媒体使用控制信息,其中至少一部分所述受保护控制信息由在至少一 个电子价值链中保护其各自权利的多个参与者独立地提供。
191.一个如权利要求188所述的系统,该系统还含有一个安全处 理单元。
192.在一个含有受保护处理环境的电子多媒体装备中的一个方 法,该方法包括:由在至少一个电子价值链中保护其各自权利的多个 参与者独立地提供部件、模块化、受保护的多媒体使用控制信息的至 少一部分,并使用该使用控制信息来控制对多媒体的使用。
193.一个如权利要求190所述的方法,其中使用步骤至少部分地 在一个安全处理单元中执行。
194.一个支持多个加密算法的集成电路,该集成电路含有至少一 个微处理器、存贮器、输入/输出装置、至少一个用来加密和/或解密信 息的电路、以及由至少一个该微处理器使用以便执行加密和/或解密功 能的一个或多个软件程序。
195.在一个支持多个加密算法、含有至少一个微处理器、存贮 器、输入/输出装置、并提供一个受保护处理环境的安全集成电路中的 方法,该方法的特征在于:在该微处理器中执行一个或多个软件程序 的至少一部分,以执行该集成电路中的加密和/或解密功能。
196.一个含有至少一个微处理器、存贮器、至少一个实时时钟、 至少一个随机数发生器、至少一个用于加密和/或解密信息的电路、以 及被独立传递的和/或可独立交付的经过确认的软件的集成电路。
197.一个含有至少一个微处理器、存贮器、输入/输出装置、一个 防破坏屏障、以及一个权利操作系统的至少一部分的集成电路。
198.一个含有至少一个微处理器、存贮器、输入/输出装置、至少 一个实时时钟、一个防破坏屏障、以及用来记录对至少一个实时时钟 的电源中断的装置的集成电路。
199.一个分发信息的方法,其特征在于下列步骤:压缩信息,在 第一地点加密经过压缩的信息,将经过加密的信息分发到一个或多个 第二地点,使用一个防破坏集成电路首先解密然后解压缩该信息。
200.一个用于分发信息的系统,其特征在于:
用于压缩信息的装置;
用于在第一地点加密经过压缩的信息的装置;
用于将经过加密的信息分发到一个或多个第二地点的装置;以及
用于使用一个防破坏集成电路首先解密然后解压缩该信息的装 置。
201.一个安全地管理被分发的事件的方法,其特征在于下列步 骤:向一个或多个用户提供安全事件处理环境,允许一个第一用户通 过使用第一安全事件处理环境规定用于事件管理的控制信息,以及通 过使用一个第二安全事件处理环境来管理对该事件的处理。
202.一个用于安全地管理被分发的事件的系统,其特征在于:
允许一个第一用户规定用于事件管理的控制信息的第一安全事件 处理环境,以及
与第一安全事件处理环境互相协作的、用于管理该事件的处理的 一个第二安全事件处理环境。
203.一个用于支持电子商业处理和控制链的方法,其特征在于下 列步骤:一个第一和一个第二参与者独立地规定描述与对电子商业价 值链的操作相关的要求的、受保护的、模块化部件控制信息。
204.一个用于支持电子商业处理和控制链的系统,其特征在于: 允许一个第一和一个第二参与者独立地规定描述与对电子商业处理和 控制价值链的操作相关的要求的、受保护的、模块化部件控制信息的 装置,以及用于安全地强制执行由该控制信息描述的所述要求的装 置。
205.一个用于支持电子商业的方法,其特征在于下列步骤:一个 第一和一个第二参与者独立地规定用于管理对数字信息的使用的控制 信息,其中,当所述数字信息通过一个处理和控制链移动的时候,所 述第一和第二参与者独立地维护由所述控制信息强制执行的持久权 利。
206.一个用于支持电子商业的系统,包括:
用于允许一个第一参与者规定用于管理对数字信息的使用的控制 信息的装置,
用于允许一个第二参与者规定用于管理对数字信息的使用的控制 信息的装置,以及
用于在所述数字信息从一个地点和/或进程移动到另一个的时候 维护由所述控制信息强制执行的持久权利的处理和控制链的装置。
207.一个用于安全维护电子权利的方法,该方法包括下面的一个 第一步骤:价值链中的多个参与者独立并安全地规定有关他们的电子 权利的控制信息,其中所述控制信息用来强制执行涉及对放在软件容 器中分发的电子信息的使用的条件。
208.一个用于安全维护电子权利的系统,该系统包括:
用于允许价值链中的多个参与者独立并安全地规定有关他们的电 子权利的控制信息的装置,以及
用于使用所述控制信息来强制执行涉及对放在软件容器中分发的 电子信息的使用的条件的装置。
209.一个用于安全地控制对受保护电子信息内容的使用的方 法,该方法包括下面的步骤:支持用于管理至少一个涉及对所述信息 内容的使用的事件的、模块化的、单独的控制信息装备,这样,用户 可以在用于管理所述至少一个事件的、单独的控制信息装备之间进行 选择。
210.一个用于安全地控制对受保护电子信息内容的使用的系 统,该系统包括:用于管理至少一个涉及对所述信息内容的使用的事 件的、模块化的、单独的控制信息装备,这样,用户可以在用于管理 所述至少一个事件的、单独的控制信息装备之间进行选择。
211.一个使用单独的、模块化的、用于管理对加密数字信息的使 用的控制结构的方法,其特征在于下列步骤:允许商业价值链参与者 支持两个或多个(1)信息内容事件触发、(2)审核、以及(3)预算控制变量 之间的多个关系。
212.一个使用单独的、模块化的、用于管理对加密数字信息的使 用的控制结构的系统,其特征在于:用于允许商业价值链参与者支持 两个或多个(1)信息内容事件触发、(2)审核、以及(3)预算控制变量之间 的多个关系的装置。
213.一个允许电子价值链的非直接参与方提供安全控制信息以 强制执行至少一个控制要求的处理和控制链方法,所述方法的特征在 于:一个第一步骤,即一个第一价值链参与者规定与数字信息相关的 控制信息;以及一个第二步骤,其中所述非直接参与方独立并安全地 提供安全控制信息,以便将其加入到一个含有所述相关控制信息的聚 合控制信息集合中,所述聚合控制信息至少部分地管理与第二价值链 参与者对至少一部分所述数字信息的使用相关的条件。
214.一个用于允许电子价值链的非直接参与方提供安全控制信 息以强制执行至少一个控制要求的处理和控制链系统,所述系统的特 征在于:
用于允许一个第一价值链参与者规定与数字信息相关的控制信息 的装置,
用于允许所述非直接参与方独立并安全地提供安全控制信息,以 便将其加入到一个含有所述相关控制信息的聚合控制信息集合中的装 置,
以及,响应所述聚合控制信息、用于至少部分地管理与第二价值 链参与者对至少一部分所述数字信息的使用相关的条件的装置。
215.一个用于把对一个价值链参与者持有的某些权利的管理分 派给一个第二价值链参与者的电子商业控制信息管理方法,其特征在 于下列步骤:所述第一参与者规定描述了涉及一个或多个处理和控制 链电子事件的他们的至少一部分权利的安全控制信息,其中,所述第 一参与者提供授权所述第二参与者作为所述第一参与者的代理来管理 某些或全部所述权利的另外控制信息。
216.一个用于把对一个价值链参与者持有的某些权利的管理分 派给一个第二价值链参与者的电子商业控制信息管理系统,其特征在 于:
用于允许所述第一参与者规定描述了涉及一个或多个处理和控制 链电子事件的他们的至少一部分权利的安全控制信息的装置;以及
用于允许所述第一参与者提供授权所述第二参与者作为所述第一 参与者的代理来管理某些或全部所述权利的另外控制信息的装置。
217.一个用于管理由处理和控制电子链引起的商业事件税收的 方法,其特征在于:一个第一步骤,即向一个用户分发安全数字信息 并规定控制用于对所述数字信息的使用的至少一个条件的安全控制信 息,以及一个第二步骤,即一个政府机构安全地、独立地提供用于自 动管理对所述商业事件的交税的安全控制信息。
218.一个用于管理由处理和控制电子链引起的商业事件税收的 系统,其特征在于:
用于向一个用户分发安全数字信息的装置;
用于规定控制用于对所述数字信息的使用的至少一个条件的安全 控制信息的装置;以及
用于允许一个政府机构安全地、独立地提供用于自动控制对所述 商业事件的交税的安全控制信息的装置。
219.一个用于管理与电子事件相关的隐私权的方法,其特征在 于:一个第一步骤,即一个第一参与者保护含有说明禁止一个第二参 与者进行至少一次未授权使用的信息的数字信息;以及一个第二步 骤,即规定某些涉及对至少一部分所述受保护数字信息的使用的控制 信息,其中所述控制信息强制执行所述第二参与者的、涉及个人隐私 和/或特许使用和/或包含在所述受保护数字信息中的所有权信息的至 少一个权利。
220.一个用于管理与电子事件相关的隐私权的系统,其特征在 于:
用于允许第一参与者保护含有说明禁止一个第二参与者进行至少 一次未授权使用的信息的数字信息的装置;
用于规定某些涉及对至少一部分所述受保护数字信息的使用的控 制信息的装置;以及
用于使用所述控制信息强制执行所述第二参与者的、涉及个人隐 私和/或特许使用和/或包含在所述受保护数字信息中的所有权信息的 至少一个权利的装置。
221.一个用于管理与电子事件相关的隐私权的方法,其特征在 于:一个第一步骤,即一个第一参与者保护数字信息免受至少一次未 授权使用,并规定某些控制信息以创建用于对所述受保护信息的使用 的条件;以及一个第二步骤,即所述数字信息的用户规定另外的、控 制有关所述用户对至少一部分所述数字信息的使用的信息的汇报的控 制信息。
222.一个用于管理与电子事件相关的隐私权的系统,其特征在 于:
用于允许一个第一参与者保护数字信息免受至少一次未授权使用 以及规定某些控制信息以创建用于对所述受保护信息的使用的条件的 装置;以及
用于允许所述数字信息的用户规定另外的、控制有关所述用户对 至少一部分所述数字信息的使用的信息的汇报的控制信息的装置。
223.一个用于控制电子处理和商业的安全方法,其特征在于下列 步骤:分发互相协作的受保护处理环境,并在所述受保护处理环境的 多个接收者之间传播含有数字信息内容和准备为至少一部分所述受保 护处理环境所用的相关信息内容控制信息的软件容器,其中,所述方 法含有下面的另外步骤:至少部分地根据通过使用至少一个受保护处 理环境对至少一部分所述控制信息的安全处理来控制对至少某些所述 数字信息内容的使用。
224.一个用于控制电子处理和商业的安全系统,其特征在于:
被分发的、互相协作的受保护处理环境,
用于在所述受保护处理环境之间传播含有数字信息内容和准备为 至少一部分所述受保护处理环境所用的相关信息内容控制信息的软件 容器的装置;以及
至少受保护处理环境中的某些装置,用于至少部分地根据对至少 一部分所述控制信息的安全处理来控制对至少某些所述数字信息内容 的使用。
225.一个用于支持安全电子零售环境的电子商业网络方法,其特 征在于下列步骤:提供通过使用VDE通信技术和安全软件容器而联成 网络的、用户确认了的控制信息、智能卡、安全处理单元、以及零售 终端设备。
226.一个用于支持安全电子零售环境的电子商业网络系统,其特 征在于:
用于将智能卡、安全处理单元、以及零售终端系统联成网络的装 置;以及
用于使智能卡、安全处理单元、以及零售终端系统相互之间以及 与VDE通信技术和安全软件容器互相协作的装置。
227.一个支持电子商业设备以便安全地管理商业活动中的用户 权利的方法,其特征在于下列步骤:向用户提供包含在物理设备中的 至少一部分VDE节点,所述物理设备可以被配置成与主机系统的配套 连接器兼容,以支持多个参与者之间的、安全的、互相协作的交易活 动。
228.一个用于安全地管理商业活动中的用户权利的系统,该系统 含有:一个包含便携式VDE节点的至少一部分的物理设备,所述物理 设备可以被配置成与主机系统的配套连接器兼容,以支持多个参与者 之间的、安全的、互相协作的交易活动。
229.一个用于支持可编程电子商业环境的方法,其特征在于下列 步骤:向多个参与者提供安全地处理独立的模块化部件计帐管理方 法、预算管理方法、计量管理方法、以及相关审核管理方法的安全商 业节点,其特征还在于下列步骤:支持为响应电子商业事件活动而触 发计量、审核、计帐和预算方法。
230.一个可编程电子商业环境,其特征在于下面的安全商业节 点:每个安全商业节点都包括:
用于安全地处理独立的模块化部件计帐管理方法、预算管理方 法、计量管理方法、以及相关审核管理方法的装置;以及
用于支持为响应电子商业事件活动而触发计量、审核、计帐和预 算方法的装置。
231.一个包含带有由商业参与者规定的电子商业事件控制指令 的模块化标准化控制部件、及带有处理至少一部分所述商业事件控制 指令的一个或多个安全处理单元的多个电子设备的电子商业系统,所 述系统还包含与至少一个安全处理单元操作相连的、用于至少部分地 安全存放至少一部分所述控制指令供所述至少一个安全处理单元使用 的一个或多个数据库。
232.在一个包含带有由商业参与者规定的电子商业事件控制指 令的模块化标准化控制部件、及带有处理至少一部分所述商业事件控 制指令的一个或多个安全处理单元的多个电子设备的电子商业系统中 的一个方法,其特征在于下列步骤:提供与至少一个安全处理单元操 作相连的一个或多个数据库,并在该安全数据库中至少部分地安全存 放至少一部分所述控制指令供所述至少一个安全处理单元使用。
233.一个包含带有一个或多个互相协作安全处理单元的多个电 子设备的信息内容分发系统,所述一个或多个互相协作安全处理单元 与供至少一个所述安全处理单元使用的一个或多个数据库操作相连, 所述一个或多个数据库含有(a)用于解密被分发的、经过加密的数字 信息的一个或多个解密密钥,以及(b)加密的审核信息,所述审核信 息反映了对所述被分发数字信息的使用的至少一个方面。
234.一个信息内容分发方法,该方法包括:
分发含有一个或多个互相协作安全处理单元的多个电子设备,
将该设备与一个或多个数据库操作相连;
在所述一个或多个数据库中存放一个或多个解密密钥,
使用该解密密钥来解密被分发的、经过加密的数字信息,以及
在一个或多个数据库中存放加密的审核信息,所述审核信息反映 了对所述被分发数字信息的使用的至少一个方面。
235.一个含有多个电子设备的电子货币系统,该电子货币系统含 有:(a)受保护处理环境,(b)经过加密的电子货币和被配置为可以由 至少一个所述受保护处理环境使用的相关安全控制信息,以及(c)用于 将与电子货币使用相关的信息从一个第一互相协作受保护处理环境安 全地传送给一个第二互相协作受保护处理环境的使用汇报装置。
236.一个电子货币方法,该方法包括:
分发多个电子设备,这些电子设备包含(a)受保护处理环境,(b) 经过加密的电子货币和被配置为可以由至少一个所述受保护处理环境 使用的相关安全控制信息,以及
将与电子货币使用相关的信息从一个第一互相协作受保护处理环 境安全地传送给一个第二互相协作受保护处理环境。
237.一个用于电子财务活动的方法,其特征在于下列步骤:
将含有财务信息的数字容器从一个第一互相协作安全节点传送给 一个第二互相协作安全节点,将模块化标准控制信息传送给所述第二 安全节点以便至少部分地设置用于对至少一部分所述财务信息的使用 的条件,
将有关所述使用的信息汇报给所述第一互相协作安全节点。
238.一个用于电子财务活动的系统,其特征在于:
用于将含有财务信息的数字容器从一个第一互相协作安全节点传 送给一个第二互相协作安全节点的装置,
用于将模块化标准控制信息传送给所述第二安全节点的装置,
第二安全节点中的装置,该装置用于至少部分地设置用于对至少 一部分所述财务信息的使用的条件,以及
用于将有关所述使用的信息从第二安全节点汇报给所述第一互相 协作安全节点的装置。
239.一个用于电子货币管理的方法,该方法包括:
使用至少一个安全容器将加密的电子货币从一个第一互相协作安 全用户节点传送给一个第二互相协作用户节点,以及
提供安全控制信息供所述至少一个安全容器使用,所述安全控制 信息至少部分地维护有条件的匿名货币使用信息。
240.一个用于电子货币管理的系统,该系统包括:
用于使用至少一个安全容器将加密的电子货币从一个第一互相协 作安全用户节点传送给一个第二互相协作用户节点的装置;
用于提供安全控制信息供所述至少一个安全容器使用的装置,所 述安全控制信息至少部分地维护有条件的匿名货币使用信息。
241.一个用于电子财务活动管理的方法,其特征在于下列步骤:
将财务信息标准化控制信息从一个第一安全节点安全地传送给一 个第二安全节点以便控制对在一个财务价值链中使用的财务信息的使 用,
将所述财务信息标准化控制信息从一个第一安全节点安全地传送 给一个第三安全节点以便控制对在一个财务价值链中使用的财务信息 的使用,
将加密的财务信息从所述第二安全节点安全地传送给所述第三安 全节点,包括传送安全控制信息,在所述第三节点至少部分地通过使 用由所述第一节点和所述第二安全节点提供的安全控制信息来处理所 述财务信息,其中所述标准化控制信息被至少部分地存放在所述第三 安全节点中包含的一个安全数据库中。
242.一个用于电子财务活动管理的系统,其特征在于:
一个耦合在第一和第二安全节点上的装置,用于将财务信息标准 化控制信息从所述第一安全节点安全地传送给所述第二安全节点以便 控制对在一个财务价值链中使用的财务信息的使用,
耦合在第一安全节点与一个第三安全节点之间的装置,用于将所 述财务信息标准化控制信息从所述第一安全节点传送给所述第三安全 节点,以便控制在一个财务价值链中使用的财务信息的使用,
耦合在第二和第三节点之间的装置,用于将加密的财务信息从所 述第二安全节点安全地传送给所述第三安全节点,包括传送安全控制 信息,以及
在第三节点中的装置,用于至少部分地通过使用由所述第一节点 和所述第二安全节点提供的安全控制信息在所述第三节点上处理所述 财务信息,以及
在第三节点中用于至少部分地存放所述标准化控制信息的一个安 全数据库。
243.一个用于信息管理的方法,其特征在于下列步骤:在一个第 一地点创建至少一个智能对象,保护所述智能对象的至少一部分,包 括保护指定给所述智能对象的至少一个规则和/或控制,将所述至少一 个智能对象分发到至少一个第二地点,根据指定给所述智能对象的至 少一个所述规则和/或控制的至少一部分在所述至少一个第二地点安 全地处理所述至少一个智能对象的至少一部分信息内容。
244.一个信息管理系统,其特征在于:
用于在一个第一地点创建至少一个智能对象的装置;
用于保护所述智能对象的至少一部分的装置,包括用于保护指定 给所述智能对象的至少一个规则和/或控制的装置;
用于将所述至少一个智能对象分发到至少一个第二地点的装置; 以及
用于根据指定给所述智能对象的至少一个所述规则和/或控制的 至少一部分在所述至少一个第二地点安全地处理所述至少一个智能对 象的至少一部分信息内容的装置。
245.一个对象处理系统,该系统包含:带有至少部分受保护的可 执行信息内容和涉及该信息内容的执行的相关操作的至少一个至少部 分受保护的规则和/或控制的至少一个安全对象,以及用于根据所述至 少一个相关规则和/或控制中的至少一个的至少一部分来执行该可执 行信息内容的至少一个安全执行环境
246.一个对象处理方法,该方法包括:
提供带有至少部分受保护的可执行信息内容和涉及该信息内容的 执行的相关操作的至少一个至少部分受保护的规则和/或控制的至少 一个安全对象,
根据所述至少一个相关规则和/或控制中的至少一个的至少一部 分,在至少一个安全执行环境中处理该可执行信息内容。
247.一个权利分布式数据库环境,该环境包括:(a)允许一个或 多个中央权威结构创建用于对被加密数字信息的使用的控制信息的装 置,(b)在多个用户站点的、用于安全存放控制信息和审核信息的互 相协作数据库管理系统,(c)用于在用户站点之间安全地传送控制信息 和审核信息的安全通信装置,以及(d)用于编纂和分析来自多个用户 站点的使用信息的集中式数据库装置。
248.在一个权利分布式数据库环境中的一个方法,其特征在于下 列步骤:
创建用于对被加密数字信息的使用的控制信息,
在多个用户站点的互相协作数据库管理系统中安全地存放控制信 息和审核信息,
在用户站点之间安全地传送控制信息和审核信息,以及
编纂和分析来自多个用户站点的使用信息。
249.一个分布式数据库搜索方法,其特征在于下列步骤:创建至 少一个含有搜索条件的安全对象,将至少一个该安全对象传送到一个 或多个第二地点以按照至少一个规则和/或控制执行数据库搜索,至少 部分地根据一个安全对象中的搜索条件按照所述至少一个相关规则和 /或控制的至少一个的至少一部分处理至少一个数据库搜索,将数据库 搜索结果存放在同一个和/或一个或多个新安全对象中,并将包含搜索 结果的该安全对象传送给第一地点。
250.一个如权利要求247所述的方法,该方法的特征还在于下列 附加步骤:将至少一个附加规则和/或控制与搜索结果相关联,以创建 涉及对至少一部分所述搜索结果的使用的至少一个条件。
251.一个用于分布式数据库搜索的系统,其特征在于:
用于创建至少一个含有搜索规范的安全对象的装置,
用于将至少一个该安全对象传送到一个或多个第二地点以按照至 少一个规则和/或控制执行数据库搜索的装置,
用于至少部分地根据一个安全对象中的搜索条件按照所述至少一 个相关规则和/或控制的至少一个的至少一部分处理至少一个数据库 搜索的装置,
用于将数据库搜索结果存放在同一个和/或一个或多个新安全对 象中的装置,以及
用于将包含搜索结果的该安全对象传送给第一地点的装置。
252.一个如权利要求249所述的系统,该系统的特征还在于:用 于将至少一个附加规则和/或控制与搜索结果相关联以创建涉及对至 少一部分所述搜索结果的使用的至少一个条件的装置。
253.一个权利管理系统,该系统包括:受保护的信息、至少两个 受保护处理装备、以及一种权利管理语言,该语言允许表达至少部分 地由至少一个受保护处理系统处理的特许操作和在至少一部分该信息 上执行该操作的结果。
254.一个权利管理方法,该方法包括:
提供由至少两个受保护处理装备处理的受保护的信息,以及
利用一种权利管理语言表达至少部分地由至少一个受保护处理装 备处理的特许操作和在至少一部分该信息上执行该操作的结果。
255.一个保护数字信息的方法,其特征在于下列步骤:加密至少 一部分该信息,使用权利管理语言来描述有关对该信息的使用的条 件,向一个或多个接收者分发至少一部分所述信息以及用权利语言表 达的条件,使用一个含有至少一个受保护处理环境的电子设备装备安 全地管理对该信息的使用的至少一部分。
256.一个保护数字信息的系统,其特征在于:
用于加密至少一部分该信息的装置,
用于使用权利管理语言来描述有关对该信息的使用的条件的装 置,
用于向一个或多个接收者分发至少一部分所述信息以及用权利语 言表达的条件的装置,以及
一个含有至少一个受保护处理装备的、安全地管理对该信息的使 用的至少一部分的电子设备装备。
257.一个被分发的数字信息的管理系统,该系统包括:软件部 件,用于表达两个或多个该软件部件之间的处理关系的一种权利管理 语言,用于至少一部分该软件部件和至少一部分该权利管理表达的受 保护的处理装置,用于保护信息内容的装置,用于创建将受保护信息 内容与权利管理表达相关联的软件对象的装置,以及用于将受保护信 息内容、权利管理表达、以及该软件对象从提供方地点传递给一个用 户地点的装置。
258.一个被分发数字信息的管理方法,该方法包括:
采用一种权利管理语言表达两个或多个软件部件之间的处理关 系,
在至少一个受保护环境中处理至少一部分软件部件和至少一部分 权利管理表达,
保护信息内容,
创建将受保护信息内容与权利管理表达相关联的软件对象,以及
将受保护信息内容、权利管理表达、以及该软件对象从提供方地 点传递给一个用户地点。
259.一个鉴别系统,该系统包括:至少两个电子设备,反映了使 用不同确认私有密钥加密的身份信息的至少两个数字证明,其中这些 证明被存贮在一个第一电子设备中,在电子设备之间发送和接收信号 的通信装置,用于判断受到破坏的和/或过期的确认私有密钥的、与一 个第二电子设备有效连接的装置,用于第二电子设备至少部分地根据 上述判断而请求从第一电子设备传送数字证明中的一个的装置,以及 用于解密该证明并确定该证明的有效性和/或身份信息的有效性的、与 该第二电子设备有效连接的装置。
260.在一个含有至少两个电子设备的系统中的一个鉴别方法,该 方法包括:
发放反映身份信息的至少两个数字证明,包括使用不同确认私有 密钥加密这两个证明的步骤,
将这些证明存贮在一个第一电子设备中,
在电子设备之间发送和接收信号,
判断受到破坏的和/或过期的、与一个第二电子设备有效连接的确 认私有密钥,
由第二电子设备至少部分地根据上述判断而请求从第一电子设备 传送数字证明中的一个,
由第二电子设备解密该证明,以及
确定该证明的有效性和/或身份信息的有效性。
261.一个鉴别系统,该系统包括:至少两个电子设备,反映了使 用不同确认私有密钥加密的身份信息的至少两个数字证明,其中这些 证明被存贮在一个第一电子设备中,在电子设备之间发送和接收信号 的通信装置,用于第二电子设备请求从第一电子设备传送数字证明中 的一个的装置,其中至少部分地根据一个随机数或伪随机数在请求传 送哪个证明中作出选择,以及用于解密该证明并确定该证明的有效性 和/或身份信息的有效性的、与该第二电子设备有效连接的装置。
262.在一个含有至少两个电子设备的系统中的一个鉴别方法,该 方法包括:
发放反映身份信息的至少两个数字证明,包括使用不同确认私有 密钥加密这两个数字证明的步骤,
将这些证明存贮在一个第一电子设备中,
在电子设备之间发送和接收信号,
由第二电子设备请求从第一电子设备传送数字证明中的一个,包 括至少部分地根据一个随机数或伪随机数选择一个证明的步骤,
由第二电子设备解密该证明,以及
确定该证明的有效性和/或身份信息的有效性。
263.一个安全电子邮件的方法,其特征在于下列步骤:使用一个 互相协作的受保护处理环境创建至少一条电子消息,加密至少一部分 所述至少一条消息,安全地将一个或多个控制信息集合与一条或多条 消息相关联,以设置用于对所述至少一条消息的使用的至少一个条 件,将受保护的电子消息传送给带有受保护处理环境的一个或多个接 收者,安全地将至少一个同一或不同控制信息集合传送给每个接收 者,允许控制信息和受保护消息两者的接收者至少部分地按照由该控 制信息规定的条件使用消息信息。
264.一个含有多个受保护处理环境的安全电子邮件系统,其特征 在于:
用于创建至少一条电子消息的一个第一受保护处理环境,该第一 环境含有:用于加密至少一部分所述至少一条消息的装置、用于安全 地将一个或多个控制信息集合与一条或多条消息相关联以设置用于对 所述至少一条消息的使用的至少一个条件的装置、以及用于将受保护 的电子消息传送给带有互相协作的受保护处理环境的一个或多个接收 者的装置,
用于安全地将至少一个同一或不同控制信息集合传送给每个接收 者的装置,以及
用于允许控制信息和受保护消息两者的接收者至少部分地按照由 该控制信息规定的条件使用消息信息的装置。
265.一个信息管理的方法,其特征在于下列步骤:保护信息内容 免受未授权的使用,安全地将允许控制信息与至少一部分该受保护信 息内容相关联,其中,该允许控制信息加入了描述应该如何再分发该 允许控制信息的信息,向一个第一用户传递至少一部分所述受保护信 息内容,向一个第一用户传递至少一部分所述允许控制信息,从所述 第一用户接收一个再分发该允许控制信息的请求,使用描述应该如何 再分发该允许控制信息的信息创建一个新的允许控制信息,其中,所 述新允许控制信息可以与所述第一用户收到的允许控制信息相同或不 同,向一个第二用户传递所述新允许控制信息和/或受保护信息。
266.一个信息管理系统,其特征在于:
用于保护信息内容免受未授权的使用的装置,
用于安全地将允许控制信息与至少一部分该受保护信息内容相关 联的装置,包括用于加入描述应该如何再分发该允许控制信息的允许 控制信息的装置,
用于向一个第一用户传递至少一部分所述受保护信息内容的装 置,
用于向一个第一用户传递至少一部分所述允许控制信息的装置,
用于从所述第一用户接收一个再分发该允许控制信息的请求的装 置,
用于使用应该如何再分发该允许控制信息的描述创建一个新的允 许控制信息的装置,其中,所述新允许控制信息可以与所述第一用户 收到的允许控制信息相同或不同,以及
用于向一个第二用户传递所述新允许控制信息和/或受保护信息 的装置。
267.一个控制对被分发数字信息的再分发的方法,该方法含有下 面的步骤:加密数字信息,将所述被加密数字信息从一个第一参与者  分发给一个第二参与者,创建涉及将至少一部分所述被加密数字信息 从所述第二参与者向至少一个第三参与者再分发的控制信息,通过使 用处理所述控制信息的一个受保护处理环境来控制对所述被加密数字 信息的所述至少一部分的再分发。
268.一个用于控制对被分发数字信息的再分发的系统,该系统包 括:
用于加密数字信息的装置,
用于将所述被加密数字信息从一个第一参与者分发给一个第二参 与者的装置,
用于创建涉及将至少一部分所述被加密数字信息从所述第二参与 者向至少一个第三参与者再分发的控制信息的装置,以及
一个用于处理所述控制信息并用于控制对所述被加密数字信息的 所述至少一部分的再分发的受保护处理环境。
269.一个用于控制一个自动装置的方法,其特征在于下列步骤: 为一个或多个自动装置创建指令,创建加入了所述指令的一个安全容 器,将控制信息与所述安全容器相关联,将至少一个安全处理单元加 入所述一个或多个自动装置中,并按照至少一部分所述控制信息执行 至少一部分所述指令。
270.一个如权利要求267所述的方法,该方法的特征还在于:所 述控制信息包含描述使用所述指令所受的条件约束的信息以及在所述 指令被执行时所要求的审核汇报的特性。
271.一个自动装置控制系统,其特征在于:
用于为一个或多个自动装置创建指令的装置,
用于创建加入了所述指令的一个安全容器的装置,
用于将控制信息与所述安全容器相关联的装置,
用于将至少一个安全处理单元加入所述一个或多个自动装置中的 装置,以及
用于按照至少一部分所述控制信息执行至少一部分所述指令的装 置。
272.一个如权利要求269所述的系统,该系统的特征还在于:用 于创建所述控制信息的装置,包括用于描述使用所述指令所受的条件 约束的信息以及在所述指令被执行时所要求的审核汇报的特性的装 置。
273.一个用于检测电子商业中的欺骗行为的方法,其特征在于下 列步骤:创建至少一个安全容器,将控制信息与所述一个或多个容器 相关联,包括要求收集审核信息并将之传送给一个审核方的控制信 息,将所述一个或多个容器和所述控制信息传递给至少一个用户,记 录标识每个容器和每个所述用户的信息,接收审核信息,至少部分地 根据所述被接收的审核信息和/或所述控制信息创建一个使用轮廓,检 测某些审核信息至少部分地与所述使用轮廓不同的情况。
274.一个用于检测电子商业中的欺骗行为的系统,其特征在于:
用于创建至少一个安全容器的装置,
用于将控制信息与所述一个或多个容器相关联的装置,所述控制 信息包括要求收集审核信息并将之传送给一个审核方的控制信息,
用于将所述一个或多个容器和所述控制信息传递给至少一个用户 的装置,
用于记录标识每个容器和每个所述用户的信息的装置,
用于接收审核信息的装置,
用于至少部分地根据所述被接收的审核信息和/或所述控制信息 创建一个使用轮廓的装置,以及
用于检测某些审核信息至少部分地与所述使用轮廓不同的情况的 装置。
275.一个用于检测电子商业中的欺骗行为的方法,其特征在于下 列步骤:向消费者分发至少部分地受保护的数字信息,分发一个或多 个用来通过一个电子网络使用至少一部分所述数字信息的权利,允许 一个消费者通过使用一个受保护处理环境以及至少一个所述一个或多 个被分发的权利来使用至少一部分所述至少部分地受保护的数字信 息,检测涉及对所述数字信息的使用的异常使用活动。
276.一个用于检测电子商业中的欺骗行为的系统,其特征在于:
用于向消费者分发至少部分地受保护的数字信息的装置,
用于分发一个或多个用来通过一个电子网络使用至少一部分所述 数字信息的权利的装置,
允许一个消费者通过使用至少一个所述一个或多个被分发的权利 来使用至少一部分所述至少部分地受保护的数字信息的一个受保护处 理环境,以及
用于检测涉及对所述数字信息的使用的异常使用活动的装置。
277.一个可编程部件装备,包括:带有一个微处理器、存贮器、 任务管理器、存贮管理器和外部接口控制器的一个防破坏处理环境, 用于将任意部件至少部分地加载进存贮器中的装置,用于启动涉及对 所述部件的处理的一个或多个任务的装置,用于认证所述部件的有效 性、完整性和/或可信度的装置,用于创建任意部件的装置,用于将任 意事件与所述被创建的部件相关联的装置,用于确认被创建部件的有 效性、完整性和/或可信度的装置,以及用于安全地传递所述被创建部 件的装置。
278.在一个包含带有一个微处理器、存贮器、任务管理器、存贮 管理器和外部接口控制器的一个防破坏处理环境的可编程部件装备中 的一个处理方法,其特征在于下列步骤:
创建任意部件,
将任意事件与所述被创建的部件相关联,
将任意部件至少部分地加载进存贮器中,
启动涉及对所述被加载部件的处理的一个或多个任务,
确认被创建部件的有效性、完整性和/或可信度,以及
安全地传递所述被创建部件。
279.一个分布式受保护可编程部件装备,包括:带有一个微处理 器、存贮器、任务管理器、存贮管理器和外部接口控制器的至少两个 防破坏处理环境,用于将任意部件至少部分地加载进存贮器中的装 置,用于启动涉及对所述部件的处理的一个或多个任务的装置,及用 于确认所述部件的有效性、完整性和/或可信度的装置,所述装备还包 括:用于创建任意部件的装置,用于将任意事件与所述被创建的部件 相关联的装置,用于确认被创建部件的有效性、完整性和/或可信度的 装置,用于在所述至少两个防破坏处理环境中的至少两个之间安全地 传递所述被创建部件的装置。
280.在一个包含带有一个微处理器、存贮器、任务管理器、存贮 管理器和外部接口控制器的至少两个防破坏处理环境的分布式受保护 可编程部件系统中的一个方法,该方法包括:
创建任意部件,
确认所述部件的有效性、完整性和/或可信度,
将任意部件至少部分地加载进存贮器中,
启动涉及对所述部件的处理的一个或多个任务,
将任意事件与所述被创建的部件相关联,以及
在所述至少两个防破坏处理环境中的至少两个之间安全地传递所 述被创建部件。
281.一个电子设备,该电子设备包括:至少一个CPU、存贮器、 至少一个系统总线、至少一个受保护处理环境、以及权利操作系统或 与一个宿主操作系统相关联的权利操作系统层中的至少一个。
282.一个操作系统,该操作系统含有:至少一个任务管理器、至 少一个存贮管理器、至少一个输入/输出管理器、至少一个受保护处理 环境、用于检测事件的装置、用于将事件与权利控制功能相关联的装 置、用于至少部分地在所述一个或多个受保护处理环境中执行权利控 制功能的装置。
283.在一个含有至少一个任务管理器、至少一个存贮管理器、至 少一个输入/输出管理器、至少一个受保护处理环境的操作系统中的一 个操作方法,该方法包括:
检测事件,
将事件与权利控制功能相关联,以及
至少部分地在所述一个或多个受保护处理环境中执行权利控制功 能。
284.一个业务自动化的方法,其特征在于下列步骤:创建一个或 多个含有统计和/或其他管理信息的安全容器,将控制信息与所述一个 或多个安全容器相关联,该控制信息包括:对(a)可以和/或必须将所 述容器送达的一个或多个参与者的描述、和/或对(b)一个或多个参与 者针对所述统计和/或其他管理信息可以与/或必须执行的操作的描 述,将一个或多个所述容器传递给一个或多个参与者,并支持在一个 或多个参与者使用所述统计和/或其他管理信息之前、之中和/或之后描 述和/或强制执行至少一部分所述控制信息。
285.一个如权利要求282所述的方法,其中所述控制信息还包含 至少一个要求,即要求收集审核信息并将之传递给一个或多个审核 方,还包含向一方或多方传递至少一部分所述审核信息的步骤。
286.一个如权利要求283所述的方法,其中至少一部分所述审核 信息被自动地由至少一个所述审核方处理,该方法还包括另外将统 计、管理和/或审核信息传送给一方或多方的步骤,其中这些方可以与 提供审核信息的一方或多方相同和/或不同,而这要至少部分地取决于 上述被接收的审核信息的收到和/或信息内容。
287.一个如权利要求282所述的方法,其中至少两个所述方与不 同业务和/或其他组织相关联,并且所述控制信息含有至少部分地描述 了所述业务和/或其他组织之间的统计、管理、汇报和/或其他审核关系 的信息。
288.一个如权利要求282、283、284或285所述的方法,其中 某些或所有所述统计和/或其他管理信息包含在所述控制信息中。
289.一个业务自动化系统,其特征在于:
用于创建一个或多个含有会计和/或其他管理型信息的安全容器 的装置,
用于将控制信息与所述一个或多个安全容器相关联的装置,该控 制信息包括:对(a)可以和/或必须将所述容器送达的一方或多方的描 述、和/或对(b)一方或多方针对所述统计和/或其他管理信息可以与/ 或必须执行的操作的描述,
用于将一个或多个所述容器传递给一方或多方的装置,以及
用于支持在一方或多方使用所述统计和/或其他管理信息之前、之 中和/或之后描述和/或强制执行至少一部分所述控制信息的装置。
290.一个如权利要求287所述的系统,其中关联装置还包括:关 联至少一个要求,即要求收集审核信息并将之传递给一个或多个审核 方,并且传递装置包括用于向一方或多方传递至少一部分所述审核信 息的装置。
291.一个如权利要求288所述的系统,该系统还包括用于自动处 理所述审核信息的至少一部分的装置,并且该系统还包括下面的装 置:将另外的统计、管理和/或审核信息传送给一方或多方的装置,其 中这些方可以与提供审核信息的一方或多方相同和/或不同,而这要至 少部分地取决于上述被接收的审核信息的收到和/或信息内容。
292.一个如权利要求287所述的系统,其中至少两个所述方与不 同业务和/或其他组织相关联,并且所述关联装置包括产生含有至少部 分地描述了所述业务和/或其他组织之间的统计、管理、汇报和/或其他 审核关系的信息的控制信息。
288.一个如权利要求286、287、288或290所述的系统,其中 某些或所有所述统计和/或其他管理信息包含在所述控制信息中。
294.一个分发信息内容的方法,其特征在于下列步骤:创建一个 或多个第一安全容器,将控制信息与所述第一容器相关联,该控制信 息包括描述了抽取所述第一容器中的某些或所有信息内容所受的条件 约束的信息,将至少一部分所述第一容器以及所述控制信息传递给一 个或多个参与者,检测一个或多个所述参与者提出的、要求抽取所述 第一容器中的某些或所有信息内容的请求,判断该请求是否部分地或 完全地经过所述控制信息的允许,在所述控制信息允许的限度内按照 所述请求和所述控制信息创建一个或多个第二安全容器,至少部分地 根据与所述第一容器相关联的控制信息将控制信息与所述一个或多个 第二安全容器相关联。
295.一个分发信息内容的系统,其特征在于:
用于创建一个或多个第一安全容器的装置,
用于将控制信息与所述第一容器相关联的装置,该控制信息包括 描述了抽取所述第一容器中的某些或所有信息内容所受的条件约束的 信息,
用于将至少一部分所述第一容器以及所述控制信息传递给一个或 多个参与者的装置,
用于检测一个或多个所述参与者提出的、要求抽取所述第一容器 中的某些或所有信息内容的请求的装置,
用于判断该请求是否部分地或完全地经过所述控制信息的允许, 在所述控制信息允许的限度内按照所述请求和所述控制信息创建一个 或多个第二安全容器的装置,以及
用于至少部分地根据与所述第一容器相关联的控制信息将控制信 息与所述一个或多个第二安全容器相关联的装置。
296.一个分发信息内容的方法,其特征在于下列步骤:创建一个 或多个第一安全容器,将控制信息与所述第一容器相关联,该控制信 息包括描述了(a)将所述第一容器部分地或全部地嵌入到和/或安全地 关联到一个或多个第二安全容器所受的条件约束的信息、以及(b)所 述第一安全容器允许一个或多个安全容器被嵌入到和/或安全地关联 到所述第一安全容器所受的条件约束的信息,将至少一部分所述第一 容器以及所述控制信息传递给一个或多个参与者,检测一个或多个所 述参与者或另外参与者的提出的要求(a)将一个或多个第二容器完全 地或部分地嵌入到和/或安全关联到所述第一容器、以及/或者(b)将所 述第一安全容器完全地或部分地嵌入到和/或安全关联到一个安全容 器的请求,判断该请求是否是控制信息允许的,在控制信息允许的限 度内执行一个或多个嵌入和/或安全关联操作,在控制信息要求的限度 内和/或一个或多个所述参与者要求的限度内修改和/或创建新控制信 息以此至少部分地作为所述一个或多个嵌入和/或安全关联操作的结 果。
297.一个分发信息内容的系统,其特征在于:
用于创建一个或多个第一安全容器的装置,
用于将控制信息与所述第一安全容器相关联的装置,该控制信息 包括描述了(a)将所述第一容器部分地或全部地嵌入到和/或安全地关 联到一个或多个第二安全容器所受的条件约束的信息、以及(b)所述 第一安全容器允许一个或多个安全容器被嵌入到和/或安全地关联到 所述第一安全容器所受的条件约束的信息,
用于将至少一部分所述第一容器以及所述控制信息传递给一个或 多个参与者的装置,
用于检测一个或多个所述参与者提出的要求(a)将一个或多个第 二容器完全地或部分地嵌入到和/或安全关联到所述第一容器、以及/ 或者(b)将所述第一安全容器完全地或部分地嵌入到和/或安全关联到 一个安全容器的请求的装置,以及
用于判断该请求是否是控制信息允许的,在控制信息允许的限度 内执行一个或多个嵌入和/或安全关联操作,在控制信息要求的限度内 和/或一个或多个所述参与者要求的限度内修改和/或创建新控制信息 以此至少部分地作为所述一个或多个嵌入和/或安全关联操作的结果 的装置。
298.一个分发信息的方法,其特征在于下列步骤:保护信息免受 未授权的使用,将控制信息与该所述受保护信息相关联,利用多个路 径将至少一部分所述受保护信息传递给一个或多个参与者,利用相同 的或不同的多个路径将至少一部分所述控制信息传递给一个或多个参 与者,允许至少一个所述参与者按照至少一部分利用第二路径传递的 控制信息至少部分地使用利用第一路径传递的所述受保护信息。
299.一个如权利要求296所述的方法,其中至少一个传递受保护 信息和/或控制信息的所述路径由所述控制信息描述。
300.一个分发信息的系统,其特征在于:
用于保护信息免受未授权的使用的装置,
用于将控制信息与该所述受保护信息相关联的装置,
用于利用多个路径将至少一部分所述受保护信息传递给一个或多 个参与者的装置,
用于利用相同的或不同的多个路径将至少一部分所述控制信息传 递给一个或多个参与者的装置,
用于允许至少一个所述参与者按照至少一部分利用第二路径传递 的控制信息至少部分地使用利用第一路径传递的所述受保护信息的装 置。
301.一个如权利要求298所述的系统,其中传递装置包括通过至 少一个所述路径传递由所述控制信息描述的受保护信息和/或控制信 息。
302.一个分发信息的方法,其特征在于下列步骤:保护信息免受 未授权的使用,将控制信息与该所述受保护信息相关联,该控制信息 包括要求收集审核信息的信息,允许一个或多个参与者接收和/或处理 审核信息,将至少一部分所述受保护信息和所述控制信息传递给一个 或多个参与者,允许按照至少一部分要求收集审核信息的所述控制信 息至少部分地使用所述受保护信息,将所述审核信息传递给不同于所 述一个或多个传递方的一个或多个所述被允许的审核方。
303.一个如权利要求300所述的方法,其中至少一部分所述审核 方由所述控制信息规定。
304.一个分发信息的系统,其特征在于:
用于保护信息免受未授权的使用的装置,
用于将控制信息与该所述受保护信息相关联的装置,该控制信息 包括要求收集审核信息的信息,
用于允许一个或多个参与者接收和/或处理审核信息的装置,
用于将至少一部分所述受保护信息和所述控制信息传递给一个或 多个参与者的装置,
用于允许按照至少一部分要求收集审核信息的所述控制信息至少 部分地使用所述受保护信息的装置,以及
用于将所述审核信息交付给不同于所述一个或多个传递方的一个 或多个所述被允许的审核方的装置。
305.一个如权利要求302所述的系统,其中至少一个所述审核方 由所述控制信息规定。
306.一个安全的、基于部件的操作进程,包括:
(a)检索至少一个部件;
(b)检索一个规定了一个部件组的记录;
(c)检查所述部件和/或所述记录的有效性;
(d)按照所述记录使用所述部件来形成所述部件组;以及
(e)至少部分地根据所述部件组执行一个进程。
307.一个如权利要求304所述的进程,其中所述步骤(c)还包括执 行所述部件组。
308.一个如权利要求304所述的进程,其中所述部件包括可执行 码。
309.一个如权利要求304所述的进程,其中所述部件包括一个加 载模块。
310.一个如权利要求304所述的进程,其中所述记录包括:
(i)用于装配所述部件组的指令;以及
(ii)至少部分地规定了一个控制的信息;
并且,所述进程还包括:至少部分地根据所述控制对所述步骤(d) 和/或所述步骤(e)进行控制。
311.一个如权利要求304所述的进程,其中所述部件带有一个安 全性包装,并且所述控制步骤包括:至少部分地根据所述控制有选择 地打开所述安全性包装。
312.一个如权利要求304所述的进程,其中:
所述许可记录含有至少一个解密密钥;并且
所述控制步骤包括:控制对所述解密密钥的使用。
313.一个如权利要求304所述的进程,包括:至少在受保护处理 环境中执行至少两个所述步骤(a)和(e)。
314.一个如权利要求304所述的进程,包括:至少部分地在防破 坏硬件中执行至少两个所述步骤(a)和(e)。
315.一个如权利要求304所述的方法,其中所述执行步骤(e)包括 对使用进行计量。
316.一个如权利要求304所述的方法,其中所述执行步骤(e)包括 对使用进行审核。
317.一个如权利要求304所述的方法,其中所述执行步骤(e)包括 对使用进行预算。
318.一个安全部件操作系统进程,包括:
接收一个部件;
接收规定如何使用所述部件以形成一个部件组的指令;
鉴别所述接收到的部件和/或所述指令;
至少部分地根据所述收到的指令使用所述部件形成所述部件组; 以及
使用所述部件组执行至少一个操作。
319.一个包括在一个安全操作系统环境中执行下列步骤的方 法:
提供代码;
提供规定将所述代码装配成一个可执行程序的指令;
检查所述收到的代码和/或所述组装指令的有效性;以及
作为对一个事件发生的响应,按照所述接收到的组装指令装配所 述代码以形成一个代码组供执行。
320.一个用于使用安全操作环境管理至少一个资源的方法,所述 方法包括:
从所述操作环境外部的一个第一实体安全地接收一个第一控制;
从所述操作环境外部的一个第二实体安全地接收一个第二控制, 所述第二实体不同于所述第一实体;
使用至少一个资源安全地处理一个与所述第一和第二控制相关联 的数据项;以及
安全地应用所述第一和第二控制以管理所述资源供所述数据项使 用。
321.一个用于安全地管理至少部分地由一个电子装备在一个数 据项上执行的至少一个操作的方法,所述方法包括:
(a)将一个第一过程安全地传递给所述电子装备;
(b)将一个可独立于或独立于所述第一过程的第二过程安全地传 递给所述电子装备;
(c)在所述数据项上执行至少一个操作,包括结合使用所述第一和 第二过程以至少部分地安全地管理所述操作;以及
(d)根据已经发生的所述传递步骤(a)和(b),安全地调整对所述数 据项的至少一方面的使用。
322.一个如权利要求319所述的方法,该方法包括:在一个与执 行所述传递步骤(a)的时间不同的时间执行所述交付步骤(b)。
323.一个如权利要求319所述的方法,其中所述步骤(a)包括从一 个第一来源传递所述第一过程,并且所述步骤(b)包括:从一个不同于 第一来源的一个第二来源传递所述第二过程。
324.一个如权利要求319所述的方法,该方法还包括:确保所述 第一和第二过程的完整性。
325.一个如权利要求319所述的方法,该方法还包括:确认第一 和第二过程的每一个。
326.一个如权利要求319所述的方法,该方法还包括:鉴别第一 和第二过程的每一个。
327.一个如权利要求319所述的方法,其中所述使用步骤(c)包 括:在一个防破坏环境中执行所述第一和第二过程的至少一个。
328.一个如权利要求319所述的方法,其中所述步骤(c)包括:使 用所述第一和第二过程的至少一个来控制所述数据项。
329.一个如权利要求319所述的方法,该方法还包括:建立所述 第一和第二过程的至少一个与所述数据项之间的关系。
330.一个如权利要求319所述的方法,该方法还包括:建立所述 数据项与所述第一和第二过程的至少一个之间的对应。
331.一个如权利要求319所述的方法,其中所述传递步骤(b)包 括:传递至少一个至少部分加密的加载模块。
332.一个如权利要求329所述的方法,其中所述传递步骤(a)包 括:传递至少一个另外的至少部分加密的加载模块。
333.一个如权利要求319所述的方法,其中所述传递步骤(b)包 括:传递至少一个携带至少部分安全控制信息的信息内容容器。
334.一个如权利要求319所述的方法,其中所述传递步骤(b)包 括:传递一个控制方法和至少一个另外的方法。
335.一个如权利要求319所述的方法,其中所述传递步骤(a)包 括:
加密至少一部分所述第一过程;
将所述至少部分加密的第一过程传送给所述电子装备;
至少部分地使用所述电子装备解密至少一部分所述第一过程,以 及
利用所述电子装备确认所述第一过程。
336.一个如权利要求319所述的方法,其中所述传递步骤(b)包 括:传递一个管理对象中的、所述第一和第二过程的至少一个。
337.一个如权利要求319所述的方法,其中所述传递步骤(b)包 括:一同传递处于被至少部分加密的形式的所述第二过程和所述数据 项。
338.一个如权利要求319所述的方法,其中所述执行步骤包括对 使用进行计量。
339.一个如权利要求319所述的方法,其中所述执行步骤包括对 使用进行审核。
340.一个如权利要求319所述的方法,其中所述执行步骤包括对 使用进行预算。
341.一个用于安全地管理至少部分地由一个安全电子设备执行 的至少一个操作的方法,该方法包括:
(a)选择针对至少一个操作经过保护的一个项;
(b)将多个独立的过程安全独立地传递给所述电子设备;
(c)结合使用所述多个独立过程以针对所述被选择的项至少部分 地安全管理所述操作;以及
(d)调整在已经发生的所述传递步骤(b)上进行的所述操作的成功 完成。
342.一个用于根据可传递信息进行处理的方法,该方法包括:
安全地传递定义了一个进程的第一部分的第一代码段;
独立安全地传递定义了所述进程的第二部分的第二代码段;
确保第一和第二被传递代码段的完整性;以及
至少部分地根据所述第一和第二被传递代码段执行所述进程。
343.一个如权利要求340所述的方法,其中用于所述进程的一个 第一代码段至少部分地控制对信息内容的解密。
344.一个如权利要求340所述的方法,其中所述确保步骤包括: 确认所述第一和第二代码段;
345.一个如权利要求340所述的方法,其中所述确保步骤包括: 确认互相关联的所述第一和第二代码段;
346.一个如权利要求340所述的方法,其中所述执行步骤包括: 对使用进行计量。
347.一个如权利要求340所述的方法,其中所述执行步骤包括: 对活动进行审核。
348.一个如权利要求340所述的方法,其中所述执行步骤包括: 对使用进行预算。
349.一个如权利要求340所述的方法,其中所述执行步骤包括: 根据电子控制电子地处理信息内容。
350.一个安全控制至少一个有关一个数据项的受保护操作的方 法,该方法包括:
(a)从一个第一参与者提供至少一个第一控制;
(b)从一个不同于第一参与者的一个第二参与者提供至少一个第 二控制;
(c)安全地组合所述第一和第二控制以形成一个控制集合;
(d)将所述控制集合与所述数据项安全地关联;以及
(e)根据所述控制集合安全地控制至少一个与所述数据项相关的 受保护操作。
351.一个如权利要求348所述的方法,其中所述数据项受到保 护。
352.一个如权利要求348所述的方法,其中所述多个控制中的至 少一个包括一个与计量对所述受保护数据项的至少一方面使用相关的 控制。
353.一个如权利要求348所述的方法,其中所述多个控制中的至 少一个包括一个与预算对所述受保护数据项的至少一方面使用相关的 控制。
354.一个用于将数据项组合成一个复合数据项的安全方法,该方 法包括:
(a)安全地提供带有至少一个相关的第一控制的第一数据项;
(b)安全地提供带有至少一个相关的第二控制的第二数据项;
(c)将所述第一和第二数据项构成一个复合数据项;
(d)将所述第一和第二控制安全地组合成一个复合控制集合;以 及
(e)至少部分地根据所述复合控制集合在所述第一和第二数据项 的所述复合数据项上执行至少一个操作。
355.一个如权利要求352所述的方法,其中所述组合步骤包括: 在所述复合集合中保留所述第一和第二控制中的每一个。
356.一个如权利要求352所述的方法,其中所述执行步骤包括: 根据所述第一控制和第二控制对在所述第一和第二数据项的所述复合 数据项上执行的操作进行管理。
357.一个如权利要求352所述的方法,其中所述提供步骤包括: 确保所述第一控制之间的相关的完整性,并且所述第一数据项在所述 第一数据项的至少一次传送、存贮和处理中受到维护。
358.一个如权利要求352所述的方法,其中所述提供步骤包括: 独立于所述第一控制而传递所述第一数据项。
359.一个如权利要求352所述的方法,其中所述提供步骤包括: 一起传递所述第一数据项和所述第一控制。
360.一个用于控制一个受保护操作的安全方法,该方法包括:
(a)传递第一控制和第二控制中的至少一个;以及
(b)至少部分地根据所述第一和第二控制的组合控制至少一个受 保护操作,包括下列步骤中的至少一个步骤:
根据一个预定义次序解决所述第一和第二控制之间的至少一个冲 突;
提供与用户的交互作用以形成所述组合;以及
在所述第一和第二控制之间动态地协商。
361.一个如权利要求358所述的方法,其中所述控制步骤(b) 包括:控制对信息内容的解密。
362.一个如权利要求358所述的方法,该方法还包括:
从一个参与者接收受保护电子信息内容;以及
在使用所述接收到的受保护电子信息内容之前鉴别所述参与方的 身份。
363.一个安全方法,该方法包括:
选择受保护的数据;
从一个对象中抽取所述受保护数据;
标识至少一个控制以管理对所述被抽取数据的至少一方面使用;
将所述被抽取数据放入另一个对象中,以及
将所述至少一个控制与所述另一个对象相关联。
364.一个如权利要求361所述的方法,该方法还包括:根据所述 至少一个控制限制对所述另一个对象的至少一方面使用。
365.一个修改受保护对象的安全方法,该方法包括:
(a)提供一个受保护对象,以及
(b)在不解除保护所述对象的情况下将至少一个附加元素嵌入到 所述受保护对象中。
366.一个如权利要求60所述的方法,该方法还包括:
将至少一个控制与所述对象相关联;以及
根据所述控制限制对所述元素的使用。
367.一个如权利要求363所述的方法,该方法还在所述对象中含 有一个许可记录。
368.一个如权利要求364所述的方法,该方法还包括:至少部分 地加密所述对象。
369.一个用于使用安全操作环境管理至少一个资源的方法,所述 方法包括:
从所述操作环境外部的一个第一实体安全地接收一个第一加载模 块;
从所述操作环境外部的一个第二实体安全地接收一个第二加载模 块,所述第二加载模块不同于所述第一加载模块;
使用至少一个资源安全地处理一个与所述第一和第二加载模块相 关联的数据项;以及
安全地应用所述第一和第二加载模块以管理所述资源供所述数据 项使用。
370.一个用于协商电子合同的方法,该方法包括:
从一个远程站点接收一个第一控制集合;
提供一个第二控制集合;
在一个受保护处理环境中执行所述第一控制集合和所述第二控制 集合之间的一个电子协商过程,包括提供所述第一和第二控制集合之 间的交互作用;以及
产生一个经过协商的、由所述第一和第二控制集合之间的所述交 互作用得到的控制集合。
371.一个支持电子商业的系统,该系统包括:
用于在第一地点创建第一安全控制集合的装置;
用于在第二地点创建第二安全控制集合的装置;
用于将所述第一安全控制集合从所述第一地点传送给所述第二地 点的装置;以及
用于将所述第一和第二控制集合安全地集成以产生至少一个带有 多个一起构成一个电子价值链扩展协定的元素的第三控制集合的、在 第二地点中的装置。
372.一个支持电子商业的系统,该系统包括:
用于在第一地点创建第一安全控制集合的装置;
用于在第二地点创建第二安全控制集合的装置;
用于将所述第一安全控制集合从所述第一地点安全地传送给所述 第二地点的装置;以及
用于通过安全地执行至少一部分所述第一和第二安全控制集合来 协商一个电子合同的、在第二地点中的协商装置。
373.一个如权利要求370所述的系统,该系统还包括:用于根据 至少一部分所述第一和/或第二控制集合控制用户对受保护信息信息 内容的使用的装置;
374.一个如权利要求370所述的系统,该系统还包括:用于对至 少一部分所述信息内容使用收取费用的装置。
375.一个安全的、基于部件的操作系统,该系统包括:
用于检索至少一个部件的部件检索装置;
用于检索一个规定了一个部件组的记录的记录检索装置;
与所述部件检索装置和所述记录检索装置操作耦合的、用于检查 所述部件和/或所述记录的有效性的检查装置;
与所述检查装置耦合的、用于按照所述记录使用所述部件来形成 所述部件组的使用装置;以及
与所述使用装置耦合的、用于至少部分地根据所述部件组执行一 个进程的执行装置。
376.一个安全的、基于部件的操作系统,该系统包括:
一个数据库管理器,该数据库管理器从一个安全数据库中检索至 少一个部件和至少一个规定了一个部件组的记录;
一个鉴别管理器,该鉴别管理器检查所述部件和/或所述记录的有 效性;
一个通道管理器,该通道管理器按照所述记录使用所述部件来形 成所述部件组;以及
一个执行管理器,该执行管理器至少部分地根据所述部件组执行 一个进程。
377.一个安全部件操作系统,该系统包括:
用于接收一个部件的装置;
用于接收规定使用所述部件形成一个部件组的指令的装置;
与所述接收装置耦合的、用于鉴别所述接收到的部件和/或所述指 令的有效性的装置;
与所述鉴别装置耦合的、用于至少部分地根据所述接收到的指令 使用所述部件来形成所述部件组的装置;以及
与所述形成装置耦合的、用于使用所述部件组执行至少一个操作 的装置。
378.一个安全部件操作环境,该环境包括:
一个存贮设备,该存贮设备存放一个部件和规定了使用该部件形 成一个部件组的指令;
一个鉴别管理器,该鉴别管理器鉴别所述部件和/或所述指令;
一个通道管理器,该通道管理器至少部分地根据所述指令使用所 述部件形成所述部件组;以及
一个通道,该通道执行所述部件组以执行至少一个操作。
379.一个安全操作系统环境,该环境包括:
一个存贮设备,该存贮设备存放代码和规定了将该代码装配进一 个可执行程序的指令;
一个确认设备,该确认设备检查所述接收到的代码和/或所述组装 指令的有效性;以及
一个事件驱动通道,该事件驱动通道响应某个事件的发生根据所 述组装指令装配所述代码以形成一个代码组供执行。
380.一个用于管理至少一个资源的安全操作环境系统,该系统包 括:
一个通信装备,该通信装备从所述操作环境外部的一个第一实体 安全地接收一个第一控制,并从所述操作环境外部的一个第二实体安 全地接收一个第二控制,所述第二实体不同于所述第一实体;以及
一个与所述通信装备耦合的受保护处理环境,该受保护处理环 境:
(a)使用至少一个资源安全地处理一个与所述第一和第二控制相 关联的数据项;以及
(b)安全地应用所述第一和第二控制以管理所述资源供所述数据 项使用。
381.一个用于协商电子合同的系统,该系统包括:
一个存贮装备,该存贮装备存贮一个从远程站点接收的第一控制 集合,并存贮一个第二控制集合;
一个与所述存贮装备耦合的受保护处理环境,该受保护处理环 境:
(a)执行所述第一控制集合和所述第二控制集合之间的一个电子 协商过程,
(b)提供所述第一和第二控制集合之间的交互作用,以及
(c)产生一个经过协商的、由所述第一和第二控制集合之间的所述 交互作用得到的控制集合。
382.一个如权利要求379所述的系统,该系统还包括:用于电子 地强制执行所述协商得到的控制集合的装置。
383.一个如权利要求379所述的系统,该系统还包括:用于根据 所述协商得到的控制集合产生一个电子合同的装置。
384.一个用于支持电子商业的方法,该方法包括:
在第一地点创建第一安全控制集合;
创建第二安全控制集合;
在不同于所述第一地点的所述地点电子地协商一个电子合同,包 括安全地执行至少一部分所述第一和第二安全控制集合的步骤。
385.一个电子设备,该电子设备含有:
一个处理器;以及
与所述处理器相连的至少一个存贮器设备;
其中所述处理器包括:
用于从所述存贮器设备中检索至少一个部件以及至少一个规定了 一个部件组的记录的检索装置,
与所述检索装置耦合的、用于检查所述部件和/或所述记录的有效 性的检查装置,以及
与所述检索装置耦合的、用于根据所述记录使用所述部件形成所 述部件组的使用装置。
386.一个电子设备,该电子设备包括:
至少一个处理器;
与所述处理器相连的至少一个存贮器设备;
与所述处理器操作耦合的至少一个输入/输出连接;
其中所述处理器至少部分地执行一个权利操作系统以提供所述电 子设备中的一个安全操作环境。
387.一个如权利要求384所述的电子设备,其中所述处理器包括 提供一个通道的装置,该通道将可独立传递的部件装配成一个部件组 并执行所述部件组。
388.一个如权利要求384所述的电子设备,该电子设备还含有与 所述处理器耦合的一个二级存贮设备,所述二级存贮设备存贮一个安 全数据库,所述处理器包括用于解密从所述安全数据库中获取的信息 以及用来加密将要写入所述安全数据库中的信息的装置。
389.一个如权利要求384所述的电子设备,其中所述处理器和所 述存贮设备放置在一个安全防破坏封装中。
390.一个如权利要求384所述的电子设备,其中所述处理器含有 一个硬件加密/解密器。
391.一个如权利要求384所述的电子设备,其中所述处理器含有 一个实时时钟。
392.一个如权利要求384所述的电子设备,其中所述处理器含有 一个随机数发生器。
393.一个如权利要求384所述的电子设备,其中所述存贮设备存 贮审核信息。
394.一个用于利用安全操作环境对至少一个资源的使用进行审 核的方法,所述方法包括:
从所述操作环境外部的一个第一实体安全地接收一个第一控制;
从所述操作环境外部的一个第二实体安全地接收一个第二控制, 所述第二实体不同于所述第一实体;
使用至少一个资源;
根据所述第一控制,将有关对所述资源的使用的第一审核信息安 全地发送给所述第一实体,以及
根据所述第二控制,将有关对所述资源的使用的第二审核信息安 全地发送给所述第二实体,所述第二审核信息至少部分地不同于所述 第一审核信息。
395.一个用于利用安全操作环境对至少一个资源的使用进行审 核的方法,所述方法包括:
从所述操作环境外部的一个实体安全地接收第一和第二控制;
从第一和第二控制选择元(alternative)中选择一个;
使用至少一个资源;
如果所述选择步骤选择了所述第一控制选择元,则根据所述第一 控制选择元将涉及对所述资源的使用的第一审核信息发送给所述实 体;以及
如果所述选择步骤选择了所述第二控制选择元,则根据所述第二 控制选择元将涉及对所述资源的使用的第二审核信息发送给所述第二 实体,所述第二审核信息至少部分地不同于所述第一审核信息。
396.一个方法和/或系统,用于允许销售以前已经分发给用户的受 保护数字信息,该方法或系统的特征在于:一个安全元素,该安全元 素根据与该信息相关联的电子控制有选择地控制对受保护数字信息的 访问。
397.一个销售系统或方法的分布式安全电子场所,其特征在于: 一个用于有选择地发布商品和/或服务以换取报酬的安全处理元素。
398.在一个分布式数字网络中的一个广告方法,其特征在于下列 步骤:跟踪对已经关联了一个或多个控制信息的数字的使用,所述控 制针对的是对所述信息的访问和/或使用;并至少部分地根据所述跟踪 确定广告消息。
399.一个分布式电子广告系统,其特征在于:该系统使用互相协 作受保护处理环境的一个分布式网络至少部分地向用户发布广告信 息。
400.一个含有位于VDE信息内容容器制作者、其他信息内容提 供者、客户用户、以及安全VDE信息内容使用信息接收者的站点中的 节点的分布式安全虚拟黑盒子,所述虚拟黑盒子中的节点含有一个带 有至少诸如半导体元件或其他用于安全执行VDE控制进程的硬件模 块的一个安全硬件元件的安全子系统,所述安全子系统分布于沿着信 息存贮、分发、付款、使用和/或审核路径的节点中。
401.一个受保护处理系统或方法,该系统或方法提供多种货币和 /或付款方案用于受保护数字信息的安全处理和发布。
402.一个分布式安全方法或系统,其特征在于:用户的年龄被用 作电子地、安全地向该用户发布信息和/或资源的一个准则。
403.一个租用电子设备的方法,该方法定义了一个安全处理环 境。
404.一个虚拟分发环境,该虚拟分发环境提供了一个或多个下列 特征和/或元素和/或其组合:
一个可配置的、受保护的、分布式事件管理系统;以及/或者
一个可信的、分布式交易和存贮管理设备;以及/或者
用于提供信息、用于控制信息、和/或用于汇报的多条路径;以及 /或者
多个付款方法;以及/或者
多种货币;以及/或者
EDI;以及/或者
电子行业务;以及/或者
电子文件管理;以及/或者
电子安全通信;以及/或者
电子邮件;以及/或者
分布式异步汇报;以及/或者
组合异步和联机管理;以及/或者
用户进行的隐私控制;以及/或者
测试;以及/或者
将年龄用作类别;以及/或者
设备控制(出租等等);以及/或者
电信基础设施;以及/或者
游戏管理;以及/或者
从电子容器中对信息内容的抽取;以及/或者
将信息内容向电子容器中的嵌入,以及/或者
多个证明,以允许对一个密钥的破坏;以及/或者
虚拟黑盒子;以及/或者
控制信息对信息内容的独立性;以及/或者
针对一个数字信息所有权的多个分离的、并存的控制组;以及/或 者
对已经分发的数字信息的控制信息的更新,以及/或者
组织信息管理;以及/或者
耦合的外部和组织内部处理和控制链;以及/或者
一个信息内容使用结果管理系统(汇报、付款、等多个方向); 以及/或者
一个信息内容使用汇报系统,该系统向多个持有信息内容权利的 参与者提供不同的审核信息和/或压缩;以及/或者
一个自动化远程安全对象创建系统;以及/或者
用以识别不当使用的基础设施背景分析;以及/或者
控制信息系统的优先性(seniority);以及/或者
对规则和控制进行的、独立于它们适用的信息内容的安全分发和 强制执行;以及/或者
通过控制可以被再分发的拷贝和部分等的权利和/或数量所进行 的再分发管理;以及/或者
一个电子商业征税系统;以及/或者
一个电子购物系统;以及/或者
一个电子目录系统;以及/或者
处理电子银行业务、电子购物、电子信息内容使用管理的一个系 统;以及/或者
一个电子商业多媒体系统;以及/或者
销售系统的一个分布式安全电子场所;以及/或者
进行广告;以及/或者
电子权利管理;以及/或者
一个分布式电子商业系统;以及/或者
一个分布式交易系统或环境;以及/或者
一个分布式事件管理系统;以及/或者
一个分布式权利系统。
405.基本上如图1所示的一个虚拟分发环境。
406.基本上如图1A所示的一个信息服务中心。
407.基本上如图1所示的一个处理和控制链。
408.基本上如图2A所示的一个持久规则和控制信息。
409.基本上如图1所示的提供不同控制信息的一个方法。
410.基本上如图4所示的一个规则和控制信息。
411.基本上如图5A和5B所示的一个对象。
412.基本上如图6所示的一个安全处理单元。
413.基本上如图7所示的一个电子设备。
414.基本上如图8所示的一个电子设备。
415.基本上如图9所示的一个安全处理单元。
416.基本上如图10所示的一个“权利操作系统”(“ROS”) 体系结构。
417.基本上如图11A-11C所示的应用和权利操作系统之间的功 能关系。
418.基本上如图11D-11J所示的部件和部件组。
419.基本上如图12所示的一个权利操作系统。
420.基本上如图12A所示的一个对象创建方法。
421.基本上如图13所示的一个“受保护处理环境”软件体系结 构。
422.基本上如图15所示的一个支持通道的方法。
423.基本上如图15A所示的一个通道头和通道详细记录。
424.基本上如图15B所示的一个创建通道方法。
425.基本上如图16所示的一个安全数据库。
426.基本上如图17所示的一个逻辑对象。
427.基本上如图18所示的一个静止对象。
428.基本上如图19所示的一个移动对象。
429.基本上如图20所示的一个信息内容对象。
430.基本上如图21所示的一个管理对象。
431.基本上如图22所示的一个方法核心。
432.基本上如图23所示的一个加载模块。
433.基本上如图24所示的一个用户数据元素(UDE)和/或方法 数据元素(MDE)。
434.基本上如图25A-25C所示的映射计量器。
435.基本上如图26所示的一个许可记录(PERC)。
436.基本上如图26A和26B所示的一个许可记录(PERC)。
437.基本上如图27所示的一个发送表。
438.基本上如图28所示的一个接收表。
439.基本上如图29所示的一个管理事件日志。
440.基本上如图30所示的相互关联和使用一个对象注册表、一 个主题表、以及一个用户权利表的一个方法。
441.基本上如图34所示的使用一个站点记录表和组记录表来跟 踪安全数据库的某个部分的一个方法。
442.基本上如图35所示的一个更新安全数据库的进程。
443.基本上如图36所示的一个向安全数据库中插入一个新元素 的进程。
444.基本上如图37所示的一个访问安全数据库中的元素的进 程。
445.基本上如图38所示的一个保护安全数据库元素的进程。
446.基本上如图39所示的一个备份安全数据库的进程。
447.基本上如图40所示的一个恢复安全数据库的进程。
448.基本上如图41A-41D所示的允许执行交互方法以提供一条 处理和控制链的一个进程。
449.基本上如图42A-42D所示的一个“交互”预算方法。
450.基本上如图44A-44C所示的一个交互审核方法。
451.基本上如图45-48中的任意一个所示的用于控制信息内容或 其他方法的发布的方法。
452.基本上如图53A-53B所示的一个事件方法。
453.基本上如图53C所示的一个计帐方法。
454.基本上如图57A所示的一个抽取方法。
455.基本上如图57A所示的一个嵌入方法。
456.基本上如图58A所示的一个遮蔽方法。
457.基本上如图58B所示的一个指纹方法。
458.基本上如图58C所示的一个指纹方法。
459.基本上如图61所示的一个计量器方法。
460.基本上如图62所示的一个密钥“卷积”进程。
461.基本上如图63所示的一个使用密钥“卷积”进程产生不同 密钥以确定一个“真实”密钥的进程。
462.基本上如图64和/或65所示的一个初始化受保护处理环境密 钥的进程。
463.基本上如图66所示的一个用于解密包含在静止对象中的信 息的进程。
464.基本上如图67所示的一个用于解密包含在移动对象中的信 息的进程。
465.基本上如图68所示的一个用于初始化受保护处理环境的进 程。
466.基本上如图69所示的一个用于将固件下载到受保护处理环 境的进程。
467.基本上如图70所示的利用网络或其他通信装置连接在一起 的多个VDE电子设备。
468.基本上如图71所示的一个便携式VDE电子设备。
469.基本上如图72A-72D所示的可以由用户通告和异常接口产 生的“弹出式”显示。
470.基本上如图73所示的一个智能对象。
471.基本上如图74所示的一个处理智能对象的方法。
472.基本上如图75A-75D中任意一个所示的一个电子协定。
473.基本上如图75E-75F所示的一个电子协定。
474.基本上如图76A-76B中任意一个所示的一个电子协定。
475.基本上如图77所示的一个处理和控制链。
476.基本上如图78所示的一个VDE“存放库”。
477.基本上如图79-83中的任意一个或全部所示的一个使用处理 和控制链来演变和变换VDE管理的信息内容和控制信息的进程。
478.基本上如图84所示的一个涉及若干类别的VDE参与者的处 理和控制链。
479.基本上如图85所示的一个组织内部的处理和控制链。
480.基本上如图86和/或86A所示的一个处理和控制链。
481.基本上如图87所示的一个虚拟容器模型。
482.一个业务自动化的方法,其特征在于下列步骤:(a)创建一 个或多个含有经过加密的统计和/或其他管理信息内容的安全容器,(b) 将控制信息与一个或多个所述一个或多个安全容器相关联,该控制信 息包括对(i)可以使用一个或多个所述一个或多个容器的一个或多个参 与者、以及(ii)将要为一个或多个参与者执行的、涉及所述统计和/或其 他管理信息的操作的描述,(c)将一个或多个所述一个或多个容器电子 地传递给所述一个或多个参与者,以及(d)允许通过使用受保护处理 环境来强制执行至少一部分所述控制信息。
483.一个业务自动化系统,其特征在于:
用于提供至少一个含有关联了控制信息的管理信息内容的安全容 器的装置,以及
一个用于至少部分地强制执行控制信息的受保护处理环境。
484.一个业务自动化系统,该系统包括:(a)分布式互相协作受保 护处理环境,(b)用于数字信息分发的安全容器,(c)支持处理和控制 链功能自动化的控制信息。
485.一个业务自动化的方法,其特征在于下列步骤:向多个参与 者提供互相协作受保护处理环境节点,将第一被加密数字信息从第一 参与者传送给第二参与者,将含有至少一部分所述第一被传送数字信 息和/或涉及对所述第一数字信息的使用的信息的第二被加密数字信 息传送给不同于所述第一或第二参与者的第三参与者,其中对所述第 二被加密数字信息的使用至少部分地由一个对所述第三参与者可用 的、互相协作的受保护处理环境控制
486.一个业务自动化系统,其特征在于:
多个受保护处理环境节点,
用于在这些节点之间传送数字信息的装置,并且
其中至少一个所述节点包括用于控制对所述被传送数字信息的使 用的装置。
487.一个用于处理和控制链的方法,其特征在于下列步骤:(a)第 一参与者将受保护数字信息放入第一软件容器中,并规定管理对至少 一部分所述数字信息的使用的规则和控制,(b)向一个第二参与者提 供所述软件容器,其中所述第二参与者将所述软件容器放入一个另外 的软件容器中,并规定用于至少部分地管理第三参与者对至少一部分 所述数字信息和/或所述第一软件容器的使用的规则和控制。
488.一个处理和控制链系统,其特征在于:
用于将数字信息放入第一软件容器中的、以及用于规定管理对至 少一部分所述数字信息的使用的规则和控制的装置,以及
用于将所述软件容器放入一个另外的软件容器中的、以及用于规 定用于至少部分地管理对至少一部分所述数字信息和/或所述第一软 件容器的使用的规则和控制的装置。
489.一个用于处理和控制链的系统,该系统包括:(a)一个含有 被至少部分保护的数字信息的第一容器,(b)由制定使用至少一部分 所述数字信息的条件的第一参与者所规定的、被至少部分保护的控制 信息,(c)一个不同于所述第一容器的第二容器,所述第二容器包含 所述第一容器,(d)由一个第二参与者独立规定的、用于至少部分地 设置用于管理对所述第二容器的信息内容的使用的条件的控制信 息。
490.一个用于电子广告的系统,该系统包括:(a)用于将数字信 息提供给用户供他们使用的装置,(b)用于将广告信息内容与所述数 字信息一起提供给所述用户的装置,(c)用于审核对所述数字信息的使 用的装置,(d)用于安全地获取与对广告信息内容的使用相关的使用 信息的装置,(e)用于根据所述广告信息内容使用信息安全地汇报信息 的装置,(f)至少部分地根据对所述广告信息内容的使用向至少一个信 息内容提供者支付报酬。
491.一个用于电子广告的方法,其特征在于下列步骤:(a)将数 字信息放入一个容器中,(b)将广告信息与至少一部分所述数字信息 相关联,(c)向一个容器用户安全地提供所述容器,(d)监控用户对广 告信息的观看,以及(e)从一个广告客户那里接收付款,其中所述付款 涉及用户对所述广告信息的观看。
492.一个用于电子广告的系统,该系统包括:(a)用于将含有信 息内容和广告信息两者的数字信息装入容器中的装置,(b)用于监控 对至少一部分所述广告信息的观看的装置,(c)用于对用户观看至少一 部分所述广告信息收取费用的装置,(d)用于根据所述观看将信息放 在一个安全容器中安全地传送的装置,以及(e)与所述被装入容器中的 数字信息相关的、用于根据所述观看管理对所述信息的传送的控制信 息。
493.一个用于电子广告的方法,其特征在于下列步骤:(a)将含有 信息内容和广告信息两者的数字信息装入容器中,(b)监控用户对至 少一部分所述广告信息的观看,(c)对用户观看至少一部分所述广告信 息收取费用,(d)根据所述观看将信息放在一个安全容器中安全地传 送,以及(e)通过使用与所述广告信息相关的控制信息,根据所述观看 至少部分地管理对信息的传送。
494.一个清算交易信息的方法,其特征在于下列步骤:(a)将数 字信息安全地分发给互相协作受保护处理环境中的第一用户,(b)将 另外的数字信息安全地分发给互相协作受保护处理环境中的、不同于 所述第一用户的一个用户,(c)接收涉及对所述数字信息的使用的信 息,(d)接收涉及对所述另外的数字信息的使用的信息,以及(e)处理 按照步骤(c)和(d)接收到的信息,以执行(I)管理功能或(II)分析功能中 至少一个功能。
495.一个清算交易信息的系统,该系统包括:(a)一个含有被至 少部分保护的数字信息和相关控制信息的第一容器,(b)一个含有另 外被至少部分保护的数字信息和相关控制信息的第二安全容器,(c)用 于将所述第一和第二容器分发给用户的装置,(d)用于传送至少部分 地由用户对所述第一容器数字信息的使用导出的信息的通信装置,(e) 用于传送至少部分地由用户对所述第二容器数字信息的使用导出的信 息的通信装置,(f)用于接收通过步骤(d)和(e)传送出来的信息的票据 交换所中的处理装置,其中所述处理装置对至少一部分所述被传送的 信息执行管理处理和/或分析处理。
496.一个用于票据交换所分析的方法,其特征在于下列步骤:(a) 允许多个独立票据交换所管理和/或分析对分发的、被至少部分保护的 数字信息的使用,(b)向多个独立用户提供可互相协作受保护处理环 境,以及(c)允许用户选择与一个可互相协作受保护处理环境一起使用 的一个票据交换所。
497.一个用于票据交换所分析的系统,该系统包括:(a)用于管 理和/或分析对分发的、被至少部分保护的数字信息的使用的多个独立 票据交换所,(b)位于多个用户地点中的每一个地点的至少一个互相 协作受保护处理环境,(c)选择装置,用于允许用户从所述多个独立票 据交换所中选择一个以执行与对至少一部分所述被至少部分保护的数 字信息的使用相关的付款和/或分析功能。
498.一个电子广告的方法,其特征在于下列步骤:
创建一个或多个电子广告,创建一个或多个含有至少一部分所述 广告的安全容器,
将控制信息与所述广告相关联,包括描述了至少下列之一的控制 信息:(a)向一个或多个信息内容提供者、广告客户和/或代理汇报至 少某些广告使用信息,(b)根据用户对所述广告的观看和/或其他使用 向该用户提供一个或多个信用,(c)向一个或多个市场分析员汇报广告 使用信息,(d)向一个用户提供订购信息和/或装置用以订购一个或多 个产品和/或服务,以及/或者(e)根据一个或多个用户对所述广告的观 看和/或其他使用向信息内容提供者提供一个或多个信用,
向一个或多个用户提供所述容器和所述控制信息,
允许所述用户至少部分地按照所述控制信息使用所述容器。
499.一个用于电子广告的系统,该系统包括:(a)用于将数字信 息提供给用户供他们使用的装置,(b)用于将广告信息内容与所述数 字信息一起提供给所述用户的装置,(c)用于审核对所述数字信息的使 用的装置,(d)用于获取与对广告信息内容的使用相关的使用信息的 装置,(e)用于根据所述广告信息内容使用信息安全地汇报信息的装 置,以及(f)至少部分地根据对所述广告信息内容的使用向至少一个信 息内容提供者支付报酬。
500.一个用于处理和控制链的系统,该系统包括:(a)一个含有 被至少部分保护的数字信息的第一容器,(b)由制定使用至少一部分 所述数字信息的条件的第一参与者所规定的、被至少部分保护的控制 信息,(c)一个不同于所述第一容器的第二容器,所述第二容器包含所 述第一容器,以及(d)由一个第二参与者独立规定的、用于至少部分 地设置用于管理对所述第二容器的信息内容的使用的条件的控制信 息。
501.一个操作票据交换所的方法,其特征在于下列步骤:从多个 参与者接收至少部分地与对安全容器的使用相关的使用信息,至少部 分地根据所述使用信息决定应向一个或多个参与者支付的费用,至少 部分地根据所述决定执行和/或促使执行导致对所述参与者的付款的 交易。
502.一个电子票据交换所,该电子票据交换所包括:
用于从多个参与者接收至少部分地与对安全容器的使用相关的使 用信息的装置,
用于至少部分地根据所述使用信息决定应向一个或多个参与者支 付的费用的装置,
用于至少部分地根据所述决定执行和/或促使执行导致对所述参 与者的付款的交易的装置。
503.一个操作票据交换所的方法,其特征在于下列步骤:从多个 参与者接收至少部分地与对安全容器的使用相关的使用信息,至少部 分地根据所述使用信息决定应向一个或多个参与者提供的使用汇报, 至少部分地根据所述决定创建和/或促使创建使用汇报,将至少一个所 述汇报传递给至少一个所述参与者。
504.一个操作票据交换所的方法,其特征在于下列步骤:从一个 或多个信息内容提供者接收许可和/或其他控制信息,包括允许将至少 一个权利放在至少一个安全容器中向其他参与者传递的信息,从多个 参与者接收放在一个或多个安全容器中的、要求一个或多个权利的请 求,至少部分地根据所述请求将权限和/或其他控制信息传递给所述参 与者。
505.一个操作票据交换所的方法,其特征在于下列步骤:从一个 或多个参与者接收创建参与者的身份信息的信息,创建至少一部分所 述身份信息的一个或多个电子表示用于允许和/或阻止至少一个安全 容器中的至少一个权利,执行一个操作以确认所述电子表示,将所述 电子表示传送给所述参与者。
506.一个操作票据交换所的方法,其特征在于下列步骤:从一个 参与者接收一个要求得到用以与安全容器一起使用的信用的请求,至 少部分地根据所述请求确定信用的数量,创建与该数量相关的控制信 息,向所述用户传递所述控制信息,接收与所述信用的使用有关的使 用信息,执行和/或促使执行至少一个涉及从所述用户收集付款的交 易。
507.一个用于提供涉及一个电子价值链的安全控制信息的方 法,其中控制信息由不直接参与所述价值链的一个参与者提供,该方 法包括下面的步骤:将所述被提供出来的控制信息与由一个电子价值 链中的一个或多个参与者规定的、与数字信息有关的控制信息相聚 合,所述聚合控制信息至少部分地管理涉及对至少一部分所述数字信 息的使用的条件。
508.一个用于进行与商业事件相关的税款交纳的方法,其中用于 自动管理为所述商业事件而进行的税款交纳的安全控制信息由一个参 与者提供,该方法包括下面的步骤:将所述安全控制信息与已经由一 个独立参与者提供的控制信息相聚合,并控制用于对数字信息的使用 的至少一个条件。
509.一个用于通用的可重用电子商业设备的方法,其特征在于下 列步骤:
(a)提供可以被配置在一起以构成受控事件的部件结构、模块化 方法,
(b)向多个独立用户提供互相协作的受保护处理环境,
(c)使用安全通信装置用来在互相协作的受保护处理环境之间传 送数字控制信息;以及
(d)允许数据库管理器与所述处理环境操作相连以便存贮至少一 部分所述被提供的部件模块化方法。
510.一个用于通用的可重用电子商业的系统,包括:
(a)配置在一起以构成事件控制结构的部件模块化方法;
(b)在多个独立用户地点的每一个地点中的、至少一个互相协作 的处理环境;
(c)用来在互相协作的受保护处理环境之间传送数字控制信息的 安全通信装置;以及
(d)与所述受保护处理环境操作相连的、用于存贮至少一部分所述 部件模块化方法的受保护数据库管理器。
511.一个通用的电子商业信用系统,该系统包括:
(a)一个安全互相协作受保护处理环境;
(b)用于为用户对被至少部分地保护的数字信息的使用提供信用 的通用的信用控制信息,以及
(c)与被至少部分地保护的数字信息相关的控制信息,该控制信息 用于为通过至少部分地利用所述通用信用控制信息使用信用提供必要 信息。
512.一个用于允许通用的电子商业信用系统的方法,该方法包 括:
(a)提供安全互相协作受保护处理环境;
(b)提供通用的信用控制信息用于为用户对被至少部分地保护的 数字信息的使用提供信用;以及
(c)至少部分地提供与保护的数字信息相关的控制信息,用于为通 过至少部分地利用所述通用的信用控制信息使用信用提供必要信息。
513.一个文件管理系统,该系统包含:一个或多个含有一个或多 个SPU以及与这些SPU中的至少一个操作相连的一个或多个安全数 据库的电子设备。
514.一个电子合同系统,该系统包含:一个或多个含有一个或多 个SPU以及与这些SPU中的至少一个操作相连的一个或多个安全数 据库的电子设备。
515.一个电子设备,该电子设备包含:至少一个SPU以及与这些 SPU中的至少一个操作相连的至少一个安全数据库。
516.一个包含一个或多个CPU的电子设备,其中这些CPU中的 至少一个与至少一个SPU相集成。
517.一个包含一个或多个视频控制器的电子设备,其中这些视频 控制器中的至少一个与至少一个SPU相集成。
518.一个包含一个或多个网络通信装置的电子设备,其中这些网 络通信装置中的至少一个与至少一个SPU相集成。
519.一个包含一个或多个调制解调器的电子设备,其中这些调制 解调器中的至少一个与至少一个SPU相集成。
520.一个包含一个或多个CD-ROM设备的电子设备,其中这些 CD-ROM设备中的至少一个与至少一个SPU相集成。
521.一个包含一个或多个顶置控制器的电子设备,其中这些顶置 控制器中的至少一个与至少一个SPU相集成。
522.一个包含一个或多个游戏系统的电子设备,其中这些游戏系 统中的至少一个与至少一个SPU相集成。
523.一个含有至少一个微处理器、存贮器、输入/输出装置、至少 一个用于加密和/或解密信息的电路、以及由这些微处理器中的至少一 个用来执行加密和/或解密功能的一个或多个软件程序的支持多种加 密算法的集成电路。
524.一个含有至少一个微处理器、存贮器、至少一个实时时钟、 至少一个随机数发生器、至少一个用于加密和/或解密信息的电路、以 及被独立传递的和/或可独立传递的经过确认的软件的集成电路。
525.一个含有至少一个微处理器、存贮器、输入/输出装置、一个 防破坏屏障、以及一个权利操作系统的至少一部分的集成电路。
526.一个含有至少一个微处理器、存贮器、输入/输出装置、至少 一个实时时钟、一个防破坏屏障、以及用来记录至少一个实时时钟的 电源中断的装置的集成电路。

说明书全文

                         发明领域

本发明一般涉及计算机和/或电子安全性。

更具体地说,本发明涉及安全交易管理的系统和技术。本发明还涉 及基于计算机或其它电子设备的技术,这些技术有助于确保只能以经过 授权的方式访问或使用信息,并维护该信息的完整性、可用性和/或保 密性和涉及该使用的进程

本发明还涉及用于保护电子商业活动以及其他电子的或由电子促 进的交易中的各种参与者的权利的系统和方法。

本发明还涉及用于信息内容和用来控制对该信息内容的使用以及 所述使用的结果的信息的安全处理和控制链。它还涉及管理—包括计量 和/或限制和/或监视—对电子存贮的或传播的信息的使用的系统和技 术。本发明特别涉及使用上述系统和/或技术—包括使用上述系统和/或 技术的使用结果—的交易、处理和方案。

本发明还涉及分布式的和其他的操作系统、环境和体系结构。它通 常还涉及包括(举例来说)基于硬件的防破坏处理器在内的安全体系结 构,该安全体系结构可以用来在分布式系统的每个节点建立安全性。

发明背景和综述

目前,电信、金融交易、政府事务、商业运作、娱乐和私人商业生 产等均依赖于电子设备。数以百万计的这种电子设备已经被电子地连 接在一起。这些互连的电子设备构成了被日渐称作的“信息高速公路”。 许多商业、学术和政府领导都关心着如何保护使用该信息高速公路(也 称作“电子高速公路”或“数字高速公路”)的公民和组织的权利。

电子信息内容

目前,实际上任何能用文字、数字、图形或命令及指令系统代表的 事物都可以被格式化成电子数字信息。电视、有线电缆、卫星传输以及 通过电话线进行的联机服务相互竞争,将数字信息和娱乐分发到家庭和 商业中。这些信息内容的所有者和市场销售人员包括软件开发人员、动 画和录制公司、书籍、杂志及报纸的出版商、以及信息数据库提供者。 联机服务的普及也已使得个人计算机用户加入到信息提供者的行列。据 Microsoft公司估计,1992年的全球电子信息市场大约为400亿美元, 而到1997年可望增至2000亿美元。本发明可以显著增加信息提供者的 收益,降低分发成本和信息内容成本,更好地支持广告和使用信息收 集,更好地满足电子信息用户的需要。这些改进将显著增加电子信息的 数量和种类和分发该信息的方法的数量和种类。

为适应电子信息提供者和用户的需要而开发的传统产品的功能匮 乏与本发明形成明显对比。尽管美国最大的电信、计算机、娱乐和信息 提供者公司的代表人物对本发明所提及的某些问题给予了关注,只有本 发明为可配置的、通用电子商业交易/分发控制系统提供了商业上的安 全有效的解决方案。

控制电子信息内容

本发明提供了一种新类型的“虚拟分发环境”(在本文件中称为 “VDE”),该“虚拟分发环境”保护、管理和审核电子信息使用。 VDE还以某些具有根本重要性的功能为其特性,这些功能用来管理“穿 过”“信息高速公路”传播的信息内容。这些功能含有服务所有电子团 体成员的权利保护方案。这些成员包括信息内容制作者和分发者、财务 服务提供者、最终用户以及其他人员。对于计算机、其他电子设备、网 络以及信息高速公路的用户来说,VDE是第一个通用的、可配置的交 易控制/权利保护方案。

对于电子信息内容提供者来说,一个根本问题在于扩展他们的能力 以控制对有产权信息的使用。信息内容提供者常常需要将使用限制在授 权的活动和数量的范围内。涉及(举例来说)在光盘上提供电影和广告 的业务模型中的参与者包括:演员、导演、剧本作者和其他作者、作曲 者、制作室、出版商、分发者、零售商、广告客户、信用卡服务机构、 和信息内容最终用户。这些参与者需要下面的能力,即:将他们的协定 和要求范围—包括使用限制—体现到含有整体电子业务模型的“扩展” 协定中。这些扩展协定由可以自动强制执行各方同意的权利和义务的电 子信息内容的控制信息来代表。在VDE下,一个上述扩展协定可以含 有一个涉及所有业务模型参与者的电子合同。作为另一种选择或补充, 这种协定可以由在业务模型参与者子集之间达成的协定组成。通过使用 VDE,电子商业可以按照与传统商业一样的方式起作用,即:可以通 过对不同各方之间的一个或多个协定的协商来形成涉及产品和服务的 商业关系。

商业信息内容提供者关心确保使用他们的电子信息应支付的合理 报酬。在今天,可以较为容易和廉价地拷贝电子数字信息—例如一个 CD唱片。类似地,按照国际知识产权协会的估算,对软件程序的未经 授权的拷贝和使用使合法所有者的年收入蒙受了几十亿美元的损失。信 息内容提供者和分发者已经设计出大量功能有限的权利保护机制以保 护他们的权利。鉴别口令和协议、许可服务器、“加/解锁”分发方 法、以及强加于紧缩包装软件的用户的非电子合同限制等是较为流行的 信息内容保护方案中的几个例子。在商业环境下,上述各种尝试是低效 的和有限的解决方案。

“电子货币”的提供者也已经为其类型的信息内容创建了保护措 施。这些系统没有足够的适用性、有效性或灵活性以支持电子货币的推 广使用。而且,它们不提供复杂的审核和控制配置功能。这意味着目前 的电子货币工具缺乏许多实际的金融业务模型所需的完善性。VDE提 供了用于匿名货币和“有条件”匿名货币的机制,其中,除非在特殊的 情况下,否则涉及货币的活动保持匿名。

VDE控制功能

VDE允许电子数字信息的所有者和分发者可靠地为电子信息计 帐,并且安全地控制、审核和预算对电子信息的使用。它可以可靠地检 测和监视对商业信息产品的使用。VDE使用了各种各样的电子信息传 递措施,包括(举例来说):数字网络、数字广播以及诸如光盘和磁盘 之类的物理存贮介质。VDE可以被较大的网络提供者、硬件厂商、电 子信息的所有者、这种信息的提供者、以及收集有关电子信息并对电子 信息的使用计帐的票据交换所使用。

VDE提供全面的和可配置的交易管理、计量和监视技术。它可以 改变对电子信息产品的保护、销售、包装、和分发方式。如果使用了 VDE,那么它将会为信息提供者带来更高的收入,并带来更高的用户 满意度以及价值。对VDE的使用通常将会带来降低的使用成本、降低 的交易成本、对电子信息的更有效访问、权利保护措施和其他交易管理 实现的可重用性、在使用被保护信息方面大大提高的灵活性、以及用于 电子交易管理的更为标准化的工具和进程。VDE可以用来创建一个满 足电子信息所有者、分发者和用户、财务票据交换所、以及使用信息分 析员和再销售者的需要的适用环境。

权利和控制信息

一般来说,本发明可以用来保护具有下列利益的团体:

(a)电子信息所有权或保密利益。本发明(举例来说)有助于确保 以授权的方式访问信息;

(b)由使用电子分发信息而产生的财务利益。本发明有助于确保信 息内容提供者得到被分发信息的使用报酬;以及

(c)在包括电子现金、行业务、和购物等在内的电子信用和电子 货币的存贮、传送、和/或使用方面的利益。

保护电子团体成员的权利涉及广泛的技术领域。VDE将这些技术 合并成一种创建“分布式”电子权利保护“环境”的方法。该环境对交 易和其他对权利保护具有重要性的进程进行安全化和保护。VDE(举 例来说)提供了禁止或阻止干扰和/或探察涉及重要权利的交易和进程 的能力。在其较佳实施例中,VDE使用专用的防破坏安全处理部件 (SPU),它有助于向VDE进程和信息存贮和通信提供高度的安全性。

本发明所解决的权利保护问题是基本社会问题的电子形式。这些问 题包括保护所有权、保护隐私权、适当地给予人们和组织一定的报酬以 补偿他们所付出的劳动和所冒的险、保护钱款和信用、以及通常保护 信息的安全性。VDE利用使用了通用进程集的系统以有效、可信和成 本高效的方式来管理权利问题。

VDE可以用来保护创建诸如唱片或录音带、游戏、电影、报纸、 电子图书和参考资料、个人电子邮件、以及机密的记录和通信之类的电 子信息的参与者的权利。本发明还可以用来保护:诸如出版商和分发者 之类的提供电子产品的参与者的权利;诸如票据交换所和银行之类的提 供电子信用和货币以支付产品使用费的参与者的权利;使用电子信息内 容的参与者(例如消费者、行业人士、政府)的隐私权;以及由电子信 息所描述的当事人的隐私权—诸如涉及包含在病历、税务记录、或人事 记录中的信息的隐私权。

一般来说,本发明可以用来保护具有下列利益的参与者的权利:

(a)对电子分发信息的商业利益—本发明(举例来说)有助于确保 采用与当事人达成的协定相一致的方式为被分发信息的使用向当事人 付费;

(b)电子信息的所有权和/或机密性利益—本发明有助于(举例来 说)确保对数据的使用只能以授权的方式进行;

(c)在包括电子现金、银行业务、和购物等活动在内的电子信用和 电子货币的存贮、传送、和/或使用方面的利益;以及

(d)对至少部分地从使用其他电子信息中获取的电子信息的利 益。

VDE功能特性

VDE是一个成本高效的和有效的权利保护解决方案,它为保护和 管理交易处理提供了统一的、一致的系统。VDE能够:

(a)审核和分析对信息内容的使用;

(b)确保对信息内容进行使用只能采取授权方式;以及

(c)允许对有关信息内容使用的信息只能以由信息内容用户同意的 方式使用。

另外,VDE:

(a)是高度可配置、可修改、和可重复使用的;

(b)支持广泛的有用功能,可以采用不同的方式将这些功能合并起 来以支持大多数潜在的应用;

(c)运行于各种各样的电子设备之上,其范围可以从手持式廉价设 备到大型主计算机;

(d)能够同时保证大量不同参与者的权利和大量不同权利保护方 案;

(e)能够通过一系列可以在不同时间和不同地点发生的交易来保护 参与者的权利;

(f)能够灵活地支持安全地传递信息和汇报使用的多种方式;以及

(g)提供对“实际”货币和信息的电子模拟—包括匿名电子现金, 以便为产品和服务付帐,以及支持个人(包括家庭)银行业务和其他金 融活动。

VDE经济有效地满足了电子团体成员的权利保护需求。VDE的用 户将不需要针对不同的信息高速公路产品和权利问题而需要另外的权 利保护系统,他们也将不需要为每个新的信息高速公路应用都安装并学 会一个新系统。

VDE提供了一个允许所有信息内容制作者、提供者和用户使用同 一电子权利保护方案的统一解决方案。在经过授权的情况下,参与者可 以自由地交换信息内容和相关信息内容控制集合。这意味着VDE的用 户可以在被允许的情况下使用同一电子系统以处理带有不同信息内容 控制信息集合的、不同类型的信息内容。由一个群体提供的信息内容和 控制信息可以由通常使用其他群体提供的信息内容和控制信息的人们 使用。VDE允许信息内容可以被“全局”地交换,并且,本发明的实 现的用户可以电子地交互作用,而不必担心信息内容控制的不兼容性、 权利的侵犯、以及得到、安装或学习新信息内容控制系统的需要。

VDE安全地管理规定了权利保护的交易。它可以保护的电子权利 包括(举例来说):

(a)电子信息内容的作者的所有权;

(b)信息内容分发者的商业权利;

(c)促进了信息内容分发的任何参与者的权利;

(d)信息内容用户的隐私权;

(e)由被存贮和/或被分发的信息内容描述的当事人的隐私权;以及

(f)涉及强制执行电子协定的任何其他权利。

VDE允许十分广泛的、采用电子方式强制执行的商业和社会协 定。这些协定可包括采用电子方式实现的合同、许可证、法律、条例、 和税收。

与传统解决方案的对比

传统信息内容控制机制常常要求用户购买超过其所需要的或所希 望的电子信息。例如,紧缩包装软件的不经常用户被要求以与经常性用 户相同的价格来购买一个程序,尽管他们可能从他们较为稀少的使用中 得到较少的价值。传统系统没有按照使用的程度和特性按比例收费,并 且传统系统不能吸引那些认为固定价格太高的潜在消费者。使用传统机 制的系统通常不是特别地安全。例如,对于紧缩包装技术而言,一旦软 件或者从其物理包装或从其电子包装中被移动出去以后,紧缩包装技术 将不能防止不断的非法盗版行为。

传统的电子信息权利保护系统通常缺乏灵活性且效率不高,并且迫 使信息内容提供者选择昂贵的分发通道,这类分发通道提高了产品的价 格。一般来说,这些机制限制了产品定价、配置和销售的灵活性。这些 缺点归因于用于控制信息的技术既不支持不同的信息内容模型,也不支 持反映了模型参与者的许多不同要求(如信息内容传递策略)的信息内 容模型。这样会限制提供者的下述能力,即:传递足够的综合性信息以 便从许多潜在用户的度证明一个给定产品的价格是正当的。VDE允 许信息内容提供者和分发者创建反映提供者和用户的优选业务模型的 应用和分发网络。它提供给用户唯一地成本高效的并具有丰富特性的系 统,该系统支持提供者希望用来分发信息的方式,以及用户希望用来使 用该信息的方式。VDE支持确保权利及允许信息内容传递策略为最大 商业成效的目的而形成的信息内容控制模型。

处理和控制链

VDE可以保护属于在电子信息中具有权利或对电子信息具有权利 的参与者的一批权利。该信息可以位于一个地点,也可以分散在多个地 点上(或在多个地点之间移动)。该信息可以通过一个分发者“链”和 一个用户“链”传递。使用信息也可以通过一个或多个参与者“链”被 汇报出去。通常,VDE允许(a)在电子信息中带有权利的当事人,和/ 或(b)作为在电子信息中带有权利的当事人的直接或间接代理来保证: 对信息的移动、访问、修改或使用等可以由涉及如何、在何时、在何地、 由谁等执行上述活动的规则安全地控制。

VDE应用和软件

VDE是用来管理电子活动和商业的安全系统。上述管理由一个或 多个参与者放置就位的控制信息来确保。这些参与者可以包括信息内容 提供者、电子硬件制造商、财务服务提供者、或诸如电缆或电信公司之 类的电子“基础设施”公司。控制信息实现了“权利应用”。权利应用 运行在较佳实施例中的“基本软件”之上。该基本软件起一个安全的、 灵活的、通用的基础的作用,该基础可以支持许多不同的权利应用,即 许多不同的业务模型及其各自的参与者要求。

VDE下的权利应用由专用的部分组成,每一个部分都可以对应于 权利保护环境所需要的、一个或多个基本的电子进程。这些进程可以象 建筑模一样被合并在一起,以创建可以保护权利的电子协定,并强制 电子信息的用户和提供者履行他们的义务。电子信息的一个或多个提供 者可以容易地合并选定的建筑模块以创建一个唯一于特定信息内容分 发模型的权利应用。一组这样的模块可以代表执行用户和提供者之间协 定所需的功能。这些模块支持电子商业的许多要求,包括:

使用电子信息许可的分发;

控制信息以及管理这些许可的控制信息的集合的持久性;

可配置的控制集合信息,这些控制集合信息可以由用户选择以便使 用这些信息;

电子信息的数据安全性和使用审核;以及

用于货币、报酬、和借方管理的安全系统。

对于电子商业,依据本发明较佳实施例的权利应用可以电子化地强 制执行所有参与者之间的业务协定。由于可以为不同应用而把不同的部 件组放在一起,本发明可以为种类繁多的产品和市场提供电子控制信 息。这意味着本发明可以为电子商业和数据安全性提供一个“统一”的、 有效的、安全的和成本高效的系统。这可以允许VDE为电子权利保护、 数据安全性以及电子货币和银行业务起单一标准的作用。

在VDE中,权利应用及其基础之间的分离允许对适于应用和使用 的多种不同类型中的每一种的控制信息集合进行有效地选择。这些控制 集合既可以反映电子团体成员的权利,也可以反映他们的义务(例如提 供某人使用一个产品或为某人的电子购物活动纳税的历史信息)。 VDE的灵活性允许其用户电子地实现和强制执行共同的社会和商业道 德规范和惯例。通过提供一个统一的控制系统,本发明支持个人、团体、 商业和政府的、范围广阔的、可能的、有关交易的利益和关心。由于它 的开放式设计,VDE允许(通常在安全控制的情况下)将使用了由用 户独立创建的技术的应用“加入”到系统中,并结合本发明的基础使用 该应用。总之,VDE提供了一个可以公平地反映和强制执行各方之间 的协定的系统。它是一个广泛的和系统的解决方案,该方案满足了对安 全的、成本高效的、和公平的电子环境的迫切需要。

VDE实现

本发明的较佳实施例含有允许系统设计者直接将VDE功能插入到 其产品中的各种工具。这些工具包括一个应用程序员接口(“API”) 和一个权利许可和管理语言(“RPML”)。  RPML为使用本发明的 特性提供了全面的和详细的控制。VDE还包括用来满足信息内容提供 者、分发者和用户的需要的某些用户接口子系统。

利用VDE分发的信息有多种形式。信息可以(举例来说)被分发 以供某个人自己的计算机使用,也就是说,本发明可以用来为本地存贮 的数据提供安全性。作为另一种选择,VDE可以用于由作者和/或出版 商传播给一个或多个接收者的信息。该信息可以有多种形式,包括:电 影、声音录制品、游戏、电子目录购物、多媒体、培训材料、电子邮件 和个人文件、面向对象的库、软件编程资源、以及保存参考/记录的信 息资源(如业务、医药、法律、科学、政府、和消费者数据库)。

本发明提供的电子权利保护还可以为可信的和有效的家庭和商业 银行业务、电子信用进程、电子购物、真实的或有条件匿名的电子现金、 以及EDI(电子数据交换)提供重要的基础。通过提供比基于密钥和 口令的“通行/禁行”技术远远有效的“智能”交易管理特性,VDE在 提高组织中的数据安全性方面提供重要的加强。

VDE通常使用密码技术和其他安全性技术(如加密、数字签名等) 的结合,以及其他的技术,包括:部件的、分布式的和事件驱动的操作 系统技术,以及相关的通信、对象容器、数据库、智能代理、智能卡、 和半导体设计技术。

1.概述

A.VDE解决了重要问题并满足了关键需要

世界正在朝着电子信息设备的集成化发展。设备的互连为更大规模 的电子交互作用和电子商业的发展提供了基础。为实现电子商业环境需 要各种功能。VDE是提供许多上述功能的第一个系统,并且因此而解 决了有关信息电子传播的基本问题。

电子信息内容

VDE允许电子协定的创建涉及双方或多方。这些协定可以本身含 有在处于商业价值链和/或数据安全性链模型中的参与者之间达成的、 针对处理、审核、汇报、和付款等的一批协定。它可以为安全电子信息 内容的分发、使用控制、使用付款、使用审核和使用汇报提供有效的、 可重用的、可修改的、和一致的方法。信息内容可以(举例来说)包括:

诸如电子货币和信用之类的财务信息;

诸如参考资料数据库、电影、游戏、和广告之类的采用商业手段分 发的电子信息;以及

诸如文件、电子邮件、和有所有权的数据库信息之类的由个人和组 织产生的电子财产。

VDE准许一个支持不同的、有竞争力业务伙伴关系、协定、以及 发展的全面业务模型的电子商业市场。

VDE的特性使它能够作为第一个可信的电子信息控制环境起作 用,该环境能够遵守并支持传统电子商业和数据安全性的大量要求。特 别地,VDE允许处于业务价值链模型中的参与者创建传统业务协定条 款和条件的电子版本,并进一步允许这些参与者形成并演变他们认定为 适合其业务要求的电子商业模型。

VDE提供了一个避免反映特殊分发偏见、特殊管理和控制观点、 以及特殊信息内容类型的体系结构。相反,VDE提供了一个范围广阔 的、从根本上可配置和可移动的、电子交易控制、分发、使用、审核、 汇报和付款操作环境。VDE不限在只是一个只涵盖了电子交互活动和 参与者的有限子集的应用或特定于应用的工具集。相反,VDE支持这 样的系统,即通过该系统,可以创建、修改和/或重用上述的应用。因 此,本发明通过提供一个支持标准化控制环境的系统而满足了迫切的、 尚未解决的需求,该标准化控制环境通过使用可编程的、安全的电子交 易管理基础和可重用的和可扩展执行的部件促进了电子设备的互相协 作性、信息内容容器的互相协作性,以及电子商业设备和模型的有效创 建。VDE支持一个单一的电子“世界”,在该电子“世界”中可以对 大多数形式的电子交易活动进行管理。

为了满足权利所有者和信息内容提供者正在发展的需要,并提供可 支持所有可能参与到电子业务模型中的各方(制作者、分发者、管理员、 用户、信用提供者、等等)的要求和协定的一个系统,VDE提供了一 个有效的、大大透明的、低成本的和充分安全的系统(既支持硬件/软 件模型,也支持只有软件的模型)。VDE提供了适合下列需要的、变 化多端的安全控制和管理功能:

1.不同类型的电子信息内容;

2.不同的电子信息内容传递方案;

3.不同的电子信息内容使用方案;

4.不同的信息内容使用平台;以及

5.不同的信息内容销售和模型策略。

VDE可以与许多分离的计算机和/或其他电子设备合并在一起,或 集成进它们之中。这些设备通常含有一个安全子系统,该安全子系统允 许控制对信息内容的使用—例如显示、加密、解密、打印、拷贝、保存、 抽取、嵌入、分发、审核使用、等等。较佳实施例中的上述安全子系统 含有一个或多个“被保护的处理环境”,一个或多个安全数据库、以及 安全“部件组”和其他需要保持安全的项目和进程。VDE可以(举例 来说)使用上述的“安全子系统”安全地控制电子货币、付帐、和/或 信用的管理(包括电子信用和/或货币接收、付款、留存、和/或分配)。

VDE提供了一个安全的、分布式电子交易管理系统,以便控制对 采用电子方式提供的和/或存贮的信息的分发和/或其他使用,VDE控 制对电子信息内容和/或设备的使用的审核和汇报。VDE的用户可以包 括那些为最终用户组织、个人、以及信息内容和/或设备分发者将涉及 信息内容使用、使用汇报、和/或使用付款的控制信息应用到电子信息 内容和/或设备的信息内容创建者。VDE还安全地支持一个或多个参与 者采用电子信用和/或货币的形式向一个或多个其他参与者支付所欠的 款项。

在VDE控制下的电子设备代表安全地处理和控制被分发的电子信 息和/或设备使用、控制信息配制、以及相关交易的VDE“节点”VDE 可以安全地管理由两个或多个参与者提供的控制信息的集成。因此, VDE可以创建VDE参与者之间的一个电子协定,该电子协定代表了两 方或多方的控制要求之间的“协商”,并且制定最终产生的协定的条款 和条件。VDE确保了涉及与电子信息和/或设备使用有关的广泛电子活 动的电子协定每一参与方的权利。

通过使用VDE的控制系统,传统的信息内容提供者和用户可以建 立反映传统的、非电子关系的电子关系。他们可以形成和修改商业关系 以支持他们不断变化的需要或他们之间不断变化的协定。VDE不要求 电子信息内容提供者和用户变更他们的业务惯例和个人喜好以符合某 个支持有限的、基本上固定的功能的计量和控制应用程序。而且,VDE 允许参与者开发出对于非电子商业来说是不可行的业务模型,例如,涉 及信息内容使用信息的详细汇报,在迄今为止尚不可行的低价位平上 进行的大量显著不同的交易,对在强制执行时无须参与者参与或事先了 解的控制信息进行的“传递”、等等。

本发明允许信息内容提供者和用户配制他们的交易环境,以支持:

(1)理想的信息内容模型、信息内容控制模型和信息内容使用信息 通路;

(2)完整范围的电子介质和分发手段;

(3)范围广阔的定价、付款和审核策略;

(4)非常灵活的隐私和/或汇报模型;

(5)现实的和有效的安全体系结构;以及

(6)与步骤(1)到(5)一起可以允许包括唯一于电子世界的模型在内 的“真实世界”电子商业和数据安全性模型的其他管理过程。

VDE的交易管理功能可以强制执行:

(1)涉及与用户对电子信息和/或设备的使用相关的信息的用户隐 私权;

(2)诸如保护信息内容用户的权利或收集从电子交易收入中得到 的税款的法律之类的社会政策;以及

(3)参与者的所有权和/或其他权利,这些权利涉及电子信息的所有 权、分发和/或与电子信息有关的其他商业权利。

VDE可以支持电子形式的“真实”商业活动,也就是说渐进地创 建随着时间推移将形成代表价值链业务模型的相互关联协定的网络的 商业关系。利用安全创建的和独立提交的信息内容和/或设备控制信息 集合之间的交互作用(或协商)使得信息内容控制信息得以发展,这样 可以部分地实现上述功能。不同的信息内容和/或设备控制信息集合可 以由在本发明允许的电子业务价值链中的不同参与者提交。这些参与者 通过使用他们各自的VDE装置创建控制信息集合。可独立安全传递 的、基于部件的控制信息允许由不同参与者提供的控制信息集合之间的 有效交互作用。

VDE允许在VDE支持的电子价值链模型中的参与者的子集之间形 成多个分离的电子协定。这些多个协定一起构成了VDE价值链“扩展” 协定。VDE支持上述构成的电子协定以及因此得到的全面VDE扩展 协定在另外的VDE参与者参与VDE信息内容和/或设备控制信息处理 的过程中逐渐地演变和重新形成。VDE电子协定还可以在已有参与者 提交新控制信息时被扩展。使用VDE,电子商业参与者可以自由地组 织和再组织他们的电子商业业务活动和关系。作为结果,由于使用VDE 能够支持不同的,种类繁多的、使用同一或共享信息内容的业务模型, 于是本发明允许竞争性的电子商业市场得到发展。

作为本发明广泛支持电子商业的能力的一个重要方面,本发明能够 安全地管理可独立传递的、含有控制信息的VDE部件对象(通常采用 含有一个或多个方法、数据或加载模块VDE部件的VDE对象的形式)。 可以使用本发明的协商机制将上述可独立传递的控制信息与上级的和 其他已有的信息内容控制信息集成在一起以便安全地产生被派生的控 制信息。由该派生控制信息规定的所有要求必须在VDE控制信息可以 被访问或使用之前得到满足。这意味着(举例来说)由派生控制信息列 出来作为必需信息的所有加载模块和任意中间数据必须是可用的,并且 他们必须安全地执行所要求的功能。结合本发明的其他方面,安全独立 传递的控制部件允许电子商业参与者自由地规定他们的业务要求和折 衷方案。结果,与传统的非电子商业十分相似,本发明允许电子商业(通 过VDE参与者对各种控制要求的渐进规定)演变成最有效、最具有竞 争力和最有用的业务形式。

VDE提供对电子商业和电子交易管理的支持进行合理化的功能。 该合理化过程归因于针对种类繁多的、与交易管理有关的活动的控制结 构和用户接口的可重复使用。结果,信息内容使用控制、数据安全性、 信息审核、和电子财务活动可以由可重用的、方便的、一致的和熟悉的 工具进行支持。另外,一种合理的手段—交易/分发控制标准—允许VDE 中的所有参与者以硬件控制和安全性、创作、经营以及管理工具的同一 基础集合,支持种类繁多的信息、业务销售模型和/或个人目标。

将VDE作为一种通用电子交易/分发控制系统加以使用允许用户在 他们各自的计算机、网络、通信节点、和/或其他电子设备中的每一个 中维护单一交易管理控制方案。这种通用系统可以满足许多电子交易管 理应用的需要,而不是对于不同的用途需要特殊的、不同的装置。结果, VDE的用户可以避免对应于各个不同信息内容和/或业务模型的、不同 的、有限用途的交易控制应用所带来的混淆和花费以及其他缺乏效率的 万面。例如,VDE允许信息内容制作者对于信息内容创作以及从其他 信息内容制作者那里取得信息内容许可以便将该信息内容加到其产品 中或实现其他用途,这两种活动均使用同一VDE基础控制方案。票据 交换所、分发者、信息内容制作者、以及其他VDE用户都可以不管VDE 活动的类型而按照完全一致的方式,(大大透明地)使用或再使用相同 的分发工具、机制、以及一致的用户接口与运行于他们的VDE装置中 的应用交互作用,以及在相互之间进行交互作用。

通过控制和审核电子地存放和/或传播的信息(或对这些信息进行 其他的使用管理),VDE禁止对电子信息进行的许多形式的未经授权 的使用。这些信息包括(举例来说):商业分发的信息内容、电子货币、 电子信用、业务交易(例如EDI)、机密通信、等等。VDE可以进一 步用来允许商业上提供的电子信息内容之中用户定义的部分对用户可 用,而不是限制用户只能使用信息内容制作者和/或其他提供者为计帐 目的而“预定”的信息内容部分。

VDE(举例来说)可以使用:

(1)安全的计量手段用来预算和/或审核电子信息内容和/或设备的 使用;

(2)安全灵活的装置用来支持对信息内容和/或设备的使用费用进 行偿付和/或计帐,包括用作付款手段的电子信用和/或货币机制。

(3)安全分布式数据库装置,用来存放有关控制和使用的信息(并 使用了确认的划分和标记方案)。

(4)安全的电子设备控制装置;

(5)由位于每个用户(包括VDE信息内容容器制作者、其他信息 内容提供者、客户用户、以及安全VDE信息内容使用信息的接收者) 站点上的节点构成的分布式的、安全的“虚拟黑盒子”。所述虚拟黑盒 子的节点通常含有至少带有一个安全硬件元件(一个半导体元件或其他 用来安全地执行VDE控制进程的硬件模块)的安全子系统,所述安全 子系统被分发在沿信息存贮、分发、付款、使用和/或审核的路径上的 各个节点中。在某些实施例中,对于某些或所有节点来说,所述硬件元 件的功能可以(举例来说)由电子设备宿主处理环境中的软件执行;

(6)加密和解密装置;

(7)使用鉴别、数字签名、和加密传送技术的安全通信装置。所述 用户节点中的安全子系统使用一个协议,该协议创建和鉴别每个节点和 /或参与者的身份,并为安全子系统之间的通信创建一个或多个主机-到- 主机的安全加密密钥;以及

(8)安全控制装置—该装置可允许各个VDE装置进行VDE信息内 容创作(将信息内容与相关控制信息一起放入VDE容器中)、信息内 容分发和信息内容使用、以及使用信息内容使用信息的票据交换所活动 以及其他管理和分析活动。

VDE可以用来将大多数非电子的传统信息传递模型(包括娱乐、 参考资料、目录购物、等等)迁移到充分安全的数字化分发和使用管理 和付帐环境中。由VDE配置管理的分发和财务通路包括:

信息内容制作者;

分发者;

再分发者;

客户管理员;

客户用户;

财务和/或其他票据交换所;

以及/或者政府机构。

这些分发和财务路径还可以包括:

广告商;

市场调查组织,和/或

其他对利用VDE安全传递的和/或存放的信息的用户使用感兴趣 的参与者。

通常,VDE配置中的参与者使用相同的安全VDE基础。可选实 施例支持使用不同VDE基础的VDE系统。这种可选实施例可以使用 一些过程来确保某些互相协作性要求得到满足。

安全VDE硬件(也称为SPU—安全处理部件),或使用(由宿主 处理环境(HPE)提供的)软件来替代或补充所述硬件的VDE装置, 结合安全通信、系统集成软件和分布式软件控制信息以及支持结构一起 工作,从而实现本发明的电子合同和/或权利保护环境。这些VDE部件 一起构成了一个安全的、虚拟的、对分发的信息内容和/或设备进行控 制、审核(或其他管理)、汇报、以及付帐的环境。在某些实施例中, 或者在商业上可以接收的情况下,可以允许某些VDE参与者—诸如通 常维护具有充分物理安全性的非VDE处理环境的票据交换所—使用 HPE而不是VDE硬件元件,并与(举例来说)VDE最终用户和信息 内容提供者进行互相协作。VDE部件一起为电子信息内容和/或设备使 用的分布式异步控制构成了一个可配置的、一致的、安全的和“可信的” 体系结构。VDE支持电子信息内容传递、广泛传播、使用汇报、以及 涉及使用的付款活动的一个“通用”环境。

VDE提供了广义的可配置性。这种特性部分地归因于将用于支持 电子商业和数据安全性的广义要求分解成广泛的构成性“原子”部件和 更高层部件(如加载模块、数据元素和方法),这些部件可以不同地聚 集在一起,为电子商业应用、商业电子协定和数据安全性方案产生控制 方法。VDE提供了使用VDE基础元素以及允许电子商业模型和关系 继续发展的可独立传递的安全VDE部件的安全操作环境。VDE特别 支持对下述分发模型的展开:在这种分发模型中,随着时间的推移,信 息内容提供者可以明确地同意或允许后续的信息内容提供者和/或用户 参与对使用电子信息内容和/或设备的控制信息和结果进行塑造。用于 支持由简单到特别复杂的电子商业和数据安全性活动的十分广泛的功 能属性得到了本发明提供的功能的支持。结果,VDE支持大多数类型 的电子信息和/或设备:使用控制(包括分发)、安全性、使用审核、 汇报、其他管理活动、以及付款方案。

在VDE的较佳实施例中,VDE使用了对象软件技术,并使用对象 技术为(至少部分地)被加密的或经过安全保护的信息的传递形成“容 器”。这些容器可以含有电子信息内容产品或其他电子信息和某些或所 有其他相关许可(控制)信息。可以沿着包含信息内容提供者和/或信 息内容用户的路径分发上述容器对象。可以安全地在虚拟分发环境 (VDE)的节点之间移动这些容器对象,这些节点运行VDE基础软件 并执行控制方法以制定电子信息使用控制和/或管理模型。通过使用本 发明的较佳实施例而传递的容器可以用于分发VDE控制指令(信息), 并且/或者用于密封和电子地分发已经至少部分地经过安全保护的信息 内容。

使用本发明的信息内容提供者可以包括(举例来说)软件应用和游 戏发行者、数据库发行者、有线电视、电视和无线电广播者、电子购物 销售商、以及电子文件、书籍、期刊、电子邮件和/或其他形式的信息 的分发者。充当电子信息的存放者和/或分发者的公司、政府机构、和/ 或个人“最终用户”也可以是VDE信息内容提供者(在一个受限制的 模型中,一个用户只向其自身提供信息内容,并使用VDE来保护自己 的机密信息,以防止其他参与者未经授权地使用这些信息)。电子信息 可包括供个人或组织内部使用的有所有权的和/或机密的信息,以及诸 如提供给其他团体使用的软件应用、文件、娱乐材料和/或参考信息之 类的信息。分发可以通过(举例来说)物理介质传递、广播和/或电信 手段进行,并且可以采用“静态”文件和/或数据流的形式进行。VDE 也可以用于(举例来说)诸如电话会议、交互式游戏或联机公告版之类 的多站点“实时”交互作用,在上述活动中实施了对全部或部分被传送 信息的使用限制和/或审核。

VDE为强制执行商业协定和支持隐私权保护提供了重要机制。 VDE可以安全地将信息从一个参与者传递给另一个关心商业分发的电 子信息内容使用的参与者。即使各个参与者被上述信息内容使用信息的 处理链(路径)中的若干“步”分开,这些信息也可以由VDE通过加 密和/或其他安全处理手段来保护。由于这种保护,VDE可以保证这些 信息的准确性,并且这些信息可以被它们送达的所有参与者所信任。而 且,VDE保证所有的参与者都可以相信:这些信息不会被除预期的、 经过授权的参与者之外的其他任何人所接收,因为这些信息经过了加 密,因此只有授权的参与者或其代理可以将它解密。这些信息也可以通 过在一个以前的处理路径地点中执行一个安全的VDE进程得出,以产 生安全的VDE汇报信息,然后该汇报信息被安全地传送给其预期接收 方的VDE安全子系统。由于VDE可以安全地传递这些信息,电子协定 的参与者不必相信通过除经过VDE控制的装置之外的其他装置传递的 商业使用信息和/或其他信息的准确性。

商业价值链中的VDE参与者可以“从商业角度”确信(即:为商 业目的充分相信)他们通过使用VDE而达成的直接(构成的)和/或“扩 展”的电子协定可以得到可靠地强制实施。这些协定可以带有“动态” 的、涉及交易管理的方面—例如通过电子信息和/或设备使用情况的预 算、计量、和/或汇报而强制执行的信息内容使用控制信息,并且/或者 这些信息可以包含“静态”的电子声明,例如最终用户使用该系统来声 明他或她同意为服务付费、不会把从信息内容或系统使用情况中得到的 电子信息传递给未经授权的参与者,并且/或者该最终用户同意遵守版 权法。在本发明控制下,不仅采用电子手段汇报的、涉及交易的信息是 可信的,而且通过沿付款路径(该路径与汇报路径可以是同一条,也可 以不是同一条)传递付款代价券可以自动地执行付款。付款可以包含在 VDE装置为响应控制信息(在较佳实施例中,这些控制信息位于一个 或多个许可记录中)而自动创建的一个VDE容器中,这些控制信息规 定了根据(例如政府、财务信用提供者以及用户)对VDE控制的电子 信息内容和/或设备的使用从电子帐户(例如,由用户的VDE装置安全 子系统安全维护的帐户)中“提取”信用或电子货币(例如代价券)的 方式。

VDE允许电子商业参与者的需要得到服务,并且它可以将这些参 与者合并在一个普遍范围的、可信的商业网络中,该商业网络可以充分 安全地支持数量庞大的商业活动。VDE的安全性和计量安全子系统核 心将出现在有关VDE的信息内容(1)是被分配了涉及使用的控制信息 (规则和协调数据)的所有物理地点以及/或者(2)被使用的所有物理地 点。该核心可以在“虚拟黑盒子”中执行安全性和审核功能(包括计量), “虚拟黑盒子”是一批分布的、十分安全的涉及VDE的硬件实例,这 些硬件实例被受到安全保护的信息交换(例如电信)进程和分布式数据 库装置互连在一起。VDE还含有高度可配置的交易操作系统技术、加 载模块的一个或多个相关的库以及附属数据、与VDE有关的管理、数 据准备、和分析应用,以及经过设计用来允许将VDE集成进宿主环境 和设备中的系统软件。VDE的使用控制信息(举例来说)提供与有所 有权的信息内容和/或设备相关的:使用授权、使用审核(可以包括审 核压缩)、使用计帐、使用付款、隐私过滤、汇报、以及涉及安全性的 通信和加密技术。

VDE广泛地使用软件对象形式的各种方法来提高VDE环境的可配 置性、可移植性和安全性。它还对携带受保护的信息内容并且还可以既 携带可自由得到的信息(如概要、目录)、也可以携带用来确保控制信 息性能的受保护信息内容控制信息的VDE信息内容容器使用软件对象 体系结构。信息内容控制信息依照由对象的信息内容的权利持有者和/ 或拥有与分发该信息内容相关联的权利的参与者(如政府、财务信用提 供者、和用户)制定的标准来管理信息内容的使用。

本发明所使用的对象方法部分地加强了安全性,因为用来保护对象 的加密方案可以有效地进一步用来保护相关的信息内容控制信息(软件 控制信息和相关数据)不被修改。所述的对象技术还可以提高不同计算 机和/或其它设备环境之间的可移植性,因为信息内容形式的电子信息 可以与(用于所述信息内容的)信息内容控制信息嵌入在一起(例如, 嵌入到与该信息内容控制信息相同的对象容器中),从而产生一个“公 布的”对象。于是,所述控制信息的不同部分可以专用于不同的环境, 例如专用于多种计算机平台和操作系统,并且所述不同的部分可以全部 由一个VDE容器携带。

VDE的一个目标是支持交易/分发控制标准。在安全性要求和相关 硬件和通信问题、种类繁多的环境、信息的类型、信息的使用类型、业 务和/或数据安全性目标、参与者的多样性、以及被传递信息的特性的 条件下,该标准的开发将遇到许多障碍。VDE的显著特性支持了上述 多种的、变化的分发和其他交易变量,其方式是:部分地将电子商业和 数据安全性功能分解为安全硬件SPU和/或对应的软件子系统中可执行 的通用功能模块,并进一步允许运行于VDE装置基础之上的应用在装 配、修改和/或替换上述模块方面具有广泛的灵活性。这种可配置性和 可再配置性允许电子商业和数据安全性参与者通过对逐渐演变的扩展 电子协定(电子控制模型)进行反复加工的进程来反映他们的优先级和 要求。该加工可以在信息内容控制信息从一个VDE参与者传递给另一 个的时候进行,并且要在“已就位”信息内容控制信息所允许的限度内 进行。该进程允许VDE的用户改造现有的控制信息,并且/或者添加必 要的新控制信息(包括删除不再需要的元素)。

VDE对商业电子信息内容分发和数据安全性应用两者都支持可信 的(足够安全的)电子信息分发和使用控制模型。可以对VDE进行配 置以便满足互相间联成网络的参与者的多样化要求,这些参与者可以包 括信息内容制作者、信息内容分发者、客户管理员、最终用户、以及/ 或者票据交换所和/或其他信息内容使用信息的用户。这些参与者可以 构成参与到从简单的到复杂的电子信息内容传播、使用控制、使用汇 报、和/或使用付款过程中的联网参与者。被传播的信息内容既可以包 括被原始提供的信息,也可以包括由VDE产生的信息(例如信息内容 使用信息),并且信息内容控制信息可以在通过信息内容和信息内容控 制信息处理链(一条或多条路径)以及对信息内容的直接使用过程中持 续不变。本发明提供的可配置性对于支持电子商业特别关键,即:它允 许各行业建立关系和演变策略,以产生有竞争力的价值。不具有内在可 配置性和可互相协作性的电子商业工具最终将不能制造出既满足大多 数商业应用的基本要求,又满足其不断演变的要求的产品(和服务)。

VDE基本的可配置性将允许广泛的、具有竞争力的电子商业业务 模型纷繁多样地出现。它允许业务模型经过塑造以使收入源、最终用户 产品价值、以及操作效率最大化。VDE可以用来支持多种不同的模 型、利用新的收入机会、并把用户最希望得到的产品配置交付给用户。 不能够:

      !支持广泛的、可能的、补充的收入活动

      !提供消费者最理想的灵活的信息内容使用特性集合,以及

      !开发提高操作效率的机会

的电子商业技术(而本发明则支持上述功能)将导致其产品常常固 有地较为昂贵而对消费者的吸引力较差,因此在市场中的竞争力较差。

对本发明内在的可配置性具有帮助的某些关键因素包括:

(a)利用可移植的API和编程语言工具集成进广泛电子设备的基本 控制环境。这些API和编程语言工具能够有效地支持在几乎任意的电 子设备环境中合并控制和审核功能,同时维护整体系统安全性;

(b)模块化数据结构;

(c)广义信息内容模型;

(d)基础体系结构部件的一般模块性和独立性;

(e)模块化安全结构;

(d)可变长度的和带有多个分支的处理链;以及

(e)可执行加载模块形式的、独立的、模块化的控制结构,这些加 载模块可以维护于一个或多个库中,并且可以被装配进控制方法和模型 中,其中,该模型控制方案可以在控制信息通过VDE信息内容控制信 息处理路径中的参与者的VDE装置时发生“演变”。

由于本发明所解决问题的广度,本发明可以向正在出现的“电子高 速公路”提供单一的交易/分发控制系统,对于十分广泛的商业和数据 安全性模型而言,该交易/分发控制系统可以防止对机密的和/或有所有 权的信息和商业电子交易的未授权使用。VDE的电子交易管理机制可 以强制执行参与到种类多样的业务和数据安全性模型中的所有参与者 的电子权利和协定,并且通过在每个VDE参与者的电子设备中实现单 个VDE就可以有效地实现上述功能。VDE支持广泛的、在VDE信息 内容和/或信息内容控制信息处理路径的各个“级别”中可以包含广泛 的参与者的不断变化的业务和/或数据安全性模型。不同的信息内容控 制和/或审核模型以及协定可以在同一VDE装置中获得。这些模型和协 定控制的信息内容可以与(举例来说)一般的VDE装置和/或用户、某 些特定用户、装置、种类和/或装置和/或用户的其他分类相关,并且可 以与通常在给定装置中的电子信息内容相关,以及与信息内容的特定有 产权产品、有产权产品的部分、种类和/或其他分类相关。

使用VDE的分发可以把电子信息内容和控制信息两者均包装到同 一容器中,并且/或者可以包括将位于大量不同的远程地点中的和/或位 于大量独立的VDE信息内容容器中的和/或使用大量独立的传递装置的 同一VDE管理的有产权产品的不同部分传递给最终用户的站点。信息 内容控制信息可以放在一个或多个VDE管理对象中,部分地或全部地 与其相关信息内容分开传递到用户VDE装置。所述控制信息的部分可 以从一个或多个的源传递出去。通过从用户的VDE装置安全子系统对 一个或多个远程VDE安全子系统和/或VDE兼容的、经过验证的安全 远程地点的访问也可以得到控制信息以供使用。诸如计量、预算、解密 和/或加入指纹等与用户的特定信息内容使用活动相关的VDE控制进程 可以在用户本地的VDE装置安全子系统中执行。或者所述的进程可以 被划分到大量的安全子系统中,这些安全子系统可以位于同一用户 VDE装置中,以及/或者位于网络服务器及用户装置中。例如,一个本 地VDE装置可以执行解密,并保存任意或所有与信息内容使用相关的 使用计量信息,与/或在这一用户装置上的电子设备使用可采用所述安 全子系统之间的安全(如加密)通信而在服务器上执行。所述服务器地 点也可以用于近似实时地、频繁地、更为周期性地安全接收来自所述用 户装置的信息内容使用信息,而(举例来说)计量得到的信息只是暂时 地保存在本地的用户装置中。

对VDE管理的信息内容的传递手段可包括诸如光盘之类的、用于 传递所述信息的一部分的电子数据存贮手段以及用来传递所述信息的 其他部分的广播和/或远程通信手段。电子数据存贮装置可包括磁介 质、光介质、组合的磁光系统、快速RAM存贮器、磁泡存贮器、以及 /或者其他存贮手段—例如使用全息、频率和/或极性数据存贮技术的大 容量光存贮系统。数据存贮手段也可以使用分层盘片技术,例如使用大 体透明和/或半透明的材料,这些材料使光线透过带有数据的盘片层, 而这些盘片本身被物理地包装在一起形成一个厚盘片。这些盘片中带有 数据的位置可以是至少部分地不透光的。

VDE支持通用的基础用于安全的交易管理,包括使用控制、审核、 汇报和/或付款。这些通用的基础称为“VDE功能”(“VDEF”)。 VDE还支持一批“原子”应用元素(如加载模块),这些“原子”应 用元素可以被有选择地聚合在一起以形成称为控制方法的各种VDEF 功能,这些VDEF功能用作VDEF应用和操作系统功能。当一个电子 设备的宿主操作环境包含了VDEF功能的时候,该操作环境称为“权 利操作系统”(ROS)。VDEF加载模块、相关数据以及方法构成了 一个信息体,该信息体相对于本发明中的用途被称为“控制信息”。 VDEF控制信息可以特别地与一个或多个电子信息内容相关联,并且/ 或者它可以用来作为VDE装置的操作系统功能的一个通用部件。

VDEF交易控制元素反映和制定了特定于信息内容的和/或更为通 用化的(例如,一般操作系统的)控制信息。VDE参与者可通过使用 诸如VDE模板将通常采取或多或少可配置的应用(应用模型)的形式 的VDEF功能进行加工以实现特定的功能,这些特定的功能带有功能 参数数据,来反映VDE参与者之间关于使用诸如作为商品分发的产品 的一个或多个明确电子协议的元素。这些控制功能管理对电子信息内容 的使用和/或审核,以及根据信息内容的使用以及对所述的使用进行的 任意偿付汇报有关信息。VDEF功能可“演变”以反映接收或提供给 定的控制信息组的一个或多个相继的参与者的要求。对于给定信息内容 模型的VDE应用(例如采用CD-ROM分发娱乐产品、从Internet存 放库中传递信息内容、或电子目录购物及广告、或上述活动的某些结 合),参与者通常将能够安全地从可用的、可选的控制方法中作出选择, 并应用相关的参数数据。其中,这种对控制方法的选择和/或对数据的 提交将构成他们对控制信息的“贡献”。作为选择或补充,某些已经被 明确地验证为可以与所述应用安全地互相协作和兼容的控制方法可以 被操作员作为上述贡献的一部分独立地提交出来。在最普通的例子中, 一个通常经过验证的(经过验证可以用于给定的VDE管理和/或信息内 容类别的)加载模块可以由许多或任意的运行于所述方案的节点中的 VDE应用使用。这些参与者在他们被允许的限度之内可以独立地和安 全地添加、删除和/或修改加载模块和方法的详细说明,并添加、删除 或修改相关的信息。

通常,创建VDE信息内容容器的参与者规定将要和/或可能应用到 某些电子信息上的VDEF功能的一般特性。一个VDE信息内容容器是 一个对象,它既包含信息内容(例如,诸如计算机软件程序、电影、电 子出版物或参考材料之类的商业分发的电子信息产品、等等),又包含 与该对象的使用相关的某些控制信息。创建的一方可以使一个VDE容 器对其他方可用。由VDE信息内容容器传递的控制信息,或者与VDE 信息内容容器结合使用的可用控制信息(为商业信息内容分发目的)构 成了电子信息内容的VDEF控制功能(以及任何相关的参数数据)。 这些功能可以构成一个或多个“被提议”的电子协定(以及/或者可供 选择和/或与参数数据一起使用的协定功能),这些电子协定管理对上 述信息内容的使用和/或使用结果,并且可以制定涉及多方的协定的条 款和条件、以及他们各自不同的权利和义务。

借助于由一个或多个参与者—例如由一个从“上级”参与者收到控 制信息的“下级”参与者—所接受的用户接口,VDE电子协定可以是 明确的;或者它可以是单独声明其协定的各平等参与者之间的一个进 程。协定也可以从一个自动化的电子进程得出,在该进程中,特定的 VDE参与者控制信息对条款和条件进行“评估”,这些控制信息评估 某些与信息内容相关联的和/或由其他参与者提交的其他电子条款和条 件是否是可接受的(没有与可接受的控制信息标准冲突)。这种评估进 程可以相当简单,例如它可以是一个比较过程,用来确保条款和条件表 中的部分或所有上级控制条款和条件与信息内容控制信息处理路径中 的后续参与者所提交的控制信息之间存在兼容性,或者该进程可以是一 个更为精细的进程,它评估由两个或多个参与者提交的两个或多个控制 信息集合的可能结果,并且/或者在这些控制信息集合之间执行一个协 商进程。VDE还支持半自动化的进程,在该进程中,一个或多个VDE 参与者借助用户接口通过接受和/或提议对特定控制信息来说是可接受 的某些控制信息直接解决控制信息集合之间的“争端”,所述特定控制 信息代表一个或多个其他团体的利益和/或对通过特定用户接口进行查 询以便在某些替代选项和/或某些参数信息中作出选择的响应,如果对 适用的上级控制信息来说是可接受的话,上述响应将被采纳。

当另一个参与者(而不是规则的第一个应用者)可能通过一个协商 进程接受、和/或添加、和/或修改“已就位”的信息内容控制信息时, 在两方或多方之间的、涉及对该电子信息内容使用的一个VDE协定可 被创建出来(只要任何修改符合上级控制信息)。对涉及某些电子信息 内容的条款和条件的接受可以是直接的和明确的,或者也可以作为对信 息内容的使用结果而采用隐含的形式(取决于(举例来说)法律要求、 以前对上述条款和条件的暴露、以及就位控制信息的要求)。

VDEF功能可以被大量的参与者使用,VDE协议可以由大量的参 与者达成,而这些VDEF功能不必直接与对某些特定电子信息的控制 相关联。例如,特定的一个或多个VDEF功能可以出现在某个VDE装 置中,而特定的VDE协定可以在为某个信息内容分发应用进行注册的 进程中达成,该协定由上述装置使用以便安全地控制VDE信息内容使 用、审核、汇报和/或付款。类似地,当某个特定的用户和/或其设备向 某个VDE信息内容或电子设备提供者注册以便成为一个VDE装置和/ 或用户的时候,该特定参与者可以与该提供者达成一个VDE用户协 定。在这种情况下,可供用户VDE装置使用的VDEF就位控制信息可 以要求(举例来说)在某些序列中要使用某些VDEF方法,以便能够 使用所有和/或某些类型的电子信息内容和/或VDE应用。

VDE确保进行给定交易所需的某些前提条件得到满足。这包括安 全地执行所要求的任何加载模块以及使所要求的任何相关数据成为可 用。例如(如以某个方法的形式的)所要求的加载模块和数据可能规定: 必须确认来自一个授权来源的充足信用可供使用。它可能进一步要求特 定的一个或多个加载模块在适当的时刻以多个进程的形式执行,以确保 为了偿付对上述信息内容的使用而使用上述信用。某个信息内容提供者 可能(举例来说)要求计量被制作出来供分发给雇员的给定软件程序拷 贝的数目(该程序的一部分可以采用加密的形式被维护起来,并要求 VDE装置的存在来运行)。这将要求在每次为另一个雇员制作一个拷 贝时,需要为该有所有权的产品的拷贝执行一个计量方法。同一提供者 还可以根据用户从他们那里取得使用许可的不同有所有权的产品的总 数收取费用,并且要求使用他们获取有所有权的产品使用许可的计量历 史以维护上述信息。

VDE提供了组织范围、团体范围、和/或普遍范围的安全环境,该 安全环境的完整性由安全地受控于VDE参与者用户装置(节点)中的 进程所确保。较佳实施例中的VDE装置可以含有软件的和防破坏硬件 半导体元件两者。这种半导体方案至少部分地含有设计成可以保护执行 VDE控制功能所用的信息和功能、使之免受破坏或被未经授权的观测 的专用电路。本发明提供的专用安全电路含有至少一个:称为安全处理 部件(SPU)的专用的半导体配置和/或一个标准的微处理器、微控制 器、以及/或者支持本发明的要求并且可起到SPU那样的作用的其他处 理逻辑。VDE的安全硬件可以安装在(举例来说):传真/调制解调器 芯片或芯片封装中、I/O控制器中、视频显示控制器中、以及/或者其 他可用的数字处理配置中。预计本发明的VDE安全硬件功能的多个部 分最终会成为计算机和各种其他电子设备的中央处理单元(CPU)的 标准设计元件。

将VDE功能设计到一个或多个标准的微处理器、微控制器、以及/ 或者其他数字处理部件中,通过对本发明所预期的交易管理用途以及其 他的宿主电子设备功能都使用相同的硬件资源,可以从实质上降低涉及 VDE的硬件成本。这意味着VDE SPU可以使用(共享)“标准”CPU 的电路元件。例如,如果一个“标准”的CPU可以运行于保护模式, 并且作为受保护的活动可以执行有关VDE的指令,那么这种实施例可 以向各种应用提供充分的硬件安全性,同时专用处理器的花费也将省 去。在本发明的一个较佳实施例的控制下,当在(例如由保护模式微处 理器支持的)保护模式下执行有关VDE的指令的时候,某些存贮器(如 RAM、ROM、NVRAM)得到维护。这些存贮器与处理逻辑(如处 理器)位于同一封装中。最好,该处理器的封装和存贮器采用可增强其 防破坏能力的安全性技术进行设计。

VDE系统的整体安全性的程度主要取决于VDE控制进程执行和相 关数据存贮活动的防破坏程度和隐蔽程度。使用专用半导体封装技术可 以显著地有助于提高安全性的程度。通过在一个SPU封装中使用半导 体存贮器(如RAM、ROM、NVRAM)、通过在将数据送入外部存 贮器(如外部RAM封装)之前首先加密数据,并且首先解密CPU/RAM 封装中被加密的数据然后才执行该数据,可以部分地实现上述半导体存 贮器中的隐蔽和防破坏。当某些重要的有关VDE的数据存放在未经保 护的媒介上时,例如保存在诸如随机访问存贮器、大容量存贮器、等之 类的标准宿主存贮器中时,可以使用上述的进程。在这种情况下,VDE SPU在把安全VDE执行的结果存放到外部存贮器之前首先对这些数据 进行加密。

按照本发明的VDE所提供的某些重要特性的综述

VDE使用了作为一般用途的基础并向分布式电子商业方案提供充 分的安全保护的多种功能。VDE实现了支持发散的、有竞争力的业务 伙伴关系、协定、以及不断演变的整体业务模型的电子商业市场。例如, VDE具有如下特性:

    !通过使用安全的通信、存贮和交易管理技术,“充分”地

阻止对电子信息和/或设备的未授权和/或无偿使用。VDE支持

一个模型范围内的、创建了单一安全“虚拟”交易处理和信息存

贮环境的、分布式安全性实现。VDE允许分布式VDE装置安全

地存贮和传送信息,并远程地控制执行进程以及在其他VDE装

置中采用多种方式对电子信息进行的使用的特征。

    !支持用于交易控制、审核、汇报、以及相关通信和信息存

贮的、低成本、高效率以及有效的安全性体系结构。VDE可以

使用涉及标记的安全性技术;解密密钥的时间衰老技术;对被存

贮的控制信息(包括对该被存贮的信息进行有差别地标记以防止

替换和破坏)和分发的信息内容两者都实行的隔离技术(以便对

于许多信息内容应用使用一个或多个唯一于特定VDE装置和/或

用户的信息内容加密密钥);诸如三重DES之类的用于加密信

息内容的私有密钥技术;诸如RSA之类的公开密钥技术—用来

保护通信,并提供数字签名和鉴别的诸多优点以便将VDE配置

中的节点安全地结合在一起;对重要交易管理可执行码的安全处

理;将少量的、高度安全的、受硬件保护的存贮器空间与大得多

的、“暴露的”、用来安全地存放(通常为加密的和加标记的)

控制和审核信息的大容量介质存贮器空间结合在一起;VDE使

用了分布在VDE实现方案中的某些或所有地点的专用硬件:a)

所述硬件控制下列的重要元素:信息内容的准备(例如使该信息

内容被放入一个VDE信息内容容器中,并使信息内容控制信息

与该信息内容相关联)、信息内容和/或电子设备使用审核、信息

内容使用分析、以及信息内容使用控制;b)所述硬件已经被设

计为安全地处理加载模块控制活动,其中所述控制处理活动可以

包括所要求的控制因素的一个序列。

    !支持对VDE电子信息产品(受VDE控制的信息内容)的

信息子集的动态用户选择。该特性与下列的限制相反,这些限制 是:必须使用几个高层的、独立的、预定义的信息内容提供者信 息增量,例如,必须选择整个信息产品或产品段以便获取或使用 该产品或段的部分。VDE支持对各种增量(包括“原子的”增 量、以及不同增量类型的组合)的计量和使用控制,这些增量由 用户特别选择出来,它们代表一批预标识的一个或多个增量(诸 如预定义特性的一个或多个块,这些预定义特性的例子包括:字 节、图像、逻辑相关的块),这些预标识的增量构成了通常为任 意的、但对于用户来说是逻辑的、“可传递”的信息内容。VDE 控制信息(包括预算、定价、以及计量信息)可以被配置,以便 它可以适当地专应用于信息增量的不同的、变幻莫测的用户选 择集合的特别选择,并且,价格标准可以至少部分地根据混合增 量选择的数量和/或特性来制定(例如,特定数量的特定正文可意 味着相关的图像可以折扣15%;“混合”增量选择中的更大数 量的正文可意味着该图像被折扣20%)。所述用户选择的聚合 信息增量可以反映用户对信息的实际要求,并且比限制为单一 的、或几种更高层次的(如产品、文件、数据库记录)预定增量 要更为灵活。所述高层次增量可能含有用户不希望的大量信息, 于是比用户所需要的信息子集(如果可以得到该子集的话)更为 昂贵。总而言之,本发明允许包含在电子信息产品中的信息按照 用户的规定提供。进行剪裁以适应用户的规定允许本发明向用户 提供最大的价值,而这样做又产生了最大数量的电子商业活动。 用户(举例来说)将能够定义从一个可用信息内容产品的不同部 分得到的信息内容的一个聚集,但作为供用户使用的可传递物, 所述信息内容聚焦是完全唯一的被聚焦增量。用户可以(举例来 说)从一个诸如参考文献之类的信息产品中的不同部分中选择特 定数量字节的信息,将这些信息以未加密的形式拷贝到盘上,并 且按照全部数量的字节加上对提供这些字节的“文章”的数量的 附加计费而接受计帐。信息内容提供者可能适当地对这种用户定 义的信息增量收取较少的费用,因为用户没有要求来自含有所需 信息的所有文章的所有信息内容。这种定义用户所需信息增量的 进程可能涉及人工智能数据库搜索工具,这种工具有助于从一个 信息产品中定位信息的最相关部分,并使得描述搜索条件命中的

信息被自动显示给用户,以便用户进行选择或自动抽取,以及将

上述部分传递给用户。VDE还支持种类繁多的预定义增量类

型,包括:

    !字节,

    !图像,

    !对应于声音或视频的一段时间之内的信息内容,或任何可

以由信息内容提供者数据映射方法标识的其他增量,例如:

    !句子,

    !段落,

    !文章,

    !数据库记录,以及

    !代表逻辑相关信息增量的字节偏移量。

对于任何同时存在的预定义增量类型来说,只要对于给定类型的信 息内容和业务模型是现实的,都将得到VDE的支持。

    !在用户的站点安全地存放反映多种不同信息内容段类型

的用户使用的可能非常详细的信息,并在廉价的、“暴露的”宿

主大容量存贮器中以加密数据的形式维护详细信息,同时在高度

安全的专用VDE装置非易失性存贮器(如果该类型存贮器可用

的话)中维护概要信息供安全性测试用。

    !支持用于被分发的电子信息的路径和/或与信息内容使用

相关的信息的可信处理链功能。该链可以(举例来说)从信息内

容制作者延伸到分发者、再分发者、客户用户,并且可以提供一

条路径,以供把相同的和/或不同使用信息安全地汇报给诸如一个

或多个独立票据交换所之类的一个或多个审核者,然后把这些信

息送回包括信息内容制作者在内的信息内容提供者。用于特定信

息内容处理以及相关信息内容控制信息和汇报信息处理的相同

和/或不同路径也可以用作用来对电子信息内容和/或设备使用进

行电子付款处理(本发明中的付款以管理信息内容为其特征)的

一条或多条路径。这些路径用来输送所有或部分信息内容和/或与

信息内容相关的控制信息。信息内容制作者以及其他提供者可以

规定必须部分或完全用来传播采用商业方式分发的有所有权的

信息内容、信息内容控制信息、付款管理信息内容、以及/或者相 关使用汇报信息的路径。由信息内容提供者规定的控制信息也可 以规定哪些特定的参与者必须或可以(包括(举例来说)可以从 中作出选择的一组合格参与者)处理被输送的信息。它还可以规 定必须或可以使用何种传送装置(例如电信载波或介质类型)以 及传输集线器(hub)。

!支持灵活的审核机制,例如使用“位图计量器”,这可以 带来高效的运行和吞吐率,并允许采用可行方式对涉及以前的使 用活动和相关模式的信息进行保存和迅速取回。这种灵活性适用 于种类多样的计帐和安全性控制策略,例如:

!提高价格(例如成套购买)

!价格折扣(包括数量折扣)

!与计帐相关的时间段变量,例如根据以往购货的计时对新 的购货活动进行折扣

!根据经过一段时间段使用的电子信息的不同的、逻辑相关 的单元的数量的安全性预算

使用位图计量器(包括“常规”和“宽”位图计量器)记录 对信息的使用和/或购买,同时结合本发明的较佳实施例中的其他 元素,能够唯一地支持对使用历史的有效维护,这些使用历史涉 及:(a)租借,(b)固定费用的许可使用或购买,(c)根据历史使 用变量的许可使用或购买折扣,(d)向用户所做的汇报,汇报方 式的特点是:允许用户确定某一特定条目是否被获取,或者在特 定的时间段内被获取(不需要使用对于这些应用来说极为低效的 传统数据库机制)。位图计量器方法记录某些活动,这些活动涉 及电子设备、所有物、对象、或它们的部分、和/或独立于特定所 有物、对象等的管理活动,这些活动由用户和/或电子设备执行, 这样信息内容和/或设备的提供者和/或管理活动的控制者可以判 断在过去的某些时刻或某段时间内是否发生了某个活动(例如对 商业电子信息内容产品和/或设备的某种使用)。此后,这种判断 可以用作信息内容和/或设备的提供者和/或管理活动的控制者的 定价和/或控制策略的一部分。例如,信息内容提供者可以决定对 访问某一所有物的一部分只收费一次,而不管用户对该有产权物 的那一部分访问了多少次。

!支持“可发布的”信息内容,也就是说,该信息内容可以 由一个信息内容提供者提供给一个最终用户,然后该最终用户拷 贝该信息内容,并将它传递给其他的最终用户方,而不必要求信 息内容提供者直接参与进来以注册和/或初始化该信息内容供后 续使用。该信息内容以“移动对象”的形式在“(传统分发)通 道外”传送。移动对象是安全地携带至少某些许可信息和/或使用 这些对象所要求的方法(如果所要求的方法将在或可以直接对目 的地VDE装置中可用的话,那么这些方法无须由移动对象携 带)的容器。某些移动对象可以在给定VDE配置中的某些或所 有VDE装置中使用,因为它们可以使信息内容使用活动所需的 信息内容控制信息成为可用信息,而不必要求商业VDE价值链 参与者或数据安全性管理员(例如一个控制官员或网络管理员) 参与进来。只要用户VDE装置安全子系统中有移动对象控制信 息要求(例如具有从授权信用提供者得到的足量财务信用),那 么接收方团体可以无须与一个远程VDE授权机构建立连接(直 到预算被用光,或信息内容使用报告时间已到),就可以使用至 少某些移动对象信息内容。移动对象可以在“通道外”移动,这 种方式允许(举例来说)用户将其中的内容为一个软件程序、电 影或游戏的移动对象的拷贝送给邻居,而该邻居如果能够得到适 当的信用(例如在诸如VISA或AT&T之类的票据交换所开立的 电子票据交换所帐户)的话便可以使用该移动对象。类似地,通 常可以从Internet或类似网络的存放库中得到的电子信息也可以 以移动对象的形式提供出来,该移动对象可以被一个初始下载者 下载并接着对之进行拷贝,然后由他传递给其他参与者,而这些 参与者又把该对象传给另外的参与者。

!根据个人和装置、用诸如类别之类的分类、以及用功能和 使用客户标识级别层次的层次性标识(例如客户组织ID、客户 部门ID、客户网络ID、客户项目ID、以及客户雇员ID、或上 述ID的任意适当子集)而提供了十分灵活和可扩展的用户标 识。

!提供了通用的、安全的、基于部件的信息内容控制和分发 系统,该系统起基础交易操作系统环境的作用,该基础交易操作 系统环境使用了经过精心编制用于交易控制和审核的可执行码 段。这些码段可以被重用以便优化可信的、分布式交易管理方案 的创建和运行过程中的效率。VDE支持以“原子”加载模块和 相关数据的形式提供该可执行码。许多这种加载模块固有地是可 配置的、可聚合的、可移植的、以及可扩展,并且可以在VDE 交易管理操作环境中作为控制方法单独地或结合(相关数据)地 运行。通过部分地使用上述通用交易管理基础来安全地处理与 VDE交易相关的控制方法,VDE可以满足种类繁多的电子商业 和数据安全性应用的要求。控制方法主要通过使用一个或多个所 述可执行的、可重用的加载模块代码段(通常处于可执行目标部 件的形式)以及相关数据来创建。控制方法的部件特性允许本发 明作为一个高度可配置的信息内容控制系统而有效地运行。在本 发明的控制下,信息内容控制模型可以在一定限度内被反复地和 异步地加工,或者被更新以便满足VDE参与者的需求,所述的 限度是:上述加工和更新活动要遵守由VDE应用施加的限制— 如果有这些限制的话,例如,是否新的部件组是可以接受的,如 果是的话,对于该部件组存在哪些验证要求,或者是否任意的或 特定的参与者可以通过从可选的控制信息(许可记录)控制方法 中进行选择而加工任意的或特定的控制信息。上述反复的(或并 发的)多个参与者进程将作为安全控制信息部件(诸如加载模块 和/或方法之类的可执行码和/或相关数据)的提交和使用的结果 而发生。这些部件可以通过对控制信息产生影响的每个VDE参 与者VDE装置之间的安全通信被独立地提供出来,并且可能要 求验证以便给定应用对它们进行使用,其中,这种验证由一个管 理VDE配置的验证服务管理者提供,该管理者确保设备和被提 交控制方法之间安全的可互相协作性以及/或者可靠性(如交互作 用所引起的错误(bug)控制)。VDE电子设备交易操作环境的交 易管理控制功能与非安全交易管理操作系统功能交互作用,以正 确地控制与电子信息安全性、使用控制、审核和使用汇报有关的 交易进程和数据。VDE提供这种功能以管理涉及安全VDE信息 内容和/或设备控制信息执行和数据存贮的资源。

!便利在VDE中对应用和/或系统功能的创建,并便利将按 照本发明所创建的加载模块和方法向电子设备环境的集成。为了 实现该功能,VDE使用了一个应用程序员接口(API)和/或一 个带有内置功能的交易操作系统(例如ROS)编程语言,上述 两者都支持对功能的使用,并可以用来有效地和紧密地将VDE 功能集成进商业和用户应用中。

!支持用户交互作用,这个功能借助了:(a)“弹出式”应 用,该应用(举例来说)向用户提供消息,并允许用户采取诸如 同意某个交易之类的特定动作;(b)独立VDE应用,该应用向用 户活动提供管理环境,所述用户活动的例子包括对下列活动进行 规定的最终用户优选规定说明:限制每次交易、每单位时间、和 /或每次会话的价格,访问有关以前交易的历史信息、审查诸如预 算、费用之类的(例如详细的和/或概要的)财务信息以及使用分 析信息;以及(c)VDE感知型应用,这些应用作为使用了VDE API 和/或交易管理(例如基于ROS的)编程语言的结果把对VDE 的“感知”嵌入到商业或内部软件(应用程序、游戏、等等)中, 以便VDE用户控制信息和服务可以被无缝地集成到这些软件 中,并且可以被用户直接访问,因为底层功能已经被集成进商业 软件本来的设计中。例如,在一个VDE感知型字处理器应用中, 用户可以将一个文件“打印”到一个VDE信息内容容器对象中, 在此过程中,该用户通过从一系列适用于不同用途的不同菜单模 板(例如,一个用于组织内部用途的机密的备忘录模板可以将功 能限制为“保存”,即制作该备忘录的电子拷贝)中进行选择而 应用特定的控制信息。

!使用“模板”来简化对本发明中涉及特定产业或商业的配 置功能的进程。模板是本发明下的应用或应用后加部分。模板支 持对涉及特定信息内容类型、分发方法、定价机制、用户与信息 内容和/或管理活动之间的交互作用、以及/或者诸如此类等等的 标准进行有效的规定和/或操作。在本发明所支持的范围广阔的功 能和配置的前提下,将配置的可能范围减小到适用于给定业务模 型的可管理子集的范围内允许“典型”用户容易地使用本发明的 全面可配置能力,否则这些用户将负担复杂的编程和/或配置设计 责任。模板应用还可以通过减少与提供独立开发加载模块相关的 风险—包括独立模块和应用之间的代码交互作用的不可预测方 面,以及减少涉及在这些模块中可能出现病毒的安全性风险,从 而确保与VDE有关的进程是安全的并且是最优地无错的。通过 使用模板,VDE将典型用户的配置责任减少到适当集中的一系 列活动,包括通过菜单选项选择方法类型(如功能),这些菜单 选项的例子包括:多重选择、图符选择、和/或对方法参数数据的 提示(例如标识信息、价格、预算限制、日期、时间段、对特定 信息内容的访问权利、等等),上述菜单选项为控制信息的目的 提供了适当的和/或必要的数据。通过将典型(非编程)用户的活 动限制到一般配置环境(模板)已经经过预置成反映了对应于该 用户、某个信息内容或其他业务模型的一般性要求的配置活动的 一个有限子集中,可以非常实际地限制涉及信息内容容器化(包 括在信息内容上加入初始控制信息)、分发、客户管理、电子协 定实现、最终用户交互作用、以及票据交换所活动—包括相关的 互相协作问题(例如由安全性、操作系统、和/或验证的不兼容性 所产生的冲突)—的困难。使用适当的VDE模板可以向用户保 证:他们的有关信息内容的VDE容器化、提供其他控制信息、 通信、加密技术和/或密钥、等等活动将遵从他们的分布式VDE 配置的规范。VDE模板构成了预置的配置,配置通常可以是可 重新配置的,以便允许产生新的和/或被修改的模板,这些模板在 演变的过程中反映出对新产业的适应性,或者反映出一个现有产 业的演变或其他变化。例如,模板的概念可以用来将独立的、全 面的框架提供给某些组织和个人,这些组织和个人创建、修改、 销售、分发、消费、和/或使用电影、声音录制品和实况表演、杂 志、基于电话的零售、目录、计算机软件、信息数据库、多媒体、 商业通信、广告、市场调查、通知、游戏、向数控机床提供的 CAD/CAM服务、等等诸如此类。在围绕上述模板的上下文变化 或演变的时候,按照本发明所提供模板应用可以被修改,以满足 上述变化,从而适应更大范围的应用,或适应更集中的活动。一 个给定VDE参与者可以带有大量可用的、适用于不同任务的模 板。将信息内容放入其初始VDE容器的参与者可以按照与该信 息内容相关的信息内容和/或业务模型的类型的不同而带有多种 不同的、可配置的模板。一个最终用户可以带有不同的、可配置 的模板,这些模板可以适用于不同的文件类型(电子邮件、保密 内部文件、数据库记录、等等)和/或用户的子集(将控制信息的 不同的一般集合应用到用户的不同群体,例如,选择一系列可以 按照某种预定的准则使用某个文件的用户)。当然,在某些情况 下,模板可以带有固定的控制信息并且不向用户提供选项或参数 数据项。

!支持大量的、不同的、控制对电子信息内容的同一特定拷 贝的使用和/或审核、以及/或者区分地控制对同一电子信息内容 的不同拷贝(出现)的使用和/或审核的控制模型。用于计帐、审 核、和安全性的不同模型可以被应用到同一电子信息内容,并且 上述不同的控制信息集合可以为控制的目的使用相同的或不同 的电子信息控制增量粒度。这包括对于预算和审核使用支持可变 的、适用于多种预定义的电子信息增量的控制信息,包括对于给 定电子信息使用多种不同的预算和/或计量增量,可以传递上述给 定信息用于计帐的度量单位、信用限制、安全性预算限制和安全 性信息内容计量增量、以及/或者市场调查和消费者描述的信息内 容计量增量。例如,对于一个带有科学文章数据库的CD-ROM 光盘,可以部分地按照基于解密字节的数目、含有所述解密字节 的文章的数目的一个公式对之进行计帐,同时安全预算可能把对 该数据库的使用限制为该数据库安装所在的广域网中的每个用 户每月对该数据库的使用不超过数据库的5%。

!提供机制以便通过充分安全的信息内容和信息内容控制 信息处理链并通过对该信息内容的各种形式的使用而持续地维 护可信的信息内容使用和/或汇报控制信息,其中所述的控制持续 性可以在上述使用中一直保持。控制的持续性包括从一个VDE 容器对象中抽取信息的能力,其方式是创建一个新容器,该容器 中的信息内容至少部分地受到安全保护并且该容器既含有被抽 取出的信息内容又含有至少部分的控制原始容器的信息的控制 信息,并且/或者该容器中的信息内容至少部分地由原始容器中的 控制信息为上述目的而产生,并且/或者VDE装置控制信息规定 应该持续不变并且/或者控制对新创建容器中的信息内容的使 用。如果容器被“嵌入”到另一个受VDE管理的对象(例如一 个含有大量嵌入VDE容器的对象,而其中的每个容器都含有从 不同来源获取(抽取)的信息内容)中,那么上述控制信息可以 继续管理对该容器信息内容的使用。

!允许用户、其他价值链参与者(例如票据交换所和政府机 构)、和/或用户组织规定涉及他们对电子信息内容和/或设备的 使用的优先选择或要求。如果上级控制信息允许的话,诸如使用 商业分发的信息内容(游戏、信息资源、软件程序、等)的最终 用户消费者之类的信息内容用户可以规定预算和/或其他控制信 息以便管理他们自己的、对信息内容的内部使用。这些使用包括 (举例来说)用户为电子文件设置在一个他希望在没有事先明确 的用户授权的前提下支付的价格上的限制,并且该用户创建他或 她允许被收集的计量信息的特性(隐私保护)。这包括向信息内 容用户提供手段以保护从他们对VDE装置和信息内容的使用和/ 或设备使用审核中获得的信息的私有性。特别地,VDE可以防 止涉及参与者对电子信息内容的使用的信息在没有得到该参与 者默许或明确同意的情况下被提供给其他参与者。

!提供允许控制信息至少部分地按照被独立地、安全地传递 的其他控制信息而“演变”并被修改的机制。所述控制信息可以 包括已被验证为对于应用于特定VDE应用、应用类别、和/或 VDE分布式方案来说是可接受的(如可靠的和可信的)可执行 码(如加载模块)。一旦信息内容控制信息(加载模块和任何相 关数据)流通到控制信息处理路径中的一个或多个VDE参与者 的时候,控制信息的上述修改(演变)便可以发生,或者一旦收 到来自一个VDE参与者的控制信息的时候,上述修改(演变) 发生。信息内容控制信息处理路径中的处理者在他们中的每一个 所授权的限度内可以创建、修改、和/或提供与电子信息内容和/ 或设备的控制、分析、偿付、和/或使用汇报(例如,这些与受 VDE控制的有所有权信息内容的使用相关)相关的许可、审核、 付款和汇报控制信息。当信息内容控制信息已经在VDE信息内 容控制信息处理序列中从一个参与者流到另一个参与者的时 候,(从一个除了对于验证来说为不独立之外的独立来源)独立 传递的、至少部分安全的控制信息可以用来安全地修改信息内容 控制信息。该修改过程使用了(举例来说)安全地在VDE安全 子系统中处理的一个或多个VDE部件组。在一个可选的实施例 中,一个上级参与者可以在通常以VDE管理对象的形式从一个 “下级”参与者收到被提交的、至少部分地受到安全保护的控制 信息之后,通过使用他们的VDE装置安全子系统来修改控制信 息。通过VDE路径传递的控制信息可以代表一个混合的控制集 合,因为它可以含有:在通过控制信息处理者序列时没有发生变 化的控制信息、被允许修改的其他控制信息、以及代表新控制信 息和/或中间数据的其他控制信息。该控制集合代表了被传播信息 内容的控制信息的演变。在本例中,当VDE信息内容容器的整 个信息内容控制集合安全地(例如,以加密的形式通信并使用鉴 别和数字签名技术)至少部分地传递到一个新参与者的、安全地 收到和处理所提出的控制信息的VDE装置时,这些控制集合正 在“演变”。借助涉及两个控制信息集合的协商进程,收到的控 制信息可以与就位控制信息(通过使用接收方的VDE装置安全 子系统)集成在一起。例如,在信息内容提供者的VDE装置的 安全子系统中对特定VDE信息内容容器的信息内容控制信息的 修改可以是加入了财务信用提供者提供的所要求的控制信息。所 述信用提供者可能已经使用了他们的VDE装置准备了所述的所 要求的控制信息,并安全地将该信息传送给了所述信息内容提供 者。加入所述的所要求的控制信息使信息内容提供者允许信息内 容最终用户使用信用提供者的信用以偿付该最终用户对受VDE 控制的信息内容和/或设备的使用—只要所述最终用户在所述财 务信用提供者那里有一个信用帐户并且所述信用帐户具有充足 的可用信用。类似地,信息内容提供者也可以安全地接收要求支 付税款和/或提供由电子商业活动产生的收入信息的控制信息。该 控制信息可以(举例来说)从一个政府机构收到。法律可能要求 信息内容提供者将上述控制信息插入到对应于商业分发的信息 内容和/或涉及设备使用的服务的控制信息中。对提议的控制信息 的使用要在由上级控制信息允许的限度内,并且该限度由满足每 一个集合(接收方的集合和被提议的集合)所规定的优先级的任 意协商折衷方案所决定。VDE还适应专门适用于VDE信息内容 处理参与者网络中的不同参与者(如个体参与者和/或参与者类别 (类型))的不同控制方案。

!支持用于同一信息内容所有权和/或所有权部分的、多个并 存的控制模型。这个特性支持(举例来说)依赖于电子商业产品 信息内容分发的并发业务活动,例如获取详细市场调查信息和/ 或支持广告活动,这两种活动都可以增加收入,并给用户带来较 低的信息内容成本而给信息内容提供者带来更高的价值。在控制 信息的决定或允许下,可以采用不同的方式将上述控制信息和/ 或整体控制模型应用到信息内容、汇报、付款和/或相关控制信息 处理路径中的参与者。VDE允许把不同信息内容控制信息应用 到与同一和/或不同信息内容和/或设备使用相关的活动中,并且/ 或者应用到信息内容和/或设备使用模型中的不同参与者,这样以 来,不同的参与者(或(举例来说)VDE用户的类别)将受到 管理他们对电子信息内容的使用的不同控制信息的控制。例如, 基于作为受VDE控制的信息内容对象的分发者的或作为该信息 内容的最终用户的分类的不同控制模型可以产生投入应用的不 同预算。作为另一种选择,(举例来说)一个分发者可以有权(从 (举例来说)某个光盘上提供的公用信息内容集合中)分发与另 一个分发者不同的有产权物集合。与“典型”的信息内容用户相 比,最终用户的个人和/或类别或其他分类可以有不同的花销。(例 如,可对学生、老年公民、与/或信息内容的贫穷公民提供相同或 不同的折扣)

!支持通过从所述最终用户和/或提供者向一个政府机构转 移信用和/或电子货币而由消费者对信息内容和/或设备的使用 中、以及/或者提供者和/或最终用户支付的税款中产生的提供者 收入信息,作为上述被接收信息的结果,将“自动”出现上述转 移过程,该过程导致生成一个其信息内容包括反映了安全的、可 信的收入概要信息和/或详细用户交易记录的消费者信息内容使 用信息的VDE信息内容容器(详细的程度可能取决于(举例来 说)交易的类型或规模—根据法律规定,涉及向消费者支付的银 行利息或大宗(例如超过10000美元)转移的信息可以被自动地 报告给政府)。这种涉及可征税的事件和/或货币的、以及贷方货 币转移的概要和/或详细信息放在一个VDE容器中可以通过汇报 和/或付款路径传递给政府。这种容器还可以用于其他涉及VDE 的信息内容使用汇报信息。

!支持信息内容控制信息沿信息内容控制信息处理的不同 分支流动,以便在本发明的较佳实施例控制下支持对受VDE控 制的信息内容所进行的多样化的、受控制的分发。这允许不同的 参与者以不同的(可能是竞争性的)控制策略使用相同初始电子 信息内容。在这种情况下,一个首先对信息内容设置控制信息的 参与者可以规定某些控制假设,而这些假设将演变成更为专门的 和/或充分的控制假设。这些控制假设可以在分支序列在一旦信息 内容模型参与者提交信息内容控制信息时而发生变化(举例来 说)以便用来与“就位”信息内容控制信息“协商”的过程中演 变。这将产生新的或被修改的信息内容控制信息,并且/或者这将 涉及选择特定的一个或多个已经“就位”的信息内容使用控制方 法,就位的可选方法,以及涉及对相关控制信息参数数据的提 交。应用于相同电子所有权信息内容和/或设备的不同拷贝的不同 控制信息集合的上述形式的演变是VDE控制信息通过整条处理 和控制路径的不同分支向下“流动”,并且在其通过这些不同路 径分支向下分散的过程中受到了不同修改的结果。本发明的上述 支持用于VDE控制信息和VDE管理的信息内容流动的多个路径 分支的功能允许存在这样的电子商业市场,该电子市场支持分散 的、竞争性业务伙伴关系、协定、以及正在演变的整体业务模型, 该业务模型可以使用被合并(举例来说)到代表至少部分地不同 的具有竞争性的产品的信息内容的不同集合中的相同信息内容 特性。

!允许用户通过使用该用户的VDE装置中的安全子系统安 全地抽取包含在VDE信息内容容器中的至少一部分信息内容, 以便产生一个新的、安全的对象(信息内容容器),这样,被抽 取的信息在整个抽取进程中维护于一种始终安全的方式中。包含 上述被抽取信息内容的新VDE容器的形成应该产生与源VDE信 息内容容器的和/或适当的本地VDE装置安全子系统的控制信息 相一致的或由上述控制信息所规定的控制信息。诸如至少部分地 从父(源)对象的控制信息导出的安全性或管理信息之类的相关 控制信息通常将被自动地插入到含有被抽取出来的VDE信息内 容的一个新VDE信息内容容器对象中。该进程的发生通常受到 父对象的控制框架和/或执行于用户VDE装置安全子系统中的 VDE装置控制信息的控制(同时(举例来说)上述被插入控制 信息的至少一部分被安全地以加密形式存放在一个或多个许可 记录中)。在一个可选实施例中,应用于被抽取信息内容的导出 的信息内容控制信息可以部分地或全部地从存放在远离执行上 述安全抽取过程的VDE装置的地方的—例如存放在一个远程服 务器地点中的—信息内容控制信息中导出或采用该控制信息。对 于用于大多数VDE管理的信息内容的信息内容控制信息来说, 本发明的特性允许该信息内容的控制信息:

    (a)“演变”,例如信息内容的抽取者可以在信息内容

的就位控制信息允许的限度内添加新控制方法和/或修改控

制参数数据—例如依从VDE应用的方法。所述的新控制信息

可能规定(举例来说):谁可以使用上述新对象的至少一部

分,以及/或者如何使用所述被抽取信息内容的所述至少一部

分(例如,何时可以使用所述的至少一部分,或者可以使用

哪一部分或多少部分);

    (b)允许用户把诸如抽取者创作的材料和/或从一个或  

多个其他VDE容器对象中抽取出来的信息内容(例如图像、

视频、声音和/或正文)之类的另外的信息内容与所述被抽取

信息内容的至少一部分合并起来,供直接放入新容器中;

    (c)允许用户安全地编辑所述信息内容的至少一部分,

同时将所述信息内容以安全形式维护于所述信息内容容器

中。

    (d)将被抽取的信息内容添加进一个已存在的VDE信

息内容容器对象中,并加上相关的控制信息—在上述情况

下,用户添加的信息可以受到安全保护,例如被部分地或整

体地加密,并且可以受到不同于施加到以前就位对象信息内

容的使用和/或审核控制信息的控制。

    (e)在对被抽取对象的一个或多个部分进行了各种形式

的使用之后,保留了对所述部分的VDE控制,例如,以安全

存贮的形式维护信息内容同时允许在屏幕上“暂时”显示信

息内容,或者允许以安全的形式维护软件程序,但是暂时地

解密所述程序的任何被加密的执行部分(所述程序的全部或

仅仅一部分可被加密以便保护该程序)。

通常,本发明的抽取特性允许用户聚合和/或传播和/或使用 从信息内容容器源中抽取出来的、被保护的电子信息内容,同时 维护安全的VDE功能,从而保护了经过各种信息内容使用进程 之后提供者在所述信息内容信息中的权利。

!支持VDE控制的信息内容的部分的聚合,这些部分受到 不同的VDE信息内容容器控制信息的控制,其中,各个所述的 信息内容可以已经被独立的、不同的信息内容提供者从远离执行 上述聚合的用户的一个或多个不同的地点提供出来。在本发明的 较佳实施例中,上述聚合可以涉及对于各个所述部分的每一部分 都保留控制信息(如诸如加载模块之类的可执行码)的至少一部 分,例如,将某些或全部的上述部分作为VDE信息内容容器对 象独立地嵌入到整体VDE信息内容容器中,或将某些或全部的 上述部分直接嵌入到一个VDE信息内容容器中。在后一种情况 下,所述信息内容容器的信息内容控制信息可以(根据所述部分 在聚合之前的原始控制信息要求)向各个上述部分施加不同的控 制信息集合。每个上述嵌入的VDE信息内容容器都可以带有采 用一个或多个许可记录形式的自身控制信息。作为另一种选择, 与电子信息内容的各种聚合部分相关的控制信息之间的协商可 以产生控制某些或所有上述聚合信息内容部分的控制信息集 合。由该协商产生的VDE信息内容控制信息可以是统一的(例 如带有同样的加载模块和/或部件组),并且/或者它可以将不同 的上述信息内容控制信息施加到构成了VDE控制的信息内容的 聚合的两个或多个部分,这些控制信息的例子有:不同的计量、 预算、计帐、和/或付款模型等。例如,可以通过票据交换所自动 为信息内容的使用付款,或者可以为不同的部分直接向不同的信 息内容提供者付款。

!允许对电子信息内容和/或电子设备的使用进行灵活的计 量,或者对有关上述使用的信息的其他收集。本发明的一个特性 使得上述计量控制机制灵活性支持并存的、范围广泛的:(a)有 关电子信息内容使用的不同参数;(b)该电子信息内容的不同增 量单位(字节、文件、特性、段落、图像、等等)和/或其他组织; 以及/或者(c)用户和/或VDE装置类型的不同类别,例如客户组 织、部门、项目、网络、和/或单独用户。本发明的该特性可以用 于信息内容安全性、使用分析(例如市场调查)、和/或基于对 VDE管理的信息内容的使用和/或暴露的付款。该计量是一个用 于确保对信息内容版税、许可使用、购买、和/或广告进行付款的 灵活基础。本发明的一个特性提供了支持灵活的电子货币和信用 机制的付款手段,包括安全地维护反映涉及对该货币或信用的使 用的审核跟踪的能力。VDE支持客户组织控制信息的多个不同 层次,其中,组织的客户管理员分发规定了部门、用户和/或项目 的使用权利的控制信息。类似地,一个部门(分部)网络经理可 以对部门网络、项目和/或用户等起分发者(分发预算、访问权利 等)的作用。

!提供用于范围从廉价的消耗装置(例如电视机顶置设备) 和专业设备(以及掌上型PDA)到服务器、主机、通信交换机 等的电子设备的、可伸缩的、可集成的、标准化的控制装置。本 发明的上述可伸缩的交易管理和/或审核技术将产生在电子商业 和/或数据安全性环境中起作用的各电子设备之间的更有效和更 可靠的互相协作性。对于在世界范围内发送实际商品而言,标准 化的实际容器已经是必不可少的了,它允许这些实际容器普遍地 与卸载设备相“吻合”、有效地利用卡车和火车的空间、并以有 效的方式容纳已知的物体组(例如箱子),于是,正如本发明所 提供的那样,VDE电子信息内容容器可以在世界范围内有效地 移动电子信息内容(例如商业发行的所有物、电子货币和信用以 及信息内容审核信息)以及相关的信息内容控制信息。对于有效 的电子商业来说,互相协作性是基础。VDE基础、VDE加载模 块、和VDE容器的设计是允许VDE节点操作环境与范围广泛的 电子设备之间兼容的重要特性。(举例来说)基于加载模块的控 制方法既能在诸如带有极少量读/写存贮器的环境之类的、非常 “小”的并且廉价的安全子系统环境中执行同时也能在可能用于 更昂贵的电子设备中的大容量存贮器安全子系统中执行的能力 支持跨越许多机器的一致性。这种一致的VDE操作环境—包括 其控制结构和容器体系结构—允许在范围广泛的设备类型和宿 主操作环境中使用标准化VDE信息内容容器。由于VDE功能可 以作为扩展、补充和/或修改而被无缝地集成至电子设备和宿主操 作系统的基本功能,因此,VDE容器、信息内容控制信息、以 及VDE基础将可以与许多设备类型一道工作,同时这些设备类 型将可以一致地和有效地解释和加强VDE控制信息。通过上述 集成,用户也可以从与VDE许多功能的透明交互作用中得到好 处。与运行于宿主电子设备中的软件进行的VDE集成支持多种 功能,如果不进行该集成这些功能将得不到或较不安全。通过与 一个或多个设备应用和/或设备操作环境集成,本发明的许多功能 都可以作为给定电子设备、操作系统、或设备应用的内在功能被 提供出来。例如,本发明的特性包括:(a)部分地扩展和/或修改 宿主操作系统使之具有诸如支持安全交易处理和电子信息存贮 之类的VDE功能的VDE系统软件;(b)部分地代表与VDE操 作相关联的工具的一个或多个应用程序;以及/或者(c)要集成到 应用程序中的代码,其中,该代码将引用加入到VDE系统软件 中以集成VDE功能并使该应用成为VDE感知型应用(例如:字 处理器、数据库检索应用、电子表格、多媒体展示创作工具、电 影编辑软件、诸如MIDI应用之类的音乐编辑软件、诸如与 CAD/CAM环境以及NCM软件等相关联的控制系统之类的机器 人学控制系统、电子邮件系统、电话会议系统、以及包括上述的 组合的其他数据创作、创建、处理、和/或使用应用)。上述的(也 可以实现于固件或硬件中的)一个或多个特性可以结合诸如微控 制器、微处理器、其他CPU或其他数字处理逻辑之类的VDE节 点安全硬件处理功能一起使用。

!使用审核协调和使用模式评估进程。这些进程通过某些通 常基于网络的交易处理协调和阈值检查活动来评估是否发生了 VDE系统的安全性的某种破坏。这些进程在VDE控制的信息内 容的最终用户VDE地点的远方通过评估(举例来说)给定VDE 装置购买和/或请求得到电子所有物的活动而执行。用于该协调活 动的应用包括评估远程交付的VDE控制的信息内容的数量是否 对应于用于对该信息内容的使用的财务信用和/或电子货币的数 量。一个信托组织可以从信息内容提供者那里获取与提供给一个 给定VDE装置和/或用户的信息内容的价格相关的信息,并将该 信息内容价格与所述装置和/或用户的信用和/或电子货币付款相 比较。被交付信息内容的数量与付款的数量之间不一致可以证明 和/或表明(根据情况的不同)本地的VDE装置是否已经至少在 某种程度上受到了破坏(例如某些重要的系统安全性功能,比如 通过解开一个或多个密钥而破解了至少对安全子系统的和/或 VDE控制的信息内容的一部分的加密)。判断是否出现信息内 容使用的异常模式(例如不同寻常的大量要求)、或者一个或多 个VDE装置和/或用户(例如其使用活动的聚合模式值得怀疑的 相关的用户组)在特定的时间段内要求向他们传送某些类型的 VDE控制信息在判断是否上述一个或多个装置的安全性受到了 破坏,并且/或者由上述的一个或多个用户破坏等方面也可以是有 用的,特别是结合评估由一个或多个VDE用户和/或装置的某些 和/或所有其电子信用和/或货币提供者提供给这些用户和/或装 置的电子信用和/或货币与由这些用户和/或装置提交的付款相比 的结果一起使用上述判断过程将更为有用。

!支持实际增加了“破坏”系统安全性所需时间的安全技 术。这包括使用一批将由破坏本发明的安全性特性的某些方面而 引起的危害降至最低的技术。

!提供了构成了本发明的可信的/安全的、普遍的、分布式的 交易控制和管理系统的部件的一系列创作、管理、汇报、付款、 和计帐工具用户应用。这些部件支持与VDE相关的:对象创建 (包括为信息内容设置控制信息)、安全对象分发和管理(包括 分发控制信息、与财务相关的和其他使用分析)、客户内部VDE 活动管理和控制、安全性管理、用户接口、付款、以及与票据交 换所有关的功能。这些部件被设计为支持高度安全的、统一的、 一致的、和标准化的:处理、汇报、和/或付款的电子商业和/或 数据安全性路径、信息内容控制和管理、以及人的因素(例如用 户接口)。

!支持大量票据交换所的操作—包括财务和用户票据交换 所活动,例如由大组织中的客户管理员为帮助该组织对VDE配 置的使用而执行的活动,所述的活动包括使用信息分析、以及对 雇员个人或组的VDE活动的控制,例如规定在VDE控制下对客 户人员的某些组和/或个人可用的预算和使用权利特性,而这要受 到由客户管理员提交的控制信息的控制信息系列的控制。在票据 交换所中,一个或多个VDE装置可以与可信的分布式数据库环 境(该分布式数据库环境可包括并发数据库处理装置)一起操 作。财务票据交换所通常在其所处位置接收安全传递的信息内容 使用信息、以及用户请求(诸如对另外的信用、电子货币和/或更 高信用限额的要求)。使用信息的汇报和用户请求可以用于支持 与电子货币、计帐、付款和信用有关的活动、以及/或者用户轮廓 分析和/或更广泛的市场调查分析和销售(综合的)报告的产生, 或其他至少部分地从所述使用信息中导出的信息。可以通过到 VDE装置安全子系统的安全的、经过鉴别的加密通信将上述信息 提供给信息内容提供者或其他方面。票据交换所处理装置通常连 接到专用的I/O装置,该专用I/O装置具有可用于票据交换所 与其他的路径参与者之间的安全通信的高速远程通信交换装 置。

!安全地支持VDE装置上和VDE装置之间的电子货币和信 用使用控制、存贮、和传送。VDE进一步支持包括(例如采用 电子货币或信用形式的)付款代价券以及其他付款信息在内的电 子货币和/或信用信息通过付款路径的自动化传递,所述的路径可 以是也可以不是与信息内容使用信息汇报路径相同的路径。该付 款可以被放入一个由VDE装置为响应规定按照使用VDE控制的 电子信息和/或设备而产生的应付款项数额从电子信用或货币帐 户中“提取”信用或电子货币的控制信息而自动创建的VDE容 器中。然后付款信用或货币可自动地以被保护(至少被部分地加 密)的形式通过一个VDE容器的电信而被传送到诸如票据交换 所、原始所有的信息内容或设备的提供者、或该提供者的一个代 理(而不是一个票据交换所)之类的一个适当参与者。付款信息 可以与也可以不与诸如计量信息之类的相关信息内容使用信息 一起包装在所述VDE信息内容容器中。本发明的一个方面还允 许将涉及货币使用的某些信息规定为对特定、某些或所有VDE 参与者不可得到的(从“有条件”到完全匿名的货币),并且/ 或者还可以控制诸如涉及货币和/或信用使用的信息(以及/或者 其他电子信息使用数据)之类的某些信息内容信息只在某些严格 的条件下才可以被得到,所述条件的一个例子是法庭传票(其本 身可以通过使用由法庭控制的VDE装置要求得到授权,这种装 置可能被要求“有条件”地安全访问匿名信息)。在本发明的较 佳实施例下,货币和信用信息被当作管理内容对待。

!支持向信息内容中嵌入指纹(也称为水印),这样当受本 发明保护的信息内容被以明文的方式从VDE对象中发布出来 (显示、打印、传送、抽取和/或保存)的时候,表示负责将信息 内容转换成明文形式的用户和/或VDE装置的标识信息被嵌入到 发布出的信息内容中。指纹的有用性在于它提供一种能力用于识 别谁从VDE容器中以明文方式抽取信息,或谁制作了VDE对象 的或其信息内容的一部分的拷贝。由于用户的身份和/或其他标识 信息可以以一种模糊的或通常为隐藏的方式被嵌入到VDE容器 信息内容和/或控制信息中,这样可以阻碍潜在的版权侵犯者进行 未授权的抽取或拷贝活动。指纹通常被嵌入到未加密的电子信息 内容或控制信息中,尽管它也可以先被嵌入加密的信息内容中, 以后当携带该指纹信息的加密的信息内容在安全VDE装置子系 统中被解密的时候,再被嵌入到未加密的信息内容中。当诸如 VDE容器中的信息内容之类的电子信息离开一个网络(如 Internet)地点而准备到达某个接收方的时候,可以向该电子信 息中加入指纹。该存放库中的信息在被传送之前可以被维护于未 加密的形式,而在其离开该存放库时则被加密。加入指纹的过程 最好在信息内容离开存放库的时候但在加密步骤之前发生。可以 在一个安全VDE子系统中解密被加密的存放库信息内容、插入 指纹信息、然后再加密信息内容,以便进行传送。在信息内容离 开(举例来说)某个Internet存放库时,将预期的接收方用户和 /或VDE装置的标识信息嵌入到信息内容中,将提供可识别或帮 助识别任何设法破坏VDE装置或被传递信息内容的安全性的参 与者的重要信息。如果一个参与者制作了经授权的、明文形式的 VDE控制的信息内容的拷贝—包括制作了经授权的明文形式拷 贝的未授权拷贝,指纹信息将反向地指明那个制作拷贝的个人和 /或他或她的VDE装置。该隐蔽信息将充当一个强有力的阻碍措 施以阻止大部分潜在信息内容“盗版者”窃取其他参与者的电子 信息。可以在解密、复制VDE信息内容对象、或向接收方传送 该对象之前、或者在上述活动的过程中将标识接收方和/或VDE 装置的指纹信息嵌入到VDE对象中。在加密电子信息内容以便 传送给消费者或其他用户之前向该电子信息内容中加入指纹可 以提供对于识别谁收到了某些可能已经以未加密形式分发出去 或使之对外可用的信息内容十分有用的信息。在跟踪谁可能已经 “破坏了”VDE装置的安全性并且正在非法向他人提供某些电 子信息内容方面,上述信息将是具有价值的。指纹还可以提供其 他的、诸如所述信息内容信息的发布(例如抽取)时间和/或日期 之类的可用信息。插入指纹的位置可以由VDE装置和/或信息内 容容器控制信息规定。该信息可以规定所有物中诸如信息和/或信 息类型的一个或多个特定字段之类的特定区域和/或精确位置应 该用来加入指纹。可以通过以一般不可被检测的方式修改某些图 像像素颜色频率和/或亮度、通过稍微地修改某些声音信号的频 率、通过修改字体特性构成信息等等将指纹信息加入到所有物 中。指纹信息本身应该被加密,这样,将受到破坏的指纹解释为 有效的将变得异常困难。对于同一所有物的不同拷贝加入不同位 置的指纹;“虚假”指纹信息;以及特定所有物或其他信息内容 中的、使用了诸如信息分布模式、频率和/或亮度操纵、以及涉及 加密的技术的不同指纹技术的指纹信息多个拷贝,是本发明的特 性,这些特性用于提高未授权的个人识别指纹位置以及擦除和/ 或修改指纹信息的难度。

!提供可以携带请求、数据和/或方法—包括预算、授权、信 用或货币、以及信息内容—的智能对象代理。例如,智能对象可 以移至和/或移自远程信息资源地点并执行对电子信息内容的请 求。智能对象可以(举例来说)被提交给一个远程地点以代表某 个用户执行一个特定数据库搜索,或“智能地”搜索一个或多个 信息存放库以查找用户所需的信息。当智能对象通过(举例来 说)执行一个或多个数据库搜索在一个或多个远程地点识别出所 需的信息后,带有检索出的信息的智能对象可以通过向用户的通 信以安全“返回对象”的形式返回给用户。可以为信息的远程检 索、信息向用户VDE装置的返回、以及/或者对上述信息的使用 向用户收取费用。在后一种情况下,可以只对用户实际使用的返 回对象中的信息向用户收费。智能对象可以具有请求使用一个或 多个服务和/或资源的装置。服务包括定位诸如信息资源、语言或 格式翻译、处理、信用(或额外信用)授权等之类的其他服务和 /或资源。资源包括参考资料数据库、网络、超级或专用计算资源 (智能对象可以携带信息到达另一台计算机,使该信息受到高效 地处理,然后将信息返回给发送方VDE装置)、远程对象存放 库、等等。智能对象可以有效地使用远程资源(例如集中式数据 库、超级计算机等等),同时提供用于根据实际使用的信息和/ 或资源向用户收费的安全装置。

!支持将VDE电子协定元素“翻译”成用现代语言书面表 达的协定元素(例如英语协定),以及将电子权利保护/交易管理 现代语言协定元素翻译成电子VDE协定元素。该特性要求维护 一个对应于VDE加载模块和/或方法和/或部件组的正文语言 库。当一个VDE方法被提议出来和/或被用于VDE协定的时候, 一个VDE用户应用将产生正文条款和条件的一个列表,在较佳 实施例中,所述VDE用户应用提供已经经过保存并对应于所述 方法和/或部件组的短语、句子和/或段落。该特性最好使用人工 智能技术以分析并自动确定和/或帮助一个或多个用户确定对应 于被选择的方法和/或部件组的库元素之间的正确顺序和关系,以 便组成法律的或说明性文件的某些或所有部分。一个或多个用 户,以及/或者最好是某个律师(如果上述文件是一个法律的约束 协定)将在上述过程产生的文件材料一旦生成完毕后审阅该文件 材料,并使用和/或编辑描述该协定中的非电子交易元素所必要的 上述附加的正文信息,同时进行其他可能必要的改进。这些特性 进一步支持使用允许一个或多个用户从多个选项中作出选择和 回答问题、并从该进程中生成一个VDE电子协定的现代语言工 具。该进程可以是交互式的,并且VDE协定组成进程可以使用 人工智能专家系统技术—所述的人工智能专家系统技术从应答 中学习,并在合适的时候或至少部分地根据所述应答,产生进一 步的选项和/或问题。于是,上述技术“逐渐形成”所需的VDE 电子协定。

!支持在单个VDE装置中使用多个VDE安全子系统。通过 在单个VDE装置中采用分布式VDE设计可以实现安全性和/或 性能上的多种优点。例如,将一个基于硬件的VDE安全子系统 设计到电子设备VDE显示设备中,以及设计所述子系统与所述 显示设备的集成以便该子系统尽可能地接近该显示设备,将提高 图像资料的安全性,因为基于上述设计,当被解密的图像信息从 图像系统外部移到内部时,要“窃取”该信息将变得实际更加困 难。最好,(举例来说)VDE安全硬件模块与实际显示器处于 同一物理包装中,例如位于视频监视器或其他显示设备的包装 中,同时,可以在商业可行的限度内将该设备设计为具有合理的 防破坏性。作为另一个例子,从整个系统吞吐量的角度来看,将 一个VDE硬件模块嵌入到一个I/O外围设备中可具有某些优 点。如果在同一VDE装置中使用多个VDE实例,这些实例将在 可行的限度内理想地共享资源,例如VDE实例将某些控制信息 和信息内容和/或设备使用信息存放在同一大容量存贮设备中以 及同一VDE管理数据库中。

!通过利用预算的耗尽和密钥的时间衰老而要求汇报和付 款按规定进行。例如,一个VDE商业配置以及相关的信息内容 控制信息可以涉及信息内容提供者的信息内容以及对用来支付 最终用户对所述信息内容的使用费的票据交换所信用的使用。涉 及该配置的控制信息可以被传递到(所述信息内容的)用户的 VDE装置和/或所述财务票据交换所的VDE装置。所述控制信息 可能要求所述票据交换所准备好并传递给所述信息内容提供者 某种形式的基于信息内容使用的信息以及以电子信用(提供者收 到该信用之后可以“拥有”该信用,并使用该信用以代替可用的 或足够的电子货币)和/或电子货币的形式的信息内容使用费用。 信息和付款的上述传递过程可以使用可信的VDE装置安全子系 统,以安全地并且在某些实施例中自动地、以所述控制信息规定 的方式提供所述的使用信息和付款信息内容。本发明的特性有助 于确保要求票据交换所汇报上述使用信息和付款信息内容的请 求必须得到遵守。例如,如果参与VDE电子协定的某个参与者 没有遵守上述信息汇报和/或付款义务,另一个参与者可以禁止该 违法方成功参与涉及该协定的VDE活动。如果所要求的使用信 息和付款没有按照信息内容控制信息的规定被汇报出来,那么 “受到侵害”方可以通过不再安全地从其VDE装置安全子系统 向外传送信息而不提供继续一个或多个关键进程所必需的安全 信息的一个或多个部分。例如,一个票据交换所没有向信息内容 提供者汇报信息和/或付款(以及任何安全性故障或其他干扰性异 常)将会使信息内容提供者不向该票据交换所提供密钥和/或预算 更新信息,而这些信息对于授权使用票据交换所的信用以便使用 提供者的信息内容来说可以是必要的,而且该票据交换所在票据 交换所和最终用户之间的信息内容使用汇报通信过程中需要将 上述信息传递给最终用户。再举另一个例子,一个没有向信息内 容提供者提供付款和/或汇报使用信息的分发者可能会发现:其用 来创建向用户分发信息内容提供者的信息内容所用的许可记录 的预算,以及/或者限制这些用户对提供者信息内容的使用的一个 或多个其他方面的安全预算,在一旦用尽后或过期(例如在某一 预定日期)后没有得到信息内容提供者的更新。在这些或其他情 况下,受到侵害的团体可能决定不更新已经“过期”的时间衰老 密钥。对时间衰老密钥的上述使用具有不更新预算或时间衰老的 授权的类似作用。

!支持本发明的智能卡实现,例如以包括用作安全信用、银 行业务、和/或货币卡的卡片在内的便携式电子设备的形式。本发 明的一个特征是将便携式VDE用作零售或其他机构的交易卡, 其中,所述的卡可以与带有VDE安全子系统的和/或与诸如“可 信”财务票据交换所(如VISA、MasterCard)之类的一个VDE 安全和/或安全和兼容子系统之间具有联机连接的机构终端进行 对接。VDE卡和终端(和/或联机连接)可以安全地交换有关某 个交易的信息,同时信用和/或电子货币被转移到销售商和/或票 据交换所,而交易信息则流回该卡。这种卡可以用于所有类型的 交易活动。诸如PCMCIA连接器或象个人计算机那样的某个电 子设备之类的对接站可以在家接纳消费者的VDE卡。可以采用 与永久地安装在上述电子设备中的VDE装置相同的方式将上述 的站/卡组合用到联机交易中。该卡可以用作一个“电子钱包”, 并含有票据交换所提供的电子货币以及信用。该卡可以用作消费 者涉及销售商、银行业务、以及联机财务交易的财务活动的会聚 点,包括支持家庭银行业务活动。消费者可以通过联机交易接收 工资/或投资回报和/或“真实”的、VDE信息内容容器保护的、 有关这些接收的详细信息。用户可以向VDE配置中另一个参与 者发送数字货币,包括分送该货币。VDE卡可以以高度安全的 和按照数据库组织的方式保存交易的详细信息,这样,有关财务 的信息被聚集在一起,并且可以十分容易地被检索出来和/或分 析。由于VDE的安全性,包括对有效的加密、鉴别、数字签名、 以及安全数据库结构的应用,保存在VDE卡配置中的记录可以 作为有效的交易记录为政府和/或公司的簿记要求所接收。在本发 明的某些实施例中,VDE卡可以使用对接站和/或电子设备存贮 装置,并且/或者共享处于所述设备的本地的和/或可以通过网络 使用的其他VDE系统的装置,以便通过(举例来说)存贮过时 的和/或存档的备份信息来增加VDE卡的信息存贮容量。根据安 全地存放在所述VDE卡中并可提供使用的“真实”信息,可以 自动地计算出涉及个人的某些或所有财务活动的税款。所述信息 可以存放在所述卡中、所述对接站中、相关电子设备中、以及/ 或者被有效连接上的其他设备中、以及/或者远程地存放—例如存 放在一个远程服务器站点中。诸如交易历史之类的卡上的数据可 以被备份到个人的个人计算机中或其他电子设备中,而该设备可 以带有其自身的、集成的VDE装置。在每次或定期地将卡与站 对接以便进行某个财务交易和/或进行诸如用户/销售商交易之类 的信息通信时,当前的交易、最近的交易(为冗余的目的)、或 者所有的或其他被选择出来的卡上数据可以被备份到诸如财务 票据交换所中的与VDE兼容的存放库之类远程的备份存放库 中。在与另一个参与者的VDE装置(例如一个也处于某个财务 或通用电子网络中的VDE装置)连接的过程中通过将交易信息 通知远程的票据交换所和/或银行而备份至少当前交易,可以确保 进行了足够的备份,以便在卡失效或丢失的情况下支持VDE卡 内部信息的完全重建。

!支持具有下列特征的验证进程,该验证过程确保各种VDE 装置之间的、经过授权的互相协作性,以便防止在规范协议方面 与其他VDE系统和/或装置存在不可接受的偏差的VDE配置和/ 或装置以可能引入安全性(VDE保护的信息的完整性和/或机密 性)、进程控制、和/或软件兼容性等方面产生问题的方式进行互 相协作。验证过程确认VDE装置和/或其部件的、以及VDE用 户的身份。验证数据还可以充当有助于确定涉及VDE站点的退 出或其他变化的信息。

!通过使用基于事件(触发)的方法控制机制支持基本交易 控制进程的分离。这些事件方法触发一个或多个其他VDE方法 (这些方法对VDE安全子系统可用),并用来执行VDE管理的、 与交易有关的处理。上述被触发的方法包括可独立地(分别地) 和安全地处理的部件计帐管理方法、预算管理方法、计量管理方 法、以及相关的预算管理进程。作为本发明的上述特性的、以及 对计量、审核、计帐、和预算方法的独立触发的结果,本发明能 够有效地、并发地支持多种金融货币(如美元、克、日元)、 以及有关信息内容的预算和/或计帐增量,以及非常灵活的信息内 容分发模型。

!支持对涉及(1)信息内容事件触发、(2)审核、(3)预算(包 括规定没有使用权或无限的使用权)、(4)计帐、以及(5)用户 身份(VDE装置、客户名字、部门、网络、以及或者用户等) 的控制结构的完全的、模块化的分离。这些VDE控制结构的独 立性提供了一个灵活的系统,允许两个或多个上述结构之间存在 多重关系,例如能够使一个财务预算与不同的事件触发结构相关 联(这些结构被放在适当的地方以允许根据信息内容的逻辑部分 对控制信息内容进行控制)。如果在这些基本VDE功能之间没

有上述分离,那么下列活动的操作将会变得困难得多:即有效地

维护对于计量、计帐、预算和用户标识涉及了同样的、不同的(包

括重叠的)、或完全不同的信息内容部分的、分离的计量、预算、

标识、和/或计帐活动,例如,支付与信息内容使用相关联的费用、

开展家庭银行业务、管理广告服务等等。上述基本功能的VDE

模块化分离支持对一个或不同信息内容部分(和/或部分单位)与

预算、审核和/或计量控制信息之间的大量的、“任意”的关系的

编程。例如,在VDE控制下,对于对某一数据库的解密,根据

用户选择的货币,可以强制实施每月200美元或300德国马克的

预算限制,并且对于所述被解密数据库中的每一个记录可收费2

美元或3德国马克。可以计量上述使用,同时,可以准备用于用

户轮廓用途的另外的审核,该审核记录每一提交的显示出的标

识。另外,还可以进行涉及所述数据库被解密的字节数目的进一

步的计量,并且相关安全性预算可防止每年解密的字节数超过所

述数据库字节总数的5%。用户也可以在VDE控制下(如果经过

上级控制信息允许的话)收集反映了不同个人和客户组织部门对

数据库字段的使用的审核信息,并确保不同的访问权利和限制数

据库使用的不同预算可以被应用到这些客户个人和群体。允许信

息内容提供者和用户实际地使用用户标识、计量、预算和计帐控

制信息的上述多种集合部分地归因于使用上述的独立控制功

能。于是,VDE可以支持在创建应用于同一电子所有权的大量

控制模型、以及应用于不同的或完全不同的信息内容模型的相同

的和/或大量的控制模型的过程(例如家庭银行业务对于电子购

物)中的高度可配置性。

方法、其他控制信息、以及VDE对象

一起控制对VDE管理的所有权(数据库、文件、独立商业产品) 的使用的VDE控制信息(如方法)或者(例如在信息内容容器中)与 信息内容本身一起发送,并且/或者上述控制信息的一个或多个部分可 以在可独立传递的“管理对象”中发送给分发者和/或其他用户。可以 部分地将所有权的方法的一个子集与各个所有权一起传递,同时可以将 方法的一个或多个其他子集独立地传递给用户,或者使之可用(例如可 以通过远程通信手段远程地得到上述方法的子集)。如果要使用VDE 控制的信息内容(例如放在一个VDE信息内容容器中分发出去的知识 产权产品),那么必须按照要求使必要方法(被说明为所有权和/或设 备使用所需要的方法)可用。控制信息内容的方法可以应用于大量的 VDE容器对象—例如这些对象的某个类别或其他分类。某些用户或用 户类别和/或VDE装置和/或装置类别也可以要求得到方法以便使用一 个或多个特定的或种类的对象。

本发明提供的VDE的一个特征是:特定的一个或多个方法可以被 规定为必要的,以便某个VDE装置和/或用户可以使用某个和/或所有 信息内容。例如,“上级”参与者(例如信息内容制作者)可以允许某 种类型的信息内容的分发者要求得到某个禁止最终用户电子地保存被 解密的信息内容的方法,VDE交易的信用的提供者可以要求得到一个 记录电子购买次数的审核方法,并且/或者用户可以要求得到一个总结 使用信息(如计帐信息)以便将这些信息以一种不传送涉及详细使用行 为的机密的个人信息的方式汇报给票据交换所的方法。

本发明提供的VDE的另一个特征是:信息内容的制作者、分发者 和用户可以从预定义的方法集合(如果可得到的话)中进行选择,以便 控制容器信息内容的使用和分发功能,并且/或者他们可以有权提供新 的、定制的方法以控制至少某些使用功能(对于VDE装置和/或一组 VDE应用的可信度和互相协作性,可以要求对上述的“新”方法进行 验证)。于是,就如何控制对每个所有权或对象(或所希望的和/或适 用的的对象或所有权的一个或多个部分)的分发和其他使用活动而言, VDE提供了程度极高的可配置性。信息内容控制信息VDE路径中的每 个VDE参与者都可以为VDE容器中的某些或所有信息内容设定方 法,只要该控制信息没有与已经就位的上级控制信息在下列方面冲突, 即:

(1)某些或所有的VDE管理的信息内容,

(2)特定的一个或多个VDE用户和/或用户组别,

(3)特定的一个或多个VDE节点和/或节点组别,以及/或者

(4)特定的一个或多个VDE应用和/或配置。

例如,信息内容制作者的特定信息内容的VDE控制信息可以优先 于其它被提交的VDE参与者控制信息,并且(举例来说)如果上级控 制信息允许的话,信息内容分发者的控制信息本身可以优先于客户管理 员的控制信息,而客户管理员的控制信息可以优先于最终用户的控制信 息。在一条路径上的分发参与者设置上述电子信息内容控制信息的能力 可以被限制到特定控制信息(如协调诸如定价和/或销售日期之类的数 据的方法)的范围内,或者这种能力可以仅被限制到参与者提议的一个 或多个控制信息与所有权处理链中的参与者以前提交的、或在所述参与 者的VDE安全子系统中管理的上级控制信息所设置的控制信息相冲突 的限度内。

VDE控制信息可以部分地或全部地(a)代表由VDE信息内容控 制信息路径参与者直接放置就位的控制信息,和/或(b)含有被上述的 参与者代表某个不直接处理电子信息内容(或电子设备)许可记录信息 的参与者放置就位的控制信息(例如由一个参与者代表一个财务票据交 换所或政府机构插入的控制信息)。这些控制信息方法(和/或加载模 块、和/或协调数据、和/或部件组)也可以被采用电子方式自动化的、 或半自动化的和由人协助的控制信息(控制集合)协商进程放置就位, 所述的协商过程判断对被提交控制信息的一个或多个部分的使用是否 将被集成进或将替代已存在的控制信息(以及/或者根据与就位控制信 息的交互作用在可选的控制信息之间进行选择)以及这些控制信息如何 被使用。

控制信息可以由一个不直接参与对电子信息内容(和/或设备)和/ 或该信息内容(和/或设备)的控制信息的处理的团体提供。可以使用 在上述不直接参与的一个或多个团体的VDE装置安全子系统与处于一 条路径中的VDE信息内容控制信息参与者的VDE装置安全子系统之 间的、由VDE装置安全子系统管理的通信(包括(举例来说)对至少 部分地加密的控制信息的传送者进行鉴别)将上述控制信息以安全的形 式提供出来。该控制信息可以涉及(举例来说):对财务服务提供者提 供的信用的访问权、对由政府机构制定的条例或法律的强制执行、消费 者对VDE管理的信息内容的使用信息(反映一个或多个参与者而不是 该消费者对信息内容的使用)的要求—该使用信息涉及该消费者收到的 使用信息的创建、处理、和/或汇报方式。上述控制信息可以(举例来 说)强制执行诸如涉及电子商业的法律等社会要求。

VDE信息内容控制信息可以不同地施加到不同路径的信息内容和/ 或控制信息处理参与者。而且,如果经过允许的话,VDE参与者可以 增添、改动和/或删除许可记录权利。VDE参与者的权利定义可以与涉 及信息内容和/或信息内容控制信息(如许可记录)处理链中的特定参 与者和/或参与者类别和/或其他参与者类别相关。给定的一个或多个合 格参与者对控制信息的修改可以在他们可作修改的数目和/或程度上受 到限制。

制作者、分发者、作者、票据交换所、客户管理员、和最终用户(要 认识到:两个或多个的上述类别可以描述单个用户)的电子设备中的至 少一个安全子系统为预期的应用提供了“充分”安全的环境,用来:

1.解密所有物和控制信息;

2.存贮与控制和计量相关的信息;

3.管理通信;

4.处理构成电子信息内容和/或设备权利保护的控制信息的核心控 制程序以及相关数据,包括强制执行VDE参与者的优选和要求。

通常,大多数使用、审核、汇报、付款、以及分发控制方法本身至 少部分地被VDE装置的安全子系统加密和执行。这样(举例来说)可 以在安全子系统中安全地生成和更新计帐和计量记录,并安全地使用加 密和解密密钥。由于VDE在VDE配置中的参与者地点(节点)安全 子系统之间传递信息时还使用了安全(如经过加密的和鉴别的)的通 信,因而VDE电子协定的重要组成部分可以得到针对所期望商业目的 的(充分可信的)充分安全性的可靠强制执行。针对某个价值链的VDE 电子协定可以至少部分地由价值链参与者一个或多个子集之间的一个 或多个子协定构成。这些子协定由一个或多个确保了VDE参与者的权 利保护的电子合同“依从”元素(包括相关参数数据的方法)构成。

VDE配置的可信度主要取决于参与者地点的安全子系统中是否使 用了硬件SPU以及SPU硬件安全性体系结构的有效性、当采用软件仿 真SPU时的软件安全性技术、以及用于保护信息内容、控制信息、通 信、和对VDE节点(VDE装置)安全子系统的访问的加密算法和密 钥。在某些节点中可以使用物理设施和用户身份鉴别安全性过程代替硬 件SPU,这种节点的一个例子是某个已建成的财务票据交换所,在该 票据交换所中,所述的过程可以对与用户节点处使用了硬件SPU的 VDE系统之间可信的互相协作性提供充分的安全性。

为了支持新的或经过修改的控制信息而在VDE系统的每个节点中 进行的对所有权管理文件的更新执行于VDE安全子系统中,并受到由 被保护的子系统执行的安全管理文件更新程序的控制。由于所有的安全 通信都至少部分地经过了加密,并且安全子系统内部的处理经过了隐藏 而不受外界的探测和干扰,所以本发明确保信息内容控制信息可以被强 制执行。于是,每个所有物的制作者和/或分发者和/或客户管理员和/ 或安全控制信息的其他提供者(例如某个最终用户—该最终用户限制了 他或她允许被汇报出去的审核信息的种类,以及/或者某个财务票据交 换所—该票据交换所对于支付被分发信息内容的使用费规定了使用其 信用的标准)都可以确信:他们分发的和接受的控制信息将(在给定 VDE安全性实现设计的安全性限度内)被强制执行。该控制信息可以 决定(举例来说):

(1)如何提供和/或向谁提供电子信息内容,例如,如何分发一个电 子所有物;

(2)如何直接使用—例如解密、显示、打印、等等—一个或多个对 象和/或所有物、或对象或所有物的部分;

(3)可以或必须如何处理对于上述信息内容和/或信息内容部分的 使用付款;以及

(4)应该如何收集、汇报和/或使用有关涉及所有物的至少一部分的 使用信息的审核信息。

被提供出来的控制信息的分级特性  包括解决由多个团体提交的 信息内容控制信息之间的冲突—通常由下列的方面建立:

(1)由不同参与者把控制信息放置就位(就位控制信息通常优先于 后续提交的控制信息)的次序;

(2)VDE信息内容和/或设备控制信息的详细说明。例如,就位控制 信息可以规定:哪些来自一个或多个参与者或参与者类别的后续一个或 多个的控制将优先于由一个或多个不同参与者和/或参与者类别提交的 控制信息,以及/或者

(3)来自多个参与者的控制信息集合之间的协商,该协商确定:对 于给定的VDE管理的信息内容和/或VDE装置,什么样的控制信息应 该构成其最终控制信息。

电子协定和权利保护

VDE的一个重要特征是:它可以用来确保对通过使用本发明而实 现的电子协定的管理,以及其安全性和权利的保护的充分性。这种协定 可以涉及一个或多个:

(1)电子信息的制作者、出版者、以及其他分发者,

(2)财务服务(如信用)提供者,

(3)诸如特定于信息内容的人数统计信息和特定于用户的描述性 信息之类的、由信息内容使用所产生的信息的用户(非财务服务提供 者)。这些用户可包括市场分析人员、为直销和销售导向目的的销售清 单编纂人员、以及政府机构,

(4)信息内容的最终用户,

(5)诸如电信公司和硬件厂家(半导体和电子设备和/或其他计算机 系统厂家)之类的基础服务和设备提供者,他们根据对他们的服务和/ 或设备的使用收取报酬,以及

(6)由电子信息描述的某些团体。

VDE支持具有商业安全性的“扩展”价值链电子协定。VDE可以 被配置成支持构成该扩展协定的参与者间的各种底层协定。这些协定可 以规定重要的电子商业考虑事项,包括:

(1)安全性,

(2)信息内容使用控制,包括电子分发,

(3)隐私(有关(举例来说)涉及参与者的、由医疗、信用、税务、 人事、和/或其他形式的机密信息描述的信息),

(4)财务进程管理,以及

(5)用于电子信息内容、信息内容和/或设备控制信息、电子信息内 容和/或设备使用信息和付款和/或信用的处理路径。

VDE协定可以规定价值链中两方或多方的电子商业关系,但是该 协定有时可能不直接强迫或直接涉及其他VDE价值链参与者。例如, 在某个信息内容制作者和某个分发者之间达成的电子协定可以确定分 发者对于制作者的某个信息内容(例如放在VDE容器对象中分发出去 的某个所有物)的应付价钱以及该分发者可以在一段给定时间内向最终 用户分发的对象的拷贝数目。在第二个协定中,一个价值链最终用户可 能参与到一个三方协定中,在该协定中,该最终用户同意某些有关使用 该分发产品的要求,例如接受分发者针对信息内容的使用而收取的费 用,及同意遵守制作者的版权。在分发者和财务票据交换所之间可以存 在第三个协定,如果最终用户直接与向该最终用户提供信用的票据交换 所之间具有一个单独的(第四个)协定的话,上述第三个协定允许分发 者使用票据交换所的信用以便为产品付款。在信息内容控制信息通过其 处理链传递的时候,第五个演变着的协定可以在所有价值链参与者之间 发展。该演变着的协定可以确定所有参与者对信息内容使用信息的权 利,包括(举例来说)每个参与者要收到的信息的特性、以及信息内容 使用信息和相关过程的处理路径。本例中的第六个协定可能涉及所有参 与者都参与进去以便达成该协定,并且确定诸如安全性技术和可信度 (例如,系统的商业完整性可以要求每个VDE装置安全子系统在电子 方面保证:它们的VDE节点满足了特定的可互相协作性要求)之类的 某些一般前提。在上面的例子中,上述六个协定将构成了用于商业价值 链实例的扩展协定中的各个协定。

VDE协定支持演变的(“活的”)电子协定配置。通过新提议的 信息内容控制信息与已经就位的控制信息之间的、或者由多个参与者提 交的同时提议出来的信息内容控制信息之间的、从十分简单到十分复杂 的“协商”,当前的和/或新的参与者可以修改上述协定。可以一段时 间之内按照已有的上级规则异步地和渐进地修改一个给定的模型,而该 修改可以被应用到所有的、某些类别的和/或特定的信息内容、以及/或 者某些类别的和/或特定的用户和/或用户节点。给定的信息内容可能受 到不同控制信息在不同处理时间或地点的控制,取决于其控制信息的演 变(和/或取决于不同的、适用的VDE装置控制信息)。控制信息的演 变可以在传递一个或多个含有对象的VDE控制信息的过程中发生,即 控制信息可以在控制信息处理链中的一个或多个点接受修改—只要这 种修改是经过允许的。于是,VDE管理的信息内容可以带有在信息内 容处理链中的不同“位置”施加的以及在该信息内容的不同处理链的相 同位置施加的不同的控制信息。控制信息的上述不同施加也可以来源于 规定特定参与者或参与者类别应该受到不同于其他参与者或参与者类 别的信息内容控制信息控制的信息内容控制信息。例如,用于给定的信 息内容的信息内容控制信息可以被规定为上级信息,于是该控制信息不 能被改变,并且该控制信息可由信息内容制作者放置就位,该控制信息 可以规定:其给定的信息内容的国内分发者允许每个季度制作100,000 拷贝—只要这些拷贝是提供给真实的最终用户,但是只能向本地零售商 传送该信息内容的一份拷贝,并且该控制信息限制该零售商每月为零售 给最终用户的目的所制作的拷贝数不超过1,000份。另外,(举例来说) 相同的信息内容控制信息可以限制该信息内容的最终用户制作该信息 内容的三份拷贝,每份供他或她使用的三台计算机中的每台(一份对应 于一台办公地点用的桌上型计算机、一份对应于一台家用的桌上型计算 机、一份对应于一台便携式计算机)。

由本发明的较佳实施例支持的电子协定可以从十分简单变化到十 分复杂。它们可以支持种类繁多的信息管理模型,这些信息管理模型提 供电子信息安全性、使用管理、以及通信,并支持:

(a)诸如商业著作权之类的信息的安全电子分发,

(b)安全的电子信息使用监控和汇报,

(c)涉及电子信息和/或设备使用以及其他电子信用和/或货币使用 和管理功能的安全财务交易功能,

(d)对于用户不希望公开的使用信息的隐私保护,以及

(e)“活的”电子信息信息内容传播模型,这些模型灵活地支持:

    (1)  广泛的参与者;

    (2)  用于:信息内容、信息内容和/或设备的控制信息的

处理、与信息内容和/或设备的使用相关的信息的汇报、以及

付款的一条或多条路径(链),

    (3)  对加入到信息内容控制信息中的条款和条件的演变

的支持,包括对电子协商功能的应用,

    (4)  支持多个信息内容的组合形成新的信息内容聚集,

以及

    (5)  多个并发模型。

安全处理部件

本发明提供的VDE的一个重要组成部分是核心安全交易控制配 置,此处称为SPU(或SPUs),SPU通常必须出现在每个用户计算 机中、其他电子设备中、或网络中。SPU提供了一个可信的环境,用 于:生成解密密钥、加密和解密信息、管理电子设备之间(即VDE装 置之间和/或在单个VDE装置中的多个VDE实例之间)对密钥和其他 信息的安全传送、安全地积累和管理存放在安全的和/或非安全的非易 失性存贮器中的审核跟踪、汇报、和预算信息、维护控制信息管理指令 的安全数据库、以及为执行某些其他控制和管理功能提供安全环境。

如果要求为执行某些VDE活动提供高度可信的环境,那么有必要 在VDE节点中使用一个硬件SPU(而不是软件仿真)。可以通过使用 特定控制软件、诸如半导体或半导体芯片集之类的用于电子设备之中的 或用来有效地连接到电子设备的一个或多个防破坏硬件模块(包括(举 例来说)一个防破坏的硬件电子设备外围设备)而创建出上述可信环 境。在本发明中,可以通过将硬件SPU的某些或所有硬件元件封装在 防破坏的包装中,并且/或者通过使用其他防破坏技术(如微熔和/或细 线检测技术)来增强硬件SPU的可信度。部分地通过使用防破坏半导 体设计而实现的本发明的可信环境含有诸如微处理器之类的、安全地执 行VDE进程的控制逻辑。

VDE节点的硬件SPU是VDE安全子系统的核心部件,它可以使 用电子设备的某些或所有基本控制逻辑—例如一个微控制器、微计算机 或其他CPU系统。该基本控制逻辑还可以用于诸如对电子设备的某些 或所有非VDE功能进行控制之类的非VDE目的。当运行于硬件SPU 模式时,所述基本控制逻辑必须具有足够的安全性,以便保护和隐藏重 要的VDE进程。例如,一个硬件SPU可以使用运行于保护模式同时执 行涉及VDE的活动的宿主电子设备微计算机,于是允许VDE进程的 部分能够以特定的安全程度进行执行。上述的可选实施例与较佳实施例 实施例相反,在较佳实施例中,可信环境是通过使用并非为所述基本控 制逻辑的部分的一个或多个防破坏半导体的组合而被创建的。在这两个 实施例中,某些控制信息(软件和参数数据)必须被安全地维护在SPU 中,而其他控制信息则可以(例如以加密的和经过标记的形式)安全地 存放在在外部,并且在需要的时候被装载进所述硬件SPU中。在许多 情况下,特别是对于微计算机来说,针对执行所述VDE进程使用专用 安全硬件而不是使用所述基本控制逻辑的较佳实施例方式可能是更为 安全的和有效的。可信SPU硬件过程所需的安全性和防破坏级别取决 于特殊市场或市场环境的商业要求,并且可以相差悬殊。

附图的简要说明

通过参看下面结合附图对目前优选的示例性实施例的详述,可以更 好地和更完全地理解本发明提供的上述或其他特性和优点,在这些附图 中:

图1示意了按照本发明的较佳示例/实施例提供的“虚拟分发环境” 的示例;

图1A是对图1所示的“信息服务中心”示例的更为详细的示意;

图2示意了处理和控制链的一个示例;

图2A示意了规则和控制信息如何在从图2的处理和控制链中的一 个参与者到另一个参与者的过程中保持不变的一个例子;

图3示意了可以提供的不同控制信息的示例;

图4示意了规则和/或控制信息的某些不同类型的示例;

图5A和5B示意了“对象”的一个示例;

图6示意了安全处理部件(“SPU”)的一个示例;

图7示意了电子设备的一个示例;

图8是图7所示电子设备示例的一个更为详细的框图

图9是图6和图8所示安全处理部件(SPU)示例的详细示意图;

图10示意了虚拟分发环境提供的“权利操作系统”(“ROS”) 体系结构的一个示例;

图11A-11C示意了应用和权利操作系统之间的功能关系的示例;

图11D-11J示意了“部件”和“部件组”的示例;

图12是图10所示的权利操作系统示例的更为详细的图解;

图12A例示了如何创建“对象”;

图13是用于图12所示的“受保护处理环境”的软件体系结构示例 的详细框图;

图14A-14C是由图13所示的受保护处理环境提供的SPU存贮器图 的示例;

图15例示了图13的通道服务管理器和加载模块执行管理器如何支 持一个通道的;

图15A示意了图15所示的通道头和通道详细记录的示例;

图15B是图13中的受保护处理环境为创建一个通道可能执行的程 序控制步骤的一个流程图

图16是一个安全数据库结构示例的框图;

图17示意了逻辑对象结构的示例;

图18示意了静止对象结构的示例;

图19示意了移动对象结构的示例;

图20示意了信息内容对象结构的示例;

图21示意了管理对象结构的示例;

图22示意了方法核心结构的示例;

图23示意了加载模块结构的示例;

图24示意了用户数据元素(UDE)和/或方法数据元素(MDE) 结构的示例;

图25A-25C示意了“映射计量器”的示例;

图26示意了许可记录(PERC)结构的示例;

图26A和26B一起示意了许可记录结构的更为详细的示例;

图27示意了发送表结构的示例;

图28示意了接收表结构的示例;

图29示意了管理事件日志结构的示例;

图30示意了图16安全数据库中所示的对象注册表、主题表、和用 户权利表之间的相互关系以及对这些表的使用的示例;

图31示意了图16所示对象注册表的更为详细的示例;

图32示意了图16所示主题表的更为详细的示例;

图33示意了图16所示用户权利表的更为详细的示例;图34示意 了描述站点记录表和组记录表如何跟踪图16所示安全数据库的部分的 一个特定示例;

图34A示意了图34站点记录表结构的示例;

图34B示意了图34组记录表结构的示例;

图35示意了用于更新安全数据库的进程的示例;

图36示意了描述新元素如何被插入到图16安全数据库中的一个示 例;

图37示意了描述如何访问安全数据库的元素的一个示例;

图38示意了描述如何保护安全数据库元素的一个流程图示例;

图39示意了描述如何备份安全数据库的一个流程图示例;

图40示意了描述从备份中恢复安全数据库的一个流程图示例;

图41A-41D示意了描述如何利用“交互方法”启动“处理和控制 链”的一套示例;

图42A-42D示意了“交互”预算方法的示例;

图43A-43D示意了“交互”注册方法的示例;

图44A-43C示意了“交互”审核方法的示例;

图45-48示意了一起使用以便对信息内容或其他信息的发布进行控 制的若干方法的示例;

图49,49A-49F示意了OPEN方法的示例;

图50,50A-50F示意了READ方法的示例;

图51,51A-51F示意了WRITE方法的示例;

图52示意了CLOSE方法的示例;

图53A-53B示意了EVENT方法的示例;

图53C示意了BILLING方法的示例;

图54C示意了ACCESS方法的示例;

图55A-55B示意了DECRYPT和ENCRYPT方法的示例;

图56示意了CONTENT方法的示例;

图57A和57B示意了EXTRACT和EMBED方法的示例;

图58A示意了OBSCURE方法的示例;

图58B,58C示意了FINGERPRINT方法的示例;

图59示意了DESTROY方法的示例;

图60示意了PANIC方法的示例;

图61示意了METER方法的示例;

图62示意了密钥“卷积”进程的示例;

图63示意了描述如何利用密钥卷积进程生成不同密钥以确定一个 “真实”密钥的一个示例;

图64和65示意了描述如何初始化受保护处理环境密钥的一个示 例;

图66和67示意了用来解密分别包含在静止对象和移动对象中的信 息的示例过程;

图68示意了描述如何初始化受保护处理环境的一个例子;

图69示意了描述如何将固件下载到受保护处理环境中的一个例 子;

图70示意了由网络或其他通信手段连接在一起的多个VDE电子设 备的示例;

图71示意了便携式VDE电子设备的示例;

图72A-72D示意了可以由用户通告和异常界面产生的“弹出式” 显示的示例;

图73示意了“智能对象”的示例;

图74示意了使用“智能对象”的进程的示例;

图75A-75D示意了用于电子协商的数据结构的示例;

图75E-75F示意了涉及电子协定的结构的示例;

图76A-76B示意了电子协商进程的示例;

图77示意了处理和控制链的另一个示例;

图78示意了VDE“存放库”的示例;

图79-83示意了一个说明处理和控制链演变及变换VDE管理的信 息内容和控制信息的例子;

图84示意了涉及若干类别的VDE参与者的处理和控制链的另一个 示例;

图85示意了某个组织内部的分发和处理链的另一个示例;

图86和86A示意了处理和控制链的另一个示例;以及

图87示意了虚拟容器模型的示例。

                      发明详述

图1-7和下面的论述对本发明所具特性的几个方面给出了一个概 述,在概述之后对根据本发明的实施例进行了更为技术化的详细说明。

概述

图1示意了根据本发明可以提供的一个“虚拟分发环境” (“VDE”)100。图1中,信息服务中心200与诸如电话线或有线 电视电缆之类的通信设施202相连。电话线或有线电视电缆202可以是 “电子信息高速公路”的一部分,它将电子信息在各地间传输。传输线 202将信息服务中心200与其它地方的人员相连,举例来说,这些人员 可以是消费者208、办公室210、影视制作室204以及出版社214。上 述与信息服务中心200相连的每类人员可被称作一个“VDE参与者”, 这是因为他们可以参与虚拟分发环境100中所发生的交易。

虚拟分发环境100可以支持几乎任何你能想到的交易类型。下面给 出了虚拟分发环境100可以支持的许多交易类型中的几种:

●家庭银行事务和电子付款;

●电子化法律合同;

●信息内容分发,这些信息内容可以是电子出版物、影视、声

音、图象或计算机程序

●私人信息(如病历和金融信息)的安全通信。

虚拟分发环境100之所以是“虚拟的”,是因为它不需要许多以前 所必须的“实物”来保护权利、确保可靠和可预测的分发、以及确保对 信息内容创建者和分发者的适当报酬。例如,以前,信息以磁带或磁盘 为介质分发,而这类介质难以复制。以前,私人或秘密的信息内容是放 在封口的信封或上锁的公文包中由信使传送从而完成分发。为了保证适 当的报酬,用户只有付给卖主现金后才能得到商品和服务。尽管信息服 务中心200可以通过传送诸如电子存贮介质之类的“实物”来进行信息 的交付,虚拟分发环境100则实现了方便的、完全电子化的“处理和控 制链”

虚拟分发环境的灵活性支持交易活动

信息服务中心200可灵活地支持多种不同的信息交易。不同的VDE 参与者可以定义和(或)参与一项交易的不同部分。信息服务中心200 可以协助发布交易信息,此外它本身即可以是交易参与者之一。

例如,图1右上角的影视制作室204可以创作影视节目。影视制作 室204可以通过传输线202发送这些节目,或者使用其它发送途径,例 如卫星链路205和CD ROM传送服务216。影视制作室204可以将节 目直接发送给消费者206、208、210,或者可以将节目发送到信息服 务中心200,信息服务中心200可以先把节目保存起来,以后再发送给 消费者。每个消费者206、208、210都能够接收和使用由影视制作室 204创作的节目,前提是影视制作室204或信息服务中心200已经为这 些消费者安排了具有给予消费者这些节目的使用权的适当的“规则和控 制”(控制信息)。

即使消费者得到影视节目的拷贝,如果她没有得到用以授权使用节 目的“规则和控制”,她也无法观看或复制这些节目。用户只有经“规 则和控制”允许才能使用这些节目。

例如,影视制作室204可能放送半小时体操录像节目,并希望尽可 能多的观众将收看该节目。影视制作室204希望每次收看收费2.00美 元。影视制作室204可以通过信息服务中心200使体操录像节目以“保 护”形式提供给所有消费者206、208、210。影视制作室204也可以 提供该录像的“规则和控制”。比方说,这些“规则和控制”可以限定:

    (1)任何消费者,只要具有良好信用,也即在独立金融提供

者212(如Mastercard或VISA)提供的信用帐户上存有至少2.00

美元,可以收看该录像。

    (2)虚拟分发环境100可以在消费者每次收看录像时进行“计

量”,并经常地将使用情况报告给影视制作室204。

    (3)金融提供者212可以从收看录像的每位消费者的信用卡

帐户上以电子方式收取付款(2.00美元),并将这些付款传送给影

视制作室204。

信息服务中心200甚至允许一个小的影视制作室向用户销售影视 节目,并收取其劳动报酬。而且只要向影视制作室支付适当报酬,其它 影视出版商可以使用该影视节目用来增值,或充当二次包装商或二次销 售商。

图1还示意了出版社214。出版社214可以充当作者206的分发商。 出版社214可以向诸如办公室210之类的消费者分发使用“信息内容” (如计算机软件、电子报纸、出版社214制作的录像节目、声音或任何 其它形式的数据)的权利。可以用出版社216分发的“规则和控制”定 义这些使用权利。出版社216可以将这些“规则和控制”与信息内容一 同分发,但这不是必须的。由于信息内容只能由那些得到适当“规则和 控制”的用户使用,信息内容和其相关“规则和控制”可能在不同时间、 以不同方式、由不同的VDE参与者分发。VDE能够与“规则和控制” 所适用的信息内容分开安全地分发和实施“规则和控制”,其优点是显 著的。

由出版商14分发的使用权利可以允许办公室210制作并向其雇员 分发该信息内容的拷贝。办公室210可以通过将“处理和控制链”延长 至其雇员而充当二次销售商。办公室210可以增加或修改“规则和控 制”(要和从出版社214收到的“规则和控制”相容)从而产生办公室 内部的控制信息和机制。例如,办公室210可以为办公室中的每个用户 和(或)小组设定一个最大使用预算,或者只允许指定的雇员和(或) 小组访问特定的信息。

图1中给出了信息传送服务216,信息传送服务216将诸如“CD ROM”光盘之类的电子存贮介质传送给消费者206。虽然电子存贮介 质本身未经信息服务中心200通过传输线202传送,它们仍然是虚拟分 发环境100的一部分。电子存贮介质可以用来分发信息内容、“规则和 控制”或其它信息。

信息服务中心200内部组成举例

图1中的信息服务中心200可以是许多参与者的集合,这些参与者 可以是分发商、金融票据交换所或管理员。图1A示意了信息服务中心 200内部组成的例子。每一个信息服务中心参与者200a-200g均可以是 一个独立的组织/企业。可以有任意数量的参与者200a-200g。在本例 中,电子“开关”200a将信息服务中心200内部各部分相互连接,并 将内部各部分与外部参与者相连,或者也可以将各外部参与者相互连 接。

信息服务中心200可以包含“交易处理器”200b,它根据来自参 与者和(或)报告接收者200e的请求处理交易(如转移电子基金)。 信息服务中心200还可以包含“使用情况分析员”200c,他对汇报上 来的使用情况信息作出分析。“报告生成者”200d可以根据使用情况 生成报告,并且可以将这些报告提供给外部参与者和(或)信息服务中 心200内部的参与者。“报告接收者”200e可以从信息内容用户那里 接收诸如使用情况之类的报告。“许可代理”200f可以根据用户的信 用概况分放批准使用权和分发许可权的“规则和控制”。管理员200h 可以发出信息以便使虚拟分发环境100正常工作。信息内容和消息存贮 设备200g可以存放信息,以供信息服务中心200内部或外部的参与者 使用。

使用处理和控制链分发信息内容的例子

如上所述,虚拟分发环境100可以用来管理几乎任何类型的交易。 可以用虚拟分发环境100管理的一种重要的交易类型是分发或传送“信 息内容”或其它重要信息。图2更加抽象地示意了一个“模型”,该模 型说明了如何利用图1的虚拟分发环境100为信息内容的分发提供“处 理和控制链”。图2中的每个框对应于图1所示的一个或多个VDE参 与者。

在图2中的例子中,VDE信息内容制作者102制作了“信息内 容”。信息内容制作者102还可以为分发该信息内容规定“规则和控 制”。这些与分发有关的“规则和控制”可以规定谁有权分发信息内容 的使用权,以及可以允许多少用户使用该信息内容。

箭头104表示信息内容制作者102通过电子高速公路108(或其它 途径,如由美国邮件之类的投递服务传送的光盘)向VDE权利分发者 106(“分发者”)发送与信息内容相关的“规则和控制”。信息内容 的分发途径可以与发送“规则和控制”所使用的相同或不同。分发者 106生成其自己的、与信息内容的使用相关的“规则和控制”。与使用 相关的“规则和控制”可以限定用户对信息内容能做什么,不能做什么, 以及使用信息内容要花费多少。这些与使用相关的“规则和控制”必须 与信息内容制作者102所规定的“规则和控制”相一致。

箭头110表示分发者106通过向诸如消费者等信息内容用户112发 送信息内容的“规则和控制”来分发信息内容的使用权。信息内容用户 112遵照与使用相关的“规则和控制”使用信息内容。

在图2的例子中,如箭头114所示,与信息内容使用相关的信息被 汇报给了金融票据交换所116。根据此汇报,金融票据交换所116可以 生成帐单,并通过“报告和付款”网络118将帐单发送给信息内容用户 112。箭头120表示信息内容用户112向金融票据交换所116交纳信息 内容的使用费用。金融票据交换所116可以根据收到的报告和付款,向 分发者106提交报告和(或)付款。如箭头122所示,分发者106可以 向信息内容制作者102提交报告和(或)付款。金融票据交换所116可 以直接向制作者102提交报告和付款。汇报和付款可以不同地进行。例 如,金融票据交换所116可以直接地或通过代理向每个VDE信息内容 制作者102以及权利分发者106提交报告和(或)付款,并向信息内容 用户112提交报告。

分发者106以及信息内容制作者102可以是同一个人,也可以是不 同的人。例如,某个音乐表演小组可以通过制作和分发其本身的音乐录 制品从而既充当信息内容制作者102也充当分发者106。另一个例子 中,出版社可以作为分发者106而分发由作者型信息内容制作者102制 作的作品的使用权。信息内容制作者102可以利用分发者106有效地管 理信息内容分发的财务结果。

图2所示的金融票据交换所116也可以是“VDE管理员”。作为 管理员的金融票据交换所116向VDE参与者发送“管理”信息。这些 管理信息有助于维持虚拟分发环境100正常工作。“VDE管理员”和 金融票据交换所的角色可以由不同的人员和公司来担任,并且担任该角 色的人员和公司可以多于一个。

有关“规则和控制”的更多内容

虚拟分发环境100禁止使用被保护信息,除非使用该信息是“规 则和控制”(控制信息)所允许的。例如,图2所示的“规则和控 制”可以给予特定的个人或信息内容用户组112对某个信息内容的 使用权。这些“规则和控制”可以规定在信息内容的使用类型中哪 些是允许的,哪些是禁止的,还可以规定如何交纳信息内容的使用 费以及交纳多少。在另一个的例子里,“规则和控制”可以要求将 信息内容使用信息的报告返回给分发者106和(或)信息内容制作 者102。

“处理和控制链”中的每一个VDE参与者一般均要服从“规 则和控制”。“规则和控制”定义了每个不同VDE参与者各自的 权利和义务。“规则和控制”提供了在参与者之间建立相互依赖性 和相关性的信息和机制。“规则和控制”具有灵活性,允许虚拟分 发环境100支持绝大多数“传统”的商业交易,例如:

“规则和控制”可以规定哪个(哪些)金融票据交换所

116可以处理付款,

“规则和控制”可以规定哪个(或那些)参与者可以接

收何种使用报告,以及

“规则和控制”可以规定向一定的参与者公开一定的信

息,而其它信息对他们保密。

“规则和控制”可以限制其自身是否可以被修改,如何修改。通常, 由一个VDE参与者规定的“规则和控制”不能被另一个VDE参与者 修改。例如,某个信息内容用户112通常不能修改由分发者106规定的、 要求用户按某种价格支付信息内容使用费的“规则和控制”。“规则和 控制”可以在通过“处理和控制链”时“保持不变”,而在从一个VDE 参与者传递给下一个的过程中被“继承”下来。

根据需要,VDE参与者可以规定:他们的“规则和控制”在其本 身或其它“规则和控制”所指定的条件下可以被修改。例如,由信息内 容制作者102规定的“规则和控制”可以允许参与者106“抬高”使用 价格,正如零售店“抬高”批发商品的价格一样。图2A示意了一个例 子,其中某些“规则和控制”在从信息内容制作者102传递到信息内容 用户112的过程中保持不变;其它“规则和控制”被分发者106修改和 删除;而另外一些“规则和控制”则被该分发者添加进来。

“规则和控制”可以对报告给其它VDE参与者的信息进行限制, 从而保护信息内容用户的隐私权。例如,“规则和控制”可以规定以匿 名方式报告信息内容的使用信息而不暴露信息内容用户的身份,或者根 据要求,在允许的前提下只将某些信息暴露给某些参与者(例如从使用 情况中得到的信息)。这种功能安全地控制了哪些信息可被暴露以及可 向哪些VDE参与者暴露,从而保护了所有VDE参与者的隐私权。

规则和信息内容可以被分开传递

如上所述,虚拟分发环境100将信息内容和相应“规则和控制”联 系在一起,并禁止在没有一组相应“规则和控制”的前提下使用或访问 信息内容。分发者106无需为控制信息内容的分发而传递信息内容。较 佳实施例通过保护授以使用权的相应“规则和控制”使之避免被未经授 权地分发和使用,从而可以安全地保护信息内容。

在某些例子中,“规则和控制”可以与它们所适用的信息内容一起 传送。虚拟分发环境100也可以允许“规则和控制”与信息内容分开传 送。由于任何人在未得到相应“规则和控制”的允许时都无法使用或访 问被保护的信息内容,因而分发者106可以控制对已经(或将要)传送 出去的信息内容的使用。“规则和控制”的传送途径和时间可以与信息 内容的不同。信息内容制作者102可以通过电子高速公路108将信息内 容转送给信息内容用户112,或者通过该“高速公路”将信息内容传送 给所有人。信息内容可以在发出后即可用,也可以存贮起来留待以后使 用或再使用。

虚拟分发环境100还允许分开传递付款和报告。例如,信息内容用 户112可以具有一个虚拟“信用卡”,该卡可扩大信用(最大到一特定 极限)用以支付任何信息内容的使用费。“信用交易”可以发生在用户 所在地点,而无需任何“在线”连接或进一步授权。本发明有助于安全 地保护虚拟“信用卡”,使之避免被未授权地使用。

规则和信息内容的定义过程

图3示意的例子描述了基于“规则和控制”的一个全过程。它包含 “事件”过程402,计量过程404、记帐过程406和预算过程408。并 非所有图3所示的过程都要被每套“规则和控制”所采用。

“事件过程”402检测发生的事情(“事件”),并决定哪些事件 需要其它“过程”作出反应。事件可以包括使用信息内容的请求,也可 以产生一个使用许可。某些事件可能需要额外处理,而其它的则不必。 事件是否需要额外处理取决于相应于信息内容的“规则和控制”。例如, 没有许可的用户其请求将得不到满足(“禁止通行”)。另一个例子中, 每个“翻看电子书籍新一页”的用户请求均可得到满足(“通行”), 但可能无需对这些请求进行计量、记帐或预算。购买了小说的拷贝的用 户可得到许可:只要他愿意便可以任意多次地以打开和阅读该小说而不 必进行额外计量、记帐或预算。在这个简单例子中,“事件过程”402 可以在用户第一次要求打开被保护小说时(于是可以要求用户支付购买 费用)对计量、记帐和(或)预算过程发出请求,而将后续的打开同一 小说的请求视为“无意义事件”。对于其它信息内容(如检索电子电话 簿)则可以要求用户在每次访问时都要交纳费用。

“计量”过程404对事件进行记录,并可将使用情况报告给分发者 106和(或)其他适当的VDE参与者。图4示意的是过程404可以建 立在大量不同因素的基础上,这些因素的例子包括:

(a)需收费的使用类型

(b)收费所基于的计量单位

(c)每个单位需收取的费用

(d)何时产生报告

(e)如何付款

这些因素可以由控制计量过程的“规则和控制”进行规定。

记帐过程406决定对事件收取多少费用。它记录并报告付款信息。

预算过程408对信息内容的允许使用量进行限制。例如,预算过程 408可以根据信用卡帐户上的可用金额来限制信息内容被访问或复制的 次数,或者限制信息内容可被使用的页数或其它量度。预算过程408记 录并报告有关上述限制的财经和其它交易信息

一旦这些过程成功地执行完毕后,便可将信息内容交付给用户了。

容器和目标

图5A示意的是在一个较佳实施例中,虚拟分发环境100如何将信 息元素(信息内容)包装到“容器”302中,从而保证在没有其“规则 和控制”的提供下无法访问这些信息。通常,容器302是电子的而不是 物理的。在一个例子中,电子容器302包含了“数字”信息,该“数字” 信息含有严格定义的数据结构。容器302及其信息内容可被称作“对象 300”。

图5A中的例子示意了容器302内含和封装的项。然而,容器302 也可以包含没有实际存贮在该容器内的项。例如,容器302可以引用保 存在任何地方(如在远程的其它容器中)的可用的项。容器302可引用 在不同时间上或只在有限的时间中可利用的项。某些内容可能太大以至 无法保存在容器302中。可以在特定时间以录像的“实况传送”方式将 项传递给用户。即使在这种情况下,本例中容器302即(通过引用方式) “包含”了这种“实况传送”。

容器302可以包含电子(如数字)形式的信息内容304。信息内容 304可以是小说正文、图片、音乐表演或朗读之类的声音、电影或其它 录像、计算机软件,或你能够想到的任何电子信息。其它类型的“对象” 300(如“管理对象”)可以包含“管理”或其它类型信息,作为信息 内容304的替代或补充。

在图5A的例子中,容器302也可以包含下列形式的“规则和控 制”:

(a)“许可记录”808

(b)“预算”308

(c)“其它方法”1000

图5B给出了有关许可记录808、预算308和其它方法1000的一些 补充细节。“许可记录”808规定了与对象300有关的权利,如谁可以 打开容器302,谁可以使用对象的内容,谁可以分发对象,以及应该使 其它哪些控制机制生效。举例来说,许可记录808可以规定用户使用、 分发和(或)管理容器302及其内容的权利。许可记录808还可以规定 由预算308和“其它方法”1000所申请的要求。许可记录808还可以 含有有关安全的信息,如加密和解密密钥。

图5B所示的“预算”308是一种特殊类型的“方法”1000,它可 以规定的内容包括信息内容304的使用限制,以及使用费用的付款方 式。预算308可以规定整个信息内容304可被使用和(或)复制的量有 多少。方法310可以禁止使用超过一个特定预算所规定的量。

“其它方法”1000定义了“规则和控制”所采用的基本操作。该 “方法”1000可以包含:如何计量使用情况,信息内容304和其它信 息是否或如何被加密和解密,以及其它与管理和控制信息内容304有关 的过程。例如,方法1000可以记录任何打开了电子容器302的人的身 份,并可根据“计量”来控制如何收取信息内容的使用费用。方法1000 可以适用于一个或多个不同的信息内容304及其相关容器302,也可适 用于信息内容304的所有或指定部分。

安全处理单元(SPU)

每个“VDE参与者”可以带有一个“电子设备”,该设备可以是 或者包含一台计算机。该设备可以通过电子高速公路108进行通讯。图 6示意了本例中每个VDE参与者所使用“电子设备”中的安全处理单 元(“SPU”)500部分。SPU 500在安全处理环境503中处理信息, 并安全地保存重要信息。SPU 500可以由运行于宿主电子设备中的软 件进行仿真。

SPU 500封装于“防破坏安全屏障”502中,并受其保护。安全屏 障502将安全环境503与外界分隔开来。它防止安全环境503中的信息 和过程在非安全条件下被观察、干扰和离开。屏障502还控制外部对 SPU 500内部安全资源、过程和信息的访问。在一个例子中,防破坏安 全屏障502的组成包括诸如“加密”之类的安全特性和用来检测破坏, 以及(或者)在检测到破坏时销毁安全环境503中敏感信息的硬件设 施。

本例中的SPU 500是一个集成电路(“IC”)芯片504,它包括 “硬件”506和“固件”508。SPU 500通过“设备链”510与其余电 子设备相连。本例中的SPU“固件”508是“软件”,例如“嵌入” 到芯片504中的“计算机程序”。固件508使硬件506能够工作。硬件 506最好含有一个处理器以执行由固件508指定的指令。“硬件”506 还包含长有效期和短有效期存贮器,以安全地保存信息,使之避免破 坏。SPU 500还可以含有一个受保护的时钟/日历用来对事件计时。本 例中的SPU硬件506可以包含经过专门设计的专用电子线路用以快速 有效的执行特定过程(如“加密”和“解密”)。

SPU 500的特定应用环境将决定SPU 500应具备处理能力的多寡。 本例中的SPU硬件506所提供的处理功能至少足够支持图3所示过程 的安全部分。在某些环境中,SPU 500的功能可能需要加强,从而可以 执行所有的电子设备处理,而且可以集成到通用处理器内部。在另外的 环境中,SPU 500可以与一个通用处理器协同工作,因而只需有足够的 能力来完成安全过程即可。

VDE电子设备和权利操作系统

图7示意了包含SPU 500的电子设备600的一个例子。电子设备 600实际上可以是任何电气或电子设备,例如:

●计算机

●电视“机顶置”控制盒

●寻呼机

●电话机

●声音系统

●影像再生系统

●视频游戏机

●“智能”信用卡

本例中的电子设备600可以含有键盘612、声音识别器613和显示 器614。用户可以通过键盘612和(或)声音识别器613输入命令,并 在显示器614上观看信息。设备600可以通过电子设备中通常使用的任 何连接/设备与外界通信。图下部示意了连接/设备的一些例子,它们是:

“调制解调器”618或其它电信链路;

CD ROM盘620或其它存贮介质或设备;

打印机622;

广播接收装置624;

文件扫描器626;以及

将设备与网络相连的“电缆”628。

虚拟分发环境100提供了“权利操作系统”602,“权利操作系统” 602通过控制设备600和SPU 500两者的硬件资源,对两者进行管理。 操作系统620也可支持至少一个“应用”608。“应用”608通常是一 个专用于设备600所在环境的硬件和(或)软件。例如,如果设备600 是一台个人计算机,那么“应用”608可以是用户装载的一个程序,如 一个字处理器、一个通信系统或一个录音系统。如果设备600是一个电 视控制器盒,那么应用608可以是某种硬件或软件,它允许用户视频点 播,或进行其它操作,如快进或快倒。在本例中,操作系统602提供了 一个标准的、严格定义的、通用的界面,以支持多种不同的“应用” 608。本例中的操作系统602提供了“权利和检查操作系统功能”604 和“其它操作系统功能”606。“权利和检查操作系统功能”604安全 地处理与虚拟分发环境100相关的任务。SPU 500提供或支持“权利和 检查操作系统功能”604中的许多安全功能。“其它操作系统功能” 606处理一般的设备功能。可以从头设计整个操作系统602,使之包含 “权利和检查操作系统功能”604和“其它操作系统功能”606,或者 将“权利和检查操作系统功能”加入到现有的、提供“其它操作系统功 能”的操作系统之上。

本例中的“权利操作系统”602可以支持多种不同的设备600。例 如,它可以支持大型计算机,“小型计算机”和诸如个人计算机和便携 式计算机之类的微型计算机。它也可以支持置于电视机上方的控制盒、 小型便携寻呼机、桌上型收音机、立体声系统、电话机、电话交换机或 其它任何电子设备。这种既能支持大型设备又能支持小型设备的能力称 为“具有可伸缩性”。一个“具有可伸缩性”的操作系统602意味着存 在一个标准界面,该界面能够跨越多种不同的设备并完成多种不同的任 务。

在本例中,“权利操作系统功能”604是“基于服务的”。例如, “权利操作系统功能”604处理由应用608发来的概要请求,而不是要 求该应用不断地发出更详细的“子请求”,或者使之陷入涉及满足一个 概要请求所需进行的底层繁琐处理之中。例如,应用608可以简单地请 求阅读指定的信息;然后“权利操作系统功能”604可以判断所需信息 是否为受VDE保护的信息内容,如果是的话,执行使该信息可用的过 程。这种特性称为“透明性”。“透明性”使应用608可以更加容易地 执行任务。“权利操作系统功能”604支持的应用可以丝毫“不了解” 虚拟分发环境100。知道虚拟分发环境100的应用608可以更深入地利 用虚拟分发环境100。

在本例中,“权利操作系统功能”604是“事件驱动”的。“权利 操作系统功能”604直接响应设备600中发生的事件,而不是反复检查 电子设备600的状态,以确定是否发生了一个事件。

在本例中,由“权利操作系统功能”604完成的某些服务可以根据 递送给操作系统602的附加“组件”进行扩展。“权利操作系统功能” 604可以收集和使用由不同参与者在不同时间传送来的“组件”。“组 件”有助于使操作系统602“具有可伸缩性”。某些组件可以根据设备 是小型的还是大型的(如多用户环境)来改变它们在其上的服务工作方 式。另外一些组件的设计则可以支持特定应用或某类应用(如某种计量 和某种预算)。

电子设备600

较佳实施例中的电子设备600可以是任意具有如下特征的电子装 置:它含有一个或多个微处理器和(或)微控制器,以及(或者)其它 完成逻辑和(或)数学计算的设备。这些设备包括计算机、计算机终端、 计算机用设备控制器、数字显示设备、电视机、视像和声/像投影系统、 广播和(或)有线传送用频道选择器以及(或者)解码器、遥控设备、 录像机或录音机、包括光盘播放器、视盘播放器和磁带播放器在内的媒 体播放器、声频和(或)视频放大器虚拟现实机、电子游戏机、多媒 体机、收音机、电话、可视电话、传真机、机器人、包括机器工具等在 内的数值控制机器、以及其它具有如下特征的(包括那些尚未面世的) 设备:它含有一个或多个微计算机和(或)微控制器以及(或者)其它 CPU。

图8示意了电子设备600的一个例子。该电子设备600含有一个系 统总线653。在本例中,总线653连接了一个或多个传统通用中央处理 单元(CPU)654。总线653将CPU 654与RAM 656,ROM 658和 I/O控制器660相连。系统总线653也可以连接一个或多个SPU 500。 系统总线653可以允许SPU 500与CPU 654通信,也可以允许CPU和 SPU两者(通过公用地址和数据线)与RAM 656,ROM 658和I/O 控制器660通信。电源659可以向SPU 500、CPU654和所示的其它 系统组件提供电源。

在图中的例子中,I/O控制器660与二级存贮设备652、键盘/显 示器612,614、通信控制器666和备份存贮设备668相连。备份存贮 设备668可以将信息存贮在如磁带670、软盘或可拆卸存储卡等之类的 大容量介质上。通信控制器666可以使得电子设备600通过网络672或 其它电信链路与其它电子设备通信。对于不同的电子设备600,即使它 们采用了不同的CPU或不同的ROS 602实例,而只要通常使用兼容的 通信协议和(或)安全措施,它们便可以相互协作。在本例中,I/O控 制器660允许CPU 654和SPU 500读取和写入二级存贮器652、键盘/ 显示器612,614、通信控制器666和备份存贮设备668。

二级存贮器652可以包含一个或多个相同且不安全的二级存贮设 备(例如磁盘和光盘驱动器),以供电子设备600完成一般的二级存贮 功能之用。在某些实现中,部分或全部二级存贮器652可以包含一个二 级存贮设备,该设备被物理地封装在一个安全包装中。然而,由于在许 多实现中使用物理措施来保障二级存贮器652的安全并非现实和廉 价,因此先将信息加密后再保存到二级存贮器652中,从而使二级存贮 器652能够安全地保存信息。如果在存贮前先对信息进行加密,那么对 二级存贮器652或其内容的物理存取将不会轻而易举地泄露或破坏该 信息。

本例中的二级存贮器652保存了CPU 654和(或)SPU 500所使 用的代码和数据,这些代码和数据用来控制电子设备600的整体运行。 例如,从图8中可以看到,图7所示的“权利操作系统”(“ROS”) 602(包括ROS的部分604以及部分606,其中部分604提供VDE功 能,而部分606则提供其它OS功能)可以存贮在二级存贮器652中。 二级存贮器652也可以保存一个或多个VDE对象300。从图8中还可 以看到,图7所示的安全文件610可以采用“安全数据库”或管理文件 系统610的形式存贮在二级存贮器652中。该安全数据库610可以保存 和组织由ROS 602使用的、用来执行VDE功能604的信息。这样,二 级存贮器652便可以保存用来完成VDE或其它功能604、606的可执 行代码,以及与这些功能有关的安全文件610(还包括VDE对象300)。 二级存贮器652还可以保存“其它信息”673,例如其它操作系统功能 606进行任务管理所使用的信息、非VDE文件等等。在二级存贮器652 中所指出的部分元素也可以存贮在ROM 658中,只要这些元素没有修 改要求(除了在更换ROM 658的时候)。ROS 602的某些部分尤其以 保存在ROM 658中为好(例如,在加电时用来为电子设备600创建操 作环境的“引导”程序、POST程序等等)。

从图8可以看到,二级存贮器652也可以用来存贮图7所示的用户 应用608所含代码(“应用程序”)。如图8所示,可以有两种通用类 型的应用程序608:“VDE感知”应用608a,及非VDE感知应用 608b。VDE感知应用608a可以在意识到VDE存在的情况下至少对某 一部分进行特殊设计,从而能够访问和充分利用VDE功能604的详尽 功能。由于ROS 602具有“透明”特性,非VDE感知应用608b(如 那些不是专门为VDE 100所设计的应用)也可以访问和充分利用VDE 功能604的功能。

安全处理单元500 

较佳实施例中的每个VDE节点或其它电子设备600都可以含有一 个或多个SPU 500。SPU 500可以用来完成VDE 100要求的所有安全 处理。例如,SPU 500可用来对VDE保护的目标300进行解密(或解 除安全)。它还可以用来管理加密的和(或)安全化的通信(如通过对 信息进行验证和(或)纠错有效性检查)。SPU 500还可以完成安全数 据管理过程,包括管理VDE对象300的使用、核算以及适时的付款情 况(通过使用预付款、信用、银行帐户上的实时电子借方记帐以及(或 者)VDE节点代用货币存款帐户等方式)进行控制。SPU 500可以执 行与VDE对象300有关的其它交易。

SPU物理封装和安全屏障502

如图6所示,在较佳实施例中,SPU 500可以由单个集成电路“芯 片”505实现以提供一个安全的处理环境,在该环境中可以对机密的和 (或)具有商业价值的信息进行安全地处理、加密和(或)解密。IC 芯片505可以包含一个拇指指甲大小的小型半导体“圆片”。该半导体 圆片可含有半导体和金属导线通路。这些通路定义了SPU 500的电路, 从而也就定义了其功能。某些通路电连通着芯片505的外部“管脚” 504。

如图6和图9所示,SPU 500可被一个防破坏硬件安全屏障502 所包围。安全屏障502的某些部分由塑料或其它包装材料构成,SPU 圆片被置于其中。由于SPU 500内部进行的处理及其存贮的信息不易被 外界访问,因而这些处理和信息相对比较安全,可避免受到未授权的访 问和干扰。所有信号都需经过由BIU 530提供的受控安全通道才可通过 屏障502,该通道限制了外界对SPU 500内部组件的访问。受控安全通 道可阻挡外界企图访问SPU 500内部的安全信息和资源。

可以除去IC芯片上的塑料包装,从而可访问到“圆片”。也可以 对“圆片”本身进行分析和“反向工程”(如,使用各种逻辑分析仪和 微探针在电路工作的同时收集和分析圆片上的信号,使用酸洗或其它技 术除去半导体层从而暴露其它层,通过电子显微镜对圆片进行观察和拍 照,等等)。虽然没有一种系统或电路能够绝对避免上述侵害,SPU 屏障502可以包含附加的硬件保护措施使侵害的成功变得极其昂贵和 费时。例如,可使用离子植入和(或)其它制造技术,使实际分辨SPU 圆片导线通路变得异常困难,可以制造SPU内部电路使之在暴露于空 气和(或)光线中的时候能够“自销毁”。SPU 500可以在那种掉电后 内容即消失的内存中保存机密信息。可以在SPU 500中安置某种电路以 检测微探针探测或者其它破坏,并在检测到破坏时自销毁(或破坏SPU 的其它部分)。这些或其它基于硬件的物理安全措施是防破坏硬件安全 屏障502重要技术因素。

为了进一步提高安全屏障502的安全性,可以将SPU 500纳入或包 含在一个或多个更进一步的物理封装中,这些封装包括:环树脂或其 它封装化合物;更进一步的模块封装,包含具有附加的、检测到干扰时 即激活的自销毁、自禁用或其它功能;更进一步的模块,该模块提供附 加的安全保护措施,例如在询问口令或其它验证信息后才工作;以及诸 如此类的其它装置。另外,可以进一步向底板添加金属层,以使得酸洗、 微探针探测之类的操作更加困难。可以安置将内存清零的电路,以作为 自销毁处理的一部分;塑料包装本身可经过设计用来抵御化学以及物理 上的侵害;而SPU的内存可带有专用的寻址和刷新电路,该电路将数 位的位置进行重新组合,这将使采用电手段判断内存单元的值变得相当 复杂。这些或其它措施可以对保证屏障502的安全性发挥作用。

在某些电子设备600中,可以将SPU 500与设备微控制器或同等 物,或者设备I/O或通信微控制器一起集成到同一芯片(或芯片集) 505中。例如,在一个较佳实施例中,可以将SPU 500与一个或多个另 外的CPU(如电子设备的CPU 654)一起集成到单个元件或封装中。 另外的CPU 654可以是任意中央控制逻辑配置,如微处理器、其它微 控制器和(或)阵列或其它并行处理器。这种集成配置可以使总体成本 较低、总体体积较小,以及SPU 500和CPU 654潜在的交互作用速度 加快。假如一个集成的SPU/CPU元件成为某个已广泛销售的微处理器 产品线中的标准部件,那么集成化还可以拓宽销售范围。将SPU 500 合并到电子设备600的主CPU 654中(或者合并到其它设备,或设备 外围微计算机或其它微控制器中)可以从实质上降低VDE 100的实现 开销。集成化所需考虑的的问题可以包括实现成本、生产成本、所需安 全级别、以及密集性值。

SPU 500也可以与除CPU之外的其它元件一起集成。例如,对于 视频或多媒体应用,(根据总体设计)将SPU 500集成到视频控制器芯 片或芯片集之中可以带来性能和(或)安全性的提高。SPU 500也可以 直接集成进网络通信芯片或芯片集等之中。将SPU 500集成到调制解调 器芯片或芯片集之中也可以为高速通信应用带来一定的性能提高。这将 使得在诸如可独立操作的传真机之类的通信设备中安装SPU 500的过 程得到简化。SPU 500也可以集成到其它外围设备中,例如CD-ROM 设备、机顶置有线设备、游戏设备、以及其它多种电子设备,这些设备 使用分布式信息、允许对分布式信息进行访问、完成与分布式信息相关 的交易、或者消耗分布式信息。

SPU的内部结构

图9是一个SPU 500实例内部结构的详细示意图。本例中的SPU 500含有单个微处理器520和容量有限的存贮器,该存贮器配置为ROM 532和RAM 534。更详细地说,该SPU 500实例含有微处理器520、 加密/解密机522、DMA控制器526、实时时钟528、总线接口单元 (“BIU”)530、只读存贮器(ROM)532、随机存取存贮器 (RAM)534、和存贮器管理单元(“MMU”)540。DMA控制 器526和MMU 540虽是可选的,但如果没有的话,SPU 500的性能将 受影响。SPU 500还可以包含可选的模式匹配机524、可选的随机数发 生器542、可选的数学运算加速电路544,以及可选的压缩/解压缩电 路546。公用地址/数据总线536可以在微处理器520和(或)DMA控 制器526的控制之下在上述各种部件之间传送信息。利用附加的或补充 的专用通路538可将微处理器520与其它部件相连(如通过连线538a 与加密/解密机522相连,通过连线538b与实时时钟528相连,通过连 线538c与总线接口单元530相连,通过连线538d与DMA控制器526 相连,通过连线538e与存贮器管理单元(MMU)540相连)。

下面将对上述每个SPU部件进行详细说明。

微处理器520

微处理器520是SPU 500的大脑。在本例中,它执行由(至少暂时 地)保存在ROM 532和(或)RAM 534中的代码所指定的一系列步 骤。在较佳实施例中,微处理器520含有一个专用中央处理装置(例如, RISC和(或)CISC处理器单元,微控制器,以及(或者)其它中央 处理装置,或者在许多应用中不太想要的过程特有的专用控制逻辑), 用以执行保存在ROM 532和(或)其它存贮器中的指令。微处理器520 可以是安全SPU 500中的电路设计的独立元件或者独立封装。

在较佳实施例中,微处理器520通常处理电子设备600的操作中与 安全性最敏感的方面。例如,微处理器520可以管理VDE加密、解密、 特定信息内容和(或)设备使用的控制信息,跟踪VDE中安全化信息 内容的使用,以及完成其它与VDE使用控制相关的功能。

在每个SPU 500和(或)电子设备的二级存贮器652中,所保存的 内容可以是下述各部分的一个实例,即:ROS 620软件;应用程序 608;对象300-它含有由VDE控制的所有物的内容及相关信息;以 及管理数据库610-它保存与对象和VDE控制信息有关的信息。ROS 602含有供SPU微处理器520执行的软件,用来使电子设备600部分地 控制对VDE相关对象300的使用。这些SPU程序含有用来完成基本控 制功能的“加载模块”,这在后面将要解释到。上述各种程序以及相关 数据将主要由微处理器520执行和处理。

实时时钟(RTC)528

在较佳实施例中,SPU 500含有一个实时时钟电路(“RTC”) 528,它为SPU提供可靠的、防破坏的时基。在较佳实施例中RTC 528 记录日期时间(如月份、日期和年份),因而可以含有日历和时钟的组 合。对于实现基于时间的使用计量措施、“带有有效期的解密密钥”以 及其它基于时间的SPU功能来说,可靠的时基是重要的。

RTC 528必须上电才能工作。最佳情况下,RTC 528的电源可含 有一个装载于SPU 500或其它安全封装内部的小型电池。不过,RTC 528使用的电源也可以是SPU 500外部的电源,如外部电池。这种外部 电源可以向RTC 528提供相对不易中断的电源,也可以使SPU 500中 本来易丢失信息的至少部分RAM 534保持信息不丢。

在一种实现中,电子设备电源659也用来为SPU 500供电。将任意 一种外部电源作为RTC 528的唯一电源来使用,将显著地降低基于时 间的安全技术的有用性,除非SPU 500能够至少识别出外部电源供电的 任何中断(或任何部件中断),记录该中断,并做出可能的适当响应, 如禁止SPU 500执行某种或所有VDE过程的能力。为识别电源中断, 可以使用一个在电源失效时将被触发的电路。该电源失效感测电路可为 另外的电路进行供电,而另外的这些电路又含有用以记录一个或多个电 源失效事件的相关逻辑。电容放电电路可以提供运行该逻辑所必需的短 暂电源。附加或者作为一种替代,如果可以获得宿主电子设备600的时 钟输出,那么SPU 500可以经常地将RTC 528的输出与宿主电子设备 600的时钟输出进行比较。如果发现误差,SPU 500可以做出适当响 应,包括记录该误差,以及(或者)禁止SPU 500在至少某些情况下执 行至少某些过程部分。

如果电源失效和(或)RTC 528误差、以及(或者)其它事件表 明了出现破坏的可能性,SPU 500可自动地将其所保存的一部分或多 部分敏感信息破坏或使之不经过特权的干预便无法访问,此处的敏感信 息的例子包括:有关执行的信息和(或)有关加密密钥的信息。为再次 提供SPU操作,作为一种恰当的作法,上述被破坏的信息将必须由VDE 金融票据交换所、管理员和(或)分发者来复原。通过远程下载更新的 和(或)复原的数据和(或)代码可以实现上述过程。如果出现上述的 过程和/或信息禁用和/或破坏事件,为重新初始化RTC 528,电子设备 600可请求与管理员、金融票据交换所、和(或)分发者进行一次安全 的VDE通信。在此之前,SPU 500的某些或所有安全过程不得运行。

最好提供一种机制以便对RTC 528进行设置和(或)同步。在较 佳实施例中,当VDE电子设备600与另外的VDE设备之间发生通信 时,在授权为“高级的”、有控制权一方的控制下,可将RTC 528的 输出与受控RTC 528的输出时间比较。一旦出现误差将采取适当措施, 包括:重新设置参加通信的“低级的”受控一方的RTC 528。

SPU加密/解密机522

在较佳实施例中,SPU加密/解密机522提供专用硬件(如硬件状 态机),以迅速有效地对数据进行加密和(或)解密。在某些实现中, 加密/解密功能可以由微处理器520在软件控制下来承担,但是设置专 用加密/解密硬件机522通常提高性能。如果需要的话,微处理器520 可以包含处理器电路和专用加密/解密逻辑,它们被集成在同一电路布 局中,从而比如可以最佳地共享一个或多个电路元件。

通常最好采用具有计算高效性但又高度安全的“批量”加密/解密 技术来保护大多数由SPU 500处理的数据和对象。最好使用极为安全的 加密/解密技术作为一种方式,对正在建立通信信道的电子设备600的 身份进行验证,并保障被传送的许可、方法和管理信息的安全性。在较 佳实施例中,加密/解密机522含有对称密钥加密/解密电路(如DES, Skipjack/Clipper,IDEA,RC-2,RC-4等等)和反对称(非对称) 或公开密钥(“PK”)加密/解密电路。公开/私有密钥加密/解密电路 主要作为一种方式来保障SPU 500与VDE管理员以及其它处于VDE 安全子系统间的电子设备600之间通信的安全性。对称密钥加密/解密 电路可用来“批量”地加密和解密保存于SPU 500所在电子设备600 的二级存贮器662中的大多数数据。该对称密钥加密/解密电路也可用 来加密/解密保存于VDE对象300中的信息内容。

DES或公用/私有密钥方法可用于所有加密功能。在另一个实施例 中,除DES和公用/私有密钥方法之外的其它加密和解密方法可用于各 种有关加密的功能。例如,可用其它类型如使用相同密钥进行加密和解 密的对称加密/解密技术来代替DES加密和解密。较佳实施例可以支持 多种加密/解密技术,这些技术使用了加密/解密机522中的多个专用电 路,并且(或者)使用了SPU 500中的处理结构。

模式匹配机524

可选的模式匹配机524可提供专用硬件用以完成模式匹配功能。 SPU 500可以执行的一种功能是对VDE对象和其它项进行有效性检查/ 验证。有效性检查/验证经常涉及对长数据串进行比较,以判断它们是 否按照预定方式匹配。另外,某些使用形式(如被访问元素的逻辑和/ 或物理(连续)相关性)可能需要搜索长数据串,以寻找某些位模式或 其它与有意义的模式相关的量度。尽管可以由SPU微处理器520在软 件的控制下进行模式匹配,而提供专用硬件模式匹配机524将加速模式 匹配的过程。

压缩/解压缩机546

SPU 500中可含有可选的压缩/解压缩机546用以压缩和(或)解压 缩VDE目标300中保存或发布的信息内容。压缩/解压缩机546可以采 用硬件电路来实现一种或多种压缩算法,从而提高压缩/解压缩操作的 性能。如果不用硬件电路,则要使用运行于微处理器520上或SPU 500 之外的软件来进行压缩/解压缩操作。在视像或声音之类的数据发布 时,解压缩有重大意义,这是因为这类数据在发布之前通常是被压缩 的,而其解压速度又是很重要的。在某些情况下,将供使用监视目的所 用的信息(如记录分隔符或其它分界符)由一个压缩层加以隐藏,该压 缩层在SPU内部检测和使用上述信息之前必须被除去。

随机数发生器542

可选的随机数发生器542可提供专用硬件电路,用以产生随机数 (例如从量子噪声之类的、本来就无法预知的物理过程中产生随机 数)。这种随机数在创建加密密钥或唯一的标识符时、或在伪随机数序 列生成过程的初始化时特别有用。随机数发生器542可以产生合适长度 的数值,包括每次提供小至一个位的数值。通过将随机数发生器542产 生的数值串接在一起便可以构造任意大小的随机数。用随机数发生器 542产生随机数密钥和种子,再通过加密/解密机522或SPU 500中的加 密算法对之进行循环加密,就可以产生具有强的保密特性的伪随机数序 列。这种序列可以用于私有头信息,以阻止通过加密分析手段来推断密 钥。

运算加速器544

SPU 500中可设有一个可选的、采用硬件电路形式的运算加速器 544,它可以快速地完成数学运算,例如涉及大数的乘法和指数运算。 可由(举例来说)微处理器520或加密/解密机522发出执行这些运算 的请求,以协助完成进行特定非对称加密/解密运算所需的计算。该运 算加速器是此项技术的熟练人员所熟知的。再某些实现中,可以省去单 独的运算加速器544,而所有必需的运算均可以在软件的控制下由微处 理器520完成。

DMA控制器526

DMA控制器526控制信息在地址/数据总线536上传输,而无须要 求微处理器520去处理每个单独的数据传输。典型地,微处理器520可 向DMA控制器526写入目标和目的地地址以及需传输的字节个数,然 后DMA控制器526可自动地在SPU 500的部件之间(如:从ROM 532 到RAM 534、在加密/解密机522和RAM 534之间、在总线接口部件 530和RAM 534之间,等等)传输一块数据。DMA控制器526可以 含有多个通道以同时处理多个传输。在某些实现中,可省去单独的DMA 控制器526,而所有必需的数据传输均可在软件的控制下由微处理器 520完成。

总线接口部件(BIU)530

总线接口部件(BIU)530使信息穿过安全屏障502在SPU 500 和外界之间进行传送。图9所示的BIU 530加上适当的驱动软件可构成 图6所示的“设备链”510。在较佳实施例中,总线接口部件530可能 根据USART或PCI总线接口进行设计。在本例中,BIU 530将SPU 500 与图8所示的电子设备系统总线653相连。经过设计,BIU 530禁止对 SPU 500内部部件及其内容的未授权访问。其实现方法是:BIU 530只 允许与SPU 500相关联的信号被运行于微处理器520中的控制程序所处 理,而不支持对SPU 500内部部件的直接访问。

内存管理部件540

内存管理部件(MMU)540如果存在的话,则对内存管理和虚拟 内存管理功能提供硬件支持。它也可以通过对安全执行空间实行强制性 硬件隔离来提高安全性(例如,禁止不甚可信的任务修改较为可信的任 务)。下面将结合讨论SPU 500所支持的安全处理环境(“SPE”) 503的体系结构,对MMU 540进行更详细地说明。

MMU 540也可以在硬件层次提供与内存管理有关的支持功能,如 地址映射。

SPU存贮器体系结构

在较佳实施例中,SPU 500使用3种通用类型的存贮器:

(1)内部ROM 532;

(2)内部RAM 534;及

(3)外部存贮器(通常为宿主电子设备提供的RAM和/或盘)。

SPU 500内部的ROM 532和RAM 534提供了安全的操作环境和 执行空间。由于成本限制、芯片制造规模、复杂度以及其它限制,在 SPU 500中不可能提供充足的存贮器以存贮SPU需以安全方式进行处 理的所有信息。由于SPU 500内部可以包含的ROM 532和RAM 534 具有容量的实际限制,SPU 500可以将信息保存在外部存贮器中,并根 据需要将该信息移入或移出其安全的内部存贮器空间。在此情况下,通 常必须将SPU执行的安全处理步骤分成小块的、经过安全封装了的单 元,而这些单元可能被“页调入”或“页调出”有限可用的内部存贮器 空间。SPU 500外部的存贮器可能没有安全性。由于外部存贮器可能没 有安全性,SPU 500可以首先对代码和其它信息进行加密并加入密封 码,然后再保存到外部存贮器中。类似地,SPU 500通常必须首先对取 自外部存贮器中的代码和其它信息进行解密,然后再根据该信息进行处 理(如执行)。在较佳实施例中,针对SPU 500中可能的存贮器限制, 有两种通用的解决途径。在第一种情况下,小块的、经过安全封装了的 单元代表安全数据库610中所包含的信息。在第二种情况下,上述单元 可以代表被保护的(如被加密的)虚拟内存页。尽管虚拟内存页可以对 应于保存于安全数据库610中的信息单元,而在本例的SPU存贮器体 系结构中并不要求如此。

下面将对三种SPU存贮器资源进行详细说明。

SPU内部ROM

SPU 500的只读存贮器(ROM)532或具有类似功能的设备为特 定程序以及其它信息提供了非易失性的内部安全存贮。例如,ROM 532可能保存“核心”程序,如SPU控制固件508,或者在需要的情况 下保存加密密钥信息和某些重要的“加载模块”。“核心”程序、加载 模块信息和加密密钥信息启动对SPU 500某些基本功能的控制。可以在 ROM 532中装入一些至少部分依赖于设备配置的组成部分(如POST、 存贮器分配模块,以及调度模块),以及另外一些经确定为特定安装和 应用所需要的加载模块。

在较佳实施例中,ROM 532可以含有带掩模的ROM 532a和 EEPROM以及(或者)等价“快速”存贮器532b。EEPROM或快速 存贮器532b用来保存需要更新和/或初始化的项,如特定加密密钥。提 供EEPROM和/或快速存贮器532b的另一个好处是:可以根据特定位 置的典型使用情况,对始终保存在SPU 500中的任何加载模块和库函数 进行优化。尽管这些项也可以保存在NVRAM 534b中,但EEPROM 和/或快速存贮器532b可能更廉价一些。

带掩模的ROM 532a可能比快速存贮器和/或EEPROM 532b更为 廉价,它可用来存贮SPU软件/固件的永久性部分。这些永久性部分可 以包含硬件部件如RTC 528、加密/解密机522、中断处理器、密钥发 生器等的接口代码。操作系统的某些部分、库调用、库函数以及由SPU 500提供的许多核心服务也可以存贮在掩模ROM 532a中。另外,某些 较为常用的执行代码也比较适合存入掩模ROM 532a中。那些需要被 更新或者在下电后应该从SPU 500中消失的信息不应存贮在掩模ROM 532a中。

在某些情况下,RAM 534a和/或NVRAM 534b(NVRAM 534b 可以是(举例来说)被一直供电的传统RAM)可以至少部分地充当 ROM 532的角色。

SPU内部RAM

SPU 500的通用RAM 534与其它部件一道为安全过程提供了安全 的执行空间。在较佳实施例中,RAM 534由不同类型的RAM组成, 例如,这些RAM可以是高速RAM 534a和NVRAM(“非易失性” 的RAM)534b的组合。RAM 534a可以是易失性的,而NVRAM则 最好由电池供电,或采用其它方法使之具有“非易失性”(即在下电后 其内容不会丢失)。

高速RAM 534a存贮需要执行的活跃代码及相关数据结构。

NVRAM 534b最好保存在SPU 500与VDE管理员要进行通信的一 个初始化过程中预加载的某些密钥和概要数值,它也可以存贮与SPU 500操作有关的、可变或正在变化的信息。基于安全的原因,某些特别 敏感的信息(例如某些加载模块,以及某些加密密钥的相关信息如内部 产生的私有密钥)需要经常装入SPU 500或由SPU 500内部产生,但 是,一旦被装入或内部产生,这些信息绝不能离开SPU。在较佳实施 例中,SPU 500非易失性随机访问存贮器(NVRAM)534b可以用来 安全地保存这种特别敏感的信息。SPU 500也用NVRAM 534b来保存 那些可能经常改变的、但在下电或电源故障时最好又不应丢失的数据。

NVRAM最好是一个快速存贮器阵列,但也可以是电可擦除可编程 只读存贮器(EEPROM)、静态RAM(SRAM)、磁泡存贮器、三 维全息或其它光电存贮器或诸如此类的存贮器、或任何其它可写的(如 可随机访问的)、具有非易失性的存贮器,这些存贮器还应具有足够高 的速度,并且价格低廉。

SPU外部存贮器

SPU 500可以将某些信息存贮在SPU外部的存贮设备中。电子设 备600的存贮器如果可用的话也可以用来支持SPU 500软件中任何设备 外部部分。允许SPU 500使用外部存贮器可能带来某些好处。作为一个 例子,通过使用宿主电子设备600中的非易失性读/写存贮器(如RAM 656和/或ROM 658的非易失性部分),可以减少SPU 500内部存贮器 的容量。

这种外部存贮器可用来存贮SPU程序、数据和/或其它信息。例如, 一个VDE控制程序可以至少部分地被加载到存贮器中,并在执行前首 先传送到SPU 500中进行解密。该控制程序可以被重新加密并传回外部 存贮器进行保存,留待SPU 500以后执行。SPU 500可以将“核心” 程序和/或部分或全部非核心的“加载模块”保存在其外部存贮器中。 由于安全数据库610可以相对较大,SPU 500可以将部分或全部安全数 据库保存在外部存贮器中,并且在需要的时候将某些部分调进SPU 500。

如上所述,SPU 500的外部存贮器可以不具安全性。因此,当需要 确保安全性的时候,SPU 500必须一方面首先对安全性信息进行加 密,然后再将该信息写入外部存贮器中;另一方面首先对取自外部存贮 器的安全性信息进行解密,然后再使用该信息。由于该加密层依赖于 SPU 500中的安全过程和信息(如加密算法和密钥),所以它有效地“延 伸”了SPU安全屏障502,从而保护了SPU 500存贮在其外部存贮器 中的信息。

SPU 500可以使用各种不同的外部存贮器。例如,外部存贮器可以 包括:诸如磁盘之类的电子设备二级存贮器652、外部EEPROM或快 速存贮器658、以及/或者外部RAM 656。外部RAM 656可以包括: 外部的非易失性(如持续供电的)RAM和/或高速缓存RAM。

使用SPU 500本地的外部RAM可以显著地提高对SPU外部所保 存信息的访问速度。例如,外部RAM可以用来:

●首先缓存内存图象页和数据结构,再将之保存到快速存贮器或 外部硬盘(假设在发生严重电源或系统故障时需要向快速存贮器或外部 硬盘传送数据)。

●为VDE对象300输出的数据提供加密和解密缓冲区。

●高速缓存目前正在被使用的“交换块”和VDE数据结构,作为 向SPU 500提供安全虚拟内存环境的一个方面。

●高速缓存其它信息,例如用来减少SPU访问二级存贮器652的 频率,以及/或者为其它目的。

双端口外部RAM在提高SPU 500性能方面尤其有效,原因在于它 可以减少SPU总线接口部件530和SPU微处理器520的数据移动开 销。

使用SPU 500本地的外部快速存贮器可以显著地提高对实际上所 有数据结构的访问速度。由于大多数可用的快速存贮设备写入寿命有 限,快速存贮器要考虑在快速存贮器的使用寿命期中需要进行多少次写 入操作。因而,不主张用快速存贮器来保存那些需要频繁写入的临时内 容。如果外部RAM具有非易失性,那么向快速存贮器(或硬盘)传输 数据可以是不必要的。

SPU 500使用的外部存贮器可以含有两种类型:

SPU 500专有的外部存贮器

与电子设备600共享的存贮器

对于某些VDE实现,与CPU 654或电子设备600的其它部件共享 存贮器(如电子设备的RAM 656、ROM 658和/或二级存贮器652) 可以是一种最廉价的方法用来保存VDE安全数据库管理文件610和需 要保存在SPU 500外部的信息。用以完成通用文件存贮功能的宿主系统 硬盘二级存贮器652也可用来存贮VDE管理文件610。可以使SPU 500 对外部存贮器具有排它的访问权(例如,通过BIU 530提供的局部总线 高速连接),还可以同时提供专有的和共享的外部存贮器。

上面对电子设备600一个例子的硬件配置进行了说明。下面将描述 由较佳实施例提供的电子设备600软件体系结构的一个例子,包括较佳 实施例“权利操作系统”(“ROS”)602的结构和操作。

权利操作系统602

较佳实施例中的权利操作系统(“ROS”)602是一个紧凑的、 安全的、事件驱动的、基于服务的、面向“部件”的、分布多处理操作 系统环境,它将VDE信息安全控制信息、部件和协议以传统的操作系 统概念集成在一起。象传统操作系统一样,较佳实施例提供的ROS 602 是一段程序,它管理计算机系统中的硬件资源,并将管理功能延伸至输 入和/或输出设备,包括通信设备。同时,也类似于传统操作系统,较 佳实施例ROS 602提供了一致的一组基本功能和抽象层,用来隐藏具 体硬件实现之间的差别和有关实现的许多复杂细节。除了许多或大多数 操作系统所具有的这些特征之外,ROS 602提供了其它操作系统所不 具备的安全VDE交易管理和其它先进特性。下面是一个非穷举的列 表,它列举了较佳实施例ROS 602提供的部分先进特性。

标准接口提供了一致的基本功能集

简化了编程

相同的程序可以运行于许多不同的平台上 事件驱动

便于功能分解

可扩展

支持状态转换和/或面向进程的事件

简化了任务管理

简化了进程间通信 基于服务

支持简化的和透明的可伸缩性

简化了多处理器支持

隐藏了机器相关性

便于网络管理和支持

基于部件的体系结构

基于可独立传送的安全部件的处理

处理控制的部件模型支持不同的串行步骤,这些步骤可根据需 求重新配置

可以增加、删除和修改部件(需经许可)

针对预定义的和用户定义的应用事件的全面控制信息

事件可由独立的可执行程序进行单独控制 安全

安全的通信

安全的控制功能

安全的虚拟内存管理

信息控制结构受到保护而不致泄露

数据元素受到确认、关联和访问控制

部件被单独加密和确认

部件是紧密相关的,从而防止对元素的未授权使用

控制结构和安全化的可执行程序在使用之前首先经过确认,从 而防止了破坏

在I/O层集成了安全措施

提供了发布时的快速信息解密

支持安全的商业交易网络

灵活的密钥管理特性

可高度伸缩于多种不同平台之间

支持多处理器环境中的并行处理

支持多个相互协作的处理器

可以支持任意数量的主机或安全处理器

控制结构和核心可以被很容易地移植到各种主平台以及目标平 台中的不同处理器上,而无须进行重新编译。

支持远程处理

可使用远程过程调用以实现内部的OS通信 高度的可集成性

可以作为操作系统的附加层与宿主平台高度地集成在一起

允许使用位于传统OS平台之上的一个OS层,对安全化的部件 和信息进行非安全的存贮

可以与宿主操作系统无缝地集成在一起,从而为交易管理和信 息内容访问提供了一个公共使用模式

集成可以采取多种形式:用于桌上型计算机的操作系统层(如 DOS、Windows、Macintosh);用于网络服务的设备驱动程序和操 作系统接口(如Unix和Netware);以及用于“低端”顶置设备的专 用部件驱动程序,以上是其中的一些例子

可以与传统的和实时的操作系统集成在一起 分布性

提供控制信息的分布和互换控制信息和机制

支持受控进程在分布式异步配置中任何VDE节点上的有条件 执行

分布式环境中的受控权利分派

支持处理和控制链

为分布式的、偶尔连接但其它情况下异步的连网数据库提供了 管理环境

实时及与时间无关的数据管理

支持“代理”进程 透明性

可以无缝地集成进现有的操作系统中

可以支持不是专门为使用它编写的应用 网络友好性

内部OS结构可以使用RPC分配处理

可将子网作为单个节点或独立地进行无缝操作

有关操作系统的一般背景知识

“操作系统”提供了管理计算机系统资源的控制机制,从而允许程 序员更加方便地创建计算机系统的应用。为此,操作系统提供了通用的 功能,并确保在(可能(举例来说)由不同厂家生产的)不同计算机硬 件和体系结构之间的兼容性。操作系统还使得计算机“外部设备”生产 厂家更加方便地向计算机生产厂家和用户提供兼容设备。

计算机系统通常由若干不同硬件部件组成。这些硬件部件包括如:

一个中央处理单元(CPU),用来执行指令;

一个主存贮器单元阵列(如“RAM”或“ROM”),用来保存 供执行的指令,以及被这些指令所作用的、或充当这些指令的参数的数 据;以及

一个或多个二级存贮设备(如硬盘驱动器、软盘驱动器、CD-ROM 驱动器、磁带机、读卡机或“快速”存贮器),该设备被组织成反映命 名的元素(“文件系统”),用来存贮主存贮器单元的映像。

大多数计算机系统还含有输入/输出设备,如键盘、鼠标、显示系 统、打印机、扫描仪和通信设备。

为了使CPU的执行功能与可用的RAM、ROM和二级存贮设备 组织在一起,也为了向程序员提供通用功能,通常与其它部件一起包含 一段称为“操作系统”的软件。通常如此设计该段软件,即使之在计算 机系统上电并且硬件诊断完成之后开始执行。此后,所有对CPU、主 存贮器和二级存贮设备的使用通常都由该“操作系统”软件进行管理。 大多数计算机操作系统还通常含有将其管理功能延伸至I/O及其它外 部设备的机制,包括与这些设备相关的通用功能。

通过利用操作系统对CPU、存贮器和外部设备进行管理,可提供 出一致的一套基本功能和隐藏硬件细节的抽象层,从而允许程序员更加 方便地创建复杂的应用。另外,用操作系统管理计算机的硬件资源,可 以使得不同生产厂家之间在设计上和设备要求上的许多差别得到隐 藏。此外,可以更加方便地与其它具有相同操作系统的计算机用户共享 应用程序,而这只需在支持不同厂家的基本硬件和外部设备方面投入较 少的工作。

ROS 602是一个具有显著优点的操作系统

ROS 602是一个“操作系统”。它管理电子设备600的资源,并提 供通用的功能集合供程序员为电子设备编写应用608。较佳实施例中的 ROS 602对SPU 500中的硬件(如CPU、存贮器、安全RTC、以及 加密/解密机)进行管理。ROS也对电子设备600的一个或多个通用处 理器中的硬件(如CPU和存贮器)进行管理。ROS 602还管理其它电 子设备硬件资源,如与电子设备相连的外部设备。例如(参看图7), ROS 602可以管理键盘612、显示器614、调制解调器618、盘驱动器 620、打印机622、扫描仪624。ROS 602还可以管理安全数据库610 以及用来存贮安全数据库610的存贮设备(如“二级存贮器”652)。

ROS 602支持多处理器。较佳实施例中的ROS 602支持任意数量 的本地和/或远程处理器。至少可以支持两种类型的处理器:一个或多 个电子设备处理器654,和/或一个或多个SPU 500。宿主处理器CPU 654可以提供存贮、数据库和通信服务。SPU 500可以提供加密和安全 化进程执行服务。由ROS 602所支持的多种控制和执行结构可以要求: 对控制信息要在可控制的执行空间中进行处理。这种可控制的执行空间 可以由SPU 500提供。附加的宿主和/或SPU处理器可以提高处理效率 和/或能力。ROS 602可以(如通过网络或其它通信链路)访问、协调 和/或管理电子设备600的其它远程处理器,以提供更多的处理器资源 和/或能力。

ROS 602是基于服务的。在较佳实施例中,通过使用“远程过程调 用”(“RPC”)内部处理请求结构,把利用宿主处理器654和/或安 全处理器(SPU 500)所提供的各项ROS服务链接在一起。相互协作 的处理器可使用RPC机制请求进程间服务,RPC机制具有最小的时间 依赖性,并且可以分布于网络中众多主机的相互协作处理器之中。ROS 602提供的多处理器体系结构易于扩展,以便支持任意数量的主机和安 全处理器。这种可扩展性带来了高度的可伸缩性。ROS服务还允许在 不同设备上实现不同的功能。例如,对于那种只服务一个用户的、使用 水平较低的小型设备来说,在其上实现数据库服务所采用的技术可以大 大不同于那种可服务大量用户的、使用水平较高的大型设备。这是可伸 缩性的另一个方面。

ROS 602提供了分布式处理环境。例如,它可以如满足用户请求所 要求的使信息和控制结构自动、安全地来往于各个地点之间。基于ROS 602的分布式处理特征,VDE节点之间的通信可以包括如上所述的进 程间服务请求。ROS 602支持任意VDE节点中受控处理器的有条件和 /或状态依赖执行。进程的执行位置以及所使用的控制信息或可位于本 地,或可远程访问,或者由进程携带以支持在远程系统中执行。

ROS 602提供控制信息的分布,包括如控制结构的分布,用以支持 在远程环境中运行“代理”(agent)。因而,ROS 602提供了一套机 制,可以将执行和/或信息控制作为对于“代理”进程出现的请求的一 部分进行传递。

如果需要,ROS 602可以独立地通过低带宽连接通路将控制信息 分布,这种低带宽连接通路可以是也可以不是“实时”的连接。较佳实 施例中的ROS 602具有“网络友好性”,可以用网络协议的任意层来 实现。电子邮件和直接连接是其中的一些例子,它们大约实现在ISO 模型的“第5层”。

ROS 602的分布进程(以及对分发信息的相关审核)是一个受控事 件,它本身使用上述控制结构。这种“映像式”分布处理机制允许ROS 602以受控的方式安全地分发权利和许可,并且有效地限制信息内容的 使用特征。这种分布式环境中的受控权利分派以及ROS 602为支持该 方式所采用的安全处理技术具有显著的优点。

ROS 602中的某些控制机制是“交互”的。交互控制机制将一个或 多个控制部件放置于一个或多个地点,而该控制部件以受控方式与同一 或不同地点处的一个或多个部件交互作用。例如,位于用户一方的、与 对象信息内容相关的使用控制可以在分发者一方含有交互控制,该分发 者一方管理上述使用控制的分布、使用控制的审核以及与使用控制相关 的用户请求处理逻辑。位于用户一方的使用控制(除了对使用的一方面 或多方面进行控制以外)可以为分发者做审核准备,并对有关使用控制 的请求进行格式化,供分发者处理。位于交互控制任何一端的进程都可 以进一步被其它进程所控制(例如,分发者可以被使用控制机制所产生 的数量的预算所限制)。交互控制机制可以延伸及许多地点和许多层次 (例如从制作者到分发者,到用户),并且可考虑到任何关系(例如, 制作者/分发者、分发者/用户、用户/用户、用户/制作者、用户/制作者/ 分发者,等等)。在VDE 100中,交互控制机制在表示分布式环境中 的关系和协定方面有许多用途。

ROS 602是可伸缩的。ROS 602控制结构和核心中的许多部分不 必重新编译即可方便地移植到各种宿主平台上。如果得到授权允许这种 活动的话,任何控制结构都可以被分布(或重新分布)。ROS 602中 可执行程序的引用可在目标平台内移植。ROS 602的不同实例使用不 同的资源来执行该引用。例如,ROS 602的一个实例可以使用SPU 500 来执行某个任务,同时ROS 602的另一个实例可以使用宿主处理环境 来执行相同的任务,该宿主处理环境运行于受保护的存贮器中并用软件 来仿真SPU。ROS 602的控制信息同样是可移植的。在许多情况下事 件过程结构都可以在机器和主机平台间进行传送,这与在单个计算机内 部各相互协作的处理器之间进行传送一样容易。具有不同使用级别和/ 或ROS 602功能可用资源的设备可以采用非常不同的方式来实现上述 功能。如果没有足够资源的话,某些服务就可以被整个省去。如上所述, ROS 602“知道”哪些服务是可获得的,以及在任何给定事件的前提下 如何进行进一步的处理。在资源缺乏或不足的情况下,并非所有的事件 都是可处理的。

ROS 602是基于部件的。较佳实施例ROS 602所提供的许多功能 都可能是基于“部件”的,“部件”可以(例如,在适当的安全条件和 授权前提下)被安全独立地传送,可被替换,并且可被修改。另外,“部 件”本身可以由可独立传送的元素构成。ROS 602可以(使用较佳实 施例提供的、名为“通道”的结构)在执行时刻将这些元素装配到一起。 例如,由SPU 500执行的“加载模块”可以引用一个或多个“方法核心”、 方法参数以及其它相关的数据结构,而ROS 602可以将上述这些元素 收集和组装在一起以便执行诸如计帐或计量之类的任务。不同的用户可 以拥有不同的元素组合,并且在适当的授权之下,某些元素可以由用户 来定制。这个特征可以提高灵活性,允许重用元素,并且还具有其它优 点。

ROS 602具有高度安全性。ROS 602提供了一套机制,用来保护 信息控制结构,使之不被最终用户和管道主机所泄露。利用牢靠的加密 和验证机制,ROS 602可以对信息、VDE控制结构和可执行控制程序 进行保护。这些加密和验证机制经过设计可充分抵御未探测到的破坏。 ROS 602对存贮在二级存贮设备652中的信息进行加密以防止破坏。 ROS 602还分别加密和验证其各种部件。ROS 602将控制和数据结构 部件关联在一起,以防止对元素进行未授权的使用。这些特征允许ROS 602独立地分布元素,而且还允许将VDE功能604与非安全的“其它” OS功能606集成在一起。

较佳实施例所提供的ROS 602将诸如访问控制表(ACL)结构之 类的传统功能延伸到了用户和进程定义的事件,包括状态转移。ROS 602可以向预定义和用户定义的应用事件提供全面的控制信息。这些控 制机制包括“通行/禁行”许可,还包括可选的、特定于事件的可执行 程序,这种执行程序使得对事件进行的处理和/或控制具有完善的灵活 性。这样的结构允许事件被单独控制,于是(举例来说)可使用独立的 可执行程序进行计量和预算处理。例如,ROS 602扩展了ACL结构以 控制任意粒度的信息。传统的操作系统在文件或资源级提供了静态的 “通行-禁行”控制机制;ROS 602采用通用方法并使用灵活的控制结 构,将上述控制概念从最大的元素扩展到最小的子元素。ROS 602可 以(举例来说)控制从文档文件中打印出单一的一段。

较佳实施例提供的ROS 602允许对管理各个部件的控制信息进行 安全的修改和更新。控制信息可以以诸如方法选项之类的模板格式提供 给最终用户。最终用户于是可以定制由分发者或信息内容制作者提供的 准则中所使用的实际控制信息。对现有控制结构的修改或更新最好是一 个可控制的事件,该事件受到审核和控制信息的控制。

较佳实施例中的ROS 602在使用控制结构和安全化可执行程序之 前首先对之进行验证。该验证能够确保控制结构和可执行程序未受最终 用户的破坏。该验证还使得ROS 602能够安全地实现包括文件段及其 它操作系统结构在内的部件。较佳实施例中的ROS 602将安全性措施 集成在操作系统的I/O层(位于访问层之下),并提供了发布时刻的“快 速”信息解密。这些特性允许使用位于传统操作系统平台之上的一个 OS层对ROS 602的安全化部件和信息进行非安全化的存贮。

ROS 602可以作为操作系统的附加层与宿主平台高度地集成在一 起。于是,ROS 602的创建可以通过对现有操作系统进行“添加”来 实现。它包括将VDE“添加部分”在设备驱动程序和网络接口层上挂 接到宿主操作系统。作为另一种选择,ROS 602可以含有一个全新的 操作系统,该操作系统将VDE功能和其它操作系统功能集成在一起。

实际上,至少有3种通用的方法,用来在可能基于现有操作系统前 提下将VDE功能集成进一个新操作系统中从而创建权利操作系统 602。这3种方法是:

(1)根据VDE交易管理的要求重新设计操作系统;

(2)将VDE API功能调用编译进一个现有的操作系统中;

(3)将一个VDE解释程序集成进一个现有的操作系统中。

在设计新操作系统时,或计划对现有操作系统进行重大升级时,第 一种方法可能是最有效的适用方法。可以将VDE功能所提供的交易管 理和安全要求添加到用来设计新操作系统的设计要求列表中,这样就能 够以一种优化的有效方式将“传统”操作系统功能与VDE功能集成在 一起。例如,负责设计操作系统新版本或实例的工程师可以将VDE计 量/交易管理的要求补充到其它一些他们用以形成设计方法、规范和实 际实现的要求(如果有的话)之中。这种方法通过在贯穿整个系统设计 和实现过程中穿插进计量/交易管理功能,可以实现VDE功能的无缝集 成。

第二种方法将涉及到使用现有的API(应用程序员接口)集合, 并且把对操作系统代码的调用纳入VDE功能调用中。这类似于将目前 的WindowS操作系统与DOS集成的方法,其中,DOS充当Windows 操作系统的启动点和重要核心支撑部分两重角色。该方法还可提供高度 无缝的集成(尽管“无缝”的程度不象第一种方法那样强)。该方法的 优点在于:有可能花费不大就可以将计量/交易管理功能纳入操作系统 的一个新版本或实例中(通过使用API所含有的现有代码,以及借鉴 API功能方法的设计思想来影响纳入了计量/交易管理功能的元素的设 计)。

第三中方法区别于前两种的地方在于它没有将有关计量/交易管理 和数据安全性的VDE功能直接纳入操作系统代码中,而是向操作系统 添加了通用化的新功能,用来执行计量/交易管理功能。在这种情况下, 含有计量/交易管理功能的解释程序将采用“独立”的方式与其它操作 系统代码集成在一起。该解释程序可以根据脚本或其它输入来决定应该 执行哪些计量/交易管理功能,以及按什么顺序或在什么情况或条件下 执行。

除了将VDE功能集成进电子设备操作系统中之外,也可以在传统 操作系统之上运行一个应用,使该应用提供某些可用的VDE功能。

ROS软件体系结构

图10是中的框图示意了较佳实施例提供的权利操作系统 (“ROS”)602的软件组织/体系结构示例。在该例中,ROS 602 含有:操作系统(“OS”)“核心”679、用户应用程序接口(“API”) 682、“重定向器”684、“截获器”692、用户通告/异常接口686、 以及文件系统687。本例中的ROS 602还含有一个或多个宿主事件处 理环境(“HPE”)655和/或一个或多个安全事件处理环境(“SPE”) 503(这些环境可通称为“受保护的处理环境”650)。

HPE 655和SPE 503是自包含的计算和处理环境,它们可以含有其 本身的操作系统核心688,操作系统核心688包含代码和数据处理资 源。给定的电子设备600可以含有任意数量的SPU 503和/或HPE 655。 HPE 655和SPE 503可以安全的方式处理数据,并为ROS 602提供安 全处理支持。例如,它们都可以根据一个或多个VDE部件组690来执 行安全处理,而且它们都可以向OS核心680提供安全处理服务。

在较佳实施例中,SPE 503是一个安全的处理环境,其中至少一部 分是由SPU 500所提供。因而,SPU 500提供了环绕SPE 503的硬件 的防破坏屏障502。较佳实施例中的SPE 503最好具有如下特征:

小且紧凑

可被加载进具有资源限制的环境,例如最小配置的SPU 500

可被动态地更新

可被授权用户扩展

可集成进对象或过程环境中

具有安全性

在较佳实施例中,HPE 655是一个安全的处理环境,它由除SPU 之外的其它处理器所支持,如电子设备CPU 654通用微处理器,或者 其它处理系统或设备。在较佳实施例中,由于HPE 655可以用软件来 提供本来由SPU硬件和/或固件所提供的部分或全部处理资源,在这个 意义上,可以认为HPE 655是用来“仿真”SPU 500的。在本发明的 一个较佳实施例中,HPE 655是全功能的,并且与SPE 503完全兼容— 这就是说,HPE 655可以处理SPE 503可处理的每个或所有服务调 用,这样,从外界接口的角度来看,SPE和HPE是“插接兼容的”(plug compatible)(例外情况是,HPE所提供的安全性可能不及SPE)。

HPE 655可以有两种类型:安全的和非安全的。例如,为使电子设 备600能够使用快速通用处理器或计算机的全部资源从而有效地运行 非敏感性的VDE任务,可希望提供非安全的HPE 655版本。这种非安 全HPE 655版本的运行可以受ROS 602的一个实例的监管,而该ROS 602同时还含有一个SPE 503。采用这种方式,ROS 602可以在SPE 503 中运行所有安全进程,而只在HPE 655中运行那些无需安全性的进程, 但这些进程同时又可能要求使用(或满足高效运行而需要)由支持HPE 655的通用计算机或处理器所提供的、可能较多的资源。非安全的和安 全的HPE 655可以与安全的SPE 503一起运行。

(如图10所示)HPE 655可以带有基于软件的防破坏屏障674以 增加其安全性。这种基于软件的防破坏屏障674可以由运行于通用CPU 654中的软件来创建。这种“安全”的HPE 655可以被ROS 602用来 执行某些进程,这些进程虽然仍需要安全性,但可以不需要SPU 500 所提供的那种高安全性。在含有SPE 503和HPE 655两者的体系结构 中,这个特性将特别有益。SPE 503可以用来执行所有真正的安全处 理,而一个或多个HPE 655可以用来执行另外的安全(虽然可能不如 SPE安全)处理,HPE 655此处使用了电子设备600中可用的宿主处 理器或其它通用资源。这种安全的HPE 655可以提供任何服务。在较 佳实施例中,“通道处理”的某些特征看起来比较适合随时从SPE 503 转移到HPE 655中。HPE 655提供的基于软件的防破坏屏障674可以 有下面的实现方法,如:使用时间检查和/或代码修改等手段,使得利 用调试程序对含有核心688a部分和/或部件组690部分的代码进行单步 跟踪变得相当困难;对存贮设备(如硬盘、存贮器卡等)使用缺陷图而 形成内部测试值,从而阻止从HPE 655往其它电子设备600移动或复 制内容;使用在控制流中含有伪跳转及其它复杂流程控制的核心代码, 从而在一定程度上伪装内部处理过程,使之避免被反汇编或受到其它试 图揭示其处理细节的行为的影响;使用“自生成”代码(例如,基于余 弦变换的输出),这样一来,不再把详细的和/或完整的指令序列明确 地保存在存贮设备和/或活动存贮器中,而是在需要的时候生成这些指 令;使用那种基于运算参数而“打乱”了存贮单元的代码,而在这些存 贮单元中放有数据,这样就使得对这些数据进行操纵变得相当困难;使 用电子设备600所提供的任何软件和/或硬件内存管理资源,以“保护” HPE 655中的操作使之免受其它进程、操作等的破坏。尽管这种基于软 件的防破坏屏障674能够提供相当程度的安全性,它通常不如由SPU 500(至少部分)提供的基于硬件的防破坏屏障502安全。在诸如SPU 500所提供的那些硬件安全性措施的帮助下,安全性可以得到更有效地 加强,基于此原因(以及其它因素,如SPU 500的专用电路所带来的性 能提高),对于许多或大多数安全性较高的应用来说,最好至少提供一 个SPE 503。然而,对于那些可允许较低安全性和/或无力支付SPU 500 的应用来说,可以需要省去SPE 503,而所有的安全处理都要由执行于 通用CPU 654中的一个或多个HPE 655来代替执行。如果未向特定 VDE进程提供足够的安全性,那么可能就不允许这些进程在上述那种 降低了安全性的电子设备中执行。

只有那些完全在SPE 503(有时候也包括HPE 655)中执行的进 程才可能被看作是真正安全的。用来存贮和/或处理安全进程所使用的 代码和/或数据的存贮器以及SPE 503和HPE 655的其它外部资源只能 以加密的形式接收和处理这些信息,除非SPE 503/HPE 655可以保护 安全进程的代码和/或数据以避免遭受非安全进程的破坏。

较佳实施例中的OS“核心”679含有核心680、  RPC管理器732 和“对象开关”734。API 682、HPE 655以及SPE 503可以通过OS “核心”679相互传送“事件”消息。它们也可以使消息不经过OS“核 心”679而直接进行相互间的消息通信。

核心680可以管理电子设备600的硬件。例如,它可以提供适当的 驱动程序和硬件管理器以便与输入/输出和/或外部设备进行交互作用。 外部设备的例子有:键盘612、显示器614、其它设备如“鼠标”指示 设备和语音识别器613、调制解调器618、打印机622和网络适配器 672。核心680也可以负责初始加载ROS 602的其余部分,并且可以在 各种ROS任务执行时对之(及其底层相关硬件资源)进行管理。OS 核心680也可管理和访问安全数据库610和文件系统687。OS核心680 也可为应用608a(1)、608a(2)等以及其它应用提供执行时的服务。

RPC管理器732为核心680完成信息路由选择和/或资源管理/集 成。例如,它接收来自API 682、HPE 655和SPE 503的“调用”, 或选择合适的路由将“调用”送至API 682、HPE 655和SPE 503。

对象开关734可管理VDE对象300的创建、拆除及其它操纵。

较佳实施例中的用户通告/异常接口686(可以将之看作是API 682 的一部分或与该API相结合的另一个应用)在显示器614上提供了“弹 出式”窗口/显示。这可以使ROS 602直接与用户通信,而不必使需要 传递的信息经过应用608。对于非“VDE感知型”的应用,用户通告/ 异常接口686可以提供ROS 602与用户之间的通信。较佳实施例中API 682提供给应用608一个标准化的、具有文档说明的软件接口。API 682可以部分地把应用608产生的操作系统“调用”翻译成指定了“事 件”的远程过程调用(“RPC”)。  RPC管理器732可以将这些RPC 按照合适的路由发送至核心680或其它地方(如HPE 655和/或SPE 503,或远程电子设备600、处理器或VDE参与者)以供处理。API 682 也可以对RPC请求进行服务,其方法是将这些RPC请求发送到经过注 册负责接收和处理指定请求的应用608。

API 682提供了一个“应用编程接口”,该接口最好是标准化的且 具有文档说明。它提供了一组简明的函数调用,应用程序可使用这组函 数调用访问由ROS 602提供的服务。在至少一个优选例中,API 682 将包括两部分:VDE功能604的应用程序接口,以及其它OS功能606 的应用程序接口。这些部分可以融合在同一软件中,也可以是二个或多 个分离的软件部分(举例而言)。

某些应用,例如图11所示的应用608a(1),可以属于“VDE感知 型”的,于是它们可以直接访问API 682中的那两部分。图11A对此进 行了示例。“VDE感知型”应用可以(举例来说)包含对ROS 602的 明确调用,以便请求创建新的VDE对象300、对VDE对象的使用进行 计量、以VDE保护形式存贮信息等等。因此,“VDE感知型”应用 可以起动(在某些例子中还可以增强和/或扩展)由ROS 602提供的VDE 功能。另外,“VDE感知型”应用可以在用户和ROS 602之间提供更 直接的接口(如抑制或消除由用户通告/异常接口产生的“弹出式”显 示接口,取而代之的是一个集成了应用和ROS消息的、更加无缝的接 口)。

其它应用,例如图11B所示应用608b,可以属于非“VDE感知 型”的,因而它可能不“知道”如何直接访问由API 682所提供的VDE 功能604接口。为此,ROS 602可以含有一个“重定向器”684,而 “重定向器”684可以允许“非VDE感知型”应用608b访问VDE对 象300和函数604。较佳实施例中的重定向器684将发向“其它OS功 能”606的OS调用翻译成发向“VDE函数”604的调用。举一个简 单的例子,重定向器684可以截获发自应用608的“打开文件”调用, 然后判断要打开的文件是否位于VDE容器300之中,如果是的话,产 生适当的VDE函数调用,将之发向文件系统687,以便打开VDE容器 (也可能产生事件,将之发向HPE 655和/或SPE 503,以确定可能存 贮在VDE对象300中的文件的名字,建立与VDE对象300相关的控制 结构,执行对VDE对象300的注册等等)。本例中如果没有重定向器 684,那么“非VDE感知型”应用如608b就只能访问提供其它OS函 数606接口的API 682中的一部分,因而无法访问任何VDE函数。

重定向器684的这种“翻译”特性提供了“透明性”。它允许将 VDE函数以“透明”的方式提供给应用608(b),而使该应用无需陷入 有关生成一个或多个VDE函数604调用的复杂性细节之中。ROS 602 这一方面的“透明”特性至少有两个重要优点:

(a)它允许不是专门为VDE函数604编写的应用(“非VDE 感知型应用”)仍然可以访问关键的VDE函数;以及

(b)它减少了应用和ROS 602之间接口的复杂性。

由于第二个优点(减少复杂性)使应用编程人员能更容易地编写应 用,甚至可将“VDE感知型”应用608a(2)设计成使得某些对VDE函 数604的调用在“其它OS函数”调用层上被请求,然后由重定向器684 将之“翻译”成VDE函数调用(在这个意义上,可将重定向器684看 作是API 682的一部分)。图11c对此进行了示例。向VDE函数604 发出的其它调用则可以被直接发送,而无需经过重定向器684翻译。

回到图10,ROS 602还可以含有一个“截获器”692,“截获器” 692传送和/或接收一个或多个实时数据输入694(例如可以通过有线电 视电缆628产生这些数据输入),并适当地按照正确路由发送一个或多 个这种数据输入,与此同时对电子设备600所发送和/或接收的实时数 据进行“翻译”,从而为这类信息提供了类似由重定向器684所产生的 那种“透明性”(并且/或者它可以产生一个或多个实时数据输入)。

安全的ROS部件和部件组

如上所述,较佳实施例中的ROS 602具有基于部件的体系结构。 ROS VDE函数604可以基于分段的、可独立加载的可执行“部件组” 690。这些部件组690可以被独立安全地传递。较佳实施例中的部件组 690含有本身可独立传递的代码和数据元素。因此,较佳实施例中的每 个部件组690都包含可独立安全传递的元素,可以使用VDE安全通信 技术在VDE安全子系统之间传递这些元素。

这些部件组690是ROS 602所提供的基本功能单元。部件组690 经过执行可以完成操作系统或应用的任务。因而,可以将某些部件组 690看作是ROS操作系统602的一部分,而将其它部件组690看作是 操作系统支持之下运行的“应用”。象所有集成了“应用”和“操作系 统”的那些系统一样,上述整个系统的各部分之间的界限可以是非常模 糊的。例如,可以将某些通用的“应用”功能(如用来确定信息内容容 器结构和/或其它属性的功能)集成到操作系统中去。另外,某些“操 作系统”功能(如任务管理或存贮器分配)可由应用进行修改和/或替 换。较佳实施例ROS 602中的一个常用思路就是:部件组690提供用 户执行其预定任务所需的功能,这些功能中的一部分可以“类似应用”, 一部分可以“类似操作系统”。

部件组690最好设计成是容易分离的并且可以单独加载。ROS 602首先将各个元素装配成可执行的部件组690,然后再(例如在诸如 SPE 503和/或HPE 655之类的安全操作环境中)加载和执行该部件组。 ROS提供了元素标识和引用机制,该机制包含了必要的信息,用以在 执行前或执行中自动以安全方式将元素装配成部件组690。

用以形成部件组690的ROS 602应用结构和控制参数可由不同的 团体来提供。由于组成部件组690的各部件可以单独安全地递送,于是 这些部件便可以在不同时间并且/或者由不同团体来递送(“递送”可 能发生在一个本地VDE安全子系统内部,也就是说,用信息内容控制 信息链来控制参与者对已被修改的控制信息集合的制备,在此基础上, 通过使用控制信息的安全子系统,便可完成对部件独立安全的递送过 程)例如,信息内容制作者可以制作某个ROS 602应用,该应用规定 了在何种情况下VDE对象300所含信息内容才可被批准使用。该应用 可以引用其它团体提供的结构。这种引用(举例来说)可以采用如下的 控制过程:使用信息内容制作者的结构对用户行为进行计量;使用金融 提供者所创建/拥有的结构处理信息内容分发交易中的金融部分(如: 规定控制结构中必须出现的信用预算以建立信用值,规定必须由获得准 许者才能执行的审核过程,等等)。作为另一个例子,分发者可能把规 定了不同定价的不同数据元素传递给不同用户,从而实现对某一用户的 定价相对另一用户的定价更为优惠。这种支持多个团体可安全独立地传 递控制信息的特性对于电子商业来说是相当重要的,即定义信息内容和 /或设备控制信息集合,而该控制信息集合代表了一组独立团体的要 求。所述独立团体的例子有:信息内容制作者、其它信息内容提供者、 金融服务提供者、和/或用户。

在较佳实施例中,ROS 602部分地依据上下文参数(如对象、用 户)将可安全独立递送的元素装配成部件组690。因而(举例来说), ROS 602可以把不同元素安全地装配成不同的部件组690,以便使不同 的用户可以对同一VDE对象执行同一任务。类似地,ROS 602可把可 能含有一个或多个相同重用部件的不同元素集合装配成不同的部件组 690,以便使同一用户可以对不同VDE对象300执行同一任务。ROS 602所提供的部件装配机制是“递归”的,这是因为,部件组690可以 含有一个或多个部件“子组”,这些“子组”本身就是可被独立加载和 执行的部件组690。这些部件子组又可以包含一个或多个“子子组”。 通常,部件组690可以包含N层部件子组。

因此(举例来说),部件组690(k)可以含有部件子组690(k+1), 部件子组690(k+1)又可以含有部件子子组690(3)...这样继续下 去一直到N层子子组690(k+N)。ROS 602这种从其它部件组创建 部件组690的能力(举例来说)在代码/数据可重用性以及允许不同团 体管理整个部件中的不同部分等方面具有很大的优点。

较佳实施例中的每个部件组包含了不同的部件。图11D-11H是对 各种不同部件的抽象表示,这些部件可以被装配成图11I所示的部件组 690(k)。这些相同的部件可以按照不同方式进行组合(如部件数量 可以多一些或少一些)以形成不同的部件组690,从而提供完全不同的 功能表现。图11J抽象地示意了相同的部件以不同方式(如与添加部 件)组合在一起形成不同的部件组690(J)。部件组690(k)和690(j) 每个都含有一个共同的装置691,该装置与ROS 602定义的“通道” 594互锁在一起。“通道”594将部件组690装配在一起,并且成为它 们与ROS 602(其余部分)的接口。

ROS 602以安全的方式生成部件组690。如图11I和11J所示,组 成部件组690的不同元素可以是互锁的,这是在VDE参与者创建了这 些元素并且/或者限定了该部件组,使这些元素只能按照VDE参与者的 意图一起工作的意义上而言的。ROS 602含有安全保护措施,可防止 未经授权的人员修改和替换元素可以想象一个未经授权的人员制作了 一个新元素使之与图11D-11H中所示的某一元素具有相同的“形状”, 然后试图用此新元素替换原有元素。假设图11H中的某个元素用来规 定VDE对象300所含内容的使用价格,如果一个未经授权的人员能够 以他自己规定的“价格”元素来替换VDE信息内容分发者所规定的价 格元素,那么此人可以不使用信息内容分发者所希望的价格,而将价格 定为零。类似地,如果某一元素规定了一个电子信用卡,那么假如将之 替换成另一元素将会允许某人利用他人的(或一个不存在的)信用卡为 其使用行为进行付帐,这就会带来灾难性的后果。这些只是几个例子, 它们说明了ROS 602确保以安全方式创建某些部件组690的重要性。 ROS 602提供各种各样的保护措施以防止各种各样的“威胁”,从而确 保部件组690的安全处理和执行。

在较佳实施例中,ROS 602基于下列元素来装配部件组690:

许可记录(“PERC”)808;

方法“核心”1000;

加载模块1100;

数据元素(如用户数据元素(“UDE”)1200和方法数据元素 (“MDE”)1202);以及

其它部件组690。

简要地说,较佳实施例中的PERC 808是一个对应于某个VDE对 象300的记录,可用来为ROS 602标记出若干元素,利用这些元素ROS 可以装配出某个部件组690。于是PERC 808实际上含有一个“装配指 令列表”或者说一个“规划”,用来指定哪些元素602要被装配成部件 组,以及如何将这些元素连接在一起。PERC 808本身可以含有数据或 将要成为部件组690组成部分的其它元素。

PERC 808可以引用一个或多个方法“核心”1000N。方法核心 1000N可以定义基本的“方法”1000(如“控制”、“计帐”、“计 量”等)。

在较佳实施例中,方法1000是一组基本指令以及与基本指令相关 的信息,它提供上下文、数据、要求、和/或关系,以供执行和/或准备 执行基本指令之用。这些基本指令与一个或多个电子设备600的操作有 关。基本指令可以包括(举例来说):

计算机编程中的通用机器代码;以及由运行于计算机中的解释 程序或其它指令处理程序所使用的伪码;

与电子设备600一起用的、电子化表示的逻辑操作序列;

指令、源码、目标码、和/或伪码的其它电子化表示,这些在本 领域中都是众所周知的。

与所述基本指令相关的信息可以包括(举例来说)与基本指令内在 相关的数据,如一个用来标识基本指令加上其内部数据、地址、常数等 所形成联合体的标识符。该信息也可以(举例来说)包含下列一个或多 个信息:

标识相关基本指令及上述内部数据的信息,用于完成访问、关 联和/或验证等目的;

与基本指令和上述内部数据一同使用的、必要和/或可选的参 数;

定义与其它方法之间关系的信息;

可以含有数值、信息字段等的数据元素;

限定和/或定义了数据元素、基本指令和/或内部数据之间关系的 信息;

限定了与外部数据元素间关系的信息;

限定了内部的与外部的数据元素、方法等(如果存在的话)之 间关系的信息;

用于操作基本指令和内部数据的附加信息,该信息用于完成或 准备完成用户或方法的某项目的。在需要时它还包括附加的指令和/或 内部数据。

这种与某种方法相关联的信息可以部分或全部地与基本指令和内 部数据分开存贮。当分开存贮这些部件时,方法仍然可能含有其它信 息、以及基本指令和内部数据的一个或多个集合(之所以包含后者,是 因为上述其它信息可以引用基本指令和内部数据的一个或多个集合), 而不管上述基本指令和内部数据的一个或多个集合是否能在给定时刻 得到及时访问。

“事件代码”可以向方法核心1000提供参数,从而允许方法核心 1000以不同方式对不同事件做出响应例如,一个计量(METER)方 法为响应“使用”事件,可以将使用信息存贮在计量数据结构中。而同 一个计量(METER)方法为响应“管理”事件,可以将计量数据结构 报告给VDE票据交换所或其它VDE参与者。

在较佳实施例中,方法核心1000可以“包含”一个或多个“加载 模块”1100和一个或多个数据元素(UDE 1200,MDE 1202),这 种“包含”或者是明确的,或者是通过引用来实现。在较佳实施例中, “加载模块”1100是某个方法的一部分,该方法反映了基本指令和内 部数据。较佳实施例中的加载模块含有可执行码,也可以含有与该可执 行码相关的数据元素(“DTD”1108)。在较佳实施例中,加载模块 1100提供实际由硬件“执行”的程序指令,以完成由方法规定的进程。 加载模块可以包含或引用其它加载模块。

较佳实施例中的加载模块1100是模块化的,并且是“纯代码”, 这样一来就可以重入和重用单个加载模块。为了使部件690可被动态更 新,可允许在全局公用名字空间内对它们进行访问。从这些设计目标来 看,加载模块1100最好是较小的、具有纯代码(及纯类代码)特征的 模块,并且可以单独命名和寻址。一个单一方法可以提供不同的加载模 块1100,这些加载模块1100能够在不同的平台上完成相同或相似的功 能,这样可以使方法具有可伸缩性,并且/或者可以使之在多种不同电 子设备之间移植。

UDE 1200和MDE 1202可能存贮某些数据,将其作为可执行部件 组690的输入或输出(也可以存贮说明这些输入或输出的数据)。在较 佳实施例中,UDE 1200可以与用户有关,而MDE 1202可以与用户无 关。

图11E中的部件组690(k)含有方法核心1000、UDE 1200a和 1200b、MDE 1202、加载模块1100a-1100d、以及另一个部件组 690(k+1)。如上所述,PERC 808(k)定义了部件组690(k)的“装配指 令”,并可以含有或引用了要用来装配部件组的部分或全部部件之中的 一部分。

本例中的加载模块1000b之一本身含有多个加载模块1000c、 1000d。本例中的某些加载模块(如1000a,1000d)含有一个或多个 “DTD”数据元素1108(如1108a,1108b)。“DTD”数据元素 1108可以用来(举例来说)将MDE 1202和/或UDE 1200a、1200b中 数据元素报告给加载模块。另外,DTD 1108还可用来参与生成一个应 用部分,该应用部分可以把有关一个或多个加载模块1100或者其它部 件元素所需要和/或所处理的信息通知给用户。这种应用程序也可以含 有某些功能用来创建和/或处理UDE 1200、MDE 1202、或其它部件 元素、子组等等。

部件组690中的部件可以被重用,从而形成另外的部件组。如上所 述,图11F抽象地示意了用来装配部件组690(k)的相同部件如何经过重 用(例如,添加一些部件进来,这些部件由另一PERC 808(1)所提供的 另一“装配指令”集来指定)以产生另一个部件组690(1)。尽管部件组 690(1)由用来装配部件组690(k)的一些同样的部件构成,这两个部件组 却可以以完全不同的方式执行完全不同的过程。

如上所述,ROS 602提供了若干安全保护层以确保部件组690的 安全性。一个重要的安全层涉及确保某个部件组690的生成、加载和执 行都只能在诸如由SPU 500中所提供的那种安全执行空间内进行。采用 本地SPU 500所生成的密钥和/或分发者所提供的密钥完成加密以后, 部件690及/或其所含元素可存贮在外部介质上。

ROS 602还提供了标记和定序措施,用于可加载的部件组690内 部,以便探测由替代而造成的破坏。部件组690所含的每个元素都可先 被加载进SPU 500,然后经过加密/解密机522解密,再经过测试/比较, 从而确保所加载的是正确的元素。可以进行几个不相干的比较过程以确 保没有出现非法替换。例如,可以将公开的元素标识和秘密的元素标识 进行比较,确保它们相等,这样可以防止对元素的大批替换。另外,可 以对保存在可加载元素已加密层之下的某个验证/关联标记进行比较, 确保该标记与一个或多个由请求进程所提供的标记相匹配。这样可以防 止未经授权就使用信息。作为第三种保护措施,可以检查保存在可加载 元素已加密层之下的某个设备赋值标记(如某个序列号),确保该标记 与SPU 500所期望的某个相关标记相匹配。这样可以防止对较旧的元素 进行替换。通常只用安全的包装物来传递验证/关联标记,这是为了防 止由于使用明文而将该信息泄露到SPU 500外部。

ROS 602这种基于安全部件的体系结构带有重要优点。例如,它适 应有限资源的执行环境,比如由较低价SPU 500所提供执行环境。它还 提供了极高的可配置性。实际上,ROS 602可以适应的信息内容类型、 信息内容提供者对象、交易类型和客户要求几乎是不胜枚举的。另外, 它还能够在执行过程中根据特定对象和用户的要求动态装配可独立提 供的部件,这种能力提供了高度的灵活性,简化或者支持了分布式的数 据库、处理和执行环境。

ROS 602基于部件体系结构所具优点的一个方面在于:ROS 602 可以随着时间的推移而“分阶段地”增加功能和能力。根据设计要求, 实现ROS 602所做的工作是有限的。在实际市场情况决定要实现相关 的VDE应用功能之前,ROS 602丰富功能的某些方面可能一直无法开 发。因此,最初产品实现的投入和复杂性可以是有限的。随着时间的推 移,ROS 602在制作、管理和人工智能应用等方面将会不断提供更全 面的功能。而且为了适应不断变化的需求,可在任何时间对已有的ROS 602功能进行修改或加强。

权利操作系统602体系结构详述

图12示意了图10中的ROS 602的详细体系结构。ROS 602可以 含有一个文件系统687,文件系统687包含一个商业数据库管理程序 730和外部对象仓库728。商业数据库管理程序730可以对安全数据库 610进行维护。对象仓库728可以存贮VDE对象300、为VDE对象300 提供访问、和/或维护VDE对象300。

图12还示意了ROS 602可以提供一个或多个SPE 503和/或一个或 多个HPE 655。如上所述,HPE 655可以“仿真”SPU 500设备,并 且,为了支持需要较高吞吐率的系统,可以将HPE 655进行集成以代 替物理SPU 500,或作为物理SPU 500的补充。由于HPE 655通常由 操作系统的安全性来保护,所以上述过程可能会损失一部分安全性而不 能提供真正安全的处理。因而,在较佳实施例中,至少是为了高安全性 应用,所有安全处理都应在SPE 503中进行,这是因为SPE 503在物理 SPU 500中拥有一个执行空间,而不象HPE 655那样使用的是电子设备 600中随处运行的软件。如上所述,ROS 602的三个基本部件分别是核 心680、远程过程调用(RPC)管理器732和对象开关734。下面将 就这些部件以及它们与ROS 602其它部分交互作用的原理进行讨论。

核心680

核心680管理电子设备600的基本硬件资源,并控制ROS 602所 提供的基本任务分配过程。较佳实施例中的核心680可以含有内存管理 器680a、任务管理器680b和I/O管理器680c。任务管理器680b可对 可执行任务的起动过程进行起动和/或管理,并对任务进行调度,使之 可以在运行有ROS 602的处理器(如图8中的CPU 654)上执行。例 如,任务管理器680b可以含有一个“引导装入程序”,或与该“引导 装入程序”相关联。“引导装入程序”加载ROS 602的其它部分。任 务管理器680b可管理所有与ROS 602有关的任务分配工作,包括与应 用程序608相关的任务。内存管理器680a可以管理电子设备600的存 贮器(如图8中的RAM 656)分配、回收、共享和/或使用,还可以(举 例来说)提供虚拟内存功能,如电子设备和/或相关应用所需求的。I/O 管理器680c可以管理所有ROS 602的输入和输出,并可以与驱动程序 和其它硬件管理器交互作用,其中这些驱动程序和硬件管理器提供了与 物理设备进行通信和交互作用。

RPC管理器732

较佳实施例中的ROS 602是围绕“基于服务”的远程过程调用体 系结构/接口进行设计的。ROS 602所执行的所有功能都可使用这个通 用接口来请求服务和共享信息。例如,SPE 503支持对一个或多个基于 RPC的服务进行处理。除了支持SPU 500,RPC接口还利用现有操作 系统部件,支持对外部服务的动态集成,并提供了一组配置选项。ROS 602也可以通过RPC接口与外部服务进行通信,从而无缝地提供了分 布式和/或远程处理。在ROS 602的较小型实例中,为节省资源,可以 使用较简单的消息传递IPC协议。这种方法可能限制了ROS 602服务 的可配置性,但在某些电子设备中,这点可能的限制还是可以接受的。

采用RPC结构,调用进程在调用或请求服务时,不必知道或指定 在物理上的何处提供服务、何种系统或设备将对请求进行服务、以及如 何对请求进行服务。该特性可为特定应用对各种服务集进行增减和/或 定制。服务请求可由不同的处理器或不同的地点进行传递或服务,这一 过程就象本地的服务系统对服务请求进行传递或服务一样容易。由于较 佳实施例中的ROS 602使用相同的RPC接口对操作系统之中或之外发 出服务的请求,因而对分布式和/或远程处理的请求实质上不会带来额 外的操作系统开销。可以容易而简便地将远程处理进行集成,将之加入 到ROS 602为请求基于本地的服务所使用的相同服务调用中。另外, 使用标准RPC接口(“RSI”)可带来ROS 602的模块化,不同的模 块向操作系统其余部分提供的是标准的接口。这种模块化和标准化接口 使不同的出售者/操作系统编写人员能够独立地制作操作系统的不同部 分,同时还允许根据不同要求和/或平台灵活地更新和/或改变ROS 602 的功能。

RPC管理器732对RPC接口进行管理。它接收服务请求,这些服 务请求的形式是由服务请求者发出的一个或多个“远程过程调用” (RPC)。接收到之后,它选择合适的路由将这些服务请求转发给能 够对之进行服务的服务提供者。例如,当权利操作系统602收到由用户 应用通过用户API 682发出的请求后,RPC管理器732可通过“RPC 服务接口”(“RSI”)将该服务请求发往一个适当的服务提供者。 RSI是RPC管理器732、请求服务者、及资源之间的一个接口,该资 源将接受请求并对之提供服务。

在较佳实施例中,RPC接口(RSI)由ROS 602的若干主要子系 统所使用。

在较佳实施例中,ROS 602所提供的RPC服务又分成了子服务, 子服务即为特定服务的单个实例,每个这样的实例均可被RPC管理器 732单独跟踪。采用这种机制,在具有较高吞吐率的系统中一个特定服 务可以有多个实例,同时在各种实现之间又存在着共同的接口。子服务 的概念加以延伸可以支持多处理器、多SPE 503、多HPE 655以及多 种通信服务。

较佳实施例ROS 602提供了下列基于RPC的服务提供者/请求者 (每一个提供者/请求者都具有RPC接口或“RSI”,以便与RPC管 理器732进行通信):

SPE设备驱动程序736(在较佳实施例中,该驱动程序与SPE 503 相连);

HPE设备驱动程序738(在较佳实施例中,该驱动程序与HPE 738 相连);

通告服务740(在较佳实施例中,该通告服务与用户通告接口686 相连);

API服务742(在较佳实施例中,该API服务与用户API 682相 连);

重定向器684;

安全数据库(文件)管理程序744(该安全数据库管理程序或文件 管理程序744可以通过高速缓存管理器746、数据库接口748和数据库 驱动程序750与商业数据库730和安全文件610进行连接和交互作 用);

名字服务管理器752;

输出管理对象管理器754;

输入管理对象管理器756;

到达对象开关734的网关(gateway)734(这是一条通路,它用 来在RPC管理器732和对象管理器734之间建立直接通信);以及

通信管理器776

在前面已经论述了HPE 655、SPE 503、用户通告686、API 742 和重定向器684所提供的服务类型。现在简要地介绍一下OS资源744、 752、754、756和776所提供的服务类型。

安全数据库管理器744对访问安全数据库610的请求进行服务;

名字服务管理器752对有关用户、主机或服务标识之类的请求进行 服务;

输出管理对象管理器754对有关输出管理对象的请求进行服务;

输入管理对象管理器756对有关输入管理对象的请求进行服务;

通信管理器776对有关电子设备600与外界进行通信的请求进行服 务;

对象开关734

对象开关734(可在局域或远程)对VDE对象300进行处理、控 制和递送。在较佳实施例中,对象开关可以含有下列元素:

流路由器758;

实时流接口760(实时流接口760可以与实时数据输入694相连);

时间相关性流接口762;

截获器692;

容器管理器764;

一个或多个路由表766;以及

缓冲区/存贮区768。

流路由器758负责选择合适的路由以到达/离开分别由实时流接口 760和时间相关性流接口762处理的“实时”数据流和“时间无关性” 数据流。截获器692截获带有实时信息流(如实时输入694)的I/O请 求。流路由器758可根据路由表766来决定路由的选择。缓冲区/存贮 区768提供临时的存贮转发、缓冲及相关服务。容器管理器764可以(通 常与SPE 603一起)对VDE对象300执行各种处理,如对一部分对象 进行构造、销毁和定位处理。

对象开关734通过对象开关接口(“OSI”)与ROS 602的其它 部分进行通信。在较佳实施例中,对象开关接口可以类似于(举例来说) Unix的套接字(socket)的接口。图12所示的每个“OSI”接口均能 够与对象开关734通信。

ROS 602含有下列的对象开关服务提供者/资源(每个提供者/资源 都可以通过“OSI”与对象开关734通信):

输出管理对象管理器754;

输入管理对象管理器756;

网关734(网关734可以将RPC调用翻译成对象开关调用,或反 向翻译,这样一来,RPC管理器732就可以与对象开关734或其它任 何带有OSI的元素进行通信,从而(举例来说)可以提供和/或请求服 务);

外部服务管理器772;

对象提交管理器774;以及

通信管理器776。

简要地说,

对象仓库管理器770提供有关访问对象仓库728的服务;

外部服务管理器772提供的服务涉及到请求和接收外部服务,例如 该服务可以来自某个网络资源或另一个地点;

对象提交管理器774提供的服务涉及到用户应用如何与对象开关 734交互作用(由于对象提交管理器向应用程序608提供了接口,所以 可以将它看成是用户API 682的一部分);以及

通信管理器776提供有关与外界通信的服务。

在较佳实施例中,通信管理器776可以含有网络管理器780和邮件 网关(管理器)782。邮件网关782可以含有一个或多个邮件过滤器 784,用以(举例来说)在对象开关734和外界电子邮件服务之间自动 地选择与VDE相关的电子邮件的路由。外部服务管理器772可通过服 务传输层786与通信管理器776接口。服务传输层786a可允许外部服 务管理器772使用各种协议与外部计算机和系统进行通信,这些协议要 通过服务传输层786进行管理。

下面将详细论述图12中ROS 602各个子系统的特性及接口。

RPC管理器732及其RPC服务接口

如上所述,ROS 602所提供的基本系统服务要通过使用RPC服务 接口(RSI)进行调用。该RPC服务接口向ROS 602中的各种服务系 统和子系统提供了通用的标准化接口。

RPC管理器732将RPC所请求的服务选择路由到适当的RPC服 务接口。在较佳实施例中,一旦接收到一个RPC请求,RPC管理器 732对一个或多个服务管理器进行判断并确定哪一个应该服务该请求。 然后RPC管理器732(通过与某个服务相关的RSI)将服务请求路由 选择到适当的服务,以便该适当服务管理器提供服务。

例如,如果SPE 503应该服务某个请求,那么RPC管理器732将 该请求路由选择到RSI 736a,RSI 736a将该请求传递给SPE设备驱动 程序736以便再转发给SPE。同样,如果HPE 655应该服务某个请求, 那么RPC管理器732将该请求路由选择到RSI 738a以便再转发给 HPE。在一个较佳实施例中,SPE 503和HPE 655可以提供实质上相 同的服务,这样,RSI 736a和738a便成了同一RSI的不同实例。一旦 SPE 503(或HPE 655)收到了一个服务请求,该SPE(或HPE)通 常使用其内部RPC管理器对该请求进行内部调度(后面马上就会讲到 这一点)。SPE 503和HPE 655内部的进程也可以产生RPC请求。这 些请求可以被SPE/HPE内部处理,但如果不能在内部服务的话,这些 请求就会被传出SPE/HPE,由RPC管理器732进行调度。

RPC管理器732可使用“RPC服务表”对远程(或本地)过程调 用进行调度。RPC服务表说明了为得到特定服务需将请求路由选择到 何处供处理。在较佳实施例中,RPC服务注册表中的每一行都含有一 个服务标识、服务的地点以及为服务请求将控制要传递到的地址。RPC 服务表还可以含有控制信息,以指明RPC调度者中的哪一个实例应该 取得该服务的控制权。RPC管理器732以及连入的任何SPE 503和 HPE 655都可以拥有RPC服务表的对称副本。如果某个RPC服务没有 出现在RPC服务表中,其原因有二:或者它被拒绝,或者它被传送给 外部服务管理器772用来进行远程服务。

假设RPC管理器732在RPC服务表中发现某一行与请求相对应, 它便可将该请求调度给适当的RSI。接收的RSI从RPC管理器732处 接收到一个请求(RPC管理器732可以已经在RPC服务表中查到了该 请求),然后根据与特定服务相关的内部优先级对该请求做出处理。

在较佳实施例中,由RPC管理器732支持的RPC服务接口可以是 标准化的并且被公布出来,以便支持由第三方厂家开发的增加服务模 块,同时还使得对ROS 602编程更加容易,最终带来方便的可伸缩性。 较佳实施例RSI严格遵循DOS和Unix为块设备设计的设备驱动程序 模块,这样,花费最小的代价就可以开发出适用于许多平台的公用代 码。下表列出了可能的公用入口点集合的一个示例。   接口调用                    说明   SVC_LOAD     加载一个服务管理器并返回其状态。   SVC_UNLOAD     卸载一个服务管理器。   SVC_MOUNT     安装(加载)一个动态加载的子服务,并返回 其状态。   SVC_UNMOUNT     拆掉(卸载)一个动态加载的子服务。   SVC_OPEN     打开一个安装了的子服务   SVC_CLOSE     关闭一个安装了的子服务   SVC_READ     从一个打开了的子服务中读一个块   SVC_WRITE     向一个打开了的子服务写一个块   SVC_IOCTL     对一个子服务或服务管理器进行控制

加载

在较佳实施例中,安装引导进程在进行引导时,发出RPC LOAD 指令,服务(以及服务向RPC管理器732提供的相关RSI)可以从此 被激活。安装引导进程从配置文件中读出RPC服务表,加载那些运行 时可加载的服务模块(“可加载的服务模块”与核心链接的设备驱动程 序相对),然后调用服务的加载(LOAD)入口点。来自LOAD入口 点的成功返回意味着服务已被正确地加载上,并已做好了接收请求的准 备。

RPC加载(LOAD)调用举例:

SVC_LOAD(long service_id)

LOAD接口由RPC管理器732在权利操作系统602初始化时调 用。它允许服务管理器加载所有可动态加载的部件,以及根据服务的要 求初始化所有相关设备和存贮器。加载服务时所规定的服务号码作为 service_id参数来传递。在较佳实施例中,如果初始化进程成功完成, 则上述过程返回0;如果出现错误,则返回一个错误号。

安装

服务在加载好以后可能不会对所有子服务都能完全地起作用。某些 子服务(如基于通信的服务)可能需要建立额外的连接,或者它们可能 要求加载附加的模块。如果服务被定义为“可安装”的,RPC管理器 732将首先根据被申请的子服务标识来调用安装(MOUNT)子服务入 口点,之后再打开子服务的一个实例。

RPC安装(RPC MOUNT)调用举例

SVC_MOUNT(long service_id,long subservice_id,BYTE*buffer)

MOUNT接口调用命令某个服务使特定的子服务处于就绪状态。这 些服务可以涉及网络、通信、其它系统服务、或外部资源。参数service_id 和subservice id可以是被申请的特定服务所特有的。参数buffer是一 个内存地址,它指向了与特定服务相关的控制结构。

打开

一旦加载和“安装”了某项服务,就可以“打开”服务的特定实例 以便进一步使用。为“打开”服务的一个实例,需要分配内存以保存控 制和状态信息。例如,在基于BSD套接字(socket)的网络连接,LOAD 调用将初始化软件和协议控制表,MOUNT调用将指定网络和硬件资 源,而OPEN调用实际上打开了一个通向远方系统的套接字。

某些服务可以不是“可安装”的,如构成安全数据库服务基础的商 业数据库管理程序730即是如此。在这种情况下,LOAD调用将建立 与数据库管理程序730的连接,并确保其记录是可读的。OPEN调用 可以为各种记录类型创建内部高速缓存管理器746的实例。

RPC打开(OPEN)调用举例

SVC_OPEN(long service_id,long subservice_id,BYTE*buffer,int (*receive)(long request_id))

OPEN接口调用命令某个服务打开特定的子服务。参数service_id 和subservice_id是被申请的特定服务所特有的,参数buffer是一个内 存地址,它指向了与特定服务相关的控制结构。

可选的receive参数是通告回调函数的地址,每当有消息已准备好 供服务检索时,服务将调用该通告回调函数。对于每个收到的消息,需 要调用该函数地址一次。如果调用者向该函数接口传递了一个空 (NULL)地址,那么对于每个消息,软件将不再进行回调。

关闭、拆除和卸载

OPEN、MOUNT和LOAD的相反调用分别是CLOSE、 UNMOUNT和UNLOAD。这些接口将所有分配了的资源释放回ROS 602(如内存管理器680a)。

RPC关闭(RPC CLOSE)调用举例

SVC_CLOSE(long svc_handle)

CLOSE接口调用关闭一个打开服务“句柄”。服务“句柄”说明 了用户希望关闭的服务和子服务。如果CLOSE请求成功,该调用将返 回0(同时该句柄不再有效),如果失败,则返回一个错误号。

RPC卸载(RPC UNLOAD)调用举例

SVC_UNLOAD(void)

UNLOAD接口调用由RPC管理器732在权利操作系统602停机或 进行资源回收时调用。该调用使服务关闭所有打开的连接、刷新缓冲 区,并释放所有分配给它的所有操作系统资源。该服务返回0。

RPC拆除(RPC UNMOUNT)调用举例

SVC_UNMOUNT(long service_id,long subservice_id)

UNMOUNT接口调用命令某个服务将特定的子服务置为非活动状 态。参数service_id和subservice_id是被申请的特定服务所特有的,而 且这些任务必须已通过SVC MOUNT()请求进行了安装。该调用在返 回之前将释放所有与子服务相关的系统资源。

读和写

读(READ)和写(WRITE)调用提供了一种基本机制,用以向 一个已安装和打开了的服务发送信息,以及从该服务接收响应。例如, 一个服务具有以RPC请求格式写往它的请求,并在可以产生响应的时 候使其响应对RPC管理器732可读。

RPC读(RPC READ)调用举例

SVC_READ(long svc_handle,long request_id,BYTE*buffer,long size)

READ调用从一个服务读取消息响应。参数svc_handle和 request_id唯一地标识了一个请求。请求的结果将被保存在用户指定的 缓冲区buffer中,其长度最多为size个字节。如果缓冲区太小,那么 将在缓冲区中保存消息中前面size个字节的数据,然后返回一个错误 号。

如果消息响应正确地返回到调用者的缓冲区中,该函数将返回0, 否则将返回一个错误信息。

RPC写(RPC WRITE)调用举例

SVC_READ(long service_id,long subservice_id,BYTE*buffer,long size,

int(*receive)(long request_id)

WRITE调用向由参数对service_id/subservice_id指定的服务和子 服务写一个消息。消息存放在缓冲区buffer中(并且通常按照VDE RPC 消息格式),其长度为size个字节。该函数返回该消息的请求id(如 果系统同意将其发送出去的话),或者返回一个错误号。如果用户指定 了receive回调函数,所有与该请求相关的消息将被发送给该请求特定 的回调函数,而不是发送给通用的消息回调函数。

输入/输出控制

IOCTL(“输入/输出控制”)调用提供了一种机制,允许查询一 个已加载服务的状态,或对该服务进行控制。每个服务类型都要对特定 普通型IOCTL请求、所有请求类型IOCTL请求,以及专用服务型 IOCTL请求做出响应。

RPC IOCTL调用举例

ROI_SVC_IOCTL(long service_id,long subservice_id,int command,BYTE*buffer)

IOCRL函数向RSI提供了通用的控制接口。用户用参数service_id 和可选的subservice_id来指定他们希望控制的服务和子服务。用户要 指定控制命令参数eommand和缓冲区参数buffer,其中参数command 可以写入buffer中,或从中读出。下面给出了命令command和相应缓 冲区结构的一个列表示例。    命令 (command)     结构                说明 GET_INFO  SVC INFO 返回关于某个服务/子服务的信息 GET_STATS  SVC STATS 返回关于某个服务/子服务的当前统计资料 CLR_STATS     无 清除关于某个服务/子服务的当前统计资料

上面已经论述了较佳实施例中的通用RPC服务接口,下面将说明 ROS 602所提供服务的各种具体示例。

SPE设备驱动程序736

SPE设备驱动程序736提供了ROS 602和SPE 503之间的接口。 由于较佳实施例中的SPE 503运行于SPU 500内,该设备驱动程序736 的职责之一是提供与SPU 500硬件的低层通信服务。该设备驱动程序 736的另一职责是提供SPE 503专用的RPC服务接口(RSI)736a(该 同一RSI还可以用来通过HPE设备驱动程序638与HPE 655进行通 信)。

SPE RSI 736a以及驱动程序736提供了一组基本接口点,这些基 本接口点带有一组简明的函数,这样,SPE RSI 736a以及驱动程序736 能够将ROS 602中(或ROS 602外部)的调用进程与SPE 503所提供 的服务细节进行隔离。这具有若干优点。例如,采用这种方法,可以允 许提供全面伸缩的SPU 500,这些SPU 500向外界提供了公用的功能, 但其内部的详细组织和体系结构却各不相同。SPU 500的某些特性如 设备所含的存贮器容量、处理器速度、以及SPU 500内部所支持的服务 数目等等可以由特定SPU生产厂家决定,并且在任何情况下,这些特 性可以随SPU配置的不同而不同。为了确保兼容性,SPE设备驱动程 序736及其提供的RSI 736a遵循了一个基本公用RPC接口标准,该标 准“隐藏”了SPU 500和/或SPU 500所支持的SPE 503各配置细节之 间的差异。

为提供这种兼容性,较佳实施例中的SPE RSI 736a遵循了一个基 于块的简单标准。在较佳实施例中,SPE RSI 736a可以仿照Ethernet 网卡的包界面进行设计。该标准精密地模拟较佳实施例中SPU 500的块 模式接口特性。

SPE RSI 736a允许来自RPC管理器732的RPC调用访问由SPE 736提供的特定服务。为此,SPE RSI 736a提供了一套“服务通告地 址接口”。这套接口向外界提供了由SPE 503所提供之各个服务的访问 接口。通过向SPE RSI 736a发送RPC调用以及在RPC调用中指定一 个相应的“服务通告地址”,任何ROS 602中的调用进程都可以访问 上述SPE所提供服务。上述的指定的“服务通告地址”使SPE 503将 RPC调用在内部地路由选择SPE中的一个特定服务。下面给出了一个 列表示例,它列出了可能需要为之提供独立服务通告地址的SPE服务 项目:

通道服务管理器

验证管理器/安全通信管理器

安全数据库管理程序

对于ROS 602的其余部分来说,通道服务管理器是其主要的服务 提供者及对SPE 503的访问点。下面将要讲到,(从SPE 503外部进程 的角度来看)事件处理主要由该服务进行管理。验证管理器/安全通信 管理器可以为ROS 602的用户提供登录/注销服务,并提供直接服务以 管理与部件组690、VDE对象300等有关的通信(通常将通信进行加 密或保护)。通过向SPE 503内部的安全数据库管理程序发送一个直接 服务请求,便可以提供有关显示某些信息(如金融预算中的剩余金额) 的请求。验证管理器/安全通信管理器以及安全数据库管理程序的实例 (如果确实可用的话)可以只向运行于SPE 503之中的进程提供可得到 的信息和/或功能的一个子集。如上所述,绝大多数(可能全部)进入 SPE的服务请求都被路由选择到通道服务管理器进行处理。后面将要详 细讲到,在通道服务管理器的管理之下,绝大多数控制结构和事件处理 逻辑都与部件组690相关联。

本例中,必须经过与SPE 503相关的SPE驱动程序736才能访问 到SPE 503。响应RPC调用通常要产生对SPE驱动程序736的调用。 在本例中,SPE驱动程序RSI 736a可以把用来控制或确定SPE驱动程 序736信息的RPC调用翻译成驱动程序调用。SPE驱动程序RSI 736a 与驱动程序736结合可以将发送给SPE 503的RPC调用传递给SPE。

下表示出了SPE设备驱动程序736调用的一个例子:        入口点               说明       SPE_info() 返回关于SPE驱动程序736(和SPE 503)的概要信息 SPE_initalize_interface() 初始化SPE驱动程序736,并为接收 的包设置缺省通告地址 SPE_terminate_interface() 终止SPE驱动程序736,并复位SPU 500和驱动程序736   SPE_reset_interface() 复位驱动程序736,而不复位SPU 500      SPE_get_stats() 返回有关通告地址和/或整个驱动程序 736的统计资料   SPE_clear_stats() 清除有关特定通告地址和/或整个驱动 程序736的统计资料   SPE_set_notify() 为指定的服务ID设置通告地址   SPE_get_notify() 返回指定服务ID的通告地址   SPE_tx_pkt() 将一个包(例如,该包含有一个RPC 调用)发送给SPE 503去处理

下面将对上表中列出的各个SPE驱动程序调用进行详细的范例说 明。

“SPE信息”驱动程序调用举例:

SPE_info(void)

该函数返回一个指向SPE_INFO数据结构的指针,SPE_INFO数 据结构定义了SPE设备驱动程序736a。该数据结构可以提供有关SPE 设备驱动程序736、RSI 736a和/或SPU 500的某些信息。下面给出了 SPE INFO数据结构的一个例子:     SPE设备驱动程序736的版本号/ID     SPE设备驱动程序RSI 736的版本号/ID     指向SPE设备驱动程序736名字的指针     指向SPU 500标识名字的指针     描述SPE权能/功能的功能码

SPE“初始化接口”驱动程序调用举例:

SPE_initialize_interface(int(fcn*receiver)(void))

对于所有从SPE 503收到的包,均要调用以参数形式传递的 receiver函数,除非这些包的目的服务已通过set notify()调用被取代。 receiver函数允许ROS 602为RPC管理器732与SPE 503之间的包通 信指定一种格式。

在较佳实施例中,如果接口初始化成功完成,该函数将返回“0”, 如果失败,则返回一个非0值。如果该函数调用失败,它返回说明失败 原因的代码作为函数值。

SPE“终止接口”驱动程序调用举例:

SPE_initialize_interface(int(fcn*receiver)(void))

在较佳实施例中,该函数关闭SPE驱动程序736,清除所有通告 地址,并终止SPE和ROS RPC管理器732之间的所有未完请求。在所 有请求都得到解决之后,该函数还复位SPE 503(如通过对SPU 500 进行一次热重新引导)。

在操作系统正准备关机的时候,ROS 602应当执行对驱动程序 736的终止操作。还有一种情况需要执行该调用,那就是SPE 503和 ROS 602之间的同步严重紊乱,以致必须将SPE中的所有处理过程都 复位成一个已知状态。

SPE“复位接口”驱动程序调用举例:

SPE_reset_interface(void)

该函数复位驱动程序736,终止SPE和ROS RPC管理器732之间 的所有未完请求,并清除所有统计计数。该函数不对SPU 500进行复 位,而只是简单地将驱动程序736恢复到一个已知的稳定状态。

SPE“取统计资料”驱动程序调用举例:

SPE_get_stats(long service_id)

该函数通常返回特定服务通告接口或SPE驱动程序736的统计资 料。该函数返回一个指针,该指针指向含有这些资料的一个静态缓冲 区。如果无法得到统计资料的话(或者由于接口未初始化,或者由于接 收者地址未指定),该函数将返回一个空值(NULL)。下面给出了 SPE STATS结构示例可以含有的定义。     服务标识     收到的包数     发送的包数     接收的字节数     发送的字节数     接收的错误数     发送的错误数     发送的请求数     发送请求完成的数目     发送请求取消的数目     接收的请求数     接收请求完成的数目     接收请求取消的数目

如果用户指定了服务标识,该函数将返回与该服务发送的包相关的 统计资料。如果用户以0作为参数,则返回该接口总计的包统计资料。

SPE“清除统计资料”驱动程序调用举例:

SPE_clear_stats(long service_id)

该函数清除与指定SPE服务标识service_id有关的统计资料。如果 没有指定servic_id(即调用者传递的参数为0),该函数将清除全局 的统计资料。如果资料清除成功,该函数返回0;如果出现错误,则返 回一个错误号。

SPE“设置通告地址”驱动程序调用举例:

SPE_set_notify(long service id,int(fcn*receiver)(void))

该函数为指定服务设置一个通告地址(receiver)。如果通告地址 被置为空值(NULL),SPE设备驱动程序736将把对指定服务的包 的通告发向缺省通告地址。

SPE“取通告地址”驱动程序调用举例:

SPE_get_notify(long service_id)

该函数返回与命名的服务有关的通告地址;如果没有为服务指定专 门的通告地址,该函数将返回空值(NULL)。

SPE“发送包”驱动程序调用举例:

send_pkt(BYTE*buffer,long size,int(far*receive)(void))

该函数将保存在缓冲区(buffer)中长度为size的一个包发送出 去。如果包发送成功,该函数返回0;否则返回与失败相关联的一个错 误码。

重定向器服务管理器684

重定向器684是一段系统集成软件,如前所述,当ROS 602是通 过“增加”在前在操作系统上而产生,或需要为某些VDE功能提供“透 明性”操作时,需要用到重定向器684。在一个实施例中,核心680、 通信管理器776的一部分、文件系统687、以及API服务742的一部分 可以是前在操作系统的一部分,这些现有操作系统的例子有:DOS、 Window、UNIX、Macintosh系统、OS9、PSOS、OS/2、或其他 操作系统平台。图12所示的ROS 602的其余部分也可以是对前在操作 系统的“增加”。一旦提供了这些ROS子系统或将其“增加”进去以 后,集成化后的整体将构成图12所示的ROS 602。

在这种集成化方案中,ROS 602将继续得到前在OS核心680的支 持,但有可以用附加的增加部分如虚拟内存管理器来补充(甚至替换) OS核心680的许多功能。

在这种集成化方案中还提供了增加部分API服务742,该部分很 容易与现有的API服务进行集成以支持VDE功能调用。现有API服务 与增加部分集成以后将支持一组功能增强的操作系统调用,这些调用包 括对VDE功能604的调用和对VDE功能以外的功能606的调用(参看 图11A)。增加部分API服务742可将VDE功能调用翻译成RPC调 用以供RPC管理器732进一步选择路由。

ROS 602可以使用现有操作系统提供的标准通信管理器776,或 者,它也可以对现有操作系统进行“增加”和/或替换,这些增加部分 和/或替换可以非常容易地集成到现有操作系统之中。重定向器684可 以提供这种集成功能。

这样,就要求ROS 602与现有的文件系统687集成。重定向器684 提供了这种集成功能。

在这种集成化方案中,现有操作系统的文件系统687用来完成对二 级存贮器的所有访问操作。但是,VDE对象可以外部对象仓库728或 文件系统687的形式存放在二级存贮器中,或通过通信管理器776被远 程访问。当对象开关734希望访问外部对象仓库728时,它向对象仓库 管理器770发送一个请求,对象仓库管理器770接着将该请求选择路由 到对象仓库728或重定向器692(对象仓库728或重定向器692再访问 文件系统687中的对象)。    

通常,重定向器684将VDE对象仓库728中的内容映射到对文件 系统687的前在调用。重定向器684提供了有关VDE对象300的前在 操作系统级信息,包括如何将对象映射到现有OS的名字空间。这样以 来便可以使用由现有操作系统提供的“常规”文件系统687访问技术对 受VDE保护的信息内容进行无缝的访问。

在上述的集成化方案中,每个现有目标OS文件系统687都具有不 同的接口要求,而重定向机制684要利用这些接口“挂接”(hook)。 通常,由于今天所有商品化的操作系统都支持基于网络的卷、文件系 统、以及其它设备(如打印机、调制解调器等),重定向器684可以使 用低级的网络和文件访问“挂接”与前在的操作系统进行集成。那些用 来支持VDE功能602的“增加”部分可以使用这些现有的挂接与前在 的操作系统进行集成。

用户通告服务管理器740

用户通告服务管理器740及其相关的用户通告异常(“弹出式”) 接口686增强了ROS 602的功能,使之可以与电子设备600的用户进 行通信。并非所有应用608的设计都响应来自ROS 602并经过API 682 的消息通信,因而无论如何,既有重要性又有必要性的一项举措是使 ROS 602能够与用户通信而不管应用处于何种状态。用户通告服务管理 器740及接口686为ROS 602提供了一种机制使之能够直接与用户通 信。ROS 602可以用这种机制来替代或补充另一种通信方式,即通过 API 682和应用608传递返回调用。上述机制(举例来说)类似于 Windows操作系统能够以“对话框”的形式显示一条用户消息,该对 话框显示在正在运行的应用“之上”而不管应用的状态如何。

可以采用应用代码来实现较佳实施例中的用户通告686模块。接口 740a的实现最好建立在通告服务管理器740之上,可以将通告服务管 理器740实现为API服务管理器742的一部分。较佳实施例中的通告服 务管理器740能够通过适当的API返回或另外的途径将特定通告发送 给相应用户进程。这种机制允许将通告路由选择到任何合法进程,而不 是只把它发送回那个指定了通告机制的进程。

API服务管理器742

较佳实施例API服务管理器742实现为对RPC服务管理器732的 接口。所有的用户API请求都基于该基本接口。API服务管理器742 最好对每一个正在运行的用户应用608都提供一个服务实例。

在较佳实施例中,经过某些额外的参数检查,API服务管理器742 所支持的绝大多数对ROS功能的RPC调用可以直接映射成服务调用。 这种机制允许开发者创建他们自己的扩展API库,使库中含有附加的 或改变的功能。

上面讲过,ROS 602是通过将“增加”部分与现有操作系统相集 成而产生的。在此方案中,其中API服务742的代码可以共享(如驻 留在象Windows DLL这样的宿主环境中),它也可以直接与应用的代 码相链接,不过这要决定于应用程序员的实现决策,以及/或者电子设 备600的类型。通告服务管理器740可以在API 682之中实现。这些部 件与通告服务部件686接口,以实现系统空间与用户空间之间的转换。

安全数据库服务管理程序(“SDSM”)744

至少有两种方法可用于管理安全数据库600:

商品化数据库方法,及

地点记录编号方法

具体选择那种方法要取决于在安全数据库610中某个VDE地点所 存记录的数目。

商品化数据库方法利用了商品化数据库,它将经过安全包装的记录 存贮在商品化数据库中。当安全数据库610中存有大量记录时这种方法 可能是较优的。这种方法支持对主机系统进行高速地访问、有效地更 新、以及方便地集成,但其代价是要占用资源(大多数商业数据库管理 器要使用许多系统资源)。

地点记录编号方法使用“地点记录编号”(“SRN”)在系统中 定位各个记录。当安全数据库610中所存记录数目较少,并且预计随时 间推移不会剧烈增减时,优选这种方法。这种方法可以有效地利用资 源,但其更新功能有限。SRN支持对相似数据记录的进一步组合,从 而提高了访问速度并提高了性能。

由于VDE 100具有高度的可伸缩性,不同的电子设备可能需要在 两种方法中作出不同的选择。例如,在诸如顶置系统、PDA或者其它 低端电子设备有限的环境中,SRN方法可能比较受欢迎,这是因为它 需要的资源有限(存贮器和处理器)。如果更多功能的电子设备600, 如桌上型计算机、服务器,或票据交换所中使用VDE,那么商品化数 据库方法可能更可取,这是因为这种方法在资源不受限制的环境中能够 带来较高的性能。

在两种方法中的数据库记录之间存在着一个差别,它表现在记录是 通过完整的VDE ID来指定,还是用SRN来指定。为了在两种方法之 问进行翻译,无论何处产生了SRN引用,该引用都可以由VDE ID数 据库引用来替代。类似地,用来指定或引用其它项的VDE标识也可以 由适当的SRN数值来替代。

在较佳实施例中,使用商品化数据库管理器730来维护安全数据库 610。ROS 602通过数据库驱动程序750和数据库接口748与商品化数 据库管理器730交互作用。数据库接口748位于ROS 602与外部的、 第三方数据库厂家的商品化数据库管理器730之间,它可能是一个开放 标准而允许任何数据库厂家为他们的产品实现遵循VDE的数据库驱动 程序750。

ROS 602可以对每个安全数据库610记录都进行加密,于是在商品 化数据库体系结构之上产生了一个由VDE提供的安全层。换句话说, SPE 736可以按照可保存在数据库记录结构中的大小和格式对安全记 录进行写操作,该数据库记录结构由商品化数据库管理器730支持。于 是商品化数据库管理器730可以用来对记录进行组织、保存和检索。在 某些实施例中,要使用专有的和/或新出现的数据库管理器来代替商品 化数据库管理器730。但是,使用商品化数据库管理器730可能具有某 些优点,例如,这样就可以使用现有的数据库管理产品。

安全数据库服务管理器(“SDSM”)744调用底层的商品化数 据库管理器730以便获得、修改或保存安全数据库610中的记录。在较 佳实施例中,“SDSM”744在商品化数据库管理器730的结构之上 提供了一个层。例如,所有的VDE安全信息均以加密的形式发向商品 化数据库管理器730。SDSM 744与高速缓存管理器746以及数据库接 口748一起可在商品化数据库管理器730和/或记录管理器之上提供记 录管理、高速缓存(使用高速缓存管理器746)、以及其它相关服务。 较佳实施例中的数据库接口748和高速缓存管理器746不提供它们自己 的RSI,而是由RPC管理器732通过安全数据库管理器RSI 744a与它 们通信。

名字服务管理器752

名字服务管理器752提供三种子服务:用户名字服务、主机名字服 务以及服务名字服务。用户名字服务支持用户名字与用户ID(标识) 之间的映射和查找,并且还可以支持基于用户的资源和信息安全性等其 它方面。主机名字服务支持其它处理资源(如其它主机电子设备)的名 字(以及其它信息,如地址、通信连接/路由信息等)与VDE节点ID 之间的映射和查找。服务名字服务支持服务名字以及其它相关信息如连 接信息(连接信息的例子有:远程服务的路由选择以及联络信息)等与 服务ID之间的映射和查找。较佳实施例中的名字服务管理器752与外 部服务管理器772相连,这样它就可以把外部服务路由选择信息直接提 供给外部服务管理器。名字服务管理器752还与安全数据库管理器744 相连,名字服务管理器752就可以访问保存在安全数据库610中名字服 务记录。

外部服务管理器772和服务传输层786

外部服务管理器772可提供协议,以支持与外部服务提供者接口功 能。外部服务管理器772可以(举例来说)从名字服务管理器752获取 外部服务路由选择信息,然后通过通信管理器776对某个特定外部服务 (如另一个VDE电子设备600,一个金融票据交换所,等等)起动联 络。外部服务管理器772使用服务传输层786来提供通信协议以及提供 通信所必须的其它信息。

有一些重要的外部服务管理器772使用示例。某些VDE对象可以 将它们的部分或所有信息内容保存在电子设备600的对象仓库728中, 而不是保存在由用户操作的对象仓库728中,所述的用户具有或希望得 到该VDE对象的使用权。在这种情况下,外部服务管理器772可以与 存有所需VDE对象(或其内容)的电子设备600进行连接。另外,文 件系统687可以是一个网络文件系统(如Netware、LANtastic、NFS 等),它允许使用重定向器684对VDE对象进行访问。对象开关734 也提供这种能力。

如果用外部服务管理器772来访问VDE对象,则可有多种技术可 供使用。例如,可以将VDE对象进行格式化,以便与环球网(World Wide Web)协议(HTML、HTTP和URL)共同使用,其方式是添 加相关的报头信息、信息内容标记、主机ID到URL的转换(如利用名 字服务管理器752),以及HTTP感知型的服务传输层786实例。

在另一个例子中,外部服务管理器772可以用来定位、连接或使用 远程事件处理服务、智能代理执行服务(可以既提供服务,又可以定位 服务)、对公开密钥的验证服务、远程名字服务、以及其它远程功能, 这些远程功能或者由ROS 602 RPC(这些RPC带有RSI)支持,或 者使用由服务传输层786支持的协议。

输出管理对象管理器754

输出管理对象管理器754从对象开关734、对象仓库管理器770或其 它来源接收管理对象,以便将其传送给其它VDE电子设备。输出管理对 象管理器754负责将输出对象发送到其正确目的地。输出管理对象管理器 754可以从名字服务管理器752获取路由信息,并且可能利用通信服务776 发送对象。输出管理对象管理器754通常维护(与SPE 503协调)安全数 据库610中的记录(如发货表格444),这些记录反映了对象是何时被成 功传送的、何时应该传送对象、以及其它与对象传送有关的信息。

输入管理对象管理器756

输入管理对象管理器756通过通信管理器776从其它VDE电子设 备600接收管理对象。它可以将该对象路由选择到对象仓库770、对象 开关734或其它目的地。输入管理对象管理器756通常要维护(与SPE 503协调)安全数据库610中的记录(如收货表格446),这些记录反 映了收到的是哪个对象、希望收到的是哪些对象、以及其它与接收到的 和/或希望接收的对象有关的信息。

对象仓库管理器770

对象仓库管理器770是数据库或文件管理器的一种形式。它管理 VDE对象300在对象仓库728、数据库或文件系统687中的存放。对 象仓库管理器770还可以浏览和/或搜索与对象有关的信息(如信息内 容概要、摘要、修订者的注释、计划、促销材料等),其途径是(举例 来说)使用与VDE对象300相关的信息(INFORMATION)方法。

对象提交管理器774

较佳实施例中的对象提交管理器774提供了应用608与对象开关 734之间的接口。因此,在某些方面可以将对象提交管理器774看成是 API 682的一部分。例如,它可以允许用户应用创建一个新的VDE对 象300。它还可以允许输入/输出管理对象管理器756和754创建VDE 对象300(管理对象)。

图12A示意了如何使用对象提交管理器774与电子设备600的用 户进行通信,以便创建新的VDE对象300。从图12A中可以看到,在 较佳实施例中,对象的创建可能分两个阶段:对象定义阶段1220和对 象创建阶段1230。图12A中两种不同的示意性“用户输入”(774(1), 774(2))指出对象提交管理器774充当的角色。

作为第一种角色或实例,对象提交管理器774提供了用户接口774a 以允许用户创建一个对象配置文件1240,该配置文件指明了将要创建 的VDE对象300所具有的某些特征。该用户接口774a可以(举例来说) 允许用户表明他希望创建一个对象,允许用户指明对象将要包含的信息 内容,允许用户规定需要纳入对象中的其它某些方面的信息(如规则和 控制信息、标识信息等等)。

在较佳实施例中,对象定义任务1220中一部分是对需要纳入对象 的信息内容或其它信息进行分析。对象定义用户接口774a可以向对象 开关743发出调用,以便对待创建对象所要包含的“信息内容”或其它 信息进行分析,以便将该信息内容定义或组织成用户规定的“原子元 素”。此处解释一下,这种“原子元素”组织方式可以(举例来说)将 信息内容划分为段、页或其它由用户定义的更小部分,它还可能是明确 的(例如在各“原子元素”之间插入控制字符)或隐含的。对象开关 734可以接收静态的或动态的信息内容(如利用时间无关性流接口762 和实时流接口760),并能够访问和检索保存在文件系统687中的信息 内容或其它信息。

对象定义1240的结果可以是一个对象配置文件1240,该配置文件 规定了与待创建对象有关的某些参数。这些参数可以包括(举例来说) 映射表、密钥管理规范以及事件方法参数。对象创建阶段1230可以将 对象配置文件1240以及需要纳入新对象的信息或信息内容作为输入, 根据这些输入创建一个对象,并将该对象保存在对象仓库728中。

对象创建阶段1230可以使用对象配置文件中的信息来装配或修改 某个容器。该过程通常涉及与将一系列事件发送给SPE 503,以便创建 一个或多个PERC 808、公开报头信息、私有报头信息,并对信息内容 进行加密,所有上述部分都将存储在新的对象300中(或存放在安全数 据库610中与新对象相关的记录中)。

对象配置文件1240可以被传送给对象开关734中的容器管理器 764。容器管理器764负责根据对象配置文件1240和其它用户输入创 建对象300。用户可以通过对象提交管理器744的另一个实例774(2) 与对象创建过程1230交互作用。在对象提交管理器744提供的这个再 次用户交互作用中,用户可以对适用于或相关于新对象300的许可、规 则和/或控制信息作出规定。为了规定许可、规则和控制信息,对象提 交管理器744和/或对象开关734中的容器管理器764通常(如上所述) 需要(如通过网关734)向SPE 503发送调用请求,使SPE从安全数 据库610中获取相应的信息,产生相应的数据库项,并将这些数据库项 存放在安全数据库610中,与/或以加密保护的方式将这些数据库项提 供给对象开关,以便将之包含进对象中。在这些由SPE 503提供的信息 中,除了加密的信息内容或其它信息之外,还包括一个或多个PERC 808、一个或多个核心1000’,一个或多个加载模块1100,一个或多个 诸如UDE 1200和/或MDE 1202之类的数据结构,以及各种密钥模块、 标记、公开和私有报头、及纠错信息。

容器管理器764可以与SPE 503共同协作创建一个对象容器302, 这个过程至少要部分地依据由对象配置文件1240规定的、有关信息对 象信息内容或其它信息的参数。之后,容器管理器764可以将需要纳入 在新对象中的(由SPE 503加密的)信息内容或其它信息插入到容器 302中。容器管理器764还可以将适当的许可、规则和/或控制信息插入 到容器302中(这些许可、规则和/或控制信息可以至少部分地由用户 通过对象提交管理器744交互作用来定义,同时可以至少部分地由SPE 503来处理以便创建安全数据控制结构)。然后容器管理器764可以将 新对象写入对象仓库687,同时用户或电子设备可以加入安全数据库 610中适当信息,以便“注册”新对象。

通信子系统776

如上所述,通信子系统776可以是一个传统的通信服务,它提供网络 管理器780和邮件网关管理器782。可以有一个邮件过滤器784,它用来自 动确定来自(或去往)外界的对象300或其它VDE信息的路由。通信子系 统776可支持来自有线电视、卫星或其它电信链路的实时信息内容输入。

安全处理环境503

前面已结合图12讨论过,较佳实施例中的每个电子设备600都含 有一个或多个SPE 503和/或一个或多个HPE 655。这些安全处理环境 都能提供经过保护的执行空间使任务以安全方式执行。它们可以完成 ROS传来的服务请求,同时,它们自身可以生成由ROS 602中的其它 服务、或另一个VDE电子设备600或计算机提供的服务满足的服务请 求。

在较佳实施例中,SPE 503由SPU 500的硬件资源进行支持。 HPE 655可由通用处理器资源来支持,并依赖软件技术来提供安全性/ 保护措施。因而HPE 655使ROS 602能够在一个通用CPU上装配和执 行特定部件组690,这些通用CPU的例子有:微计算机、小型计算机、 大型计算机或超级计算机处理器。在较佳实施例中,SPE 503的整体软 件体系结构可与HPE 655的软件体系结构相同。HPE 655可以“仿真” SPE 503及相关SPU 500,即每个HPE 655都含有服务和资源,以支 持来自ROS 602的相同服务请求集合(尽管可以不允许ROS 602将某 些只能运行于SPU 500中的、高度保密的任务传送给HPE)。

在某些电子设备600的配置中可既含有SPE 503又含有HPE 655。 例如,HPE 655可以用来执行那些需要较低级别(或无)安全保护的 任务,而SPE 503可以用来执行所有那些需要较高级别安全性的任务。 这种利用多SPE和/或HPE的配置提供串行和并行处理的能力将带来 更多的灵活性,并克服了有限资源所产生的限制,而由SPU 500提供这 些资源是现实并且廉价的。在特定的应用中,SPE 503和HPE 655协 同工作可以产生一个更加有效、廉价并依旧安全的综合处理环境,以支 持和提供VDE 100所需要的安全处理环境。作为一个例子,HPE 655 可以提供全部的处理,使用户可以操纵所发布的对象300的“信息内容”, 而用户则使用SPE 503对保密对象进行访问,并从对象中发布信息。图 13示意了较佳实施例安全处理环境(SPE)503的软件体系结构。

该体系结构也适用于较佳实施例宿主处理环境(HPE)655。通 常用“受保护的处理环境”(“PPE”)650来指代SPE 503和/或 HPE 655。此处往后,除非上下文中特别指明,只要提及“PPE 650”、 “HPE 655”和“SPE 503”,所指的就是它们之中的各个。

如图13所示,较佳实施例中的SPE 503(PPE 650)含有下列的 服务管理器/主要功能模块: 核心/调度程序552

通道服务管理器562

SPE RPC管理器550

时基管理器554

加密/解密管理器556

密钥和标记管理器558

概要服务管理器560

验证管理器/通信服务管理器564

随机数发生器565

安全数据库管理程序566

其它服务592

下面将详细讨论PPE 650的各个主要功能模块。

SPE核心/调度程序552

核心/调度程序552提供了一个操作系统“核心”,该核心运行于 SPU 500的硬件资源之上,并管理这些硬件资源。该操作系统“核心” 552为SPU 500提供了自含的操作系统;它同时还是整体ROS 602 (ROS 602可含有多个OS核心,接受ROS控制/管理的SPE和HPE 每一个都有这样一个OS核心)的一部分。核心/调度程序552提供SPU 任务和内存管理,支持SPU内部硬件中断,提供某些“低层服务”, 管理“DTD”数据结构,并管理SPU总线接口部件530。核心/调度 程序552还含有一个加载模块执行管理器568,它可以把程序加载到安 全处理空间以便SPU 500执行。

在较佳实施例中,核心/调度程序552可以含有下面的软件/功能部 件:

加载模块执行管理器568

任务管理器576

内存管理器578

虚拟存储器管理器580

“低层”服务管理器682

内部中断处理程序584

BIU处理程序586(HPE 655中可以没有)

服务中断队列588

DTD解释程序590

最好将核心/调度程序552中的至少某些部分存放在加载进SPU ROM 532中的SPU固件中。图14A给出了SPU ROM 532的存贮器映 象示例。该存贮器映象示意了驻留在SPU ROM 532a和/或EEPROM 532b中的各种核心/调度程序552部件(以及图13所示的其它SPE服 务)。图14B给出了NVRAM 534b的存贮器映象示例,该存贮器映象 示意了加载在NVRAM中的任务管理器576以及其它信息。

核心/调度程序552所完成的功能之一是接收ROS RPC管理器732 发来的RPC调用请求。如前所述,ROS核心RPC管理器732可以(通 过SPE设备驱动程序736及其相关RSI 736a)将RPC调用路由选择 到SPE 503以便SPE进行处理。SPE核心/调度程序552接收这些调用 后,或者对它们进行处理,或者将它们传递给SPE RPC管理器550, 由SPE RPC管理器550将这些调用内部地转送给SPE 503。基于SPE 503的进程也可以产生RPC请求。某些这类请求可以被SPE 503内部 地处理。如果不能内部服务,可以经过SPE核心/调度程序552将这些 请求从SPE 503传送给ROS RPC管理器732,由ROS RPC管理器732 将这些请求转送给SPE 503外部的服务。

A.核心/调度程序任务管理

核心/调度程序任务管理器576对执行于SPE 503(PPE 650)中 的任务进行调度和管理。SPE 503支持多种类型的任务。“通道”(在 较佳实施例中,“通道”是一种特殊类型的任务,它控制部件组690的 执行)被任务管理器576视为一种任务。任务被提交给任务管理器576 以便执行。任务管理器576接着要确保执行该任务所需的SPE 503/SPU 500资源可以获得,然后安排SPU微处理器520执行该任务。

发向核心/调度程序552的任何调用都使核心有机会对SPE 503进 行控制,并切换当前正在运行的任务。于是,在较佳实施例中,核心/ 调度程序552可以(与虚拟内存管理器580和/或内存管理器578一道) 将当前处于活动状态的某些或所有任务从执行空间中“换出”,而将其 它的或不同的任务“换入”。

由任务管理器576管理的SPE任务分配可以是“单任务分配”的 (指在一个时刻只能有一个任务处于活动状态),也可以是“多任务分 配”的(指在一个时刻可以有多个任务处于活动状态)。在较佳实施例 中,SPE 503可支持单任务分配也可支持多任务分配。例如,SPE 503 的“高端”(high end)实现(如在服务器设备中)最好采用“强占 式调度”的多任务。桌上型应用虽然仍需要并行地执行某些任务,但一 般只需采用更简单一些的SPE 503。顶置型应用可以使用其实现相对比 较简单的SPE 503,该SPE 503支持在一个时刻只执行一个任务。例如, 典型顶置型应用中SPU 500可以执行简单的计量、预算和计帐处理,它 使用组合进单个“聚合”加载模块中的VDE方法子集,从而允许在单 任务分配环境中执行多个方法。但是,只支持单任务分配的执行环境可 能会限制使用更为复杂的控制结构。SPE 503的这种单任务分配实现 方式牺牲了计量和预算操作在数目和类型上的灵活性,但换来了较小的 运行时RAM容量要求。这种SPE 503实现可以限制为(取决于存贮器 限制)在一个时刻只能对单个对象300进行计量。当然,可以做一些变 通和组合以便在简单的单任务分配环境基础上增加一些功能,而又不致 为了支持“完善的多任务分配”而导致额外的花销。

在较佳实施例中,SPE 503中的每一个任务都由一个“交换模块” 来代表。可以认为“交换模块”是传统多任务体系结构中的一个“任务”。 较佳实施例中的“交换模块”是一种管理机制,任务管理器576用这种 机制来跟踪任务和子任务。它对应于安置在由SPU 500所提供安全执行 环境中的一段代码及其相关引用。在较佳实施例中,“交换模块”含有 一个引用表,这些引用指向共享数据元素(如加载模块1100和UDE 1200)、私有数据元素(如方法数据和局部堆栈)、以及被交换进程 的“上下文”信息(如进程在非运行时刻的寄存器集合)。图14C示 意了SPU RAM 532的快照,它存放了多个示例性的“交换模块”,分 别对应于多个不同的任务/方法,如一个“通道”任务,一个“控制” 任务,一个“事件”任务,一个“计量”任务,一个“预算”任务,以 及一个“计帐”任务。根据SPU RAM 532容量的大小,可以将“交换 模块”从RAM中换出,并临时存放到二级存贮器652中,直到下次继 续执行。这样,SPE在运行于多任务分配模式时可以使一个或多个任 务“睡眠”。在最简单的方式下,SPE可以有一个“活动”任务和另 一个“睡眠”任务(如控制任务,在其控制下活动任务才得以运行), 前者正在执行,而后者被换出活动执行空间。核心/调度程序552可在 任何时刻换出任务。

任务管理器576可使用内存管理器578来协助自己完成交换操作。 为将任务换出安全执行空间,从RAM或(举例来说)SPU 500的其它 内部存贮器中读取适当信息,然后将“交换模块”写到二级存贮器652 中。核心552为了将任务换回安全执行空间,从二级存贮器652中读出 交换模块,然后将适当信息写回SPU RAM 532。由于二级存贮器652 是非安全的,SPE 503在将交换模块写入二级存贮器652之前必须首先 对之进行加密并加密封装(例如使用单向散列函数,该函数由只在SPU 500内部公开的保密数值进行初始化)。SPE 503必须首先对从二级存 贮器652读出的交换模块进行解密,并验证其加密封装,之后才能将之 送回安全执行空间继续执行。

为将“交换模块”加载到SPU内存中,可能需要进行一个或多个 “分页操作”,“分页操作”可能首先保存所有与早先加载的交换模块 有关的“脏页”(即由SPE 503改写过的页),然后对这些页进行刷新, 之后将新交换模块上下文所需的所有页加载进去。

核心/调度程序552最好使用服务中断队列588来管理“交换模 块”。服务中断队列588允许核心/调度程序552跟踪任务(交换模块) 及其状态(运行状态、“被换出”状态、或“睡眠”状态)。在较佳实 施例中,核心/调度程序552可以含有下列服务中断队列588以协助自 己管理“交换模块”:

运行(RUN)队列

交换(SWAP)队列

睡眠(SLEEP)队列

运行队列中存放的是那些已完全加载进安全执行空间并等候和/或 正在使用微处理器502执行周期的任务。交换队列中存放的是那些被 “换出”的任务(例如,这些任务正在等待其它可交换部件被加载进 来)。睡眠队列存放的是那些正在睡眠的任务(例如,这些任务被除处 理器周期之外的另一些资源所“阻塞”,或者当前不需要这些执行任 务)。核心/调度程序任务管理器576可以(举例来说)按照“轮转” 调度算法在运行队列和交换队列之间转换任务,轮转法选择下一等待服 务的任务,将任何需要调页进来的部分交换进来,然后执行任务。核心 /调度程序任务管理器576在需要的时候可以在睡眠队列和活动(即运 行或交换)队列之间转换任务。

在多任务分配环境中,当两个或多个任务试图对同一数据结构进行 写操作时,会出现可能导致“死锁”或“任务饥饿”的情况。可以使用 “多线程”任务分配配置以避免“死锁”或“任务饥饿”出现。较佳实 施例核心/调度程序552可以支持“单线程”或“多线程”任务分配。

在单线程应用中,核心/调度程序552在单个数据结构被加载的时 候将之“锁定”。一旦锁定以后,任何其它SPE 503任务都不能加载这 些数据结构,同时被“阻塞”,以等待该数据结构变为可用。作为一个 实际情况,使用单线程的SPE 503可以限制外部厂商创建加载模块1100 的能力,这是因为不能保证他们创建的加载模块与那些他们知之甚少或 毫不知晓的其它VDE进程之间不会发生死锁情况。而且,对只更新了 一部分的记录进行上下文交换可能会破坏系统的完整性,纵容了未经计 量的使用,以及/或者导致死锁。另外,这种“锁定”机制将给通常具 有时间紧迫性的进程带来可能难以预料的延迟,还可能限制SPE 503 的吞吐量,并可能增加开销。

除了上述问题难以解决外,实现单线程的SPE 503还带来其它重大 处理问题,在某些情况下这些问题可以限制SPE 503的有用性和能力。 例如在单线程SPE 503中,多个并行执行的任务如果使用同一个经常被 访问的数据结构,就可能无法执行下去。这实际上会把并行任务的数目 限制成一个。另外,单线程机制可能无法根据并行任务的数目产生准确 的概要预算,这是因为多个并行任务可能无法有效地共享同一个概要预 算数据结构。单线程机制还可能会使审核进程无法与其它进程并行执 行。举例来说,为了审核跟监控进程有关的预算和计量,可能需要停止 某个实时输入处理。

为了提供更加可行的“单线程”功能,一种方法是让核心/调度程 序552使用虚拟页处理算法,在数据区被写入时对“脏页”进行跟踪。 可以将“脏页”作为交换模块局部数据的一部分与交换模块一起换进或 换出。当存在一个任务时,可以使用一种三路合并算法将“脏页”与当 前数据结构(该数据结构可能被SPU 500的其它任务更新)进行合并, 三路合并算法的过程是将原始数据结构、当前数据结构和“脏页”进行 合并以形成一个新的当前数据结构)。在更新处理中,当对页进行比较 或交换操作时,可以对数据结构进行锁定。尽管这种虚拟分页方案可能 在某些应用中支持单线程机制,由于存在着上面提到的厂家限制,在某 些情况下这种单线程实现只适用于某些专用的硬件。任何支持多用户的 实现(如“智能家庭”顶置系统、许多桌上型系统和某些PDA应用) 都会在某些情况下遭遇单线程设备的限制。

如果不能允许上述限制存在的话,最好使用完备的“多线程”数据 结构写功能。例如,可以一种“两阶段提交”处理过程以支持数据结构 被多个进程共享,上述“两阶段提交”方法是数据库厂家所使用的处理 方法之一。为了实现这种“两阶段提交”过程,每个交换模块可以含有 指向附加内存块的页地址,这些附加内存块用来存贮改变了的信息。一 个改变页是已被SPE进程定入的某个数据元素片段的的一份局部拷 贝。在较佳实施例中,与特定数据结构相关的被改变页引用存放在交换 模块的局部区域。

例如,SPE 503可以支持每个数据结构有两个改变页。通过改变交 换模块结构的大小并允许更新算法处理所有被改变的页,便可以方便地 改变上述限制。当准备丢弃某个引用了被改变页的交换模块时,可以激 活“提交”进程。提交进程将被早先加载的原始数据元素(如UDE0), 当前数据元素(如UDEn)以及被改变页合并成一个新的数据元素拷贝 (如UDEn+1)。DTD解释程序590可以使用数据元素的DTD来解 决合并中出现的差异问题。如果没有其它交换模块再引用原始数据元 素,那么该数据元素将被丢弃(举例来说,丢弃将取决于其DTD使用 计数)。

B.核心/调度程序内存管理

在较佳实施例中,内存管理器578和虚拟内存管理器580对SPU 500内的存贮器ROM 532和RAM 534进行管理。虚拟内存管理器580 提供了完全“虚拟”的内存系统,从而使SPE安全处理环境可用的“虚 拟”内存容量超过了由SPU 500提供的物理RAM 534a容量。内存管 理器578管理安全执行空间中的内存,控制如何对其访问、分配和回 收。在较佳实施例中,如果有SPU MMU 540的话,它将支持虚拟内存 管理器580和内存管理器578。在SPU 500的某些“最小”配置中,可 以不提供虚拟内存功能,而所有的内存管理工作都由内存管理器578来 完成。内存管理还可以用来加强SPE 503所提供的安全性。举例来说, 在某些类型的SPU 500中,核心内存管理器578可以使用硬件内存管理 部件(MMU)540在SPU内部提供页级保护。这种基于硬件的内存 管理系统提供一种有效的机制,用来保护VDE部件组690免受“恶意” 加载模块的侵害。

另外,如果内存管理器578的操作至少部分以基于硬件的MMU 540为基础,那么它提供的内存管理机制将可以安全地实现和强化一个 提供多个保护区域(domain)的内存体系结构。在这种体系结构中, 内存被划分为大量的区域,这些区域在极大程度上互相隔离,并在内存 管理器578的控制之下只能共享特定的内存区。一个正在执行的进程不 能访问其区域之外的内存,并且只能通过特定服务与其它进程进行通 信,这些特定服务由SPU 500中特权级核心/调度程序软件552提供和 传递。如果至少部分地得到了MMU 540内部硬件的加强,那么上述体 系结构就更具安全性,任何运行于SPU 500内部的、基于软件的进程是 无法修改MMU 540内部硬件的。

在较佳实施例中,对实现于ROM 532中的服务的访问,以及对诸 如NVRAM 534b和RTC 528等物理资源的访问都要受到特权级核心/ 调度程序软件552和MMU 540内部硬件的中介。ROM 532和RTC 528的请求享有特权,这是为了保护对关键系统部件处理程序的访问(如 RTC 528)。

内存管理器578负责分配和回收内存,监督进程间的内存资源共享 情况,并强制执行内存访问/使用限制。SPE核心/调度程序内存管理器 578通常在初始时将所有的内存都分配给核心552。可以对内存管理器 578进行适当配置,以便在页被特定进程加载之后只允许对这些页进行 进程级的访问。在SPE操作系统配置的一个例子中,内存管理器578 使用一种简化了的分配机制进行内存分配。举例来说,可以用一个位图 分配向量来表示SPE 503中由每个可访问内存页组成的表。在一个内存 块中,一组连续的内存页可以起始于一个特定的页号。块的大小由它跨 越的内存页的数目来计量。可以通过设置/清除分配向量中的相应位来 记录内存的分配。

为协助内存管理功能,可在存储器块上预挂一个“内情向量”(dope vector)。“内情向量”可以含有某些信息,以允许内存管理器578对 内存决进行管理。在最简单的形式下,一个内存块可以被结构化成一个 “内情向量”,以及后跟该块的实际内存区域。该“内情向量”可以含 有块号、对数据元素动态调页的支持信息以及检测内存重写的标记。内 存管理器578可以根据块号来跟踪内存块,并且可以在使用块之前将块 号转换成地址。对内存区的所有访问都可以在从块内存到物理地址的转 换过程中自动地偏移“内情向量”的大小。虚拟内存管理器580也可以 使用“内情向量”来协助管理虚拟内存。

在较佳实施例中,由内存管理器578执行的ROM 532存贮器管理 工作相对比较简单。所有的ROM 532页面都被标记为“只读的”和“不 可调页的”。EEPROM 532b存贮器管理可能稍微复杂一些,这是因为 需要对每个EEPROM页面的“烧入计数”(burn count)进行维护。

可能需要保护SPU EEPROM 532b使之避免所有未加控制的写入 操作,这样可以保证该存贮器特定型号的有限写入寿命不被滥用。另 外,在某些例子中,EEPROM的页面可以与内存管理地址页的大小不 同。

SPU NVRAM 534b最好是由电池后备供电的RAM,该RAM带 有一些访问限制。内存管理器578可以保证需定位到NVRAM 534b中 的控制结构在“垃圾收集”过程中不会被重新定位。如上所述,内存管 理器578(如果存在MMU 540的话还包括MMU 540)可以在页面级 对NVRAM 534b和RAM 534a进行保护,使之免受其它进程的破坏。

虚拟内存管理器580为程序和数据提供SPU外部存贮器和SPU内 部RAM 534a之间的页调度功能。有可能数据结构和可执行进程会超出 所有SPU 500内部存贮器的限度。例如,PERC 808以及其它基本的控 制结构可能相当大,并且“位图表”也可能会变得很大。这种突发性问 题可以采用两种方法来解决:

(1)划分加载模块1100;以及

(2)支持虚拟页面机制

加载模块1100之所以能被“划分”,是因为在许多情况下,它们 可以分成独立的部件,而只有其中的一个子集才必须被加载供执行。在 本例中,加载模块1100是可调页的最小可执行元素。这种加载模块1100 可以划分为独立的部件(如划分为可执行码和大量的数据描述块),为 执行简单的加载模块功能,这些独立的部件中只有一个才必须被加载。 采用这种结构,可以使加载模块1100在初始时只加载执行码,并根据 需要将数据描述块加载到系统其它页面中。许多加载模块1100的可执 行部分可能太大,以致无法安放在SPU 500中,这时可将这些加载模块 1100重新构造成两个或更多的加载模块。大的加载模块可以被手工“划 分”成多个小的加载模块,并通过显式加载模块引用将它们相互“链接” 在一起。

虽然可以用“请求式页调度”来放松上述部分限制,而较佳实施例 使用了虚拟页调度机制来管理大数据结构和可执行程序。虚拟内存管理 器580将信息(如可执行代码与/或数据结构)“换”入或“换”出SPU RAM 534a,并提供了其它相关的虚拟内存管理服务,以支持完备的虚 拟内存管理功能。使用虚拟内存管理机制的一个重要原因是该机制允许 用SPE 500配置中的有限资源来执行大任务和/或多任务。

C.SPE加载模块执行管理器S68

SPE(HPE)加载模块执行管理器(“LMEM”)568将可执 行程序加载到由内存管理器578管理的内存中,并将之执行。LMEM 568提供了一种机制,用来对当前已加载到受保护执行环境中的加载模 块进行跟踪。LMEM 568还提供了对保存在SPE 503中的基本加载模 块和代码段的访问机制,这些基本加载模块和代码段对于SPE 503来说 是始终可用的。(举例来说,)LMEM 568可以被希望执行其它加载 模块的加载模块1100所调用。

在较佳实施例中,加载模块执行管理器568含有一个加载模块执行 器(“程序加载器”)570、一个或多个内部加载模块572、以及库例 程574。加载模块执行器570(例如从内存管理器578收到一段内存分 配之后)将可执行程序加载到内存中以便执行。内部加载模块572可以 提供一组(保存于ROM 532或NVRAM 534b中的)通用基本加载模 块1100。库例程574可以提供一组通用的代码段/例程(如引导例程) 供SPE 503执行。

库例程574可以提供一组存放于ROM 532中的标准库函数。可使 用这些标准的库函数及其入口点和参数的一张标准清单。加载模块1100 可以调用这些例程(例如使用一个为此保留的中断)。这种库调用机制 将代码移到了一个中心位置并支持高度的代码重用,这样可以减少加载 模块的大小。所有由SPE 503使用的加载模块1100都最好被加载模块 执行管理器568所引用,加载模块执行管理器568维护并扫描一个可用 加载模块的表,并选择适当的加载模块以便执行。如果所需的加载模块 没有出现在SPE中,那么该任务将进入“睡眠”状态,同时LMEM 586 可以请求将该加载模块从二级存贮器652中加载进来。该请求将发出两 个调用,一个调用以RPC调用的形式发向安全数据库管理器566,使 之检索出该加载模块以及相关数据结构;另一个调用发向加密/解密管 理器556,使之首先对该加载模块进行解密,然后再将它存放在由内存 管理器578分配的内存中。

说得更详细一点,为执行某个加载模块1100,较佳实施例将所需 加载模块1100的名字(如VDE标识)传递给加载模块执行管理器568。 LMEM 568首先搜索“存贮器内”的和“内置”的加载模块572表。 如果在该表内不能发现所需的加载模块,它便发出一个RPC请求,要 求从安全数据库610得到一个拷贝,该RPC请求可以被图12所示的安 全数据库管理器744所处理。然后加载模块执行管理器568可以请求内 存管理器578分配一个内存页面以存放该加载模块1100。加载模块执 行管理器568可以将上述加载模块复制到那个内存页面中,并将该页放 入队列中,以便由加密/解密管理器556和密钥及标记管理器558进行 解密和安全检查。一旦该页经过解密和检查,加载模块执行管理器568 将检查其合法性标记,并将该加载模块插入到调入模块表中,然后将页 面地址返回给调用程序。然后调用程序可以直接调用该加载模块 1100,或让加载模块执行模块570为其发出调用。

图15a详细地示意了通道头信息596和通道594的可能格式,通道 594含有通道详细记录594(1),594(2),...594(N)。通道头信息596可以 含有通道标识字段597(1)、用户标识字段597(2)、对象ID字段597(3)、 一个包含对“权利”所做引用或所做其它标记(即一组事件,这些事件 由PERC 808和/或“用户权利表”464所引用的方法提供支持)的字 段597(4)、事件队列597(5)、以及一个或多个字段598,字段598利用 通道详细记录(“CDR”)对特定的事件代码进行交叉引用。通道头 信息596还可以带有“跳转”表或引用表599,表599允许对相关部件 组690中的元素进行寻址。每个CDR 594(1),...594(N)都对应于由通道 594作出响应的某个特定事件(事件代码)。在较佳实施例中,这些 CDR或者显式或者通过引用方式包含了各个方法核心1000N(或其片 段)、加载模块1100以及数据结构(如URT、UDE 1200和/或MDE 1202),这些都是处理相应事件所需要的信息。在较佳实施例中,一 个或多个CDR(如594(1))可引用一个控制方法和作为数据结构的URT 464。

图15b例示了在较佳实施例中,SPE 503为“打开”通道594所需 执行的程序控制步骤。在较佳实施例中,通道594向特定的VDE对象 300、特定的授权用户、以及特定“权利”(如事件类型)提供了事件 处理。可以将这三个参数传递给SPE 503。执行于“通道0”中的部分 SPE核心/调度程序552最初可以通过分配一个由SPE 503处理资源所 支持的可用通道(步骤框1125)来响应这个“打开通道”事件,“通 道0”是由低层服务582在“引导”例程中创建的。然后该“通道0” “打开通道”任务可向安全数据库管理器566发出一系列请求,以便获 取一份“蓝图”(blue print),利用该“蓝图”来创建与通道594相 关的一个或多个部件组690(步骤框1127)。在较佳实施例中,“蓝 图”可以含有一个PERC 808和/或URT 464。通过使用传向“打开通 道”例程的“对象、用户、权利”参数,将对象注册表460记录、用户 /对象表462记录、URT 464记录、以及PERC 808记录相互链接在一 起,这样就得到了这张“蓝图”。“打开通道”任务最好向密钥和标记 管理器588发送调用请求,以便对与上述各种记录相关的标记进行验证 和关联,从而确保它们是可信的和匹配的。然后较佳实施进程把适当的 信息写至通道头信息596(块1129)。这些信息可以包括(举例来说) 用户ID、对象ID、和一个引用,该引用指向了通道将要处理的“权 利”。较佳实施例进程将使用“蓝图”访问(例如访问安全数据库管理 器566和/或来自加载模块执行管理器库568)适当的“控制方法”, 这些“控制方法”可实际用来监控通道594中所有其它方法1000的执 行(步骤框1131)。然后该进程把该控制方法与通道相“装配”(bind) (步骤框1133),这个步骤将包括将URT 464的信息作为控制方法的 数据结构合并到通道中。接着该过程向通道594传递一个“初始化”事 件(步骤框1135)。该“初始化”事件可以由通道服务管理器562创 建,通道服务管理器562发出原始调用要求被创建的通道处理某个服 务。另外,与通道刚装配的控制方法本身也可以产生一个初始化事件, 并实际上将该事件传给自身。

为响应该“初始化”事件,控制方法可以创建通道详细记录 594(1),.594(N),这些通道详细记录用来处理除“初始化”事件之外的 其它事件。执行于通道内的控制方法可以访问各种部件,这些部件是它 根据在步骤1127中访问到的“蓝图”来创建相关的部件组690(步骤 框1137)所需要的。通过创建一个相关的通道详细记录将每个上述部 件与通道594相装配(步骤框1139),此处的通道详细记录规定了用 来响应上述事件的方法核心1000N、加载模块1100和相关数据结构(如 UDE 1200和/或MDE 1202)。通道详细记录的数目取决于“权利”能 够服务的事件数目,所述“权利”由“蓝图”(即URT 464)来指定。 在此过程中,控制方法将创建“交换模块”,以便实际地生成所有需要 的任务,并从核心562获取必要的内存分配。做为必要的步骤,该控制 方法将向安全数据库610发送请求以检索所需部件,向加密/解密管理 器556发送调用以解密检索到的加密信息,向密钥和标记管理器558发 送调用以确保所有检索到的部件都是有效的。借助通道头信息事件代码 /指针记录598并通过创建由通道详细记录594(1),...594(N)所引用的相 应交换块,将每个在前述步骤中创建的不同部件组690与通道相装配。 当该进程完成后,通道594就被完全创建好了,并且已经可以响应其它 事件了。作为最后的步骤,如果需要的话,图15b中进程将回收“初始 化”事件任务以便释放资源。

一旦通道594以按照上述步骤创建好,它就可以在事件到来时进行 响应。通道服务管理器562负责将事件调度给通道594。每当一个新的 事件(如通过RPC调用)到来,通道服务管理器562将对该事件进行 检查,以确定是否存在一个能处理该事件的通道。如果确实存在这样的 通道,通道服务管理器562就把该事件传送给这个通道。为处理该事 件,任务管理器576有必要将某些“可交换模块”交换进来,这些“可 交换模块”被通道详细记录定义为活动任务。通过这种方式,在图15b 所示通道打开过程中形成的可执行部件组690被装入活动的安全执行 空间中,同时已激活的特定部件组被选择来响应所接收的事件代码。被 激活的任务将执行所需功能以响应该事件。

为撤除一个通道,由通道详细记录定义的各种交换模块将被撤消, 通道头信息596中信息将被清除干净,并使该通道可被“通道0”“打 开通道”任务再分配。

D.SPE中断处理程序584

如图13所示,核心/调度程序552还提供了内部中断处理程序584。 它可以协助管理SPU 500的资源。对于所有重要的组件,SPU 500最 好或者执行于“中断”模式或者执行于“查询”模式。在查询模式,核 心/调度程序552可以对SPU 500内部的每个组件/电路进行查询,并为 之仿真一个中断。较佳实施例中的SPU 500最好支持下面的中断:

RTC 528的“滴答”中断(tick)

来自总线接口530的中断

电源失效中断

监视计时器中断

来自加密/解密机522的中断

内存中断(如来自MMU 540)

当出现一个中断时,微处理器520中的中断控制器将使微处理器开 始执行一个相应的中断处理程序。中断处理程序是核心/调度程序552 提供的一段软件/固件,它使微处理器520在中断发生时执行特定的处 理。中断可以被“矢量化”,于是不同的中断源可实际导致执行不同的 中断处理程序。

当实时RTC 528“脉动”时会产生“计时器滴答”中断。计时器 滴答中断由计时器滴答中断处理程序进行处理,用来计算内部设备日期 /时间,并产生一个计时器事件供通道处理。

总线接口部件530可产生一系列中断。在较佳实施例中,仿造 USART设计的总线接口530在各种情况下(如“接收缓冲区满”,“发 送缓冲区空”以及“状态字改变”)将产生不同的中断。核心/调度程 序552为服务发送缓冲区空中断,将从发送队列中传送下一字符到总线 接口530。核心/调度中断处理程序584为服务所接收的缓冲区满中断, 将读出下一字符,将之附在当前缓冲区之后,并根据总线接口530的服 务机状态对缓冲区进行处理。核心/调度程序552最好处理状态字改变 中断,并对相应的发送/接收缓冲区进行相应访问。

当SPU 500检测到一个急迫的电源失效状态时,它将产生一个电源 失效中断。这可能要求马上采取措施避免信息丢失。例如,在较佳实施 例中,电源失效中断将把最近写入的所有信息(即“脏页”)转移到非 易失性的NVRAM 534b,将所有交换模块标记为“换出”,并设置相 应的电源失效标志,通过采取以上种种措施,可以使将来的恢复处理变 得容易一些。然后核心/调度程序552可以定期查询状态字中的“电源 失效位”,直到该数据被清除,或者电源被完全切断。

本例中的SPU 500含有一个通常的监视计时器,监视计时器定期地 产生监视计时器中断。监视计时器中断处理程序对内部设备进行检查, 以确保没有发生破坏现象。将监视计时器和RTC 528的内部时钟进行 比较,以确保SPU 500目前没有被暂停或探测,同时,还要对SPU 500 的操作进行其它的内部检查以探测破坏。

加密/解密机522在处理了一块数据之后将产生一个中断。核心中 断处理程序584对被加密/解密数据块的处理状态进行适当调整,然后 传递该数据块进行下一阶段的处理。对于下一需要进行加密的数据块, 其密钥被取至加密/解密机522,之后下一加密过程开始。

当一个任务试图访问的内存越过了分配给它的区域,内存管理部件 540中断将会产生。内存管理部件540中断处理程序捕获上述请求,并 采取必要的处理(例如将控制转移给内存管理器578和/或虚拟内存管 理器580)。通常,任务将会失败,同时会产生一个页故障异常,或者 相应的虚拟内存页将会调入。

E.核心/调度程序低层服务582

在较佳实施例中,低层服务582提供了“低层”功能。举例来说, 在较佳实施例中,这些功能可以包括:上电初始化、设备通电自检 (POST)、以及故障恢复例程。较佳实施例中的低层服务582还可以 (或者通过它们自身或者结合验证管理器/通信服务管理器564)提供 下载应答-询问式通信协议及验证通信协议,并且可以为SPU 500存贮 器设备如EEPROM和FLASH存储器提供某些低层管理(或者通过它 们自身或者结合内存管理器578和/或虚拟内存管理器580)。

F.核心/调度程序BIU处理程序586

较佳实施例中的BIU处理程序586管理总线接口部件530(如果 总线接口部件530存在的话)。举例来说,它可以为BIU 530管理读和 写缓冲区,提供BIU起动初始化,等等。

G.核心/调度程序DTD解释程序590

在较佳实施例中,DTD解释程序590处理数据格式问题。例如, 根据DTD内部的格式化指令,DTD解释程序590可以自动打开诸如 UDE 1200之类的数据结构。

上面讨论的核心/调度程序552支持SPE 503提供的所有其它服 务。下面将叙述这些其它服务。

II.SPU通道服务管理器562

在较佳实施例中,“通道”是SPE 503(HPE 665)的基本的任 务处理机制。ROS 602为“方法”提供了事件驱动接口。“通道”使 部件组690可以对事件进行服务。“通道”是一种管道,它用来将“事 件”从SPE 503(HPE 665)所支持的服务传送给处理这些事件的各 种指定方法和加载模块,它同时还支持部件组690的装配和部件组690 之间的交互作用。更详细地说,“通道”594是通道管理器593所维护 的一个数据结构,通道管理器593将一个或多个加载模块1100与数据 结构(如UDE 1200和/或MDE 1202)“装配”到一起从而形成一个 部件组690。通道服务管理器562使加载模块执行管理器569加载该部 件组以便执行,同时还负责将事件传递到通道594,以便部件组690作 出响应。在较佳实施例中,事件处理是作为向通道服务管理器562发送 的消息来处理的。

图15示意了较佳实施例通道服务管理器562创建“通道”594的 过程,还示意了通道和部件组690之间的关系。简要地说,SPE通道 管理器562创建“通道”及相关的“通道头信息”596。通道594及其 头596含有一个数据结构,该数据结构“装配”或引用一个或多个部件 组690。于是,较佳实施例中的通道594是一种机制,它将图11E中所 示的元素收集或组装在一起,从而形成部件组690,该部件组690可以 用来进行事件处理。

为响应某个事件的发生,通道服务管理器562将创建通道594。一 旦通道创建好之后,通道服务管理器562可根据通道594向加载模块执 行管理器568发送功能调用。加载模块执行管理器568将加载由通道 594引用的加载模块1100,并请求核心/调度程序任务管理器576执行 该加载模块1100。核心/调度程序552将事件处理请求视为一个任务而 执行之,即执行由上述通道引用的加载模块1100所含的代码。

通道服务管理器562可以被传递给一个事件标识码(如事件代 码)。通道服务管理器562对一个或多个方法核心1000’进行语法分析。 这些方法核心1000’是通道服务管理器准备组装的部件组690的一个组 成部分。通道服务管理器562进行语法分析是为了确定针对不同的事件 类型应该调用那些方法和数据结构。然后通道服务管理器562(例如向 安全数据库管理器566)发出调用以获取创建部件组690所必须的方法 和数据。(如果需要的话,)这些被调用方法和数据结构(如加载模块 1100、UDE 1200和/或MDE 1202)都要使用加密/解密管理器556进行 加密,然后再使用密钥和标记管理器558进行验证。通道服务管理器 562创建所有必须的“跳转表”引用,以便实际将上述元素“链接”或 “装配”在一起,形成一个紧密结合在一起的可执行程序,从而使加载 模块可以引用数据结构和部件组中的其它加载模块。然后通道管理器 562向LMEM 568发出调用,以便将该可执行程序作为一个活动任务 进行加载。

图15示意了通道594可以引用另一个通道。通道服务管理器562可 以创建任意数目的通道594以便与另一个通道交互作用。

较佳实施例中的通道头596是(或引用)一些数据结构和相关控制 程序,这些控制程序将来自通道事件源的事件排入队列,处理这些事 件,并释放由“通道详细记录”所指定的供处理的相应任务。在较佳实 施例中,“通道详细记录”把一个事件与有关该事件的“交换模块”(即 任务)链接在一起。“交换模块”可以引用一个或多个加载模块1100、 UDE 1200以及私有数据区,它们是对事件进行正确处理所必须的。对 于各个通道能响应的不同事件,均要创建一个交换模块和对应的通道详 细记录。

在较佳实施例中,通道服务管理器562为支持通道562的创建和 维护,可支持下列的(内部)调用:     调用名     源     说明 “Write Event” (“写事件”)     写   向通道写入一个事件以便该通 道进行响应。因而“Write Event”调用允许调用程序将一个 事件插入到与该通道相关的队列 中。接着该事件将依次由通道594 进行处理。 “Bind Item”(“装     配项”) 输入输出控制     (Ioctl)   以适当的处理算法将某项装配在 一起并送入通道中。Bind Call调用 允许调用程序将VDE项ID装配到 通道中(如创建一个或多个与通道 相关的交换块)。该调用可以对单个 交换模块的内容进行操作。 “Unbind Item” (“解除装配项”) 输入输出控制     (Ioctl)   以适当的处理算法从一个通道中 解除一项的装配。Unbind Item调 用允许调用程序解除某个项与某个 交换模块之间的装配。该调用可以 对单个交换块的内容进行操作。

SPE RPC管理器550

前面已经结合图12介绍过,在较佳实施例中,ROS 602的体系结 构是基于远程过程调用的。ROS 602含有一个RPC管理器732,RPC 管理器732在服务之间传递RPC调用,而这些服务必须都具有与该 RPC管理器的接口,即RPC服务接口(“RSI”)。在较佳实施例中, SPE 503(HPE 655)同样构筑在相同的RPC概念之上。SPE 503 (HPE 655)可以含有大量的模块化内部服务提供者,而每个上述内 部服务提供者都向(SPE(HPE)内部的)RPC管理器550提供 RSI。这些内部服务提供者可以使用RPC服务请求互相进行通信,并 且/或者与其它ROS RPC管理器732进行通信(从而可与ROS 602提 供的任何其它服务以及与外部服务进行通信)。

SPE 503(HPE 665)内部的RPC管理器550与图12所示的RPC 管理器732不相同,但它却在SPE(HPE)内部执行相似的功能:它 接收RPC请求,将之传递给特定RSI,该RSI由可处理上述请求的服 务所提供。在较佳实施例中,通过SPE(HPE)核心/调度程序552在 ROS RPC管理器732和外界(即SPE设备驱动程序736)之间传递请 求。核心/调度程序552本身也能够服务某些RPC请求,但它通常将 收到的RPC请求传递给RPC管理器550以便转送给SPE(HPE) 内部的相应服务。在一个可选的实施例中,可以直接将请求在HPE、 SPE、API、通告接口以及其它外部服务之间进行传递,而不是通过 ROS RPC管理器732进行转送。具体使用哪种实施例可以体现该系统 的可伸缩性的一部分。在不同通信负载和系统配置的前提下,某些实施 例要比其它实施例更加有效。服务的响应(以及这些服务自身可以产生 的附加服务请求)被送至RPC管理器550,以便再转送至SPE 503 (HPE 655)内部或外部的其它服务。

SPE RPC管理器550及其集成的服务管理器使用两个表格来发送 远程过程调用:一个RPC服务表,一个可选RPC调度表。RPC服务 表描述的是应该将指定服务转送到何处以便处理。在较佳实施例中,该 表格构成在SPU RAM 534a或NVRAM 534b中,它列出了SPU 500中 每个注册的RPC服务。RPC服务表的每一行都含有一个服务ID(标 识)、服务位置和地址、以及一个控制字节。在简单的实现中,控制字 节只表明了该服务是内部提供的还是外部提供的。在某些较为复杂的实 现中,该控制字节可用来表明服务的一个实例(例如,在一个多任务环 境中,每个服务都可以有多个“实例”)。在较佳实施例中,ROS RPC 管理器732和SPE 530可以有RPC服务表的对称拷贝。如果某个RPC 服务在RPC服务表中没有出现,SPE 503可以拒绝相应的服务请求, 或者将它传递给ROS RPC管理器732,以得到其服务。

SPE RPC管理器550接受来自RPC服务表的请求,并按照特定服 务的内部优先权对该请求进行处理。在SPE 503中,RPC服务表被一 个RPC调度表所扩充。较佳实施例RPC调度表是每个由SPE 503内部 支持的RPC服务对加载模块的引用列表。该表中的每一行都含有一个 服务该调用的加载模块ID(标识)、以及一个控制字节,该控制字节 表明了相应调用是否可以由外部调用程序发出,以及需要对该调用提供 服务的加载模块是否永久地驻留在SPU 500中。可以在SPU固件508 被加载到SPU 500中的时候把RPC调度表构成在SPU ROM 532(或 EEPROM)之中。如果该RPC调度表在EEPROM中,那么它可以灵 活地支持对服务的更新,而不会产生加载模块位置和版本控制问题。

在较佳实施例中,SPE RPC管理器550首先对照RPC服务表查阅 某个服务请求,以确定可服务该请求的服务管理器位置。然后RPC管 理器550将该服务请求转送给相应的服务管理器进行处理。SPE 503 中的服务管理器利用RPC调度表来发送该请求。一旦RPC管理器550 在RPC调度表中定位了服务引用信息,那么将利用加载模块执行管理 器568来调用和加载对相应请求提供服务的加载模块。加载模块执行管 理器568将在执行完所有必要的上下文配置之后把控制权转交给被请 求的加载模块,或者如果需要的话加载模块执行管理器568首先发出一 个调用用以将加载模块从外部管理文件610中加载进来。

SPU时基管理器554

时基管理器554支持与实时时钟(“RTC”)528相关的调用。 在较佳实施例中,时基管理器554一直被加载,并准备好对基于时间的 请求作出响应。

下表列出了时基管理器554可以支持的基本调用示例:     调用名字     说明     独立请求     Get Time     (取时间)   返回时间(本地时间、GMT时间或滴答)。     Set time   (设置时间)   设置RTC 528中的时间。对该命令的访问只 限于VDE管理员。   Adjust time   (调整时间)   改变RTC 528中的时间。对该命令的访问只 限于VDE管理员。     Set Time     Parameter (设置时间参数)   设置GMT/本地时间换算,以及用户对RTC 528时间所做调整的当前量级和可允许量级。                          通道服务管理器请求   Bind Time   (装配时间) 将计时器服务作为一个事件源装配到通道中。   Unbind Time (解除装配时间)   将计时器服务作为一个事件源从通道中解除 装配。    Set Alarm   (设置报警)     为指定时刻设置一个报警通知。在该报警时 刻,用户将收到一个报警事件的通知。该请求的 参数指定了事件、频率、以及所请求的报警处理。   Clear Alarm   (清除报警)   取消一个已请求的报警通知

SPU加密/解密管理器556

加密/解密管理器556支持对SPE 503/HPE 655所支持的各种加密/ 解密技术进行调用。可用SPU 500内部一个基于硬件的加密/解密机522 来支持加密/解密管理器556。SPU加密/解密机522所不支持的那些 加密/解密技术可以由加密/解密管理器556采用软件方式来支持。主要 的批量加密/解密加载模块最好一直被加载,而其它算法所需的加载模 块则最好在需要时调页进来。这样,如果主要的批量加密/解密算法是 DES的话,那么只有DES加载模块才需要永久驻留在SPE 503/HPE 655的RAM 534a中。

下面给出了较佳实施例中由加密/解密管理器556所支持的RPC调 用示例:     调用名                   说明   PK Encrypt   (PK加密) 使用PK(公开密钥)算法加密一个数据块   PK Decrypt   (PK解密) 使用PK算法解密一个数据块   DES Encrypt   (DES加密) 使用DES算法加密一个数据块   DES Encrypt   (DES解密) 使用DES算法解密一个数据块   RC-4 Encrypt   (RC-4加密) 使用RC-4(或其它批加密)算法加密一个数据块   RC-4 Decrypt   (RC-4解密) 使用RC-4(或其它批加密)算法解密一个数据块   Initiatize DES   Instance(初始化   DES实例) 初始化需要使用的DES实例   Initialize RC-4   Instance(初始化     RC-4实例) 初始化需要使用的RC-4实例   Initialize MDS   Instance(初始化     MD5实例) 初始化需要使用的MD5实例   Process MDS   Block(处理MD5数     据块) 处理MD5数据块

传递的调用参数可以包括:所使用的密钥、模式(是加密还是解 密)、任何需要的初始化向量、所需的加密操作(如反馈类型)、需使 用的加密实例标识、以及需要加密或解密的数据块的起始地址、目的地 地址和长度。

SPU密钥和标记管理器558

SPU密钥和标记管理器558支持的调用包括:密钥存贮、密钥和 管理文件标记查找、密钥卷积、以及随机密钥、标记和交易号码的生成。

下表示意了SPE/HPE密钥和标记管理器服务558调用示例的列表:     调用名                      说明     密钥请求     Get Key     (取密钥) 检索请求的密钥     Set Key   (设置密钥) 设置(保存)指定的密钥  Generate Key   (生成密钥) 为指定算法生成密钥(对)     Generate  Convoluted Key (生成卷积密钥) 使用指定的卷积算法和算法参数块来生成密钥     Get   Convolution   Algorirhm (取卷积算法) 为指定卷积算法返回当前设置的(默认的)卷积参数 Set Convolution   Algorithm (设置卷积算法) 为特定卷积算法设置卷积参数(调用例程必须提供标 记以便读取返回的内容)     标记请求     Get Tag     (取标记) 为特定的VDE项ID取验证(或其它)标记     Set Tag   (设置标记) 为特定的VDE项ID设置验证(或其它)标记 Calculate Hash  Block Number (计算散列块号) 为特定的VDE项计算“散列块号”   Set Hash   Parameter (设置散列参数) 设置散列参数和散列算法。强制对散列表进行重新同步   Get Hash   Parameter (取散列参数) 检索当前散列参数/算法   Synchronize   Management     Files (同步管理文件) 对管理文件进行同步,根据为VDE管理员保留的表 格中的信息重建散列块表

在较佳实施例中,密钥和标记可以在SPE 503(HPE 655)中 安全地生成。密钥生成算法通常专用于可支持的各类加密方法。在使 用生成的密钥之前可以对之进行检查,以确定该密钥在加密上是否存 在某种弱点。向密钥和标记管理器558发出的生成密钥、标记和/或 交易号请求最好以长度作为其输入参数。密钥和标记管理器558将生 成一个具有所请求长度的随机数(或其它适当的密钥数值),并将之 作为输出。

密钥和标记管理器558可支持从SPE 500中的密钥存贮区中检索特 定密钥的调用,也可支持检索保存在SUP外部的密钥的调用。这些调 用的基本格式是以密钥类型和密钥号请求密钥。通过VDE管理员的干 预许多密钥将定期更新,这些密钥存放的位置是SPU 500的NVRAM 534b或EEPROM,这是因为这些存贮器具有安全性,可以更新,并且 具有非易失性。

SPE 503/HPE 655可以支持公开密钥类型的密钥和批量加密类型 的密钥。公开密钥(PK)加密类型的密钥保存在SPU 500中,并由密 钥和标记管理器558来管理,这种类型的密钥可以包括(举例来说) 一个设备公开密钥、一个设备私有密钥、一个PK证明(certifitate)、 以及该证明的一个公开密钥。通常,如果愿意的话可以将公开密钥和证 明存放在外部的非安全存贮器中,但设备私有密钥和证明的公开密钥只 能内部存放在SPU 500的EEPROM或NVRAM 534b中。SPU 500使用 的某些批量加密密钥可以包括(举例来说)通用批量加密密钥、管理对 象私有头密钥、固定对象私有头密钥、移动对象私有头密钥、下载/初始 化密钥、备份密钥、轨迹密钥(trail Key)、以及管理文件密钥。

如上所述,较佳实施例密钥和标记管理器558支持调整或卷积密钥 以便生成新密钥的请求,举例来说,新密钥是根据地点和/或时间以确 定方式产生的。密钥卷积是某种算法过程,该算法对某个密钥以及某些 输入参数进行特定操作,最终生成一个新密钥。它可用来(举例来说) 增加可用密钥的数量,而又不致占用额外的空间来保存密钥。通过将实 时RTC 528的值作为参数,还可用这种算法来“老化”密钥。通过将 某个地点标识的某些部分作为参数,还可用这种算法实现密钥对该地点 专用化。

密钥和标记管理器558还提供有关标记生成和管理的服务。在较 佳实施例中,交易和访问标记最好由SPE 503(HPE 655)保存在安 全的存贮器中(如保存在SPU 500的NVRAM 534b中)。这些标记可 由密钥和标记管理器558生成。它们用来(举例来说)检查对数据元素 的访问权利、检查数据元素的有效性、并对数据元素进行关联。例如, 它们可用来确保安全数据结构中的部件未遭受SPU 500外界的破坏。密 钥和标记管理器558还可支持轨迹交易标记(trail transaction tag) 和通信交易标记。

SPU概要服务管理器560

SPE 503在SPU 500的可编程非易失性存贮器中和/或安全数据库 610中维护了一组检查跟踪数据。检查跟踪数据可以包含金融方面使用 的预算行为审核概要,以及SPU使用安全性概要。当向SPU发出一个 请求后,SPU将对该请求的发生作出记录,然后观察该请求是成功了 还是失败了。所有成功请求将经过统计并按照类型存放在SPU 500中。 失败信息(包括下面列出的元素)将与失败详情一起被保存起来。 访问失败后保存在SPE中控制信息     对象ID     用户ID     失败类型     失败时间

可以对这些信息进行分析,以便检测破坏性的企图,或鉴别超过预 期(或预算)限额的使用模式。SPU 500中的检查跟踪历史可以一直保 存着,直到将它报告给适当方面为止。这样就可以使系统记录对合法失 败的分析以及对SPU进行秘密分析的企图。

概要服务管理器560可以存贮和维护这些内部概要审核信息。审核 信息可用来检测安全性受到的侵犯或者SPE 503操作的其它方面。 SPE 503(HPE 655)或VDE管理员可维护、分析和使用事件概要, 以便发现对电子设备600的不合理使用,并可以对这种使用进行限制。 在较佳实施例中,这些参数可以存放在安全存贮器(例如存放在SPU 500的NVRAM 534b)中。

在较佳实施例中,概要服务用于两种基本结构中。一种结构(“事 件概要数据结构”)是专用于VDE管理员的,它对事件进行跟踪。事 件概要数据结构可在VDE管理员的定期干预之中得到维护和审核。另 一个数据结构由VDE管理员和/或分发者用来进行总体预算。在初始化 电子设备600时,VDE管理员可以注册事件概要和总体预算概要。(举 例来说,)在安全管理文件610遭受破坏的时候,VDE管理员可以得 到总体预算概要的报告,并使用该预算概要来确定预算使用的分布情 况。得到适当许可的参与者可向概要服务管理器560注册他们的过程 (如特定的预算),然后概要服务管理器560可以(例如在NVRAM 534b 中)保留出一部分安全存贮器空间,并保存所需的使用和/或访问参数。 对每个概要的访问和修改都可以由其自身的访问标记来控制。

下表示意了PPE概要服务管理器560服务调用的列表:     调用名     说明 Greate Summary     info (创建摘要信息) 如果用户拥有请求某概要服务的“证明”,则创建 该服务。     Get value     (取值) 返回概要服务的当前值。调用者为使用该请求必须 提供一个适当的标记(和/或“证明”)。     Set value     (设置值) 设置概要服务的值。     Increment     (增加) 增加指定的概要服务(如标量计量的概要数据区 域)。调用者为使用该请求必须提供一个适当的标 记(和/或“证明”)。     Destroy     (取消) 取消指定的概要服务,条件是用户必须带有一个适 当的标记和/或“证明”以允许他使用该请求。

在较佳实施例中,事件摘要数据结构使用固定的事件号码在查找表 中进行检索。查找表含有一个数值,该数值可以被配置为一个计数器或 计数器外加极限。VDE管理员可以使用计数器模式来确定设备使用情 况。极限模式则可用来限制破坏,或限制对电子设备600的不合理使 用企图。如果发生超出极限的事件,SPE 503(HPE 655)将拒绝服 务用户的请求,直到VDE管理员复位SPE 503(HPE 655)为止。 对系统范围内的事件概要进程所发出的调用最好编入所有负责处理该 事件的加载模块中。

下表示意了较佳实施例事件概要数据结构可以独立计量的事件示 例:   事件类型   Successful     Events   (成功事件) 成功完成了初始化 用户合法性验证通过 建立了通信 通道负载被设置为指定值 完成了解密 更新了密钥信息 创建了新的预算或更新了现有预算 生成了新的计帐信息或更新了现有的计帐信息 创建了新的计量值或更新了现有计量值 创建了新的PERC或更新了现有PERC 注册了新对象 成功地处理管理对象 成功了进行了审核 所有其它事件 Failed Events (失败事件) 初始化失败 合法性验证失败 通信尝试失败 加载通道请求失败 有效性检查尝试失败 辅助项链接与关联标记之间的匹配失败 授权尝试失败 解密尝试失败 可用预算不能满足完成所请求的过程 未发生审核 管理对象处理出错 其它失败事件

另外,由较佳实施例概要服务管理器560维护的“货币总体预算” 概要数据结构允许对VDE电子设备600进行注册。其第一表项代表货 币总体预算花费值,该表项由第一个初始化SPE 503(HPE 655)的 管理员进行注册。某些货币花费加载模块以及对花费的货币预算进行审 核处理的审核加载模块可调用概要服务管理器560以更新货币花费 值。某些经过特别授权的加载模块可以具有对货币总体概要的访问权。 同时,可以为个体提供者注册附加概要。

SPE验证管理器/服务通信管理器564

验证管理器/服务通信管理器564支持用户口令验证以及“证明” 的产生和有效性检查调用。它还可支持SPE 503与外部节点或设备(如 VDE管理员或分发者)之间的安全通信。在较佳实施例中,它可支持 下面的有关有效性验证的服务请求示例:     调用名     说明     用户服务     Create User     (创建用户) 创建一个新用户,并保存名字服务记录 (NSR)以供名字服务管理器752使用。   Authenticate User     (验证用户) 验证用户使用系统的合法性。该调用允许调用者验 证指定的用户ID。该调用也可以验证用户的组员 资格。该验证过程返回用户的“证明”。     Delete User     (删除用户) 删除用户的NSR和相关记录     证明服务   Generate Ticket     (生成证明) 产生一个“证明”以便用于一种或多种服务   Authenticate Ticket     (验证证明) 验证某个“证明”

上表中没有包含对安全通信服务的调用。管理器564提供的安全通 信服务可以(例如如果需要的话与低层服务管理器582一起)提供基于 公开密钥(或其它)询问-应答协议的安全通信。本文前面已经详细论 述了该协议。在电子设备600可由多个用户使用的情况下,“证明”对 电子设备600标识了这些用户。利用证明授予协议(如Kerberos), VDE软件应用程序可以请求并得到证明。为了授权特定服务,VDE部 件可以要求提供证明。

SPE安全数据库管理器566

安全数据库管理器566对SPE 503外部的存储器上的安全数据库 610中的安全数据库记录进行检索、维护、与存贮。许多安全数据库文 件610是以加密形式保存的。因而所有被安全数据库管理器566检索的 安全信息在使用之前都必须首先解密。对于由SPE 503(HPE 655) 生成的、必须存放于安全执行环境之外的安全信息(如使用记录),在 经由安全数据库管理器566将之保存到安全数据库文件610中以前, 也必须由加密/解密管理器556进行加密。

对于每个加载进SPE 503的VDE项,较佳实施例中的安全数据库 管理器566可以对一个主表进行搜索以便找到该VDE项ID,然后对 照项中交易标记检查主表中的相应交易标记,以确保提供的项是当前 项。安全数据库管理器566可以“散列结构”来维护VDE项ID和交易 标记的表,“散列结构”可以分页调入SPE 503,以便快速定位相应 的VDE项ID。较小的系统可使用查找表这种方法。在两种情况下,上 述表都必须组织成可分页的结构,以便快速地定位VDE项ID。

“基于散列”的方法可用来将表排序成“散列表元”(hash bucket),通过访问“散列表元”可以更加快速和有效地定位表中的项。 “基于散列”的方法采用整个项ID的一个子集将VDE项ID进行“散 列”,并组织成“散列”表的页。对于每个与该“散列”页相关的项, 在该页中都可含有其余VDE项ID和当前交易标记。“散列”表页号码 可以从VDE项ID的组成部分中推算出来,这些组成部分的例子有:分 发ID、条目ID、地点ID、用户ID、交易ID、制作者ID、类型和/ 或版本等等。散列算法(包括算法本身和被散列的参数)可以由VDE 管理员按照地点的不同而进行不同的配置,以便提供最佳的散列页使用 率。下面给出了散列页面结构的一个例子: 域     散列页头信息     分发者ID     项ID     地点ID     用户ID     交易标记 散列页表项     制作者ID     项ID     类型

在本例中,对于每个散列页来说,如果其中的项具有相同分发者 ID、项ID和用户ID域(对于给定的电子设备600来说,地点ID是固 定的),那么该页将包含所有的VDE项ID以及交易标记。因而,可将 上述四条信息作为散列算法的参数来使用。

“散列”页自身可以被频繁更新,同时它必须含有交易标记。在每 次“散列”页被加载的时候,该交易标记都要经过检查。在每次将“散 列”页面写出的时候,也可以对交易标记进行更新。

作为“基于散列”方法的一种替代,如果可更新的项一直比较少的 话(比如在消费者专用电子设备600中),那么可为每个可更新项分配 一个唯一的顺序地点记录号,并将之作为其VDE项ID的一部分,这样 就可以采用查找表的方法。对于每个项,只需要较少字节长度的交易标 记。而且可以将所有需要频繁更新的项所含的交易标记组织成一个表存 放在诸如SPU NVRAM 534b之类的安全存贮器中。

随机数发生器管理器565

随机数发生器管理器565可以产生随机数。如果提供了基于硬件 的SPU随机数发生器542的话,随机数发生器管理器565可加以使用 以协助产生随机数。

其它SPE RPC服务592

SPU 500可以包含其它经授权的RPC服务,其实现方式是使这些 服务将它们自身“注册”到RPC服务表中,并将它们的表项添加到RPC 调度表中。例如,一个或多个部件组690可以用来提供附加的服务,这 些服务可作为SPE 503及其相关操作系统的一个整体组成部分。如果某 些服务没有注册在这些表中,那么对这些服务的请求将从SPE 503 (HPE 655)中传送出去以便得到外部的服务。

SPE 503性能考虑

SPE 503的性能为下列因素的一个函数:

所采用的部件组的复杂性

同时的部件组操作的数目

可用内部的SPU内存容量

块加密/解密算法的速度

部件组进程的复杂性以及同时运行的部件组进程的数目可能是决 定性能主要因素。这两种因素结合起来决定了在任意时刻都必须驻留在 SPU 500中的代码量和数据量(最小设备容量),因而也就决定了进程 必须划分成的设备大小“块”的数目。与较简单的模型相比,分段技术 内在地增加运行时长度。当然,具有较少特性的SPU 500在实现方案中 可以选用容量相对更少的RAM 534。使用上面提到的“聚合”加载模 块可能会失去配置VDE体系结构的灵活性,同时还可能限制参与者独 立更新分离元素的能力,但却可以减少最小的设备容量。可以构成一个 非常简单的SPU 500计量方案来以最小的设备资源操作。

SPU 500内存RAM 534的容量对SPE 503性能造成的影响比 SPU其它方面的因素更为明显。VDE进程的灵活特性允许使用大量的 加载模块、方法和用户数据元素。SPU 500的ROM 532只能容纳较少 的上述项,如果数量再多一些,在其中存放就不切实际了。当某个VDE 进程被调用的时候,该进程绝大部分所需代码和数据结构需要被动态地 加载进SPU 500中。于是SPU 500内的操作系统可将必要的VDE项调 入以执行上述进程。SPU 500的RAM 534容量将直接决定单个VDE 加载模块加上其所需数据总共可以有多大长度,同时还决定了运行一个 VDE进程所需的页交换次数。SPU I/O速度、加密/解密速度以及内存 532、534的容量将直接影响设备中所需的页交换次数。使用非安全的 外部存贮器,可以减少等待将需要加载进SPU 500中的页交换进来的时 间,但仍然会带来对每个页进行加密/解密的代价。

为了保证安全性,SPE 503必须将需要交换到支持SPU 500的外 部存贮设备上的每个数据块进行加密并加密封装。同样地,在将这些数 据块交换进SPU 500时,SPE 503必须对之进行解密,验证其加密封 装,并对之进行验证。于是,对于每个交换块所要进行的数据移动和加 密/解密开销将大大地影响SPE的性能。

如果SPU微处理器520不负责移动数据经过加密/解密机522的 话,那么微处理器520的性能将不会对它所支持的SPU 503的性能产生 很大影响。

VDE安全数据库610

VDE 100将可独立传送的VDE元素存贮在分配给各VDE电子设 备600的一个安全(如加密)数据库610中。较佳实施例中的数据库 610可以存放/管理三种基本类型的VDE项:

VDE对象,

VDE进程元素,以及

VDE数据结构。

下表给出了由安全数据库610保存和管理的某些VDE项示例:   类别     简要说明   对象   信息内容对象 提供信息内容容器     管理对象 为用来维持VDE 100运行的信息提供一 个容器     移动对象 为信息内容和控制信息提供容器     智能对象 为(用户指定的)进程和数据提供容器 进程元素     方法核心 提供将事件与控制方法及许可相关联的 机制, 加载模块(“LM”) 安全的(防破坏)可执行码 方法数据元素     (“MDE”) 用来控制/定制方法的、可独立传送的数 据结构 数据结构     许可记录     (“PERC”) 对对象的使用许可;创建部件组的“蓝 图”   用户数据元素     (“UDE”) 基本数据结构,用来与加载模块一起保 存所使用的信息   管理数据结构 由VDE节点使用以维护管理信息

每个电子设备600可以含有安全数据库610的一个实例,该实例用 来安全地维护VDE项。图16示意了安全数据库610的一个例子。本 例中的安全数据库610含有下列由VDE保护的项:

一个或多个PERC 808;

方法1000(包括静态的和动态的方法“核心”1000,还包括 MDE 1202);

静态的UDE 1200a和动态的UDE 1200b;以及

加载模块1100。

安全数据库610还可以包含下面的附加数据结构,这些数据结构 的使用和维护是针对管理目的的。 “对象注册”450,它引用了含有一个或多个VDE对象的对象 存放仓库728;

名字服务记录452;以及

配置记录454(包括地点配置记录456和用户配置记录458)

较佳实施例中的安全数据库610不包括VDE对象300,而是对存 放在文件系统687和/或独立对象仓库728中的VDE对象进行引用。不 过,不妨先讨论一下VDE对象300,作为了解VDE保护信息的“起始 点”。

VDE对象300

为了封装信息内容,VDE 100提供了一种与介质无关的容器模 型。图17示意了较佳实施例提供的、对象300的“逻辑”结构或格式 800。

如图17所示,较佳实施例所采用的通用化“逻辑对象”结构800 支持借助任何现用介质进行数字信息内容交付。较佳实施例中的“逻辑 对象”可集体指代:信息内容;用于操作、记录与/或控制所述信息内 容的使用的计算机软件和/或方法;以及适用于所述信息内容和/或所述 计算机软件和/或方法的许可、限制、管理控制信息和/或要求。逻辑对 象可以也可以不存放在任何给定的电子设备600中,它可以出现也可以 不出现在任何给定的电子设备600中或由该电子设备600所访问。逻辑 对象的信息内容部分可以组织成包含在,也可以不包含在,或者部分包 含在一个或多个对象中的信息。

简要地说,如图17所示,较佳实施例中的“逻辑对象”含有公开 头802、私有头804和“私有体”806。“私有体”806含有一个或多 个方法1000、许可记录(PERC)808(许可记录808可以包含一个 或多个密钥块810)、以及一个或多个数据块或数据区812。可以在“容 器”302中将这些元素进行“包装”。在较佳实施例中,上述通用化的 逻辑对象结构800适用于不同类型的VDE对象300,这些VDE对象 300根据其信息内容的类型和位置的不同被分成了不同类别。

“容器”的概念是一种比较方便的比喻,它用来命名一个元素集 合,而这些元素是使用信息内容或执行管理操作所必要的。容器302 通常含有识别信息、控制结构和信息内容(如所有权或管理性的数 据)。术语“容器”通常用来说明一个信息集合(如Bento/Open Doc 与OLE),该信息集合保存在计算机系统的二级存贮系统中,或者 可以由计算机系统通过通信网络从“服务器”的二级存贮系统中得到 对其的访问。较佳实施例中的“容器”302并不局限如此。在VDE 100 中,不要求上述信息一定要一起存放、同时被接收、同时被更新、只 为一个对象所使用、或只由一个实体所拥有。与上不同,在VDE 100 中,容器的概念被扩展化和通用化,它包含实时信息内容和/或联机 交互式信息内容,这些信息内容通过有线电缆、广播、或者其它电子 通信途径被传送到某个电子设备。

于是,在任何时刻,用户方(就这方面来说还包括其它任何地方) 可能不存在“完整”的VDE容器302或逻辑对象结构800。“逻辑” 对象可以存在一段特定的时间(或多个时间段),而不是转瞬即逝。上 述概念含有“虚拟容器”的思想,在“虚拟容器”中,重要容器元素可 以分布在大量不同的位置上,并且/或者它们可以存在于一序列时间段 中(这些时间段可以重叠也可以不重叠)。当然,也可以将所有必要的 控制结构和信息内容一起存放在VDE 100容器中。这就代表了一个连 续:从所有存放在单个容器中的所有信息内容和控制结构,到本地无法 访问的信息内容或容器专有的控制结构。

尽管至少某些代表对象的数据通常要经过加密,而这样会使其结构 变得对外不可见,不过在PPE 650中,对象被逻辑地看成是“容器” 302,这是因为其结构和部件是被自动地、透明地解密的。

容器模型可以与较佳实施例所提供的事件驱动进程以及ROS 602 很好地合并在一块。在这种模型下,信息内容被方便地划分成小的、 易于管理的部分,但其存放方式保持了未加密信息内容的内在的结构化 优点。面向对象的容器模型(如Bento/OpenDoc或OLE)还提供了许 多必要的“挂接点”,这些“挂接点”可用来插入必要的操作系统集成 部件,或用来定义特定于信息内容的各种方法。

详细地说,较佳实施例提供的逻辑对象结构800含有一个公开的 (或未加密的)的头802,头802标识了对象,并且还可以标识该对 象中的一个或多个权利所有者,以及/或者该对象的一个或多个分发 者。私有的(或加密的)头804可以含有公开头中的部分或全部信息, 另外,在较佳实施例中,头804还含有一些附加数据。当用户向服务 票据交换所、VDE管理员、或SPU 500等进行注册,以期作为某对 象300的用户时,上述附加数据可用来对该对象进行验证和识别。作 为另外一种可选方案,可以将标识了对象的一个或多个权利拥有者和 /或分发者的信息以加密形式放置在加密头804中,同时还可放入任 何所述附加验证和识别数据。

每个逻辑对象结构800都可以含有一个“私有体”806,“私有体” 806包含或引用了一组方法1000(即程序或过程),这些方法1000控 制了对象300的使用和分发。这种可选择地将不同方法1000纳入各个 对象的能力对实现一个高度可配置的VDE 100来说是重要的。方法 1000执行基本的功能,即定义哪些用户(在适当情况下还包括分发者、 客户管理员等)可以或不可以操作对象300。因而,一个对象300可以 具有相对较为简单的方法,例如可允许以固定的费用(例如报亭的报纸 价格即是固定的。在该价格的允许下,用户可在报纸出版之后一周的时 间内读阅报纸)在固定时间段内无限制地观看信息内容。同时,可以用 更加复杂的方法(如计帐和使用限制)来控制其它的对象。

图17所示的逻辑对象结构800还可以包含一个或多个PERC 808。PERC 808对对象300的使用进行控制,它规定了方法或方法 的组合,而为了访问或使用对象或其信息内容,必须使用这些方法或 方法的组合。对象的许可记录808可以含有密钥块81O,密钥块810 可存放为访问存于对象300中的加密信息内容所需的解密密钥。

对象的信息内容部分通常划分成一些称为数据块812的部分。数据 块812可以含有任意类型的电子信息,例如“信息内容”,其中包括计 算机程序、图象、声音、VDE管理信息等等。数据块812的大小和数目 可以由信息内容的制作者来选择。数据块812不必都具有相同的大小 (影响大小的因素包括信息内容使用情况、数据库格式、操作系统、安 全性和/或其它方面)。对象中的每个数据块812都使用至少一个密钥 块810可以增强安全性,虽然并不要求这样做。密钥块810也可以采 用一致的或伪随机的方式而涵盖大量数据块812的某些部分。这种涵 盖方式将一个或多个密钥应用到对象300、数据库或其它信息实体中的 分段的或看似随机的信息内容片段中,从而提供了附加安全性。

许多对象300是由物理媒体和/或通过“通道外”途径分发的(如 一个消费者收到对象300后将之再分发给另一个消费者),其中用来传 送密钥块810所保护信息内容的同一对象300中可以不含有密钥块 810。这是因为VDE对象可以包含那种能够在VDE节点限制之外利用 电子方式进行复制的数据。如果该信息内容被加密,上述复制的数据也 将被加密,而复制者将无法访问该信息内容,除非他带有正确的解密密 钥。对于那些特别需要保障安全性的对象,将采用安全通信技术(下面 将要对此进行讨论)以电子方式频繁分发许可记录808和密钥块810, 上述的安全通信技术由发送者和接收者的VDE节点来控制。因而,在 较佳实施例中,许可记录808和密钥块810只频繁地保存于注册的用户 的电子设备600中(同时,作为注册/初始化过程的一部分,许可记录 808和密钥块810本身也可以被传递给该用户)。在该例中,可以用只 存放于SPU 500安全存贮器中的私有DES密钥对适用于各个所有物的 许可记录808和密钥块810进行加密,这样可以使该密钥块对任何其它 用户的VDE节点来说都是不可用的。作为另外一种选择方案,可以用 最终用户的公开密钥对密钥块810进行加密,使这些密钥块只对那些保 存了相应公开密钥的SPU 500可用(或者也可以采用其它足够安全的加 密/解密机制)。

在较佳实施例中,用来加密各许可记录808或其它管理信息记录 的一个或多个密钥将在许可记录808每次更新时(或在一个或多个特 定事件发生之后)被修改。在这种情况下,将使用一个或多个新密钥 对更新了的记录重新进行加密。作为另外一种方案,用来加密和解密 管理信息的一个或多个密钥可以是“时间老化”密钥,经过一段时间 以后这些密钥可以自动失效。同时使用时间老化的密钥和其它的事件 触发密钥可能是一种较好的选择。例如,密钥可以在特定次数的访问 之后改变,并且/或者可以在经过特定时间段或越过某个绝对时间点 之后发生改变。可以针对任意给定的密钥或密钥组合应用上述技术的 组合。较佳实施例创建时间老化密钥的过程是一个单向卷积算法,其 输入参数包括用户和地点信息以及由SPU RTC 528所提供实时时间 值中的指定部分。也可以使用其它技术来产生时间老化密钥,(举例 来说)某些这样的技术只使用用户或地点信息、绝对时间点、和/或 与行为子集相关的时间段,上述行为又与对VDE所保密的信息内容 的使用或加密或者对VDE系统的使用有关。

VDE 100支持多种不同类型的、具有图17所示逻辑对象结构800 的“对象”300。根据保护信息是否与被保护信息装配在一起,可以对 对象进行分类。例如,对于一个容器来说,如果它被它的控制装配到一 个指定的VDE节点,那么该容器称为“静止对象”(参看图18)。还 有一种容器称为“移动对象”,其特征为:其控制信息未将其装配到某 个特定VDE节点,而该容器带有足够的控制和许可信息,使它可以在 某些地点中的任一个地点都可以被部分地或整体地使用(参看图19)。

还可以根据对象所含信息的特性对对象进行分类。含有信息内容 的容器称为“信息内容对象”(参看图20)。含有交易信息、检查跟 踪数据、VDE结构、和/或其它VDE控制/管理信息的容器称为“管理 对象”(参看图21)。某些容器含有运行于VDE控制之下的可执行码 (与VDE控制信息相反),这种容器称为“智能对象”。智能对象支持用 户代理,并为用户代理在远程地点执行提供控制。根据地点、类型、 以及与对象所含信息内容内容相关的访问机制,还有其它的对象分类 方式,这些分类方式可以包含上述分类方式的组合。后面将讨论由VDE 100支持的一些对象。图17中的部分或所有数据块812可以包含“嵌 入的”信息内容,管理对象、静止对象、移动对象和/或其它对象。

1.静止对象

图18示意了较佳实施例提供的“静止对象”结构850示例。“静 止对象”结构850只适用于特定的VDE电子设备/装置中,这些VDE 电子设备/装置已接收到了明确的许可以允许它们使用静止对象的一 个或多个部分。因此,静止对象结构850不带有许可记录(PERC) 808,该许可记录则是被独立地提供和/或交付给设备/装置600(例 如在不同时间、通过不同途径、以及/或者由团体进行提供和/或交 付)。许多不同的静止对象可以使用相同的PERC 808。

如图18所示,公开头802最好是“明文”(即未加密)。私有 头804最好使用多个“私有头密钥”中的至少一个进行加密。私有头 804最好还包含来自公开头802中的识别元素拷贝,这样一来,如果 明文公开头中的识别信息被破坏了的话,系统可以精确地查明破坏者 试图改变的是什么。方法1000可以包含在一个称为“私有体”806 的部分中,其存放形式可以是本地对象方法、加载模块、以及/或者 用户数据元素。私有体(方法)部分806最好使用保存在分开的许可 记录808中的一个或多个私有体密钥进行加密。数据块812则包含信 息内容(信息或管理数据),这些信息内容可以使用同样由许可记录 808提供的一个或多个信息内容密钥进行加密。

2.移动对象

图19示意了较佳实施例提供的“移动对象”结构860示例。移 动对象带有足够的信息,根据这些信息,当它们到达某个VDE节点 以后,它们带有的至少部分信息内容可以至少被部分使用。

移动对象结构860在私有头信息804中带有一个许可记录 (PERC)808,除此之外,移动对象结构860与静止对象结构850 可以是相同的。移动对象结构860中的PERC 808允许该移动对象可 以在任何VDE电子设备/参与者600中使用(按照方法1000和所含 的PERC 808)。

“移动”对象是VDE对象300中特别支持“通道外”分发的一 类对象。因此,它们包含密钥块810,并且可以从一个电子设备600 传送到另一个。移动对象带来的使用预算相当有限,因而用户可以或 者全部或者部分地使用其信息内容(如计算机程序、游戏或数据库), 并权衡是获取使用许可或进一步使用许可呢,还是购买对象信息内 容。作为另一种方案,移动对象PERC 808可以包含或引用预算记录, 这些预算可以是:

(a)反映了先前购买的权利,或反映了将来获取许可或进行购买的 所需信用,并且允许对至少一类或多类对象信息内容进行使用的预 算,与/或

(b)使用(并可以透支)特定的可用信用以允许使用对象信息内容 的预算,上述信用保存于本地VDE节点中,并受本地VDE节点控制。 与/或

(c)在要求向本地VDE节点提交报告(同时也可以选择向票据交 换所提交报告)之前,反映一个或多个最大使用限额的预算,在提交 上述报告之后,所反映的限额可以被复位,以便允许进一步使用和/ 或修改原始一个或多个预算之中的一个或多个。

对于标准的VDE对象300,在用户可用的预算已经用完之后, 如果用户希望继续使用移动对象,用户可能需要与票据交换所联系, 以便获得额外的预算。另外,如果移动对象(或其拷贝)移动到了另 一个电子设备中,而新设备没有足够的可用信用预算以满足许可记录 808所提出的要求时,可能还需要用户与票据交换所联系以便获得额 外预算。

例如,移动对象PERC 808可以含有一个引用,该引用指向了一 个所需的预算VDE 1200或某些预算选项,预算VDE 1200或上述预 算选项可能存在,并且/或者被预期为可用的。例如,预算VDE可以 引用消费者的VISA、MC、AMEX或者其它“一般”预算,这些 预算可以是与对象无关的,并且可以适用于某个或某些类移动对象信 息内容(例如,一类移动对象中的任何电影对象,该电影对象可能是 Blockbuster录像带出租品)的使用。该预算VDE本身可以限定它可 以使用的一类或多类对象,同时,一个对象可以特别引用特定的一个 或多个一般预算。在这种情况下,VDE提供者通常以允许对信息进 行正确的引用,并支持计帐处理和帐单结付的方式,使信息可以利 用。

移动对象可以用在接收VDE节点电子设备600上,其前提条件 是:或者该设备带有正确的预算或预算类型(如可从票据交换所获得 的充足信用,诸如VISA预算),这些预算或预算类型既可以是一般 类型的也可以是特定于一个或多个用户或用户类别的;或者该移动对 象本身带有充足的预算容许额或适当的授权(比如某个协约,移动对 象可以将该协约应用于特定的一个或多个设备或设备类型,或应用于 特定的一个或多个用户和用户类型,此处的类型对应于设备或用户的 一个指定子集,而这些设备或用户则由存放在安全数据库610中的预 定义类型识别码所指代)。收到该移动对象以后,如果用户(和/或 设备)不带有适当的预算和/或授权,那么电子设备600可(利用保 存在移动对象中的信息)通知用户:他们可以与哪个或哪些团体进行 联系。这个或这些团体可能含有该移动对象可用的可选票据交换所提 供者清单,用户可以从该清单中选择他希望的联系方。

如上所述,移动对象使对象300可以在“通道外”分发。这就是 说,未授权的或未明确授权的个体可以将对象分发给另一个体。“通 道外”所含的分发渠道(举例来说)允许用户直接将一个对象重新分 发给另一个体。例如,一个对象提供者可以允许用户将某个对象的拷 贝重新分发给他们的朋友或同事(例如可以借助存储介质进行物理地 交付,或借助计算机网络传递)。于是,如果某个朋友或同事满足了 使用所述对象的任何特定条件后,他便可以使用该对象。

例如,如果某个软件程序作为移动对象被分发,那么假如该程序 的用户希望将该程序或该程序的一个可用拷贝提供给他的朋友,该用 户通常可以不受任何约束地这样做。移动对象具有巨大潜力的商业价 值,其原因在于,这样可以主要由用户和公告版系统来分发有用的信 息内容,而除了需要向“原始”信息内容提供者和/或票据交换所注 册以外,通过用户和公告版系统进行分发所需的分发开销很小或者根 本没有。

“通道外”分发方式可允许提供者收取再分发对象的使用费用, 并且/或者使提供者对再分发对象维持至少一定程度的控制。这里面 的某些限制可以包括(举例来说)在用户的VDE节点注册被授权的 第三方财务关系(如信用卡),以及使用再分发对象所需的充足信用。

于是,如果用户拥有一个VDE节点,用户可以被允许使用移动 对象,其条件是:用户在其VDE节点(根据需要也可以是分配给他 的VDE节点)中带有适当的可用预算,以及/或者该用户或其VDE 节点属于一个经过特别授权的用户组或设备组,以及/或者该移动对 象带有自身预算。

由于移动对象的信息内容经过了加密,所以只有在经过授权的情况 下才可以使用该对象,除非使用该对象所需的移动对象私有头密钥被破 解。破解移动对象的私有头密钥(举例来说)与破解许可和/或预算信 息相比,前者可能是相对较为容易一些,这是因为许多对象可共享同一 个密钥,这就在密文方面给了破译者更多的信息以供分析,同时更加刺 激破译者进行密码分析。

在“移动对象”的情况下,信息内容拥有者可以将封装有该信息内 容的对象300中所含的某些或全部密钥块810与信息内容信息一同分 发。将密钥放入被分发的对象300中将增大安全保护机制受威胁的程 度。(通过确定私有头的加密密钥)破解或密码分析用来保护保密头的 加密算法对安全机制造成威胁。这种对安全性的破坏通常需要相当高的 技术和相当长的时间,但是如果一旦造成破坏,加密算法和密钥将会被 公开出去,而如果大量的人所拥有的对象使用了相同密钥和算法进行加 密,那么这些人将因而得以对被保护的信息进行非法使用。所以,将密 钥放入被分发的对象300中只限于某些情况,即:或者信息内容具有“时 间敏感性”(即:过了特定的时间以后,这些信息内容的价值将会降低); 或者这些信息内容的价值有限;或者将密钥放入对象中带来的商业价值 (例如给最终用户带来了方便性、由于省去用远程通信或其它途径传送 密钥和/或许可信息而使成本更为降低、以及/或者能够支持利用“通道 外”方式传递对象)超过了由于破译高手发现破绽所引起的损失。如前 所述,可以采用卷积技术避免将“真正”的密钥存放在移动对象中从而 提高密钥的安全性,虽然在大多数情况下,使用VDE管理员提供给大 多数或所有VDE节点共用的一个密码作为输入,而不是用站点标识和/ 或时间作为输入,以便对象与这些值无关。

如图19所示,前面已经讲过,移动对象带有一个许可记录808, 该许可记录808最好提供至少某些预算(在通常情况下包括一个预算、 其它预算或两者都包括)。如上所述,许可记录808可以含有一个密钥 块810,该密钥块810保存了重要的密钥信息。PERC 808还可以含 有或引用某些预算,这些预算包含了有潜在价值的数量/数值。这种预 算可以存放在移动对象本身之中,或者也可以将这些预算独立交付,并 且可以使用高度安全的通信密钥和管理对象以及管理数据库技术对之 加以保护。

移动对象所包含方法1000通常含有一个安装过程,该安装过程使 用对象中的许可记录808来“自我注册”对象(例如该方法是一个注册 方法)。对于某些对象来说,上述特性是特别有用的。这样的对象包括: 价值受时间限制的对象;最终用户使用免费或缴费极低的对象(或所有 物)(例如向广告商和/或信息公布员的使用费用的收取标准要取决于 实际访问过被公布信息的那些最终用户的数目);所需的预算在各处都 可获得并且通过通道外分发可以获得特别受益的对象(这种预算的例子 是由信用卡得到的预算,这些预算适用的范围包括诸如电影、软件程 序、游戏等所有物的对象)。这些移动对象可以含有也可以不含有预算 UDE。

移动对象的一个用途是公布软件。此时,所含的许可记录可允许潜 在消费者在演示模式下使用该软件,同时在支付许可费用之前或除起始 试用费之外进行更多支付之前的一段有限时间之内可以使用所有程序 特性。例如,结合预安装的少量时间预算,使用基于时间的计帐方法和 预算记录,可以允许在短时期内对程序进行完整地使用。可以使用各种 各样的控制方法以避免对对象信息内容进行非法使用。例如,通过将移 动对象的最短注册间隔适当地设置成一个较长的时间(如一个月、半年 或一年),可以禁止用户重新使用同一移动对象中预算记录。

控制对移动对象进行使用的另一种方法是在移动对象的许可记录 中放置逐渐衰老的密钥。使用这种方法通常是为了确保在没有重新注册 的情况下对移动对象的使用不会超过某个日期,这种方法对于那些通过 广播、网络或电信(包括单向的和双向的有线电缆)等电子方式分发的 移动对象来说特别有用,这是因为可以将这种移动对象逐渐衰老密钥的 交付日期和时间精确地设置成用户开始拥有该对象的时间。

移动对象还可用来简化将对象从一个电子设备100“移动”到另一 个的过程。用户可以从一台桌上型计算机中将一个移动对象连同其内置 的一个或多个许可记录808一起移动到其笔记本计算机中。移动对象可 以在其内部注册其用户,因而只有该用户一个人才能使用该移动对象。 移动对象可以维护单独的预算信息,一个用于基本的分发预算记录,一 个用于注册用户的“活动”分发预算记录。采用这种方式,该对象可被 拷贝并传送给另一个潜在用户,并且成为该用户的可携带对象。

移动对象可以放在一个容器中,而该容器还同时含有其它对象。例 如,一个移动对象容器可以包含一个或多个信息内容对象以及一个或多 个管理对象,该管理对象用于在最终用户的对象注册处注册对象,并且 /或者提供机制以强迫执行许可和/或其它安全性功能。所含的管理对象 可用于在最终用户的电子设备中安装必要的许可记录和/或预算信息。

信息内容对象

图20示意了VDE信息内容对象结构880的示例。通常,信息内 容对象880包含或提供信息信息内容。这种“信息内容”可以是任意类 型的电子信息。例如,信息内容可能包括:计算机软件、电影、书籍、 音乐、信息数据库、多媒体信息、虚拟现实信息、机器指令、计算计数 据文件、通信报文和/或信号、以及其它信息,其中的至少一部分是由 一个或多个电子设备使用和/或处理。经过配置,VDE还可以用来鉴 定、控制和/或审核电子商业交易和通信,这些商业交易和通信的例子 有:银行间交易,电子购物通信、以及对通过电子签名的合同及其它法 律文书进行的传送、审核以及安全的、商业化的存档。这些交易中所使 用的信息也可以称为“信息内容”。如上所述,信息内容不一定要物理 地存放在对象容器中,它可以在不同的时间被独立地提供(如通过有线 电缆发送的实时输入)。

在图20所示的特定例子中,信息内容对象结构880是一类静止对 象,这是因为它不带有PERC 808。在该例中,信息内容对象结构880 含有至少一个如图5A所示的嵌入式信息内容对象882,并将嵌入式信 息内容对象882作为其信息内容812的至少一部分。信息内容对象 880还可以包含管理对象770。因而,较佳实施例提供的对象可以含有 一个或多个“嵌入式”对象。

管理对象

图21示意了较佳实施例提供的管理对象结构870示例。“管理对 象”通常含有与VDE 100操作有关的许可、管理控制信息、计算机软 件和/或方法。管理对象还可以含有与VDE 100操作有关的使用记录和 /或其它信息。管理对象区别于信息内容对象的地方在于它不含受VDE 保护的、用以发放给最终用户的“信息内容”。由于对象可以包含其它 对象,一个单一对象可能包含一个或多个包含信息内容的对象,及一个 或多个管理对象。管理对象可以为更新、使用报告、计帐和/或控制的 目的,在电子设备之间传送信息。它们含有的某些信息有助于管理VDE  100,并使之正常运行。通常在两个VDE节点之间传送管理对象。这 些VDE节点的例子有:VDE票据交换所服务、分发者、客户管理员 和最终用户的电子设备600。

本例中的管理对象结构870含有公开头802、私有头804(它带有 一个PERC 808)以及包含方法1000的“私有体”806。在图20所示 的特定例子中,管理对象结构是一类移动对象,这是因为它带有一个 PERC 808。不过管理对象可以不带有PERC 808而变成静止对象。管 理对象结构870不保存信息内容,而是保存“管理信息内容”872。管 理信息内容872可以(举例来说)包含大量的记录872a、872b,...872n, 每个记录对应于一个不同的“事件”。每个记录872a、872b,...872n 可以包含一个“事件”字段874,并可以可选地包含一个参数字段876 以及/或者一个数据字段878。这些管理信息内容记录872可以由VDE 100用来定义交易过程可能要处理的事件,例如,一个用来向安全数据 库增加记录的事件可能包含参数896和数据字段878,其中,参数896 表明记录如何存贮和存贮何处站,而数据字段878则包含了需要增加的 记录。在另一个例子中,一组事件可以定义在管理对象的制作者和收件 人之间的财务交易,例如一项购买、一个订购单或一张发票。每个事件 记录872都可以是一组指令,这组指令由最终用户的电子设备600执 行,从而对最终用户的安全数据库610进行增加或修改(举例而言)。 事件可以执行许多基本管理功能,例如,向对象注册处添加对象,这包 括提供相关的用户/组记录、权利记录、许可记录和/或方法记录;删除 审核记录(例如将审核跟踪记录聚集成一个更为紧缩的概要表格,或者 进行实际删除);为以前注册的对象增添或更新许可记录808;增加或 更新预算记录;增加或更新用户权利记录;以及增加或更新加载模块。

在较佳实施例中,管理对象可以由(举例来说)分发者、客户管理 员、票据交换所或其它财务服务提供者等发送到最终用户,或者也可以 由对象制作者发送给分发者或服务票据交换所。管理对象可以(举例来 说)对接收了管理对象的那些VDE节点的预算和/或许可进行增加或调 整。类似的,那些在事件记录872的数据区878中包含了审核信息的管 理对象可以从最终用户发送给分发者、票据交换所和/或客户管理员, 后者可能再将管理对象发送给对象制作者或对象处理链中的其它参与 者。

方法

较佳实施例中的方法支持在使用对象以及与分发者通信过程中用 户所遇到的多种操作。它们还可指定哪些方法字段可以显示给用户(如 使用事件、用户请求事件、用户响应事件以及用户显示事件)。另外, 如果某个方法支持分发功能,那么该方法可以支持分发活动、分发者与 用户进行有关方法、方法的修改、确定哪些方法字段可以向分发者显 示、以及对分发数据库的任何检查以及记录保存(如分发事件、分发者 请求事件以及分发者响应事件)的通信。

鉴于现有方法结构的一般性,以及装配方法的多种可能性组合,可 使用一个通用化的结构来建立方法之间的关系。由于方法1000可以独 立于给定会话中需要它的对象,所以不可能在方法本身之中定义上述关 系。在较佳实施例中,使用“控制方法”来定义方法间的关系。控制方 法可以是特定于对象的,并可以在每次会话中适应单个对象的要求。

对象的控制方法建立与其它方法的关系。当在注册进程中创建记录 集合(这些记录集合反映了对应于每个所需方法的所需方法选项)的时 候,这些关系由明确的方法标识符参数化。

在较佳实施例中,“聚合方法”代表了一组方法,这些方法可以被 看成是一个整体。与特定所有物相关的一组方法可以被存放在一个“聚 合方法”中。从实现角度来看,这种聚合方式是有用的,这是因为它可 以降低簿记开销并提高数据库的总体性能。在其它情况下,当方法间存 在逻辑相关性时,也可以把这些方法聚合起来。例如,两个预算可以会 被链接在一起,这是因为其中一个代表了总体限额,而另一个则代表了 当前可用的限额。当一个大额预算随着时间以小额形式发放时,上述情 况就可能出现。

举例来说,一个含有计量、计帐和预算进程的聚合方法可用来代替 独立的三种方法。这个聚合方法可以引用单个“加载模块”1100,而 该加载模块1100可执行上述三个独立加载模块的所有功能,而只使用 一个用户数据元素,该数据元素包含计量、计帐和预算数据。使用聚合 方法而不是三种独立的方法可以最大限度地降低总体存贮器需求、数据 库搜索次数、解密次数、以及将用户数据元素回写到安全数据库610的 次数。使用聚合方法而不是三种独立的方法的缺点在于在提供者和用户 方面将损失一些灵活性,因为许多功能将不能再被独立地替换了。

图16示意了方法1000,这些方法是安全数据库610的一部分。

较佳实施例中的“方法”1000是基本指令和信息的集合,而信息 则与基本指令相关联。这些基本指令和信息提供了为执行和/或准备执 行基本指令所需的上下文、数据、要求和/或关系,这些基本指令与一 个或多个电子设备600的操作相关联。如图16所示,在较佳实施例中, 方法1000由安全数据库610中的下列部分表示:

方法“核心”1000N

方法数据元素(MDE)1202

用户数据元素(UDE)1200

数据说明元素(DTD)

较佳实施例中的方法“核心”1000N可以包含或引用一个或多个 数据元素如MDE 1202和UDE 1200。在较佳实施例中,MDE 1202和 UDE 1200可以带有相同的一般特性,它们之间的主要区别在于:UDE 最好与一个特定方法、一个特定用户或一组特定用户结合在一起,但 MDE可与一个特定方法结合在一起,而与用户无关。较佳实施例中, MDE和UDE数据结构1200、1202用来向方法1000提供输入数据, 或接收方法的输出数据,或者两者兼做。MDE 1202和UDE 1200的传 递可以独立于引用它们的方法核心1000N进行,或者这些数据结构可 以作为方法核心的一部分进行传递。例如,在较佳实施例中,方法核心 1000N可以含有一个或多个MDE 1202和/或UDE 1200(或其中一部 分)。作为另一种选择或作为一种补充方式,方法核心1000N可以或 另外引用一个或多个MDE和/或UDE数据结构,而这些数据结构是独 立于引用它们的方法核心进行传递的。

在较佳实施例中,方法核心1000N还引用一个或多个“加载模块” 1100。较佳实施例中的加载模块含有可执行代码,并且还可以包含或 引用一个或多个称为“数据说明符”(DTD)信息的数据结构。该“数 据说明符”信息可以(举例来说)向DTD解释程序590提供数据输入 信息。DTD可使加载模块1100能够访问(如读出和/或写入)MDE 和/或UDE数据元素1202,1200。

方法核心1000’还可引用一个或多个包含了其操作正文说明的 DTD和/或MDE数据结构,这些操作正文说明适于作为电子合同的一 部分。对DTD和MDE数据结构的引用可以出现在方法核心1000’的私 有头中,也可以定义成事件表的一部分,后面将要讲到事件表。

图22示意了较佳实施例提供的方法核心1000N的格式示例。较佳 实施例中的方法核心1000N含有一个方法事件表1006和一个方法局部 数据区1008。方法事件表1006列出了“事件”,这些事件每一个都引 用了控制事件处理的“加载模块”1100和/或PERC 808。与表中所列 各事件对应的是向加载模块1000或许可记录808提供参数所必须的任 何静态数据,以及对方法用户数据区1008的引用,这些引用用来支持 事件的处理。为加载模块1100提供参数的数据可以部分地认为是对该 加载模块的一个特殊函数调用,而与之相对应的数据元素则可以被认为 是上述特殊函数调用的输入和/或输出数据。

方法核心1000N可以由单个用户专用,也可以被大量用户共享(举 例而言,这要取决于方法核心和/或特定用户数据元素的唯一性)。特 别地,每个用户/组都可以拥有其自己的UDE 1200,并使用共用的方法 核心1000N。比起将整个方法核心1000N与一个用户/组关联来说,上 述的结构将使数据库的开销更低。为了使用户能用一个方法,可以向用 户发送方法核心1000N,该方法核心指定了一个UDE 1200。如果所在 地的安全数据库610中已经含有了方法核心1000N,那么只需要添加 UDE 1200。作为另外一种选择,方法可以在注册的时候创建所有必须 的UDE 1200。

在图22中,由较佳实施例所提供的方法核心1000N格式示例包含 公开(未加密)头802、私有(加密)头804、方法事件表1006、以 及方法局部数据区1008。

下表给出了方法核心1000N公开头802可能的字段布局示例:     字段类型     说明   方法ID 制作者ID   本方法制作者的站点ID 分发者ID   本方法的分发者(如,最后一次 改变之后的分发者)   类型ID   常量,它表示了方法“类型”   方法ID   本方法的唯一序列号   版本ID   本方法的版本号 其它分类信息   类别ID   支持不同方法“类”的ID   类型ID   支持方法类型兼容搜索的ID   说明信息   说明   本方法的文字描述 事件概要 本方法所支持的事件种类(如使 用)的概要

下表示意了私有头804的可能字段布局示例:     字段类型     说明 公开头802方法ID和“其它 分类信息”的拷贝     来自公开头的方法ID   说明性信息 事件数目     本方法支持的事件数目 访问和引用标记 访问标记     各种标记,这些标记用来确定本 方法是否是由SPU管理的正确方 法;确保方法核心1000N只能在适当 的条件下使用 确认标记 关联标记     数据结构引用 可选的、对DTD和/或MDE的引用     校验值 私有头和方法事件表的校验值     公开头信息的校验值 公开头信息的校验值

再参看图22,较佳实施例中的方法事件表1006可以含有从1到N 的方法事件记录1012。每个上述方法事件记录1012都对应于一个不同 的事件,由方法核心1000N代表的方法1000对该事件作出响应。在较 佳实施例中,根据所响应事件的不同,这些方法1000可以具有完全不 同的行为。例如,为响应对应于用户使用一个对象或其它资源的事件, AUDIT(审核)方法可以在审核跟踪UDE 1200中保存某些信息。而 同一AUDIT(审核)方法可以将所保存的审核跟踪向VDE管理员或 其它参与者进行报告,以作为对管理事件的响应,这种管理事件诸如(举 例来说)VDE节点中的计时器计时终止或其它VDE参与者发来了报 告审核跟踪的请求。在较佳实施例中,每一个上述不同事件都可以用一 个“事件代码”来代表。该“事件代码”可以在某个方法被调用时作为 参数传递给该方法,它可以用来在方法事件表1006中“查找”适当的 方法事件记录1012。接下来,选定的方法事件记录1012指定用来创建 部件组690的适当信息(如加载模块1100,数据元素UDE和MDE 1200、1202,以及/或者PERC 808),该部件组690将响应所发生的 事件而投入执行。

于是,在较佳实施例中,每个方法事件记录1012都可以包含事件 字段1014、LM/PERC引用字段1016、以及任意数量的数据引用字段 1018。较佳实施例中事件字段1014可含有一个“事件代码”或标识相 应事件的其它信息。LM/PERC引用字段1016可提供对安全数据库 610的引用(或其它“指针”信息),该引用标识了某个加载模块1100 和/或某个PERC 808,该加载模块1100和/或PERC 808提供(或引用) 了特定的可执行码,该执行码要被加载和执行,以便执行用来响应上述 事件的方法。数据引用字段1018可以含有对UDE 1200或MDE 1202 的引用信息。这些数据结构可以包含在方法核心1000N的方法局部数 据区1008中,也可以作为独立可传递信息而保存在安全数据库610中。

下表示意了方法事件记录1012的一个可能更详细的字段布局示 例:     字段类型     说明     事件字段1014     标识相应事件     访问标记   保密标记,用来授权访问本方 法事件记录的这一行   LM/PERC引用 字段1016 数据库标识或 偏移/长度   数据库引用(或本地指针) 关联标记   关联标记,用来在引用该元素 时进行确立 数据元素引用字 段的数目   方法事件记录中数据引用字段 的数目 数据引用字段1 UDE标识或偏 移/长度   数据库610引用(或本地指针) 关联标记   关联标记,用来在引用该元素 时进行确立      !                            … 数据引用字段n UDE标识或偏 移/长度   数据库610引用(或本地指针) 关联标记   关联标记,用来在引用该元素 时进行断言

加载模块

图23示意了较佳实施例提供的加载模块1100示例。通常,加载模 块代表了基本功能的集合,这些基本功能用来对操作进行控制。

加载模块1100含有代码和静态数据(静态数据在功能上与代码是 等价的),它用来执行VDE 100的基本操作。加载模块1100通常被系 统中所有对象的所有控制结构共享,不过也允许独占的加载模块存在。 加载模块1100可以在管理对象结构870中在VDE参与者之间传递,并 通常保存在安全数据库610中。在上述两种情况中,加载模块1100总 要经过加密和鉴别。当方法核心1000N引用加载模块1100时,该加载 模块即被调入SPE 503,经过解密后,或者被传送给电子设备微处理器 以便在HPE 655中执行(如果HPE 655是它执行的地方),或者保留 在SPE中(如果SPE 503是它执行的地方)。如果没有SPE 503的话, 该加载模块在执行前可能先要经过HPE 655解密。

由各个团体创建加载模块最好受一个确认进程的控制,或由基于环 的SPU体系结构进行控制。于是,创建新加载模块的进程本身即是一 个受控进程,和替换、更新或删除已经保存在安全数据库610中的加载 模块的进程一样。

加载模块100只有在SPU 503或HPE 655的受保护环境中才能执 行其功能,其原因在于,只有这样加载模块才有权访问它需要操作的受 保护元素(如UDE 1200或其它加载模块1000)。在该环境中,起动 加载模块执行中严格受控于访问标记、确认标记、加密密钥、数字签名 和/或关联标记的组合。因此,调用者只有在知道加载模块1100的标识 并能确立特定于该加载模块的共享保密关联标记时,才能引用该加载模 块。执行解密操作的SPU在解密加载模块之后,可将识别标记和加载 模块的本地访问标记进行匹配。采用这种技术,对任何加载模块所做的 物理替换都可在下次对之进行访问时检测出来。而且,在较佳实施例 中,可以将加载模块1100设置成“只读”。加载模块1100的只读特性 将禁止对加载模块进行回写,而在非安全环境中,回写将破坏加载模 块。

加载模块不一定由控制它们的PERC 808直接管理,也不一定带有 任何时间/日期信息或过期日期。在较佳实施例中,仅有的控制手段体 现在一个或多个方法1000使用关联标记(关联标记是由加载模块所有 者创建的、有关受保护对象的一个数值,关联标记被传递给经过授权的 团体并存放在其方法中,对关联标记访问和使用由一个或多个PERC 808来控制)来引用加载模块。如果某个方法核心1000N引用了一个加 载模块1100并能够确立正确的关联标记(并且该加载模块通过了为在 SPE 503内执行而进行的内部防破坏检查),那么该加载模块将可以被 加载和执行,或可以从其它系统所获取,可以运送给其它系统,或者可 以被其它系统所更新和删除。

如图23所示,较佳实施例中的加载模块1100可能包含公开(未加 密)头802、私有(加密)头804、包含加密可执行码的私有体1106、 以及一个或多个数据说明元素(“DTD”)1108。DTD 1108可以存 放在加载模块1100中,也可以是对安全数据库610中静态数据的引用。

下表给出了加载模块公开头802可能的字段布局示例:     字段类型     说明     加载模块ID(LM ID)     加载模块的VDE ID   制作者ID 本加载模块制作者的站点ID     类型ID 表明加载模块类型的常量 加载模块ID 本加载模块的唯一序列号;它唯一 从一系列加载模块中标识出本加 载模块,上述一系列的加载模块由 被授权的VDE参与者创建     版本ID 本加载模块的版本号 其它分类信息     类别ID 支持不同加载模块类别的ID     类型ID 支持方法类型兼容性搜索的ID   说明信息     说明 本加载模块的文字描述 执行空间代码 指出本加载模块执行所在的空间 (如SPE或HPE)的值

许多加载模块1100含有在SPE 503中执行的代码。而某些加载模 块1100含有在HPE 655中执行的代码。这就允许方法可以选择合适的 环境执行。例如,可以让一个INFORMATION(信息)方法仅在SPE 503安全空间中执行政府类的安全级,而在HPE 655中执行商业应用。 如上所述,加载模块公开头802中可含有一个“执行空间代码”字段, 该字段表明了加载模块1100需要执行的空间。此项功能还支持不同 SPE指令集以及不同的用户平台,同时该功能还使方法的创建不依赖于 低层的加载模块指令集。

加载模块1100对三个主要的数据区进行操作,它们是:堆栈、加 载模块参数和数据结构。执行加载模块1100所需的堆栈和运行内存大 小最好在私有头804中说明。与来自关于加载模块调用、返回、以及任 何返回数据区的栈图象的数据说明也一样。对堆栈和动态区的说明使用 了相同的DTD机制。下表给出了加载模块私有头1104的可能布局示 例:     字段类型     说明 公开头802的部分或全部信息的拷贝 从公开头得到的对象ID 其它分类信息 校验值 公开头的校验值 说明信息 加载模块大小 可执行代码块的大小 加载模块执行大小 加载模块可执行代码的大小 加载模块执行堆栈 加载模块所需的堆栈大小 执行空间代码 说明加载模块执行空间的代码 访问和引用标记 访问标记 这些标记用来确定该加载模块是 否是SPE所需的正确加载模块 确认标记 关联标记 用来确定加载模块的调用者是否 具有执行该加载模块的权利 数字签名 用来确定该加载模块可执行代码 是否是未受损的,以及它是否是 由一个可信的源(具有创建加载 模块正确证明者)创建的 数据记录描述符 信息 DTD数目 代码块后面的DTD的数目。 DTD1引用 如果是局部定义的,为本LM 定义的第一DTD以字节表示的 物理大小与偏移。如果是公开引 用的DTD,这是DTD ID及允许 访问该记录的关联标记。 ***   DTDn引用 如果是局部定义的,为本LM 定义的第一DTD以字节表示的 物理大小与偏移。如果是公开引 用的DTD,这是DTD ID及允许 访问该记录的关联标记。     校验值 整个加载模块的校验值

每个加载模块1100还可以使用DTD 1108信息产生必要的信息以 支持从加载模块中创建方法。DTD信息中含有定义和范围,前者用 SGML之类的语言书写,它描述的是加载模块所支持的所有方法数据字 段的名字和数据类型;后者规定了可以放入字段的数值的可接受范围。 其它DTD可以英文形式说明加载模块的功能,(举例来说)这些内容 是为加入电子合同之用。

加载模块1100的下一部分是一个加密的可执行体1106,可执行体 1106包含了一个或多个加密代码块。加载模块1100最好用其执行环境 的“原来”指令集进行编码,以便获得较高效率和紧凑性。SPU 500 以及平台提供者可以提供标准加载模块1100版本,以便使他们的产品 可以与VDE 100计划采用各种分发机制的信息内容协同工作。较佳实 施例创建并使用原来模式的加载模块1100来代替“解释的”或“p-代 码”实现方案,从而使资源有限的SPU性能达到最优。不过,如果存 在充足的SPE(或HPE)资源,并且或者平台具有足够的资源的,也 可以采用其它实现方案,以便提高加载模块的跨平台使用能力。

下表给出了加载模块DTD 1108的字段布局示例:     字段类型     说明     DTD ID 使用来自私有头中的对象标识 制作者ID 本DTD制作者的站点标识 类型ID 常量 DTD ID 本DTD的唯一序列号 版本ID 本DTD的版本号 说明性信息 DTD大小 DTD块的大小 访问和引用标记 访问标记 这些标记用来确定该DTD是否是 SPE所请求的DTD 确认标记 关联标记 用来确定本DTD的调用者是否具 有使用该DTD的权利 DTD体     DTD数据定义1     DTD数据定义2          !     DTD数据定义N 校验值 整个DTD记录的校验值 加载模块1100对DTD 1108的使用方式包括下面的例子:

将数据区DTD4中的数据元素(该数据元素由DTD3中 的名字来定义)数值增加DTD1中的数值

将数据区DTD4中的数据元素(该数据元素由DTD3中 的名字来定义)数值设置为DTD3中的数值。

按照DTD3中的表格对来自DTD1内事件的原子元素进 行计算,并将结果返回至DTD2中

按照DTD3中的公式对来自DTD1内事件的原子元素进 行计算,并将结果返回至DTD2中

根据由DTD3引用的加载模块创建模板创建加载模块

使用DTD4中的内容修改DTD3中的加载模块

     撤除在DTD3中指名的加载模块

如果空间允许的话,可将公用的加载模块1100内置于SPU 500中。 使用内置加载模块1100的VDE进程与必须查找、加载、解密外部加载 模块的那些进程相比,前者性能更为突出。最为有用而应该内置于SPU 中的加载模块1100包括计量加载模块、固定价格计帐加载模块、预算 加载模块以及聚合了执行上面三种进程的方法的加载模块。

用户数据元素(UDE)1200和方法数据元素(MDE)1202

在较佳实施例中,用户数据元素(UDE)1200和方法数据元素 (MDE)1202用来存放数据。较佳实施例提供了多种UDE 1200和 MDE 1202。在较佳实施例中,每个上述不同类型的数据结构都共享通 用的整体格式,这包括通用头定义和命名方案。其它共享该通用结构的 UDE 1200包含“局部名服务记录”(下面马上就要对此进行解释)以 及连接其它VDE参与者使用的帐户信息。这些元素没有必要与单独的 用户相关联,所以被视为MDE 1202。如果需要的话,较佳实施例提供 的所有UDE 1200和所有MDE 1202(如图16所示)都可以被存贮在 安全数据库610中一个共用物理数据表内。并且,可以共用数据库访问 进程来访问所有这些不同类型的数据结构。

在较佳实施例中,PERC 808和用户权利表记录是两种类型的 UDE 1200。还有其它类型的UDE 1200/MDE 1202,包括计量器、计 量器跟踪、预算、预算跟踪、以及审核跟踪。如上所述,上述各种 UDE/MDE的各种格式由DTD 1108中的SGML来定义。方法1000使 用上述DTD以正确地访问UDE/MDE 1200、1202。

安全数据库610保存两种类型的项:静态的和动态的。静态数据结 构及其它项用于实质上为静态的信息。这包括加载模块1100、PERC 808以及方法的许多部件。这些项不常更新,它们包含过期日期,用来 防止“老”的信息拷贝被新接收到的条目所替换。在存储在安全数据库 610中时,可使用特定于站点的安全数据库文件密钥对这些项进行加 密,然后在将它们加载进SPE的时候用相同的密钥对之进行解密。

动态的项用来支持必须频繁更新的安全条目。许多方法的UDE 1200在每次使用之后都必须被更新并从SPE 503中写出。计量器和预 算是两个常见的例子。使用过期日期不能有效地防止对预算UDE 1200 旧拷贝的替换。为了保证这些频繁更新项的安全,当每次更新这些项的 时候,将生成一个交易标记并将之纳入被加密的项中。系统将维护所有 VDE项ID的清单以及每个项的当前交易标记,并把这些信息作为安全 数据库610的一部分。

图24示意了较佳实施例提供的用户数据元素(“UDE”)1200 示例。如图24所示,较佳实施例中的UDE 1200含有公开头802、私 有头804、以及数据区1206。每个上述用户数据元素1200的组织结构 通常都由保存于DTD 1108中的SGML数据定义来定义,而该DTD 1108与操作该UDE 1200的一个或多个加载模块1100相关联。

一旦将UDE 1200载入某个站点以后,最好使用一个特定于该站点 的密钥对该UDE 1200进行加密。该特定于站点的密钥屏蔽了某确认标 记,该确认标记可以由SPE 503从具有强加密特性的伪随机数序列中得 到,在记录每次写回安全数据库610中的时候,该确认标记要被更新。 这种技术可以合理地保障UDE 1200在下次需要被系统使用的时候没有 被破坏或替换。

计量器和预算可能是VDE 100中最常见的数据结构。它们用来对 事件进行计量和记录,还可以对事件进行限制。计量器和预算数据结构 由信息内容提供者或经过授权可以修改该信息的分发者/再分发者来决 定。不过,计量器和预算通常都含有以通用头格式存放的共同信息(如 用户标识、站点标识、以及相关标识信息)。

信息内容提供者或分发者/再分发者可以规定每个计量器UDE和预 算UDE的数据结构。尽管这些数据结构会随着特定应用的不同而变 化,但某些数据结构比其它数据结构更具通用性。下表列出了METER (计量器)和BUDGET(预算)方法中某些更为常见的数据结构: 字段类型 格式 典型使用 使用或说明 逐增型使用计 数器 字节、短整数、长 整数或相同宽度 的无符号类型 计量/预算 对使用进行逐增计数 逐减型使用计 数器 字节、短整数、长 整数或相同宽度 的无符号类型 预算 对允许的使用进行逐减 计数(如剩余的预算) 计数器/限制 2、4或8字节的 整数,该整数被分 为相关的两个字 节或字 计量/预算 从指定时间起的使用限 制;通常用于复合计量器 数据结构中。 位图 数组字节 计量/预算 使用或所有权的位指示符 宽位图 数组字节 计量/预算 使用或可随时间老化的所 有权的指示符 上次使用日期 time_t 计量/预算 上次使用日期 开始日期 time_t 预算 第一次允许使用的日期 过期日期 time_t 计量/预算 过期日期 上次审核日期 time_t 计量/预算 上次审核日期 下次审核日期 time_t 计量/预算 下次需要审核的日期 审核者 VDE ID 计量/预算 授权的审核者的VDE ID

上表中的信息并非完整或详实,它只是试图示意可以保存于计量器 和预算相关数据结构中信息类型示例。特定计量器和预算的实际数据结 构由一个或多个DTD 1108来决定,该DTD 1108与创建和操作该数据 结构的加载模块1100相关联。经过适当授权的团体可以扩展由VDE 100的DTD解释程序590所允许的数据结构类型。

图25示意一个特别有用的UDE 1200数据区1206示例。该数据区 1206定义了一个可用来记录使用信息的“图”。举例而言,一个计量 方法1000可以维护一个或多个“使用图”数据区1206。从保存一个或 多个信息位的角度看,使用情况图可能是一个“使用位图”(即一维或 多维位图),上述信息位对应于使用的一个或多个种类或类别。在引用 以前的使用方面,使用位图是一种有效的手段。例如,计量器方法1000 可以利用使用图数据区来记录信息内容中用户已支付其使用的所有可 应用部分,这样就可以提供一种十分有效和灵活的方法,以允许后续用 户使用信息内容的相同部分。这种方法可以支持某些与VDE相关的安 全性功能,例如“连续性”、“逻辑相关性”、“使用随机化”、以及 其它使用类型。可为其它使用模式分析“使用图”(这些使用模式的例 子包括数量的折扣,以及允许用户重新访问一个信息内容,而该用户以 前已经支付了无限使用该信息内容的费用)。

较佳实施例提供的“使用图”概念可以与“原子元素”概念结合。 在较佳实施例中,可以以“原子元素”来计量对象300的使用。在较佳 实施例中,涉及计量的“原子元素”定义了使用的一个单位,即该使用 单位可作为一条“足够有效”的信息而被记录于一个计量器中。对构成 “原子元素”的定义由对象300的制作者来决定。例如,可以将对象 300中信息内容的一个“字节”定义为一个“原子元素”,也可将数据 库的一个记录定义为一个“原子元素”,也可将电子出版书籍中的一章 定义为一个“原子元素”。

对象300可以带有重叠原子元素的多个集合。例如,对大量数据库 中任一数据库的存取可被定义为一个“原子元素”。同时,大量数据库 中任何一个的任意记录、记录字段、信息区段、以及/或者任意字节的 存取都可被定义为一个“原子元素”。在一个电子出版的报纸中,每一 文章的百字的篇幅都可以被定义为“原子元素”,同时,长度超过某一 特定值的文章可以被定义为另一组“原子元素”。报纸的某些部分(如 广告、分类部分等)可能不能映射到原子元素。

较佳实施例为对象制作者提供了基本上无限的能力使之可以定义 原子元素类型。某些原子元素定义可以非常灵活地支持种类繁多的信息 内容使用类型。较佳实施例支持的某些原子元素类型包括:字节、记录、 文件、区段、对象、大量字节、连续或相对连续的字节(或其它预定义 的单位类型)、具有一定逻辑相关性的字节—这些逻辑相关字节所含内 容在主题、位置或用户可定义的其它逻辑关系类型上存在着某些逻辑关 系,等等。对象制作者最好可以灵活地定义原子元素的其它类型。

本发明的较佳实施例提供了EVENT(事件)方法,该方法可以在 使用事件和原子元素之间提供映射。通常,对于为对象300定义的每一 个不同原子元素集合,都有一个EVENT方法与之相对应。在许多情况 下,对象300将含有至少另一类原子元素用以进行与计帐有关的计量, 还含有至少另一种原子元素类型用以进行与计帐无关的计量(举例而 言,这种计量用来检测欺诈行为、对登广告者进行计帐、以及/或者收 集有关最终用户使用活动的数据)。

在较佳实施例中,在有关使用的背景中,各EVENT方法执行两个 功能:(1)它将一个受到访问的事件映射到含有零个或多个原子元素 的集合;(2)它向一个或多个METER(计量)方法提供信息以计量 对象使用。访问事件和原子元素之间的映射定义方式可采用许多形式, 包括数学定义、表格、加载模块等等。当EVENT方法将一个访问请求 映射到“零”个原子元素时,将不再根据适用的特定原子元素定义把用 户访问的事件映射到任何原子元素。出现这种情况的一个例子是:对象 所有者对基于上述访问进行使用计量不感兴趣(例如,其原因是该对象 所有者认为这种访问从计量的角度看是无足轻重的)。

“使用图”技术可以利用“位图图象”来十分有效地保存历史使用 信息。一幅使用图中的各个存贮元素可与原子元素相对应。使用图中的 不同元素可与不同的原子元素相对应(如:一个图元素可能对应于大量 的读进字节,另一个图元素可能对应于某个特定章节是否被打开,而另 一个图元素可能对应于其它使用事件)。

本发明较佳实施例所提供的使用图特征之一在于:图元素的意义至 少部分地由使用图中该元素的位置所指定。因而,在较佳实施例提供的 使用图中,由图元素指示或编码的信息是该图元素在图结构中的位置 (或者是物理位置,或者是逻辑位置)的函数。举一个简单的例子,对 于一本含有十二章的小说,其使用图可以包含十二个元素,每个元素对 应于小说的一章。当用户打开第一章时,在对应于第一章的元素中,一 个或多个位的数值将会发生改变(如设置成“1”)。在这个简单例子 中,包含该小说的那个信息内容对象的所有者只对计量哪些章节已被用 户打开感兴趣,当用户第一次打开某个章时,对应于该章的使用图元素 可以被设置成“1”,并且不管该章又被用户打开了多少次,该元素都 始终为“1”。只需简单的检查这张简洁紧凑的使用图,并确定哪些元 素被置为“1”,对象所有者或其它感兴趣的VDE参与者就可以迅速 有效地得知哪些章已被用户打开。

假设信息内容所有者希望获知小说的每一章被用户打开多少次。在 这种情况下,对于含有十二章的小说,该使用图可包含十二个元素,这 些元素与小说的各章有一一对应关系。用户每次打开某一章,对应的 METER方法将增加使用图中对应元素的值。采用这种方法,可以方便 地得到小说每一章的使用记录。

使用图中元素的位置可编码一个多变量函数。例如,可以将使用图 中的元素组织成一个二维数组,如图25B所示。不同的数组坐标可以对 对应于自变量,如原子元素和时间。举例而言,假设某个信息内容对象 所有者分发的对象含有一组录音节目。进一步假设该信息内容对象所有 者希望跟踪这组录音节目中每一个节目被用户收听的次数,而且他还希 望跟踪这组节目按月的使用情况。因而,假设该信息内容对象所有者希 望了解用户在一月份按照一个节目接一个节目的次序对每个节目的收 听次数,类似地,他还希望了解在二月份、三月份等的相同使用情况。 在这种情况下,使用图(参看图25B)可以被定义成元素的二维数组。 该数组的其中一维可以编码音频节目编号,另一维可以编码该年的月 份。在一月份,对应的METER方法将在数组“一月”的列中增加数组 元素的值,作为录音节目的编号的函数。选择哪一个元素递增。当一月 份到头以后,METER方法可能将停止写入“一月”这一列内的数组元 素,转而写入二月份的数组元素集合,此时它仍旧作为录音节目的编号 的函数来选择该列中的相应数组元素。上述的概念可以被扩展到N维, 编码N个不同变量。

因此,在引用以前的使用方面,使用图是一种有效的手段。它们可 以提供某些有关VDE的安全功能,例如它可以用来检查:连续性(包 括相对连续性)、逻辑相关性(包括相对逻辑相关性)、使用随机化、 以及对其它使用模式。例如,用户对信息内容的随机使用的程度或特征 可能会潜在地反映了用户打算绕过VDE信息内容预算限额的企图。某 个用户或某组用户可能利用多次交互会话提取信息内容,他们所采取的 方式可能不会对该信息内容在连续性、逻辑相关性或数量限制方面造成 破坏,但这种方式仍将某个给定的、有价值信息内容中的部分或全部素 材重新创建。使用图可以用来分析确定其它使用模式以便进行适当的定 价,例如,在用户使用特定数量的任何或某些原子元素之后给予用户数 量折扣。还有一个用途是允许用户重新访问一个特定对象,该用户以前 已经支付了无限使用该对象(或经过某个特定时间后可无限使用该对 象)的费用。其它对使用图的有用分析还可以包括对给定原子元素的大 量使用给予折扣。

图计量器的另一个例子包括为用户已支付了使用费用的所有适用 原子元素(或者,用户已经使用过这些原子元素并经过了计量,不过可 能还未要求或支付使用费)保存一个记录。这种使用图将提供一种十分 有效和灵活的方法,以支持后续用户使用相同的原子元素。

进一步的使用图可用来探测对相同对象的欺诈性使用。例如,可以 适当地保存对象,以保证决不发生对该对象较长数据块的顺序访问。 METER方法可以在任何规定的时间增量内记录对所有适用原子元素 的访问,此处的时间增量可以是(举例来说)十分钟、一小时、一天、 一个月、一年、或其它时间期限。在规定的时间增量末尾,可以对使用 图进行分析,以检查是否存在所访问的数据块的超长连续组。并且/或 者在每次开始访问所适用的原子元素时对使用图进行分析。每次进行了 这种基于持续时间的分析后,如果没有发现欺诈性访问,则可以清除(或 部分清除)使用图,同时映射进程可以完全或部分地重新开始刚才的工 作。如果怀疑出现了或确实检测到了欺诈性访问,将记录此信息,同时 停止对象的使用。举例而言,可要求用户与信息内容提供者联系,而该 信息内容提供者将进一步分析使用信息,以决定是否允许用户继续使用 下去。

图25C示意了一种特定类型的“宽位图”使用记录1206,其中, 每个表项对应于在一段特定时间的使用(如本月的使用、上月的使用、 上上月的使用等)。于是,所示的使用记录含有“标志”或字段1206 的数组,在这个特定的例子中,该数组中的每一个元素都用来指定在不 同时间段中的使用。当一个时间段到期后,该数组中的所有元素1206 将被移位一个位置,因而经过一系列时间段后的使用信息(或用户访问 权的购买)可以由一系列连续数组元素反映。在图25C所示的特定的 例子中,整个宽数组1206每个月移动一个数组位置,其中最老的数组 元素被删除,而新的数组元素被“拨”入对应于当前时间段的新数组图。 在本例中,记录1206对在本月及紧邻本月的前5个月中所发生的使用 访问权和/或其它与使用相关的行为进行跟踪。对应的计帐过程和/或计 帐方法406将对该图进行检查,并基于特定公式确定当前使用中与计帐 和/或安全性监测有关的使用,此处的该公式使用保存该记录中的使用 数据;及更新该宽记录以标记出适当的数组元素,表示对这些数组元素 进行过使用,等等。宽位图还可以用于许多其它目的,例如维护逐个元 素的使用计数,或上述的连续性、相关性等功能,或某些功能的组合。

可以在任何频率上产生审核跟踪图,该频率取决于控制、计量、预 算和计帐方法,以及与这些方法相关的加载模块。审核跟踪记录的结构 与计量和预算的数据结构相似,除了包含导致其创建的使用事件之外, 审核跟踪记录还可以包含特定于用户的信息。象计量和预算一样,审核 跟踪的格式是动态的,该格式由信息内容提供者或其授权受让者定义, 其基本元素类型与上表中计量和预算所使用的相同。除了这些类型以 外,下表列出了审核跟踪中可能出现的其它重要数据字段示例: 字段类型 格式 典型使用 使用说明 使用事件ID 无符号长整数 计量/预算/计帐 启动处理序列的 事件ID 内部序列号 无符号长整数 计量/预算/计帐 一个交易号,它用 来检测已经遭受 破坏的审核记录 原子元素和对象ID 适当宽度的无 符号整数 计量/计帐 被使用的原子元 素和对象ID 用户个人信息 字符其它信息 预算/计帐 用户的个人信息 使用日期/时间 time_t 计量/预算/计帐 使用的日期/时间 站点标识/用户标识 VDE标识 计量/预算/计帐 用户的VDE ID

审核跟踪记录可以被自动合并成一个记录以便节省头信息空间。何 时发生合并过程可能(举例来说)要受特定加载模块的控制,该加载模 块创建了各个审核跟踪记录。

许可记录综述

从图16中还可以看到,可以将PERC 808作为安全数据库610的 一部分进行保存。许可记录(“PERC”)808在较佳实施例VDE 100 所提供的数据驱动控制层次中处于最高层。对于每一个由VDE 100分 发的信息和/或交易的信息内容,都有至少一个相对应的PERC 808。 因而,在较佳实施例中,对于每个VDE对象300至少存在一个PERC 808。某些对象可带有多个对应的PERC 808。PERC 808控制访问和 /或操作许可的分发方式、以及/或者信息内容和/或其它信息的使用方 式。PERC 808还为每个访问信息内容和/或其它信息的参与者规定了 “权利”。

在较佳实施例中,任何用户在许可记录808传递给他之前是不能使 用或访问VDE对象的。如上所述,可以将许可记录808作为移动对象 860的一部分传递,也可以将它独立传递(例如在管理对象中)。一个 电子设备600只有在带有相应PERC 808的时候才能够访问一个对象, 并且只能使用PERC中控制结构所允许的对象和相关信息。

简单地说,PERC 808存贮的信息与方法、备选方法、解密密钥以 及涉及对应VDE对象300的权利有关。

PERC 808含有定义了高层操作类别或种类的控制结构。这些高层 类别称为“权利”。而“权利”控制结构又提供了对“方法”1000进 行引用的内部控制结构。较佳实施例PERC 808的内部结构对“方法” 进行组织,这些方法用来对对象或相关控制结构执行所有许可的操作 (包括对PERC本身执行操作)。例如,PERC 808含有对象的解密密 钥,而对密钥的使用则由特定方法来控制,PERC需要使用上述方法 来执行与履行“权利”相关的操作。

通常在创建对象的同时创建该对象的PERC 808,而以后对PERC 的实质修改—如果允许进行这些修改的话—则是由与某些操作相关联 的方法来控制,这些方法使用了由同一(或不同)PERC定义的分发 权利。

图22示意了较佳实施例提供的PERC 808示例的内部结构。所示 的所有结构都代表(或引用)了一组方法,这些方法用来以某种特定方 式处理对应的对象。PERC 808被组织成一个层次化结构,下面列出了 该层次化结构中基本元素:

“权利”记录906

“控制集合”914

“必要方法”记录920

“备选必要方法”924

PERC 808层次化结构还可以含有其它元素,这些元素描述了一些 规则和备选规则,这些规则和备选规则用来支持规则集合的协商及智能 对象的控制信息,以及利用私有信息过滤器对用户私有信息进行保护的 控制信息。这些可选的元素可包括:

可选权利记录

可选控制集合

可选方法记录

许可的权利记录

许可的权利控制集合

许可的方法记录

必要DTD说明

可选DTD说明

许可DTD说明

这些可选的字段可以控制其它进程,这些进程将有关其操作的协商 和决定部分地建立于其字段的内容之上。权利协商、智能对象控制信 息、以及相关进程等都可以使用这些字段以便对它们的操作进行更加精 确地控制。

图26所示的PERC 808包含PERC头900、CS0(“控制集合0”) 902、私有体密钥904、以及一个或多个权利子记录906。较佳实施例 中的控制集合0 902含有的信息通用于与对象300相关的一个或多个 “权利”。例如,特定“事件”方法对于使用权利、提取权利和/或其 它权利来说可以是相同的。在这种情况下,“控制集合0”902可以引 用这个对多种“权利”来说都相同的事件。提供“控制集合0”902实 际上是一种优化措施,因为这样,就可能把通用事件的不同实例保存在 PERC 808的多个“权利”记录906的各个之中。

每个权利记录906都定义了对应于某个对象的一个不同的“权 利”。“权利”记录906是PERC 808结构中的最高层次。在PERC 808 中可以有若干不同的权利。一个“权利”代表了一种主要的功能划分, 这种功能划分是VDE 100基本体系结构中的某个参与者所需要的。例 如,使用对象的权利以及分发对象使用权的权利是VDE 100中主要的 功能集合。某些可能的权利包括:对信息内容的访问、分发信息内容访 问权的许可、对有关信息内容和/或控制结构的审核跟踪进行读取和处 理的能力、进行交易的权利—此处的交易可以也可以不与信息内容和/ 或相关控制结构有关(这些交易的例子有:金融交易、产品目录购买、 税收、EDI交易,等等),以及修改部分或全部PERC内部结构的能 力—该PERC是为向其它用户分发而创建的。对于PERC所允许的每 一类对象访问/使用权利,PERC 808都带有一个权利记录906。

通常,对于VDE最终用户来说,最常得到许可的权利是使用权。 其它类型的权利包括“提取权”、访问最终用户审核跟踪信息的“审核 权”、以及分发对象的“分发权”。上述各种不同权利可以在不同的权 利记录906中体现出来(或者,对应于某个对象的不同PERC 808可以 用来准许不同的权利)。

每个权利记录906都含有权利记录头908、CSR(“权利控制集 合”)910、一个或多个“权利密钥”912、以及一个或多个“控制集 合”914。每个“权利”记录906都含有一个或多个控制集合914,控 制集合914或者是必须的或者是可选的备选方案,它们用来在该“权 利”的行使过程中对对象进行控制。因而“权利”906内部的下一层即 是控制集合914,控制集合914又各含有控制集合头916、控制方法 918、以及一个或多个必要方法记录920。每个必要方法记录920又都 含有一个必要方法头922以及一个或多个备选必要方法924。

VDE 100中的控制集合914有两种类型:通用必要控制集合 (Common required control Set)—其标记为“控制集合0”或“权 利控制集合”、以及一组备选控制集合(control Set Option)。“控 制集合0”902含有必要方法的一个清单,这些必要方法为所有备选控 制集合所通用,所以该通用必要方法不必在每个备选控制集合中都复制 一份。“权利控制集合”(“CSR”)910含有给定权利中的相同控 制集合清单。因而如上所述,“控制集合0”以及任意“权利控制集合” 是最优的方案。通过列出备选控制集合中的所有通用必要方法并且略去 “控制集合0”以及任意“权利控制集合”就可以实现各控制集合的相 同功能。

备选控制集合之一、“控制集合0”、以及适当的“权利控制集合” 这三者共同组成了行使一项权利所必须的完整控制集合。

每个备选控制集合都含有必要方法1000的一个清单,并代表了行 使权利的不同方式。在较佳实施例中,在任一时刻,可能的完整控制集 合914中只有一个控制集合用来行使一项权利。

每个控制集合914含有足够多的必要方法记录920用来满足制作者 和/或分发者行使一项权利的所有要求。可以支持以多种方式行使一项 权利,也可以支持用多个控制集合控制给定权利的行使方式。举一个例 子,单个控制集合914可以要求多个计量和预算方法读取对象的信息内 容,也可以要求不同的计量和预算方法打印对象的信息内容。读和打印 对象的信息内容都可以在单个控制集合914中加以控制。

或者,两个不同的备选控制集合可以支持读对象的信息内容,其中 一个备选控制集合用来支持对所读字节数的计量和预算,另一个备选控 制集合用来支持对所读段落数的计量和预算。在一个时刻这两个备选控 制集合中有一个活跃。

通常,每个控制集合914都引用一个相关方法集合,而不同的控制 集合可以提供不同的备用方法集合。例如,一个控制集合914可代表一 个特殊类型的计量方法,而另一个控制集合则可代表一个完全不同的特 殊计量方法。

控制集合914中的下一层次是必要方法记录920。在较佳实施例 中,方法记录920包含或引用方法1000。方法1000包含一组“事件”、 对与这些事件相关的加载模块的引用、静态数据、以及对安全数据库 610的引用,其中对安全数据库610的引用是用来自动检索处理事件可 能所需的任何其它独立可传递数据元素(如UDE)。控制集合914包 含必要方法的一个清单,在行使一项特定权利(即处理与权利相关的事 件)时必须使用这些必要方法。列在控制集合914中的必要方法记录 920表明了必须存在一个方法以便履行该控制集合所支持的权利。必要 方法可引用下面将要讲到的“加载模块”1100。简要地说,加载模块 1100是一段可执行代码,它可用来执行必要方法。

每个控制集合914都可带有一个控制方法记录91 8作为其必要方法 之一。被引用的控制方法可以定义某些或全部不同方法1000之间的关 系,这些方法由控制集合906定义。例如,一个控制方法可以表明哪些 必要方法要按功能组织在一起以便处理特定的事件,以及表明处理必要 方法的次序。于是,一个控制方法可指定由记录920(a)(1)(i)所引用的必 要方法是第一个应该被调用的方法,并且其输出要送到由记录 920(a)(1)(ii)所引用的必要方法,依次类推。采用这种方式,一个计量方 法可以被连接到一个或多个计帐方法,而该计帐方法由可以被单独连接 到不同的预算方法,等等。

必要方法记录920指定了一个或多个备选必要方法924。在较佳实 施例PERC 808的控制结构中,备选必要方法处于最低层次。通过将必 要方法参数化,并在独立于必要方法的前提下指定备选必要方法924, 就有可能在许多不同情况下对必要方法进行重用。

例如,必要方法记录920可以表明,必须从备选必要方法清单的预 算方法ID清单中为该必要方法选择一个实际的预算方法ID。本例中 的必要方法记录920不包含有关所需方法类型信息的方法ID,它只是 表明需要一个方法。备选必要方法924含有特定方法的方法ID,该特 定方法在所述备选必要方法被选中的时候将投入使用。作为一种进一步 的优化方案,如果对于指定的必要方法只存在一个备选必要方法,则可 以保存实际的方法ID。这样可以缩减这一数据结构的大小。

PERC 808还包含对象300的基本解密密钥,以及其它与“权利” 结合使用的密钥(例如这些密钥用来加密和/或解密审核跟踪记录)。 它可以包含用于对象信息内容的密钥,或者它包含用来解密对象某些部 分的密钥,而这些对象部分又可包含用来解密对象的信息内容的其它密 钥。对这些密钥的使用由相同“权利”906中的控制集合914来控制, 该“权利”906包含在PERC 808之中。

详细地说,图26示意了PERC 808包含私有体密钥904以及权利 密钥912。私有体密钥904用来对包含在对应VDE对象300中的私有 体806所含信息进行解密。举例来说,这种信息可包括方法1000、加 载模块1100和/或UDE 1200。在较佳实施例中,权利密钥912是行使 一项权利所用的密钥。举例来说,这种权利密钥912可含有某些解密密 钥,这些解密密钥允许由PERC 808指定的某个方法对信息内容进行解 密,以便由VDE节点向最终用户发布该信息内容。在较佳实施例中, 这些权利密钥912对于对象300来说是唯一的,对其的使用最好由较佳 实施例中的预算进行控制。

PERC 808的详细举例

图26A和26B示意了较佳实施例PERC 808的一个例子。在本例 中,PERC头900包含:

站点记录号926

字段928,它规定了私有体密钥块的长度

字段930,它规定了PERC的长度

过期日期/时间字段932,它规定了PERC的过期日期和/

或时间

上次修改日期/时间字段934,它规定了上次修改PERC的

日期和/或时间

原始分发者标识字段936,它表明了PERC和/或相应对象

的原始分发者

    上次分发者标识字段938,它表明了PERC和/或相应对象

的上次分发者

    对象ID字段940,它标识了相应的VDE对象300

    字段942,它为该记录类别指定了PERC和/或实例ID的

类别和/或类型,用以区分类型相同但细节不同的PERC。

    字段944,它指定了PERC中“权利”子记录904的数目

    确认标记948

图26a,26b所示的PERC 808还包含私有体密钥,它们存放在私有 体密钥块950中。

该PERC 808包含了一个控制集合0子记录914(0),该子记录914(0) 可通用于PERC中的所有权利906。该控制集合0子记录914(0)可以含 有下列字段:

    长度字段952,它规定了该控制集合0记录的长度

    字段954,它规定了该控制集合中必要方法记录920的数

    访问标记字段956,它规定了一个访问标记以控制对该记

录的修改,以及

    一个或多个必要方法记录920

每个必要方法记录920又可含有:

    长度字段958,它规定了该必要方法记录的长度

    字段960,它规定了该必要方法记录920中备选方法记录

的数目

    访问标记字段962,它规定了一个访问标记以控制对该记

录的修改,以及

    一个或多个备选方法记录924

每个备选方法子记录924可包含:

    长度字段964,它规定了该备选方法记录的长度

    长度字段966,它规定了对应于该备选方法记录的数据区

(如果有的话)长度

    方法ID字段968,它指定了一个方法ID(如类型/所有者

/类别/实例)

    关联标记字段970,指定了一个关联标记用来与字段968

指定的方法建立关联。

    访问标记字段972,它规定了一个访问标记以控制对本记

录的修改

    方法特有的属性字段974

    数据区976

    用于校验目的的校验值字段978

在本例中,PERC 808还包含一个或多个权利记录906,以及一个 全局校验值字段980。图23b是图16a所示的权利记录906的一个例子。 在这个特定例子中,权利记录906a包含一个权利记录头908,该头908 又包含:

    长度字段982,它规定了权利密钥块912的长度

    长度字段984,它规定了权利记录908的长度

    过期日期/时间字段986,它规定了权利记录的过期日期和

/或时间

    权利ID字段988,它标识了一个权利

    数目字段990,它规定了权利字段906中控制集合914的

数目

    访问标记字段992,它规定了一个访问标记以控制对本权

利记录的修改

本例中的权利记录906含有:

    本权利的控制集合(CSR)910

    权利密钥块912

    一个或多个控制集合914,以及

    校验值字段994

对象注册

再请参看图16,安全数据库610提供了一些数据结构用以支持对 “已注册”对象的“查找”机制。这种“查找”机制允许电子设备600 以安全的方式将VDE对象300与PERC 808、方法1000以及加载模块 1100联系起来。在较佳实施例中,这种查找机制部分地建立在对象注 册450所含的数据结构之上。

在一个实施例中,对象注册450包含下列的表格:

     对象注册表460

     主题表462

     用户权利表(“URT”)464

     管理事件日志442

     发送表444,以及

     接收表446

在该示意性实施例中,对象注册460是某些信息的一个数据库,这 些信息涉及注册的VDE对象300以及与这些对象有关的用户及用户组 的权利。当电子设备600收到一个含有新预算或加载模块1100的对象 300时,该电子设备通常需要将该对象所含的信息添加到安全数据库 610中。而且,当任何新VDE对象300到达电子设备600时,该电子 设备都要在对象注册450中“注册”该对象,以便允许该对象被访问。 在较佳实施例中,每当电子设备600“注册”一个新对象时,将创建该 对象的清单和记录。该对象的信息可以从其加密的私有头、对象体、以 及加密名字服务记录中获取。该信息可以由SPE 503从对象中提取或导 出,然后以加密记录的形式存放在安全数据库610中。

在一个实施例中,对象注册表460包含对保存在对象存储器(仓 库)728中的对象进行标识的信息。在本实施例中,这些保存在对象存 储器728中的VDE对象300并非一定是安全数据库610一部分,这是 因为,对象通常带有其自身的安全性(这些安全性是必要的并且是所要 求的),并且是使用与维护安全数据库所用的机制不同的机制维护的。 虽然VDE对象300可能不一定严格地作为安全数据库610的一部分, 但对象注册450(具体说就是对象注册表460)引用了对象,从而是通 过引用的形式把对象包含进了安全数据库中。在较佳实施例中,任何 VDE对象300,在其被正确注册并在对象注册表460中保存了一条相 应注册记录之前,是禁止电子设备600使用的。

在本实施例中,主题表462在对象注册表460引用的对象与电子设 备600的用户(或用户组)之间建立对应关系。主题表462提供了访问 控制表(“ACL”)的许多属性。这一点将在后面进行介绍。

在本实施例中,主题表462已经给出了特定用户或用户组与对象的 组合信息,而用户权利表464则提供了特定于上述组合的许可以及其它 信息。在本实施例中,许可记录808(图16示意了许可记录808,许 可记录808存放在安全数据库610中)可以为特定的对象-用户组合提 供全面的许可控制。根据(举例来说)用户在对象注册交互作用中所做 的选择,用户权利表464中的记录可以指定上述许可控制体系中的一个 子集。

管理事件日志442、发送表444、以及接收表446提供有关VDE 对象300接收和交付的信息。这些数据结构跟踪由电子设备600发送或 接收的管理对象,包括(举例来说)以概要和详情的形式的管理对象的 目的和行为。简而言之,发送表444为电子设备600发送(或计划发送) 到其它VDE参与者的每个管理对象保存一个发送记录。本实施例中的 接收表446为电子设备600接收(或计划接收)的各管理对象保存一个 接收记录。管理事件日志442为每个已发送的和每个已接收的管理对象 保存一个事件日志,并可包含每个特殊事件的有关详情,该特殊事件由 接收到的管理对象指定。

管理对象的发送和接收

图27示意了发送表444的详细格式示例。在较佳实施例中,发送 表444包含头444A以及任意数目的发送记录445。头444A含有用来 维护发送表444的信息。发送表444中的每个发送记录445都提供了与 某个发送事件有关的详细情况(即,或者是一个已完成发送,或者是一 个计划中的发送,前者表示已向另一个VDE参与者发送一个管理对 象,后者表示正计划发送该管理对象)。

在安全数据库610的实施例中,发送表头444A可以包含一个站点 记录号444A(1)、用户(或组)ID 444A(2)、一系列引用字段444A(3)- 444A(6)、确认标记444A(7)-444A(8)、以及校验值字段444A(9)。字段 444A(3)-444A(6)引用了特定的近期ID,而这些ID指定发送表444中 的发送记录445的表。例如,字段444A(3)可引用一个“最先”发送记 录,该记录表示对某个管理对象已完成的向外发送,而字段444A(4)可 引用一个“最末”发送记录,该记录表示对某个管理对象已完成的向外 发送。在本例中,如果需要的话,“最先”和“最末”可以指发送的时 间或次序。类似地,字段444A(5)和444A(6)可以指计划向外发送的“最 先”和“最末”发送记录。确认标记444A(7)用来确认来自名字服务记 录表452中某个名字服务记录,该名字服务记录与本头中的用户(组) 标识相关联。这种方式允许从发送记录反过来访问名字服务记录,而名 字服务记录则对发送记录所述对象的发送者进行了说明。确认标记 444A(8)向由一个或多个指针444A(3)-444A(6)所引用的“最先”向外发 送记录提供确认。可以提供其它确认标记,以便对计划发送记录进行确 认。

所示的发送记录444(1)含有一个站点记录号445(1)(A)。它还包含 最先和最末计划发送时间/日期445(1)(B),445(1)(C),最先和最末计划 发送时间/日期445(1)(B),445(1)(C)提供了时间窗口以供调度管理对象 发送之用。字段445(1)(D)可指定一个管理对象发送完成的实际日期/时 间。字段445(1)(E)提供了已发送或准备发送的管理对象的ID,它标明 了对象存储器728中的哪个管理对象涉及了上述特定发送记录。引用字 段445(1)(G)引用了名字服务记录表452中的一个名字服务记录,它指 定了已发送或准备发送的管理对象的实际接收者或预期接收者。名字服 务记录表452中的上述信息可以(举例来说)提供足够的路由信息,以 允许图12所示的向外的管理对象管理器754通知对象开关734将管理 对象发送给预定的接收者。字段445(1)(H)可指定(例如使用一组位标 志)管理对象发送的目的。字段445(1)(I)可以指定发送的状态。引用字 段445(1)(J),445(1)(K)可以引用在一个链表中的“前一个”和“后一个” 发送记录(在较佳实施例中,可有两个链表,一个用于已完成的发送记 录,另一个用于计划发送记录)。字段445(1)(L)-445(1)(P)分别向下列 记录提供确认标记:从头444A、向指针445(1)(F)指向的;管理事件日 志442中的某个记录从头444A向字段445(1)(G)引用的某个名字服务记 录;从字段445(1)(J)引用的前一个记录;以及对字段445(1)(K)引用的 下一个记录。校验值字段445(1)(Q)可用来校验发送记录445。

图28示意了接收表446的一个可能的详细的格式示例。在一个实 施例中,接收表446的结构与图27中发送表444的结构相似。于是, (举例来说)接收表446可含有一个头446a以及多个接收记录447, 每个接收记录都包含有关管理对象接收或计划接收的详细情况。接收表 446可包含两个链表,一个链表用于已完成的接收,另一个用于计划的 接收。每个接收表记录447都引用了名字服务记录表452中的一个表 项,它指定了一个管理对象发送者,并且每个接收表记录447都指向管 理事件日志442中一个表项。接收记录470还可以包含与计划和/或已 完成的接收有关的附加详情(如计划的或实际的接收日期/时间,接收 目的以及接收状态),并且这些有关详情的字段每一个都可以包含确认 标记,用来确认对其它安全数据库记录的引用。

图29示意了管理事件日志442的详细格式示例。在较佳实施例中, 管理事件日志442对每一个已发送的管理对象和已接收的管理对象都 保存一个事件日志记录442(1)...442(N)。每个管理事件日志记录可包括 头443a和1个到N个的子记录442(J)(1)...442(J)(N)。在较佳实施例中, 头443a可包含站点记录号字段443A(1)、记录长度字段443A(2)、管理 对象标识字段443A(3)、指定了事件数的字段443A(4)、对发送表444 或接收表446发来的引用进行确认的确认标记443A(5)、以及校验和字 段443A(6)。由字段443A(4)指定的事件数目对应于管理事件日志记录 442(J)中的子记录442(J)(1)...442(J)(N)的数目。每个上述子记录都指定 了与特定“事件”有关的信息,该特定“事件”受到字段443(A)(3)指 定的管理对象的影响,或者与之相对应。管理事件被保存在管理事件日 志442中,以支持对系统已经发送或接收的管理对象进行重建(及构成 或处理的准备)。这样,当某个管理对象丢失后就可以在以后对之重建。

每个子记录可包含:子记录长度字段442(J)(1)(a)、数据区长度字 段442(J)(1)(b)、事件ID字段442(J)(1)(c)、记录类型字段442(J)(1)(d)、 记录ID字段442(J)(1)(e)、数据区字段442(J)(1)(f)、以及校验值字段 442(J)(1)(g)。数据区字段442(J)(1)(f)可以用来表明安全数据库610中哪 些信息被事件标识字段442(J)(1)(c)所指定的事件所影响,或者添加哪 些新的安全数据库条目,它还可以用来指定事件的输出。

对应于每个存放在对象存储器(仓库)728中的VDE对象300, 较佳实施例中的对象注册表460都包含一个相应记录。当一个新对象 (如通过重定向器684)到达或被检测到的时候,较佳实施例电子设备 600将“注册”该对象,其步骤是:创建一个相应的对象注册记录并将 之保存在对象注册表460中。在较佳实施例中,对象注册表存贮的信息 具有用户无关性,这些信息只依赖于在给定的VDE电子设备600上注 册的对象。注册活动通常由与对象相关的一个REGISTER(注册)方 法进行管理。

在本例中,主题表462在用户(或用户组)与注册的对象之间建立 关联。本例中的主题表462执行了访问控制表的功能,即规定哪些用户 有权访问哪些已注册VDE对象300。

如上所述,安全数据库610对每个已注册的VDE对象300均至少 保存一个PERC 808。PERC 808指定了一组权利,可以行使这些权利 以便使用或访问对应的VDE对象300。较佳实施例允许用户“定制” 他们的访问权,即允许用户从相应PERC 808授权的权利中选择一个子 集,并且/或者允许用户指定某些参数或选择,而这些参数或选择则对 应于PERC 808许可的某些或全部权利。在较佳实施例中,用户的选择 存放用户权利表464中。用户权利表(URT)464包含URT记录,每 个URT记录都对应于一个用户(或用户组)。每个URT记录规定了用 户对于相应VDE对象300作出的某些选择。这些用户选择可以独立地 或者与PERC 808一起引用一个或多个方法1000,从而可以按照由 URT记录中的选择所指定的方式来履行PERC 808赋予用户的权利。

图30示意了上述各种表格是如何相互作用而提供安全数据库查找 机制的。图30示意了对象注册表460,对象注册表460含有大量的对 象注册记录460(1),460(2),...这些记录对应于存放在对象仓库728的 VDE对象300(1),300(2)。图31示意了较佳实施例中对象注册表460的 格式示例。对象注册记录460(N)可含有下列的字段:

站点记录号字段466(1)

对象类型字段466(2)

制作者ID字段466(3)

对象ID字段466(4)

引用字段466(5),它引用了主题表462

属性字段466(6)

最小注册时间间隔字段466(7)

一个对应于主题表字段的标记466(8),以及

校验值字段466(9)

站点记录号字段466(1)指定了该对象注册记录460(N)的站点记录 号。在安全数据库610的一个实施例中,存放在该安全数据库中每个 记录都由一个站点记录号来标记。可以将该站点记录号用在数据库查找 进程之中,以便跟踪安全数据库610中的所有记录。

对象类型字段466(2)可以指定以注册对象300的类型(如信息内容 对象、管理对象,等)。

本例中的制作者ID字段466(3)可以标识相应VDE对象300的制作 者。

本例中的对象ID字段466(4)唯一地标识了已注册的VDE对象 300。

在较佳实施例中,引用字段466(5)标识了主题表462中的一个记 录。通过使用该引用,电子设备600可以确定在主题表462中列出的、 有权访问相应VDE对象300的所有用户(或用户组)。标记466(8)用 来确认使用字段466(5)访问的主题表记录是对象注册记录460(N)所要 使用的正确记录。

属性字段466(6)可以保存与VDE对象300相对应的一个或多个属 性或属性标志。

最小注册时间间隔字段466(7)可以指定最终用户能够以什么样的 频率以VDE对象300用户的身份向票据交换所服务、VDE管理员或 VDE提供者重新注册。禁止频繁进行重新注册的一个理由是阻止用户 重新使用移动对象的预算额,直到一段指定的时间过去为止。当对象所 有者不希望重新注册的时候,最小注册时间间隔字段466(7)将保留为未 用。

校验值字段466(9)包含有确认信息,用来检测对记录460(N)的破坏 或修改,从而保证该记录的安全性和完整性。在较佳实施例中,记录 460(N)中的多个或全部字段(以及安全数据库610中的其它记录)可以 被完全地或部分地加密并且/或者含有那些冗余地保存在每个记录中的 字段(这些字段一次是以未加密形式保存,一次是以加密形式保存)。 同一字段的加密和解密版本将在不同的时间被交叉检查,以探测破坏或 修改记录的行为。

如上所述,引用字段466(5)引用了主题表462,具体地说,引用字 段466(5)引用了主题表中的一个或多个用户/对象记录462(M)。图32 示意了本例中用户/对象记录462(M)的格式示例。记录462(M)可含有头 468和主题记录部分470。头468可包含一个字段468(6),该字段引用 了存放在主题登记表462中的“第一个”主题记录470。上述“第一” 主题记录470(1)又可包含一个引用字段470(5),该引用字段470(5)引用 了存放在主题登记表462中的“下一个”主题记录470(2),依次类推。 该“链表”结构使单个对象注册记录460(N)能够对1个到N个的主题 记录470进行引用。

本例中的主题注册表头信息468包含一个站点记录号字段468(1), 该站点记录号字段468(1)唯一地标识出作为安全数据库610中一个记录 的上述头。头468还可含有一个制作者ID字段468(2),该字段拷贝了 对象注册表制作者ID字段466(3)中的内容。同样,主题注册表头468 可含有一个对象ID字段468(5),该字段则拷贝了对象注册表460中的 对象ID字段466(4)。上述字段468(2),468(5)使用户/对象注册记录明 确地与特定VDE对象300相关联。

头信息还可包含一个标记468(7)以支持确认。在一个实施例中,用 户/对象注册头468中的标记468(7)可以等同于指向该用户/对象注册头 的对象注册记录460(N)所含的标记466(8)。上述标记468(7)和466(8) 之间的对应关系可以用来确认对象注册记录和用户/对象注册头是相匹 配的。

用户/对象注册头468还含有一个原始分发者标识字段468(3)和一 个上次分发者标识字段468(4)。前者标识了对应于VDE对象300的原 始分发者,后者表明了在该对象控制链中位于电子设备600收到该对象 之前的上次分发者。

头468还包含一个标记468(8),该标记可以用来在该头和字段468(6) 引用的“第一”主题记录470(1)之间进行确认。

主题记录470(1)含有站点记录号字段472(1)、用户(或用户组)标 号字段472(2)、用户(或用户组)属性字段472(3)、引用用户权利表464 的字段472(4)、引用“下一个”主题记录472(2)(如果该记录存在的话) 的字段472(5)、标记472(6)—该标记用来与头标记468(8)确认、标记 472(7)—该标记用来与字段472(4)引用的用户权利表464中对应标记进 行确认、标记472(9)—该标记用来与字段472(5)引用的“下一个”主题 记录中对应标记进行确认、以及校验值字段472(9)。

用户(或用户组)标识字段472(2)标识了一个用户或用户组,该用 户或用户组有权使用由字段468(5)标识的对象。因而,字段468(5)和 472(2)共同组成了由主题表462提供的访问控制表的核心。用户属性字 段472(3)可以指定某些属性,这些属性涉及由字段472(2)指定的用户或 用户组对对象300进行的使用/访问。通过向“链表”结构中添加主题 记录470,可以将任意数目的不同用户或用户组添加到该访问控制表中 (其中每个用户或用户组带有一组不同的属性472(3))。

主题记录引用字段472(4)引用了用户权利表464中的一个或多个记 录。图33示意了用户权利表记录464(k)的优选格式示例。用户权利记 录464(k)可包含URT头474、记录权利头476、以及用户选择记录478 的一个集合。URT头474可含有站点记录号字段、字段472(2)—该字 段指定了URT记录464(k)中权利记录的数目、字段474(3)—该字段引 用了一个“第一个”权利记录(即指向了权利记录头476)、标记474(4)— 该标记用来确认来自主题表462的查找、标记474(5)—该标记用来确认 对权利记录头476的查找、以及一个校验值字段474(6)。

较佳实施例中的权利记录头476可包含站点记录号字段476(1)、权 利标识字段476(2)、引用“下一个”权利记录476(2)的字段476(3)、引 用用户选择记录478(1)第一集合的字段476(4)、标记476(5)一该标记用 来与URT头标记474(5)进行确认、标记476(6)—该标记用来与用户选 择记录标记478(6)进行确认、以及一个校验值字段476(7)。权利标 识字段476(2)可(举例来说)用来指定权利记录476传送的权利的类型 (如使用权、分发权、读的权利、审核权等等)。

由权利记录头476引用的一个或多个用户选择记录478表明了与访 问和/或使用相应VDE对象300相对应的用户选择。通常,对于授予用 户或用户组的每项权利,都有一个权利记录476与之相对应。这些权利 控制上述用户或用户组对VDE对象300的使用。例如,用户可具有“访 问”权、“提取”权,但没有“拷贝”权。其它由权利记录476控制的 权利(在较佳实施例中,利用REGISTER(注册)方法从PERC 808 中得到这些权利)包括分发权、审核权、以及定价权。当一个对象300 向电子设备600注册并且向一个特定的用户和用户组注册以后,用户便 可以在PERC 808中的各种使用方法中作出选择。例如,一个VDE对 象300可带有两个必要的计量方法:一个用于计帐目的,一个用来累加 数据,这些数据与用户使用的宣传材料有关。可给予用户各种计量/计 帐方法的选择,例如:用VISA或MasterCard付帐、从两种计帐方法 中任选其一—一种是基于从信息数据库中检索出的材料数量进行计 帐,一种是基于使用时间进行计帐、或者上述两种计帐方法都选用。如 果用户愿意将他检索的信息内容的某些细节提供给一个第三方时(例 如,为人口统计目的),他可能会在时间和/或数量计帐方面得到某些 折扣。在对象注册的时候和/或用户为该对象而注册的时候,将要求用 户为得到的第一个计量选择一个特定的计量方法作为“生效计量方 法”。VDE管理员可能会为用户缩小可用选择的范围,从PERC 808 规定的原始选择集合中列出一个子集让用户选择。上述用户选择和配置 的设置存放在用户选择记录480(1),480(2),480(N)中。用户选择记录不 必明确地出现在用户权利表464中,相反,用户选择记录480可能(例 如利用站点引用号)引用特定的VDE方法和/或用来参数化这些方法的 信息。用户选择记录480对方法1000的上述引用需要经过存放在用户 选择记录中的确认标记确认。因而,在较佳实施例中,用户选择记录 480可选择一个或多个方法以用在相应VDE对象300中(如图27所 示)。上述用户选择记录480本身可完全定义方法1000以及其它信息, 这些信息是在为实现上述方法而创建适当部件组690中所用到的。作为 另一种选择,用来引用用户权利记录464的用户/对象记录462也可以 引用对应于VDE对象300的PERC 808,以便提供创建部件组690和/ 或访问VDE对象300所需的附加信息。例如,可以访问PERC 808以 便获取某些MDE 1202,这些MDE 1202与所选方法、私有体和/或用 于加密和/或解密对象的信息内容所用的权利密钥是相关的;也可以使 用PERC 808以提供特定校验功能,该校验功能用来确保用户权利记录 传送的权利都是体现在PERC中的当前授权所允许的权利。

在本发明的一个实施例中,可以使用一个传统的数据库引擎 (engine)来保存和组织安全数据库610,并且,前述的加密层可处 于传统数据库结构“之上”。不过,如果上述传统数据库引擎无法组织 安全数据库610中的记录同时也无法支持前面讨论的安全性措施时, 那么电子设备600可以采用加密的方式维护单独的索引结构。这些单独 的索引结构可以由SPE 503来维护。本实施例将要求SPE 503解密索引 并且搜索解密的索引快,以寻找适当“站点记录ID”或其它指针。然 后SPE 503可请求传统数据库引擎以获取被指定的记录。如果不能对照 记录表检验记录ID,SPE 503可能需要索取数据文件本身,以便它检 索到所需的记录。然后SPE 503将执行适当的鉴别操作以保证该文件没 有遭到破坏,并且返回的是正确的数据块。SPE 503不能简单地将上述 索引传给传统数据库引擎(除非该数据库引擎本身是安全的),这是因 为这样会允许一个错误的记录替换所需的记录。

图34示意了如何使用上述的站点记录号来访问安全数据库610中 各种数据结构。在本例中,安全数据库610还包含一个站点记录表482, 该表保存了大量的站点记录号。在站点记录表482中保存的实际上是安 全数据库610中所有记录的“主列表”。站点记录表482中保存的上述 站点记录号允许对安全数据库610中任意记录进行访问。因而在站点记 录表482中,某些站点记录可索引对象注册表460中的记录,站点记录 表中其它站点记录号可索引用户/对象表462中的记录,站点记录表中 又其它的站点记录号可访问URT 464中的记录,站点记录表中又有其 它站点记录号可访问PERC 808。另外,每个方法核心1000’也都可包 含一个站点记录号,以便站点记录表482可以访问它们。

图34A示意了站点记录表482中站点记录482(j)的示例。站点记录 482(j)可包含:字段484(1)—它表明了记录的类型;字段484(2)—它表 明了该记录的所有者或创建者;“类别”字段484(3)和“实例”字段 484(4)—它们提供的信息与站点记录482(j)指向的记录有关;特定描述 符字段484(5)—它指示与本记录相关的特定描述符(如对象ID);本 站点记录引用的表或其它数据结构的一个标识符484(6);在本数据结构 内的引用和/或偏移484(7)—它表明本记录的起始位置;确认标记 484(8)—它用来确认正在被查找的记录;以及校验值字段484(9)。字段 484(6)和484(7)共同提供了一种机制,通过这种机制,由站点记录484(j) 引用的记录实际上是物理地位于安全数据库610中。

安全数据库610的更新

图35示意了一个进程1150,该进程可以被票据交换所、VDE管 理员或其它VDE参与者用来更新由某个最终用户电子设备600维护的 安全数据库610。例如,为了响应最终用户的请求,图35所示的进程 1150可用来收集安全数据库610中的“审核跟踪”记录,以及/或者提 供新的预算和许可(如PERC 808)。

通常,最终用户电子设备600可起动与某个票据交换所通信(处理 框1152)。该通信(举例来说)可自动建立或响应用户发出命令建立。 该通信可以建立在电子高速公路108之上,或使用其它通信网络,如 LAN、WAN、双向电缆,或使用电子设备之间的其它移动媒体交换。 交换管理信息的进程不一定发生在单个“在线”会话中,相反,该进程 持续一段相当的时间,基于在相同的或不同的通信装置上的多次不同的 单向和/或双向通信。不过,图35所示的进程1150是一个特定的例子, 其中,最终用户电子设备600与其它VDE参与者(如某个票据交换所) 通过电话线、网络、电子高速公路108等建立了双向、实时的交互式通 信交换。

最终用户电子设备600通常与一个特定的VDE管理员或票据交换 所联系。特定票据交换所的身份取决于用户希望访问或已经访问的 VDE对象300。例如,假设用户已经访问了一个特定的VDE对象300, 并且他已经用光了继续访问所需的预算。用户可以发出一个请求,该请 求使他的电子设备600自动与对上述特定对象负有责任的VDE管理 员、分发者和/或财务票据交换所接触。在本例中,需要联系的合适VDE 参与者的身份(举例来说)由UDE 1200、MDE 1202、对象注册表460 和/或主题表462中的信息来提供。电子设备600可能需要联系多个VDE 参与者(如向某个参与者分发审核记录,从另一个参与者处获取另外的 预算或其它许可,等等)。在某个例子中,联系1152可能要依据图27 中的发送表444和图29中的管理事件日志442进行安排。

一旦建立了联系以后,最终用户电子设备与票据交换所通常相互鉴 别并同意使用某个会话密钥用来进行实时信息交换(处理框1154)。 一旦建立好安全的连接以后,最终用户电子设备可(如根据发送表 444)确定它是否有某些管理对象包含需要发送给该票据交换所的审核 信息(判定框1156)。与多个VDE对象300相关的审核信息可放在同 一管理对象中传送,或者不同管理对象可包含不同对象的审核信息。假 设最终用户电子设备至少含有一个需要传送给该特定票据交换所的上 述管理对象(判定框1156出口“是”),该电子设备通过已经建立好 的安全实时通信将上述管理对象发送给票据交换所(处理框1158)。 在一个实施例中,单个管理对象可发送带有多个VDE对象审核信息的 管理对象,在该管理对象中,每个不同对象的审核信息处理一个单独“事 件”。

票据交换所可接收该管理对象,并对其内容进行处理以确定该内容 是否是“有效的”和“合法的”。例如,票据交换所可分析其中所含的 审核信息以判断该审核信息是否表明了对相应VDE对象300发生过不 合理使用。作为分析的结果,该票据交换所将产生一个或多个响应的 管理对象,然后将这些对象发送给最终用户电子设备600(处理框 1160)。最终用户电子设备600可执行某些事件处理,包括根据收到 的管理对象对其安全数据库610和/或SPU 500的内容进行更新(处理 框1162)。例如,如果票据交换所收到的审核信息是合法的,那么票 据交换所将可向最终用户电子设备600发送一个管理对象,要求电子设 备删除和/或压缩已经传送的审核信息。作为另一种选择或作为一种补 充方式,票据交换所在本阶段可要求从最终用户电子设备600那里得到 更多的信息(例如,要求重新传送在起始传送过程中受到破坏的某些信 息,要求传送前面没有传送的附加信息,等等)。如果票据交换所根据 接收到的审核信息检测出不合理使用行为,它可传送某个特定管理对 象,该管理对象将取消或修改最终用户继续访问相关VDE对象300的 权利。

作为另一种选择或作为一种补充方式,票据交换所可向最终用户电 子设备600发送一个管理对象,该管理对象命令电子设备向用户显示一 条或多条消息。这些消息可将某些情况通知给用户,并且/或者要求用 户提供附加信息。例如,该消息可能要求最终用户直接通过电话与票据 交换所联系,或者要求最终用户解决某个指出的问题、输入一个PIN, 或者通知用户与一个新的服务公司联系以便重新注册相关的VDE对 象。作为另一种选择,上述消息可告诉用户:他需要获取该对象的新使 用许可,并且可将花费、状态以及其它相关信息通知给用户。

在同一或不同的通信交换中,同一或不同的票据交换所可以处理最 终用户对有关VDE对象300附加预算和/或许可的请求。例如,最终用 户电子设备600(例如,为响应用户输入的、希望访问特定VDE对象 300的请求)可向票据交换所发送一个管理对象,请求所需的预算和/ 或其它许可(处理框1164)。如上所述,这种请求可以采用一个或多 个管理对象的形式发送,例如,采用单个管理对象的形式,该管理对象 带有多个“事件”,这些事件分别对应于同一或不同VDE对象300的 多个所需预算和/或许可。票据交换所收到该请求以后可检查该最终用 户的信用、财务记录、商业协议和/或审核历史,以确定是否应给予所 请求的预算和/或许可。根据这些分析,票据交换所可能发送一个或多 个响应的管理对象,使最终用户电子设备600更新其安全数据库以作为 响应(处理框1166、1168)。该更新过程可包括(举例来说)将一个 过期的PERC 808替换成一个新的,修改某个PERC 808以便提供更多 的(或更少的)权利,等等。可以在相同或不同通信会话期间多次重复 步骤1164-1168,以便进一步修改最终用户的安全数据库610。

图36示意了如何将新记录或新元素插入到安全数据库610中。图 35所示的加载进程1070在准备写入每个数据元素或项的时候首先对之 进行检查,以确保这些数据元素没有被窜改、替代或替换。在如图35 所示的进程1070中,第一步是查看当前用户或电子设备600是否被授 权将该项插入到安全数据库610中(处理框1072)。在较佳实施例中, 这个检测可以包括将相应方法1000或其它数据结构如UDE 1200等装 入SPE 503(或者使用已经装入的上述方法或数据结构),然后SPE 503 判明用户是否得到了改动安全数据库610的授权(处理框1074)。如 果用户得到批准可以改动安全数据库610,那么SPE 503可以检查准备 添加到安全数据库中的元素的完整性,其方法是首先将该数据块解密 (处理框1076),然后确定该数据块受否已被毁坏或破坏(处理框 1078)。对该数据块检查的目的是要确保它是用预定的管理文件密钥 进行正确解密的,同时还要确认其校验值。另外,可以比较公开和私有 头ID标记(如果这些标记存在的话),以确保送来的是正确的元素而 没有经过替换,并且将唯一的元素标记ID与预定的元素标识相比较。 如果上述的任一检查出现失败,那么将自动拒绝该元素、对之进行纠错 处理、等等。假设SPE 503发现该元素具有完整性,那么它将(举例来 说)使用一个新密钥(参看下面针对图37的讨论)重新加密该信息(处 理框1080)。在同一步骤中,最好提供一个适当的标记,以便使该信 息经过加密后由一个带有适当标记的安全防护层中所保护(处理框 1082)。SPE 503可以保存上述适当标记信息,以便在将来再从安全 数据库610中读出上述项时对之进行确认或鉴别(处理框1084)。然 后,已经处于安全防护层中的安全元素便可以被存入安全数据库610 中。

图37示意了另一个进程1050。在较佳实施例中,该进程用来安全 地访问存放在安全数据库610中的项。在较佳实施例中,SPE 503首先 访问安全数据库610记录并从中读入项。SPE 503从安全数据库610 中读取加密形式的上述信息,然后将之“解包”(处理框1052),方 法是利用内部存放在SPU 500受保护的存贮器中的访问密钥将之进行 解密(处理框1053)。在较佳实施例中,上述“解包”过程1052涉及 将信息块送到加密/解密机522,同时还送去一个管理文件密钥和其它 解密所需的信息。解密机522可返回“明文”信息。然后SPE 503将检 查该明文信息,以确保该对象的安全性没有受到损害,并且该对象是所 需的正确对象(处理框1054)。然后SPE 503可检查所有的关联和访 问标记,以确保读入的元素没有被替换,并防备其它安全隐患(处理框 1054)。上述“检查”进程还有一部分要涉及将从安全数据库610获 取的标记与保存在SPU 500或受保护的存贮器中的标记进行对比检查 (处理框1056)。上述保存在SPU 500中的标记可以从SPU的安全存 贮器中访问(处理框1056),可以用这些标记进一步检查目前已解包 的对象。假设上述“检查”进程1054没有检查出任何异常现象(处理 框1052还表明上述对象没有遭到毁坏或破坏),SPE 503便可访问或 使用该项(处理框1058)。一旦使用完该项,如果对该项做过改动的 话,SPE 503可能需要将它存放回安全数据库610。如果对该项做过改 动,SPE 503将把该项按照它经过改动以后的格式送至加密/解密机 522以便进行加密(处理框1060),同时要向加密/解密机522提供某 些必要信息(例如同一或不同的管理文件密钥和数据)以便正确地加密 上述对象。在该阶段中,可以利用一个唯一的、新的标记和/或加密密 钥来唯一地标记和/或加密该项的安全防护层(处理框1062,同时参看 下面对图37所做的详细介绍)。SPE 503可在SPU 500的受保护存贮 器中保留上述密钥和/或标记的副本(处理框1064),以便将来再从安 全数据库610中读出上述项时,可以对之进行解密和确认。

在较佳实施例中,用来解密安全数据库610记录的密钥单独地存放 在SPU 500的受保护存贮器中。每个离开SPU 500的被更新索引和记 录都将被打上时间戳,然后利用SPE 503确定的某个唯一密钥进行加 密。举例来说,可以在安全数据库610记录的首部以明文方式放置一个 密钥标识码,以便SPE 503在下次检索该记录时能够确定采用哪一个密 钥。SPE 503可以在其内部的一个列表中维护记录或索引的站点标 识、与记录或索引相关的密钥标识码、以及实际密钥。在某些时刻,上 述内部列表可能被填满。此时,SPE 503可以调用一个维护例程,该例 程将安全数据库610中包含改动信息的项重新加密。该数据结构中包 含改动信息的某些或全部条目将可被读入,经过解密,然后再用同一密 钥加密。此后可将同一密钥标识码发布到这些项中,并将它们从SPE 503 中写回到安全数据库610。SPE 503于是可清除含有项ID和相应密钥 标识码的内部列表。然后它可以重新开始向每个新的或改动的项分配一 个不同的密钥和一个新的密钥标识码。通过上述进程,SPE 503能够保 护安全数据库610中的数据结构(包括索引),避免老的项被替换以及 当前项的索引被替换。该进程还使SPE 503能够对照预定标识的加密列 表对接收到的条目的ID进行确认。

图38中的流程图详细地示意了上述进程。每当一个安全数据库610 项被更新或修改,可以为该被更新项生成一个新的加密密钥,并使用新 加密密钥进行加密,这样可以增加安全性,同时防止不合理地使用安全 数据库610记录的后备拷贝。每个被更新安全数据库610记录的新密钥 可以存放在SPU 500的安全存贮器中,带有该密钥所适用的安全数据库 记录的一个标志。

对于SPE 503准备保存到安全数据库610中的每个新项,SPE 503 都要生成一个新的加密/解密密钥(处理框1086)。在将上述项存放到 安全数据库之前,SPE 503要首先用该新密钥对上述记录进行加密(处 理框1088)。SPE 503要确保保留上述密钥以便将来可以读入和解密 上述记录。在较佳实施例中,这些解密密钥存放在受保护的非易失性存 贮器(如NVRAM 534b)中。由于这种受保护存贮器容量较小,可能 没有足够空间来容纳一个新密钥。在较佳实施例中,上述情况由判定框 1090来检查。如果没有足够空间来容纳一个新密钥(或出现其它情况, 如存放在该存贮器中的密钥的个数超过了预定的数目,计时器到时,等 等),那么为解决该问题,较佳实施例将使用同一新密钥对安全数据库 610中的其它记录进行重新加密,以便减少(或改变)投入使用的加密 /解密密钥。于是,可能要从安全数据库610中读入一个或多个安全数 据库项,对它们进行解密,解密密钥用的是上次保存它们时对它们加密 所用的老密钥。在较佳实施例中,首先选出一个或多个“老密钥”,然 后将所有使用该老密钥加密的安全数据库项读入并解密。此时,便可以 将这些记录重新加密(处理框1094),使用的密钥是在处理框1086为 新记录生成的新密钥。现在,这些用来加密其它记录的老密钥可以从 SPU安全存储器中删除(处理框1096),而新密钥则可以替换其位置 上(处理框1097)。只有在SPE 503确认安全数据库610中使用上述 老密钥加密的所有记录已经被处理框1092读入并且由处理框1094使用 新密钥重新加密之后,处理框1096才能够从安全存贮器中删除上述老 密钥。现在,所有使用新密钥加密(或重新加密)的记录可以被保存到 安全数据库610中(处理框1098)。如果判定框1090发现SPU 500 的受保护存贮器中还有空间存放新密钥,那么处理框1092、1094、 1096的操作就不再需要,相反SPE 503只是简单地将新密钥保存到受 保护存贮器中(处理框1097),并且将新加密的记录存储到安全数据 库610中(处理框1098)。

通过将安全数据库610记录划分成一个个“区段”可以进一步提高 安全数据库610文件的安全性。可以使用不同的加密/解密密钥来保护 不同的“区段”。这种措施可以用来限制安全数据库610使用单个密钥 加密的信息的数量。另一种提高安全数据库610安全性的技术是用不同 的密钥加密相同记录的不同部分,这样,为解密这样的记录就必须使用 一个以上的密钥。

安全数据库610的备份

较佳实施例中的安全数据库610要周期地或按其它时间间隔进行 备份,以保护安全数据库保存的信息。对许多VDE参与者来说,安全 数据库中的信息可能具有重大价值。对安全数据库610的备份不能给用 户带来太大的不便,也不能破坏任何安全性。

可以在多种时刻检查是否需要对安全数据库610进行备份,例如: 在电子设备600加电时、初始启动SPE 503时、在周期性的时间间隔、 以及由SPE 503维护的“审核累计”值或其它概要服务信息超过了用户 设置的或其它的阈值时。上述检查也可由某些准则所触发,这些准则可 以由一个或多个信息内容发布者和/或分发者和/或票据交换所服务提供 者和/或用户来创建。可以在适当时刻提示用户做备份,例如当用户没 有做备份时,或者在某个特定时间,或者经过一定时间,或者超过一定 的使用量之后。也可以自动进行备份而无需用户的干预。

参看图8,可以用备份存贮设备668和存贮介质670(如磁带)来 存放备份信息。当然,任何非易失性的介质(如一个或多个软磁盘、 可写光盘、硬盘等等)也都可用来做备份存贮设备668。

至少有两种备份安全数据库610的方案。第一种方案是“特定于站 点的”,它使用SPU 500的安全性来支持备份信息的恢复。这种方法适 用于安全数据库610由于某些原因受到破坏的情况,这些可能的原因 有:二级存贮设备652故障,用户不留心对文件造成的破坏,或者其它 可能对某些或全部安全数据库610造成破坏或毁坏的情况。上述第一种 方案,即特定于站点的备份方案基于了这样一种假设,即:SPU 500 还能够正确运行,并可用来恢复备份信息。

第二种备份方案假设用户的SPU 500不能继续工作并且需要替换 或已经被替换。这种方案使一个经授权的VDE管理员或其他经授权的 VDE参与者能够访问所存储的备份信息,以防关键数据丢失,以及/或 者帮助用户从错误中恢复。

在图39所示的例子中,上述两种方案均由ROS 602执行的一些程 序控制步骤所支持。图39示意了一个备份例程1250,该备份例程1250 由电子设备600执行以便将安全数据库610(以及其它信息)备份到备 份存贮设备668中。如前所述,一旦备份过程开始,备份例程1250将 产生一个或多个备份密钥(处理框1252)。之后备份例程1250读入所有 的安全数据库项,将它们进行解密(处理框1254),此时使用的解密 密钥是向安全数据库610存放这些项之前对之加密所用的原始密钥。由 于对于安全数据库610实例中的上述信息来说SPU 500通常是存放用来 解密该信息的密钥的唯一站的地方,同时也由于备份例程1250所提供 的第一种方案是假设SPU 500已经完全失效或毁坏,备份例程1250因 而执行上述读取和解密步骤1254,其目的是使以后从备份做恢复时不 需要知道SPU中的那些密钥。相反,备份例程1250用新生成的一个备 份密钥将每个安全数据库610项进行加密(处理框1256),并将加密 后的项写入备份存贮设备668(处理框1258)。上述进程将重复进行, 直到安全数据库610中的所有项都被读入、解密、用一个新生成的备份 密钥进行加密、然后写回备份存贮设备668为止(由判定框1260对该 条件进行检查)。

较佳实施例还通过SPE概要服务管理器560从SPU 500的受保护 存贮器中读出概要服务审核信息,并使用一个新生成的备份密钥对该信 息进行加密,然后将该统计服务信息写入备份存贮设备668中(处理 框1262)。

最后,备份例程1250把处理框1252产生的并由处理框1256、1262 用来加密的备份密钥保存在备份存储器668上。为此,它采用两种安全 方法以便支持上述两种恢复方案。备份例程1250可以用另一个或另一 些密钥对上述备份密钥(以及其它某些信息,如备份的时间或者可以标 识本次备份的其它适当信息)进行加密,这样只有SPU 500才能解密(处 理框1264)。然后这些经过加密的信息被写入备份存贮设备668(处 理框1264)。举例来说,该步骤可以包含多次加密过程,并使用一个 或多个公开密钥,这些公开密钥的对应私有密钥只有SPU 500知道。作 为另一种选择,可以不用公开密钥而是使用第二个备份密钥来做最后这 次加密,这个第二备份密钥由SPU 500产生而且只保存在该SPU中。 处理框1264最好进行多次加密以便使备份的安全性更加稳固,这样, 通过破解用来保护备份密钥的加密过程以期突破上述备份的安全保护 就变得更加困难了。虽然处理框1262将加密后的概要服务信息保存到 了备份中,但是最好不要将在备份中保存SPU设备私有密钥、共享密 钥、SPU代码、以及其它内部安全性信息,以防这些信息即使在加密 的格式下也被用户获知。

处理框1264保存的信息足以使执行(或至少部分执行)备份例程 1250的同一SPU 500能够恢复经过备份的信息。但是,这些信息只有 对上述同一SPU有用,而对除此之外的其它设备来说是毫无价值的, 这是因为只有上述的SPU才知道用来保护备份密钥的特定密钥。为了 复盖其他可能的情况,其中上述SPU 500无法进行恢复工作,考虑到这 些情况,备份例程1250提供了附加的步骤(处理框1266),该步骤利 用另外的一个或多个密钥来保护对备份密钥的保存,这些密钥可以被一 个经授权的VDE管理员所读取。例如,处理框1266可以使用一个“下 载授权密钥”对备份密钥进行加密,而该“下载授权密钥”则是在SPU 500初始化的时候从一个VDE管理员那里接收到的。被加密的备份密 钥同样被写入备份存贮设备668中(处理框1266)。该方法可以用来 在SPU 500失效的时候恢复备份文件。更加特别的是,对于某个VDE 管理员来说,如果他知道由处理框1266使用的下载授权密钥(或其它 密钥),那么他就可以恢复备份存贮设备668中的备份密钥,从而可以 继续将经过备份的安全数据库610恢复到同一或不同的电子设备600 中。

在较佳实施例中,只有从一个经过授权的VDE管理员那里得到备 份授权之后,由备份例程1250保存在备份文件中的信息才能够被恢 复。在大多数情况下,恢复过程只是简单地将安全数据库610进行恢 复,同时对备份发生以后的任何使用进行记录。为了反映出上次备份以 后的活动,该过程可要求用户与另外的提供者联系,以便向之传送审核 和计帐数据,并且接收新的预算。为确定最近的使用行为,可把在SPU 500中维护的当前概要服务信息与保存在备份中的概要服务信息做比 较。

在SPU 500失效的情况下,必须与一个授权的VDE管理员联系以 便初始化更换SPU 500,同时解密备份文件。这些进程考虑到了SPU 失效的处理以及向新SPU的升级。在恢复时,备份文件用来将必须的 信息恢复到用户的系统中。在升级时,备份文件可以用来确认升级进 程。

在某些情况下,备份文件可以用来在电子设备600之间传递管理 信息。但是,较佳实施例可禁止在具有适当授权的电子设备之间传输某 些或者全部信息。可以将某些或者全部备份文件封装进管理对象中再进 行传送,以供分析、传输等之用。

现在举一个更为详细的例子来说明需要恢复备份文件的一种情 况。假设电子设备600出现硬盘故障或者其它事故从而导致部分或全部 安全数据库610被抹掉或毁坏,不过假设SPU 500还能运行。SPU 500 可含有恢复安全数据库610所需的全部信息(如密钥等)。但是,ROS 602可禁止对安全数据库进行恢复,直到它从某个VDE管理员那里收 到恢复授权为止。恢复授权信息可包含(举例来说)必须与SPE 503 预期的值相匹配的一个“秘密数值”。如果需要的话,VDE管理员可 能只有在收到SPU 500中的概要服务信息之后才提供上述恢复授权信 息,其中,概要服务信息是放在供分析的管理对象中传输给该管理员 的。在某些情况下,VDE管理员可要求将备份文件的(部分或完整) 副本放在管理对象中传递过来。以检查是否用户有欺诈行为的迹象。一 旦得到授权之后,恢复进程可能需要对恢复的预算记录等进行调整,以 便反映出上次备份之后的行为,这一点前面已经讲过。

图40示意了一个由程序控制的“恢复”例程1268,该恢复例程 1268由电子设备600执行以便根据图38例程提供的备份来恢复安全数 据库610。该恢复过程使用的场合可以是(举例来说):电子设备600 已经失效,但是与一个VDE管理员联系以后可以恢复或“重新初始化” 该电子设备600时。由于较佳实施例不允许SPU 500在没有得到VDE 管理员授权的情况下就从备份中进行恢复,所以例程1268首先与一个 VDE管理员建立安全的通信,而该VDE管理员能够对恢复过程进行授 权(处理框1270)。一旦SPU 500与VDE管理员互相鉴别对方之后 (处理框1270的一部分),该VDE管理员可从SPU 500内部的非易 失性存贮器中提取“正在进行的工作”和概要值(处理框1272)。VDE 管理员可用这些提取出的信息来帮助确定(举例来说)是否出现了侵犯 安全性的问题。VDE管理员还允许出现故障的SPU 500将其内容有效 地“转储”给VDE管理员,从而使VDE管理员可以处理这些内容。 SPU 500可将这些信息加密、包装到一个或多个管理对象中,然后再传 递给VDE管理员。然后VDE管理员可要求SPU 500提供部分或全部 当前安全数据库610的一份拷贝(处理框1274)。举例来说,该信息 可由SPU 500包装到一个或多个管理对象中,然后再发送给VDE管 理员。收到该信息后,VDE管理员可以从备份卷中(即由图38处理框 1262所保存的信息)读出概要服务审核信息以确定在备份的时候所保 存的概要值和其它信息。通过察看由图38处理框1264所保存的信息, VDE管理员还可以确定备份时的时间和日期。

此时VDE管理员可以根据从处理框1272以及备份中获得的信息恢 复SPU 500中的概要值和其它信息(处理框1276)。例如,VDE管 理员可能重新设置SPU内部概要值和计数器,使它们与上次备份的时 候一致。VDE管理员可根据由处理框1272恢复的“正在进行的工作”、 用上次备份以后经过的时间等对这些数值进行调整。其目的通常是尽量 将SPU内部的值调整到如果未发生故障时它们现在应该具有的值。

然后VDE管理员可授权SPU 500从备份文件中恢复安全数据库 610(处理框1278)。该恢复进程将用备份中的记录替换安全数据库 610的所有记录。在恢复进程中或恢复进程之后,根据需要VDE管理 员可通过向SPU 500发送命令来调整这些记录。

然后VDE管理员可根据恢复的数值来计算帐单(处理框1280), 并执行其它操作以便从SPU故障时间中恢复(处理框1282)。其目的 通常是计算用户的帐务并调整与失效电子设备600有关的其它VDE 100值,这些值是上次备份之后到这次故障之前这段时间内所发生的使 用。上述进程可包括下面的步骤:VDE管理员从其它VDE参与者那 里得到在上述电子设备故障之前有关该电子设备使用的报告和其它信 息,并将这些报告或信息与安全数据库备份相对比,以确定哪些使用或 事件还没有经过记录。

在一个可选的实施例中,SPU 500可带有充足的非易失性内部存 贮器,从而可以存贮部分或全部安全数据库610。在该实施例中,这种 附加的存贮器可以是一个或多个集成电路,这些集成电路置于在一个安 全封装中,例如一个防破坏金属盒或者某种可以容纳多个集成电路部件 的芯片封装,这些封装可以阻止和/或揭露破坏企图,并且/或者可以在 受到破坏的时候,使部分或整个SPU 500或相关关键密钥和/或其它控 制信息处于失效状态。此时可以使用图38所示的同一备份例程1250 把这类信息做备份,唯一的区别是处理框1254可从SPU内部存贮器中 读取安全数据库条目,并且在用备份密钥将它们加密之前不再需要将它 们解密。

事件驱动的VDE进程

如前所述,由较佳实施例权利操作系统(ROS)602提供或在其 管理之下的进程可以是“事件驱动”的。这种“事件驱动”功能方便了 集成性和可扩展性。

“事件”是在某一时刻发生的某件事。事件的某些例子包括:用户 在键盘上敲了某个键、消息或对象300的到来、计时器的到期、以及其 它进程发来的请求。

在较佳实施例中,ROS 602为响应一个“事件”要执行一个进程。 为响应一个“事件”,ROS 602将动态地创建活跃进程和任务。例如, ROS 602为响应一个事件可创建并执行一个或多个部件组690,以便执 行一个或多个进程。一旦ROS 602对事件的响应结束,上述活跃进程 和任务可能就终止。这种为响应事件而动态创建(和终止)任务的能 力提供了很大的灵活性,它同时还允许使用有限的执行资源(如SPU 500所提供的那种执行资源)在不同的上下文中执行实际无限多的不同 进程。

由于“事件”可以是任何类型的所发生情况,所以不同的事件就是 无限多样的。因而,将事件分成不同类型必然是一种概括。基于这个出 发点,就可将较佳实施例所提供/支持的事件分成下面两大类:

●用户引发的事件

●系统引发的事件

通常,“用户引发”的事件是归因于一个用户(或一个用户应用) 的所发生情况。一个常见的“用户引发”事件是用户发出的、访问一个 对象300或其它VDE保护信息的请求(如通过按下键盘上的键或透明 地使用重定向器684发出这些请求)。

“系统引发”的事件通常不归因于一个用户。系统引发事件的例子 包括:计时器到时—这表示需要将某些信息写回非易失性存贮器中;从 其它电子设备600那里收到一条消息;以及由其它进程(该进程可以是 为了响应一个系统引发的事件和/或一个用户引发的事件而被启动的) 产生的一个服务调用。

为响应一个事件,由较佳实施例提供的ROS 602通过指定进程并 执行该进程以便处理该事件。在较佳实施例中,这些进程是基于方法 1000的。由于事件的类型无限多样,较佳实施例于是支持无限多样的 进程来处理事件。较佳实施例利用可独立交付的模块如方法核心 1000’、加载模块1100、以及UDE 1200之类的数据结构来动态地创建 部件组690,从而支持了上述灵活性。尽管要划分较佳实施例支持/提 供的无限多样的进程,必然要采用概括的方式,这些进程仍然可被划分 为下面两种类型:

●与使用VDE保护信息有关的进程

●与VDE管理有关的进程

“使用”和“管理”进程

“使用”进程总是以种种形式与使用VDE保护信息有关。由较佳 实施例提供的方法1000可以产生适当进程以创建和维护一条控制链, 用该控制链来控制对VDE保护信息的使用。举一个“使用”进程的具 体例子,通过执行某个“使用”进程可以允许某个用户打开一个VDE 对象300并访问其内容。方法1000可以提供功能更为细化的、有关使 用的进程,例如:(如果允许的话)向提出请求的用户发布信息内容, 更新计量、预算、审核跟踪,等等。有关使用的进程通常由用户来启动, 但是某些使用进程可能是由系统启动的。如果一个事件触发了一个与使 用相关的VDE进程,那么该事件可称为“使用事件”。

一个“管理”进程对维护VDE 100正常工作提供帮助。它提供的 处理可以有助于支持交易管理基础结构,该结构可以维护VDE 100安 全有效地运行。管理进程可(举例来说)提供在某些方面与创建、修改 和/或销毁VDE保护数据结构等操作有关的处理,上述操作可以建立和 维护VDE的处理和控制链。例如,“管理”进程可以保存、更新、或 销毁存放在VDE电子设备600安全数据库610中的信息。管理进程还 可以提供通信服务,这些通信服务在不同的VDE电子设备600之间建 立、维护以及支持安全的通信。触发了管理进程的事件可称为“管理事 件”。

交互方法

某些VDE进程是成对出现的,这取决于它们一起交互作用的方 式。一个VDE进程可以向另一个VDE进程“请求”处理服务。该请 求处理服务的进程可以称为“请求进程”。由于该“请求”触发了进程 对中另一个进程的处理,所以该“请求”形成了一个“事件”。响应该 “请求事件”的VDE进程可以称为“响应进程”。“请求进程”和“响 应进程”可称为“交互进程”。

“请求事件”可包含(举例来说)VDE节点电子设备600或某个 进程为获取某些信息而发出的一条消息。对应的“响应进程”可(举例 来说)通过发出在该消息中所请求的信息,作为对上述“请求事件”的 响应。如果该响应触发了另一个VDE“响应进程”,那么该响应本身 可以形成一个“请求事件”。例如,收到一条为响应早先产生的请求的 消息可以触发一个“应答进程”。该“应答进程”是一种特殊类型的“响 应进程”,对其的触发是为了响应来自另一“响应进程”的“应答”。 在一个给定的VDE交易中,可以有任意数量的“请求”和“响应”进 程对。

“请求进程”及其配对的“响应进程”可以在同一VDE电子设备 600中执行,也可以分别在不同的VDE电子设备中执行。两个配对进 程之间的通信可以是安全(VDE保护的)通信、“通道外”通信、或 两者的组合。

图41a-41d是一些例子,它们示意了使用“交互方法”如何启动处 理和控制链。处理和控制链的创建部分地利用了一个或多个“交互事 件”对,这些“交互事件”对以请求-响应的方式相互协作。在较佳实 施例中,可以在一个或多个“交互方法”中管理交互事件对。如上所述, 一个“交互方法”是一个方法1000,该方法可以响应一个或多个“交 互事件”。交互方法包含协作进程的两个组成部分,该进程可以在物理 上和/或时间上相距较远的VDE节点中安全地运行。交互进程可以带有 灵活定义的信息传送协议和信息内容结构。交互方法实际上可以基于运 行于同一或不同VDE节点600上的同一或不同方法核心1000’。图41a 所示的VDE节点600A和600B可以是同一个物理电子设备600,也可 以是不同的电子设备。

图41a示意了一对交互事件的操作。在VDE节点600A中,方法 1000a正在处理一个事件,该事件带有一个需要在VDE节点600B中处 理的请求。响应该“请求”的方法1000a(例如,该方法基于某个部件 组690,该部件组690包含相关的加载模块1100和数据)在图41a中 标记为1450。进程1450创建了一个请求(1452)以及(可选地)某 些信息或数据,该请求以及上述信息或数据将被发送到另外的VDE节 点600B,以供与该交互事件相关的某个进程处理。可以采用本公开任 何地方所说明的任意传送机制来传送上述请求或其它信息。

VDE节点600B收到的请求包括在该节点的一个响应事件。一旦收 到该请求,VDE节点600B将执行由同一或不同方法1000b定义的“交 互”进程1454,作为对该响应事件的响应。交互进程1454可以基于部 件组690(如,一个或多个加载模块1100、数据,并且作为可选项, 还可以包括VDE节点600B中的其它方法)。

图41b对图41a中的概念进行了扩展。图41b还包含从VDE节点 600B发回VDE节点600A的一个响应。前面已经结合图41a讨论过, 这一进程开始于VDE节点600B中响应进程1454收到上述请求事件和 信息1452并对之进行处理。作为其处理的一部分,响应进程1454可 与另一个请求进程(1468)相互协作,向起始VDE节点600A送回一 个响应1469。由方法1000A产生的对应交互进程1470可响应该请求 事件1469并对之进行处理。采用这种方式,两个或更多的VDE节点 600A、600B可以相互协作,并在执行于这些节点之中的方法1000A、 1000B之间传递可配置信息和请求。上述第一个和第二个请求-响应序 列[(1450,1452,1454)和(1468,1469,1490)]可以由时间和空间距离所分 离。为了提高效率,请求(1468)和响应(1454)进程可以基于同一 方法1000,或它们也可以作为同一或不同方法核心1000’的两种方法来 实现。可以用“事件代码”作为方法1000的参数,这样,方法1000就 可以针对不同事件采取不同的行动/产生不同的结果,对于不同的事件 也可以提供不同的方法。

图41c将图41a-41b所描述的控制机制扩展到三个节点(600A, 600B,600C)。每个请求-响应对都按照图41b中描述的方式进行操作, 其中,某些请求-响应对链在了一起从而在若干VDE节点600A,600B, 600C之间形成了一条处理和控制链。使用这种机制可以将处理和控制 链延长,使之包含任意数目的VDE节点,而这些VDE节点可以采用任 何配置形式。例如,VDE节点600C可直接与VDE节点600A和VDE 节点600B通信,而VDE节点600B可与VDE节点600A进行通信。作 为另一种选择,VDE节点600C可直接与VDE节点600B通信,VDE 节点600A可以与VDE节点600B通信,而VDE节点600B可以与VDE 节点600C通信。

可以用事件的集合对方法1000进行参数化,这些事件则指定了相 关的或相互协作的功能。可以根据功能(如使用、分发)对事件进行逻 辑分组,也可以根据交互事件的集合进行分组,这些交互事件指定了可 以彼此相互协作的进程。图41d示意了“交互事件”的一个集合,这些 交互事件支持在信息内容分布模型下,若干VDE节点102、106、112 之间的协作处理,从而支持预算的分发。在本例中,通过使用由 BUDGET(预算)方法中指定的“交互事件”集合来形成处理和控制 链。图41d示意了示例BUDGET方法中的交互事件如何相互协作,以 建立若干VDE节点之间的处理和控制链。该示例BUDGET方法1510 为响应“使用”事件1478执行“使用”进程1476,该进程规定了对 处理进行预算的机制。BUDGET方法1510可(举例来说)指定一个 使用进程1476,该进程将一个计量计数与一个预算值进行比较,当 计量的计数超过了预算值时,该进程将停止操作下去。该进程还产生一 个审核跟踪记录,用来描述所述BUDGET的判定结果。为响应一个“分 发”事件,BUDGET方法1510可以执行一个分发进程1472,该进程 规定了进一步分配预算的处理和/或控制信息。为响应一个“请求”事 件,该方法可以执行一个请求进程1480,该进程规定了用户可如何向 分发者请求使用权和/或分发权。为响应一个“响应”事件,该方法可 以执行一个“响应”进程1484,该进程规定了分发者将响应其它用户 请求的方式,而对于这些用户,分发者已经把他们的某些(或全部)预 算分发给了他们。为响应一个“应答”事件1474,上述方法可以执行 一个应答进程1475,该进程规定了用户应该如何响应一个再批准或否 决(更多)预算的消息。

在较佳实施例中,对事件处理、交互事件、以及它们的相关方法和 方法部件的控制是由PERC 808提供的。这些PERC 808可引用对特定 数据结构型的创建、修改和分发进行控制的管理方法,以及引用允许对 上述项进行访问、修改、以及进一步分发。采用这种方式,在处理和控 制链中的每一个链接(举例来说)都可以按照该分发链中前一个成员 规定的方式定制审核信息、改变使用信息内容的预算需求、以及/或者 对进一步分发这些权利进行控制。

在图41d中的例子中,VDE分发节点(106)中的分发者可向另 一节点(102)中的信息内容制作者发出预算请求。可以通过安全的 VDE通信来发出该请求,或者也可以通过“通道外”通信(如通过电 话或信件)对之进行传送。制作者102可决定给予分发者预算,并处理 一个分发事件(VDE节点102 BUDGET方法1510中的1452)。在 BUDGET方法中对该分发事件进行处理后,在VDE节点102和106之 间将产生一次安全通信(1454),该通信将把给予分发者106使用权 和分发权的预算从制作者102传送到分发者。为响应对预算信息的接 收,分发者的VDE节点106可利用BUDGET方法1510的应答进程 1475B来处理该通信。该应答事件处理1475B可(举例来说)在分发者 的VDE节点106中安装一个预算和PERC 808,以允许分发者访问某 些信息内容和进程,而对这些信息内容和进程的访问至少部分地由上述 预算和/或PERC 808进行控制。在某些时刻,分发者106可希望使用 那些他已经得到访问权的信息内容。

在对信息内容对象的使用进行注册之后,用户112可需要使用一组 “使用”进程1476C来(举例来说)打开、读、写、和/或关闭上述信 息内容对象,这些操作是上述使用进程的一部分。

一旦分发者106已经消耗了他的某些或全部预算,他可能希望得到 更多的预算。该分发者106于是可使用BUDGET方法请求进程 (1480B)来启动一个过程。请求进程1480B可以与VDE节点102建 立一次通信(1082AB),通过该通信,请求进程1480B请求得到更多 的预算,同时还可提供到现在为止的使用行为详细记录(如审核跟踪)。 信息内容制作者102利用其BUDGET方法1510A中的响应进程 (1484A)对上述“获取更多预算”请求事件1482AB作出处理。响应 进程1484A可能(举例来说)要确定上述使用信息是否表明对信息内 容的使用是恰当的,以及/或者分发者是否具有足够的信用以得到更多 的预算。BUDGET方法响应进程1484A还可启动一次财务交易从分发 者那里传送资金过来,以便偿付上述的使用;或者利用分发进程1472A 将预算分发给分发者106。此时,作为对请求通信1482AB的响应, 可能立即向分发者106发送一个用以给予更多预算(或否决更多预算) 的响应,或者可能在以后作为另一次通信的一部分将该响应发送出去。 一旦分发者的VDE节点106收到了上述的响应通信,将可以利用其 BUDGET方法1510B拷贝中的应答进程1475B对该响应作出处理。应 答进程1475B可采用与前面所述方式相同的方式处理这些附加的预 算。

除了传送预算信息之外,处理和控制链还传递某些控制信息,这些 控制信息可以控制所述预算的使用方式。例如,上述例子提到的控制信 息还可说明某些进程和限制的控制信息,这些进程和限制适用于分发者 如何分发对制作者的信息内容对象的使用权。所以,当分发者使用利用 其BUDGET方法1510B拷贝中的分发进程1472B对用户发来的一个预 算请求(该请求是VDE节点112中的用户与VDE节点106中的分发者 之间的一次通信,其过程在原理上类似于前面所述的VDE节点106和 102之间的通信)进行响应的时候,将可能会产生与上面所述相类似的 分发及请求/响应/应答进程。

因而,在本例中,单个方法可以根据不同的“触发”事件产生多种 动态的行为。例如,单个BUDGET方法1510可支持下列的任意或全部 事件: 事件类型 事件 进程说明 “使用”事件 使用预算 使用预算 由用户节点请求 进程1480c处理 的请求事件 请求更多预算 为预算请求更多的资金 请求1号审核员进行审核 请求1号审核员对预算使用情况进 行审核 请求删除预算 请求将预算从系统中删除 请求更新方法 更新用来审核的方法 请求更换审核员 将1号审核员更换为2号审核员, 或相反 请求另一种审核间隔 改变两次审核之间的时间间隔 请求得到提供预算拷贝 的能力 请求得到提供预算拷贝的能力 请求分配预算的能力 请求得到向其它用户分配预算的能力 请求得到帐户状态 请求得到有关某个帐户当前状态 的信息 请求得到新方法 请求得到新方法 请求更新方法 请求更新方法 请求删除方法 请求删除方法 由用户节点请求 进程1480C处理 的响应事件 收到更多预算 为预算分配更多资金 收到方法更新 更新方法 收到审核员更换 将审核员从一个更换为另一个 收到改变审核间隔 改变审核间隔 收到删除预算 删除预算 向1号审核员提供审核信息 将审核信息传送给1号审核员 向2号审核员提供审核信息 将审核信息传送给2号审核员 收到帐户状态 提供帐户状态 接收新预算 接收新预算 接收方法更新 接收更新了的信息 接收更多预算资金 接收更多预算资金 发送审核信息 发送审核信息 执行删除 删除信息 “分发”事件 创建新预算 创建新预算 提供更多预算 提供更多预算资金 审核 执行审核 删除 删除信息 协调 协调预算和审核 拷贝 拷贝预算 分发 分发预算 修改方法 修改方法 显示方法 显示所需方法 由分发者节点 请求进程1484B 所处理的“请 求”事件 删除 删除信息 获取新预算 获取新预算 获取更多预算资金 获取更多预算资金 获取更新了的信息 获取更新了的信息 获取审核信息 获取审核信息 由分发者节点 请求进程1484B 所处理的“响 应”事件 向用户提供新预算 向用户提供新预算 向用户提供更多预算 向用户提供更多预算 向用户提供更新了的预算 向用户提供更新了的预算 对用户进行审核 对指定用户进行审核 删除用户的方法 删除属于用户的方法

交互方法进程的举例

A.预算

图42a,42b,43c和42d中的流程图分别示意了由BUDGET方法 2250执行的进程控制步骤,此处的BUDGET方法2250是较佳实施例 提供的一个有代表性BUDGET方法。在较佳实施例中,BUDGET方 法2250可以操作于下列4种不同模式下:

     使用(参看图42a)

     管理请求(参看图42b)

     管理响应(参看图42c)

     管理应答(参看图42d)

通常,启动BUDGET方法2250的“使用”模式是为了响应一个 有关对象或对象的信息内容使用的事件。BUDGET方法2250的“管理 请求”模式是由用户启动的,或是以用户的名义启动的,它用来响应需 要与VDE财务提供者联系的用户动作,通常,这种模式的任务是向该 VDE财务提供者发送一个管理请求。BUDGET方法2250的“管理响 应”模式是在VDE财务提供者处执行的,它通过启动BUDGET方法 2250的“管理请求”处调用来响应由VDE节点发送到VDE财务提供 者的管理请求,BUDGET方法2250的“管理响应”调用导致把一个 管理对象从VDE财务提供者传送给VDE用户节点。图42d中BUDGET 方法2250的“管理应答”调用是在用户VDE节点处执行的,一旦收到 由图42c方法的“管理响应”调用所发出的管理对象后,就执行该调用。

在较佳实施例中,同一个BUDGET方法2250可以执行图42a-42d 所示的4种不同步骤序列。在较佳实施例中,可以向BUDGET方法2250 传递不同的事件代码以便调用上述不同的模式。当然,也有可能使用4 种不同的BUDGET方法来代替单个的BUDGET方法,而这4种方法 具有四种不同的“动态个性特征”,但是通过使用同一种方法来进行4 种类型的调用,较佳实施例可以获得某些好处。

参看图42a,BUDGET方法2250的“使用”调用,首先准备好一 个预算审核跟踪(处理框2252,2254)。然后它获取预算UDE的DTD, 该DTD用来获取和读取预算UDE(处理框2256-2262)。在上述“使 用”调用中,BUDGET方法2250接着判断预算审核日期是否已经到 期,如果是的话(判定框2264的“是”出口;处理框2266、2268), 它将终止处理。只要预算审核日期还未到期,上述方法将使用原子元素 和事件计数(可能还包括其它信息)来更新预算(处理框2270,2272), 并且在终止(位于终止点2278)之前将预算用户审核记录存放在预算 审核跟踪UDE中(处理框2274,2276)。

参看图42b,前6步(处理框2280-2290)可以由用户VDE节点 执行,以便响应某些用户操作(如请求访问新信息、请求得到新预算 等)。BUDGET方法2250的“管理请求”调用可首先准备好一个审核 跟踪(处理框2280,2282)。然后,该方法将把一个对相应预算进行 管理处理的请求放入一个请求队列(处理框2284,2286)。最后,该 方法保存相应审核跟踪信息(处理框2288,2290)。过了一段时间以 后,用户的VDE节点可准备好一个通信审核跟踪(处理框2292, 2294),然后可将预算管理请求写入某个管理对象中(处理框2296)。 如果需要的话该步骤将访问安全数据库,并从诸如预算UDE、预算审 核跟踪UDE以及管理请求记录之类的信息源中获取必要的信息(处理 框2298)。

然后处理框2296可将上述管理对象传送到某个VDE财务提供者, 作为另外一种选择,处理框2296也可以将该管理对象传递给某个独立 的通信进程或方法,这些通信进程或方法可以安排上述通信。如果需要 的话,方法2250可在终止(位于终止点2304)之前保存一个通信审核 跟踪(处理框2300,2302)。

图42c中的流程图示意了由较佳实施例提供的示例BUDGET方法 2250所执行的一系列示例进程控制步骤,该方法执行于“管理响应” 模式下。某个VDE财务提供者在收到一个含有预算管理请求的管理对 象时,将(举例来说)执行图42c所示的步骤,该对象是在图42b(处 理框2296)中产生(并被发送给某个VDE管理员)的。

一旦收到上述管理对象,VDE财务提供者处的BUDGET方法 2250可准备好一个预算通信和响应的审核跟踪(处理框2306,2308), 然后解开该管理对象,并检索其中所含的预算请求、审核跟踪和记录(处 理框2310)。从该管理对象中获取的信息可由该VDE财务提供者写 入其安全数据库中(处理框2312)。然后VDE财务提供者可检索上述 预算请求,并确定适当的响应方法以便处理该请求(处理框2314, 2316)。BUDGET方法2250可将包含在该请求记录中的事件发送给 适当的响应方法,并根据RESPONSE(响应)方法产生响应记录和响 应请求(处理框2318)。处理框2318中的处理可执行相应操作来满足 上述预算请求,即将相应的新响应记录写入VDE财务提供者的安全数 据库中(处理框2320)。之后,BUDGET方法2250将上述预算管理 响应记录写入一个管理对象中(处理框2322,2324),该对象接着被 传送回发出预算请求的用户节点。BUDGET方法2250在终止之前(终 止于终止点2330)可把通信和响应处理审核跟踪信息存入相应的审核 跟踪UDE中(处理框2326,2328)。

图42d中的流程图示意了由有代表性的示例BUDGET方法2250 所执行的一系列示例程序控制步骤,该方法执行于“管理应答”模式下。 某个VDE用户节点在收到一个含有预算相关信息的管理对象时,可能 (举例来说)执行图42d所示的步骤。BUDGET方法2250可首先准 备好一个预算管理及通信审核跟踪(处理框2332,2334)。然后, BUDGET方法2250可从收到的管理对象中提取记录和请求,并将应答 记录写入VDE安全数据库中(处理框2336,2338)。然后该VDE 用户节点可将预算管理及通信审核跟踪信息存入相应的审核跟踪UDE 中(处理框2340,2341)。

过了一段时间以后,该VDE用户节点可从安全数据库中检索上述 应答记录,并确定应该使用哪个方法来对之进行处理(处理框2344, 2346)。作为一个可选步骤,该VDE用户节点可准备好一个审核跟踪 记录(处理框2342,2343)以便记录应答事件的处理结果。之后, BUDGET方法2250可向REPLY(应答)方法发送包含在应答记录中 的事件,并且根据需要生成/更新安全数据库记录,例如插入新的预算 记录、删除旧的预算记录、以及/或者对预算记录做修改(处理框2348, 2350),在写审核跟踪记录(如果需要的话)(处理框2354m 2355) 终止之前(终止于终止点2356),BUDGET方法2250可从安全数据 库中删除上述应答记录(处理框2352,2353)。

B.注册

图43a-43d中的流程图示意了由REGISTER(注册)方法2400执 行的程序控制步骤,此处的REGISTER方法2400是较佳实施例提供的 一个有代表性REGISTER方法。在本例中,  REGISTER方法2400在 执行图43a所示的示例步骤时是操作于“使用”模式;在执行图43b所 示的示例步骤时是操作于“管理请求”模式;在执行图43c所示的示例 步骤时是操作于“管理响应”模式;在执行图43d所示的示例步骤时是 操作于“管理应答”模式。

图43a所示的步骤(举例来说)可以在一个用户VDE节点中执行, 它用来响应用户产生的某些操作或以用户名义用户而发生的某些操 作。例如,用户可请求访问某个对象,而对象尚未(或目前没有)正确 地向她注册。为响应这种用户请求,REGISTER方法2400可首先准备 好一个注册审核跟踪UDE(处理框2402,2404),然后判断所请求 的对象是否已经注册过了(判定框2406)。如果该对象已经注册过了 (判定框2406的“是”出口),那么REGISTER方法将终止执行(终 止于终止点2408)。如果该对象尚未注册(判定框2406的“否”出口), 那么REGISTER方法2400可访问该VDE节点安全数据库PERC 808 和/或注册MDE(处理框2410)。然后,REGISTER方法2400可从 上述PERC 808和/或注册MDE中提取出相应的注册记录集合(处理框 2412),并确定注册对象所需的所有元素是否都齐全(判定框2414)。 如果缺少某些元素(判定框2414的“否”出口),REGISTER方法 2400可能将一个注册请求记录放入通信管理器的队列中,然后挂起该 REGISTER方法,直到队列中的请求得到满足为止(处理框2416、 2418)。(举例来说)处理框2416可将一个注册请求发送给某个VDE 分发者。当该请求被满足以后,并且收到了一个注册请求记录(处理框 2420),那么判定框2414的测试得到满足(判定框2414的“是”出 口),于是REGISTER方法2400将继续进行处理。在该阶段, REGISTER方法2400可允许用户从一系列备选方法中选择注册选项, 这些备选方法为处理框2410中访问的PERC 808所允许。举一个简单 例子,PERC 808可允许用户用VISA或MasterCard付帐,但不允许 用American Express付帐。处理框2422可显示一个提示,要求用户从 VISA付帐方式和MasterCard付帐方式中选择(处理框2424)。 REGISTER方法2400最好对用户选择的注册选项进行确认,如果用户 的选择无效的话,应该要求用户选择另外的选项(处理框2426,判定 框2428的“否”出口)。一旦用户完成了所有必要的注册选项选择并 且这些选择已经被确认(判定框2428的“是”出口),REGISTER方 法2400将产生一个对应于上述对象和用户的用户注册表(URT),该 用户注册表反映了该用户所做的注册选择,以及PERC 808和/或注册 MDE要求的其它注册信息(处理框2430、2432)。REGISTER方法 2400在终止之前(终止于终止点2436)可将注册审核记录写入安全数 据库中(处理框2432,2434)。

图43b示意了REGISTER方法2400的“管理请求”模式示例。管 理请求模式可以发生在VDE用户系统中,它产生一个相应的管理对 象,以便将该对象传送到请求得到注册信息的某个VDE分发者或其它 适当的VDE参与者。因而,(举例来说)图43b所示的步骤可是图43a 中“将注册请求记录排入队列”处理框2416的一部分。为产生注册管 理请求,REGISTER方法2400可首先准备好一个通信审核跟踪记录 (处理框2440、2442),然后访问安全数据库以获取有关注册的数据 (处理框2444)。安全数据库可(举例来说)允许正接受注册对象的 所有者和/或发布者在其中查找统计信息、用户或有关用户的其它信 息。举一个特定的例子,假设正在被注册的对象是一个电子表格软件程 序。该对象的分发者可能希望了解用户还注册了其它哪些软件。例如, 如果用户注册了由同一分发者分发的、含多个软件产品的套件,那么该 分发者可能愿意给予用户优惠的价格。这类的信息可以由包装于大多数 标准软件包中的“用户注册”卡来征求,较佳实施例可以在注册时刻自 动获取这类信息。为了保护用户的隐私权,REGISTER方法2400可以 通过一个隐私过滤器传递这种特定于用户的数据,该隐私过滤器至少是 部分地由用户定制,因而用户可以防止某些信息泄露到外界(处理框 2446)。REGISTER方法2400可把得到的信息、用来标识上述对象 的相应注册请求信息、以及其它相应参数写入一个管理对象中(处理框 2448、2450)。然后REGISTER方法2400将该管理对象传送给一个 通信处理程序。接着REGISTER方法2400可以保存通信审核跟踪(处 理框2452、2454),然后终止(终止于终止点2456)。

图43c示意了某个VDE分发者节点在收到由图43b中处理框2448 发来的注册管理对象时可能执行的REGISTER方法2400。在该“管 理响应”模式下,REGISTER方法2400可首先准备好相应的审核跟踪 记录(处理框2460、2464),然后对收到的管理对象进行解包,并将 相关的注册请求配置信息写入安全数据库中(处理框2464,2466)。 接着,REGISTER方法2400可从安全数据库中检索到上述管理请求, 并确定应该运行哪个方法来处理该请求(处理框2468,2470)。如果 用户没有提供注册对象所需的足够信息,REGISTER方法2400可以终 止(处理框2472,2474)。否则,  REGISTER方法2400将向相应的 响应方法发送包含在相应请求记录中的事件,同时生成响应记录和响应 请求(如PERC和/或UDE),并将之写入安全数据库中(处理框2476, 2478)。然后REGISTER方法2400把相应的注册管理相应记录写入 一个管理对象中(处理框2480,2482)。这些信息可包含(举例来说) 一个或多个替换PERC 808、方法、UDE,等等(处理框2482)。采 用这种方法,(举例来说)分发者就可以先向用户分发有限的权限许可, 这些权限许可只给予用户注册对象所需的足够信息;然后在以后在注册 时,分发者就可以将这些有限的权限许可替换成范围更广的许可,后者 可以允许用户更加完整地访问对象。接着,REGISTER方法2400将 保存通信和响应处理审核跟踪(处理框2484,2486),然后终止(终 止于终止点2488)。

某个VDE用户在收到由图43c处理框2480生成/传送的管理对象 时,可(举例来说)执行图43d所示的步骤。图43d所示的步骤非常类 似于图42d所示的BUDGET方法管理应答过程所采取的步骤。

C.审核

图44a-44c中的流程图示意了由AUDIT(审核)方法2520执行的 程序控制步骤,此处的REGISTER方法2400是较佳实施例提供的一个 有代表性REGISTER方法。从这些例子中可以看出,在本较佳实施例 中,AUDIT方法2520提供了3种不同的操作模式:图44a示意了 AUDIT方法在“管理请求”模式下执行的步骤;图44b示意了AUDIT 方法在“管理响应”模式下执行的步骤;图44c示意了AUDIT方法在 “管理应答”模式下执行的步骤。

通常,当VDE用户节点收到某些用户请求或以用户名义的请求 时,该VDE用户节点将在“管理请求”模式下执行图44a所示的AUDIT 方法2520。例如,用户可能已请求过一个审核,或者某个计时器已经 到期从而启动一次通信,将审核信息传送到某个VDE信息内容提供者 或其它VDE参与者。在较佳实施例中,不同的VDE参与者可以执行 同一整体进程的不同审核。对于上面涉及到的任意一个(或所有)VDE 参与者来说,都要启动一个特定的“审核”方法2520调用。一旦调用 AUDIT方法2520,该方法可以首先准备好一个审核管理审核跟踪(因 而在较佳实施例中,上述审核处理本身将可能被审核)(处理框2522, 2524)。然后,AUDIT方法2520可将一个管理处理的请求放入队列 中(处理框2526,2528),并且将审核管理审核跟踪存入安全数据库 中(处理框2530,2532)。过一段时间,AUDIT方法2520可准备好 一个通信审核跟踪(处理框2534,2536),然后可能根据保存于安全 数据库中的特定UDE、审核跟踪UDE、以及/或者管理记录将审核管 理请求写入一个或多个管理对象中(处理框2538,2540)。接着AUDIT 方法2520可将相应信息保存到通信审核跟踪中(处理框2542, 2544),然后终止处理(终止于终止点2546)。

当某个VDE信息内容提供者、财务提供者、或其它审核VDE节 点收到由图44a中处理框2538生成并传送的管理对象时,它们将执行 图44b所示的步骤示例。该“管理响应”模式下的AUDIT方法2520 可首先准备好一个Audit通信和响应审核跟踪(处理框2550,2552), 然后将收到的管理对象解包,从中检索审核请求审核跟踪和审核记录, 并将它们保存到安全数据库中(处理框2554、2556)。AUDIT方法 2520接着从安全数据库中检索到上述审核请求,并确定运行哪个方法 可以处理该请求(处理框2558,2560)。然后AUDIT方法2520在这 一阶段可向相应的响应方法发送存放在请求记录中的事件,并根据该方 法生成响应记录和请求(处理框2562,2564)。处理框2562可以包 含与外界进行一次通信。

例如,此时AUDIT方法2520可调用一个外部进程来执行,以便 以电子方式从用户的银行帐户或某些其它银行帐户上划拨一部分资 金。如果需要的话,AUDIT管理响应可以调用在VDE与一个或多个 现有计算机系统之间充当接口的一个外部进程。可以向该外部进程传送 用户的帐号、PIN、金额、或者其它相关信息,这些信息配置于正被 处理的VDE审核跟踪中,或者与之相关。外部进程可以与一个非-VDE 主机进行通信,并作为这些通信的一部分传递给它的信息。举例来说, 该外部进程可以在某个文件中生成一个自动票据交换所(ACH)记 录,并将该文件传送给一个银行。采用这种机制,就可以自动对任意金 融机构中的银行帐户进行借贷操作。这种机制还可以用来与现有的信用 卡(如VISA)网络进行通信,其过程是将基于VDE的费用记入收费 帐户中。

一旦生成相应的审核响应记录以后,AUDIT方法2520可将一个 审核管理记录写入一个管理对象中以便将之传回产生上述审核请求的 VDE用户节点(处理框2566,2568)。然后AUDIT方法2520可将 通信和响应处理审核信息存入相应的审核跟踪(处理框2570,2572), 之后便终止处理(终止与终止点2574)。

当某个VDE用户节点收到由图44b中处理框2566生成并传送的管 理对象时,在该节点中将由AUDIT方法2520执行图44c所示的步骤示 例。图44c所示的步骤2580-2599类似于图43d中REGISTER方法2400 在“管理应答”模式下执行的步骤。简而言之,这些步骤包括:从管理 对象中接收并提取相应的响应记录(处理框2584),然后对这些收到 的信息进行相应处理,并更新安全数据库记录,同时还执行其它必要处 理(处理框2595,2596)。

事件驱动的基于信息内容的方法举例

VDE方法1000的设计使它能够实现更加灵活并且高度模块化的安 全处理机制。通常可以作为方法1000的组合来创建服务于“使用事件” 的完整进程。举一个例子,用来从对象300中阅读信息内容或其它信息 的典型进程可含有下面的方法:

     一个事件(EVENT)方法

     一个计量(METER)方法

     一个计帐(BILLING)方法

     一个预算(BUDGET)方法

图45示意了VDE 100为响应一个事件而顺序执行的一系列方法。 在本例中,当出现一个事件后,EVENT方法402可以对该事件进行“考 核”以判断它是否具有有效性。并非所有事件都是有效的。例如,假设 某个控制进程中的EVENT方法1000要求对使用量度的计量要以阅读 的页数为单位,在这个前提下,如果用户请求读取少于一页的信息,那 么此“事件”将被忽略。再举一个例子,如果某个系统事件表示请求读 取一定数目的字节,同时EVENT方法1000从属于设计成作段落计量 的某个控制进程,那么该EVENT方法可能要对该读请求做适当测定, 以便确定所请求的字节代表了多少个段落。该过程可能包括向“原子元 素”做映射,这一点将在后面详细介绍。

EVENT方法402将根据涉及到的特定控制方法把那些不具有效性 的事件过滤出去。EVENT方法402将有资格的事件发送给METER进 程404,该进程根据其本身的特定标准或者对上述事件进行计量,或者 丢弃该事件。

另外,较佳实施例提供了一种称为“预检查”的优化措施。EVENT 方法/进程402可以根据计量、计帐和预算等信息执行“预检查”,以 便确定基于事件的处理是否允许执行。假设,(举例来说)由于访问某 些信息内容的原因,用户已经超出了其预算额,因而无法进一步对信息 内容进行访问。尽管BUDGET方法408可以作出上述决定,而由 BUDGET方法404和/或BILLING方法406执行的记录和处理就可能 不得不“复原”,以避免(举例来说)用户虽然进行了一次实际已被拒 绝了访问,但仍然为此而缴费。如果在EVENT方法402中执行一次“预 检查”就可以使必须“复原”的交易减少,这样可能会提高效率。

举例来说,METER方法404可以将审核记录存放到计量“跟踪” UDE 1200中,并且可以在计量UDE 1200中记录与事件有关的信息。 例如,METER方法404可以在每次信息内容被访问的时候增加或减 少计量UDE 1200中的一个“计量”值。可以维护两种不同的数据结构 (计量UDE和计量跟踪UDE),(举例来说)这样可以分开维护用作 报告用途的记录和用作内部操作用途的记录。

一旦事件由METER方法404计量以后,被计量的事件将接受 BILLING方法406的处理。BILLING方法406确定该事件使用了多 少预算,它还保存对协调计量和预算有用的有关记录。于是,(举例来 说)BILLING方法406可以从一个预算UDE中读取预算信息,将计 帐信息保存到一个计帐UDE中,并且将一个或多个审核记录写入一个 计帐跟踪UDE中。尽管某些计帐跟踪信息可能与计量和/或预算跟踪信 息重复,计帐跟踪信息仍然可以用来(举例来说)使信息内容制作者 102可望得到一定数量的报酬,同时它还可以起到协调核对作用,以便 在发送到制作者102的计量跟踪信息和发送到独立预算提供者的预算 跟踪信息两者间进行协调。

然后BILLING方法406可将事件传送给BUDGET方法408。 BUDGET方法408设置某些限制,并记录与这些限制相关的交易信息。 例如,BUDGET方法408可将预算信息存入一个预算UDE中,并且 还可将一个审核记录存入预算跟踪UDE中。经过BUDGET方法408 处理后,预算UDE中的“预算余额”字段是减去由BILLING方法406 指定的数量后所剩的数额。

一旦不同的方法402、404、406、408已经处理完上述事件,信 息内容便可以发放,同时还可能允许其它操作发生。

如上所述,在较佳实施例中,可以利用“控制方法”来提供PERC 808,这些控制方法实际上在某个控制进程中“监视”其它必要方法的 性能。图46示意了控制方法410对图45中的必要方法/进程402,404, 406及408是如何组织和控制的。控制方法410可以调用和调度事件, 或者调用其它方法402,404,406及408,并且可以监视为响应某个“事 件”而进行的处理。

控制方法运行于PERC 808中控制集合906这一层次。控制方法在 实现迥异的方法1000之间提供了结构、逻辑和控制流。这种机制使信 息内容提供者可以创建所需的任意处理链,同时还允许居后的再次分发 者(在允许的限度内)修改特定的处理链。这种控制结构概念提供了很 大的灵活性。

图47示意了“聚合”方法412的一个例子,该聚合方法412把 METER方法404、BUDGET方法406、BILLING方法408收集在 一起放在了一个“聚合”处理流中。聚合方法412可以(举例来说)把 各种计量、预算和计帐元素合并成单个方法1000。由于聚合地执行 METER方法404、BUDGET方法406、BILLING方法408,因而 聚合方法412可以提高效率。不过由于模块化的降低同时也导致了灵活 性的降低。

多个不同的方法可以同时起作用。图48示意了较佳实施例中的一 个事件处理过程,该过程使用了多个METER方法404和多个BUDGET 方法1408。为了处理某事件,可能需要单独或同时执行多个不同的必 要方法。例如,在图48所示的例子中,METER方法404a可以维护计 量跟踪和计量信息记录,而这些记录与METER方法404b所维护的计 量跟踪与计量信息记录是无关的。类似地,BUDGET方法408a维护的 记录可能与BUDGET方法408b维护的记录也无关。某些事件可以绕 过BILLING方法408的处理,同时仍然要经过METER方法404a和 BUDGET方法408a的处理。各种不同的变化都是有可能的。

VDE方法的代表性例子

尽管方法1000实际可以无限多样,并且某些甚至是用户定义的, 而较佳实施例最好使用某些基本的“使用”型方法以控制VDE 100提 供的大多数基本对象处理以及其它功能。例如,为了进行对象操作,通 常提供下列的高层方法:

打开(OPEN)方法

读(READ)方法

写(WRITE)方法

关闭(CLOSE)方法

OPEN方法用来控制对容器的打开操作,从而使其中的信息内容可 以被访问。READ方法用来控制对容器中信息内容的访问。WRITE 方法用来控制向容器中插入信息内容的操作。而CLOSE方法则用来关 闭一个已经打开的容器。

为了执行OPEN,READ,WRITE和/或CLOSE方法所要求的某些 步骤,提供了一些辅助方法。这种辅助方法可能包括:

ACCESS方法

PANIC方法

ERROR方法

DECRYPT方法

ENCRYPT方法

DESTROY信息内容方法

INFORMATION方法

OBSCURE方法

FINGERPRINT方法

EVENT方法

CONTENT方法

EXTRACT方法

EMBED方法

METER方法

BUDGET方法

REGISTER方法

BILLING方法

AUDIT方法

ACCESS方法可以用来物理地访问与已打开容器相关的信息内容 (该信息内容可以在任何地方)。在检测到安全保障遭到入侵的时候, 可以用PANIC方法关闭至少部分VDE节点。ERROR方法可以用来 处理错误情况。DECRYPT方法用来对加密信息进行解密。 ENCRYPT方法用来加密信息。DESTROY信息内容方法用来取消对 容器中特定信息内容的访问能力。INFORMATION方法用来提供有关 容器中信息内容的公开信息。OBSCURE方法用来降低从已打开容器 中读出的信息内容的价值(例如在显示出的图象之上打印出词 “SMAPLE”)。FINGERPRINT方法用来对信息内容做标记,以表 明是谁把该信息内容从安全容器中发布出来的。EVENT方法用来将 事件转化成另外的事件,以便由其它方法进行响应。

OPEN(打开)

图49中的流程图示意了OPEN方法1500的较佳实施例进程控制 步骤。不同的OEPN方法具有不同的详细步骤。但是,图49所示的 OPEN方法则是由较佳实施例提供的、具有相对完备功能的“OPEN” 方法中的代表性例子。图49示意了该OPEN方法的宏观图。图49a- 49f则是为实现图49所示的方法所要执行的详细程序控制步骤示例。

OPEN方法进程从一个“打开事件”开始。该打开事件的产生来源 可以是用户应用程序、操作系统截获、或者各种其它用于捕捉或截获控 制的机制。例如,用户应用可以发出一个请求,希望访问存放在VDE 容器的特定信息内容。作为另一个的例子,其它方法可以发出一个命 令。

在所示的例子中,上述打开事件由控制方法1502来处理。控制方 法1502可调用其它方法以处理该事件。例如,控制方法1502可以调用 EVENT方法1504、METER方法1506、BILLING方法1508、以及 BUDGET方法1510。并非所有的OPEN方法都必须调用上述附加的方 法,不过图49所示的OEPN方法1500是一个有代表性的例子。

控制方法1502将打开事件的描述传递给EVENT方法1504。 EVENT方法1504可确定(举例来说)该打开事件是否是经过允许的, 并判断该打开事件是否重要得需要经过METER方法1506、BILLING 方法1508和/或BUDGET方法1510的处理。EVENT方法1504可以 在一个审核跟踪UDE中保存审核跟踪信息,并使用事件方法数据元素 (MDE)来确定该事件的许可和有效性。EVENT方法1504还可将 该打开事件映射到一个“原子元素”和计数,该“原子元素”和计数可 以被METER方法1506、BILLING方法1508和/或BUDGET方法 1510处理。

在OPEN方法1500中,一旦调用了EVENT方法1504并且EVENT 方法1504成功地返回,控制方法1502接着可调用METER方法1506, 并将EVENT方法1504返回的原子元素和计数传递给METER方法 1506。METER方法1506可在METER方法审核跟踪UDE中保存审 核跟踪信息,还可在一个METER方法UDE中维护计量信息。在较佳 实施例中,假设METER方法1506成功地执行完处理,那么它将向控 制方法1502返回一个计量数值。

在较佳实施例中,控制方法1502一旦收到一个标志表明METER 方法1506已经成功执行完毕,那么它将调用BILLING方法1508。控 制方法1502可向BILLING方法1508传递由METER方法1506返回 的计量值。BILLING方法1508可读取并更新保存在BILLING方法映 射MDE中的计帐信息,它还可在一个BILLING方法审核跟踪UDE中 维护和更新审核跟踪。  BILLING方法1508可以向控制方法1502返 回一个计帐数量和一个完成码。

假设BILLING方法1508成功执行完毕,控制方法1502可以将 BILLING方法1508提供的计帐值传递给BUDGET方法1510。 BUDGET方法1510可以读取和更新一个BUDGET方法UDE中的预算 信息,它还可在一个BUDGET方法审核跟踪UDE中维护审核跟踪信 息。BUDGET方法1510可以向控制方法1502返回一个预算值,同时 还可以返回一个完成码,该完成码表明上述打开事件是否超出了用户的 预算(该预算对应于此类事件)。

一旦BUDGET方法1510执行完毕,控制方法1502可以创建一个 通道,同时还可以生成读/使用控制信息,以便为后续对READ方法的 调用做准备。

图49a-49f详细地说明了图49中所示的OPEN方法1500。参看图 49a,为了响应一个打开事件,控制方法1502首先确定需要被打开的 对象标识以及请求打开该对象的用户标识(处理框1520)。然后控制 方法1502判断需要被打开的上述对象是否已向该用户注册(判定框 1522)。在较佳实施例中,控制方法1502至少部分地读PERC 808和 用户权限表(URT)中的有关元素以便作出上述判断,这些元素与处 理框1520确定的特定对象和特定用户相关(处理框1524)。如果用户 尚未为该特定对象注册(判定框1522的“否”出口),那么控制方法 1502可以为该对象调用REGISTER方法,并且在注册一旦完成后重新 启动OPEN方法1500(处理框1526)。REGISTER方法处理框1526 可以是一个独立的进程,并且可以与时间无关。可能(举例来说)需要 花费较长的一段时间才能完成REGISTER方法(假设负责处理注册事 宜的VDE分发者或其它参与者在为上述特定对象注册用户之前,希望 检查一下用户的信用)。

假设上述用户和对象的适当URT是存在的,这样就表明已经为所 述用户注册了所述对象(判定框1522的“是”出口),于是控制方法 1502可以判断该对象是否已经为该用户而打开了(判定框1528)。这 个测试可以避免为打开一个已经打开的对象而创建多余的通道。假设对 象尚未被打开(判定框1528的“否”出口),控制方法1502将创建一 个通道,并将相应的打开控制元素装配到该通道中(处理框1530)。 它从安全数据库中读取相应的打开控制元素(或者举例来说,对于一个 移动对象,控制方法1502将从容器中读取上述元素),并且将这些特 定的相应控制元素“装配”和“链接”到一起,以便为该用户完成打开 对象的控制。于是,处理框1530将一个事件与从安全数据库(或容器) 中读取的一个或多个相应方法核心、相应加载模块、相应用户数据元 素、以及相应方法数据元素(处理框1532相关联)。此时,控制方法 1502为后续的EVENT方法1504、METER方法1506、BILLING方 法1508、以及BUDGET方法1510指定打开事件(该事件启动了OPEN 方法的执行)、对象ID和用户ID(在处理框1520中确定)、以及由 处理框1530创建的通道的通道ID,这样就提供了一个安全数据库“交 易”(处理框1536)。在这样做之前,控制方法1502可以首先要准备 一个审核进程(处理框1533),并且将审核信息写入一个审核UDE中 (处理框1534),因此,即使上述交易失败或者受到干扰,该交易的 记录仍然存在。

图49b示意了EVENT方法1504所执行的详细步骤。根据需要, EVENT方法1504可以首先准备好一个事件审核跟踪(处理框1538), 该审核跟踪可以被写入一个EVENT方法审核跟踪UDE(处理框 1540)。然后,EVENT方法1504可利用一个映射MDE将上述打开 事件映射到一个原子元素号和事件计数(处理框1542)。上述EVENT 方法映射MDE可从安全数据库中读取(处理框1544)。由处理框1452 执行的上述映射可(举例来说)确定该打开事件是否是可计量的、可计 帐的、或者是可预算的,还可将该打开事件传送到某些分离的原子元素 中以便进行计量、计帐和/或预算。举一个例子,处理框1542可以在打 开事件和“打开”原子元素之间进行一一映射,或者它可以在该对象每 到第五次打开的时候才提供一个打开原子元素。映射处理框1542最好 返回打开事件、事件计数、原子元素号、对象ID、以及用户ID。这 些信息可以被写入EVENT方法审核跟踪UDE中(处理框1546, 1548)。在较佳实施例中,接着要执行一个测试(判定框1550),它 用来判断该EVENT方法是否失败了。特别地,判定框1550可以判断 是否已经产生了一个原子元素号。如果没有产生原子元素号(如,这意 味着上述打开事件不具备有效性以供METER方法1506、BILLING 方法1508和/或BUDGET方法1510处理),那么EVENT方法1504 可以向控制方法1502返回一个“失败”完成码(判定框的1550的“否” 出口)。

控制方法1502测试EVENT方法1504返回的完成码,以确定 EVENT方法1504是成功还是失败了(判定框1552)。如果EVENT 方法失败了(判定框1552的“否”出口),那么控制方法1502可以 “回滚”(roll back)安全数据库交易(处理框1554),而且其本身 将返回,同时带有一个返回标志表明OPEN方法失败(处理框1556)。 在此处,“回滚”安全数据库交易意味着(举例来说)“复原”在处理 框1540、1548对审核跟踪记录UDE做出的修改。不过,在较佳实施 例中,处理框1554所执行的“回滚”操作并不“复原”在处理框1532、 1534对控制方法审核信息UDE做出的修改。

假设EVENT方法1504执行成功,控制方法1502将接着调用 METER方法1506,如图49c所示。在较佳实施例中,根据需要, METER方法1506首先准备好计量审核跟踪(处理框1558),该步骤 通常包括向METER方法审核跟踪UDE写入信息(处理框1560)。 然后METER方法1506可从安全数据库中读取一个METER方法UDE (处理框1562),对之进行修改,即把相应事件计数加到计量UDE中 的计量值中(处理框1564),之后它将修改了的计量UDE写回安全数 据库中(处理框1562)。换句话说,处理框1564可读出计量UDE, 增加它所含有的计量计数,然后将改变后的计量UDE写回安全数据库 中。在较佳实施例中,如果需要的话,METER方法1506接着会向 METER方法审核跟踪UDE写入计量审核跟踪信息(处理框1566, 1568)。下一步,METER方法1506最好执行一个测试,以确定计 量值是否已经成功地增加(判定框1570)。METER方法1506向控制 方法1502返回一个完成码(如成功或失败)以及由处理框1564确定的 一个计量值。

控制方法1502(举例来说)通过检查完成码来确定METER方法 是否执行成功(判定框1572)。如果METER方法失败(判定框1572 的“否”出口),那么控制方法1502将“回滚”安全数据库交易(处 理框1574),并返回一个标志表明OPEN方法失败(处理框1576)。 假设METER方法执行成功(判定框1572的“是”出口),控制方法 1502于是调用BILLING方法1508,并将METER方法1506提供的计 量值传递给它。

图49d示意了BILLING方法1508执行的步骤示例。如果需要的 话,BILLING方法1508可首先准备一个计帐审核跟踪(处理框 1578),即向安全数据库中的BILLING方法审核跟踪UDE写入信息 (处理框1580)。然后BILLING方法1508使用从安全数据库中读出 的一个BILLING方法映射MDE把原子元素号、计数、以及计量值映 射到一个计帐数额。提供包含价格表信息的独立BILLING方法映射 MDE允许为计帐进程进行可独立传递的定价。处理框1582生成的结 果计帐数额可被写入BILLING方法审核跟踪UDE(处理框1586, 1588),该结果也可返回控制方法1502。另外,BILLING方法1508 可确定处理框1582是否正确地选择了计帐数额(判定框1590)。在本 例中,判定框1590所执行的测试通常不仅仅只包括检查返回的计帐数 额,这是因为计帐数额可能会以各种无法预测的方式经过改变,这些方 式在计帐方法映射MDE中已经做了规定。然后控制返回控制方法 1502,控制方法1502将测试BILLING方法1508返回的完成码以确定 BILLING方法是成功了还是失败了(判定框1592)。如果BILLING 方法失败了(判定框1592的“否”出口),控制方法1502可以“回滚” 安全数据库交易(处理框1594),并返回一个标志表明OPEN方法失 败(处理框1596)。假设判定框1592所做的测试表明BILING方法执 行成功(判定框1592的“是”出口),那么控制方法1502可以接着调 用BUDGET方法1510。

(举例来说)还有一些BILLING方法使用地点、用户、以及/或者 使用信息来生成定价信息。例如,可以使用有关对象存在或不存在的信 息来实现“套件”购买、有竞争力的折扣等方式。计帐方法可以将使用 级别作为一个考虑的因素,以便针对不同的使用级别而制定不同的价 格。BILLING方法可以具有货币换算特性,该特性允许利用不同种类 的货币进行购买和/或定价。还有许多其它方式可以用来确定某个事件 消耗的预算额,这些方式都可以集成进BILLING方法。

图49e示意了BUDGET方法1510执行的详细控制步骤示例。如果 需要的话,BUDGET方法1510可向一个预算审核UDE写入信息以便 准备好一个预算审核跟踪(处理框1598,1600)。然后BUDGET方 法1510可以执行一个计帐操作,即把一个计帐数额加到一个预算值中 (处理框1602)。该操作可以包括:从安全数据库中读取预算方法 UDE,对之进行修改,然后将它写回安全数据库中(处理框1604)。 之后,BUDGET方法1510可向预算方法审核跟踪UDE中写入预算审 核跟踪信息(处理框1606,1608)。在本例中,BUDGET方法1510 可以最后确定由处理框1602计算得出的预算值是否超出了范围(处理 框1610)。如果用户用光了其预算(判定框1610的“是”出口),那 么BUDGET方法1510可向控制方法1502返回失败完成码。然后, BUDGET方法1510返回控制方法1502,控制方法1502将检查 BUDGET方法完成码是否是成功的(判定框1612)。如果BUDGET 方法失败(判定框1612的“否”出口),控制方法1502可以“回滚” 安全数据库交易,并自己返回,同时返回一个标志表明OPEN方法失 败(处理框1614、1616)。假设控制方法1502发现BUDGET方法执 行成功,那么控制方法可以继续执行图49f所示的步骤。例如,如果需 要的话,控制方法1502可以写入一个打开审核跟踪,其过程是将审核 信息写入由处理框1532准备好的审核UDE中(处理框1618,1620)。 然后,控制方法1502可以建立一个读事件处理(处理框1622),其间 它使用与上述对象和用户相关的用户权利表和PERC来创建通道(处 理框1624)。该通道既可能被VDE节点600的多个用户所共享,也可 能只能由指定的用户使用。    

在较佳实施例中,控制方法1502接着检查读通道是否已经成功地 创建好(判定框1626)。如果读通道未能成功地创建(判定框1626的 “否”出口),控制方法1502“回滚”安全数据库交易,并返回一个 标志表明OPEN方法失败(处理框1628,1630)。假设读通道成功 地创建好(判定框1626的“是”出口),控制方法1502可“提交”安 全数据库交易(处理框1632)。在较佳实施例中,上述“提交”安全 数据库交易的步骤包括(举例来说):删除与刚刚执行的安全交易有关 的中间值,并且(举例来说)将修改了的UDE和MDE写入安全数据 库。通常,某个安全交易一经处理框1632提交,那么它就不可能被“回 滚”了。然后,控制方法1502可以“拆除”用来进行打开处理的通道, 然后终止(处理框1636)。在某些配置中,诸如在多任务VDE节点环 境中,上述OPEN通道可以一直保留,而任何开始执行的OPEN方法 都可以使用该OPEN通道。在其它实现中,每次启动一个OPEN方法 可以被重建并重启动上述进行打开处理的通道。

READ(读)

图50,50a-50f示意了有代表性READ方法1650示例所执行的进程 控制步骤示例。将图50和图49对比一下可以发现,READ方法1650 所执行的高层处理通常与前面结合OPEN方法1500所介绍的处理相 同。于是,为响应一个读事件,READ方法1650可调用控制方法1652, 然后控制方法1652又调用EVENT方法1654、METER方法1656、 BILLING方法1658、以及BUDGET方法1660。在较佳实施例中, READ控制方法1652在发放被解密的信息内容之前可以请求某些方法 首先对信息内容做指纹和/或使之模糊。

图50a-50e与图49a-49e相类似。当然,即使OPEN方法1500和 READ方法1650可以使用同样的用户数据元素,但READ方法使用的 方法数据元素可以完全不同,另外,读方法所使用的用户数据元素可以 提供与打开处理截然相反的审核、计量、计帐、以及/或者预算标准。

参看图50f,READ控制方法1652必须确定:如果它准备将被解 密的信息内容发放给用户的话,应该用哪个密钥解密该信息内容(处理 框1758)。READ控制方法1652可部分地根据该对象的PERC 808 来做出上述密钥确定(处理框1760)。然后,READ控制方法1652 可调用ACCESS方法以便真正地得到上述需要解密的加密信息内容(处 理框1762)。此后,使用由处理框1758确定的密钥将上述信息内容解 密(处理框1764)。READ控制方法1652接着判断是否需要一个“指 纹”(判定框1766),如果需要对该信息内容按指纹(判定框1766的 “是”出口),那么READ控制方法1652可以调用FINGERPRINT 方法(处理框1768)。否则,READ控制方法1652可以判断是否需 要将该被解密的信息内容模糊化(处理框1770)。如果需要的话,READ 控制方法1652可调用OBSCURE方法来执行该功能(处理框1772)。 最后,READ控制方法1652可以提交上述安全数据库交易(处理框 1774),并可选地拆除读通道(未示出),然后终止(处理框1776)。

WRITE(写)

图51,51a-51f示意了在较佳实施例中有代表性WRITE方法1780 示例所执行的进程控制步骤示例。在本例中WRITE方法1780使用控 制方法1782来调用EVENT方法1784、METER方法1786、 BILLING方法1788、以及BUDGET方法1790。因此,在较佳实施例 中,将信息写入容器(或者通过改写已存储在容器中的信息,或者在容 器中增加新信息)可以被计量、计帐和/或预算,而这些处理与容器打 开和读取过程中所进行的计量、计帐和/或预算方式是相似的。如图51 所示,WRITE方法1780的结果通常是对信息内容进行加密、更新容 器的目录表和相关信息以便反映出新的信息内容、并将信息内容写入对 象。

图51a中的WRITE控制方法1782类似于图49a中的OPEN控制 方法和图50a中的READ控制方法。但是,图51b与对应的打开和读 稍微不同。具体地说,当WRITE EVENT方法1784失败的时候,将执 行处理框1820。处理框1820更新EVENT方法映射MDE以反映出新 数据。只有这样,图51b READ方法处理框1678才能根据同一个(但 此时已经被更新)的EVENT方法映射MDE来读取由处理框1810写 入的信息。

参看图51f,一旦EVENT、METER、BILLING和BUDGET 方法成功地返回到WRITE控制方法1782,WRITE控制方法即把审 核信息写入审核UDE中(处理框1890,1892),然后(根据对应于 该对象和用户的PERC,以及一个可选的算法)确定在将信息内容写 入容器之前应该使用哪个密钥对之进行加密(处理框1894,1896)。 接着,控制方法1782将加密该信息内容(处理框1898),其间可调用 ENCRYPT方法,然后将加了密的信息内容写入对象中(处理框1900)。 之后,控制方法1782可以更新容器的目录表(以及相关信息)以便反 映出新写入的信息(处理框1902),并提交安全数据库交易(处理框 1904),最后返回(处理框1906)。

CLOSE(关闭)

图52示意了在较佳实施例中有代表性CLOSE方法1920示例所执 行的进程控制步骤流程。CLOSE方法1920用来关闭一个打开的对 象。在较佳实施例中,CLOSE方法1920首先准备一个审核跟踪,并 将审核信息写入一个审核UDE中(处理框1922,1924)。然后CLOSE 方法1920可以拆除正用来支持和/或处理一个或多个打开对象的当前通 道(处理框1926)。如上所述,在某些(如多用户或多任务)实现中, 上述拆除通道的步骤是不必要的,因为该通道可以留着操作对同一或不 同用户的其它对象进行处理。此时,CLOSE方法1920还释放此时与 该对象相关的适当记录和资源(处理框1926)。然后,(如果需要的 话)CLOSE方法1920可以在完成之前将审核跟踪写入审核UDE中 (处理框1928、1930)。

EVENT(事件)

图53a示意了在较佳实施例中更为通用的EVENT方法1940示例 所执行的进程控制步骤流程。前面的图49b,50b和51b已经展示了 EVENT方法的某些例子,并且对之进行了描述。图53a所示的EVENT 方法1940比上述例子稍微更通用一些。象前面的EVENT方法例子一 样,EVENT方法1940接收事件的标识以及事件计数和事件参数。如 果需要的话,EVENT方法1940可首先准备一个EVENT审核跟踪, 即向一个EVENT方法审核跟踪UDE中写入适当的信息(处理框 1942,1944)。然后EVENT方法1940可从安全数据库中获取并装入 EVENT方法映射DTD(处理框1946,1948)。在本例中,该EVENT 方法映射DTD描述了下面马上就要读取和访问(处理框1950,1952) 的EVENT方法映射MDE的格式。在较佳实施例中,MDE和UDE可 以具有各种不同的格式中任何一种,并且可以根据安装、用户等因素的 不同动态地规定和改变其格式。DTD实际上告诉EVENT方法1940如 何从EVENT方法映射MDE中读取。DTD还用来规定应该如何将方 法写入MDE和UDE中,因此,它可以用来实现隐私过滤器,其原理 是禁止将某些机密的用户信息写入将要报告给第三方的数据结构中。

处理框1950(使用映射MDE将事件映射到原子元素号和事件计 数)在某些意义上是EVENT方法1940的“核心”。该步骤将事件“映 射”到“原子元素号”,而该原子元素将由后面调用的方法来响应。图 53b示意了上述“映射”步骤1950一个具有一定代表性的例子所执行 的进程控制步骤示例。

图53b中的例子示意了将一个READ事件转换到相应原子元素的 过程,该READ事件请求从特定的信息内容部分中获取范围位于 1000-1500之间的字节。示例EVENT方法映射进程(图53a中的处理 框195)可以细化为图53b所示的有代表性进程。

EVENT方法映射进程1950首先利用EVENT方法映射DTD(处 理框1948)在EVENT方法MDE中查找事件代码(READ)(处理 框1952),以便确定MDE的结构和内容。可能需要执行一个测试以 判断是否在MDE中查到了事件代码(处理框1956),如果没有(“否” 分支),那么该EVENT方法映射进程可以终止,而没有将事件映射到 原子元素号和计数(框1958)。如果在MDE中发现了事件代码(“是” 分支),那么EVENT方法映射进程可以将事件范围(如字节1001- 1500)与保存在MDE中的、原子元素到事件范围的映射表相比较(处 理框1960)。上述比较可能产生一个或多个原子元素号,或者可能无 法在映射表中找到事件范围。比较的结果可能接着经过测试(处理框 1962)以便确定在映射表中是否发现了任何原子元素号。如果没有 (“否”分支),EVENT方法将终止,而没有选择任何原子元素或计 数(处理框1964)。如果发现了原子元素号,该进程可以从事件范围 中计算出原子元素计数(处理框1966)。在本例中,该过程计算所需 字节数目的方法可以是用字节范围上界减去字节范围下界(如1500- 1001+1=500)。然后,EVENT方法可以终止(处理框1968),并返 回原子元素号和计数。

之后,如果需要的话,EVENT方法1940可以将一个EVENT审 核跟踪写入EVENT方法审核跟踪UDE中(处理框1970,1972)。 然后EVENT方法1940可以准备(在退出点1978)将上述原子元素号 和事件计数传递给调用的CONTROL方法(或其它控制进程)。在此 之前,EVENT方法1940可以检查是否选择了一个原子元素(判定框 1947),如果没有选择原子元素,那么EVENT方法可能会失败(框 1974)。产生这种结果的原因多种多样。例如,如果用户没有权利访 问在EVENT方法MDE中未做描述的信息内容特定区域,那么EVENT 方法可能不能将事件映射到原子元素。这种机制可以用来(举例来说) 分发信息内容片段的定制版本,并且通过改变交付给用户的EVENT方 法MDE,可以控制对信息内容对象中这些不同版本的访问。该技术的 一个特殊用途是可以用来控制信息内容片段不同语言(如英语、法语、 西班牙语)版本的分发。

BILLING(计帐)

图53c示意了BILLING方法1980所执行的示例进程控制步骤流 程图。前面的图49d,50d和51d已经展示了BILLING方法的某些例 子,并且对之进行了描述。图53c所示的BILLING方法1980比上述例 子稍微更通用一些。象前面的BILLING方法例子一样,BILLING方 法1980接收一个计量数值以确定计帐数额。BILLING方法1980可首 先准备一个BILLING审核跟踪(如果需要的话),其过程是将相应信 息写入BILLING方法审核跟踪UDE(处理框1982,1984)。然后 BILLING方法1980可从安全数据库中获取并加载BILLING方法映射 DTD(处理框1985,1986),该DTD描述了本BILLING方法需要 使用的BILLING方法映射MDE(如一个价格清单、表格,以及传给 计帐数额计算算法的参数)。可以将BILLING方法映射方法MDE作 为信息内容对象的一部分进行交付,也可以作为一个可独立交付的部件 来传递,在注册时,该部件被融合进某些控制信息。

本例中的BILLING方法映射MDE可以描述本BILLING方法需 要使用的定价算法(如:对发布的信息内容每一字节计帐0.001美元)。 处理框1988的功能(“将计量值映射到计帐数额”)与EVENT方法 中处理框1950相同;它将计量值映射到计帐数额。进程步骤1988也可 以查询安全数据库(该操作要接收隐私过滤器的限制)以便确定是否存 在其它的对象或信息(如用户信息)可以作为BILLING方法算法的部 分参数。

然后,如果需要的话,BILLING方法1980可以将一个BILLING 审核跟踪写入BILLING方法审核跟踪UDE中(处理框1990,1992), 并可以准备向调用它的控制方法(或其它进程)返回计帐数额。不过在 此之前,BILLING方法1980可以判断是否确定了一个计帐数额(判 定框1994)。如果没有确定计帐数额,那么BILLING方法可能失败 (处理框1996)。出现这种结果的一个可能原因是用户无权访问 BILLING方法MDE所描述的定价表特定区域(如用户从信息内容对 象中购买的信息不能超过100.00美元)。

ACCESS(访问)

图54示意了ACCESS方法2000所执行的程序控制步骤流程图示 例。如上所述,ACCESS方法可以用来访问嵌入到对象300中的信息 内容,从而使该信息内容可以被写入、读取、或经过其它操作和处理。 在许多情况下,ACCESS方法可以相对简单,因为对象可以(举例来 说)被存贮在本地的存贮设备中,从而易于访问。不过,通常情况下, ACCESS方法2000为获取对象必须执行更为复杂的过程。例如,某些 对象(或对象的部分)也许只能从远程获取,或者只能通过实时下载或 输入的方式才能得到这些对象(例如在广播传送的情况下)。即使对象 是保存在VDE节点本地,其保存方式也可以是安全的或受保护的,因 此调用进程对它不能直接访问。ACCESS方法提供了访问对象所必须 的连接、路由选择、以及安全要求。这些步骤的执行对调用进程来说可 以是透明的,所以调用进程只需发出一个访问请求,而与对象或某类对 象相对应的特定ACCESS方法将处理实际访问对象所涉及的所有细节 和后方勤务(Logistics)。

ACCESS方法2000可首先准备一个ACCESS审核跟踪(如果需 要的话),即向ACCESS审核跟踪UDE写入信息(处理框2002, 2004)。然后ACCESS方法2000可以读取并加载ACCESS方法DTD 以便确定ACCESS MDE的格式(处理框2006,2008)。在较佳实施 例中,ACCESS方法MDE指定了需要访问的特定对象的来源和路由 选择信息。利用ACCESS方法DTD,ACCESS方法2000可以加载校 正参数(如用电话号码、帐号ID、口令和/或用远程资源相关语言书写 的请求脚本)。

ACCESS方法2000根据ACCESS方法DTD从安全数据库中读入 ACCESS方法MDE,并根据MDE加载加密的信息内容源和路由信息 (处理框2010,2012)。源和路由信息指定了加密信息内容的位置。 然后ACCESS方法2000判断与该信息内容之间是否有一个连接(判定 框2014)。该“连接”可以是(举例来说):与远方站点建立的在线 连接、实时信息输入、或连向安全/受保护信息资源的通路。如果目前 与信息内容之间没有连接(判定框2014的“否”出口),那么ACCESS 方法2000将执行打开连接的步骤(处理框2016)。如果连接失败(如 由于用户没有权利访问被保护的安全资源),ACCESS方法2000将返 回一个失败标志(终止点2018)。反之,如果打开连接步骤成功, ACCESS方法2000将获取加密的信息内容(处理框2020)。然后如果 需要的话ACCESS方法2000将ACCESS审核跟踪写入安全数据库中 的ACCESS方法审核跟踪UDE(处理框2022,2024),之后终止处 理(终止点2026)。

ENCRYPT和DECRYPT(加密与解密)

图55a示意了在较佳实施例中有代表性DECRYPT方法2030示例 所执行的进程控制步骤流程。在较佳实施例中,DECRYPT方法2030 从一个相应的PERC 808中获取或生成一个解密密钥,并使用该密钥对 一块加密的信息内容进行解密。DECRYPT方法2030接收一块加密的 信息内容或一个指向加密块存放位置的指针。DECRYPT方法2030从 一个密钥块中选择一个密钥号(处理框2032)。为安全起见,一个信 息内容对象可以用一个以上的密钥进行加密。例如,在一段电影中,其 前10分钟的内容可以使用第一个密钥加密,第二个10分钟的内容可以 使用第二个密钥加密,依此类推。存放在某个数据结构之PERC 808中 的上述密钥称为“密钥块”。上述选择过程即为从密钥块中确定可用来 解密上述信息内容的正确密钥。该选择进程类似于EVENT方法将事件 映射到原子元素号所用的进程。之后,DECRYPT方法2030访问安全 数据库610中的一个相应PERC 808,并从PERC中加载一个密钥(或 “种子”)(处理框2034,2036)。该密钥信息可以是解密信息内容 所用的实际解密密钥,或者至少可以部分地从该信息中推导出或计算出 解密密钥。如果需要的话,DECRYPT方法2030根据在处理框2034 从PERC 808中读到的信息计算出解密密钥(处理框2038)。然后, DECRYPT方法2030使用上述获取的和/或计算得来的解密密钥真正地 对加密信息进行解密(处理框2040)。DECRYPT方法2030输出解 密了的块(或者指向该块所在位置的指针),然后终止(终止于终止点 2042)。

图55b示意了在较佳实施例中有代表性ENCRYPT方法2050示例 所执行的进程控制步骤流程。在较佳实施例中,ENCRYPT方法2050 接收一块需要加密的信息(或一个指向该块存放位置的指针)作为输 入。然后ENCRYPT方法2050可以从一个密钥块中确定使用的密钥(处 理框2052)。密钥选择过程要确定:在保存于PERC 808中的某个密 钥块中,是否存在对应于要对之执行写入操作的特定信息内容块的密 钥。如果密钥块中存在这样的密钥,那么将选择该密钥号码。如果密钥 块中不存在这样的密钥,则利用合适的加密算法计算得出一个新密钥。 该密钥被存放在PERC 808的密钥块中,使DECRYPT方法2030可以 访问该密钥,以便对存放在信息内容对象中的信息内容进行解密。之 后,ENCRYPT方法2050访问相应的PERC以便获取、推导和/或计 算出一个可用来加密信息块的加密密钥(处理框2054,2056,2058, 这些处理框类似于图55a中的处理框2034,2036,2038)。接着, ENCRYPT方法2050用获取的和/或推导得出的加密密钥真正地加密上 述信息块(处理框2060),并输出加了密的信息块或指向其位置的指 针,随后终止(终止点2062)。

CONTENT

图56示意了在较佳实施例中有代表性CONTENT方法2070示例所 执行的进程控制步骤流程。在较佳实施例中,CONTENT方法2070采 用安全进程为受保护的CONTENT创建“梗概”。例如,可以使用 CONTENT方法2070从受保护的CONTENT中导出不受保护的(“公 开的”)信息。上述可导出的公开信息可以包括:(举例来说)摘要、 索引、目录、文件目录、表明何时可以得到CONTENT的时间表、或 摘录,比如影片的“演职员表”。

CONTENT方法2070首先判断要交付的被导出内容是否必须从安 全的CONTENT中导出,还是它已经以静态值的形式存在于对象中(判 定框2070)。某些对象可以(举例来说)包含了预保存的摘要、索引、 目录等信息,这些信息被清楚地提供出来以供CONTENT方法2070提 取之用。如果对象包含了上述静态值(判定框2072“静态”出口), 那么CONTENT方法2070就可以简单地从该对象中读出上述静态值内 容信息(处理框2074),可选地对之解密,然后发布该内容说明(处 理框2076)。如果在另一方面,CONTENT方法2070必须从受保护对 象中导出上述梗概/CONTENT说明的话(判定框2072的“导出”出口), 那么,该CONTENT方法必须按照一个梗概算法从容器中安全地读取 信息以便产生上述梗概(处理框2078)。

EXTRACT和EMBED(提取与嵌入)

图57a示意了在较佳实施例中有代表性EXTRACT方法2080示例 所执行的进程控制步骤流程。EXTRACT方法2080用来从一个对象中 复制或移动信息内容,然后将其放入一个新对象中。在较佳实施例中, EXTRACT方法2080不涉及对信息内容的任何发布,只是简单地将信 息内容从一个容器中取出,然后放入另一个容器中,这两个容器可以 都是安全的。对信息内容的提取不同于发布的地方在于,被提取的信息 内容始终没有暴露到安全容器之外。提取和嵌入是两个互补的功能;提 取过程是从一个容器中取出信息内容并创建一个新的容器存放被提取 出的信息内容,同时还存放与该信息内容相关的任何被指定的控制信 息。嵌入则是从一个容器中取出已经存在的信息内容,并直接地和/或 通过引用方式将它存放到另外一个容器中,同时把与现有信息内容相关 联的控制信息和新的信息内容的控制信息集成在一起。

EXTRACT方法2080首先准备一个审核UDE(处理框2082, 2084)。然后,EXTRACT方法调用BUDGET方法以便确认用户具 有足够的预算额用来(并且有权)从原始对象中提取信息内容(处理框 2086)。如果用户的预算不允许该提取(判定框2088的“否”出口), 那么EXTRACT方法2080将写一个失败审核记录(处理框2090), 然后终止(终止点2092)。如果用户的预算允许该提取(判定框2088 的“是”出口),EXTRACT方法2080创建被提取对象的一个拷贝, 并附有指定的规则和控制信息(处理框2094)。在较佳实施例中,上 述步骤涉及调用一个实际控制上述拷贝的方法。该步骤可以含有也可以 不包括加密和解密,这取决于(举例来说)与原始对象相关联的特定 PERC 808。随后,EXTRACT方法2080将判断授权本次提取的权利 是否允许进行某些控制改变(判定框2096)。在某些情况下,提取权 利要求在新(目的地)容器中放置原始对象相关PERC 808(或为此目 的所含的某个PERC)的一份精确拷贝(判定框2096的“否”出口)。 如果不允许有控制改变,EXTRACT方法2080可以简单地将审核信息 写入审核UDE中(处理框2098,2100),然后终止(终止点2102), 反之,如果提取权利允许用户进行控制改变(判定框2096的“是”出 口),那么EXTRACT方法2080可以调用一个方法或加载模块,该方 法或加载模块将请求(如从用户、创建/批准提取权的分发者、或从其 它来源)从用户处得到新的或改变的控制信息(处理框2104,2106)。 随后,EXTRACT方法2080可以调用一个方法或加载模块,以便创建 一个新的PERC,该PERC反映了上述用户指定的控制信息(处理框 2104)。上述新PERC将被放置于新的(目的地)对象中。然后EXTRACT 方法2080执行审核步骤,之后终止。

图57b示意了在较佳实施例中有代表性EMBED方法2110示例所 执行的进程控制步骤流程。EMBED方法2110类似于图57a所示的 EXTRACT方法2080。不过,EMBED方法2110执行了一个稍微不 同的功能—它将一个对象(或引用)写入目的地容器中。图57b所示的 处理框2112-2122与图57a所示的处理框2082-2092相类似。在处理框 2124,EMBED方法2110将源对象写入目的地容器中,同时可以提取 或改变目的地容器的控制信息。另外一种选择是:简单地留下目的地容 器的控制信息,而纳入原始容器的控制信息以及与被嵌入对象相关的完 整控制信息集合。然而,作为一种优化方案,较佳实施例提供了一种技 术,其中,与被嵌入对象相关的控制信息被“抽取”出并被集成进目的 地容器的控制信息中。处理框2124可以调用某个方法以抽取或改变上 述控制信息。然后,EMBED方法2110执行步骤2126-2130,这些步 骤与图57a所示的步骤2096,2104,2106相似,步骤2126-2130允 许一个已授权用户改变和/或指定与嵌入对象和/或目的地容器相关的控 制信息。接着,EMBED方法2110将审核信息写入审核UDE中(处 理框2132,2134),然后终止(终止于终止点2136)。

OBSCURE(模糊化)

图58a示意了在较佳实施例中有代表性OBSCURE方法2140示例 所执行的进程控制步骤流程。OBSCURE方法2140通常用于以降价的 形式发布受保护的信息内容。例如,OBSCURE方法2140可以将一幅 高分辨率的图象以低分辨率的形式发布,从而使用户虽然可以欣赏该图 象但无法享受其全部价值。再举一个例子,OBSCURE方法2140可能 往一幅图象上放置某个模糊化符号(如“COPY”、“PROOF”等), 以便降低其价值。OBSCURE方法2140可以“模糊化”正文,图象、 声音信息、或其它任何类型的信息内容。

OBSCURE方法2140首先调用EVENT方法以确定该信息内容是 否是适于处理的,并且属于要模糊化的范围(处理框2142)。如果该 信息内容不适于模糊化,OBSCURE方法将终止(判定框2144的“否” 出口,终止点为2146)。假设信息内容要被模糊化(判定框2144的“是” 出口),那么OBSCURE方法2140将确定是否因为模糊化该信息内容 它本身已经被调用过(判定框2148)。假设OBSCURE方法2140未 因为模糊化该对象/信息内容而被调用过(判定框2148的“是”出口), OBSCURE方法2140将从安全数据库中读出一个相应的OBSCURE方 法MDE,并从该MDE中加载模糊化公式和/或模式(处理框2150, 2152)。然后,OBSCURE方法2140根据处理框2150加载的模式和 /或公式施加模糊化变换(处理框2154)。此后OBSCURE方法2140 将终止(终止于终止点2156)。

FINGERPRINT(指纹)

图58b示意了在较佳实施例中有代表性FINGERPRINT方法2160 示例所执行的进程控制步骤流程。在较佳实施例中,FINGERPRINT 方法2160使用一个“指纹”标识来“标记”发布的信息内容是谁发布 的以及/或者检验这些标记。这种方式可以允许人们在以后通过检验该 信息内容得以查明是谁发布了未受保护的信息内容。FINGERPRINT 方法2160可以(举例来说)在代表数据流的声音、影像、或二进制格 式信息中插入用户ID。FINGERPRINT方法2160非常类似图58a所 示的OBSCURE方法2140,但有一点区别是:FINGERPRINT方法处 理框2174所施加的变换不是模糊化被发布的信息内容而是在其中“留 下指纹”。

图58c示意了“留指纹”过程2160的一个例子,该过程在被发布 的信息内容留下指纹2161,这些指纹标识了:对象、和/或产权、和/ 或请求使用该被发布对象信息内容的用户、和/或发布的日期和时间、 和/或被发布信息内容的其它标识标准。

这种指纹2161可以是“掩埋的”—其插入方式可以使指纹对于典 型用户、破译高手、和/或所有用户是不可见的,这要取决于文件格式、 插入算法的完善程度和/或多样性、以及是否可以得到原始的、未留下 指纹的信息内容(供反向算法工程比较)。在较佳实施例中,可以至少 部分地将插入的或嵌入的指纹2161进行加密,以便使它们更加安全。 这种被插入的指纹2161可以以“明白的”(明文)形式嵌入到被发布 的信息内容中。

指纹2161可适用于多种目的,包括(举例来说)一些经常涉及的 用途如证明发布的材料是否被不合理的使用,以及指明被发布的信息内 容的来源。尤其在制止软件盗版方面,指纹可以非常有用。对于大多数 类型的电子传递信息,使用指纹技术还可以有助于加强这些信息信息内 容提供者的权利,这类信息的例子有:电影、录音制品、多媒体、信息 数据库、以及传统的“文献”资料。在防止拷贝方面,指纹技术是比较 理想的可选方案或附加方案。

许多软件应用盗版行为(举例来说)其现象并非是某个人制作了一 份非法拷贝,然后在另外一台自己的计算机上使用,而是将拷贝给予另 外一方。这经常会产生一个非法拷贝的链(或更确切地说是一个金字 塔),因为拷贝被一个人一个人传递下去。由于担心嵌入指纹2161而 暴露其身份,大多数人可能会不再参与其目前所正在参与的广泛且无意 的盗版。在某些情况下,可以用一种指纹方法来检查信息内容中有无指 纹,以帮助加强信息内容提供者的权利。

不同的指纹2161可以有不同的安全级别(例如,出于商业考虑, 指纹2161(1)可以是可读的/可识别的,而另一个指纹2161(2)则只能对一 个更加可信的代理可读)。更为安全的指纹2161的生成方法可以使用 更加复杂的加密技术(如数字签名)以及/或者模糊化位置的方法。为 了防止加入指纹的信息被破译高手所识破,可以在不同的位置和/或使 用不同的技术嵌入两个或更多指纹2161。如果用来产生更为安全指纹 的技术要带来很多不该有的附加开销的话,那么也许只能定期地使用这 种更为安全的指纹,而不是每次发布信息内容的时候都要使用。这样做 仍然是有效的,因为加入指纹的主要目标是为了威慑—非法拷贝制作者 担心其拷贝行为被发现。

例如,某人可能将一个指纹2161嵌入到拷贝中,而该指纹可以会 很方便地被一个经授权的团体所识别。这些团体可以是分发者、服务人 员、客户管理员、或使用VDE电子设备600的票据交换所。可以嵌入 指纹2161的一个或多个附加拷贝或变型(例如,某些指纹带有一些描 述性信息,这些信息说明了部分或全部相关识别信息),并且可以采用 更为安全的方式来维护上述一个或多个附加指纹。

指纹技术也可以保护隐私。例如,用来识别指纹2161的算法和/或 机制可能只有通过特别可信的代理才能得到。

指纹2161可有多种形式。例如,在一幅图像中,可以采用一种视 觉不易察觉的方式(至少按正常的肉眼观察者是这样的)将可每N个 像素(这些像素可能布满整幅图象,或该图象的子区域)的颜色进行极 细微的移位通过分析图象便可以破译这些移位(可以利用原始图象, 也可以不用),图象中每一点有无颜色(或灰度)移位实际对应于存贮 的数字信息中一个或多个二进制位“1或0”的变化。这N个像素可 以在顺序上或者是一致的,或者伪随机的(但至少部分地可以由对象制 作者、对象提供者、客户管理员和/或VDE管理员来解释)。

对图象(或移动图象、声音等)的某些其它类型修改也可以产生类 似的效果(也就是说,通过对原始信息的某些修改,将信息以一种不易 察觉的方式存贮),这种修改方式也是可行的。例如,可以对被存贮的 声音信息的频率做某些极其细微的修改,使听众对此一般不易察觉,但 借助适当的工具仍然可以将其读出来。可以对存贮信息的某些特性进行 一些修改,例如对某些采用光学手段存贮的信息在其偏光特性上做一些 细微而又可解释的变化,从而达到与上面相同的效果。也可以采用其它 电子特性、磁特性、和/或光学特性上的变化。

如果保存信息内容所用的文件具有图形格式,例如Microsoft Windows字处理文件,那么这种文件将提供“掩埋”指纹2161的绝好 机会。包含图象和/或声音的信息内容提供了嵌入指纹2161的机会,并 且嵌入的指纹很难被未授权的个人识别出来,这是因为,在没有“未加 指纹”的原件用来比较的情况下,由于通常不知道原件的本来特征,也 由于图象和声音信息中都含有大量的数据(并且这些数据对微小的变化 不是特别敏感),因而在声音频率上所出现的或在一幅或多幅视频图象 上所出现的一次或多次细微变化等本身是难于分辨的。对于经过格式化 的正文文档,特别是那些由图形字处理器(例如Microsoft Windows或 Apple Macintosh字处理器以及它们的DOS和Unix等效物)创建的文 档,通常可以把指纹2161非干扰性地插入到一般对用户不可见的文档 数据表示部分(如标题或其它非显示性数据区域)。

而另外一种类型的指纹特别适用于某些正文文档,这种指纹技术对 给定字体的字符构成加以利用和控制。可以让单个的字符带有略微不同 的视觉构造,这些构造中包含了某些“指纹”信息。给定字符形式的上 述变化通常难以分辨,一部分原因是不同供应商提供的同种字体版本之 间本来就有许多微小的差异,一部分原因是由于这些差异非常小。例 如,在一个较佳实施例中,可以采用诸如Adobe Type Align这样的程 序,这种程序在其现用版本中允许用户采用多种方式修改字体特征。其 过程是,按照用户发出某些指令产生特定的一系列改动,将这些改动施 加到字体或字符上,从而完成了对字体特征数学定义的修改。可以用类 似的方法(作为用户的一种选择)使用信息内容。对其中的某些或全部 字体做修改,并使这些修改虽然在一般情况下细微得很难让用户识别出 来,但仍然为指纹2161提供了适当编码手段。在单个文档中可以使用 给定字符的具有略微差别的各种版本,这样更易于携带与交易有关的字 体指纹信息。

指纹技术的某些其它应用示例可能包括:

1.在软件程序中,选择某些可互换的代码段,这些代码段产生近

乎相同的操作,但是经过分析也可以得出它们之间的区别,而

这些区别则刻画了指纹信息。

2.对于数据库,有选择地对某些字段如日期等进行格式化,使之

以不同方式出现。

3.在游戏程序中,调整背景或改变某些事件的顺序,包括对游戏

元素出现的时间和/或次序安排进行可察觉的或非常细微的修

改,或者对游戏元素的外观进行细微的修改。

执行FINGERPRINT方法2160(如果确实需要执行的话)的时机 一般是在信息内容从信息内容对象300中发布出来的时候。不过,也可 以在分发对象的时候执行该方法以便对之做“标记”,尽管此时信息内 容仍处于被加密形式。例如,基于网络的对象仓库在将某个对象传送给 请求者之前,可以先将指纹2161嵌入到该对象的信息内容中,该指纹 信息可以标识信息内容请求者/最终用户。这样做有助于探测出“欺骗 性”电子设备600,这些设备被用来未经允许地散布信息内容。

DESTROY(销毁)

图59示意了在较佳实施例中有代表性DESTROY方法2180示例 所执行的进程控制步骤流程。DESTROY方法2180通过消除用户访问 对象所需的URT从而取消了用户使用对象的能力。在较佳实施例中, DESTROY方法2180可以首先向审核UDE写入审核信息(处理框 2182,2184)。然后DESTROY方法2180可以调用WRITE和/或 ACCESS方法写某些信息,这些信息将破坏(同时也就销毁)对象的头 和/或其它重要部分(处理框2186)。随后,DESTROY方法2180可 把一个或多个控制结构(如URT)标记为已毁坏的,其过程是通过向 控制结构中写入相应信息(处理框2188,2190)。最后,DESTROY 方法2180将向审核UDE中写入附加审核信息(处理框2192,2194), 然后终止(终止点为2196)。

PANIC(紧急)

图60示意了在较佳实施例中有代表性PANIC方法2200示例所执 行的进程控制步骤流程。当检测到安全性被侵犯的情况时,可以调用 PANIC方法2200。PANIC方法2200可以执行一系列步骤来禁止用户 继续访问目前正在访问的对象,(举例来说)这些步骤包括:拆除正在 用来访问对象的通道,将与该用户和该对象相关的一个或多个控制结构 (如URT)标记为已毁坏的(分别为处理框2206和2208-2210)。由于 控制结构被毁坏,VDE节点需要在用户可以再次访问相同的对象之前 与某个管理员联系,以便获取有效的控制结构。当VDE节点与管理员 联系时,管理员可以请求获取某些必要信息使他相信没有发生过安全性 被侵犯的情况,或者如果确实出现了安全性被侵犯的情况,他可以采取 相应步骤确保不再发生上述侵犯安全性的情况。

METER(计量)

图61示意了在较佳实施例中有代表性METER方法示例所执行的 进程控制步骤流程。尽管前面已经结合图49,50和51介绍了METER 方法,而图61所示的METER方法2220可能是一个在一定程度上更具 代表性的例子。在较佳实施例中,METER方法2220通过访问METER 审核跟踪UDE首先准备一个审核跟踪(处理框2222,2224)。然后 METER方法2220可以从安全数据库中为METER UDE读取DTD(处 理框2226,2228),随后从安全数据库中读取METER UDE(处理框 2230,2232)。接着METER方法2220测试所得到的METER UDE, 以确定该UDE是否已经到期(判定框2234)。在较佳实施例中,每个 METER UDE都可以被标记上一个过期日期。如果当前日期和/或时间 已经过了METER UDE的过期日期(判定框2234的“是”出口),那 么METER方法2220可以在审核记录中记下一个失败情况,并以失败 条件终止(框2236,2238)。

假设METER UDE尚未过期,METER方法2220可以用由(举例 来说)EVENT方法传来的原子元素和事件计数来更新该METER UDE(处理框2239,2240)。然后METER方法2220可以把计量使 用审核记录存入METER审核跟踪UDE中(处理框2242,2244), 随后终止(终止于2246)。

较佳实施例提供的附加安全特征

较佳实施例提供的VDE 100具有足够的安全性,这些安全性有助 于确保在短期的有成效的“强力攻击”前提下VDE 100不能受到侵害; 而且,即使“强力攻击”成功,那么花在其中的时间和代价实际上也要 超过得到的任何价值。另外,VDE 100提供的安全性还对VDE的内部 操作进行相互隔离,这样,成功的“强力攻击”只能侵害被保护信息中 被严格分界的一个子集,而不是整个系统。

下面列出了较佳实施例提供的某些安全性状况和特征:

PPE 650及其所执行进程的安全性

安全数据库610的安全性

PPE 650所执行的加密/解密操作的安全性

密钥管理;加密/解密密钥和共享秘密的安全性

鉴别/外部通信的安全性

安全数据库备份的安全性

VDE内部信息在电子设备600之间的可安全传输性

VDE安全信息的访问许可的安全性

VDE对象300的安全性

VDE安全性的完整性

上述某些安全性状况和考虑在前面已经讨论过。下面将对较佳实施 例安全特性中尚未全面说明的部分进行扩充论述。

密钥和共享秘密的管理

VDE 100使用密钥和共享秘密来提供安全性。较佳实施例提供了下 列的密钥使用特性:

不同的密码系统/密钥类型

安全密钥长度

密钥生成

密钥“卷积”和密钥“衰老”

这几种类型将在下面进行讨论。

A。公开密钥和对称密钥密码系统

将信息进行伪装或变换以隐藏其实质的过程称为加密。加密产生 “密文”。逆向执行加密进程以从密文中恢复信息实质称为“解密”。 密码算法是用于加密和解密的数学函数。

多数现代的密码算法使用“密钥”。“密钥”规定了所要提供的某 一类变换方式。密钥允许使用标准的、公布的和经过测试的密码算法, 同时确保用该算法执行的特定变换是保密的。于是,特定变换的保密性 是取决于密钥的保密性,而不是算法的保密性。

有两种一般形式的基于密钥的算法,较佳实施例PPE 650可以使用 其中任一种或两者。

对称;及

公开密钥(“PK”)

在对称算法中,加密密钥可以从解密密钥中计算出来,反之亦然。 在许多这样的系统中,加密密钥和解密密钥是同一个。该算法也称为“保 密密钥”,“单密钥”或“共用秘密”算法,该算法要求在接收者解密 发送者生成的密文之前,发送者和接收者一致同意使用某个密钥。该密 钥必须保密。对称算法的安全性取决于这个密钥:泄露了该密钥意味着 任何人都可以在这种密码系统中对信息进行加密和解密。参看Schneier 的《Applied Cryptography》第3页。较佳实施例可以使用的某些对称 密钥算法例子包括DES、Skipjack/Clipper,IDEA,RC2和RC4。

在公开密钥密码系统中,加密所用的密钥与解密所用的密钥不同。 而且,利用计算从一个密钥导出另一个密钥是不可行。这些密码系统中 所用的算法称为“公开密钥”,因为两个密钥中的一个密钥可以是公开 的,而这不致威胁另一密钥的安全性。因为这些算法对加密和解密使用 不同的密钥,所以有时也称之为“非对称”密码系统。公开密钥算法的 例子包括RSA,El Gamal和LUC。

较佳实施例PPE 650可以只基于对称密钥密码系统,也可以基于公 开密钥密码系统,或者两者都可。VDE 100不特别要求任何特定加密 算法。较佳实施例提供的体系结构可以支持包括PK和/或保密密钥(非 PK)算法在内的大量算法。在某些情况下,加密/解密算法的选择将取 决于大量的商业决定:如成本、市场需求、与其它商业可用系统的兼容 性、出口法律等等。

尽管较佳实施例不依赖于任何特定类型的密码系统或加密/解密算 法,而优选例则将PK密码系统用于PPE 650之间的安全通信,而将保 密密钥密码系统用于VDE对象300的“批量”加密/解密。使用保密密 钥密码系统(如使用多密钥和多遍的DES实现、Skipjack,RC2或 RC4)进行“批量”加密/解密处理可以提高加密和解密大量信息的效 率,同时加密/解密还使得没有PK功能的PPE可以在各种各样的应用 中对VDE对象300进行处理。在通信中使用PK密码系统有许多优点, 如消除了在建立通信时对秘密共用外部通信密钥的依赖性,允许不依赖 于共用内部秘密的查问/回答过程对PPE 650进行鉴别,而且还支持不 依赖于共用秘密密钥的对大众公开的“鉴定”进程。

某些信息内容提供者可能希望将其信息内容的使用限制于PK实现 中。为满足这种需求,可以将PPE 650中PK功能的加入以及PK功能 的特定性质或类型作为VDE对象300注册过程的一个因素。其方法是 (举例来说)在REGISTER方法中以加载模块的形式加入对这种对象 的要求,而该加载模块将在允许继续注册之前针对特定的或一般的PK 功能对PPE 650进行检查。

尽管VDE100不要求特定的算法,但最好所有PPE 650都可以使 用相同的算法进行批量加密/解密处理。如果用来批量加密VDE对象 300的加密/解密算法未经标准化,那么有可能某些VDE电子设备600 将不能处理所有VDE对象300。如果标准化的批量加密/解密算法不是 完全或部分地用基于硬件的加密/解密机522来实现,而是用软件实现, 那么在PPE 650以及相关电子设备600之间将存在性能上的差异,为 了支持那些未完全或部分地由加密/解密机522实现的算法,PPE 650 中必须有一个实现该算法的部件组。

B.密钥长度

增加密钥的长度可以提高安全性。对密码系统进行“强力进攻”就 需要尝试任何可能的密钥。密钥越长,需要尝试的可能密钥就越多。密 钥长度到了一定值时,“强力进攻”者如果采用现有的计算资源尝试所 有可能的密钥,那么,所花费的时间将是不现实地长。

较佳实施例提供的VDE 100可以支持和使用多种不同的密钥长 度。在较佳实施例中,VDE 100所用密钥的长度取决于用来完成加密/ 解密的算法、所需安全性的级别、以及吞吐率要求。较长的密钥通常要 求更多处理能力以便确保快速的加密/解密响应时间。因此,在(a)安全 性和(b)处理时间和/或资源之间有一个折衷。由于基于硬件的PPE加密 /解密机522的处理速度可能比基于软件的加密/解密更快,因而基于硬 件的方法通常允许使用更长的密钥。

较佳实施例对于PK加密/解密可使用1024位模(密钥)RSA密码 系统实现,对于“批量”加密/解密可使用56位DES。由于标准DES所 提供的56位密钥其长度可能不够,而不能满足至少大多数敏感VDE信息 的安全性需求,因此可以采用多遍运算和多个DES密钥的DES加密过 程以提供更多的安全性。如果对于不同密钥采取多遍运算,那么可以使 DES的安全性大大增强。例如,对于2个或3个单独的密钥进行3遍运 算将更加提高安全性,因为这样做实际上是增加了密钥的长度。RC2和 RC4(除DES的另外一些选择)可以输出长至40位的密钥,但为了提供 高至DES级的安全性,密钥的长度可能还要更长。NSA Skipjack提供的 80位密钥长度可能比较适于多数VDE安全性的需要。

如果具有向PPE 650中动态下载代码和其它信息的能力,那么即使 已经使用了相当多的VDE电子设备600,也可以动态地调整和修改密 钥的长度。如果VDE管理员能够与两个PPE 650进行通信,就可能有 效地实现上述的事后动态改变,并且成本高效。可以将新的或修改了的 密码系统下载到现有PPE 650中,以替换或补充PPE中已有的密码系 统清单,同时可以使较旧的PPE维持与较新的PPE和/或新发布的VDE 对象300及其它受VDE保护的信息之间的兼容性。例如,可以在任何 时间将软件加密/解密算法下载到PPE 650之中,通过提供不同密钥长 度的能力,从而补充了加密/解密机522基于硬件的功能。为提供更大 的灵活性,可以配置PPE加密/解密机522,使之能够预先处理多遍运 算和/或变量和/或更长的密钥长度。另外,最好可以使PPE 650具有内 部产生较长PK密钥的能力。

C.密钥生成

较佳实施例提供的密钥生成技术使PPE 650能够产生只有它自己   “知道”的密钥或其它信息。

被加密信息的安全性取决于对之加密所用密钥的安全性。如果用一 个弱密码特性的进程来生成密钥,那么整个安全性就受到削弱。好的密 钥是随机的位串,从而密钥空间中的任何可能密钥机会均等。因此,密 钥通常必须由随机程度较为可靠的数据源产生,例如,可以用该数据源 为一个具有密码安全特性的伪随机数发生器提供种子。这种密钥发生器 的例子在Schneier的《Applied Cryptography》(John Wiley和Sons, 1994)第15章中作了介绍。如果密钥的生成是在给定的PPE 650之外进 行的(如由另一个PPE 650生成),那么在使用这些密钥之前必须对之 进行校验以确保其来源是可信的。可以用“鉴定”过程来校验这些密钥。

较佳实施例PPE 650提供了密钥的自动生成。例如,为保护基于 PK的外部通信或为其它原因,较佳实施例PPE 650可以生成其自身的 公开/私有密钥对。PPE 650还可以在初始化过程之中或之后生成其自 身的对称密钥以用于各种用途。由于PPE 650提供了安全的环境,较 佳实施例大多数密钥产生过程都可以在PPE中进行(可能的例外是: 在制造或安装时使用的PPE密钥不在PPE中进行,PPE使用这些密钥 对初始下载得到的消息进行鉴别)。

好的密钥生成过程取决于随机性。前面结合图9讨论过,较佳实施 例PPE 650带有一个基于硬件的随机数发生器542,该随机数发生器 542具有产生可靠随机数所需的特征。这些随机数可以用来向具有强密 码特性的随机数发生器(如运行于输出反馈模式的DES)“提供种子”, 以便从随机数种子产生附加的密钥数值。在较佳实施例中,随机数发生 器542可以含有一个“噪声二极管”(noise diode)或其它基于物理 的随机数值发生源(如放射性衰变过程)。

如果PPE 650中没有随机数发生器542,那么SPE 503可以使用一 个密码算法(如运行于输出反馈模式的DES)从保护于SPE之中的一 个保密数值来导出一个伪随机数序列。虽然这些数值是伪随机的而不是 真正随机的,但由于它们是由具有密码特性的算法导出,并且导出过程 所用的数值对于SPE 503的外界来说是保密的,所以这种密钥可以满足 某些应用的要求。

在包含HPE 655而不含SPE 503的实施例中,随机数发生器565 软件可以从无法预知的外部物理事件中导出可靠的随机数(如磁盘I/O 结束的精密定时,或用户敲击所接键盘612的精密定时)。

某些传统的技术基于上述“种子”来产生PK或非PK密钥,这些 技术也是可以采用的。因此,如果性能和制造成本允许的话,较佳实施 例中的PPE 650可以基于这种随机或伪随机“种子”数值产生其自身的 公开/私有密钥。可以在产生上述密钥对的PPE 650和希望与该PPE 650进行通信的其它PPE之间用该密钥对进行外部通信。例如,密钥生 成方PPE 650可以将该密钥对的公开密钥向其它PPE公开。这样就可 以使其它PPE 650使用该公开密钥加密某些信息,而这些信息只能由密 钥生成方PPE(密钥生成方PPE是“知道”对应“私有密钥”的唯一 PPE)解密。类似地,密钥生成方PPE可以用其私有密钥加密某些信 息,而当这些信息被带有密钥生成方PPE之公开密钥的其它PPE成功 解密后,这些PPE可以由此断定这些信息是密钥生成方PPE送来的。

在某一PPE 650使用由另一PPE 650生成的公开密钥之前,必须 使用公开密钥验证进程为该公开密钥提供鉴别证明。公开密钥的证明表 示某人的公开密钥经过了某个值得信赖实体的“签字“,这些实体的例 子包括可信的PPE 650或VDE管理员。当虚假的PPE试图说服某个 PPE 650使它相信它正与一个真实PPE通信时(例如该哄骗者实际上 是某个企图侵犯PPE 650安全性的人),证明就可以用来阻挠其企图得 逞。在较佳实施例中,一个或多个管理员可以具有验证权威。通过“签 字”由某个PPE生成的公开密钥以及与该PPE和/或对应VDE电子设 备600相关的信息(如站点ID、用户ID、过期日期、名字、地址、 等等),VDE管理员的验证权威可以证明有关PPE和/或VDE电子设 备的信息是正确的,并且该公开密钥属于这个特定的VDE节点。

证明数字签名的可信度方面意义重大,在公开密钥鉴别通信协议方 面(下面将要讨论)也发挥了重要作用。在较佳实施例中,这些证明可 以含有有关特定VDE电子设备600(例如不管该电子设备600是否包 含基于硬件的SPE 503或不甚可信的软件仿真类型HPE 655)安全性 可信度/安全性级别的信息,这些信息可用来避免将高度保密的信息传 送给不甚可信/安全的VDE设备。

证明的另一个重要作用是它可以用来解除欺诈性用户和/或站点的 权利。通过在证明中存入一个站点标识和/或用户ID,PPE可以在鉴 别过程中对这些信息进行检验。例如,如果某个VDE管理员或票据交 换所碰到某张证明,并发现其中的ID(或其它信息)满足了某些条件 (例如在列有被解除权利和/或有嫌疑的用户和/或站点的名单中发现了 这些信息),他们可以根据上述条件有选择采取某些措施,例如拒绝通 信,传送禁止信息,将该情况通知用户,等等。证明通常还带有一个 过期日期,这是为了保证该证明必须定期更换,从而(举例来说)确保 地点和/或用户必须处于与VDE管理员的接触之中,并允许证明密钥定 期更换。可以向站点和/或用户发放基于不同密钥的一个以上的证明, 这样,如果某个给定证明密钥受到破坏,还可以使用一个或多个“备份” 证明。如果某个证明密钥受到破坏,VDE管理员可以拒绝根据由该密 钥产生的证明进行鉴别,并在利用“备份”证明进行鉴别之后发送一个 信号,该信号将作废与VDE参与者继续交互的过程中对该受损密钥的 所有使用,以及与该密钥相关的所有证明。在出现上述密钥破坏情况以 后,可能会生成一个或多个“备份”证明和密钥,并将之发送给可信的 站点/用户。

如果可以有多个证明,那么某些证明可以作为备份保留着。作为另 一种选择或作为一种补充方式,在给定的鉴别过程中,(例如通过使用 RNG 542)可以从一组证明中挑选一个证明,这样可以减小使用与某 个受损证明密钥相关的证明的可能性。还有一种可选方案,在一个给定 的鉴别过程中,可以使用一个或多个证明。

为了防止验证算法遭到泄露的可能(例如,由于算法所基于的数学 基础可能会出现不可预测的发展),对于不同的证明可以使用不同的算 法,这些算法基于了不同的数学基础。

另一种可以用来减小泄露可能性的技术是保密证明所基于的“公 开”值(保存在PPE 650的受保护存贮设备中),因而可以禁止攻击者 访问该数值,否则该数值将对其进攻过程产生帮助。尽管这些数值通常 是“公开”的,但只有那些实际确认证明的部件(即PPE 650)才有必 要知道这些数值。

在较佳实施例中,PPE 650可以产生其自己的证明,或者可以从外 部获得证明,例如可以从一个具有验证权威的VDE管理员处获取。不 管上述数字证明在何处生成,它们最终要被VDE管理员验证机构所注 册,以便其它VDE电子设备600可以访问(并信任)该公开密钥。例 如,PPE 650可以将其公开密钥和其它信息传送到一个验证机构,然后 该验证机构使用其私有密钥将该公开密钥和其它信息进行加密。其它装 置600可以信任该“证明”,因为使用验证机构的公开密钥可以解密该 “证明”,这就可以鉴别出该“证明”是真实的。再举一个例子,验证 机构可以加密它从密钥生成方PPE 650收到的公开密钥,并使用该公开 密钥加密验证机构的私有密钥。然后验证机构可以将该加密的信息传回 密钥生成方PPE 650。之后,密钥生成方PPE 650可以使用验证机构 的私有密钥来内部产生一个数字证明,在此之后它将销毁验证机构私有 密钥的拷贝。于是,根据需要,PPE 650可以将其数字证明发送给VDE 管理员,并保存在其证明存放库中(或任何地方)。也可以利用外部的 密钥对发生器或证明发生器来实现验证进程,但是由于这种安全措施的 本质特征,其安全性可能要打些折扣。在这种情况下,PPE 650中需要 使用一个制造密钥,以限制对涉及到的其它密钥的暴露。

PPE 650可能需要使用多个证明。例如,可能需要用一个证明使用 户相信某个PPE使真实的,同时它还用来标识PPE。另一方面对于PPE 650的各个用户来说可能还需要另外的证明。这些证明可以既含有用户 信息又含有站点信息,或者也可以只含有用户信息。通常,验证机关在 为给定用户创建证明之前要首先得到有效的站点证明。用户为得到证明 可以各自请求获取各自的公开密钥/私有密钥。VDE管理员、票据交换 所以及其它参与者通常可以在通信中或其它交互中要求对站点(PPE 650)和用户两者进行鉴定。上述密钥生成进程以及PPE 650的验证进 程也适用于产生站点/用户证明或用户证明。

上述的证明还可以用来验证加载模块1100的来历和/或管理对象的 真实性。上述的安全性技术和保险技术可以用来减小任何上述证明(所 适用的证明不限于用于识别VDE电子设备600的证明)遭到泄露的可 能性。

D.密钥衰老和卷积

在较佳实施例中,PPE 650能够产生在多个PPE 650之间共用的 保密密钥和其它信息。在较佳实施例中,这些保密密钥和其它信息在多 个PPE 650之间共用并不要求这些共用的保密信息需要明确地在电子 设备之间传递。更具体地说,当收到了在多个VDE电子设备600之间 共用的种子信息时,PPE 650使用了一种称为“密钥卷积”的技术根据 确定的进程导出密钥。由于上述多个电子设备600“知道”“种子”信 息是什么,并且还“知道”如何根据该信息产生密钥的确定进程,所以 每个电子设备都可以独立地产生“真正的密钥”。这种方式一方面可以 使多个VDE电子设备600共用一个共用的保密密钥,另一方面还避免 了通过非安全通道传送密钥而使其安全性受到潜在危害。

任何密钥都不能无限期地使用。密钥的使用时间越长,密钥遭到泄 露的机会可能越大,如果密钥遭到泄露以后依然还在用来保护新信息的 话,那么可能造成的损失就越大。密钥的使用时间越长,它保护的信息 就可能越多,因此,某些人花费必要的精力破解了该密钥将可能得到越 多的报酬。而且,如果密钥的使用时间较长,那么将会有更多的密文落 入攻击者手中,而这些攻击者则可以试图根据密文来破解密钥。参看 Schneier的150-151页。较佳实施例中的密钥卷积技术则提供了一种手 段,以定期地或根据其它标准有效地改变存贮在安全数据库610中的密 钥,同时又简化了围绕密钥变化而存在的密钥管理事宜。另外,密钥卷 积可以用来产生“逐渐衰老密钥”(将在后面介绍),以支持密钥使用 和/或确认中的“过期日期”功能。

图62示意了较佳实施例中密钥卷积的实现示例。密钥卷积的执行 过程是:使用站点标识2821和RTC 528的高位这两者的组合,产生唯 一于站点的数值“V”,而该数值“V”则是依赖于时间的,并且依 赖的时间单位较大(如小时或天)。加密进程2871可以利用上述数值 “V”将卷积种子数值2861变换为“当前卷积密钥”2862。种子数 值2861可以是一个在全局范围内或在组范围内共用的保密数值,它可 以存放在保密密钥存储器中(如存放在PPE 650中受保护的存贮器 内)。可以在制造过程中设置种子数值2861,并且VDE管理员可以不 定期地将之更新。不同集合的对象300可以有大量的种子数值2861与 之对应。

当前卷积密钥2862表示对站点标识2821和当前时间的编码。该变 换得来的数值2862可以用作另一个加密进程2872的密钥,该进程2872 将存放在PERC 808中的密钥810变换成用于对象信息内容的真正私有 体密钥2863。

处理框2861、2871执行的“卷积函数”可以(举例来说)是一个 单向函数,该函数在信息内容制作者的站点和信息内容用户的站点都可 以独立地执行。如果信息内容用户所使用的卷积函数和输入数值(如时 间和/或站点和/或其它信息)与信息内容制作者所使用的不是精确相同 的话,那么两者执行卷积函数所得到的结果将有差异。如果信息内容制 作者将其卷积结果作为对称密钥用在了加密过程中,那么信息内容用户 将无法解密,除非该信息内容用户的卷积结果与信息内容制作者的相 同。

密钥卷积函数输入中的时间分量可以从RTC 528获取(要注意避 免VDE电子设备之间在RTC同步上的微小差异引起不同的电子设备 使用不同的时间输入分量)。可以用RTC 582输出的不同部分来提供 具有不同有效期的密钥,或者可以在该进程中加入一定容差以便尝试若 干不同的密钥数值。例如,可以调整“时间粒度”参数,以便产生适当 的时间容差,该时间容差单位可以是天、星期、或其它任意时间段。作 为一个例子,如果“时间粒度”被设为2天,而容差为±2天,那么卷 积算法就可以尝试三种实际时间输入数值。可以尝试生成的每个密钥值 以便确定实际使用的是这些可能密钥中的哪一个。在本例中,密钥将只 有4天的寿命。

图63示意了如何选择适当的卷积输出密钥以补偿用户RTC 528和 制作者RTC 528之间的偏斜。通过使用不同的输入数值2881(a-e)可以 产生一个卷积密钥2862(a-e)序列,每一个输入数值2881(a-e)都来自于 站点标识2881和RTC 528与一个差值(如-2天、-1天、无差值、+1 天、+2天)的和或差。卷积步骤2871(a-e)用来产生密钥2862(a-e)序列。

同时,制作者站点可以基于其RTC 258的值(要适当调整该值以 便使其对应于密钥的预计有效期)使用卷积步骤2871(z)产生卷积输出 密钥2862(z),该密钥2862(z)于是可以用来生成对象PERC 808中的信 息内容密钥2863。为解密对象信息内容,用户站点可以尝试其卷积密 钥2862(a-e)序列中的每一密钥以便生成主信息内容密钥810。此时, 只要制作者站点的RTC 538处于用户站点RTC 528的可接受的容差范 围之内,那么密钥2862(a-e)中的某一个将与密钥2862(z)相匹配,解密 过程将成功。在本例中,匹配取决于解密输出的有效性,而不取决于 密钥之间的直接对比。

上面所讲的密钥卷积不是一定要将站点标识和时间两者作为一个 值来使用。某些密钥可以根据当前实际时间来生成,某些密钥则可以根 据站点标识来产生,而另外一些密钥则可以根据实际时间和站点标识两 者来产生。

密钥卷积可以用来提供“时间衰老”密钥。这种“时间衰老”密钥 提供一种自动机制支持密钥的过期,并允许用“新”密钥替换过期密钥。 它们给予用户受时间限制的权利,从而使用户受时间限制地使用对象或 对象的部分,而这不需要用户的重新注册,同时又保障了信息内容制作 者或管理员的重要控制权。如果安全数据库610安全性足够的话,通过 检查与密钥相关的过期日期/时间可以实现相同的功能,不过这需要使 用更多的存贮空间来存放各个密钥或密钥组。

在较佳实施例中,PERC 808可以包含一个过期日期/时间,过了 此日期/时间以后,将不再有权访问与该过期日期/时间相对应的受保护 VDE信息。作为另一种选择或作为一种补充方案,当对电子设备600 或一个或多个VDE对象300的有关使用过了一段时间之后,PERC 808可以强迫用户将审核历史信息发送给票据交换所、分发者、客户管 理员、或对象制作者,以便重新获得或维持使用对象的权利。为强制执 行上述基于时间的约束,PERC 808可以检查/加强某些参数,而这些 参数则限制了密钥的使用和/或有权使用期的已消耗部分。“时间衰老” 密钥可以用来强制或加强对访问受VDE保护信息的上述基于时间的控 制。

“时间衰老”密钥可以用来在有限的时间段内加密和解密一个信息 集合,因而它需要用户重新注册、或收到新的许可,或传送审核信息。 如果用户不这样的话,他将得不到需要使用的新密钥。时间衰老密钥还 可以用来提高系统的安全性,因为根据时间衰老标准一个或多个密钥将 被自动替换,因而破译安全数据库610及定位一个或多个密钥可能没有 实际价值。使用时间衰老密钥的另一个优点是它们可以被动态地产生, 因而不再需要将解密密钥存放在二级和/或安全存贮器中。

在较佳实施例中,“时间衰老密钥”并不是可以用来执行加密/解 密的“真实密钥”,而是一段信息,PPE 650结合其它信息可以使用该 信息生成一个“真实密钥”。,此处的其它信息可以是基于时间的, 也可以是基于PPE 650特定标识的,或者基于两者的。由于“真实密钥” 始终不暴露,并且总是在PPE 650安全环境中产生,同时还由于需要多 个安全PPE来生成该“真实密钥”,所以VDE 100使用“时间衰老” 密钥可以大大增强系统的安全性和灵活性。

在较佳实施例中,“老化”密钥的过程包括产生一个时间衰老的“真 实密钥”,该时间衰老的真实密钥是下面参数的函数:(a)一个“真实 密钥”;及(b)某些其它信息(如实际时间参数、站点ID参数等等)。 该信息被合并/变换(如采用上述的“密钥卷积”技术),以恢复或产 生“真实密钥”。由于“真实密钥”可被恢复,从而避免将“真实密钥” 保存在PERC 808中,并允许不同的密钥可以对应于PERC 808中的相 同信息。由于没有将“真实密钥”保存在PERC 808中,所以无法通过 访问PERC而访问受“真实密钥”保护的信息。因此,“时间衰老” 密钥使信息内容制作者/提供者可以在信息访问中加入限制,从某种意 义上来说,该限制不属于或辅助了由一个或多个PERC 808提供的许 可。例如,“时间衰老”密钥可以将额外的时间限制强加在访问某些受 保护信息的行为中,其中,上述额外时间限制不依赖于PERC 808包含 的任何信息或许可,而是基于一个或多个时间和/或站点标识数值。

举一个例子,可以用时间衰老解密密钥使电子出版报纸的“尝试订 阅”购买者在一个星期之内观看报纸的各版,而在一个星期之后,解密 密钥将不再有效。在本例中,用户为了观看在那一星期以外的版,需要 购买一个或多个新的PERC 808,或接收相应信息以更新现有的一个或 多个许可记录。对上述其它版的访问将受到全新定价结构的控制(如采 用“常规”订购费用,而不是免费,或最低的“试阅”订购费)。

在较佳实施例中,可以采用单向或可逆的“密钥卷积”函数生成基 于时间衰老的“真实密钥”。该卷积函数的输入参数可以包括:所提供 的时间衰老密钥;特定于用户和/或站点的信息;(如果有RTC 528的 话)RTC 528时间值的指定部分(例如一定数目的高位信息)或采用 预定方法从该时间值导出的数值;以及一个块标识符或记录标识符,它 们用于确保各个时间衰老密钥都是唯一的。“密钥卷积”函数的输出可 以是一个“真实密钥”,它可以一直用来解密直到其作废为止。如果 使用时间衰老密钥和一个不适当的时间值作为输入而运行该函数,通常 会产生一个无法执行解密的无用密钥。

当经过的、绝对的或相对的时间(例如,该时间基于从某个时钟如 RTC 528等得到的实际时间)达到某些特定数值的时候,将会触发新的 时间衰老密钥的产生。在该时刻,卷积过程将产生错误的密钥,而解密 过程将会失败,直到时间衰老密钥被更新为止。根据时间或其它输入变 量,可以改变用来确定何时产生新“时间衰老密钥”的条件本身,以便 提供另一层次的安全性。因此,卷积函数和/或调用该函数的事件可以 改变、移位或使用变化的量作为其参数。

下面举一个使用时间衰老密钥的例子。

1)制作者生成一个“真实”密钥,并用它加密信息内容。

2)制作者执行“逆向卷积”过程生成一个“时间衰老密钥”,该

  “逆向卷积”过程使用的输入参数有:

  a)上述“真实”密钥

  b)一个时间参数(如RTC 528时间的高有效位)

  c)可选的其他信息(如站点标识和/或用户标识)

3)制作者向信息内容用户分发该“时间衰老密钥”(如果信息内

  容用户的PPE 650不在使用她已得到的卷积算法,那么制作者

  可能还需要分发卷积算法和/或参数)。

4)信息内容用户的PPE 650将下列信息合并:

  a)“时间衰老”密钥

  b)时间的高有效位

  c)所需的其他信息(与2c相同)

信息内容用户的PPE 650执行卷积函数(即上面步骤(2)中的“逆 向卷积”算法之逆)以便得到“真实”密钥。如果所提供的的时间和/ 或其它信息是“错误”的,该卷积过程将无法产生“真实”密钥,于是 信息内容将无法得到解密。

与VDE对象300或其它项相关的密钥块既可以是普通密钥块,也 可以是时间衰老密钥块,这可以由对象制作者在对象配置进程中指定, 或者如果合适的话由分发者或客户管理员来指定。

“时间衰老”密钥还可以用作协议的一部分以提供PPE 650之间的 安全通信。例如,PPE 650在通信时可以不用采用“真实”密钥,相反, VDE 100可以只向PPE提供“部分”通信密钥。(举例来说)可以在 初始化时将这些“部分”密钥提供给PPE 650。可以用一个预定的算法 产生“真实”密钥以便在安全通信中执行信息加密/解密。该预定算法 可以在所有PPE 650中采用同种方式“老化”上述密钥,或者可以要求 PPE 650在某些预定的时间与VDE管理员联系,这样,就可以将一套 新的部分通信密钥下载到PPE 650中。如果PPE 650不生成“新的” 部分密钥,或者是获取“新的”部分密钥,那么它将被禁止与其它PPE 通信(可以提供另外一个“失效保险”密钥以确保该PPE可以与VDE 管理员通信以便进行重新初始化)。PPE 650中可以维护两套部分密 钥,以便在使这两套密钥在所有VDE设备600之间有固定的重叠使用 时间。可以定期地更新两套部分密钥中较老的那一套。

在较佳实施例中还可以对下列附加类型的密钥(这些密钥在后面将 要讲到)进行“老化”:

单个消息密钥(即用于特定消息的密钥)

管理、静止和移动对象共用密钥

安全数据库密钥,及

私有体密钥和信息内容密钥

初始安装过程密钥管理

图64示意了在创建PPE 650的过程中全局范围内或“主”密钥流 程。在较佳实施例中,PPE 650包含一个安全的、非易失性密钥存贮设 备2802(如SPU 500的非易失性RAM 534B或由HPE 655维护的安全 存贮设备),该存贮设备2802由厂家生成的密钥和PPE本身生成的密 钥进行初始化。

生产厂家拥有一个或多个由公开密钥2871/私有密钥2812组成的 密钥对(“拥有”意为知道该密钥,并保护该密钥不被泄露或修改), 这些密钥对用来批准和确认站点标识证明2821。对每个站点,生产厂 家都生成一个站点标识2821和站点特征2822的列表。另外,生产厂家 还拥有公开密钥2813、2814,用以确认加载模块和初始化代码下载。 为了加强安全性,可以采用大量的上述证明密钥,而且可以只采用每种 上述密钥的一个子集对各个PPE 650进行初始化。

作为初始化进程的一部分,PPE 650可以内部生成一对或多对特 定于站点的公开密钥2815和私有密钥2816,或可以由生产厂家生成和 提供这些密钥。PPE 650使用这些密钥来证实其身份。同样地,对应于 本站点的特定站点数据库密钥2817被产生出来,同时,如果需要的话 (即如果随机数发生器542不可用的话),随机初始化种子2818将被 产生。

初始化过程可以首先生成站点ID 2821和特征2822,以及由站点 公开密钥2815/私有密钥2816组成的密钥对。这些数值接着被合并,并 可以被用来产生一个或多个站点身份证明2823。站点身份证明2823可 以由公开密钥生成进程2804产生,它可以被存放在PPE的安全密钥存 贮设备2802中,以及存放在生产厂家的VDE站点证明数据库2803中。

验证进程2804可以由生产厂家执行,也可以由PPE 650内部执行。 如果由PPE 650执行,那么PPE将暂时接收身份验证私有密钥2812, 生成证明2823,将该证明保存在本地密钥存贮设备2802中,同时将之 传送给生产厂家。此后,PPE 650必须删除它保存的身份验证保密密钥 2812拷贝。

接着,初始化过程可以要求PPE 650或生产厂家生成特定于站点的 密钥2817和特定于站点的种子数值2818,这些生成的数值将被存放在 密钥存贮设备2802中。另外,生产厂家可以提供下载证明密钥2814和 加载模块证明密钥2813,这些密钥被保存在密钥存贮设备2802中。 PPE 650可以使用这些密钥对与外部实体间的所有进一步通信进行确 认。

此时,通过下载经过加载模块密钥2813和下载密钥2814验证的信 息,可以用可执行码和数据进一步初始化PPE 650。在较佳实施例中, 上述密钥可以用来数字签名要加载进PPE 650的数据,保证其有效性, 并且可以使用附加的密钥对这些数据进行加密,以防止其受到泄露,而 这些附加密钥则采用特定于站点的公开密钥2815进行了加密。

安装和更新密钥管理

图65示意了进一步的密钥安装过程,该安装过程或者由生产厂家 执行,或者由VDE管理员的后续更新过程完成。生产厂家或管理员可 为下列密钥设置初始值或新值,这些密钥包括:私有头密钥2831、外 部通信密钥2832、管理对象密钥2833或其它共用密钥2834。这些密 钥可以是全局性的,如同全局性证明密钥2811、2813和2814那样, 或者其使用范围可以只限于VDE实例的某个规定组中。

为执行该安装过程,安装者首先检索到目的地站点的身份证明 2823,然后从中抽取出站点公开密钥2815。加密进程2841可以使用 这些密钥以保护被安装的密钥。然后被安装的密钥被传送到目的地站点 的PPE 650内部。在PPE 650内部,解密进程2842可以使用站点私有 密钥2816解密传送来的信息。然后PPE 650将被安装的或被更新的密 钥存放在其密钥存贮设备2802中。

特定于对象的密钥使用

图66和67示意了在保护与VDE对象300相关的数据和控制信息 时,密钥的使用。

图66示意了静止信息内容对象850的使用,该静止信息内容对象 850的控制信息来自管理对象870。这些对象可以由PPE 650接收(例 如,可以通过网络从对象仓库728中检索这些对象,也可以从本地存贮 设备中检索这些对象)。管理对象解密进程2843可以使用私有头密钥 2815解密管理对象870,于是检索到PERC 808,而PERC 808则控制 对信息内容对象850的访问。可以从该PERC 808中抽取出私有体密钥 810,交由信息内容解密进程2845使用,使信息内容对PPE 650外部 可用。另外,加密进程2844可以使用数据库密钥2817对PERC进行加 密,准备将其保存在安全数据库610中PPE 650的外部。在对信息内容 对象850的后续访问中,可以从该安全数据库610中检索出PERC 808,用数据库密钥2817对之解密,然后就可以直接使用,而不用从 管理对象870中抽取出PERC 808。

图67示意了有关移动对象860的类似进程。图66和67的主要区 别在于PERC 808是直接存放在移动对象860中,因此,可以在解密进 程2843之后直接使用PERC 808以产生私有头密钥2831。该私有头密 钥2831用来处理移动对象860中的信息内容。

秘密密钥的变型

图64至67示意了公开密钥的较佳实施例,但它们也可以帮助理解 秘密密钥的处理过程。在秘密密钥的实施例中,验证过程和公开密钥加 密/解密进程由私有密钥加密过程代替,并且公开密钥/私有密钥对由单 独的秘密密钥代替,这些秘密密钥在PPE 650实例和其它团体(如加载 模块提供者、PPE生产厂家)之间共用。另外,在秘密密钥实施例中, 证明生成进程2804没有被执行,而且不存在站点身份证明2823或VDE 证明数据库2803。

密钥类型

下面给出了密钥类型的详细描述,进一步解释了秘密密钥实施例。 这并不是一个完整描述。较佳实施例PPE 650可以为不同的用途而使用 不同类型的密钥和/或不同的“共享秘密信息”。某些密钥类型适用于 使用公开密钥/秘密密钥实现中,另一些密钥则适用于只使用秘密密钥 的实现中,还有一些密钥则两种实现皆可适用。下表列出了较佳实施例 中使用的各种密钥和“共享秘密信息”的例子,并说明了这些信息的使 用场合和存放地点。 密钥/秘密信息类型 在PK或非PK中使用 存放地点示例 主密钥(可以包括上述 的某些特定密钥) 两者皆可 PPE 生产厂家设备中 VDE管理员 制造密钥 两者皆可(PK可选) PPE(在PK情况下) 生产厂家设备中 证明密钥对 PK PPE 证明存放库 公开/私有密钥对 PK PPE 证明存放库(仅限于共 开密钥) 初始秘密密钥 非PK PPE PPE制造标识 非PK PPE 站点标识、共用代码、 共用密钥以及共享秘 密信息 两者 PPE 下载授权密钥 两者皆可 PPE VDE管理员 外部通信密钥和其它 信息 两者皆可 PPE 安全数据库 管理对象密钥 两者皆可 许可记录 静止对象密钥 两者皆可 许可记录 移动对象共用密钥 两者皆可 许可记录 安全数据库密钥 两者皆可 PPE 私有体密钥 两者皆可 安全数据库 某些对象 信息内容密钥 两者皆可 安全数据库 某些对象 授权共享秘密信息 两者皆可 许可记录 安全数据库备份密钥 两者皆可 PPE 安全数据库

主密钥

“主”密钥是用来加密其它密钥的密钥。可以在PPE 650中提供 一个初始密钥或“主”密钥以便以安全方式传递其它密钥。在PPE 650 的初始化过程中,某些代码和共用密钥下载到PPE中。由于这些代码 包含安全卷积算法和/或系数,因而它们类似于“主密钥”。同时也可 以把共用密钥看成是“主密钥”。

如果用公开密钥密码系统作为与PPE 650进行外部通信的基 础,那么在PPE公开密钥对验证过程中需要使用一个主密钥。该主 密钥可以是(举例来说)生产厂家或VDE管理员用来建立数字证明 (被加密的公开密钥或PEP的其它信息)的一个私有密钥。也可以 是VDE管理员对证明存放库中的项目进行加密所用的一个私有密 钥。一旦出现验证过程,PPE就可以使用它们的证明在互相之间建 立外部通信。

如果用共用秘密密钥作为外部通信的基础,那么为进行PPE 650 的初始化,需要使用一个初始秘密密钥建立外部通信。由于该初始秘密 密钥用来加密其它密钥,所以它是一个“主密钥”。在PPE初始化进 程中,可以下载一组共用部分外部通信密钥(参看前面的叙述),这些 密钥可以用来建立后续的外部PPE通信。

制造密钥

制造密钥用于制造PPE过程中,以防止在初始化时下载到PPE中 的、特定于PPE的密钥信息被生产人员获知。例如,作为制造设备一 部分而运行的PPE 650可以产生某些信息,这些信息需要下载到正在进 行初始化的PPE中。在PPE 650之间传送这些信息时,必须要对这些 信息进行加密以保证其机密性,否则生产人员将会读取这些信息。制造 密钥则用来保护上述信息。制造密钥可以用来保护下载到PPE中的各 种其它密钥,例如:验证私有密钥、PPE公开/私有密钥对、以及/或者 其它密钥如特定于PPE的共用秘密密钥。由于制造密钥用来加密其它 密钥,所以它是“主密钥”。

制造密钥可以基于公开密钥,也可以基于共用秘密信息。一旦下载 了信息,那么当前已经初始化了的PPE 650可以丢弃(或简单地不使 用)制造密钥。可以在制造时将制造密钥硬接线到PPE 650中,或者将 它作为PPE的第一个密钥传送给PPE,然后在以后不再用的时候将之 丢弃。有一点在前面的表中已经指出并且本文也进行了说明,即:如果 PPE内含有PK功能,那么就不需要制造密钥。

验证密钥对

验证密钥对可以用来作为PPE 650和VDE电子设备600“验证” 进程的一部分。在较佳实施例中,这一验证进程可用来允许VDE电子 设备提出一个或多个证明它(或其密钥)是可信的“证明”。如上所述, PPE 650可以使用该“验证”进程来“证明”该PPE 650是一个可信的 VDE PPE,该PPE 650具有一定的安全级别以及功能组(如它是基于 硬件的,而不是仅仅基于软件的),等等。简而言之,上述“验证”过 程可能涉及的处理是采用验证密钥对中的一个证明私有密钥对包含另 一个VDE节点公开密钥的信息进行加密。验证密钥对中的私有密钥最 好用来生成一个PPE证明。它用来加密PPE的一个公开密钥。PPE 证明可以存放在PPE中,也可以存放在证明存放库。

根据所选鉴别技术,验证密钥对的公开密钥和私有密钥可能需要得 到保护。在较佳实施例中,通过在各PPE间分发验证公开密钥,使得 PPE可以在作为验证过程一个方面的证明解密过程中利用这些密钥。由 于在较佳实施例中,上述公开密钥是在PPE 650内部使用,所以该公开 密钥没有必要以明文形式投入使用,并且无论如何,维护该密钥的完整 性并且在传送时保证其完整性都是相当重要的(例如,在初始化过程中 和/或由VDE管理员更新的过程中都需要传送给密钥)。如果验证公开 密钥是保密的(即只有在PPE 650内部才可以得到其明文形式),那么 将会使对安全性的攻击行为变得困难得多。验证密钥对的私有密钥必须 是保密的,并且只能由验证机构存放该密钥(即不能分发该密钥)。

在较佳实施例中,为了能够使不同的安装设备具有不同级别/可信 程度/安全性,可以使用不同验证密钥对(如可以使用一些验证密钥来 验证HPE 655,而使用另一些不同的验证密钥来验证SPE 503)。

PPE公开/私有密钥对

在较佳实施例中,每个PPE 650都拥有自己唯一的“设备”(和/ 或用户)公开/私有密钥对。该密钥对中的私有密钥最好在PPE内部产 生而绝不以任何形式暴露于PEP之外。因此,在较佳实施例中,PPE 650可以提供有某个内部功能以便内部地产生密钥对。如果PPE内部地 产生其自身的公开密码系统密钥对,那么上述的制造密钥可能就不再需 要了。根据需要而且更考虑到成本问题,可以只在制造PPE 650的时候 才暴露密钥对,并且当时可以使用制造密钥对之进行保护。允许PPE 650内部地产生其自身的公开密钥对可以使该密钥对得到隐藏,但是在 某些应用中,由于将公开密钥对发生器放到PPE 650中的成本较高,上 述做法可能得不偿失。

初始秘密密钥

一个只基于秘密密钥的PPE 650可以将初始秘密密钥用作一个主 密钥,以保护在初始化过程中下载到PPE中的信息。它由PPE 650生 成,从PPE发送到用制造密钥加密的安全制造数据库中。作为响应, 安全数据库发回唯一的PPE制造ID,该PPE制造ID由上述初始秘密 密钥加密。

基于初始秘密密钥在PPE初始化过程中所起的特殊作用,该初始 化秘密密钥可能比用于“标准”加密的密钥长得多。由于由此带来的解 密开销仅在初始化进程中出现,因而采用该密钥的选定部分通过解密硬 件进行多遍处理还是可以接受的。

PPE制造ID

PPE制造ID不是一个“密钥”,但它确实满足“共享秘密信息” 的典型定义。PPE制造ID最好唯一地标识PPE 650,并且可以由安全 数据库610用来在PPE初始化进程中确定PPE的初始秘密密钥。

站点ID、共享代码、共用密钥以及共享秘密信息

VDE站点ID、共享代码、共用密钥以及共享秘密信息最好或者在 PPE初始化进程中下载到PPE 650中,或者在PPE初始化进程中由PPE 作为该进程的一部分内部产生。在较佳实施例中,多数或所有的这种信 息是下载得到的。

PPE站点ID唯一地标识了PPE 650。该站点ID最好是唯一的, 以便唯一地标识PPE 650并从所有PPE中区分出上述特定PPE来。在 较佳实施例中,站点ID提供了一个唯一的地址,该地址可适用于多种 用途,例如它可以提供“地址隐私性”功能。在某些情况下,站点ID 可以是PPE 650的公开密钥。而在另一些情况下,该PPE站点ID可以 在制造过程和/或初始化进程中指定。在PPE 650不具有公开密钥功能 的情况下,最好不要将设备秘密密钥作为唯一的站点ID,因为这样将 会暴露该密钥过多的数据位,因此,应该用另一个信息串来充当站点 ID。

共享代码包含一些特定的代码段,这些代码段向PPE 650提供了至 少一部分控制程序。在较佳实施例中,在PPE制造过程中安装了基本 的代码段,该代码段使得PPE可以进行自举并启动初始化进程。可以 在初始化进程中或在后续的下载进程中利用更新了的控制逻辑将该代 码段替换掉。

共用密钥可以在初始化进程中被下载到PPE 650中。这些密钥可以 用来(举例来说)解密许多对象结构的私有头。

当PPE 650只运行于秘密密钥模式时,初始化进程和下载进程可以 向PPE 650输入共享秘密信息。在通信过程中可以使用这些共享秘密信 息,使PPE 650能够鉴别其它PPE和/或用户的身份。

下载授权密钥

在初始化下载进程中PPE 650接收下载授权密钥。下载授权密钥用 来授权进一步的PPE 650代码更新、密钥更新,它还用来保护PPE安 全数据库610的备份,以便在PPE失效时可以(举例来说)由VDE管 理员恢复。同时使用下载授权密钥、站点ID、时间和卷积算法可以得 到特定于站点标识的密钥。下载授权密钥可以还可以用来加密密钥块, 该密钥块用来加密安全数据库610的备份。下载授权密钥还可以用来形 成特定于站点的密钥,该特定于站点的密钥可以支持将来对PPE 650 的下载。在较佳实施例中,下载授权密钥并不在所有PPE 650之间共 用。它由经授权的VDE管理员所执行的功能专用。

外部通信密钥和相关的秘密和公开信息

在某些情况下当PPE 650进行通信的时候需要使用密钥。建立安全 通信的过程也可能需要使用与欲通信的电子设备600相关的公开和秘 密信息。外部通信密钥和其它信息就用来支持和鉴别安全通信。在较佳 实施例中,这些密钥包含一个公开密钥对,不过作为一种选择或补充方 案,也可以使用共用秘密密钥。

管理对象密钥

在较佳实施例中,管理对象共用密钥可以用来解密管理对象870 的私有头。在管理对象的情况下,私有头中可以含有一个许可记录 808。在某些情况下,许可记录808可以作为一个管理对象(或存放 在管理对象之中)被分发出去,以提供对其它管理对象信息内容的处 理权。许可记录808最好含有用于私有体的密钥,并且,可被访问的 信息内容的密钥将是在上述许可记录808中所引用的预算。管理对象 共用密钥可以将时间作为其组成部分之一,并且在过期的时候可以被 更换。

静止对象密钥

静对象共用密钥可以用来解密静止对象850的私有头。如上所述, 在某些情况下,静止对象850的私有头中可以出现许可记录808。如果 出现的话,许可记录808可以包含用于私有体的密钥,但不包含用于信 息内容的密钥。这些共用密钥可以将时间作为其组成部分之一,并且在 过期的时候可以被更换。

移动对象共用密钥

移动对象共用密钥可以用来解密移动对象860的私有头。在较佳实 施例中,移动对象的私有头中可以含有许可记录808。许可记录808可 以包含用于私有体的密钥,它也可以包含用于信息内容的密钥,而对于 这些信息内容而言,许可记录808已经准许了对它们的访问。这些共用 密钥可以将时间作为其组成部分之一,并且在过期的时候可以被更换。

安全数据库密钥

PPE 650最好生成这些安全数据库密钥并永不将它们暴露到PPE 的外界。在较佳实施例中,这些安全数据库密钥是特定于站点的并如上 所述是可以“老化”的。如上所述,每当一个被更新的记录被写入安全 数据库610中的时候,一个新密钥将投入使用,并且被保存在PPE内 部的一个密钥列表中。PPE 650可以定期地(以及在内部列表没有空间 的时候)生成一个新密钥以加密新记录和老记录。根据安全数据库610 容量,使用一组密钥而不是一个密钥。

私有体密钥

私有体密钥对于对象300是唯一的,并且它们不依赖于共享于PPE 650之间的密钥信息。最好由PPE 650在加密私有体的时候生成私有体 密钥,并且可以将实际时间作为它们的一部分,以便使其“老化”。这 些密钥保存在许可记录808中,其使用可以由预算来控制。

信息内容密钥

信息内容密钥对于对象300是唯一的,并且它们不依赖于共享于 PPE 650之间的密钥信息。最好由PPE 650在加密信息内容的时候生成 信息内容密钥,并且可以将实际时间作为它们的一部分,以便使其“老 化”。这些密钥保存在许可记录808中,其使用可以由预算来控制。

授权共享秘密信息 访问或使用PPE 650或安全数据库610中的信息可以通过使用授权“共 享秘密信息”来控制,而不是使用密钥来控制。授权共享秘密信息可以 存放在由它们授权的记录(许可记录808、预算记录等等)中。可以在 创建相应记录的时候提出授权共享秘密信息。可以由一个有授权资格的 PPE 650生成授权共享秘密信息,并且当记录被更新时可以替换共享 秘密信息。授权共享秘密信息具有与“功能”有关的某些特性,这些功 能用于基于功能的操作系统中。在较佳实施例中,访问标记(下面将要 讲到)是一种重要的授权共享秘密信息集合。

备份密钥

如上所述,安全数据库610的备份过程包括读取所有安全数据库记 录和当前审核“堆积”(roll up),这些记录和信息存放在PPE 650 中,也可存放在外部。于是,备份进程使用一组新产生的密钥对上述信 息进行解密和重新加密。这些密钥、备份的时间、以及可以标识该备份 的其它相应信息可以被多次加密,并且可以同以前加密的安全数据库文 件以及堆积数据一起存放在备份文件中。然后,使用由PPE 650内部生 成和保存的一个“备份”密钥对这些文件进行加密。如果需要的话, PPE可以使用备份密钥500恢复备份。备份密钥也可以被安全地加密 (例如,使用下载的授权密钥和/或VDE管理员公开密钥),并存放在 备份本身之中,以便在出现PPE 650失效时VDE管理员可以恢复备 份。

密码密封(Cryptographic Sealing)

某些时候,信息可能遭到不受PPE 650控制的修改,这种修改可能 是偶然的,也可能是对VDE安全性的蓄意破坏,此时可以用密封来保 障信息的完整性。密封有两种特定应用,即数据库记录校验值的计算, 以及对交换至SPE 500之外的数据块的保护。

有两种类型的密封:无密钥密封—也称为密码散列,以及有密钥密 封。两种技术都采用了具有较强密码功能的散列函数,如MD5或 SHA。这种函数将任意长度的数据作为输入,并产生一个固定长度的 散列,或称“提炼数据”(digest),该提炼数据具有一种特性,即不 可能计算出产生同一提炼数据的两个输入,也不可能计算出产生特定提 炼数据的一个输入,此处的“不可能”是相对于工作量因素而言的,而 工作量因素又取决于提炼数据的位长。举例来说,如果认为256位的散 列函数在密码特性方面较强的话,那么在可能产生复制的或指定的提炼 数据之前必须进行平均大约1038(2128)次尝试。

无密钥封条(keyless seals)可以用来做数据库记录(如PERC 808)和类似应用中的校验值。无密钥封条可以根据记录体内容而计算 得出,并且可以与记录的其余部分存放在一起。可以对封条和记录的组 合进行加密,以便保障其存贮的安全性。如果某人在不知道加密密钥(该 密钥或者部分地代表数据,或者部分地代表封条)的情况下加密了记 录,那么被加密的信息内容将与原先的不同,而被加密的校验值将不能 匹配由记录数据得到的提炼数据。即使知道了散列算法,也不可能修改 记录数据及其封条以实现对应,因为这两者都已经经过了加密。

对于未经加密地保存于受保护环境之外的数据来说,可以用有密钥 封条作为它们的保护措施;另外,有密钥封条还可以用作两个受保护环 境之间的有效性证明。有密钥封条的计算方法与无密钥封条的类似,不 同之处在于:在被封的数据前面逻辑地加上了初始秘密数值,因此提炼 数据取决于秘密值和数据两者,而且不可能计算出一个新的封条使之对 应于被修改的数据,即使该数据本身对破坏者是可见的。有密钥封条可 以利用单个秘密数据保护存放的数据,或者可以保护在共享单个秘密数 值的两个环境之间传送的数据。

对于有密钥和无密钥封条的选择要根据被保护数据的特性,以及该 数据是否还经过了加密的保护。

加标记

在支持重要部件组和相关信息在二级存贮器652中的安全存放方 面,加标记特别有用。信息“加标记”和加密技术的结合使用可以实现 用廉价的大容量存贮设备安全地存放信息。这种方法可以部分地允许、 限制和/或记录VDE节点的配置、管理和操作以及对受VDE保护的信 息内容的使用。

当加密的或安全化的信息被传递到用户的VDE安全处理区(如 PPE 650)中时,该信息的一部分可以被用作一个“标记”,该标记首 先被解密或被解除安全防范,然后与一个预期的数值相比较,以确认该 信息确实是预期的信息。因此,可以将标记作为一个确认进程的一部 分,该确认进程用来确认收到的受VDE保护信息的身份和正确性。

较佳实施例的控制结构中可以包含三种类型的标记:

访问标记

确认标记

关联标记

这些标记各自有不同的目的。

访问标记可以用作受VDE保护的元素与实体之间的“共享秘密”, 而这些实体则得到授权可以读和/或修改被标记的元素。访问标记可以 被划分成分开的字段以独立地控制不同的行为。如果某个元素如方法核 心1000’使用了一个访问标记,那么影响该元素的管理事件必须带有被 影响元素的访问标记(或访问标记的一部分),并且在某个事件被提交 处理的时候要确立该标记。如果访问标记经过了安全的维护(例如,在 创建元素的时候由PPE 650内部产生访问标记,并且只能以加密结构的 形式将访问标记从PPE 650中释放出来),并且只将其分发给授权的团 体,那么可以更为容易地控制对其结构的修改。当然,控制结构(如 PERC 808)可以进一步地限制或核实由管理事件执行的修改或其它行 为。

关联标记用于一个元素引用另一个元素的时候。例如,制作者在引 用他们存放于制作者PERC中的预算之前预算拥有者可能首先向制作 者发出要求以便获取许可并建立业务关系。当这种关系建立好以后,预 算所有者可以将一个或多个关联标记传送给制作者,这可以作为一个步 骤以允许制作者产生的PERC使之引用预算所有者的预算。

确认标记则有助于检测出破坏者替换记录的企图。

在某些方面,上述三种类型的标记在功能上有重叠。例如,通常访 问标记出现不一致将禁止某种修改企图,但是如果在执行访问标记检查 之前首先检查出关联标记不一致,那么将同样禁止该修改企图。较佳实 施例在某些情况下可以利用这种重叠以减少开销,例如,如上所述,用 访问标记充当类似上述的确认标记的角色。

通常,加标记过程包括:在SPE 503中改变加密密钥、安全化技术、 以及/或者提供特定的、被存贮的标记。结合存放在所述廉价大容量存 贮设备652中的安全数据库610信息执行上述过程可以用来对受VDE 保护信息和管理数据库信息进行鉴别、解密、分析、使用,或使之可用。 一般来说,改变确认标记的过程涉及将对应于标记变化的一个或多个信 息元素保存在VDE节点硬件中。将信息保存于具有物理安全性的硬件 SPE可信环境之外是一种非常节约成本的安全存贮途径,通过对信息进 行上述加标记可以增强被存贮的重要管理数据库信息的安全性。频繁地 执行标记“更换”(例如每次加密一个给定记录的时候进行一次更换) 可以防止“不正确”信息对“正确”信息的替换,因为所述替换信息不 带有某些特定信息,而这些特定信息可以在后续对其的检索过程中匹配 存放在硬件SPE中的加标记数据。

作为信息加标记的另外一个好处,使用标记有助于有效地对双方或 多方之间的信息和/或控制机制进行强化和/或校验。如果信息由一方进 行了标记,然后传递给其它方,可以使用一个标记作为预期的数值,该 数值与发生在双方之间的、有关被标记信息的通信和/或交易相关联, 例如,如果某个标记与A方传递给B方的某个数据元素相关联,那么 在与所述数据元素相关联的信息和/或所述数据元素的部分信息从B方 发布给A方之前,B方可以请求A方证明自己知道一个标记至少其中 一部分的正确值,反之亦然。再举一个例子,A方可以使用一个标记 来确认由B方发来的信息确实与被标记的数据元素有关,以及/或者确 实是被标记元素的一部分,反之亦然。

建立安全的、经鉴别的通信通道

两方(如PPE A和B)会不时地需要建立这样的通信通道,双方 都知道该通道具有防窃听能力和防破坏能力,并且只能由这两方使用, 而这两方都准确地知道相互的身份。

下面描述一个建立上述通道的示例进程,并介绍多方如何产生和确 认安全性和鉴别的要求。本文将以抽象的形式就各方必须确立的声明和 信任等方面展现上述进程,本文不打算将该进程作为任何特定协议的规 范。特别是,无需使用不同的操作来实现每个步骤的各个子步骤;实际 上,经常将相关证明的确立和确认合并到一个操作中。

不一定要按照下述的次序执行各个子步骤,一个例外是只有在另一 方作出声明之后,才能对该声明的有效性进行证明。这些步骤可能涉及 两方之间更多的通信,而不仅仅局限于所列举的那些子步骤所隐含的通 信,因为信息的“传送”本身可以又分成多个子步骤。另外,不一定要 在传送过程中对声明和证明进行保护以避免泄露或修改。同时,并不把 有关声明的信息(包括特定的通信提议和确认)看作是受保护的信息。 对证明的任何修改都将导致证明变成无效,并且将导致该进程失败。

该进程可以使用标准的公开密钥或秘密密钥密码技术(如X.509、 经鉴别的Diffie-Hellman、Kerberos)。较佳实施例使用三向X.509 公开密钥协议(three_way X.509 public key protocol)步骤。

下面列出的可以是该示例进程的前两步:

A.(先导步骤):由A产生一种方法以便创建可确认的声明

B.(先导步骤):由B产生一种方法以便创建可确认的声明

这两步用来确保每一方都有一种产生声明的方法,而所产生的声明 可以由另一方来确认,例如,可以使用公开密钥签名机制,在这种机制 中,两方都维护一个私有密钥,并提供一个公开密钥供对方用,该公开 密钥本身由验证机构的数字签名进行了鉴别。

下面的步骤可以是:

A.(提议步骤):

1.确定B的身份

2.获取一种方法以便确认由B产生的声明

3.为本次所提议的通信创建一个唯一的身份

4.创建一个通信提议,该提议标识了双方和特定通信

5.为A的身份和通信提议的源创建可确认证明

6.将通信提议和相关证明传递给B

上述步骤确立对应B方的身份,并提议通信。由于通信的建立需 要对B产生的声明进行确认,所以必须向A提供一种机制以确认这种 声明。由于通信的建立对于A方为了通信而提出的特定请求必须具有 唯一性,所以该通信提议和所有相关的业务都必须能够清楚地与所有其 它类似业务区分开。由于B必须确认该提议是来自A的合法提议,所 以必须提供一个证明以表明该提议是有效的。

后续步骤可以按如下进行:

B(确认步骤)

1.从通信提议中抽取出A的身份

2.获取一种方法以便确认由A产生的声明

3.确认A声明的身份和通信提议源

4.确定通信提议的唯一标识

5.确定该通信提议没有重复先前的提议

6.创建一个确认,该确认标识了上述特定的通信提议

7.为B的身份及确认源创建可确认的证明

8.将确认和相应证明传递给A

上述步骤确立了B方已经收到来自A方的通信提议,并准备处理 该提议。由于B必须确认该提议,所以B必须首先确定该提议的源并 确认其可信性。B必须确保其响应与某一特定提议相关联,而且该提 议不是重复。如果B接受该提议,那么它必须证明自己的身份,并证 明自己已经收到了特定提议。

后续的步骤可以是:

A.(建立步骤):

1.对B响应A的特定建议而发回的声明确认进行确认

2.从确认中抽取出特定通信提议的身份

3.确定该确认与一个未完的通信提议相关联

4.创建所提议通信要使用的唯一会话密钥

5.为A执行的会话密钥生成创建证明

6.为会话密钥与特定通信提议具有相关性创建证明

7.为收到B的确认创建证明

8.保护该会话密钥以避免在传送过程中被泄露

9.保护该会话密钥以避免在传送过程被修改

10.将受保护的会话密钥和所有证明传送给B

在上述步骤中,A指定了一个会话密钥,该密钥针对的是与A的 特定通信提议相关的所有进一步业务。A必须创建该密钥,并证明该 密钥是A创建的,还要证明该密钥与被提议的特定通信相关联。另外, A必须证明生成该会话密钥是为了响应B对上述提议的确认。必须保护 该会话密钥以避免被泄露和修改,这样做是为了确保破坏者无法用另外 的数值替换该密钥。

VDE安全设备在PPE 650之间的传输能力

在较佳实施例中,可以采用上述的各种密钥将适当的VDE对象300 以及其它安全信息从一个PPE 650安全地传送到另一个。VDE 100利 用重新分发VDE管理信息的方法交换VDE对象300的所有权,并允许 在电子设备600之间传送对象。

VDE对象300的许可记录808含有权利信息,该信息可用来确定 一个对象是否能被总体地、或部分地分发或完全不分发。如果VDE对 象300可以被重新分发,那么电子设备600通常必须拥有允许自己重新 分发该对象的“预算”和/或其它许可。例如,一个经授权可以重新分 发对象的某个电子设备600可以创建一个管理对象,而该管理对象含有 的预算或权限要低于或等于该电子设备600所拥有的预算或权限。某些 管理对象可以被送往其它PPE 650。收到该管理对象的PPE 650能够 使用相关对象预算或权利的至少一部分。

转移VDE对象300的所有权是一种特殊情况。其中,对应于VDE 对象的全部许可和/或预算都被再次分发给另外一个PPE 650。某些 VDE对象可以要求传送所有的对象相关信息(例如它可能将全部权限 都“出售”给对象)。但是,某些VDE对象300可禁止这种转移。在 转移所有权的情况下,VDE对象300的新所有者在完成所有权转移之 前可能需要与该对象的原始提供者联系,向其通知转移,并利用再次授 权中所伴随的授权共享秘密对其进行确认。

当电子设备600收到一个部件组时,该部件组中的一个加密部分中 将包含只有提供部件组的一方或PPE 650才知道的一个数值。该数值可 以与最终必须返回给该部件提供者的信息(如审核、计帐或相关信息) 保存在一起。当部件提供者请求得到上述信息的报告时,提供者可以出 示上述数值,以便本地的电子设备600将之与原来提供的数值做对比检 查,以确保该请求是合法的。当收到一个新部件的时候,可以对照旧部 件来检查新部件中的上述数值,以确定这个新部件是否是合法的(举例 来说,新部件可包含下一报告进程所用的新数值)。

VDE安全性的完整性

有许多途径可能会造成对PPE 650的破坏。VDE 100所提供的安 全性的目标是减少系统受到破坏的可能性,并在破坏发生时将不利影响 降至最低。

本文假设用来实现VDE 100的基本密码算法是安全的(即具有较 强的密码特性)。这些算法包括对信息内容进行秘密密码加密、针对完 整性验证的公开密钥签名、用公开密钥加密在PPE 650之间或PPE和 VDE管理员之间所传送的秘密信息,等等。本文假设破坏者没有能力 对上述算法进行直接破坏。对于VDE 100的本地版本来说,上述某些 假设可能是安全的,因为控制信息的底层基本结构含有足够长的密钥, 并且经过了充分的证明。

下面列出了可能较为严重的几种威胁或破坏危险:

未经授权地创建或修改部件组(如预算)

未经授权地大量暴露信息内容

破坏一个或多个密钥

对硬件PPE进行软件仿真

用老记录替换新记录

引入“欺骗性”(即虚假的)加载模块

重复破坏行为

使“指纹功能”失效

未经授权地暴露个别的信息内容项

再次分发个别的信息内容项

如果一个或多个加密密钥受到了破坏,那么将会出现严重的安全性 潜在缺口。如上所述,VDE 100使用的加密密钥具有充分的多样性和 分离性,因而在大多数情况下,破坏了一个密钥给破坏者带来的价值是 有限的。如果一个验证私有密钥遭到泄露,破坏者虽然因此可以通过上 述的查问/应答协议,但随后即将面临下一级别的安全防范措施,它需 要破坏者或者破解初始化查问/应答过程,或者破坏外部通信密钥。如 果该初始化查问/应答的安全性防护也被突破,那么初始化代码和各种 初始化密钥也将遭到暴露。但是,为了找到共用的VDE密钥并重复密 钥生成(“卷积”)算法,仍然需要理解代码和数据。另外,上述欺骗 性过程还必须保存正确的实际时间值。如果破坏者能够成功地完成上述 所有步骤,那么与该仿冒的PPE进行的所有安全通信都将受到危及。 如果在发送给仿冒PPE的信息中出现了与某个对象许可记录808相关 的信息,那么该对象将遭到危及。

如果泄露了PPE下载授权密钥和用来生成特定加密密钥的算法— 该加密密钥用来加密安全数据库610备份所用的密钥,那么可能危及特 定电子设备600中的整个安全数据库。但是,为了利用上述信息来危及 VDE对象300的信息内容,还必须了解VDE的适当内部细节。在较佳 实施例中,通过在存放于安全数据库610中的私有体密钥和信息内容密 钥之中加入时间分量,可以使这些密钥“老化”。将时间与上述被保存 的数值进行卷积运算将得到解密信息内容所需的“真实密钥”。如果该 过程也遭到了破坏,将会暴露对象信息内容或方法。在较佳实施例中, 由于在没有得到经授权的VDE管理员的干预前,绝不会向PPE 650恢 复安全数据库610的备份,因此不得不使用“仿冒的”的PPE来利用 上述信息。

在较佳实施例中,外部通信共用密钥与基于站点ID和时间的密钥 卷积算法结合使用。假如这些信息遭到破坏,为了能进一步利用它们, 还必须了解与PPE 650进行通信所需的所有步骤。另外,必须破坏管理 对象共用密钥中的至少一个密钥才能够访问被解密的许可记录808。

除非“破解者”还知道外部通信密钥,否则破坏管理对象共用密钥 是毫无价值的。所有管理对象都由唯一的密钥进行加密,这些密钥利用 共用的外部通信密钥、站点ID和时间进行交换。为进一步解密管理对 象的信息内容还必须了解PPE 650的内部细节。

如果静止对象(或使用同一共用密钥的任意其它静止对象)的私有 头遭到了破坏,那么将会使破坏者能够访问其信息内容,直到该共用密 钥“老化”到不能继续解密私有头为止。除非对应于该对象的许可记录 808也遭到了破坏,否则,该对象的私有体和信息内容都不会被暴露。 上述对象的私有头一直处于被破坏的状态,直到上述密钥“老化”到不 能继续解密私有头为止。

在较佳实施例中,安全数据库加密密钥更换较为频繁,并且是特定 于站点的。破坏安全数据库610文件或记录的后果取决于被破坏的信 息。例如,许可记录808含有对应于VDE对象300公开体和信息内容 的密钥。如果许可记录808遭到破坏,同时假设产生“真实密钥”的算 法也被泄露的话,那么由该许可记录提供的密钥所保护的对象部分也将 遭到破坏。如果私有体密钥被泄露,那么对象的私有体将遭到破坏,直 到该密钥“老化”、过期为止。如果该密钥的“老化”过程仍然遭到泄 露,那么破坏将一直持续下去。由于私有体中可能含有由许多不同对象 共享的方法,因而这些方法也将被破坏。一旦检测到上述破坏行为,提 供预算和许可的所有管理对象都应该更新被破坏的方法。存放于安全数 据库610中的方法只能由更新的方法版本来替换,因此当替换完成后, 被破坏的版本将没有任何用处。

如果信息内容密钥遭到破坏,那么由该密钥加密的信息内容部分也 将遭到破坏,直到该密钥“老化”并过期。如果该密钥的“老化”过程 仍然遭到泄露,那么破坏将一直持续下去。如果使用了多级的加密过 程,或者对信息内容的不同部分使用了不同的密钥进行加密,那么只了 解单个密钥将不足以泄露某些或全部信息内容。

如果授权共享秘密信息(如某个访问标记)被泄露,假设“破解者” 了解如何正确地使用该秘密信息,那么他可以利用一种经过授权的手段 来修改包含该秘密信息的记录。一般来说,在共享秘密信息能派上用场 之前,还必须“破解”外部通信密钥、管理对象密钥和管理文件密钥。 当然,要得以利用这些信息还需要了解协议的任何细节。

在较佳实施例中,PPE 650可以检测它是否遭受了破坏。例如,通 过将存放在SPE 503中的信息(如概要服务信息)与存放在安全数据库 610中的信息和/或传送给VDE参与者(如VDE票据交换所)的信息 进行比较,不一致的情况将变得显而易见。如果PPE 650(或某个正对 其行为进行监测或正与其进行通信的VDE管理员)检测到它已经遭到 了破坏,那么它将接受一个初始化过程的更新,以便使用新的代码、密 钥和新的加密/解密算法。在加密系统遭到破解的时候,上述方法将会 限制这时存在的VDE对象300的泄露。有可能要求PPE 650在某段时 间之后停止运行,直到下载了新的代码和密钥为止。也有可能是VDE 管理员强迫进行更新操作。还有一种可能,即在用户希望得到一个新 VDE对象300的同时,他也意识到应该定期地更新其PPE 650。

最后,由于VDE应用具有端-对-端特性,即信息内容108按一个 方向移动,而报告和帐单118的生成则发生在另一端,这种特性因而使 “逆向”一致性检查成为可能。这种在票据交换所116中执行的检查可 以检测使用的模式,而使用模式则可以或确实表明欺骗行为(如未支付 相应费用便过度地获取被保护的信息内容,存在使用记录而不存在相应 的计帐记录)的发生。借助于细粒度的使用报告,同时又由于电子格式 的使用记录和报告可以随时得到,便可以创建复杂周密的欺骗行为检测 机制,从而使为补救欺骗行为而花费的代价维持在一个可接受的水平 上。

PPE初始化

每个PPE 650必须首先经过初始化才能投入使用。初始化过程可以 在生产厂家所在地进行,也可以在PPE已经在厂外安置好以后进行, 或两者皆可。PPE 650的制造过程通常涉及在PPE内部放入足够的软 件,这些软件将允许该设备可以在以后进行更加完整的初始化。该制造 过程可以包括(举例来说)对永久保存在PPE 650中的引导加载程序和 查问-应答软件进行测试,并载入PPE的唯一ID。执行这些步骤以后, 将产生一个具有VDE基本功能的PPE 650,该PPE 650可以被进一步 初始化(举例来说,可以在该PPE 650已安装在电子设备600之内并且 安放到位之后,再对该PPE 650进行进一步的初始化)。在某些情况下, 可以将制造过程和进一步的初始化进程合并在一起,以产生“VDE就 绪”PPE 650。前面已经结合图64和65对该步骤进行了概要性介绍。

图68示意了按照一个较佳实施例而执行的步骤示例,该步骤用来 初始化PPE 560。在该流程图中,某些步骤可以在生产方执行,某些步 骤则可以借助VDE管理员和PPE 650之间的相互联系而远程地执行。 作为可选方案,图中的所有步骤都可以在生产方执行,或借助VDE管 理员和PPE 650之间的远程通信而执行。

如果初始化进程1370是在生产方执行,则首先将PPE 650固定在 一个测试台上。该生产测试台可以首先复位PPE 650(如利用上电清 除)(处理框1372)。如果在生产方执行该复位操作,那么PPE 650 最好执行一段特殊测试台引导代码,该代码从软件的角度对PPE的操 作进行完整地测试,并且在PPE出现问题时测试将失败。之后,将采 用初始查问-应答交互作用在生产测试台和PPE之间建立安全的通信交 换过程(处理框1374),该交互作用最好是测试台引导进程一部分。 一旦建立了上述安全通信,PPE 650可向生产测试台报告它所执行的 引导测试的结果。假设PPE 650测试成功,生产测试台可以将新代码下 载到PPE 650中,以更新其内部引导代码(处理框1376),以便使PPE 650在以后复位时不再执行测试台引导进程(处理框1376)。然后, 生产测试台可以将新的固件载入PPE内部非易失性存贮器中,以便提 供另外的标准和/或定制功能(处理框1378)。例如,生产测试台可以 将加载模块预装入PPE 650中,而这些加载模块则适合于特定的生产地 点。该步骤允许在生产地点对PPE 500进行定制,使之适合特定应用。

随后,生产测试台可以将唯一的设备ID载入PPE 650内部(处理 框1380)。此时,PPE 650带有了唯一的ID,该ID可以用于进一步 的交互作用。

在较佳实施例中,处理框1372-1380R通常在生产地点执行。处理 框1374以及1382-1388则既可以在生产地点执行,也可以在PPE 650 安装完毕后执行,或两者皆可。

为了进一步初始化PPE 650,一旦在PPE和生产测试台或VDE管 理员之间建立了安全通信(处理框1374),所有的所需密钥、标记或 证明都被载入PPE 650中(处理框1382)。例如,生产测试台可以将 其信息载入PPE 650之中,于是PPE可以在以后某个时间进行初始化。 某些上述数值可以在PPE 650内内部地产生。之后,生产测试台或VDE 管理员可以用当前的实际时间值来初始化PPE实时时钟528(处理框 1384)。这将为PPE 650提供时间和日期的引用。下一步,生产测试 台或VDE管理员可以初始化由PPE 650内部维护的概要数值(处理框 1386)。如果已经将PPE 650安装成某个电子设备600的一部分,那 么此时该PPE可以初始化其安全数据库610(处理框1388)。

图69示意了由PPE 650执行的程序控制步骤示例,该步骤是固件 下载进程的一部分(参看图68,处理框1378)。PPE下载进程用来 将外部提供的固件和/或数据元素载入PPE中。固件载入过程可以有两 种形式:永久性载入和暂时性载入,前者用来载入一直驻留于PPE 650 中的软件,后者是被加载用于执行的软件。为了把已经发送给电子设备 600的元素保存到安全数据库610中,需要执行一个相关进程。

PPE 650自动执行若干检查,以确保被下载到PPE中的固件在载 入之前没有遭到破坏、替换或替代。图中所示的下载例程1390示意了 该检查的示例。一旦PPE 650收到一个新的固件项(处理框1392), 它可对该项进行检查,以确保它使用了预定的下载密钥或管理对象密钥 (何种密钥取决于元素的来源)正确地执行了解密过程(处理框 1394)。如果固件的解密过程正确(判定框1394的“是”出口),则 计算固件的校验值,并将计算结果与存放在固件加密封装中的校验值相 对比(判定框1396)。如果两个校验和值正确地匹配(判定框1396的 “是”出口),那么PPE 650将对比与该固件相关联的公开和私有头标 识标记,以确保所收到的是正确的固件而没有被替换(图中没有示出该 步)。假设该测试也通过了,PPE 650可计算该固件的数字签名(假设 PPE 650支持数字签名,同时该固件经过了“签名”)并检查计算得出 的签名结果,以确保该结果匹配了存放于固件加密封装中的数字签名 (处理框1398,1400)。如果上述任何步骤失败,那么该下载过程将 异常终止(“失败”终止点1401)。

假设上述所有测试都通过,PPE 650于是将确定该固件是要存放 在PPE之中(如存放在内部的非易失性存贮器中),还是要存放在安 全数据库610中(判定框1402)。如果准备将固件存放在PPE中(判 定框1402的“是”出口),那么PPE 500将简单地内部保存该信息(处 理框1404)。如果准备将固件存放在安全数据库610中(判定框1402 的“否”出口),那么可以用特定于PPE的唯一标记将该固件做上标 记,该唯一标记用来防止记录替换(处理框1406),然后可用相应的 安全数据库密钥对该固件进行加密,最后将该固件存放到安全数据库 610中(处理框1408)。

SPU 500和/或VDE电子设备600的联网

在由局域或广域网连接的许多计算机中,可能它们之中的一个或几 个便是VDE电子设备600。例如,一个具有VDE功能的服务器可能含 有一个或多个SPU 500。这个集中式的VDE服务器可以提供在网络中 需要的所有VDE服务,或者它也可以与VDE服务器节点共同分担VDE 服务。也就是说,它可以执行少量的、部分的、或大部分的VDE服务 功能。例如,用户的非VDE计算机可以通过网络发出对受VDE保护 的信息内容的请求。为响应该请求,VDE服务器可通过访问相应的 VDE对象300,释放被请求的信息内容,并通过网络672将该信息内 容传递给发出请求的用户来履行。这种方案可以允许将VDE功能方便 地集成到现有的网络中,而不必对连接到网络上的各种计算机和其它设 备进行修改或替换。

例如,一个带有一个或多个受保护处理环境650的VDE服务器可 以通过网络与不带有受保护处理环境的工作站进行通信。该VDE服务 器可以执行所有VDE安全处理,并将最后得到的信息内容以及其它信 息发送给网络中的工作站。该方案不需要对工作站做任何硬件或软件的 修改。

不过,某些应用可能要求更高的安全性、灵活性和/或性能,通过 将多个VDE电子设备600连接到同一网络672中,就可以满足上述要 求。由于通用的局域网包含非安全的信道,这样的信道有遭受破坏和/ 或窃听的危险,所以,在大多数安全应用中最好要对经过上述网络传输 的信息进行保护。有可能使用常用的网络安全性技术来保护在一个 VDE电子设备600和一个非VDE电子设备之间通过网络672传送的 VDE发布的信息内容或其它VDE信息。然而,在同一个系统中提供多 个联网的VDE电子设备600则更有优越性。

前面已经结合图8讨论过,多个VDE电子设备600彼此间可以通 过网络672或其它通信途径进行通信。VDE电子设备600之间的这种 联网具有一些优点。其优点包括(举例来说):有可能使VDE资源集 中化、将计量信息在服务器VDE中保存和/或存档、通过网络672将信 息和服务有效地传递给多个电子设备600。

例如,在局域网拓扑结构中,“VDE服务器”电子设备600可以 存放受VDE保护的信息,并使该信息对一个或多个另外的电子设备600 或计算机可用,这些电子设备600或计算机可以通过网络672与服务器 进行通信。举一个例子,存放VDE对象的对象仓库728可以在集中化 的服务器中维护,而多个联网电子设备600用户中的各个都可以根据需 要通过网络672访问集中化的对象仓库。当用户需要访问特定的VDE 对象300时,其电子设备600可以通过网络672发出一个请求,希望获 取该对象的拷贝。作为对此请求的响应,“VDE服务器”可以交付所 需对象300的全部或部分。提供这种集中化的对象仓库728具有以下优 点:对于连到网络672上的每个电子设备600来说,可以将其本地的大 容量存贮器要求降至最低;消除了同一信息的冗余拷贝;减轻了信息管 理负担;对于出现在服务器中的特别重要的VDE进程和/或信息提供了 附加的物理安全性和/或其它安全性,而对于某些商业模型来说,在VDE 节点中提供上述安全性保护措施从商业角度看是不现实的;等等。

在局域网拓扑结构中最好也将安全数据库610集中化。例如,在一 个局域网中,可以将安全数据库610放置在一个集中的地点。连入局域 网672中的多个电子设备600中的每一个都可以通过该网络发出对安全 数据库610记录的请求。可以通过该网络以加密的形式将被请求的记录 提供给请求者。通过利用安全通信交换机制在网络上传送解密上述记录 所需的“密钥”,可以实现这些密钥的共享。在网络672中集中化安全 数据库610有许多潜在的优点,包括:将各个联网的电子设备600的二 级存贮设备和/或其它存贮器的要求降至最低或从根本上消除;避免了 冗余信息存贮;支持集中化的备份服务;减轻了信息管理负担;等等。

有一种方法可以廉价方便地在一个网络中配置电子设备600的多 个实例,即把定义了HPE 655的软件提供给网络工作站。这种方案不 需要对工作站进行任何硬件修改;可以只使用软件定义HPE 655。也 可以在VDE服务器中提供SPE 503和/或HPE 655。这种方案的优点 是它支持分布的VDE网络处理,而不需要定制或修改工作站(除非需 要将新的程序加载到这些工作站中)。可以将需要较高安全性级别的 VDE功能局限于一个基于SPU的VDE服务器中。基于“安全”HPE 的工作站可以执行需要较低安全性的功能,并且可以利用VDE服务器 协调其各项行为。

因此,在同一网络中提供多个VDE电子设备600可能具有许多优 点。另外,将多个VDE电子设备600放置在同一工作站或其它电子设 备600中也可能具有优越性。例如,一个电子设备600可以包含多个电 子设备600,而其中每一个都含有一个SPU 500,并且能够执行VDE 功能。

例如,可以将一个或多个VDE电子设备600用作计算机系统的输 入/输出设备。这样就可以不再需要先在一个设备中解密信息,然后将 该信息以未加密的形式通过某些总线或其它非安全通道移动到另一个 设备,例如某个外部设备。如果该外部设备本身是一个带有SPU 500 的VDE电子设备600,那么可以将受VDE保护信息通过非安全通道 发送给该外部设备,以便在其中处理(如解密)。给予外部设备直接处 理受VDE保护的信息的能力也提高了灵活性。例如,VDE电子设备 600外部设备可以控制对VDE对象300的使用。它可以(举例来说) 计量其所处理信息的使用或其它参数,它还可以收集特定于其执行过程 的审核跟踪和其它信息,以便提供有关VDE对象使用的更多信息。提 供多个相互协作的VDE电子设备600将不再需要把加密的信息移动到 一个VDE电子设备600,然后再把该信息以未加密的形式移动到一个 非VDE设备中,因而提高了性能。该受VDE保护信息可以被直接地 移动到其目的地设备,而该设备如果具有VDE功能的话可以直接处理 上述信息,而不必请求某些其它VDE电子设备600参与。

图70示意了方案2630的示例。该方案包含多个VDE电子设备 600(1),600(2),600(3),...,600(N)。VDE电子设备600(1),...,600(N)相互间 可以通过通信通路2631(如工作站的系统总线、电话线或其它线路、 电缆、底板、网络672、或其它任何通信机制)进行通信。图中所示的 每个电子设备600可以具有图8所示的相同通用体系结构,即它们每一 个都包含CPU(或微控制器)654,SPU 500、RAM 656、ROM 658、以及系统总线653。图中的每个电子设备600可以带有一个接口 /控制器2632(可以将该接口/控制器2632看作是图8所示的某种特定 类型的I/O控制器660和/或通信控制器666)。该接口/控制器2632提 供了电子设备系统总线653和相应电连接器2634之间的接口。每个电 子设备600(1),...,600(N)的电连接器2634提供了到通用网络672或其它 网络通路的连接。

尽管图中所示的每个电子设备600可以带有总体上类似的体系结 构,它们仍然可以执行不同的专门任务。例如,电子设备600(1)可能包 含工作站的中央处理部件,该部件负责管理该工作站的全局操作,并提 供计算资源。电子设备600(2)则可能是同一工作站的大容量存贮设备 620,它可以提供存贮机制2636,该机制用来(举例来说)从二级存 贮设备652中读取信息,或往二级存贮设备652写入信息。电子设备 600(3)可以是一个显示设备614,它负责执行显示任务,并提供显示机 制2638,例如图形控制器以及相关视频显示器或其它显示器。电子设 备600(N)可以是一个打印机622,它执行与打印相关的任务,并且可以 含有(举例来说)一个打印机制2640。

每个电子设备600(1),...,600(N)可以含有同一工作站的不同模块,而 所有这些电子设备都包含在同一个机箱内。或者不同的电子设备可以放 置在不同的系统部件中。例如,电子设备600(2)可以放置在磁盘控制部 件中,电子设备600(3)可以放置在显示设备614的机箱中,而电子设备 600(N)可以放置在打印机622的机箱内。重新参看图7,扫描仪626、 调制解调器618、电信设备624、键盘614和/或声音识别器613每一 个都可以包含一个带有自身SPU 500的VDE电子设备600。其它例子 包括:RF或其它无线接口控制器、串口控制器、LAN控制器、MPEG (视频)控制器,等等。

由于每个电子设备600(1),...,600(N)都具有VDE功能,所以都能够 对受VDE保护的信息执行加密和/或解密操作。这意味着经过连接了这 些电子设备的网络672或其它通信通路2631而传递的信息可以受VDE 保护(如可以以VDE管理对象和/或信息内容对象的形式包装上述信 息,并采用上述方法对之进行加密)。作为这种方案的一个结果,搭入 通信通路2631的窃听者只能获取以受VDE保护的形式存在的信息。例 如,由电子设备600(1)产生的、需要打印的信息可以包装到VDE信息 内容对象300中,然后经过通路2631传送到电子设备600(N)打印。破 坏者即使截获到该信息也将收益甚微,因为该信息是以受保护的信息传 送的。为了访问处于未受保护形式下的上述信息,破坏者不得不对电子 设备600(1)或600(N)(或SPU 500(1),500(N))进行破坏。

图中所示方案的另一个优点是每个电子设备600(1),...,600(N)都可 以执行它们自身的计量、控制和/或与VDE相关的其它功能。例如,电 子设备600(N)可以进行计量和/或执行与被打印信息相关的其它VDE 控制功能;电子设备600(3)可以进行计量和/或执行与被显示信息相关 的其它VDE控制功能;电子设备600(2)可以进行计量和/或执行与往大 容量存贮设备620中存贮的信息或从中检索的信息相关的其它VDE控 制功能;电子设备600(1)可以进行计量和/或执行与它所处理的信息相 关的其它VDE控制功能。

在一个特定的方案中,每个电子设备600(1),...,600(N)都可以接收命 令,该命令指示由该电子设备收到的信息或发送到该电子设备的信息将 要使用该电子设备的SPU 500来处理后续的信息。例如,电子设备600(N) 可以接收到一个命令,该命令指示该电子设备将要收到的待打印信息是 以受VDE保护的形式发来的(或者发来的信息本身可以表明这一点)。 一旦收到该命令或其它信息,电子设备600(N)可以利用SPU 500解密 收到的信息,并且还可以对SPU输出到打印机制2644以供打印的信息 进行计量。可以向电子设备600(N)发送另一个命令以便禁止其解密进 程,或者电子设备600(N)的VDE安全子系统可以判断出送来的信息不 应被解密和/或打印。还可以有其它命令,例如载入加密/解密密钥、载 入“限制”、创建“按指纹”要求、以及读计量的使用。可以根据情况 用加密的或未加密的形式发送这些附加的命令。

假设(举例来说)电子设备600(1)产生了一些信息,而它希望由具 有VDE功能的打印机622来打印这些信息。SPU 500(1)可以通过通路 2631与SPU 500(N)建立安全通信,以便发送一个命令,该命令要求SPU 500(N)解密下一个数据块,并将之作为一个解密密钥和限制来保存。然 后SPU 500(1)可以向SPU 500(N)发送另一个命令,要求SPU 500使用 解密密钥和相关限制来处理后续的任何加密的打印数据流(或者可以由 CPU 654(1)将该命令发送给微控制器654(N))。之后,电子设备600(1) 可以开始通过通路672发送加密的信息供打印机622解密和打印。打印 机622一旦收到新的信息数据块,SPU 500(N)首先进行检查,以确保 限制值大于零。然后,SPU 500(N)可以增加由它维护的使用情况计量 值,并减少限制值。如果限制值是非零数值,SPU 500(N)可以解密收 到的信息,并送到打印机制2640打印。如果限制值为0,SPU 500(N) 既不会将收到的信息送到打印机制2640,也不会解密该信息。一旦收 到一个停止命令,打印机622将回到“非安全”模式,在这种模式下, 打印机622将打印通过通路2631接收到的所有信息,而不允许VDE处 理。

与打印机622相关联的SPU 500(N)不一定非要放置在打印机的机 箱内,而是可以(举例来说)放置在I/O控制器中(参看图8)。这样 做仍然可以具有与上述优点相似的至少一部分优点,同时还不需要特别 的、具有VDE功能的打印机622。作为另一种选择,可以在打印机622 和与该打印机通信的I/O控制器660两者之中都安装SPU 500(N),这 种做有利于协调I/O控制,并减轻与中央处理电子设备600(1)相关联的 SPU 500的处理负担。当一个电子设备中出现多个VDE实例时,一个 或多个VDE安全子系统可以成为“中央”子系统,也就是说“二级” VDE实例可以将与使用相关的加密信息传递给一个或多个中央安全子 系统,以便允许所述的中央子系统直接控制对所述使用相关信息的存 贮。某些控制信息也可以由中央子系统集中保存,在收到二级安全子系 统的安全VDE请求时,可以将这种信息的全部或部分安全地送往二级 安全子系统中。

便携式电子设备

本发明所提供的电子设备600可以是便携式的。图71示意了便携 式电子设备的一个例子。便携式设备2600可以包含便携式机壳2602, 在一个例子中,该机壳2602大约是信用卡大小。机壳2602可以(举例 来说)通过带有一个或多个连接管脚(未示出)的电连接器2604与外 界相连。连接器2604可以在机壳2602内部的外部总线接口2606与某 个主机系统2608的配套连接器2604a之间建立电连接。外部总线接口 2606可以(举例来说)含有一个PCMCIA(或其它标准)总线接口, 从而使便携式电子设备2600可以与主机系统2608的总线2607进行连 接,并通过该总线2607进行通信。主机2608可以(举例来说)是想象 得出的几乎任何设备,例如计算机、付费电话机、另一个VDE电子设 备600、电视机、拱廊视频游戏机、(arcade video game)洗衣机。 以上只是列举了几个例子。

机壳2602可以是防破坏的(参看前面关于SPU屏障502防破坏功 能的讨论)。

在较佳实施例中,便携式设备2600包含一个或多个SPU 500,这 些SPU 500可以放置在机壳2602里面。SPU 500可以通过机壳2602 内部的总线2610与外部总线接口2606相连。SPU 500通过该内部总线 2610(经过外部总线接口2606)与主机2608通信。

可以用电池2612或其它便携式电源为SPU 500供电,这些电源最 好放置在机壳2602里面。电池2612可以是(举例来说)手表或信用卡 大小的计算器所使用的微型电池。可以用太阳能电池、可充电电池、电 容存贮电池等来补充(或替换)电池2612。

最好在机壳2602里面提供随机访问存贮器(RAM)2614。 RAM 2614可以与SPU 500相连,而不直接与总线2610相连,因此只 有SPU才能访问到RAM 2614的内容,而主机2608则不能(除非通过 该SPU访问并且经过了SPU的准许)。参看图9,RAM 2614可以是 SPU 500中RAM 534的一部分,不过,它不一定非要包含在安放了SPU 其余部分的同一集成电路或其它封装中。

便携式设备2600 RAM 534可以包含(举例来说)标识信息,用来 唯一地标识便携式设备的每个实例。该信息可以用在(例如作为密钥或 口令信息的至少一部分)鉴别、验证、解密、以及/或者加密过程中。

在一个实施例中,便携式设备2600可以包含能够执行VDE电子 设备600基本上所有功能的机制。于是,(举例来说)便携式设备2600 可以包含存贮和使用许可、方法、密钥、程序和/或其它信息的机制, 并且可以作为一个“独立”VDE节点运行。

在另一个实施例中,一旦将便携式设备2600与另外的外部电子设 备600耦合,该便携式设备2600便可以执行较佳实施例VDE的功能。 某些信息—如数据库管理许可、方法、密钥和/或其它重要信息(例如 其它VDE程序的至少一部分:管理信息、用户接口信息、分析信息等 等)—可以(举例来说,以记录的形式)存放在外部VDE电子设备600 中,该外部VDE电子设备600可以与便携式设备2600共享信息。

防破坏便携式设备2600一种可能的“独立”配置中包含一个防破 坏包装(机壳2602),该包装中含有一个或多个处理器(500、2616) 和/或其它计算设备和/或其它控制逻辑,同时还包括随机访问存贮器 2614。处理器500、2616可以完全地(或至少部分地)在便携式设备 2600中执行许可和方法。便携式设备2600可以有能力在将信息传送出 机壳2602之前首先加密信息,以及/或者在从机壳之外接收到信息之 后,将收到信息解密。这种类型的便携式设备2600还可以在所述防破 坏便携式机壳2602的非易失性存贮器中安全地保存至少一部分许可、 方法和/或密钥信息。

另外一种类型的便携式设备2600可以从其外部的一个本地VDE电 子设备600中获取许可和/或方法和/或密钥,以控制、限制、或管理用 户对受VDE保护的对象的使用。这种便携式设备2600可以包含在另一 个电子设备600中,可以由该电子设备600所容纳,可以安装在该电子 设备600之中、也可以直接连接到该电子设备600。

便携式设备2600的一个“最小”配置的例子可以只在机壳2602中 包含SPU 500和电池2612(在这种情况下,图中所示的外部总线接口 2606和RAM 2614将集成进SPU框)。在便携式设备2600的其它增 强型例子中,可以在机壳2602中包含下面任意或所有可选部件:

一个或多个CPU 2616(同时带有相关支持部件,如RAM-ROM 2617、I/O控制器(未示出)、等等);

一个或多个显示设备2618;

一个或多个键盘或其它用户输入按键/控制信息2620;

一个或多个可拆卸的/可替换的存贮设备2622;以及

一个或多个打印设备2624;

在上述增强型的便携式设备2600中,显示器2618、键盘2620、 存贮设备2622和打印机2624可以连接到总线2610,也可以通过CPU 2616的I/O端口/控制器部分(未示出)与CPU 2616相连。显示器2618 可用以显示来自SPU 500、CPU 2616和/或主机2608的信息。键盘2620 可用来向SPU 500、CPU 2616和/或主机2608输入信息。打印机2624 可用来打印来自任一/所有上述源的信息。可拆卸的/可替换的存贮设备 2622可以包含一个存贮器盒或存贮器介质如大容量存贮设备,以提供 附加的长期或短期存贮功能。如果需要的话,存贮器2622可以方便地 从机壳2602中拆卸下来。

在一个实施例中,便携式设备2600可以具有“智能卡”的形状要 素(尽管“智能卡”形状要素有某些优点,但机壳2602的形状要素既 可以与“常用”智能卡的相同,也可以不同)。作为另一种选择,这种 便携式电子设备2600可以(举例来说)被封装在一个PCMCIA卡配置 (或类似配置)中,目前,PCMCIA卡正十分普及地用于个人计算机 中,而且有人预言PCMCIA卡将在桌上型计算机设备和个人数字助理 中广泛使用。便携式电子设备机壳2602一种较为有利的形状要素可以 是(举例来说)类型1、2或3的PCMCIA卡(或其它派生类型), 这些类型PCMCIA的卡的尺寸有信用卡那么大或稍大。这种形状要素 是便于携带,并且可以插入到多种类型的计算机和消费者设备中,也可 以在诸如零售机构和银行等商业机构中的插孔中使用,还可以用在公共 通信处所,如电话亭或其它电信亭中。

机壳2602可以插入到由主机2608提供的端口、插槽或其它插孔, 也可以从中取出,这样是为了物理地(或操作地)连接到计算机或其它 电子设备。可以配置便携式设备连接器2604以便使拆卸更加方便,这 样,设备2600可以移动到位于另一地点的另一个计算机或其它电子设 备,从而与另外这台设备进行物理的连接、或进行其它操作连接。

便携式电子设备2600可以为用户提供了有用的和相对简单的手 段,使用户可以在他们的(兼容的)各种电子设备600之间移动许可和 方法,这些电子设备可以是笔记本计算机、桌上型计算机和办公室计算 机。便携式电子设备2600还可以(举例来说)使一个用户在去隔壁邻 居家串门的时候让邻居观看该消费者已经获得了观看许可的一个电 影,或者也许让邻居收听存放在大容量光盘中的曲目,而该消费者已经 获得了对该光盘无限次放音的许可。

便携式电子设备2600还可以充当金融交易或其它交易中的“智能 卡”,因此用户可以将它用于其它多种应用中,例如用于商业应用中。 便携式电子设备2600可以(举例来说)携带用于授权(还可能记录) 商业处理和服务的许可和/或方法信息。

在诸如银行和信用卡公司通常执行的财务交易中使用较佳实施例 VDE便携式设备2600的一个优点在于,VDE使得财务票据交换所(如 VISA,MasterCard或American Express)显著地降低了其操作成本。 票据交换所降低成本的原因在于:通过使用诸如便携式设备2600之类 的VDE电子设备600,计量和预算管理将发生在用户的站点本地,这 就可以减轻票据交换所的负担,使之不必每一个交易都参与。与目前的 要求相反,票据交换所将可以执行它们的功能,即定期地更新其记录(如 每月一次)。在某些情况下将出现审核和/或预算的“累计”,这些情 况可以是:在为传送审核和/或预算信息而启动的某个连接过程中;在 周期性出现的或按照相对周期性时间间隔出现的连接过程中;在更新、 购买信用的过程中或在便携式设备2600的其它交易过程中。

票据交换所VDE数字化分发交易将只需要对中央服务进行不定期 的授权和/或审核或其它管理性“累计”处理,而不是在每次会话期间 都进行代价昂贵得多的连接。由于不再需要维护信用卡购买过程的“书 面跟踪”(用以记录授权过程以及送交信用卡卡片的过程),票据交换 所的运行成本将实际大为降低(同时这也将潜在地降低用户的开销), 原因在于这种方式降低了通信成本,减少了支持信息并发处理的设施, 降低了交易处理成本中纸张处理方面的成本。使用便携式设备2600, 可以充分发挥利用每个VDE电子设备600计算能力的分布式处理,以 加强信用管理。上述在信用成本和处理方面的优越之处也可适用于非智 能卡和非便携式型VDE电子设备600。

由于VDE 100可以配置成高度安全的商业处理环境,而且由于 VDE提供的鉴别进程使用了数字签名处理,而这种数字签名提供了等 同于书面文件和手写签名的法律有效性,所以便携式设备2600就不再 需要维护书面的跟踪,即便对于代价更高的交易也是如此。由于在VDE 100中设置了可审核的计帐和控制机制,并且对这些机制自动化,因而 可以用这些机制替代那些针对VISA、MasterCard、AMEX以及银行 借贷帐户而制定的、用来数字化地分发其它产品和服务的传统电子接 口,而且这些机制可以为上述票据交换所节约实际运行开销。

如果需要的话,便携式设备2600可以为消费者维护便携式电子历 史记录。举例来说,可以将该便携式电子历史记录移动到放置于或可操 作地连接于计算机或其它消费者主机设备2608的电子“站台”(dock) 或其它插孔。主机设备2608可以是(举例来说)一个电子组织器,它 带有至少部分地类似微计算机的控制逻辑,并可以按照有组织的方式存 贮信息,例如按照税务和/或其它交易类型(如使用或活动的类型)进 行信息存贮。通过这种安排,消费者不再需要维护收据,也不需要手工 地跟踪交易,相反,他可以维护电子的、高度安全的交易审核跟踪和交 易说明。交易说明可以(举例来说)安全地包含用户的数字签名,并可 选地包含服务提供者或商品提供者的数字签名。

当便携式设备2600被连接到诸如个人计算机或其它电子设备(如 电子组织器)之类的主机2608时,便携式设备2600可以向该主机传送 中间的审核信息。在一个实施例中,上述信息可以被直接地或间接地读 入计算机或电子组织器的财金和/或税务管理程序(例如Quicken或 Microsoft Money和/或Turbo Tax和/或Andrew Tobias的Managing Your Money)中。这种自动化收据管理对消费者来说将是一个巨大的 福音,因为收据的管理和维护既困难又费时,收据经常被丢失或遗忘, 而且信用和计帐中的细节经常会出现完全不足以计帐和偿付目的的现 象,其原因是信用卡计帐通常不提供有关被购买商品或重要交易参数的 足够数据。

在一个实施例中,便携式设备2600可以支持与可带有VDE电子设 备600的零售终端或与零售商的或第三方供应者的VDE电子设备600 进行安全的双向通信(安全的通信在本例中即指加密和/或经鉴别的通 信)。在(举例来说)各个参与者的安全VDE子系统之间所发生的上 述安全双向通信过程中,便携式设备2600 VDE安全子系统可以向零售 终端VDE安全子系统提供鉴别处理和相应的信用卡或借贷卡信息。在 同一或不同通信会话期间,零售终端可以采用类似方式向便携式设备 2600 VDE安全子系统安全地传回有关零售交易的详情(如购买的商 品、价格、零售机构的数字签名、零售终端的标识、税务相关信息、等 等)。

例如,可以在零售机构终端或其它商业机构终端中安装或有效地连 接一个主机2608插孔,该插孔用来接插和/或连接便携式设备2600。 该主机终端2608既可以由一个商业机构雇员来操作,也可以由便携式 设备2600持有者来操作。它可以用来接收由特定键盘和/或声音输入的 特定信息,如请谁去吃晚饭、为何购买某件东西、或者信息应该归属的 类别。然后,信息可以自动地接受“语法分析”,并转送至便携式设备 2600中经过安全维护的相应数据库管理记录中。所述“语法分析”和 转送过程将受VDE安全子系统处理的安全控制,并且可以基于用户输 入的类别信息、和/或基于机构的类型、和/或基于消费信息(或其它使 用)的类型(类别)而进行。类别信息可以由零售机构提供,为此,(举 例来说)零售机构可以将电子类别信息(举例来说)作为电子收据信息 的一部分安全地传递出来,或者它也可以使用打印机2624打印一份硬 拷贝收据。这一分类进程可以发生在便携式设备2600中,或者也可以 由零售机构执行,并由零售机构定期“累积”然后传送给便携式设备 2600持有者。

零售、票据交换所或其它商业组织可以通过安全地向设备2600传 送的方式来维护和使用一个或多个通用交易类别(例如,由政府税务条 款规定的交易类别),这些通用交易类别可以用来实现将信息语法分析 为若干记录这一过程的自动化,以及/或者用来接受数据库信息“累 积”;并且/或者它们可用于便携式设备2600或一个或多个相关VDE 节点中。在这些例子中,主机2608可以(举例来说)含有一个辅助终 端,它也可以含有或被直接安装进一个商业机构现金出纳机或其它零售 交易设备。该辅助终端可以由菜单和/或图标驱动,并且支持用户对类 别进行十分容易的选择。它还可以根据交易类型而提供若干模板,这些 模板可以引导用户指定有用的或所需的交易特定信息(例如,某个商务 晚餐的意图、以及/或者参加该晚餐的人员)。例如,用户可以选择了 一个商务图标,然后在旅行、销售、进餐、管理、或购买图标中选择(举 例来说),之后他可以输入特别具体的信息和/或关键字,或其它代码, 该输入可能导致交易细节被下载到便携式设备2600中。这些信息也可 以由商业机构存放,而且也可以被传送到相应的政府和/或商务组织, 以便这些组织对报告来的交易进行确认(VDE的审核、通信、鉴别和 确认所具备的高度安全性应该足够可信,以便不需要维护并行审核历 史,但是至少在一段有限的时间内需要支持和保持并行维护,这是为了 在便携式设备2600和/或与VDE安装设备相关联的一个或多个设备 2600出现信息丢失或“失效”的情况下能够提供备份信息,其中,与 VDE安装设备相关联的一个或多个设备2600使用VDE安装设备进行 历史和/或信息记录维护)。例如,如果一个零售终端维护了涉及设备 2600的必要交易信息,它可以将这种信息传送给票据交换所以便存档 (以及/或者执行其它操作),它也可以定期地(例如在交易日结束的 时候)采用(举例来说)VDE信息内容容器对象的形式安全地将上述 信息发送给票据交换所或票据交换所代理。可以维护上述交易历史信息 (以及所需的任何VDE相关状态信息,如可用的信用),并且在需要 的时候可以根据该交易历史信息重新创建便携式设备2600中的信息, 以允许向设备2600的用户提供替换设备,或者允许在数据中适当地复 位内部信息,而这种替换和/或复位提供所有必要的交易和状态信息。

在零售机构中,辅助终端主机2608的形式可能是提供给用户的一 个便携式设备,例如在进餐之后提供给用户。用户可以将其便携式设备 2600插进一个诸如PCMCIA插槽之类的智能卡插孔中,然后他可以输 入其它任何信息,这些信息可以正确地地描述了本次交易,同时还满足 了电子设备600识别过程所提出的任何要求。如果可用的信用足够的 话,那么本次交易将得到准许,接着,交易相关信息将从辅助终端传回 并直接送至便携式设备2600中。对于信用使用和记录管理过程来说, 上述过程将是一个非常方便的模式。

便携式设备辅助终端可以是“在线的”,即通过使用蜂窝通信、卫 星、射频或其它通信手段将信息电子地传送回商业机构和/或第三方信 息收集点。商业机构在收集点接受到某些识别信息时将执行一次检查, 在检查之后,辅助终端可以根据其它信息向商业机构发回消息,表明是 否接受便携式设备2600,所述的其它信息包括:信用记录是否坏的, 或使用的是否是窃得的便携式设备2600。这种便携辅助终端在其它商 业机构中也十分有用,例如用于加油站、租用汽车返还区、街道和体育 馆自动售货机、酒吧、以及其它商业机构,在这些场所,由于允许职员 和其它人员当场完成交易,而不是在传统的现金出纳机所在地完成,所 以效率将大大提高。

如上所述,便携式设备2600可以不时地与诸如VDE管理员之类的 其它电子设备600通信。在便携式设备2600使用会话期间发生的通信 可能源于内部存放的某些参数,这些参数要求:在便携式设备使用的当 前会话(或下一个会话,或其它会话)期间应该进行通信。电子设备 600可以携带有关实际日期、或时间窗口、或时间段的信息,这些信息 将在适当的时候请求进行通信(例如,也许在某些交易或其它进程之 前、之中或紧接之后,这些交易或进程是用户为本次会话所一直预期 的)。这种通信可以迅速完成,并且可以是安全的VDE双向通信,在 该通信过程中,信息被传送到一个中央信息处理器。可以将某些其它信 息传递给便携式设备2600和/或该便携式设备2600所连接的计算机或 其它电子设备。上述被传送的其它信息可以允许或禁止一个预期的进程 继续执行下去,以及/或者使便携式设备2600的至少一部分失效或生 效。传送到便携式设备2600的信息可以包含对许可和方法的一个或多 个修改,例如复位或增加一个或多个预算,增加或撤消某些许可,等等。

由便携式设备2600携带的许可和/或方法(即预算)可以已经结合 另一个静止VDE电子设备600或其它便携式VDE电子设备600的“留 存数据”(encumbering)而分配给该便携式设备2600了。在一个例 子中,便携式设备2600持有者或其它VDE电子设备600和/或电子设 备600用户可以充当由另一方执行的交易中财务部分的“担保人”。持 有者的便携式设备2600将记录一个“留存数据”,该“留存数据”将 在与票据交换所的一次安全通信中被票据交换所和/或某些其它财务服 务机构记录并维护,直到上述另一方的所有或部分债务已被偿清或得到 圆满解决为止。作为一种选择或补充,也可以在便携式设备2600中维 护上述“留存数据”,它代表了担保人的可能义务。可以采用某种公式 将上述留存数据计入用来确定担保人可用信用的确定中去。信用的转 移、接受、以及/或者记录的管理、以及相关进程均可以由本发明各方 面所提供的多种安全措施进行安全地维护。便携式设备2600可以是对 应于一个或多个VDE对象300的所述许可和/或方法的唯一存放地点, 它也可以携带对应于所述对象的预算信息,而该预算信息独立于在另一 个非便携式VDE电子设备600中出现的所述对象的预算。这种方式允 许预算是可携带的(举例来说),不需要“留存数据”和预算协调。

便携式VDE电子设备2600可以携带(上述其它VDE电子设备600 也可以携带)某些信息,这些信息描述了信用历史细节、授权概要和使 用历史信息(一定程度的交易历史或相关概要信息的审核,例如对特定 类型/类别信息的使用),这些信息允许在不花代价地或代价较少的前 提下重新使用某些受VDE保护信息。这种使用情况或使用代价可以至 少部分地依赖于先前使用受VDE保护信息中一个或多个对象、或对象 类、或使用量度的情况。

便携式设备2600还可以带有可至少部分地用于识别用途的某些信 息。可以按照某种顺序(例如,基于伪随机数算法的某种模式)使用这 些信息,以校验便携式设备2600携带者的身份。这种信息可以包含(举 例来说)某人自己的、或妻子的和/或其它亲戚的婚前姓氏、或者某人 自己的和/或其它人的社会安全号码、出生日期、出生医院、以及其它 识别信息。另外或者作为另一种可选方案,它还可以提供或带有一个或 多个口令或用来标识或校验/鉴别个人身份的其它信息,诸如声音复制 信息和视网膜扫描信息。例如便携式设备2600可以用作一个智能卡, 它带有各种用于鉴别和预算的许可和/或方法信息。这些信息可以按照 安全数据库610的组织方式安全地存放在便携式设备2600之中。当用 户试图购买或许可一个电子产品时,或使用该“智能卡”来授权一项处 理时,便携式设备2600可以询问用户有关识别信息,或启动一个识别 进程,该进程将用到扫描的或输入的信息(例如用户指纹、视网膜或声 音分析技术,这些技术可以(举例来说)将所提供的特征与安全地存放 在便携式设备2600中信息进行映射和/或匹配)。便携式设备2600可 以在不同时间进行不同的问询(和/或提出大量问询或请求,以期扫描 或输入识别信息),这样可以防止某人在已经知道了上述一次或多次身 份“测试”的正确答案之后便可以成功地使用便携式设备2600。

便携式设备2600还可以将电子货币或信用转移到另一个便携式设 备2600中,或转移到另一个人的帐户中,这可以通过(举例来说)使 用在安全VDE子系统之间针对相关信息内容的安全VDE通信机制来 实现。如果某个银行具备将信用和/或货币转移到另一个帐户的能力, 那么通过与该银行进行远程通信,或在该银行内办理相应业务,就可以 完成上述转移过程。也可以在同一便携式设备2600站台中使用两张卡 片以便进行上述转移。例如,信用交易工作站中可以带有双PCMCIA 插槽和相应的信用和/或货币转移应用软件,该软件支持安全地从一个 便携式设备2600中借款,而向另一个便携式设备2600“贷款”(即在 将一定的信用和/或货币贷放到一台设备中的同时,将会从另一设备中 借出相应款项)。一个电子设备600(举例来说)可以为另一个用户提 供经鉴别的信用。使用双“智能卡”便携式设备2600可以允许用户提 供“信用”“智能卡”,使之经历某个交易过程,而在该过程中,所述 用户首先提供适当的标识(例如,一个口令),然后就可以识别用来标 识另一个“智能卡”便携式设备2600的一个“公开密钥”。上述的另 一个“智能卡”便携式设备2600可以运行接受进程,并提供数字签名 的正确标识(并且,信用和/或货币发送者还可以数字地签准某个交易 证明,因而使发送证明书不会遭到否认。另外,该证明还可以与上述信 用和/或货币放在一起共同作为VDE容器信息内容)。上述交易可能涉 及(举例来说)用户接口交互过程以便约定本次转移的利息和/或其它 条款。这可以使用常见交易类型的模板,该模板中针对某些说明了双方 协议的参数向信用提供者提出询问。可以针对是否接受上述条款这一问 题交互地或整个地询问接受方便携式设备2600的意见。在使用智能卡 将电子信用和/或货币转移到另一个智能卡或其它VDE设备的过程中, 可以使用本专利申请书所介绍的各种VDE协商技术。

这种VDE电子设备600/便携式设备2600信用转移特性将显著地降 低管理某些电子信用和/或货币事务所带来的开销,因为这些设备扩展 了对信用控制和信用可用性的计算机处理,从而大大地自动化了上述事 务处理,所述的计算机处理以信用卡作为开端并扩展到了借帐卡。信用 扩展和/或货币转移的自动化,以及上述的相关分布处理所具有的优越 性,包括在每次交易中不再需要任何集中化处理和远程通信,真正地使 信用和/或货币对于许多消费者和其它电子货币和/或信用用户来说成为 了一种有效的、可信的、便携的日用品。

在一个实施例中,便携式设备2600或其它VDE电子设备600可 以使许多税收处理工作自动化。电子设备600可以高度安全地记录财务 交易,识别交易的特征,确定所需的销售税或相关的政府交易税,从用 户的可用信用中扣掉税款,并按照某个时间间隔(如每月一次)安全地 将该税款信息直接传送到一个或多个政府代理处,以及/或者将该税款 信息安全地传送到(举例来说)某个票据交换所,然后该票据交换所再 将一个或多个安全的、加密的信息(或由票据交换所计算出来的非安全 数据信息,或计算得出的信息)审核包(如该包可以是VDE信息内容 容器,并使用了安全的VDE通信技术)传送到一个或多个相应的、参 与该业务的政府代理处。VDE 100的整体完整性和安全性具有一致性 和集中化的特征,它可以保证(从一个或多个电子商业事务中得到的) 税务相关信息的电子化报告过程是有效的和全面的。它还可以在销售税 征收划拨过程中充当相关信息的确认源(例如,假定所述资金由一个商 业操作直接划拨到政府,并且/或者其划拨方式保证了被报告的税务相 关信息在VDE税务信息处理通道中无法被其它团体破坏)。政府代理 处可以随机地选择交易,或者可以选择对应于给定商业操作的被报告交 易之中的某些部分或所有部分。这可以用来确保该商业操作确实正在向 政府支付赋税所需的所有适当征收资金,还可以确保对最终用户征收了 适当交易税款(包括从银行帐户上收到利息、接受投资、接受礼物,等 等)。

便携式设备2600的财务和税务处理可以包含所述的模板机制。一 方面,如果至少部分地采用便携式设备2600对电子信用和/或货币事务 进行管理,那么这种管理的效能将特别引人注目;另一方面,信用和/ 或货币转移以及类似特性还可适用于那些连接到或安装进计算机或其 它电子设备的非便携式VDE电子设备600。

用户通告异常接口(“弹出式”)686

如上所述,用户修改异常接口686可以是一套用户接口程序,用来 处理常用VDE功能。这些应用可以采用VDE模板的形式,其设计基 于了涉及一些重要选项的某些假设,这些重要选项特别对应于某些 VDE用户模型以及在某些事件发生后必须报告出来的重要消息。  “弹 出式”用户接口686的一个主要功能是提供一个简单的、一致的用户接 口,(举例来说)通过该接口向用户报告计量事件和异常(例如这种异 常可能是某些特殊情况,在该情况下,自动处理过程或者不可能进行, 或者有争议地不合乎需要的),允许用户配置其电子设备600某些方面 的操作,以及在适当的时候允许用户对是否执行某些交易处理进行交互 地控制。如果一个对象包含了异常处理方法,那么该方法对“弹出式” 用户接口686如何处理特定类型的异常作出控制。

“弹出式”接口686通常支持对非专用于特定对象300的任务进行 处理,例如:

登录到电子设备600和/或输入VDE相关操作或操作类

为已注册的用户与/或通常针对本设备,考虑到用户的选 择配置电子设备600,并自动处理某些类型的异常。

在适当的时候,由用户选择计量器,以便结合某些特定 参数使用该计量器,以及

提供与其它电子设备600通信的接口,包括向分发者请

求、和/或购买或租用信息内容,向票据交换所请求票据交换所

信用和/或预算,以及/或者从其它电子设备接受信息或向其它电

子设备发送信息,等等

图72A示意了VDE电子设备600常用“登录”功能,该功能可以 使用用户接口686。通过输入用户名、帐户名和/或口令可以完成“登 录”。如本例所示,“弹出式”用户接口686对话框中提供了一个名为 “在启动时登录”的配置选项,该选项如果被选中的话,当用户的电子 设备600每次被开机或复位的时候,都将自动地启动VDE登录过程。 类似地,“弹出式”用户接口686可以提供称为“在某种类型上登录” 的接口选项,当该选项被选中的话,每次打开特定类型的对象或特定信 息内容类型的应用时,都将自动启动该登录过程,上述特定类型对象或 应用的例子有:特定目录中的文件、带有特定扩展名的计算机应用或文 件、等等。

图72B示意了在用户发出的某个动作被“截获”时“弹出式”用 户接口686对话框的示例,在这种情况下,对话框将提醒用户由该用户 动作所引起的花销数量,同时还提醒用户被请求的对象300的有关情 况,以及使用该对象需要的花费是多少。在本例中,接口对话框提供了 一个按钮,它允许用户请求有关对象的进一步详细信息,包括完整的文 本描述、相关文件的列表、以及可能的该对象过去使用情况历史,包括 有关使用该对象的剩余权利或相关折扣。

图72B中的CANCEL(取消)按钮2660用来取消被“截获”的 用户请求。在本例中CANCEL按钮是该对话的默认按钮,为激活该按 钮,可以在用户键盘612上按返回键或回车键、用鼠标揿击该按钮、使 用声音命令、或使用其它命令机制。APPROVE(“同意按钮”)允 许用户同意上述花销并继续执行下去,该命令必须明确地由鼠标揿击或 其它命令过程选中。MORE OPTION(“更多选项”)控制2664将 该对话框扩展到更详细的程度,这些详情中具有更多的选项,图72C 中示意了一个这样的例子。

图72C是“弹出式”用户接口686呈现给用户的一个二级对话框, 当图72B中MORE OPTION按钮2664被用户选中的时候将出现该二 级对话框。如图所示,该对话框含有多个按钮,以便提供更多的选项以 及执行不同的任务。

在该特定例子中,可以允许用户设置“限制”值,例如会话费用限 额(字段2666)、总共交易费用限额(字段2668)、时间限制(分钟) (字段2670)、以及“单位限制”(诸如段落、页等单位的数目)(字 段2672)。一旦用户完成选择之后,他可揿击“OKAY”按钮(2764) 以确认这些限制的选择,并使之生效。

因此,弹出式用户接口可以用来指定用户的选择,例如,在任一会 话中、或在一个时间段中或到某个特定时刻的设置对象的信息内容使用 预算和/或其它方面的限制。

对话框还可以用来选择对象相关使用选项,例如选择用于一个或多 个对象的计量器和预算。为将选出的选项施加到类型相关(即类别)的 对象,可以将指令与一个或多个标识出的参数建立关联,而这些参数则 涉及到所需的一个或多个类型。用户指定的配置信息可以设置在各种情 况下都使用的默认值;另外,由于在某些情况下用户对一个对象使用可 以被“弹出式”接口686对话框所中断,而用户指定的配置信息则可以 用来限制出现这些情况的数目和类型。例如,用户可以指定:对于受 VDE保护的信息内容的用户请求应该被自动执行而不要(由于出现异 常动作)被中断,前提条件是:对信息的所需处理花费不会超过25.00 美元,并且整个目前会话(和/或当前日、和/或当前周、等等)的总费 用不超过200.00美元,并且全部未结的和未支付的使用费尚未超过 2500.00美元。

弹出式用户接口对话框还可以用来通知用户有关重要的情况和时 间。例如,接口686可以用来:

提醒用户向票据交换所发送审核信息

通知用户某个预算值较低而需要补充

提醒用户备份安全数据库610,以及

通知用户有关PERC的过期或其它日期/时间事件

其它“弹出式”用户接口686的重要功能还包括某些对话框,这些 对话框允许用户灵活地浏览可以得到使用许可或可以购买的对象或产 品库,这些对象或产品或者是存贮在本地的受VDE保护对象,或者来 自于一个或多个不同的、位于远程的信息内容提供者。有多种时机可以 提供这种功能,例如当用户的计算机连接到一个远程分发者的或票据交 换所的电子设备600时,或者在进行了某种选择(例如选择了一个产 品、一个资源位置、一类对象或资源等)之后与一个远程资源建立了电 子连接时。上述浏览接口可以支持一旦用户选择了某个项就自动建立上 述电子连接,或者可以由用户明确地启动上述连接本身。图72D给出 了这种“浏览”对话框的例子。

智能对象

VDE 100将其控制功能和特性延伸到了“智能代理”。通常,“智 能代理”可以充当一个使者,它允许调度它的进程得到该进程指定的结 果。能够在调度进程不在的时候执行处理的智能代理有一个特别有用的 用途,即允许其调度进程通过它们的代理访问远程电子设备中的资源。 在这种情况下,调度进程可以创建一个代理(如某个计算机程序和/或 与某个计算机程序相关联控制程序),在创建过程中指定了需要完成的 特定任务,然后将该代理调度到远程系统中。一旦到达该远程系统,“代 理”可以使用远程系统的资源执行分配给它的任务。这种方式可以使得 调度进程实际上将自己的功能延伸到了它未在其中的远程系统。

在这种方式下使用“代理”可以提高灵活性。该调度进程可以通过 其代理指定所需执行的特定任务,该任务在远程系统中可能不存在或不 可用。使用这种代理还增加了可信度;调度进程可以只需“信任”其代 理,而不是信任整个的远程系统。代理还具有其它优点。

软件代理要求具有有效的、安全的和有用的高度控制和责任。计算 机病毒形式的代理已经在世界范围内造成了破坏性影响。因此,允许代 理访问的系统必须有能力控制该代理,或必须有能力防止该代理毁坏其 重要资源。另外,允许代理访问的系统应该足够地信任该代理,并且/ 或者提供一种机制以掌握应对该代理行为负责的真正代理调度者。类似 地,调度进程应该有能力充分地限制和/或控制其调度的代理的权限, 否则,它将可能要为该代理的不可预料行为负责(例如:调度进程提供 给代理的指令可能不准确,在代理执行这些指令的过程中,它可能会积 累出一个高额的帐单)。

在使用软件代理过程中出现的上述严重问题以前未能得到充分解 决。VDE 100的开放、灵活的控制结构则提供了对软件代理(如代理 对象)的必要控制和责任,从而解决了上述问题。例如,VDE 100确 实地控制对信息内容的访问和使用,提供对被使用信息内容付款的担 保,并加强对被访问信息内容的预算限制。这些控制功能较好地适于调 度代理的进程以及由被调度代理所访问的资源两者对被调度代理的行 为进行控制。

本发明较佳实施例的一个方面提供了含有一个代理的“智能对 象”。通常,“智能对象”可以是一个VDE对象300,它含有某些类 型的软件程序(“代理”),这些软件程序在VDE电子设备600中结 合VDE控制信息一起使用。基本的“智能对象”可以包含一个VDE 对象300,该VDE对象300(举例来说)则(物理地和/或虚拟地)含 有:

一个软件代理,以及

与该软件代理相关联的至少一个规则和/或控制,用来控制该代理 的操作

尽管上述基本结构已经足够可以定义“智能对象”,图73示意了 若干容器和控制信息的组合,它提供了一个特别优越的智能对象结构示 例,该智能对象用于安全地管理和控制软件代理的操作。

如图73所示,智能对象3000可以由容器300构成,在该容器300 中嵌入了一个或多个另外的容器(300z,300y,等)。容器300还可以包 含规则和控制信息以控制对这些嵌入容器300z,300y等的访问和使 用。嵌入到容器300中的容器300z使对象3000成为了一个“智能对 象”。它含有一个由VDE 100管理和控制的“代理”。

与容器300z相关联的规则和控制信息806f对某些特定情况进行控 制,在这些情况中,代理将被发送到远程VDE站点并执行,这些信息 中包含(举例来说)基于执行所需费用而得出的任何有关执行的限制。 可以在容器300z中完整地规定规则和控制信息,并且/或者可以将规则 和控制信息作为容器300的一部分交付、作为另一容器(该容器或者位 于容器300之中,或者是一个可独立交付的容器)的一部分交付,并且 /或者该规则和控制信息已经存在于远程VDE站点之中。

第二个容器300y则是可选的,其内容描述了存放在容器300z中的 代理所要执行的地点。容器300y也可以含有规则和控制信息806e,这 些规则和控制信息描述了对容器300y中的信息内容进行使用或改变的 方式。该规则和控制信息806e和/或容器300y中还包含的其它规则 300y(1)可以描述搜索和路由选择机制,这些机制可以用来将智能对象 3000引导到所希望的远程信息资源中。容器300y可以包含和/或引用规 则和控制信息300y(1),规则和控制信息300y(1)规定了如何支付对搜索 和路由选择信息的使用和所做的任何修改。

容器300x是一个可选的信息内容容器,当智能对象3000被调度到 远程站点时,容器300x初始为“空”。它含有规则和控制信息300(1), 当存放在容器300z中的代理经过执行检索到信息内容后,规则和控制 信息300(1)用来控制对该信息内容的存放。容器300x还可以含有有关 存放在检索容器中的信息内容值的限制,以便限制检索到的信息内容数 量。

容器300中的其它容器可以包括若干管理对象,这些管理对象含有 审核和计帐跟踪,描述了存放在容器300z中的代理的行为,以及由于 在远程VDE节点中执行代理所引起的任何费用。智能对象3000的实际 结构取决于受控的代理类型、代理执行所需的资源、以及被检索的信息 类型。

图73所示的智能对象3000可以用来在VDE 100中对代理的操作 进行控制和管理。下面将对图74所示的示例智能对象交易进行详细解 释,该例子将是一个有帮助的同时又是一个非限制的示意。在该特定例 子中,假设用户将创建一个智能对象3000,该智能对象3000利用“特 别快速和高效”的软件代理执行图书馆资料搜索,以便搜索出描述了有 关所感兴趣的主题(如“萤火虫”)的书籍。搜索机设计成把书籍的清 单返回给用户。在本例中,搜索机为查找到相应书籍所需的花费不超过 10.00美元,为访问图书馆或通过通信到达图书馆所需的花费不超过 3.00美元,所检索到的信息收费则不超过15.00美元。有关搜索和使用 的所有信息都将返回给该用户,而该用户将不允许涉及该用户或代理的 任何信息被发布给第三方。

在本例中,调度VDE电子设备3010构成了如图73所示的智能对 象3000。806a中的规则集合则规定为一个控制集合,它包含下列元 素:

      1.一个smart_agent_execution(智能代理执行)事件,

  该事件规定了该智能对象存放在嵌入容器300z中;它还带有某

  些规则,以控制由容器300z指定的智能对象的执行;

      2.一个smart_agent_use(智能代理使用)事件,该事件

  规定了智能代理将使用存放在容器300中的信息和参数进行操

  作;

      3.一个routing_use(路由使用)事件,该事件规定了信

  息路由选择信息存放在容器300y中;它还含有若干规则,用来  

  对存放在上述容器中的上述信息进行控制;

      4.一个information_write(信息写)事件,该事件规定

  了根据所写信息的类型(路由选择信息、检索得到的信息、或

  管理信息)将这些信息存放在容器300y、300x、或300w中,

  并且这些容器具有独立的规则以控制信息如何写入它们之中。

控制集合806b中的规则集合包含了若干规则,这些规则规定了智 能对象3000所需的权利。具体地说,该规则集合表明上述软件代理需 要:

      1.在远程VDE站点中使用“代理执行”服务的权利;由

  容器300z携带针对上述权利的特定计帐和收费信息;

      2.在远程VDE站点中使用“软件描述清单”服务的权利;

  由容器300y携带针对上述权利的特定计帐和收费信息

      3.在远程VDE站点中使用“信息定位器服务”的权利;

      4.无须缴费(发布信息则需收费,并且将由VISA预算进

  行付帐)便可以使信息返回给用户的权利;

      5.一个特定权利,该权利允许返回所有审核信息而只有

  发送者才可以读这些信息。

控制集合806b中的规则集合规定了:容器300w规定了如何处理 与该容器的使用相关联的所有事件;控制集合806d中的规则集合规定 了:容器300x规定了如何处理与该容器的使用相关联的所有事件;控 制集合806e中的规则集合规定了:容器300y规定了如何处理与该容器 的使用相关联的所有事件;控制集合806f中的规则集合规定了:容器 300z规定了如何处理与该容器的使用相关联的所有事件。

按照规定,容器300z包含“特别快速和高效”代理的信息内容, 它与下面的规则集合相关联:

      1.一个使用事件,该事件指定了一个计量器和VISA预

  算,该预算限制执行的费用不超过10.00美元,费用由所有者的

  VISA卡支付。需要提供使用的审核,并且该审核要在对象300w

  所指定控制信息的控制下存放在对象300w中。

在指定了容器300z及其规则集合之后,这些信息将被创建并嵌入 在智能对象容器300中。

按照规定,容器300y是一个含有两类信息内容的信息内容对象。 信息内容类型A是路由选择信息并且具有读/写特性。与信息内容类型 A相关联的规则集合规定了:

      1.一个使用事件,该事件规定了对该信息内容的发布不

  执行任何操作,其效果是对该信息内容的使用不收费;

      2.一个写事件,该事件指定了一个计量器和VISA预算,

  该预算限制写操作的费用不超过3.00美元。写操作所用的计帐

  方法未予规定,该方法将被使用该规则的控制方法规定。

      3.需要使用的审核,并且该审核要在对象300w所指定控

  制信息的控制下存放在对象300w中。

信息内容类型B是软件代理所使用的信息,它为该代理指定了参 数。该信息内容被规定为串“萤火虫”(“fire fly”或“fire flies”)。 信息内容类型B与下面的规则集合相关联:

      1.一个使用事件,该事件规定了该使用只能由软件代理

  或路由选择代理执行。对于该信息,软件代理具有只读许可,

  而路由选择信息具有读/写访问。对于该信息的使用不收取费

  用,但是要使用两个计量器进行计量,一个计量器用于计量读

  操作,另一个计量写操作,它们将跟踪各个处理步骤对该信息

  的使用。

      2.需要使用的审核,并且该审核要在对象300w所指定控

  制信息的控制下存放在对象300w中。

在指定了容器300y及其规则集合之后,这些信息将被创建并嵌入 到智能对象容器300中。

按照规定,容器300x是一个信息内容对象,该对象不含有任何信 息内容。它带有的控制集合包含下面的规则:

      1.一个write_without_billing(无须计帐的写操作)事

  件,该事件指定了一个计量器和一个通用预算,该预算限制写

  操作的费用不超过15.00美元。

      2.需要使用的审核,并且该审核要在对象300w所指定控

  制信息的控制下存放在对象300w中。

  3.一个空的使用控制集合,该集合可以被该信息的所有

  者利用预定义的方法(方法选项)填充。

在指定了容器300x及其规则集合之后,这些信息将被创建并嵌入 到智能对象容器300中。

按照规定,容器300w是一个空的管理对象,它带有的控制集合包 含下面的规则:

       1.一个使用事件,该事件规定:包含在该管理对象中的

  信息只能被发布给智能对象容器300的创建者。

       2.容器300w中的上述管理信息内容不附加其它规则。

在指定了容器300w及其规则集合之后,这些信息将被创建并嵌入 到智能对象容器300中。

此时,该智能对象已经创建好,并准备就绪可以被调度到远程站 点。该智能对象通过路径3014(如使用电子邮件或其它传送机制)被 发送到了含有信息定位器的远程站点。该智能对象在远程站点3012为 使用“项定位器服务”而注册。容器中有关“项定位器服务”的控制集 合被选中,并且该控制集合所包含的规则在远程站点3012被激活。然 后,远程站点3012在规则集合806f和300y(1)的控制下读取容器300y 的信息内容,并允许按照这些规则将一个位置信息的列表写入容器 300y。项定位器服务将含有三个条目的列表写入了该智能对象,然后 对该智能对象“取消注册”(此时该智能对象包含了位置信息),并将 该智能对象通过通路3018发送到站点3016。站点3018由写入到智能 对象中的列表所指定。在本例中,用户可以已经指定电子邮件作为传送 机制,并且将可能含有所需信息的远程站点列表存放在一起,作为一个 转发列表。

智能对象3000一旦抵达第二远程站点3016后,将在该站点处注 册。站点3016提供代理执行以及与VDE兼容的软件描述列表服务,作 为提供给智能对象的一项服务。它将这些服务对外公布,并规定为启动 代理,它将收费10.00美元,而对于返回的所有信息,其收费标准为每 条信息20美元。注册进程将公布的服务信息与存放在上述对象中规则 进行对比,并确定不存在可接受的重叠。对所有这些动作的审核信息都 被写入管理对象300w中。然后该注册进程失败(该对象未被注册), 站点3016通过通路3022将该智能对象转发给列表中的下一VDE站点 3020。

智能对象3000一旦抵达第三远程站点3020后,将在该站点处注 册。站点3020提供代理执行以及与VDE兼容的软件描述列表服务,作 为提供给智能对象的一项服务。它将这些服务对外公布,并规定为启动 代理,它将收费1.00美元,而对于返回的所有信息,其收费标准为每 条信息0.50美元。注册过程将公布的服务信息与存放在上述对象中规 则进行对比,并确定存在可接受的重叠。该注册过程创建一个URT, 该URT规定了协商同意的控制信息。该URT与其它控制信息一起使 用,以便在VDE控制下执行上述软件代理。

该软件代理开始执行,并从容器300y中读取其参数。然后,它开 始搜索数据库,并在该数据库中获得了253次“命中”。命中清单被写 入容器300x,一起写入的还有一个完整控制集合,该控制集合规定了 每个项的粒度,并规定每一个项收费0.50美元。一旦完成搜索,使用 该服务的预算被增加1.00美元,以反映出对该服务的使用费用。对所 有上述操作的审核信息被写入管理对象300w中。

远程站点3020通过通路3024将目前的“饱和”智能对象3000传 送回VDE节点3010上的原始发送者(用户)。抵达以后,智能对象 3000被注册,数据库记录可以从中得到。此时,由容器300x规定的控 制信息是两种控制信息的混合,一种是原始的控制信息;一种控制信息 则由上述服务指定,它与信息的远程的释放相关。然后,该用户从智能 对象3000中抽取出20个记录,在抽取记录的同时,其VISA预算被收 费10.00美元。

在上述智能代理VDE示例中,本文描述了智能对象3000及其组成 容器的一种特定组织。也可以创建VDE及智能对象相关控制信息和参 数的其它组织形式,并将之应用于上例所述对象3000所适用的相同用 途。

协商和电子合同

电子合同是协议的一种电子形式,它包含了权利、限制、以及各方 对该协议应承担的义务。在许多情况下,电子协议主要是围绕着对以数 字形式提供的信息内容的使用,例如,电子协议可以是一份许可证,用 来许可观看数字化分发的电影。不过,电子协议不一定要局限于电子信 息内容的存在,或其针对的也不一定是由准备达成协议的一方或多方对 电子信息内容的使用事宜。作为最简单的形式,电子协议含有一个权利 和以及对该权利的使用进行管理的一个控制。

象传统的协议一样,电子协议可能需要参与各方的协商(由一方或 多方提出的条款和条件可以简单地被其它一方或多方接受(依附合 同),并且/或者上述其它各方可以有权选择某些上述的条款和条件(同 时这些其它各方可以提出其它条款和条件))。在字典中,协商定义为: “由于相互达成一致而集合在一起的行为”。较佳实施例提供了电子协 商进程,在该进程中,利用针对条款的电子化自动协商可以创建权利及 相关控制。协商通常需要对权利及其相关控制的精确说明。PERC和 URT结构提供了一种机制,使用这种机制可以产生对权利及其控制的 精确电子化表示。因此,VDE提供了用户和制作者可以用来规定其愿 望的“词汇表”和机制。多个自动化进程可以对这些愿望进行解释,根 据这些愿望,经过适当协商后到达一个共同接受的中间点。所述协商的 结果可以在一个结构中简明地描述出来,该结构可以用来控制和强制执 行电子协商的结果。由于VDE提供了安全执行空间,而该空间可以保 证协商进程在其操作过程中的完整性和保密性,所以VDE对协商进程 提供了进一步支持。上述协商进程也可以按照某种特殊方式执行,以防 止外部对协商进程的破坏。

通常,协议(特别是协议的电子化描述)应该具备的最后一个特征 是它们应该用不可被否认的形式被精确地记录下来。按照传统的做法, 上述过程涉及创建一个书面文件(一份合同),该文件描述了权利、限 制、以及参与各方对该协议应承担的义务。所有参与各方将阅读该文件 然后在上面签名,这样该文件将成为对上述协议的精确表示。电子协议 由于其固有的特点开始时可能不用书面表达。在VDE支持下,可以精 确地、电子化地描述这种协议,然后对之进行电子化地签名以防被否 认。另外,较佳实施例提供了一种机制,以提供人们可读懂的电子合同 条款描述。

VDE提供了一种规定控制集合的简明机制,这些控制集合对VDE 站点是可判读的。机器可判读的机制通常不是人类可读的。VDE经常 代表至少一个人类用户执行协商进程。因此,该协商最好能够以“人类 可读的格式”表达。VDE有关对象、方法、和加载模块的数据结构中 都准备了空间,以便在这些结构中规定一个或多个DTD。这些DTD 可以与上述项保存在一起,也可以单独保存。DTD描述了一个或多个 数据元素(MDE、UDE或其它相关数据元素),这些数据元素可以 包含对上述条目所具功能的自然语言描述。这些自然语言描述为各项提 供了与语言无关的、人类可读的描述。项的集合(例如一个BUDGET 方法)可以与自然语言文本相关联,该文本描述了项的集合的功能,并 形成了一份经过电子化规定的、具有可强制性的合同。项的集合(一个 控制集合)定义了与特定权利相关联的合同。因此,VDE支持电子合 同的电子说明、协商以及强制执行,这些电子合同可以被人类理解和遵 守。

VDE 100采用下面若干方式支持电子合同的协商和强制执行:

它支持对权利和控制信息的简明描述,这样就可以为协 商进程提供通用的词汇表和过程

它提供了安全处理环境,协商可以在该环境中执行

它提供了分布式环境,在该环境中,可以安全地分发权 利和控制的详细说明

它提供了安全处理环境,在该环境中,可以由协商合同 的进程采用电子方式描述和签准所商定的合同,以及

它提供了一种机制,该机制可以安全地强制执行商定了   的电子合同。 协商类型 协商的一种简单形式是:由一方提出要求并形成一份“依附”合同。 在该协商过程中,另一方可以选择的选项如果有的话也是很少。该要求 的接收方有一个简单的选择:他或者接受或者拒绝该要求中的条款和条 件(控制信息)。如果他接受上述条件,他就被授予了要接受指定控制 信息控制的权利。如果他拒绝上述条件,那么他不被授予上述权利。 PERC和URT结构可以根据要求支持协商进程。可以将PERC或来自 PERC的控制集合作为一种要求提出,而接收者可以接受或拒绝该要求 (如果提供了经过允许的备选方法的话,即可在其中进行选择)。

目前,上述协商类型的一个通用例子是在“收卷许可”(shrink -wrap license)的条款规定下购买软件。许多广泛采用的电子分发方 案使用这种协商方式。CompuServe是一种采用这种方式运作的在线 服务示例。用户面临的选择十分简单:或者支付指定的费用,或者不使 用该服务或软件。VDE可以支持这种类型的协商,因为它能够提供描 述了权利和控制信息的PERC和URT,同时,它还允许信息内容拥有 者提供REGISTER方法,该方法则允许用户从一套预定义的备选方法 中进行选择。在这种情况下,REGISTER方法可以包含一个部分,该 部分是一个简化了的协商进程。

协商进程的一个更为复杂的形式可以被比喻为“讨价还价”。在该 情况下,大多数条款和条件都是固定的,但是还有一个或多个条款(例 如价格或付款条款)则不是。对于这些条款,还需要就其选项、限制和 元素等方面进行磋商。可以用两方之间的VDE电子协商来决定所需 的、允许的、和可选的条款。电子协商的结果可以是一套最终的规则和 控制信息,它们规定了已完成的电子合同。一个简单的例子是在上述购 买软件的方案中增加购买者选择付款方式(VISA,MasterCard,或 American Express)的能力。一个更为复杂的例子是另一种购买信息的 方案,在该方案中,所付价钱取决于与使用审核跟踪一道返回的、有关 该用户的信息量。在第二个例子中,信息内容的使用权可以与两种控制 集合相关联,一种控制集合可以描述信息内容使用的一个固定(“较 高”)价格。另一个控制集合则可以描述信息内容使用的一个固定(“较 低”)价格,而对信息内容的使用要结合附加控制信息和字段说明,这 些字段说明要求收集和返回用户的个人信息。在上述两种情况下, PERC中的可选和允许字段以及控制集合可以描述某些选项,而这些选 项可以被选定为协商的一部分。为了执行上述协商,一方可以提出一个 控制集合,该控制集合含有由PERC规定的特定字段、控制信息、以 及某些限制。另一方可以从提议的控制集合中挑选和接受某些部分、拒 绝这些控制集合、或提出可用的替代控制集合。协商进程可以使用 PERC中所允许的、所要求的、和可选的规定,以确定最终规则集合的 可接受参数范围。一旦达成协议,协商进程将创建一个描述协商结果的 新PERC和/或URT。最终的PERC和/或URT将由参与协商的所有协 商进程“签准”(如使用数字签名),以便防止以后出现否认该协议的 情况。

被协商元素的其它例子有:电子现金、定购单、采购证明(礼物证 明、优待券)、标书和说明书、预算“回滚”和平衡、货币汇率、股票 购买、以及计帐比率。

图75A(由信息内容所有者发送的PERC)、图75B(由用户创 建的PERC,用来表示他们的选择和权利)以及图75C(用来控制协 商进程的PERC)示意了可以用来支持上述第二个例子的一套PREC。 这些PERC的使用可以结合下面所述的任意协商进程和协议。

图75A示意了PERC 3100的一个例子,该PERC 3100可能由信息 内容提供者所创建,用来描述他们的权利选项。在本例中,该PERC 含有涉及单一USE权利的信息。在本例中,针对该权利提供了两个可 选的控制集合3102a,3102b。控制集合3102a允许使用信息内容,而 不必传回有关用户的信息;而另一个控制集合3102b则在允许使用信息 内容的同时,从用户那里收集“响应卡”类型的信息。控制集合3102a, 3102b两者都可以对大多数控制信息使用通用的方法集合。该通用控制 信息由CSR 3104和CS0 3106表示。

该PERC 3100中的控制集合3102a描述了一种机制,使用这种机 制,用户可以得到信息内容,同时不必向信息内容提供者提供有关该信 息内容用户的任何信息。控制集合3102a规定了众所周知的出售控制方 法以及必要方法和备选方法的集合。特别地,在本例中,控制集合3102a 定义了一个BUDGET方法3108(如VISA、Mastercard或American Express其中之一),并定义了一个BILLING方法3110,BILLING 方法3110定义了一项费用(如一次性收费100.00美元)。

该PERC 3100中的控制集合3102b描述了另一种机制,用户可以 通过该机制得到信息内容。在本例中,控制集合3102b规定了另一种的 出售控制方法以及必要方法和备选方法的集合。该第二种控制集合 3102b规定了一个BUDGET方法3112(如VISA、Mastercard或 American Express其中之一)、一个BILLING方法3116、以及一个 AUDIT方法,BILLING方法3116规定了一项费用(如较低的一次性 收费25.00美元),AUDIT方法规定了一套所需的和必要的字段。上 述必要的和所需的字段说明3116可以采用DTD说明的形式,在该字段 中列出了字段的名字。

信息内容制作者可以“建议”两个控制集合之一(如控制集合2) 而舍弃另外一个。如果是这样的话,在协商过程中可以首先“提供”上 述被“建议”的控制集合,并且,如果其参与协商的另一方“拒绝”该 “建议”的控制集合时,该“建议的”控制集合可以被撤出,而采用“非 建议”的控制集合。

在本例中,上述两个控制集合3102a,3102b可以共享公用的 BUDGET方法说明。如果需要的话,可以将BUDGET方法说明放置在 CSR 3104或CS0 3106控制集合中。当控制集合3102a(使用该控制集 合时没有信息返回)被选中时,将会按照PERC 3100的规定装配一个 唯一的部件组。特别地,在本例中,该部件组将选择“出售”CONTROL 方法3118、100美元固定费用的BILLING方法、以及由CSR 3104和 CS0 3106规定的其余控制信息。部件组还要求用户选定他所接受的 BUDGET方法(例如从VISA、Mastercard或American Express中进 行选择)。选择控制集合3102b将会导致装配另一个部件组,该部件组 使用了“带响应卡的出售”CONTROL方法3120、BILLING方法3116 (例如25美元的固定费用)、以及一个AUDIT方法3114,该AUDIT 方法3114需要必要字段DTD 3116中列出的字段。该进程还可以从所 需字段DTD 3116列出的字段中选择该进程可用的所有字段。其余控制 信息由CSR 3104和CS0 3106规定。对控制集合3102b的选择过程还 强迫用户选定他们所接受的BUDGET方法(例如从VISA、 Mastercard或American Express中进行选择)。

图75B示意了一个控制集合3125的例子,该控制集合3125可以被 用户用来在协商过程中指定其愿望和要求。该控制集合带有一个USE 权利区段3127,该USE权利区段3127含有了一个聚合的CSR预算说 明3129和两个可选控制集合3131a,3131b用来控制信息内容的使用。 控制集合3131a需要使用特定的CONTROL方法3133和AUDIT方法 3135。指定的AUDIT方法3135由字段列表3137作为参数,这些字段 3137可以在审核跟踪中发布。控制集合3131a还指定了一个BILLING 方法3139,该方法的花费不能超过某个特定数额(如30.00美元)。 在本例中,控制集合3131b描述了特定的CONTROL方法3141,并且 可以引用一个BILLING方法3143,如果该备选方法被选中的话,其 花费不能超过某个特定数额(如150.00美元)。

图75E示意了电子合同3200一个更高层次的外观,该电子合同作 为上述协商进程的“结果”而形成。电子合同3200可以包含多项条款 3202和多个数字签名3204。每项条款3202都可以含有一个 PERC/URT,诸如前面所述并由图75D示意的项3160。因此,电子合 同3200中的每项“条款”3202将对应于一个部件组690,该部件组可 以由VDE电子设备600装配和执行。正如普通合同那样,为体现“各 方”之间的“协议”需要多少合同条款3202,电子合同3200中就可以 含有多少合同条款3202。每项条款3202都可以已经通过电子方式被商 定,因此它体现了各方之间所达成“协议”(如某个“折衷”)的一个 部分。电子合同3200是“自执行”的,其含义为,它可以由一个机器 即一个VDE电子设备600按照字面意思执行,即该VDE电子设备600 按照各种电子条款3202的要求装配部件组690。可以结合任意部件组 690使用上述的同一VDE机制自动地“强制执行”电子合同3200。例 如,假设条款3202(2)对应于一项付帐或BILLING条件或条款,其对应 的部件组690在被用户的VDE电子设备600装配的时候,将自动判断 是否已到该付款的条件了,如果到了,该部件组690将自动访问相应的 付帐机制(如该用户的一个虚拟“信用卡”对象),以便安排进行本次 付帐。再举一个例子,假设电子合同条款N 3202(N)对应于用户的一项 义务,即用户应该向特定的VDE参与者提供审核信息,电子合同3200 将使VDE电子设备600装配一个相应的部件组690,该部件组690可 (举例来说)访问安全数据库610中的相应审核跟踪,并将这些信息放 在一个管理对象中提供给正确的参与者。图75F示意了条款3202(N)可 以(举例来说)指定一个部件组690,该部件组690可以对交易3206 中发生的多个步骤进行安排。受测试(如3208(3))结果的影响,上述 某些步骤(如步骤3208(4),3208(5))可以是有条件的,这些测试可以用 来判断(举例来说):信息内容的使用量是否超过了特定的数量,某个 时间段是否已经到期,是否到了某个特定的日期,等等。

图75E电子合同3200所示的数字签名3204可以含有(举例来说) 使用了上述公开密钥技术的传统数字签名。某些电子合同3200可以不 带有任何数字签名3204。不过,为了留有证据等目的,可能最好要求 作为电子合同3200一方的用户所拥有的电子设备600采用数字方式在 电子合同上“签名”,这样一来,该用户以后就不能否定该合同。参与 同一合同的每一方都可以在同一电子合同3200中留下数字“签名”, 其方式类似于参与一个合同的多方用书面文件形式记录了该合同之 后,用一支笔在该合同上签字。

尽管电子合同3200的每个条款3202都可以最终对应于一组数据和 可以由PPE 650执行的代码,在某些情况下可能仍然需要提供电子合同 的一份人类可读的版本。如上所述,可以通过在一个或多个DTD提供 文本的方式来满足这一要求,此处的一个或多个DTD与用来自动执行 上述合同的一个或多个部件组690相关联。上述文本(举例来说)从功 能的角度描述了对应的电子合同条款3202意味着什么、涉及了什么, 并且/或者还可以以法律可强制的条款形式描述了在该合同下的法律义 务是什么,该法律义务代表的是什么。可以使用(本文所述的)“模板” 从一个文本库中提供上述文本。可以借助专家系统和/或人工智能功能 来施加许多语法规则,这些语法规则可以将各种文本元素合并在一起, 形成一个一致的、人类可读的合同文件。如果必要的话,可以由一个“人 类”律师审阅和修改上述文本,以便为各方之间达成的上述特定协议对 这些文本进行相应定制,并且/或者加入其它的法律义务,以便对体现 在相关部件组690中并由该部件组690强制执行的“自执行”电子义务 进行扩充,上述相关部件组690在VDE电子设备600中执行。一旦执 行该电子合同时,可以自动地将上述文本显示出来,也可以根据要求显 示这些文本;另外,可以在任意时刻利用这些文本打印出上述合同的一 份人类可读版本。电子合同3200的这种文件形式版本不需要达成协议 的各方用墨水签名(除非大家愿意的话),因为事实上数字签名3204 可以提供足够安全和可信的证据基础,以证明各方均已共同赞成合同中 的所有条款和条件。

在较佳实施例中,协商进程在PPE 650中执行,其执行过程要受规 定该进程的另一个PERC控制。图75C示意了一个规定协商进程的 PERC 3150示例。PERC 3150含有对应于协商进程的单一权利3152, 对应于该权利3152有两个允许的控制集合3154a,3154b。第一个控制 集合3154a可以用在“可信协商”中,它引用了所需的协商CONTROL 方法(“协商”)3156,还(在字段3157a,3157b中)引用了两个UDE, 这些UDE将被上述CONTROL方法使用。这些UDE可以是如图75A 和75B所示的PERC 3100、3125。第二个控制集合3154b可以由“多 协商”进程所使用,以便对协商进行管理,它还可以提供两个协商方法: “协商1”和“协商2”。这两个协商进程都可以被描述为必要方法(“协 商1”和“协商2”)3156、3158,这两个必要方法分别以PERC 3100 和3125为输入。该控制集合的CONTROL方法3158可以指定一个服 务名,上述的两个协商进程可以使用该服务进行彼此间的通信; CONTROL方法3158还可以管理协商产生的URT的创建。

在执行图75C所示PERC 3150指定的协商进程时,可以提供PERC 3100、3125作为该协商进程的输入;PERC 3100、3125将被用作该 协商的基础。在本例中,可以由执行VDE节点选择协商进程的类型(是 可信的,还是多个的)。图75C所示的PERC 3150可以(举例来说) 由REGISTER方法在收到用户注册请求时创建。然后,该REGISTER 方法可以使用由上述PERC指定的进程来启动对电子合同条款的协 商。

在上述示例性的协商过程中,图75A和75B所示的PERC 3100、 3125充当输入数据结构,根据图35C所示的PERC 3150创建的部件组 将对这些输入数据结构进行比较。此时可以装配和比较由控制集合指定 的部件组,在协商进行过程中,该部件组从必要“条款”开始处理,随 后是提议的/所需的“条款”,然后处理允许的“条款”。可以使用由 PERC 3100、3125指定的所需方法和备用方法来选择方法选项。在本 例中,可以将对应于图75A所示PERC 3100的控制集合与图75B所示 的PERC 3125进行比较。如果出现“匹配”,该协商进程将成功结束, 协商的“结果”也将会产生。

在该实施例中,协商的结果通常将以URT的形式写出,并且将经 过各协商进程的“签名”,表示已经达成了协议。这些电子签名反映了 已经达到某种(虚拟的)“思想一致”(这是合同存在的传统法律前提 之一)。图75D示意了上例创建的URT 3160示例。

URT 3160(其本身可以是一个PERC 808)含有一个控制集合 3162,该控制集合反映了在协商过程中得到各方“一致认可”的“条 款”。在本例中,这些经过“一致认可”的条款必须满足输入PERC 3100、 3125所提出条款的要求,从这个意义来说,这些经过“一致认可”的 条款必须与由输入PERC 3100、3125要求的条款“一样有利”。所示 的协商结果包括(举例来说)一个“经协商”的控制集合3162,该控 制集合3162在某种意义上对应于图75A PERC 3100的控制集合3102a 以及图75B中PERC 3125的控制集合3131a。因此最终“协商得到” 的控制集合3162含有一个所要求的BUDGET方法3164,该方法3164 对应于控制集合3125所要求的BUDGET方法3142,但该方法3164 处于由控制集合3100要求的BUDGET方法3112所允许的控制集合范 围内。类似地,最终协商得到的控制集合3162包含一个所要求的AUDIT 方法3166,该AUDIT方法3166符合由PERC 3100所要求的AUDIT 方法3114和由PERC 3125所要求的AUDIT方法3135两者所提出的要 求。同样,最终协商得到的控制集合3162包含一个所要求的BILLING 方法3170,该BILLING方法3170“匹配”或符合由PERC 3100所要 求的BILLING方法3116和由PERC 3125所要求的BILLING方法3170 两者所提出的要求。

还有一种协商类型,在这种协商中,不确定规则,只规定所希望达 到的目标。对于这种类型的协商,其协商进程可能非常复杂。它可以使 用人工智能、模糊逻辑和/或相关算法以达到其目标。VDE提供了一种 机制以支持这种类型的协商进程,该机制用来以简明地(以所希望权 利、控制信息和字段的形式)规定权利、控制信息、字段和目标。可以 将这种进程的目标规定为一个或多个控制集合,这些控制集合包含一些 指定元素,这些元素被标记为可选的、所允许的或所希望的。

协商类型

可以采用下面的任何一种方法建立较佳实施例中的协商:

1.共享知识

2.信托协商者

3.“零基础”知识

“共享知识”型协商的基础是:所有各方都了解与协商相关的所有 规则和限制。需求型协商是共享知识型协商的一个简单例子。需求者提 出一个需求清单,这些需求必须要被一起接受或被一起拒绝。需求清单 中含有一套完整的知识,这些知识是接受或拒绝清单中各项目所必须 的。VDE提供了一种机制以支持这种协商以电子形式进行,采用这种 机制,可以使用VDE安全处理技术和通信功能在VDE安全子系统之 间或使用VDE安全处理对上述各类需求进行编码、安全地传送以及安 全地处理。VDE使用的另一类共享知识型协商涉及到在参与协商的双 方或多方之间交换信息。协商进程可以根据其独立的优先级独立地决定 所希望的最后输出。这些进程可以针对任意分歧进行协商。共享知识型 协商可以涉及一个单一协商进程(与需求型协商那样),也可以涉及两 个或多个相互协作的进程。图76A和76B示意了在共享知识型协商中 使用一个和两个协商进程的情形。

图76A示意了单个协商进程3172,该进程可以将任意数目的(例 如由不同方提供的)PERC 808作为本次协商的输入。协商进程3172 在“协商进程规则和控制信息”的监督下执行于VDE节点之中,该“协 商进程规则和控制信息”可以由另一个PERC(如在图75C中示意的 PERC 3150)提供。进程3172产生一个或多个PERC/URT 3160作为 协商的结果。

图76B示意了多个协商进程3172A-3172N,每个进程都从一方和 另一个PREC 3150得到一个PERC 808作为其输入。上述的PERC 3150 对该协商进程进行控制,并且每个协商进程3172A-3172N都产生一个 协商“结果”PERC/URT 3160作为输出。进程3172A-3172N可以在同 一或不同的VDE节点中执行,并且可以使用“协商协议”进行相互间 的通信。

对于特定的VDE站点,可以使用单个和多个协商进程。可以使用 众所周知的方法对协商进程进行命名和访问,可以将PERC和URT放 在管理对象或智能对象中传递给远方的VDE站点,以便在该站点中处 理。控制该协商的控制PERC和REGISTER方法也可如此。

多协商进程要求具有在这些进程3172之间通信的能力,这包括出 现在物理上分开的VDE站点(安全子系统)中的安全进程之间的安全 通信。VDE将这种进程间的通信通用化成一种服务,这种服务采用安 全方法提供出来,如果配置需要的话可以使用该服务。上述进程间通信 使用了一种协商协议在进程3172间传递有关规则集合的信息。一个示 例性协商协议包括下列协商“原语”:

WANT(需要)      需要一套条款和条件

ACCEPT(接受)    接受一套条款和条件

REJECT(拒绝)    拒绝一套条款和条件

OFFER(提供)     提供一套条款和条件,作为对其它条款

                和条件的交换

HAVE(拥有)      宣布一套条款和条件是可能的或所希

                望的

QUIT(退出)      在各方没有达到一致的情况下宣布协

                商结束

AGREEMENT(一致)结束协商,并传递规则集合以供签名

WANT原语接收权利和控制集合(或控制集合的部分)信息,并 向其它进程3172宣布:所指定的条款是所希望的或被要求的。需求型 协商是使用WANT原语宣布需求的一个例子。本协议示意将介绍 WANT原语的一个精练形式一REQUIRE。在本例中,REQUIRE允 许一方设置他认为是形成合同所必要的条款,而WANT则可以允许一 方设置他所希望的但不一定是所必需的条款。这样就可以使“必须有” 和“希望有”之间有所差别。

在本例中,WANT原语必须始终由ACCEPT、REJECT、或 OFFER原语回答。ACCEPT原语允许协商进程3172接受一套条款和 条件。REJECT原语允许协商进程3172拒绝所提出的一套条款和条 件。拒绝所要求的一套条款和条件将终止协商过程。OFFER原语则允 许买方还价。

HAVE、QUIT和AGREEMENT原语允许协商协议传递有关规则 组的信息。在共享知识型协商开始的时候,(举例来说)所有的协商进 程3172A-3172N都向其它进程确立HAVE原语(即我的PERC)。当 出现僵局时,一个协商进程3172还可以利用HAVE原语让其它进程 3172知道有关被允许选项的情况。QUIT原语通告协商未达成最终协 议而失败地结束,而AGREEMENT原语则通告已成功地达成了协议, 该原语还将“协商”结果PERC/URT 3160传递给另外的进程3172让 其签名。

在“信托协商者”协商中,所有协商各方都将他们的需求与希望提 供给一个“信托协商者”,并同意受该协商者的决定的约束。这种方法 类似于当今社会中的约束仲裁。为支持这种模式的协商,VDE提供了 一个可以创建“信托”协商服务的环境。VDE不仅提供了一种用来简 明地(如在PERC中))定义需求、希望和限制的机制,并且在该机 制中,PERC可以同规定了如何指导协商的规则集合一起被安全地传 送到一个“信托”协商服务;同时,通过提供一个安全的执行环境,可 以确保协商进程不会受到破坏。如果众所周知某些站点具有完整性,那 么这些站点可以使用信托协商者服务。假如某些VDE站点不具备充足 计算资源以执行一个或多个协商进程,这些站点便可以使用远程信托协 商者服务。它们可以与提供该服务的VDE站点建立通信链路,并允许 该服务代表它们处理协商事宜。

“零基础”知识型协商采纳了用在鉴别过程中的零基础知识协议所 具有的某些特性。在本领域中大家都熟知如何创建某个协议,使该协议 可以在不交换或暴露项的前提下确定一个远程站点受否是该特定项的 持有者。可以在两个具有下列特点的协商进程之间创建这种类型的协 议:它们运行在至少一个VDE站点中,使用一个控制集合作为它们的 知识库。这些协商进程可以交换有关其控制集合的信息,它们可以提出 与使用它们各自控制集合有关的需求和反提议。例如,协商进程A可 以与协商进程B通信,以协商阅读一本书的权利。协商进程A规定为 了获取该书的阅读权,它支付的费用不超过10.00美元,并且希望对于 该权利其付款范围最好在5.00美元到6.00美元之间。进程A的规则集 合还规定了:对于5.00美元付款选项,它将允许公布读者的姓名和地 址。进程B的规则集合规定:对于该书的阅读权它希望收取$50.00美 元,同时如果用户同意公布其个人信息时,它将以5.50美元的价格提 供该书的阅读权。其协商过程可能如下进行:

  进程A        <--->            进程B WANT(阅读权,无限制)--->

               <---HAVE(阅读权,无限制,50美元) OFFER(阅读权,提供用---> 户信息)

              <---HAVE(阅读权,提供用户信息,

                  5.50美元) ACCEPT(阅读权,提供---> 用户信息,5.50美元)

在上例中,进程A首先规定它希望得到该书的阅读权,该阅读权 不要附加任何限制,也不公开其它信息。在进程A用来作为一条规则 的PERC中,将这一起点规定为一个权利选项。进程B检查其规则, 并确定未加限制的阅读权实际上需要收费50美元。它答复进程A说可 以提供上述的条款。进程A收到该应答后,对照特定控制集合对该应 答进行检查,这些控制集合包含在进程A用来作为规则库的PERC中。 由于50美元的数额超出了对该控制集合所规定的10美元限制,所以进 程A不能接受上述提议。于是它进行一次讨价还价(由另一个可选权 利选项规定该讨价还价事项),希望得到不受限制的阅读权同时附带允 许公布读者名字和地址这一条件。名字和地址字段在进程A PERC引用 的DTD中进行了描述。进程B检查其规则PERC,并确定不受限制的 阅读权附带公布个人信息的条件是一个被允许的选项。它将对比两个字 段,第一个字段是由进程A提供的DTD所描述的、将被公布的字段; 另一个字段是在进程B自身PERC所含DTD中包含的所希望字段;在 比较过程中进程B确定存在一个可接受的匹配。于是它向进程A发送 一个5.50美元的要价,这个要价针对的是不受限制的阅读权附带公布 特定信息的条件。进程A对照其规则集合比较收到的权利、限制和字 段信息,并确定5.50美元处于其规则集合定义为可接受的5美元-6美 元范围之中。于是它接受进程B做出的上述要价。双方通过“签署” 一个新PERC将最终要价盖章落实,新PERC描述了最终协商的结果 (未加限制的权利,附带公布用户信息,要价5.50美元)。进程A的 所有者可以使用上述新PERC来阅读所希望的信息内容(书),该阅 读要受到规定条款和条件的控制。

进一步的处理链模型

前面结合图2讨论过,在用来管理信息内容分发的一个VDE处理 和控制链示例中,有四(4)种VDE 100的参与者实例。作为上述参 与者实例中的第一种,信息内容制作者102的角色由文学作品的出版 商、作者、权利所有者和分发者担任,他们准备好信息以便分发给消费 者。作为第二种参与者实例,VDE权利分发者106可以分发权利,并 且管理和分析消费者对VDE特许信息的使用。作为第三种参与者实 例,信息内容用户112的角色则由用户(包括最终用户和分发者)在使 用上述信息的时候充当。作为第四种参与者实例,财务票据交换所116 提供VDE相关的票据交换所服务。作为另一种参与者,VDE管理员 则提供支持,以维护VDE 100的正常运行。在安装了适当授权和权利 操作系统部件后,任何VDE电子设备600都可以充当任意或所有上述 的参与者角色。

文学作品是VDE 100中一类原始素材的一个例子。为了将这种原 始素材转化成最终的商品,出版商、作者或权利所有者利用各种工具将 数字信息(如电子图书、数据库、计算机软件和电影)转换成名为“对 象”的受保护数字包。只有从分发者106那里得到许可的消费者(或位 于拥有链中的其它人员,如再次分发者)可以打开这些包。经VDE打 包的信息内容可以受到“规则和控制信息”的约束,这些“规则和控制 信息”由信息内容制作者102和/或信息内容分发者106、或位于信息 内容分发路径中的其它VDE参与者提供,即:“规则与控制信息”通 常由那些离安全化VDE包的创建“较近”的参与者提供,而较少由那 些受到约束的参与者提供。

一旦信息内容被包装成“对象”,则可以开始数字化的分发过程。 由于信息包本身已经受到了保护,因而可以自由地以多种形式对之进行 分发,如可以放在CD-ROM盘上分发,可以通过计算机网络分发,也 可以通过有线电缆或无线电波进行广播。受保护的信息内容包在最终用 户之间进行非正式的“通道外”交换不会给信息内容所有权带来风险。 这是因为只有经过授权的个人才可以使用上述信息内容包。实际上,某 些信息内容提供者可以鼓励这种“通道外”的分发方式,将它作为进入 市场的一种低代价策略。拥有使用特许的消费者(如可提供一定使用费 用的VISA票据交换所预算)可以(举例来说)自由地允许由其邻居提 供给他们的各类通道外受保护VDE信息内容包。

为了打开VDE包并使用其信息内容,最终用户必须拥有许可。分 发者106可以授予这些许可,并且(在上级控制信息的允许下)可以非 常灵活地限制或规定包中信息内容的使用方式。分发者106和财务票据 交换所116通常还负有财务责任(在某些情况下如果需要的话,它们可 以是同一组织)。它们确保向最终用户要求的付款满足其自身的或其它 参与者的要求。通过对使用情况进行审核,可以实现上述功能。

使用VDE 100的分发者106可以是软件发布者、数据发布者、有 线、电视和无线电广播者,以及电子形式信息的其它分发者。VDE 100 支持所有的电子分发形式,包括通过广播和电信进行分发,或采用对电 子存贮介质的物理传送方式进行分发。它还支持以同类方式交付信息内 容。在此过程中,VDE 100把来自多种分发类型的信息与许可、控制 机制和信息内容无缝地集成在一起。

对于分发者106和财务票据交换所116来说,可以根据对其管理行 为所做的安全记录对它们本身进行审核,同时,一连串可靠的并“可信” 的进程确保了整个分发过程的完整性。这样做可以使信息内容所有者核 实:根据实际的信息内容使用,或根据其它的协议基础,他们收到了应 得的报酬。

在本例中,由于最终用户112是信息内容的最终消费者,因此VDE 的设计保证了以无缝和透明方式提供被保护的信息内容-只要最终用 户没有超越收到的许可的范围。可以对最终用户112的行为进行计量, 以便分发者106能够实施审核。可以对审核进程进行筛选和通用化,以 便满足用户对隐私的考虑。例如,对于被计量和记录的VDE信息内容 使用信息和/或电子设备使用信息来说,可以在把它们报告给分发者106 之前对将它们进行筛选,以防止泄露那些本不该泄露的、有关信息内容 用户112和/或及其使用情况的信息。

VDE 100允许信息内容提供者以电子方式对他们的传统分发策略 进行重要改革,并允许他们创新地建造适合其自身的需要和情况的新型 分发机制。VDE 100允许相关参与者出现在分发链中,并允许他们按 照自身愿望指定价格策略、访问和再分发许可、使用规则和相关的管理 和分析过程。VDE 100的可重用功能性原语可以由信息内容提供者灵 活地结合使用,以反映他们各自的分发目标。作为结果,信息内容提供 者可以将其信息输入到已建好的分发通道中,也可以创建他们自己的、 带有个性化的分发通道。

下面概括性地列出了虚拟分发环境100中各种参与者的角色。 角色 说明 传统参与者 信息内容 制作者 数字信息的打包者和初始分发者 信息内容 所有者 数字信息的所有者 分发者 提供预算和/或信息内容的权利分发服务 审核者 提供服务用来处理和压缩基于使用的审核跟踪。 票据交换所 为信息内容与审核信息提供中间的存贮转发服 务。它还通常为其它服务提供平台,所述其它服 务包括第三方财务提供者和审核者 网络提供者 提供站点和其它参与者之间的通信服务 财务提供者 向最终用户和分发者提供电子资金的第三方源。该类 用户的例子有VISA、American Express或政府 最终用户 信息的消费者 其它参与者 再次分发者 根据由信息内容提供者和/或其它分发者所规定 的处理链限制,再次分发信息内容的使用权 VDE管理员 提供可信的服务,以便对VDE节点提供支持 审核信息独立处理者 提供某些服务,以处理和总结审核跟踪数据。它 向用户提供匿名权,同时还保持信息内容提供者 所需要的全面审核能力 代理 使最终用户和其它VDE参与者可以分布式出现

在上述各种VDE参与者之中,“再次分发者”、“VDE管理员”、 “审核信息独立处理者”和“代理”在某些方面属于“新”的参与者, 它们在许多“传统”的商业模型中没有对应者。而其它VDE参与者(即 信息内容提供者、信息内容所有者、分发者、审核者、票据交换所、网 络提供者和财务提供者)则具有“传统”的商业模型对应者,因为在某 种意义上,传统分发模型中经常会有一些非电子的参与者执行的某些商 业功能与它们在虚拟分发环境100中执行的功能相同。

在VDE分发者106中还可以包含一些特殊的“最终用户”,这些 最终用户向其它的最终用户提供电子信息。例如,图77示意了本发明 提供的虚拟分发环境100处理和控制链的另一个例子。与图2比较起 来,图77含有一个新的“客户管理员”参与者700。另外,图77示例 了若干不同的信息内容用户112(1),112(2),...,112(n),所有这些信息内容 用户都要收到客户管理员700的“管辖”。客户管理员700可以是(举 例来说)公司或其它组织中的另一个权利分发者,它把权利分发给雇员 或其它组织的参与者单位(如分支机构、部门、网络和/或小组等)。 这些雇员和单位都要受到特定于组织的“规则和控制信息”的管理。客 户管理员700可以对控制分发过程的“规则和控制信息”进行加工,这 种加工要受到由制作者102和/或分发者106规定的“规则和控制”的 约束。

如上所述,VDE管理员116b是一个可信的VDE节点,它对VDE 100提供支持,并维护其正常操作。在本例中,VDE管理员116b可以 提供下列的任意或所有服务,而这些服务也并全部的。

VDE设备初始化服务

VDE设备重新初始化/更新服务

密钥管理服务

“欺骗性”VDE站点的“最新列表”

验证权威机构服务

公开密钥注册

客户参与者单位信息内容预算和其它权利

VDE 100的所有参与者都内在地可以参与各种角色的工作。例如, 用户可以收集现有的受保护信息内容包,加入他们自己的包(创建新的 信息内容包),并创造出新产品。他们可以决定充当其自身的分发者, 也可以将该责任委派给其它参与者。在目前正在进军市场的面向对象设 计革新中,上述功能具有十分重要的意义。复合对象的生成、对象链接 和嵌入、以及其它多源进程将产生对VDE 100上述功能的需求。VDE 100提供的分发过程是对称的,任何最终用户都可以将收到的信息再分 发给其它最终用户,前提是他们拥有适当的许可,该许可来自或遵照了 支配再分发过程的VDE分发链控制信息。最终用户也可以在同样的规 则和许可约束下将属于其它参与者的信息内容封装到新公布的产品 中,并独立地分发这些产品。对新产品的使用付费可以由发布者、分发 者或最终用户查询和修改,并且可以在分发链中的任何阶段对之进行跟 踪和电子化收集。

独立财务提供者在VDE 100中起重要作用。VDE财务提供者的作 用与传统分发模式中的某些组织(如VISA)所起的作用类似。在任何 分发模型中,一个十分关键的因素是:应该支持对产品或服务的使用进 行偿付,并且对使用的一致性与不规则性进行审核是关键的。在VDE 100中,这些规则由独立财务提供者提供。独立财务提供者还可以向信 息内容提供者提供审核服务,因而,对于使用的预算和限制、以及对审 核或使用的记录可以由票据交换所116来处理(也可以由票据交换所 116来保存),而票据交换所可以从用户112那里收集使用费。任何 VDE用户112都可以在上级控制信息允许的限度内将处理信息或执行 服务的权利分派出去,使被分派者代表他们的操作。这种一个VDE参 与者代表另一个进行操作的方案称为“代理”。如果信息内容提供者允 许的话,可以将审核、分发、或其它重要权利“代理”出去。一个特殊 类型的“代理”是VDE管理员116b。VDE管理员是一个组织(它也 可以同时充当财务票据交换所116的作用),该组织具有一定的许可可 以为VDE电子设备对某些或所有的VDE安全子系统控制信息进行管 理(例如“进行干预”以便复位)。管理权的范围仅限于:允许新设备 加入VDE结构中、恢复“崩溃的”或不可操作的设备、以及提供周期 性的VDE更新。

对象创建、分发方法、预算和审核的补充说明

较佳实施例中的VDE节点600能够执行本发明提供的对象创建、 分发、审核收集以及使用控制等功能。在较佳实施例提供的每个电子设 备600中都集成进上述功能,对于为电子交易计量、控制和计帐创建单 一(或重要)标准这个总目标来说具有重要意义,该标准经过综合实施 后将构成安全、可信、虚拟的交易/分发管理环境。一般来说,如果至 少在通用VDE节点电子设备600中某些关键功能通常或经常缺少的 话,那么将会出现多种不同的产品和不同的标准以满足大量电子交易应 用/分发管理应用。同时,也将无须为了满足发展中的“电子高速公路” 所提出的迫切要求而事先提供出单一的一致工具集和单一的、“合理 的”、可信安全性和商业分发环境。某些形式的特定电子设备600包含 了特殊的VDE节点,这些VDE节点中装有嵌入的专用VDE微控制器— 例如某些形式的录象带播放机、有线电视转换器等等,这些电子设备 600可能不一定要带有或需要完整的VDE功能。然而,较佳实施例提 供了大量分布的、位置完全不同的电子设备600,每个这样的电子设备 600都最好具有创作、分发、抽取、审核、以及审核压缩功能,同时还 具有对象创作功能。

较佳实施例提供的VDE创作功能向作者(举例来说)提供了多种 菜单,以便往VDE对象300中加入方法,这些菜单包括:

针对计量和/或计帐方法的菜单,这些菜单规定了对 VDE对象信息内容部分的使用将如何受到控制;

有关抽取方法的菜单,这些菜单限制和/或允许VDE对 象的用户从该对象中抽取信息,还可以包括将该信息放入一个 新创建的和/或早就存在的VDE容器中;

规定审核方法的菜单—即:是否通过某种安全方式生成 某些审核信息,并将该审核信息送回对象提供者、对象创建者、 管理员和/或票据交换所;

分发方法的菜单,这些菜单用来控制对象的分发方式,

包括(举例来说)对处于VDE信息内容容器处理链下方的各个

参与者所具有的分发权进行控制;

创作功能还可以含有将管理预算、对象分发控制密钥、以及审核控 制密钥分发给分发者或某些其它VDE参与者的过程,所述其它VDE 参与者已经过授权可以代表作者、分发者和/或他们自己执行分发和/或 审核功能。创作功能还可以含有选择和分发审核方法、分发方法以及审 核压缩方法的过程,包括(举例来说)安全地记录和/或控制某些预算, 这些预算用来使分发者将对象再分发给VDE信息内容处理链中的后 续参与者。

由作者创建的对象300的信息内容可以在VDE感知的应用程序或 非VDE感知的应用程序的帮助下产生。由作者结合上述程序创建的上 述对象的信息内容可以包含正文、格式化的正文、图片、电影、声音、 计算机软件、多媒体、电子游戏、电子培训材料、各种类型的文件、等 等,其种类无限。创作过程可以将作者所制作的信息内容装入某个对象 中,使用一个或多个密钥对该信息内容进行加密,并附加一个或多个方 法,这些方法定义了某些参数,所述参数规定了用户(和/或仅授权用 户)对上述对象的允许的使用、和/或使用的必要审核、和/或这些用户 使用该对象的费用。创作过程还可以包含与分发该对象有关的某些或所 有方面。

总的来说,在较佳实施例中,作者可以:

      A.规定在对象中将要放入什么样的信息内容;

      B.规定面向信息内容的方法,包括:

  信息—通常是与该信息内容和/或作者有关的抽象的、宣传性

  的、标识性的、调度性的、和/或其它方面的信息

  信息内容如文件的列表和/或含有信息内容、时间变量等的其

  它信息资源

      C.规定控制信息(通常是若干方法的集合,这些方法间

  通过一个或多个许可记录相互关联。该方法集合包括定义方法

  的任何变量)和任何授权的初始用户列表,例如:

  控制访问和抽取的控制信息控制分发的控制信息

  控制审核处理的控制信息

如果VDE节点从某个对象提供者那里收到管理预算信息,而该信 息用于分发某个对象以及相关分发密钥信息,那么该VDE节点电子设 备600可以(举例来说)代表所述对象提供者分发该对象。

如果VDE节点从某个对象提供者那里收到任何必要的管理预算、 审核方法、以及审核密钥信息(举例来说,该审核密钥信息用来解密审 核跟踪),那么该VDE节点电子设备600可以代表所述对象提供者接 收并处理审核记录。具有审核功能的VDE电子设备600可以控制审核 压缩方法的执行。较佳实施例中的“审核压缩”过程指的是从审核记录 和/或审核进程中抽取某些信息,这些信息已经由对象提供者(例如, 该对象处理链中的任意对象提供者)指定需要报告给对象的分发者、对 象创建者、客户管理员、和/或审核信息的任意其他用户。这些接收报 告者可以是(举例来说)需要替用户支付对象信息内容使用费的广告 商。在一个实施例中,票据交换所能够在位于用户站点的或位于对象提 供者站点的某个对象或某类对象或其它类别对象后面“添加”预算、审 核方法、以及/或者审核密钥信息,以确保所期望的审核过程以“可信” 的方式进行。VDE信息内容容器处理链和/或信息内容容器控制信息 处理链中的参与者可以作为另一方的“代理”,所述的另一方则出现在 与对象信息内容的使用相关联的使用情况审核信息控制链中(例如,所 述另一方可以是一个票据交换所、广告商、或对市场调查和/或特定消 费者使用信息感兴趣的某方)。为完成该过程,可以为所述另一方指定 预算、审核方法、和/或密钥信息,这些信息必要地保证了将审核信息 按照一种适当的方式收集起来和/或提供给所述另一方。该过程可以使 用所述另一方提供的说明信息。

对象制作和初始控制结构 VDE较佳实施例对象制作和控制结构设计过程支持控制信息的基本可 配置性。这就允许VDE 100能够支持各种可能的信息内容类型、分发 路径、使用控制信息、审核要求、以及用户或用户组。在较佳实施例中, VDE对象制作过程利用了VDE模板,VDE模板中的元素至少部分地 代表了模块化控制进程。利用VDE制作软件(在较佳实施例中,VDE 制作软件是一个GUI编程进程)和VDE模板,用户可以采取一系列步 骤制作VDE对象300,即:划分该对象,将“元数据”(meta data) (如作者的名字、制作日期等)放入对象中,然后把对应于对象和/或 对象信息内容的权利分配给(举例来说)出版商和/或信息内容制作者。 当对象制作者执行上述进程时,他通常要经历一个信息内容说明过程, 该过程将索取必要的数据。该信息内容说明过程在得到满足之后将(举 例来说)把数据插入到一个模板之中,并将信息内容封装起来。另外, 在较佳实施例中,对象还可以自动向本地VDE节点电子设备600安全 子系统注册其出现,并且,作为模板指令和原子方法交互作用的结果, 将会产生至少一个许可字段808,同时还将产生一个或多个控制结构, 这些控制结构中可以带有一个或多个方法、预算和/或其他信息。注册 进程可以请求为对象创建一个预算。如果对象制作过程指定了初始分 发,那么还将为分发创建一个管理对象。该管理对象可以包含一个或多 个许可字段808、其他控制结构、方法、和/或加载模块。

许可字段808可以指定对象和用户之间的各种控制关系。例如, VDE 100既支持单一访问(如用户和权利用户之间的一对一关系)也支 持组访问(可以准许任意数目的人员成为一个组)。单个许可记录808 可以定义单一访问和组访问两者。VDE 100可以提供“共享”进程, 该进程允许多个用户将单个控制预算作为一个预算进行共享。其它的控 制结构概念包括分发、再分发、以及审核,后者支持计量和预算信息的 压缩和/或传送。所有上述过程通常都由一个或多个VDE安全子系统安 全地进行控制。

模板和类

VDE模板、类和灵活的控制结构向某些团体和个人提供了多种框 架,这些组织或个人制作、修改、销售、分发、再分发、消费、或使用 电影、录音和实况演出、杂志、电话零售、产品目录、计算机软件、信 息数据库、多媒体、商业通信、广告、市场调查、通知、游戏、数控机 床的CAD/CAM服务,等等。随着上述类别的外围环境变化或演变, 本发明较佳实施例提供的模板也可以被修改,以满足上述变化的需求, 这些变化或者要求使用面更广,或者要求活动更加集中。

VDE 100的创作可以向制作进程提供三种输入:模板、用户输入和 对象信息内容。模板是一组用于对象控制软件的控制指令和/或数据, 模板能够与创建VDE对象所需的用户指令和被提供的信息内容进行交 互作用,以创建(和/或修改)VDE对象。一般来说,模板特别与对象 创建和/或控制结构相关联。类代表的是某些用户组,这些用户组可以 是某个组织中“自然”组,例如部门成员、特定安全许可级别等等,或 个人和/或VDE节点的特定列表。

例如,模板可以由文本文件来代表,这些文本文件定义了特定结构 和/或部件组。模板连同它们所带有的结构和/或部件组一起可以用作 VDE对象创作或对象控制的应用。一个制作模板可以带有多个子模 板,这些处于最底层的子模板代表了对象详细要求说明中的“原子层”。 模板可以提供一个或多个模型,这些模型描述了信息内容对象的各个方 面以及对象应该如何创建,创建方法包括采用某些安全原子方法,这些 原子方法用来创建、改变、和/或销毁许可记录808和/或相关预算,等 等。

模板、类(包括以组访问形式使用对象的用户组)、以及灵活的控 制结构(包括“独立于”对象的许可记录(可以与多个对象相关的许可) 以及支持将预算和审核作为独立VDE进程的结构)有助于将本发明所 提供创作过程中的那些内在的、灵活的、以及可配置的功能集中在工 业、和/或商业、和/或应用的范围中。VDE合理化地改造了目前(部 分地通过使用专用于应用的或专用于产业的模板)正应用于各类支柱产 业中的分发方案,并且涵盖了上述方案。因此,具有重要意义的一个步 骤是提供一个操作和/或结构框架,以允许现有产业、和/或应用、和/ 或商业操纵它们所熟悉的概念,这些概念涉及信息内容类型、分发方 价机制、用户与信息内容的交互作用、以及/或者相关的管理行为、预 算等等。

VDE模板、类和控制结构具有内在的灵活性和可配置性,从而可 以反映信息分发和安全存贮要求的广度,可以在发展中有效地适应新产 业,可以反映现有产业和/或商业的发展和/或变化,同时支持可能与某 些许可和/或预算及对象类型相关的一个或多个用户组。通过使用VDE 聚合方法和控制方法,可以加强VDE模板、类和基本控制结构的灵活 性,上述方法对于对象的控制可以产生复合的、有条件的进程影响。通 过不时地将本发明与VDE管理对象和VDE安全方法及进程结合使 用,本发明真正实现了一种信息内容控制和审核体系结构,该体系结构 能够被配置到大多数的或任意的商业分发实施例中。因此,本发明完全 支持信息内容提供者的要求和倾向,而不必强迫他们去适应预先定死的 应用模型。它允许信息内容提供者规定权利、控制信息,及其信息内容 (以及返回的审核信息)在分发通道中的流动方式。

修改对象信息内容(包括增添、隐藏、修改、删除和/或扩展)

向对象中加入新信息内容是本发明提供的创作过程的一个重要方 面。提供者可能希望允许一个或多个用户对他们提供的信息内容进行增 添、隐藏、修改、删除和/或扩展操作。采用这种方式,其他用户可以 增值现有信息内容,为了新的目的对现有信息内容进行变动,以及维护 和/或修改现有信息内容。能够向空的和/或新创建的对象中添加信息内 容也具有重要意义。

当提供者提供信息内容和相关控制信息时,他可决定增加某些控制 信息,这些控制信息用来允许和/或限制对所述信息内容的增添、修改、 隐藏和/或删除操作。这些控制信息可以涉及:

可以被增添、隐藏、修改和/或删除的信息内容所具有的 特性和/或所处的位置;

可以被修改、隐藏、删除和/或增添的信息内容部分;

所需的、用于控制后续VDE容器信息内容使用的安全 控制信息,这些控制信息位于控制链中,并且/或者与被增添、 隐藏、和/或修改的信息内容存放在一处;

对下述过程的要求:即由提供者指定的信息内容注意事 项和/或信息内容部分,这些部分伴随被增加、隐藏、删除和/ 或修改的信息内容,同时还要随所述增加、隐藏、删除和/或修 改操作的发生而发生;

对涉及某些信息内容的限制和/或要求的安全管理,这些 信息内容可以被移走、隐藏和/或删除;上述管理范围包括对信 息内容增添、隐藏、修改和/或删除的数量和/或程度;

通知提供者:已经发生了修改、隐藏、增添和/或删除操 作,并且/或者指出该操作的性质;

涉及对提供者信息内容进行修改、增添、隐藏和/或删除

  的其他控制信息。

提供者可以使用上述控制信息为其他用户提供机会,允许他们采用 受控的方式增值和/或维护现有的信息内容。例如,软件开发工具的提 供者可以允许其他用户向这些用户得到的对象中增添注释,并且/或者 增添类似的和/或补充的工具。电影提供者可允许在他们的材料上加上 解释词与/或宣传材料。向机床工具所有者提供CAD/CAM规范的提供 者可以允许其他用户修改某些对象(这些对象包含与某个规范相关联的 指令),以便改进和/或翻译所述指令,并结合其设备使用这些指令。 数据库所有者可以允许其他用户向所提供的数据库对象中增添记录,或 从该数据库对象中删除记录,从而支持数据库的灵活性和/或维护。

引入控制信息还有一个好处,即提供者有机会允许其他用户为新的 目的而改动信息内容。提供者可以允许其他用户提供新设置的信息内 容。

为了将上述控制信息连接到信息内容,在经过允许的条件下,可以 向提供者提供针对某个对象的一个或多个方法的设计和实现,这些方法 控制对信息内容的增加、隐藏、修改和/或删除。可以结合PPE 650使 用VDE软件工具来完成上述一个或多个方法的设计与实现。于是,提 供者可以将这些方法连接到某个对象,并且/或者独立地提供这些方 法。许可记录808可以含有与上述控制信息相关联的要求并且同时还含 有其他控制信息,或者可以使用一个单独的许可记录808。

增加和/或修改信息内容的一个重要方面是:加密/解密密钥的选 择,以及/或者涉及对新信息内容或被改动的信息内容进行安全保护。 提供者可以在涉及上述进程的方法中规定一种或多种技术,这些技术用 来创建和/或选择加密/解密密钥以及保护新信息内容或被改动的信息内 容的其他有关方面。例如,提供者可以一套密钥、用来生成新密钥的技 术、对用来生成新密钥的加载模块的引用、用来保护信息内容的协议, 以及/或者其它类似信息。

如果创建或使用了新密钥,那么增加和/或修改信息内容的另一个 重要意义是对新密钥的管理。提供者可以要求上述密钥以及使用密钥所 涉及的引用必须被传送给该提供者,或者他也可以使上述密钥和/或安 全保护措施不被提供者所了解和/或控制。提供者还可以选择一条中间 路线,即:某些密钥是一定要被传输过来的,而其它密钥则可以不被其 了解和/或控制。

涉及密钥管理的另一个方面是对某些许可的管理,这些许可与增 添、隐藏、修改和/或删除信息内容所产生的对象相关联。提供者可以 允许也可以禁止VDE控制信息链的用户采用某些或全部VDE规则和 控制信息,这些规则和控制信息涉及授权访问和/或操作由VDE管理 的、与所述最终对象相关的信息内容和/或规则和控制信息。例如,提 供者可以允许第一个用户控制对对象中新信息内容的访问,因而,这部 分信息内容的其他用户需要从上述第一个用户那里得到许可。这样可以 使提供者按照自己的意愿来决定是否要求用户从提供者获得许可以便 访问对象。

涉及增添、修改、隐藏和/或删除操作的密钥可以被存放在一个或 多个独立的许可记录808中。所述许可记录808可以被传递给提供者, 并且可能与一个或多个现有的许可记录合并,或者可以在新信息内容提 供者的控制下保持独立。初始许可记录808的创建及其内容、以及控制 许可记录的其他控制信息将由涉及提供者某些操作的方法来控制。对所 述许可记录的后续修改和/或使用可能涉及提供者的方法、以及用户操 作、或与两者皆有关。用户修改和/或使用许可记录808的能力至少部 分地取决于与提供者的上述许可记录相关的上级控制信息。

分发控制信息

为了支持广泛和灵活的商业交易环境,提供者应该有能力创建用来 控制分发进程的稳固控制信息,而避免对控制链中后续各方进行不当限 制。本发明提供的分发控制信息支持积极灵活的控制。提供者不需要带 有任何特别的控制,或使用任何特别的策略,除非上级控制信息要求他 们这样做。相反,本发明允许提供者从一般的控制部件(这些一般控制 部件可以是适合于提供者特定市场的部件子集,(举例来说)它们包含 在VDE应用中,并且/或者与之直接兼容)中进行选择,以建立适合于 给定处理/控制链的结构。提供者还可以建立其控制信息的控制信息, 后者可以允许或限制其他用户对提供者控制信息的修改。

本发明提供的管理系统产生管理“事件”。这些“事件”对应于或 者由系统或者由用户引发的活动,这些活动又对应于VDE中可能受保 护的进程。这些进程包括的活动有:拷贝许可记录、拷贝预算、读审核 跟踪记录、拷贝方法、更新预算、更新许可记录、更新方法、备份管理 文件、恢复管理文件等等。从任意VDE记录中的任何部分读、写、修 改、更新、处理和/或删除信息都可属于管理事件。一个管理事件代表 了一个进程,该进程在一个或多个记录的一个或多个部分上执行一个或 多个上述活动。

当VDE电子设备600遇到一个管理事件,通常结合VDE PPE 650 对该事件进行处理。正如通常涉及访问和/或使用信息内容的事件那 样,在大多数情况下,管理对象由信息内容提供者(包括(举例来说) 信息内容制作者、分发者、和/或客户管理员)规定为专用来控制对象、 对象组和/或对象类的一个控制方面。

例如,如果用户提出分发许可请求,以便在笔记本计算机中使用桌 上型计算机中的某个对象,于是所产生的多个管理事件中的某一个可以 拷贝一份对应于上述对象的许可记录。当ROS 602检测到该管理事件 时,将会产生对应于该类事件的一个EVENT方法。如果产生了上述 EVENT事件,还将会产生与该EVENT事件相关联的计量、计帐、和 预算。计量、计帐和预算可以使提供者允许和限制对许可记录808的拷 贝。

例如,在处理某个控制程序的过程中,可以产生和/或更新计量、 计帐、预算和/或审核记录。所述审核记录可以记录某些信息,这些信 息涉及到管理事件及对其所做处理的有关情况。例如,审核记录可以含 有对引发事件的用户和/或系统活动的一个引用、对所述事件的处理是 成功还是失败、日期和/或时间、和/或其他相关信息。

上面的一个例子中提到了一个既有桌上型计算机又有笔记本计算 机的用户,在这个例子中,每当用来计量所述许可记录拷贝操作的计量 被处理的时候,许可记录的提供者都要求提供审核记录。审核记录为提 供者提供了灵活的和可配置的控制和/或记录环境。

在某些情况下,提供者最好限制控制部件的哪一个方面可以被修 改、更新和/或删除。可以用“原子元素定义”将事件(于是还包括控 制进程的剩余部分-如果该控制过程存在的话)的适用范围限制到控制 部件的某些“原子元素”。例如,如果许可记录808被分解为图26示 意的多个字段上的多个“原子元素”,那么(举例来说)就可以通过在 某个原子元素定义中仅指定过期日期/事件字段而将事件处理链限制为 对过期日期/事件信息的特定数量修改。在另一个例子中,可以根据控 制集合将许可记录808分解为多个原子元素。在该例中,可以将事件链 限制为操作某些控制集合的事件。

在某些情况下,提供者最好控制管理进程的执行方式。提供者可以 决定在存放在安全数据库610中的分发记录中加入某些信息,以便结合 某个部件组690使用这些信息,而该部件组690则控制和规定(举例来 说)如何执行涉及某个给定方法和/或记录的给定事件。例如,如果提 供者希望允许用户拷贝许可记录808,那么他可能希望内部地改动该许 可记录。例如,在上述一个用户既有桌上型计算机又有笔记本计算机的 例子中,提供者可以允许用户根据桌上型计算机提供的信息拷贝启动笔 记本计算机所需的必要信息,但不允许该笔记本VDE节点对所述信息 进行另外的拷贝。在该例中,前述的分发控制结构将在桌上型计算机中 继续存在,但传递给笔记本计算机的启动信息拷贝将缺少从该笔记本计 算机执行分发过程所需的分发控制结构。类似地,一个信息内容提供者 可以向作为分发者的另一个信息内容提供者提供分发控制结构,在该分 发控制结构中的某个控制结构将允许制作VDE信息内容容器对象一 定数目的拷贝,同时也允许制作许可记录的相关拷贝,但是,该许可记 录将(例如根据信息内容提供者的规定)被改变,从而禁止接收分发者 所做拷贝的最终用户再制作拷贝以期将之分发给其它VDE节点。

尽管上述示例着重描述一个可能情况下的特别事件(拷贝),也可 以在本发明所设想的任何控制关系下使用类似的过程从记录和/或方法 中读、写、修改、更新、处理、和/或删除信息。其它的例子包括:拷 贝预算、拷贝计量器、更新预算、更新计量器、压缩审核跟踪等等。

创建常规方法

在本发明的较佳实施例中,可以“任意地”创建方法,或将为方法 建立别名。这两种模式使VDE分发过程具有高度的可配置性和灵活 性,并提供了对VDE分发进程的可靠控制。通常,创建方法的过程包 括为方法的数据部分指定必要的属性或参数,然后“压模”(typing) 出该方法。压模进程(typing process)通常涉及选择一个或多个加载 模块来处理方法的任何数据部分。除了创建方法本身,方法创建进程还 产生方法选项子记录以及分发记录注释,上述子记录将放置在许可记录 中,或者对许可记录修改。除了执行方法所需的任何“标准”加载模块 以外,如果允许的话还可以规定其它的加载模块和数据,这些加载模块 和数据将结合前述加载模块一起使用。上述事件处理结构对方法的分发 进行控制。

例如,考虑一下安全预算的情况。一种典型的预算类型可能限制用 户每月最多使用10Mb的解密数据。该用户希望其将使用相关VDE信 息内容容器对象的权利移到其笔记本上。预算创建者可能已经根据计入 某对象预算的权利移动次数将笔记本中的最多使用量限制为同样数 量、原先数量的一半、按比例分配的数量等等。与上述预算相关联的分 发方法(或内部事件处理结构)允许预算创建者确定涉及到的实现方法 和参数。当然,针对再分发的情况或正式分发方法的情况可能需要不同 的分发方法。这些选择的总和被存放在对应于该方法的许可记录中。

下面给出了用来移动预算记录的一个可能进程步骤示例:

1)检查移动预算(如确定所允许的移动次数)

2)将静态字段拷贝到新记录(如作为留存数据)中

3)减少老记录(原始预算)中的“递减”(Decr)计数器

4)增加老记录中的“留存数据”(Encumbrance)计数器

5)写分发记录

6)向新记录中写入分发事件ID(Distribution Event Id)

7)增加移动计量器

8)减少移动预算

9)增加新记录中的“递减”(Decr)计数器

创建预算

在较佳实施例中,为了创建一个预算,用户需要操作图形用户接口 预算分发应用(如VDE模板应用)。用户需要填充有关预算、过期周 期、审核员等的所需字段。可以将预算规定为美元、德国马克、日元, 以及/或者任何其它货币或信息内容衡量体系和/或组织的货币。上述应 用的较佳实施例输出通常带有三个基本元素:1)安全数据库610分发 部分的注释—对于每个被创建的预算记录都要产生该注释;2)实际的 预算记录;3)方法选项记录—该记录需要加到许可记录中。在某些情 况下,预算进程可能最终没有创建方法选项,因为一个现有的方法选项 目前可能正被使用。通常,所有上述输出都被存放在安全数据库610中 和/或一个或多个管理对象中以便加以保护。

在较佳实施例中,预算分发应用有两种基本的操作模式。在第一种 模式下,操作者可以不受限制地规定预算。可以自由地使用上述操作所 产生的预算,以便控制操作者具有权利的分发进程的任意方面,这些预 算可用作某些“安全”预算—例如用来限制使用的某些方面的量度。例 如,如果操作员是一个“普通人员”,他可以根据个人帐务模型或计划 利用上述预算来控制自身使用对象的情况。如果操作员是一个特许的 VISA用户,上述的最终预算将对整个分发系统产生普遍影响。一个核 心思想是上述模式受操作员的严格控制。

第二种操作模式用来创建“别名”预算。这些预算被结合到操作者 系统中的已有预算。在操作者填写预算的时候,将会为建有别名的预算 产生一个留存数据。当上述类型的预算创建完毕后,其输出包括两个结 合在一起的方法选项子记录:对应于建有别名预算的方法选项子记录, 以及对应于新创建预算的方法选项子记录。在大多数情况下,如果预算 创建者被授权在许可记录的适当必要方法记录内修改方法选项,就可以 用别名预算来代替原始预算。

例如,假设某公司的用户(客户管理员)在其电子设备600中含有 公司的VISA预算。他希望利用各种的现有预算和要求将该预算分发给 公司的用户网。他还希望将公司的VISA预算限制到某些对象。为了实 现上述目标,该用户将公司预算起别名为VISA预算。然后(如果被授 权的话)他修改公司批准其用户操作的所有对象所对应的许可记录,这 样一来,这些用户除了认可VISA预算之外还认可公司预算,或只认可 公司预算而不认可VISA预算。然后,他将新许可记录和预算分发给其 用户。这些用户处的审核数据将对照公司VISA预算的留存数据经过压 缩,从而完成定期的计帐。

在另一个例子中,某个消费者希望控制其家庭电子设备对其VISA 卡的使用,并希望禁止其小孩玩太多的视频游戏,同时允许无限地使用 百科全书。在该例中,他将创建两个预算。第一个预算将是其VISA卡 的别名,该预算只能结合百科全书对象(该百科全书对象指向单独的百 科全书对象和/或一类或多类百科全书对象)使用,而该百科全书对象 引用了经明确改动的许可记录中的别名化预算。第二个预算可以是(举 例来说)一个时间预算,消费者将该预算再次分发给其家庭以结合视频 游戏对象(视频游戏类)使用。在本例中,第二个预算是一个“自我补 充”的安全/控制预算,该预算允许(举例来说)每天的使用时间为2 小时。第一个预算的操作方式与前面的例子相同。第二个预算作为新的 必要方法被添加到视频游戏的许可记录中。由于访问视频游戏需要使用 时间预算,因此,引入了一种有效的控制途径以申请第二个预算—只有 经过了修改可以接受家庭预算的许可记录可以被孩子们用来玩视频游 戏,并且他们玩游戏的时间被限制在每天两个小时。

共享和分发权利和预算

    移动

较佳实施例提供的VDE“移动”概念涵盖了对权利和预算的“友 好共享”。“移动”的一个典型示例是用户拥有若干机器并希望在一台 以上的机器中使用同一对象。例如,用户拥有一台桌上型计算机和笔记 本计算机。他们订阅了一份电子报纸,并希望在两台计算机中都能阅读 该报纸,即,用户希望将权利从一台机器移动到另一台机器。

有关“移动”的一个重要概念是独立操作的思想。任何移入了权利 的电子设备600都可以独立地与分发者和票据交换所通信。例如,上面 提到的用户可能希望在途中将其笔记本计算机继续携带一段时间,并联 系票据交换所和分发者,而不必与其桌上型计算机建立本地连接。

为了支持独立的操作,用户应该能够与分发者或票据交换订立一个 帐户,该帐户不依赖于他正用来建立连接的电子设备600。对于最终用 户和票据交换所或分发者,上述交易必须做到在机器之间可独立跟踪和 协调。在机器间移动权利、预算、以及位图或复合计量器等基本操作也 一并支持。

    再分发

再分发位于“移动”的“友好共享”与正式分发之间的UDE中间 地位。该过程不要求在制作者、票据交换所、或分发者或再分发者之间 进行特别交互作用,在这个意义上可以将再分发看成是“匿名分发”。 当然,制作者或分发者确实有能力限制或禁止再分发。

与“移动”的概念不同,再分发并不意味着独立操作。再分发者为 接收再分发权利和/或预算等的用户充当联系点。这些用户不了解、或 不访问再分发者的票据交换所(和/或分发者)帐户。再分发者充当由 他们再分发的权利和/或预算等的审核员,除非分发者和/或票据交换的 限制特别控制再分发者这样做。由于再分发接收者(再分发权利和/或 预算等的接收者)将会给票据交换所带来不可估量的工作负担,并且由 于再分发者将会使自己身处审核风险中(他们需要对再分发的所有权利 和/或预算等负责),所以由再分发者分发给再分发接收者的权利审核、 预算审核等被假定为较佳实施例中的默认情况。

    分发

分发涉及三种实体。制作者通常是分发的源,他们通常设置控制结 构“环境”并能够控制传递到分发网上的权利。分发者形成了对象(信 息内容)最终用户和对象(信息内容)制作者之间的链接,他们可以向 权利和审核数据提供双向的传输通道。票据交换所可以提供独立财务服 务,例如信用和/或计帐服务,票据交换所还可以充当分发者和/或制作 者。通过许可和预算处理,这些不同各方可以一起对权利使用和/或审 核活动的类型和程度进行控制。

留存数据

“留存数据”是一种特殊类型的VDE预算。任何类型的预算分发 出现时,都会产生一个“留存数据”。留存数据与用于权利行使目的的 原始预算(如,信息内容使用的付款)之间是不可区分的,但可以在分 发记录中被唯一地标识为留存数据的数量,以及完成发送记录所需的所 有必要信息,以便跟踪留存数据的位置。对于权利行使目的,留存数据 与原始预算相同,但是对于跟踪目的,留存数据是可以唯一识别的。

在本发明的较佳实施例中,用户VDE节点和票据交换所服务将使 用分发事件ID(Distribution Event ID)来跟踪和协调留存数据,即 使在异步审核的情况下也是如此。这就是说,从跟踪角度来看,“新” 留存数据预算是唯一的,而从使用角度来看,它是不可被区分的。

对于VDE分发进程来说,未决的留存数据是一种较好的中间控 制。可以引入一个合适的“宽限期”,在此期间必须解决留存数据。如 果过了这段期限,将会发生实际的计帐或付款。但是,即使上述宽限期 已经到期并且已经进行了计帐和/或付款,留存数据仍然可以是未决 的,并且仍然可以支持以后的调节。在这种情况下,审核员可以允许用 户获得信用,或者用户可以连接到含有留存预算的VDE节点并解决一 定数额作为内部信用。在某些情况下,如果留存数据没有在“宽限期” 期间得到解决,或者存在重复的宽限期冲突,或者未决的留存数据过分 庞大,缺少审核跟踪,可能足够导致分发者撤消再分发特权。

留存数据可以在用于各种各样的分发模式中。留存数据与预算别名 建立一起使用时,开拓出了重要的其它可能的分发形式。在为预算建立 别名情况下,用户将自身置于对象的控制路径中—一个建有别名的预算 只能结合经过了修改可以识别该预算的许可记录使用。而留存数据则没 有该限制。

例如,用户可能希望限制其孩子对其VDE节点电子VISA预算的 使用。在这种情况下,用户可以在其VISA预算中为孩子的家庭别名预 算生成一个留存数据,而为其妻子生成另一个,后者是原始VISA预算 的透明留存数据。BigCo可以使用类似的机制将VISA预算分发给部门 领导,而将别名的BigCo预算直接分发给用户。

帐号和用户ID

在较佳实施例中,为控制对票据交换所的访问,用户在票据交换所 被分配了一个帐号。从外人的角度来看,帐号为安全数据库记录提供了 唯一的“实例”数值。从电子设备600站点的角度来看,用户、组、或 组/用户ID提供了记录的唯一实例。例如,从VISA的角度来看,某人 的金卡(Gold Card)属于帐号#123456789。从电子设备站点(如公 司的某台服务器)的角度来看,该金卡可能属于用户ID 1023。在大量 用户和/或用户组使用一台VDE节点的组织中,这些用户和/或用户组 可能被分配唯一的用户ID。不同的预算和/或其他用户权利可以被分配 给不同的用户和/或用户组,并且/或者可以采用不同的方式将其它的 VDE控制信息应用到分配有不同上述ID的用户对电子信息内容和/或 设备的使用中。当然,票据交换所和本地站点都有可能带有上述两种信 息,但是根据视角的不同“使用过的数据”与“说明数据”将会有所差 异。

在较佳实施例中的“移动”情形中,与权利一起存放的帐号将保持 不变。在较佳实施例的其它分发形式中,分发接收者需要一个新帐号。 这个新帐号可以由系统自动产生,也可以按照分发者或再分发者开发的 方法来产生。分发者在其本地名字服务中为每个分发接收者维护帐号 (以及相关的访问秘密信息)。相反,分发接收者的名字服务则根据用 户ID为每个分发者保存帐号。通常在“移动”情形中,该记录与其它 记录一起移动,或在其它分发形式中,该记录则被生成。

当为新用户或用户组生成控制信息(如预算)时,各种组织(包括 家庭)可以自动地分配唯一用户ID。

    要求记录

为了在收到某个VDE信息内容容器对象的一个或多个必要许可 记录之前创建要求以及可能的选项,以便行使与该对象相关的权利,在 该对象的私有头中可以包含一个要求记录。该记录将帮助用户在建立连 接之前首先创建他们带有的信息以及他们需要从分发者那里得到的信 息。如果行使特别权利的要求或可能性自对象发布之后已经发生了变 化,那么在容器(如果该容器是可得到的或经允许的话)中除了对象以 外可能还要放入一个修改了的要求,或者在启动注册过程之前可以首先 向分发者请求得到新的要求记录。分发者可以维护在线的和/或传递给 用户的要求记录和/或说明信息集合的“目录”,对于上述要求记录和/ 或说明信息集合对应的对象来说,分发者能够获得权利并且/或者将权 利授予其他用户。

    传递审核

在较佳实施例VDE中,至少有两种审核。在预算分发的情况下, 反映预算消耗的计帐记录通常需要经过收集和处理。在许可分发的情况 下,与某个对象相关联的使用数据也受到频繁地要求。

为了有效地控制对象,制作者可以建立与某个对象相关联的基本控 制信息。通过列出许可、各种安全措施的分发、管理和/或财务预算、 以及允许的再分发的级别等,制作者可以实现上述目标。分发者(以及 再分发者)可以进一步控制该进程不超越他们收到的权利、预算等(高 级控制信息)范围。

例如,对象制作者可以规定其它的必要方法可以被自由地增添进其 许可记录,为该行为不建立任何预算,并且允许无限制地分发该权利。 作为另一个例子,制作者可允许分发者将使用权利转移给六个子分发 者,每个子分发者都可以分发10,000份拷贝,但是不允许将任何再分 发权利分配给子分发者(再分发者)的用户。再举一个例子,制作者可 以授权将使用权仅转移给10个VDE节点,并且只支持一级分发(不允 许再分发)。通过使用许可记录和/或部件组,信息内容提供者和其它 控制信息的提供者有能力控制其他用户被授予的权利,将这些权利放在 他们发送给这些用户的许可记录中委派出去,只要这些控制其他用户所 拥有的一个、某些、或全部权利的上述权利或者经过了允许,或者经过 了限制(这取决于控制信息分发模型)即可。一种可能的并且经常受到 欢迎的方案是:使用VDE来创建一种混合模型,在该模型中,禁止分 发者控制后续用户的某些权利,但是允许其控制其他权利。在某些VDE 模型中,至少对于一“级”或多“级”的分发链来说,权利分发的VDE 控制将部分地或全部地由电子信息内容控制信息提供者进行控制,该提 供者或者不兼任相关信息内容的提供者,或在所述信息内容控制信息的 控制下只提供信息内容的一部分。例如,在某些模型中,票据交换所还 可以充当权利分发代理,它向某些价值链参与者提供一个或多个权利, 这些一个或多个权利可以被“连接到”一个或多个使用票据交换所信用 的权利(如果所述票据交换所至少部分地是一个财务票据交换所)。作 为一种选择或补充,上述控制信息提供者也可以限制其他用户的权利。

信息内容制作者或其他信息内容控制信息提供者可以为用户(如某 个分发者)做预算从而为信息内容对象创建数量不限的许可记录,但是 如果用户没有在预期的一个或多个时刻和/或经过某个时间间隔汇报其 使用情况(提供审核报告)(并且/或者如果用户没有为其使用付帐, 或违反了该用户与信息内容提供者之间所达成协定的其他方面),上述 信息内容制作者或其他信息内容控制信息提供者可以通过一个到期/终 止过程来撤消上述权利和/或其他重要的使用权利。(举例来说)可以 由时间衰老加密密钥来强制执行上述终止过程(或暂停,或其它指定的 结果)。时间衰老加密密钥用来加密控制信息的一个或多个方面。同样 的终止过程(或其他指定的结果,如预算压缩、价格上升、将信息显示 到屏幕上通知用户、向管理员发送消息、等等)也可以作为用户或用户 VDE设备没能成功地完成一个受监视的过程所带来的后果,这种受监 视过程的一个例子是以电子货币为使用行为付帐;出现该终止过程的原 因也可能是用户或用户VDE设备没能成功地对被保存的重要信息(如 信息内容和/或设备使用信息、控制信息、等)进行备份,多次反复未 能使用正确的口令或其它标识符而出现的失败。

通常,可以由到期过程和/或其他终止过程强制收集审核信息,这 些审核信息将被收集起来汇报给某个审核员。例如,用户的VDE节点 可能(1)收到外部发来的指令通知它不能再执行某些任务;(b)在其控制 结构中携带信息通知它不能再执行某些任务;或者(c)无论怎样都不能再 执行某些任务。上述的某些任务可能包括一个或多个允许操作,这些允 许操作归因于用户(或设备)或者没有将所述的审核信息汇报给所述审 核员,并且/或者没有收到审核员接收和/或接受所述审核信息的安全确 认。如果审核员没能从用户那里收到审核信息(或某些其它事件没能发 生或没能正确地发生),一个或多个时间衰老密钥(这些密钥(举例来 说)用作本发明实施例的安全部件)将突然加速(完成)其衰老过程, 这样一来,与所述时间衰老密钥相关联的一个或多个过程将不能再执 行。

授权访问标记和修改访问标记

为了使用户VDE设备能够将审核信息传递给诸如票据交换所之类 的VDE审核方,VDE允许VDE审核方安全地与用户VDE设备进行 电子通信,并查询所述设备以期获取保存在所述设备安全子系统中的某 些或所有信息,该过程要依赖于所述审核方的权利(如果所述审核方没 有得到明确的授权允许他访问某些安全存贮的信息,那么他通常不能访 问这些信息;也就是说,通常不允许一个信息内容提供者访问与另一信 息内容提供者提供的信息内容相关联的信息内容使用信息)。审核方声 明一个安全保密信息(如一个安全标记),该保密信息代表了审核方的 一个权利集合,该权利集合允许审核方访问由所述子系统维护的某些信 息。如果所述子系统确认了所述标记,审核方就可以接收特定审核信 息一即允许他请求和接收的那些审核信息。

在审核跟踪的执行中有很大的灵活性。例如,制作者(或其它信息 内容提供者、或控制信息提供者、或处于对象或审核报告处理链中的审 核员)可以允许审核员改动事件跟踪,但不允许除他们之外的任何人阅 读该跟踪,并且把该权利的再分发限制到(举例来说)六层。作为另一 种选择,制作者或其它控制方可以授权分发者在报告其使用情况之前处 理(举例来说)100,000个审核记录(并且/或者(举例来说)授权他们 处理来自某个给定用户的12个审核记录)。如果制作者或其它控制方 愿意的话,他可以支持(和/或要求)各自不同的(以及包含不同的、 部分的、重叠的、或相同信息)带有审核信息的审核“包”,某些所述 的审核信息由分发者处理,而另一些所述的审核信息则传回制作者和/ 或其它审核员(他们都收到同样的、重叠的、部分的、或不同的审核信 息)。类似地,只要(举例来说)信息内容制作者允许,分发者(或其 它信息内容和/或控制信息提供者)就可以要求(举例来说)在再分发 者每处理50,000审核跟踪记录之后(或处理了任意其它的数量单位之 后、和/或在某一时间间隔之后、和/或在某一预定的日期)就向他传送 一次审核信息。在较佳实施例中,审核规则象其它控制结构一样可以在 分发处理链的任意阶段被规定,只要规定所述规则的权利尚未由更“上 级”的对象和/或控制信息分发(如审核)参与者所限制即可。

发送给不同审核员的审核信息可以由一个或多个不同密钥加密,每 个审核员的VDE节点都已经安全地提供了这些密钥;同时这些密钥被 传送出去以包含在用户的许可记录中,这是(举例来说)对象注册过程 中的必要步骤。这种方式可以提供附加的安全性,以便(除了使用口令 和/或其它识别信息或其它VDE安全措施之外)进一步确保审核员只能 访问他得到授权的审核信息。在一个实施例中,可以为不同的审核员将 (例如采用管理对象形式的)加密的(和/或未加密的)审核信息“包” 装配在一起,这些审核员包括票据交换所和/或信息内容提供者和/或其 它审核信息用户(包括(举例来说)市场分析员和/或清单提供者)。 上述信息可以通过单条处理链安全地传递出去,例如该处理链可以是从 用户到票据交换所、到再分发者、到发布者和/或信息内容制作者;该 链由VDE审核控制结构和参数规定。作为另一种选择,可以要求将加 密的(或未加密的(未加密的形式通常不太理想))审核包从用户直接 传播给大量的审核员,这些审核员中的一个或多个有责任将审核包“传 递”给其它审核员。在另一个实施例中,可以将审核信息传递给(举例 来说)票据交换所,然后由票据交换所将所述信息(和/或某些经过处 理的结果)的所有部分和/或适当部分再分发给一个或多个其它方,所 述再分发过程使用了由所述票据交换所创建的VDE安全对象。

审核员(审核信息的接收者)的一个重要功能是向用户VDE节点 传回管理事件作为确认,表明审核信息已经被收到和/或“认可”。在 较佳实施例中,收到和/或接受审核信息之后将会执行两个进程。第一 个事件将导致准备一个审核报告的VDE节点中所含的审核数据被删 除,或被压缩成或添加到一个或多个摘要数值中。第二个事件或事件集 合将在审核信息接受者的所述VDE节点中“通知”相关安全性(如终 止过程或其它结果过程)控制信息(如预算),修改过期日期,进行密 钥更新,和/或其它相应处理等等。在大多数情况下,在收到审核跟踪 之后,这些事件将被立即发送到某个站点。在某些情况下,上述传送过 程可以被延迟,以便(举例来说)首先允许对用户发给审核员或其它方 的审核跟踪和/或付款进行处理。

在较佳实施例中,有关信息内容对象和独立分发的方法和/或部件 组的管理事件是类似的,但不一定要完全相同。例如,对预算的密钥更 新可以控制计帐跟踪的加密,而不控制对象信息内容的解密。预算的计 帐跟踪从各个方面来说都是一个方法事件跟踪。在一个实施例中,该跟 踪必须在分发记录中为留存数据保存足够的引用,以便票据交换所可以 进行调节。如果宽限期已过而预算创建者又允许若过期的留存数据被 “返回”制作者,未决的留存数据最终可以产生自动信用,那么将会出 现上述动作。

通过处理路径交付审核报告的过程可以部分地由反向(信息返回) 审核方法提供保证。许多VDE方法至少有两部分:一个部分用来管理 用户VDE节点中产生审核信息的进程;另一部分负责对审核数据进行 后续处理。在处理多个审核员需要的合并审核信息的过程示例中,票据 交换所(或其它审核员)收到单个容器对象。该容器可以含有(1)某些 加密审核信息,这些信息由票据交换所本身使用;(2)某些其它加密审 核信息,这些信息去往其它一个或多个审核方。这两部分信息可以带有 相同的、重叠的或部分不同的、或完全不同的信息信息内容。作为另一 种选择,票据交换所VDE节点能够处理提供来的某些或所有审核信 息。该审核信息可以部分地、或完全地、以某种摘要的和/或分析的形 式由票据交换所进行进一步的处理,并且/或者可以与其它信息合并在 一起,以形成至少部分派生的信息部分,并被插入到一个或多个至少部 分安全的VDE对象中,这些对象将被传送给所述一个或多个(其它的) 审核方。当所述反向(返回)审核方法在所述票据交换所VDE节点中 安全地处理审核信息容器时,票据交换所VDE节点可以创建一个或多 个VDE管理对象,以便把审核信息安全地传送给其它审核员,同时对 那些指定由所述票据交换所使用的安全审核信息进行单独处理。安全审 核进程和信用信息在VDE参与者之间的分发过程通常在VDE的安全 “黑盒子”中发生,也就是说,各种进程在VDE安全PPE 650中得到 安全地处理,并且通过使用VDE安全通信技术(如公开密钥和鉴别) 在VDE参与者的VDE安全子系统之间安全地传送审核信息。

上述类型的反向审核方法可以指定采用何种方式对返回的审核信 息进行处理,包括(举例来说)对审核信息的本地处理以及/或者将审 核信息安全地传送给一个或多个审核方。如果审核信息未传送给一个或 多个其它审核方,而上述传送可能是所要求的,并且可能是所述一个或 多个其他审核方、和/或信息内容提供者、和/或控制信息提供者在许可 记录说明和/或修改进程中已经制定的准则中所规定的,那么如果(举 例来说)没能收到审核方(如信息内容提供者)发来的、已收到所需审 核信息的成功传送通知,将会导致传送通过方VDE节点中的至少部分 功能被禁止(例如,禁止继续执行某些一个或多个由VDE管理的商业 功能,而这些功能则涉及到与所述审核或审核方相关联的对象)。在上 述较佳实施例的示例中,当审核员收到一个对象后,该对象将被自动注 册,而许可记录内容则放入审核员VDE节点的安全管理数据库中。

在审核信息报告交换过程中(或在用户和审核员或审核员代理之间 的其它电子交互作用中)用户系统可能会接收到一个或多个许可记录, 这些许可记录管理审核报告对象的创建和使用(并且还可能管理对象使 用的其它方面)。收到的每个许可记录都可以管理下一审核报告对象的 创建。在报告了审核信息之后,用户的VDE节点可以要求得到一个新 的许可记录以便恢复对审核报告创建的管理功能,并恢复下一审核报告 周期中的审核信息传送。在上述的例子中,使审核员为审核报告之用向 用户提供一个或多个许可记录可以要求审核员(如票据交换所)已经从 “上游”审核员(如信息内容和/或其它信息内容控制信息提供者)那 里收到了某些特定的许可记录本身。由这些上游权限记录提供的信息可 以被集成进审核员VDE(如票据交换所)设备的一个或多个许可记录 中,该审核员VDE设备管理许可记录创建周期以产生含有某些许可记 录的管理对象,所述许可记录在审核信息报告交换过程中去往用户。如 果上游审核员没收到和/或不能处理所需的审核信息,该上游审核员将 无法向(在本例中的)票据交换所提供所需的许可记录信息,而该信息 则是用来允许分发者支持一个或多个对象(或对象类)的下一许可记录 创建/审核周期。结果,票据交换所的VDE节点就无法为用户产生下一 周期的许可记录,并且/或者无法执行某些其它重要进程。上述审核报 告控制进程可以完全是电子进程管理,其中涉及了在预期的审核信息接 收者和发送者两处发生的事件驱动VDE活动,并使用了他们两者的安 全PPE 650和VDE安全通信技术。

在较佳实施例中,用户每次向其自身的VDE节点注册新对象时, 并且/或者作为另一种选择,用户每次向远程票据交换所和/或分发者 VDE节点注册新对象时,将会出现一个或多个许可记录,用来至少部 分地管理对所述对象的使用。可以在安全UDE注册过程(使用了VDE 设备安全子系统)中动态地提供上述许可记录,或者在初始注册过程结 束之后提供,并且在以后某个时间接收该权限记录,例如可以通过一个 或多个独立的安全VDE通信过程进行接收,该通信过程包括(举例来 说)接收到包含或携带所述信息的物理结构。至少一个涉及向用户提供 一个或多个许可记录的进程会触发一个计量事件,其结果是将创建审核 信息以反映用户VDE节点的、票据交换所的、以及/或者分发者的许可 记录提供进程。该计量进程不仅记录一个或多个许可记录已被创建,它 还可以记录VDE节点名、用户名、相关对象识别信息、时间、日期、 和/或其它识别信息。某些或所有上述信息可以成为审核信息的一部 分,这些审核信息由票据交换所或分发者(举例来说)安全地汇报给审 核信息内容制作者和/或其它信息内容提供者。这些信息可以由接收审 核员站点的安全VDE应用软件对照由所述票据交换所、或分发者、或 所述用户发来的用户审核信息进行调节。对于每个被计量的一个或多个 许可记录(或许可记录集)(创建这些权限记录是为了使用户(和/或 VDE节点)可以用来管理对特定一个或多个VDE对象的使用、和/或 管理VDE对象审核报告的创建),最好是审核者接收至少部分含在加 密审核报告中的对应审核信息。对许可记录创建的计量、安全加密审核 信息的报告进程、安全VDE子系统对计量信息的调节—该计量信息反 映了利用接收到的审核报告细节如何创建注册过程和/或审核报告许 可、以及一个或多个安全VDE设备过期进程、和/或其它终止过程和/ 或其它结果过程、凡此种种结合使用显著增强了VDE安全审核报告进 程的完整性,使之成为一个可信有效的商业环境。

安全的文件管理示例

VDE可以用来实现安全的文件管理环境。下面给出了实现此目的 的几个例子。

在一个例子中,假设一个法律事务所希望使用VDE 100来管理文 件。在本例中,作为法律队伍一个组成部分的法律事务所可能采用下列 方式使用VDE:

安全地控制对客户机密记录的访问和/或其它使用

安全地控制对法律事务所创建的文件和备忘录的访 问、分发和/或其它使用权利

安全地控制对涉及案件的调查材料的访问和其它使用

安全地控制对涉及案件的记录、文件和笔记的访问和其 它使用—包括分发

安全地控制诉讼队伍中其它事务所如何使用(包括改 变)分发给他们供其评论和审阅的摘要

帮助管理客户计帐

法律事务所还使用VDE向法庭(假设法庭也具有VDE功能)电 子提交辩护状,包括对提交人的ID(如数字签名)以及与所述提交步 骤相关的其它信息进行安全审核验证。

在本例中,法律事务所从客户的VDE设备安全子系统收到VDE信 息内容容器文件。作为另一种选择或补充,法律事务所可以或者收到实 际的文件—该文件可以被扫描成电子的形式,以及/或者收到尚未放入 VDE容器中的电子文件。电子形式的文件被保存在与特定客户和/或案 件相关的VDE容器(对象)中。VDE容器机制支持层次化的排序方 案以便在容器中组织文件和其它信息。该机制可以用来组织容器中文件 的电子拷贝。VDE容器与特定访问控制信息和权利相关联,这些访问 控制信息和权利在涉及该容器的一个或多个许可控制信息集合 (PERC)中描述。在本例中,只有法律事务所中拥有VDE实例、适 当的PERC、以及含有所需文件的VDE对象的那些成员才可以使用上 述文件。作为另一种选择或补充,法律事务所成员可以使用已经装入法 律事务所网络服务器的VDE实例。在这种情况下,该成员必须可以由 适当的PERC识别,并且必须能够访问含有VDE对象的文件(以便使 用服务器VDE设备)。通过使用一个或多个用户VDE设备的安全子 系统保证了对电子文件的基本访问控制。

VDE可以用来以几种方式提供基本使用控制。首先,它允许在单 个对象中“嵌入”多个容器。被嵌入的对象支持容器中的控制结构“嵌 套”。VDE还将使用控制信息延伸到任何粒度级(与传统操作系统所 提供的文件级控制信息相反),并提供了灵活的控制信息,以控制与特 定信息相关的任何行为,所述的特定信息可描述为受VDE控制的进 程。例如,可以使简单的控制信息与查阅文件的一个或多个部分相关 联,使附加控制信息与编辑、打印和拷贝同一文件的相同和/或不同的 一个或多个部分相关联。

在本例中,“客户”容器包含了该客户已经提供的所有文件(可以 使用VDE抽取和嵌入技术将在其它容器收到的文件安全地抽取出并嵌 入到VDE客户容器中)。本例中的每个文件都作为一个对象存放在父 客户VDE容器中。“客户”容器还嵌入了若干其它对象。其中,一个 对象由律师用来存放其客户笔录,一个(或多个)对象用来存放调查结 果和相关信息,同时,至少有一个对象用来存放法律事务所已经产生的 信件、工作记录、以及提要等。客户容器还含有有关客户的其它信息, 包括有关计帐、时间、帐户、和付款的电子记录。将VDE对象嵌入到 父VDE信息内容容器中提供了一种简便的方法,以安全地分类和/或存 放共享类似控制信息的不同信息。客户提供的所有文件都可以(举例来 说)受涉及使用和非泄露事宜的相同控制结构所控制。律师笔记可以要 受控制信息的控制,(举例来说)只有特定的律师才能使用这些笔记, 这些律师可以是创建该笔记的律师,或者可以是上述创建笔记的律师明 确授予访问权的律师。嵌入的容器还提供了控制不同信息集合的简便机 制。例如,可以把调查对象以VDE“智能对象”的形式存放(或从VDE “智能对象”派生),这些“智能对象”保存了由上述调查对象经过调 查得到的结果。涉及案件(案件从具有VDE功能的LEXIS站点获得) 一个方面的的调查结果可能被密封成一个智能对象;而涉及案件另一 (或同一)方面的另一会话结果可能被密封成另一个对象。在本例中使 用智能对象有助于说明:可以根据愿望和/或要求将完全不同的和独立 交付的控制信息装入客户容器中,以便加强提供者(例如信息内容所有 者)的权利。

可以使用控制结构来管理任意种类的所需粒度分组和/或逻辑文件 内容分组,如文件、页、段落、相关主题的材料等等。在本例中作以下 假设:客户提供的文件在页级控制,律师笔记在逐个律师的基础上在文 件级控制,法庭文件和辩护状在文件级控制,调查信息在进行调查时由 信息内容提供者指定的任意级别上控制,而处于上述各种信息内容中的 某些高度机密信息则被标记出来,使之只能被显示或加入注释,并且只 能由首席合伙律师进行上述操作,同时也只有信息内容给定部分的制作 者和/或嵌入者有权使用上述信息(打印、抽取、分发等等)。

通常,对本例中容器信息内容的控制涉及到权利的分发。在文件 级,控制信息涉及所有内部产生的文件;页级,控制信息涉及客户级的 文件;而在由信息内容提供者指定的级则涉及调查文件。

可以以复杂的结构或者简单的结构组织VDE控制信息,这取决于 参与者的愿望。在某些情况下,VDE制作者将采用一系列他们优选的 控制结构定义(这些定义由管理规则说明和控制信息的VDE应用进行 支持;VDE应用或者直接提供上述支持,或者通过使用经验证的应用 兼容VDE部件组来提供上述支持)。

在本例中,法律事务所在接收案件时首先为其新客户创建标准的 VDE客户信息内容容器。法律事务所VDE管理员将为新客户建立VDE 组,并将事务所中经过特许可以处理该案件的律师的VDE ID加入上述 VDE组中,同时如果适当的话还提供一个或多个用户模板应用。这些 模板提供(举例来说)一个或多个用户接口和相关控制结构,以便用户 选择附加和/或另外的控制功能(如果上级控制信息允许的话),提供 控制参数数据条目,以及/或者执行用户指定的管理任务。管理员结合 使用创建工具和预定的创建模板创建上述容器。这个创建模板为上述文 件规定了使用(包括分发控制信息)。来自客户的每个电子文件(包括 信件、备忘录、电子邮件、电子表格等等)于是被加入上述容器中作为 单独嵌入的对象。每个新对象的创建都使用了创建模板,该模板满足容 器所规定的默认控制结构是给定的类型各新对象所要求的。

在各个律师处理案件的时候,他们将笔记输入存放在客户VDE容 器中的对象中。可以利用法律事务所已经使用的VDE感知型字处理器 将上述笔记取出。在本例中,VDE重定向器通过使用结合一个或多个 VDE PPE进行操作的VDE控制进程来处理将字处理器文件请求安全 地映射到VDE容器及其对象上。对于某些类型的律师笔记,如果其文 件类型不能根据信息内容自动确定,那么可以通过律师帮助使用默认创 建模板创建该律师笔记对象。这种方式允许VDE自动在预定的级别对 笔记进行检测和保护,这些预定级别的例子有文件级、页级、段落级等。

使用VDE可以自动地管理调查工作。智能对象可以用来从信息高 速公路上具有VDE功能的信息源中安全地搜索信息、在必要的时候为 使用上述信息付帐,并且检索上述信息。

上述信息源的例子可能包括LEXIS、Westlaw以及其它相关法律 数据库。一旦检索到信息,可以将这些信息安全地嵌入到VDE信息内 容客户容器中。如果智能对象还包含了未公布的信息,那么整个智能对 象都可以被嵌入到客户的VDE容器中。上述方式使未公布的信息受到 双重VDE控制要求的限制,在所述双重VDE控制要求中,一部分涉 及从智能对象中公布信息(例如付帐和/或审核要求),另一部分涉及 对指定类型的客户信息的访问或其它使用。

可以采用律师笔记的控制方式对提要和其它文件进行控制。可以使 用法律事务所中的标准字处理器来编辑这些文件,利用使用控制结构来 控制谁可以对文件(或者在更复杂的例子中,对所述文件的某一部分) 进行审阅、改变、和/或增添内容。VDE还可以支持电子提交答辩状, 其方式是提供可信的源,由该源加盖时间/日期戳以及对提交的文件进 行确认。

当客户和律师希望通过电子邮件或其它方式交换机密信息时, VDE可以起重要作用,即它能够确保上述信息是在特权准许下进行交 换,经过了正确的控制,并且没有遭受不当泄露和/或使用。存放在VDE 信息内容容器对象中的材料(信息内容)通常被加密。经过如此包装之 后,将VDE对象分发给接收者可以不必担心出现未授权的访问和/或其 它使用。只有收到对象的一个或多个特许用户才能打开该对象并查阅、 和/或操纵、和/或修改其信息内容,同时,VDE安全审核确保了对用 户进行的所有上述信息内容活动留下记录。(举例来说)在管理员审阅 了用户使用审核信息之后,如果必要的话,VDE还允许撤消对客户/ 律师特权信息的使用权。

大型组织示例

在有点更具通用性的一个例子中,假设某个组织(如一个公司或政 府部门)具有数以千计的雇员和大量的办事处,而这些雇员和办事处又 分布在大范围的地理区域内。在这样的前提下,该组织希望对分发属于 该组织(或团体)的信息行使控制。上述信息的形式可以是正式文件、 电子邮件消息、文本文件、多媒体等等,这些形式的信息统称为“文件”。

这些文件可以由某些人员(称为“用户”)进行处理,并且/或者 可以由计算机代表用户进行处理。这些文件既可以存在于电子形式供存 贮和传输,也可以存在于书面形式供手工处理。

这些文件可以完全来源于该组织内部,也可以完全或部分地根据从 组织外部接收来的信息创建。组织内部的特许人员可以决定整个地或部 分地将文件发布给组织外部的实体。某些上述实体也可以使用VDE进 行文件控制,而另外一些实体则可以不使用。

文件控制策略

上述组织作为一个整体应该具有严格定义的策略以执行文件的访 问控制和/或其它使用控制。该策略可以基于信息流的“格状模型” (lattice model),在模型中,文件的特征是具有一个或多个层次化“分 级”安全属性9903以及零个或多个非层次化“间段”(Compartment) 安全属性,所有上述属性一起构成了敏感性安全属性。

分级属性将文件敏感性的总体级别指定为有序集合中的一个元 素。例如,集合“不保密的”、“保密的”、“机密的”、“绝密的” 可能适合于政府中的设置,集合“公开的”、“内部的”、“机密的”、 “注册机密的”可能适合于公司中的设置。

间段属性可以指定文件与组织内部一个或多个特定活动之间的关 联,这些活动的例子有:部门分支(如“研究”、“开发”、“市场”) 或组织中的特定项目。

每个使用电子设备600的人员都将被授权用户分配特许敏感性属 性集合,这些属性用来指定上述文件或某些文件类型的一个或多个部 分,可以由上述人员的电子设备采用一种或多种特定方式对这些属性进 行处理。文件的敏感性属性必须属于用户可访问的特许敏感性属性值集 合。

另外,该组织可能希望允许用户对其负有某些规定责任的特定文件 行使控制权。例如,用户(“原始创建用户”)可能希望对某个文件设 置“原始创建者控制”(“ORCON”)限制,这样一来,该文件只 能由该用户指定的其他特定用户传送和使用(并且只能以某种经明确授 权的方式传送和使用)。如果在文件创建之后可以修改“分发列表”的 话,特别是当某人要求原始创建用户提供权限使其能够将文件传送到原 始特许接收者列表之外的接收者时,采用上述限制可以带来灵活性。原 始创建用户可能希望特许的分发接收者只包括:特定用户、规定的用户 组、规定的地理区域、某些执行特殊组织任务的授权用户、或上述某些 或所有接收者的组合。

在本例中,该组织还可能希望允许用户规定程度较弱的分发限制, 例如对文件的访问将进行如上限制;但是,接收者可以不受其它限制地 从文件中将某些或所有信息抽取出来并重新分发出去。

该组织和/或原始创建用户可能希望了解文件分发给了哪些使用或 哪些地理位置。该组织可能希望(举例来说)根据存放在站点配置记录 和/或名字服务记录中的地理信息了解带有特定保护属性的文件被分发 到了哪里。

用户可能希望得到有关被分发文件的“回执”,或者可能希望收到 某些标志,表明文件的接收者已经对文件进行了什么处理(例如,该文 件是否已被阅读、打印、编辑和/或保存),其实现方式可以是(举例 来说)通过在涉及该文件的PERC中规定一个或多个审核要求(或已 知已带有审核要求的方法)。

用户环境

在如上所述的一个组织(或团体)中,用户可以使用各种电子设备 600以处理和管理文件。这些电子设备可以包括联网的或未联网的个人 计算机、功能强大的单用户工作站、以及服务器或主机计算机。为了支 持本例中所述的控制信息,可以借助于支持SPE 503和/或HPE 655的 VDE安全子系统对每个参与使用和管理受VDE保护文件的电子设备进 行功能加强。

在某些组织中,安全操作所面临的潜在威胁相对较低,这样的组织 使用HPE 655可能就足够了。在另一些组织中(如政府防务部门), 有必要在任何需要处理受VDE保护的文件的情况下都使用SPE 503。 在不同的组织中,对增强环境和技术的选择可以不同。即便在一个组织 使用了不同类型的PPE 650来服务不同的要求,这些PPE 650也是兼 容的,它们可以操作同一类型(类型子集)的文件。

用户可以使用某些经过定制的应用程序,这些程序与VDE协作共 同处理受VDE保护的文件。这些程序的例子包括VDE感知型文件阅 览器、VDE感知型电子邮件系统、以及类似的应用。这些程序可以与 用户电子设备600的PPE 650部件通信,使受VDE保护的文件对用户 可用,同时又限制对其内容的使用程度,可能使用类型包括:拷贝、保 存、阅览、修改、以及/或者传送和/或进一步分发至特定电子设备之外。

用户可能希望使用商业上现成的(“COTS”)操作系统和应用 程序来处理受VDE保护的文件。一种允许使用COTS应用程序和操作 系统的途径是仅对没有分发限制的文件允许上述使用。标准的VDE操 作系统重定向器将允许用户以等同于访问普通文件所用的方式来访问 受VDE保护的文件。不过如果使用这种途径,在被保护的对象对COTS 应用可用时,用于计量和/或审核使用的控制链可能会发生一定程度的 “断裂”。可以使用VDE的指纹(水印)技术来方便对任何已发布信 息的继续跟踪。

可以使用多种技术来保护对受保护文件的打印,例如可以使用基于 服务器的解密机、用来“按指纹”的特殊字体,等等。

另一种支持COTS软件的途径是使用运行在用户电子设备中的 VDE软件来创建一个或多个“虚拟机器”环境,在该环境中,COTS 操作系统和应用程序虽然可以运行,但是除非得到VDE的控制,否则 任何信息都不会永久地保存在该环境中,也不会从该环境中传递出去。 这种环境将允许VDE管理所有受VDE保护的信息,同时也允许在受 约束环境的限制范围内无限制地使用COTS应用来处理上述信息。 VDE 100可以将上述环境的整个内容视为读入该环境中的任何受VDE 保护文件的扩展。将信息传送出该环境的操作可以由与原始文件相同的 规则来控制。

“粗粒度”控制功能

前面讲过,一个组织可以使用经VDE加强的控制功能来管理整个 文件的安全性、分发、完整性、和控制。下面列出了这些功能某些例子:

    1)可以为连接两个或多个电子设备600的通信信道分配

特许敏感性属性集合。在该信道中只允许传送那些其敏感性属

性属于该集合的文件。这种方式可以用来支持可信计算机系统

评价规范(TCSEC)的设备标签(Device Label)要求。

2)可以为连接到或安装于电子设备600的可写存贮设备 (如固定磁盘、软盘、磁带机、光盘)分配特许敏感性属性集 合。只有那些其敏感性属性属于该集合的文件才被允许保存在 该设备中。这种方式可以用来支持TCSEC设备标签要求。

3)文件可以与一个用户列表相关联,该用户列表说明了 得到允许可以“处理”该文件的用户。该用户列表可以只说明 (举例来说)可以阅读该文件的用户,对于其他用户来说,即 使他们收到了该文件容器,也不能操作其内容。这种方式可以 用来支持标准的ORCON处理警告。

4)文件可以带有一个特定属性,该属性指定了其原始创 建者,并且,在该文件的信息内容被阅读之前,该属性要求出 示由该原始创建者授予的明确权限。当用户访问该文件时,或 (举例来说)一个用户将该文件分发给另一个用户时,将会出 现上述许可要求。如果没有授予上述许可,将不能操作或使用 该文件。

5)文件可以具有一个特定属性,该属性要求对该文件每 次使用都必须报告给文件的原始创建者。原始创建者可以使用 这种机制控制对该文件的分发。作为一种可选方案,可以在允 许对文件进行任何使用之前就要求将报告成功提交,这是为了 确保控制方能够在使用发生时知道文件已被使用。作为另一种 方案,(举例来说)可以采用延迟(“批处理”)方式提交报 告。

6)文件可以具有一个特定属性,该属性要求对该文件每 次使用都必须报告给中央文件跟踪票据交换所。上述组织可以 使用这种机制跟踪特定的文件、对由任何特定用户和/或用户组 所使用的文件进行标识,以便跟踪具有特定属性(如敏感性) 的文件、等等。作为一种可选方案,可以在允许对文件进行任 何使用之前就要求将报告成功提交。

7)受VDE保护的文件可以具有一个特定属性,该属性要 求对该文件每次使用都必须产生一个“回执”并发给原始创建 者。可以要求使用该文件的人回答特定的问题以产生回执,例 如可以让他说明为何对该文件感兴趣,或让他说明(在读后)

对该文件内容的某些了解。使用这种机制可以确信该文件已经

经过了某人的处理,而不是被任何的自动软件机制处理。

    8)可以使受VDE保护的文件的信息内容对VDE非感知

型应用程序可用,该方式的特点是可以通过上述文件信息内容

唯一地识别出(跟踪出)将它发布的用户。于是,如果处于已

发布形式中的上述文件被进一步分发时,可以确定其来源。可

以在发布信息内容时采用VDE“按指纹”以便实现上述机制。

类似地,可以使用类似的、采用VDE指纹的唯一性技术对打印

出的受VDE保护的文件做标记,这样就可以确定最开始打印该

文件的人,即使从他打印时起已经制作了许多拷贝。

    9)在预算的控制下,可以允许使用受VDE保护的文件,

所述预算(根据访问的规模、时间等)限制对文件内容的访问

或其他使用。这种方式通过限制在固定的时间内个人可以访问

的VDE文件数目,有助于防止大批地暴露文件。例如,对于某

些特定类型的文件,上述控制的一个例子可能允许用户每天最

多阅读100页,但是每天只能打印10页,并且只允许在工作日

的上午9点到下午5点之间打印。作为另一个例子,用户可以

被限制为只能使用受VDE保护的文件中逻辑相关的、相对“邻

接的”和/或具有某种其它模式(如根据共享某个字段中的标识

的记录数量来限制对数据库记录的使用)的一定数量,这样可

以表明(举例来说)出现一种或多种(在平常情况下或任何合

理情况下)过分使用数据库的类型。因此,VDE信息内容提供

者可以将使用VDE信息内容的行为限制成可接受的使用特

征,同时(例如通过向VDE管理员或组织监察人员生成一份异

常报告)可以阻止和/或识别用户对(举例来说)上述信息数据

库资源的不合理使用企图。

上述控制功能展示了几个例子,它们说明了如何使用VDE提供一 个灵活的交互式环境以跟踪和管理敏感性文件。这种环境可以按照物理 位置、按照组织等直接跟踪文档从一个人到另一个人的流动过程。它还 允许对特定的问题给予回答,例如“哪位研究开发(R&D)部外部的 人员收到了任何由研究开发部控制的文件”。由于受VDE保护文件的 每份拷贝都带有控制信息,并且该控制信息可以确保在出现文件使用时 中央记录得到更新并且/或者原始创建者将得到通知,因而跟踪可以十 分迅速和准确。

上述机制与跟踪书面文件的传统方式相反:在传统方式中,通常使 用手工收集和处理收据的书面型系统。文件可以被单独制作了编号拷贝 并经过了签名,但是一旦被分发出去,实际上就不受控制了。在传统书 面型系统中,实际上不可能确定文件所处的真正位置;只有所有方都严 格遵守处理规则(而这种要求至少也是不方便的)时才可能维持控制。

如果在普通的计算机和网络系统环境中进行文件的处理,那么上述 情况也没有什么改善。尽管所述系统可以根据用户身份加强访问控制信 息,并且可以提供审核机制以跟踪对文件的访问,这些仍然是不允许跟 踪或控制信息内容的流动的低层机制。在这种系统中,由于文件信息内 容可以被自由地拷贝和处理,因而不可能确定文件信息内容去了何处, 或它来自何方。另外,由于普通计算机操作系统中的控制机制运行于较 低的抽象层,因此由它们所控制的实体无须一定与用户处理的实体相 同。这将尤其会导致审核跟踪与大量描述无关活动的信息混杂在一起。

“细粒度”控制功能

除了控制和管理整个文件,用户还可以使用定制的VDE感知型应 用软件来控制和管理对文件的个别修改。下面给出了这些功能的一些例 子:

    1)可以允许VDE信息内容用户往VDE文件中增添附加

信息,用以表明他所建议的另一种措辞。该文件的所有其他用

户都可以看到(除了原有正文以外)该建议可选措辞,但只有

该文件的所有者才能将(举例来说)之合并到实际的正文中。

    2)可以允许VDE用户组修改文件的一个或多个部分,其

修改方式是:通过每个单独的修改都可以唯一地跟踪出执行修

改的特定用户。修改文件特定部分需要有特定权利,以及为不

同用户提供不同权利集合的这种功能扩展,允许一个组织或安

全环境提供不同的许可,使同一信息内容的不同用户具有不同

的权利。

    3)用户组可以利用提供来的各份材料逐渐地创建VDE文

件。这些提供的材料可以在单个受控制的文件中合并到一起,

但是(举例来说)在它们以嵌入容器对象形式被嵌入到VDE信

  息内容容器的过程中,它们中的每一个都被各自作了标识。

      4)可以使用VDE控制和管理功能对涉及文件个别区域的

  活动进行跟踪,例如,可以记录文档的每一节已经被阅读了多

  少次。

示例—受VDE保护的信息内容存放库

随着“数字高速公路”的出现,通过网络—特别是通过诸如Internet 之类的公用网络分发信息内容的问题引起了人们大量的讨论,通过公用 网络得到信息内容有下面几种方式:

将信息内容“邮寄”给用户,作为对用户请求或预订(发 送一个标记,表示已提交了购买某件商品的电子资金或信用) 的响应;

允许从某个组织自己的信息内容存放库中下载信息内 容,该存放库含有(举例来说)大量的产品(如软件程序)和/ 或大量的信息源,它们通常被组织成一个或多个数据库;以及

支持公共的存放库,其他方可以将他们的产品存入该存

放库,以便再分发给消费者(所述的再分发过程通常是:收到

  请求后,制作一份电子拷贝,然后将该拷贝再分发给消费者)。

VDE节点的一种可能实现中使用了一个或多个“存放库”。一个 存放库(举例来说)是VDE参与者可以从中获取VDE信息内容容器 的地点。在这种情况下,VDE用户可以使用一个网络访问一个“服务 器”系统,该服务器允许一个或多个VDE用户访问一个含有VDE信 息内容容器的对象存放库。

某些VDE参与者可以创建或提供信息内容和/或VDE信息内容容 器对象,然后将信息内容和/或信息内容对象保存在一个存放库中,以 便其他参与者可以从已知的和/或(为了检索的目的)经过有效组织的 位置访问上述信息内容。例如,一个VDE存放库(VDE存放库的部 分、多个VDE存放库、以及/或者向这种存放库提供信息内容的提供者) 可以通过向一系列网络用户发送电子邮件,向外界做广告某些类型的受 VDE保护信息内容已经可以得到。如果网络用户的电子设备中含有安 全VDE子系统,他们可以决定直接访问上述存放库,或者通过一个或 多个智能代理并使用(举例来说)一个应用程序对可从存放库得到的受 VDE管理的信息内容进行浏览(和/或电子地搜索),下载所需的VDE 信息内容容器,然后使用该容器。如果该存放库成功地吸引了对其信息 内容感兴趣的用户,VDE信息内容提供者可以认定该存放库是一个 理想位置,可以使他们的信息内容由用户非常方便地访问得到。如果某 个存放库-如CompuServe-以非加密(明文)的形式存放了信息内 容,它可以根据“需要”对“输出”的信息内容进行加密,方法是将该 信息内容与所需的控制信息一起放入VDE信息内容容器中,并可以使 用VDE安全通信技术将信息内容传送至VDE参与者。

VDE存放库还可以提供其他VDE服务。例如,存放库可以决定提 供财务服务,其形式可以是从该存放库提供信用,该信用可以用来支付 使用从该存放库中获取的VDE对象所需的费用。作为另一种选择或补 充,VDE存放库可以代表VDE制作者或其他参与者(如分发者、再 分发者、客户管理员等)为VDE用户提交的使用信息提供审核信息票 据交换所服务。这种服务可以包括分析上述使用信息、创建报告、收集 付款等。

“全业务”VDE存放库可能对提供者和受VDE管理信息内容的 用户来说都有吸引力。受VDE管理的信息内容的提供者可能希望将他 们的信息内容放到一个被用户熟知的地方,这个地方可以提供信用,并 且/或者可以为他们提供审核服务。在这种情况下,提供者可以将精力 集中在创建信息内容上,而不是集中在管理某些管理进程,例如以“零 售”的方式供应信息内容,从许多VDE用户那里收集审核信息,发送 帐单和接受付款,等等。当VDE用户试图查找他们感兴趣的信息内容 时,他们会发现单一地点(或存放库的集成方案)的方便性具有相当的 吸引力。另外,全业务VDE存放库可以作为一个单一地点来存放使用 信息报告,这些报告是由于用户使用了从VDE存放库接收的、受VDE 管理的信息内容而产生的,以及/或者由于用户收到了更新的软件(如 VDE感知型应用、加载模块、部件组、非VDE感知型应用、等等)。 可以结合各种VDE信息内容传递过程(例如通过广播和/或CD-ROM 之类的物理介质进行传递)一起使用VDE存放库服务,这样可以形成 集成的信息内容资源系统供用户根据需要进行浏览、搜索、和/或筛选, 从而满足VDE用户的信息内容需求。

可以为非盈利的或盈利性的目的创建和维护一个公用的存放库系 统。提供这种服务的组织可以采用某种形式收取服务费,例如,以一次 交易为单位并且/或者按照用户为信息内容付帐和/或花费的比例收费。 存放库服务可以向信息内容制作者、发布者、分发者、和/或增值提供 者提供VDE创作工具,这样他们就可以应用适当的规则和控制规定部 分或全部的指导方针,这些指导方针用以对使用其信息内容的活动进行 管理,因此,他们就可以把上述信息内容放入VDE信息内容容器对 象中。

可以在一个地点维护存放库,或者可以将存放库分布在各种电子设 备之中,例如分布在各种服务器(如视频服务器)之中,上述大量的电 子设备可以位于不同的地点,但仍然构成了单一的资源。VDE存放库 方案可以使用VDE安全通信和VDE节点安全子系统(“受保护的处 理环境”)。包含用户所需的给定信息单位或集合的信息内容可以遍布 在各种实际地理位置。例如,代表公司股票收盘价和股票活动(出价、 低价、高价等)的信息内容可以位于纽约的环球网(World Wide Web)服务器中,而代表公司分析的信息内容(例如对公司历史、人 员、产品、市场和/或竞争者的说明)可以位于达拉斯的服务器。可以 使用VDE机制存放上述信息内容以便可以对其安全地使用,并且对使 用活动进行审核。如果上述一个或多个站点有足够的、其他形式的安全 保障措施(如物理安全性、口令、经过保护的操作系统、数据加密、或 特定信息内容类型足够的其他技术),那么就可以采用明文的方式维护 上述信息内容。对于后者,在信息内容流出存放库的时候至少要部分对 之加密并且将之放在VDE容器中,以便支持安全的通信、后续的VDE 使用控制、以及使用结果管理。

用户可以要求有关公司的信息,包括股票和其他信息。该请求可以 (举例来说)首先通过位于波士顿的目录或更为复杂的数据库配置被转 送出去。这种方案可以带有指向纽约和达拉斯存放库的指针,并且从这 两个存放库检索信息内容。可以将信息力客装在两个容器(如来自达拉 斯的VDE信息内容容器对象和来自纽约的VDE信息内容容器对象) 中直接转送给用户。当上述两个容器被用户的电子设备处理时,它们可 以在单个VDE容器(该容器可以带有两个信息内容对象,分别含有来 自达拉斯和纽约的信息内容部分)中形成两个VDE对象。作为另一种 方案,可以在波士顿将上述的对象集成以形成单个VDE容器,这样, 可以在单个容器中将信息交付给用户,从而简化用户站点的注册和控 制。来自两个地点的信息信息内容可以以单独信息对象的形式保存,也 可以合并成单一的、集成的信息对象(可以由一个资源在一个信息表单 中填写某些字段和/或类别,而由另一个资源提供另一些字段和/或类 别)。分布式数据库可以管理上述分布的存放库资源环境,并使用VDE 以及VDE控制机制中的VDE加强型电子化功能使信息的存贮、通信、 审核、和/或使用得到安全化。于是VDE既可用来提供一致的信息内容 容器,又可用来提供信息内容控制服务。

图78示意了一个可能的存放库方案示例3300。在该例中,将存放 库3302连接到网络3304上,网络3304允许作者3306A、3306B、 3306C、3306D、出版商3308、以及一个或多个最终用户3310与存放 库3302通信,并允许他们彼此通信。另一个网络3312则允许出版商 3308、作者3306E和3306F、编辑3314、以及图书馆管理员3316互 相间以及与本地存放库3318通信。出版商3308还直接连到作者 3306E。在本例中,作者3306和出版商3308连到存放库3302,以便 将他们的信息内容放在一个适当环境中,在该环境中,最终用户3310 可以从公共的地点访问种类繁多的信息内容。

在本例中,存放库有两个主要的功能区:信息内容系统3302A和 票据交换所系统3302B。信息内容系统3302A含有用户/作者注册系统 3320、信息内容目录3322、搜索机制3324、信息内容存贮设备3326、 信息内容引用3328、以及发货系统3330,该发货系统3330含有控制 包装器3322、容器包装器3334、以及交易系统3336。票据交换所系 统3302B含有用户/作者注册系统3338、模板库3340、控制结构库 3342、付款系统3344、包含财务系统3348和信息内容系统3350的授 权系统3346、包含票据系统3354、信用卡系统3356、电子资金转移 (EFT)系统3358的计帐系统3352、包含接收系统3362、响应系统 3364、交易系统3366、以及分析系统3368的审核系统3360。

在本例中,作者3306A创建电子形式的信息内容,他希望将这些 信息内容大量地提供给许多最终用户3310使用,并希望通过使用VDE 来保障其权利。作者3306A向存放库3302传送一条消息,表明他希望 在该存放库注册,以便分发其信息内容。作为对该消息的响应,信息内 容系统3302A的用户/作者注册系统3320以及票据交换所系统3302B 的用户/作者注册系统3338通过网络3304向作者3306A传送注册信息 的要求。可以以在线交互方式发出上述请求,也可以以批方式将该请求 传送给作者3306A。之后作者3306A准备好所需的信息,并以批方式 传送给存放库3302;或者,上述信息的某些部分(如基本标识信息) 以在线方式处理,而另一些信息则以批方式交换。

有关信息内容系统3302A的注册信息可能(举例来说)包括:

一个请求,作者3306A提供适当信息,说明自己打算利 用该存放库存放和访问的信息内容的类型和/或类别;

存放库需要的摘要和/或其他标识信息表格,这使作者 3306A再获得一次机会说明他是否在通常提交信息内容的同时 还提供其他信息(例如宣传材料、有关被提交信息内容格式的 详情、被提交信息内容的潜在用户若想成功使用该信息内容必 须满足的设备要求、等等);

若干请求,它们要求作者3306A提供适当信息说明信息 内容需要存放在何处(存于存放库、存于作者3306A所在的位 置、存于任何地方、或存放在某些位置的组合);

对于提交的信息内容需要对之关联哪些一般搜索属性 (例如:是否要自动地为摘要建索引供存放库的用户搜索;信 息内容题目、摘要、宣传材料、相关数据、执行者和/或作者的 名字、或其他涉及信息内容提交的信息应该以何种形式出现在 信息内容类型列表中,或者在响应搜索请求的时候如何对之进 行使用,等等)

应该如何发送存贮在和/或经过存放库的信息内容(包括 任意的容器规则、加密要求、涉及信息内容传送的交易要求、 其他控制规则、等等)

由票据交换所的用户/作者注册系统要求作者3306A提供的信息可 以(举例来说)包括:

特定的VDE模板;作者3306A可以或必须使用这些 VDE模板来正确地格式化控制信息,以便(举例来说)票据交 换所系统3302B的审核系统3360得到适当的授权因而可以接收 和/或处理与作者3306A提交的信息内容有关的使用信息;

可以从票据交换所3302B那里得到的某些VDE控制信 息;与被提交的信息内容相关的作者3306A在其创建和/或使用 的某些或所有VDE部件组种可以或必须使用(和/或通过引用包 括)所述VDE控制信息;

采用何种方式支付因为使用存放库票据交换所系统 3302B提供、传递、收集的信息内容而应交纳的任何费用;

授权的形式和/或规定,所述授权用来准许使用被提交的 信息内容和/或涉及该信息内容的财务交易;

可接受的计帐形式,它针对的是信息内容和/或与信息内 容相关的信息(例如他人可以使用的分析报告)的使用;

如何接收VDE生成的审核信息;

如何管理响应来自用户的请求;

收到审核信息后,如何格式化和授权相应的交易;

如何对使用信息进行分析并且执行何种形式的分析;

在何种情况下(如果存在这种情况的话)需要管理从

  VDE控制的信息内容的使用信息中得到的使用信息和/或分析

  结果(包括:可以或必须将上述信息和/或结果交付给谁、交付

  的形式、与使用上述信息相关的任意控制信息,等等)。

存放库3302从作者3306A那里收到准备齐全的注册信息后,使用 该信息为作者3306A创建一个帐户轮廓(account profile)。另外,与 创作进程相关的软件可以被传送给作者3306A。该软件可以(举例来 说)允许作者3306A将信息内容与适当的控制信息一起放入VDE信息 内容容器,该过程的特点是:涉及上述容器创建的许多决策都是自动作 出的,以反映出可将存放库3302用作信息内容系统和/或票据交换所系 统(这些决策的例子有:信息内容的位置、需要联系哪一方才能更新信 息内容和/或更新涉及该信息内容的控制、审核信息可以和/或必须送达 的某一方或多方以及该通信的路径、在使用活动中收集的审核信息的特 性、可接受的信息内容使用付款形式、所要求的审核传送频度、计帐频 度、摘要的形式和/或与信息内容相关的其他标识信息的形式、至少一 部分信息内容使用控制信息的特征、等等)。

作者3306A使用VDE创作应用来规定各种控制信息以及他希望放 入VDE信息内容容器中的信息内容,并按照存放库3302的任何要求 制作上述容器。所述VDE创作应用可以是(举例来说)一个由存放库 3302提供的应用,它有助于确保存放库的信息内容控制要求得到遵守; 该应用可以:包含一种或多种类型的部件组或其他VDE控制结构和/ 或所需的参数数据、收自另一方的应用、以及/或者完全或部分地由作 者3306A创建的应用。作者3306A于是利用网络3304将上述容器以及 从作者3306A帐户轮廓派生出的信息发送给存放库3302,所述的派生 信息与上述信息内容有关。存放库3302收到了提交来的信息内容,然 后按照本例中的任何帐户轮廓要求、差异和/或所需选项作出判断,即: 信息内容的创建是否没有超出存放库规定的任何信息内容和/或控制信 息要求范围,以及是否因此应该将上述信息内容放到信息内容存贮设备 中,还是使用位置指针引用该信息内容,等等。除了将该被提交信息内 容放入信息内容存贮设备或者引用该信息内容的位置以外,存放库3302 还在下列位置记录被提交的信息内容的有关特征,这些位置包括:搜索 机制3324、信息内容引用3328、发货系统3330、以及/或者票据交换 所系统3302B的相关系统,这些系统涉及模板和控制结构、授权、计 帐和/或付帐、支付、以及/或者使用信息的审核。

在创作进程中,作者3306A可以使用VDE模板。该模板可以用作 VDE创作应用的一个方面。例如,该模板可以用于上述创建容器的过 程中。当存放库3302收到提交来的信息内容时也可以使用模板。可以 由作者3306A加入对模板的引用,作为为被提交的信息内容创建容器 的一个方面(从这个意义上说,交付给存放库的容器在某些方面可能是 “不完整的”,直到存放库通过使用指定的模板“补齐”该容器为止)。 存放库3302可以要求使用上述引用(例如:将VDE控制信息安排就位 以实现存放库的商业或安全性模型的一个方面一例如建立一个或多个 映射表,使之对应于与其他VDE控制结构交互所需的信息内容元素, 以支持特定计量、计帐、预算、和/或存放库中与其他使用活动和/或分 发相关的控制)。

例如,如果作者3306A提交的信息内容含有一份期刊,则在该作 者于存放库3302注册的时候,存放库3302将会传递给他一个模板,该 模板可以用来作为创作应用的一个方面,该创作应用由上述作者在为该 期刊创建VDE信息内容容器的时候操作。作为另一种选择或补充,对 应于期刊的模板可以存放在存放库3302中,并且该模板可以由存放库 用来完整地或部分地定义与上述容器相关的控制结构。例如,用来协助 为期刊制订控制结构的VDE模板可以说明(不限于以下几点):

使用控制应该含有一个计量方法,该方法记录刊物中用 户打开的每一篇文章;

对打开该期刊应该实行某种统一收费率的收费标准,而 不管打开的文章有多少;

对于用户阅读的每个广告都应做记录。

如果采用熟知的和/或可识别的格式维护信息内容,那么可以在容 器的初始创建过程中使用一个模板,而无须作者3306A进行干预以标 明需要支持上述记录和计帐操作的任何映射表。如果没有向作者3306A 提供上述VDE模板,则作者3306A可以决定说明:存放库必须重新组 织(或增补被提交容器),以在其中加入在特定模板或模板类中规定的 VDE控制信息。如果存放库了解和/或可以识别上述信息内容的格式, 那么该存放库可以自动地重组(或“补齐”)该容器。

存放库与作者3306A之间存在着潜在的正在进行的财务关系,其 中一个因素涉及到最终用户对被提交的信息内容的使用。例如,作者 3306A可以通过与存放库协商达成以下协定,即:存放库有权从来源于 最终用户3310的总收入中留下20%作为维持存放库服务(如使信息内 容对最终用户3310可用、提供电子信用、执行计帐操作、收费等)的 交换。可以采用灵活的和可配置的方式将财务关系记录在控制结构中。 例如,上述的财务关系可以在VDE容器和/或作者3306A设计的设备控 制结构中创建,以反映作者3306A的财务要求以及从收入中分给存放 库20%的需要。其中所有涉及被提交信息内容使用的计帐活动可以由 存放库处理,同时可以用代表互惠方法(这些互惠方法涉及作者3306A 所提交信息内容需要使用的各种部件组)的控制结构来计算收入的20%。 作为另一种选择,存放库可以独立、安全地增加和/或修改源自作者 3306A的控制结构,以便反映价格上的提高。在某些情况下,作者3306A 不一定直接涉及存放库对使用活动制定的实际收费价格(或对该价格有 任何了解),而只关心收入额以及其自身目的所要求的使用分析信息的 特征,他在VDE控制信息中规定了上述信息,而VDE控制信息可以控 制对受VDE控制的信息内容的使用以及使用该信息内容的后果。

作者和存放库之间关系的另一方面可能涉及交易记录要求的特 征,所述交易记录要求涉及传送受VDE控制的信息内容以及收到受 VDE控制的信息内容的使用审核信息。例如作者3306A可以要求存放 库对每个从该存放库收到信息内容拷贝的用户做记录。作者3306A还 可以要求收集某些信息,以反映向上述用户交付信息内容时的某些环境 特征(如时间、日期、等等)。另外,存放库可以决定执行这些事务以 供内部使用(例如:判断使用的模式以便优化系统、检测欺骗行为、等 等)。

除了要求记录有关信息以描述上述受VDE控制信息内容的交付过 程,作者3306A还可以要求存放库执行某些与VDE容器有关的进程。 例如,作者3306A可以希望对交付给不同类用户的摘要和/或其他描述 性信息进行区分。另外,作者3306A可以希望根据某个特定用户表现 出来的使用特征(例如:该用户是否曾经从作者3306A那里接收过信 息内容、该用户是否是作者3306A的作品的固定订户、以及/或者其他 可能与作者3306A和/或最终用户相关的模式,这些模式可以用来帮助 判断交付给某一VDE信息内容最终用户的宣传材料应该占有多大比 例)将宣传材料与被提交的信息内容放在同一容器中传递出去。在另一 个例子中,作者3306A可以要求在将信息内容传递给最终用户之前对 该信息内容进行VDE指纹处理。

除了发送给最终用户的信息内容所具有的形式和/或特征,作者还 可以要求存放库执行某些与加密相关的过程,作为交付信息内容的一个 步骤。例如,作者3306A可以要求存放库使用一个或多个不同的加密 密钥对被发送的信息内容的每个拷贝都进行加密,以便对信息内容提供 更高程度的保护(例如,在某一加密密钥被“破解”或不小心泄露的情 况下,“损坏”范围可以被限制到被交付的某一特定信息内容特定拷贝 的特定部分)。在另一个例子中,加密功能可以需要使用完全不同的加 密算法和/或技术,以满足视情况而定的要求(例如为了遵守出口限 制)。在另一个例子中,涉及加密的过程可以根据信息内容交付到的 VDE站点所具有的可信度和/或防破坏能力对加密技术和/或算法进行 改动。

除了在信息内容从VDE存放库交付到最终用户的时候收集的交易 信息以外,还可以要求存放库记录适当的交易信息,这些交易信息涉及 使用信息的接收、发往和/或来自最终用户3310的请求和/或响应。例 如,作者3306A可以要求存放库以日志形式记录由最终用户3310建立 的某些或所有连接,这些连接涉及到对特定使用信息的传送或接收,所 述特定使用信息涉及到使用作者3306A的信息内容(例如,这些信息 可以是最终用户提交的审核信息报告、最终用户对更多权限信息的请 求、等等)。

某些通过存放库提供给最终用户3310的、由VDE管理的信息内容 可以存放在信息内容存贮设备中。另外一些信息可以存放在任何地方, 并且可以通过信息内容的引用对之进行引用。在使用信息内容引用的情 况下,存放库可以采用下面的方式来管理用户的交互作用,即:对于存 放库中的所有信息内容,不论它们是存放在信息内容存贮设备中还是存 放在任意地方(例如另外一个站点),将它们提供给最终用户3310进 行选择的方式是统一的,例如,采用一致的或相同的用户接口。如果最 终用户要求交付的信息内容没有存放在信息内容存贮设备中,那么 VDE存放库可以利用存放在信息内容引用中的信息(例如信息内容可 能位于的网络地址、URL、文件系统指针、等等)找到存放该信息内 容的实际存放地点。找到该信息内容后,该信息内容可以通过网络传送 给存放库,或直接从它所存放的地方传递给发出要求的最终用户。在某 些情况下(如:当需要对容器进行修改时、需要对加密进行改动时、在 发布之前需要进行某些财务交易时、等等),可以要求存放库进行进一 步的处理,以便准备好上述受VDE管理的信息内容和/或VDE信息内 容容器供传递给最终用户之用。

为了对VDE存放库最终用户3310可使用的信息内容提供可管理的 用户接口,同时为了提供管理信息用来确定发送给最终用户3310的 VDE信息内容容器中所包装的控制信息,本例中的存放库包含了一个 信息内容目录3322。该目录用来记录与VDE信息内容有关的信息, 该VDE信息内容可以存放在信息内容存贮设备中,以及/或者可以在信 息内容引用所反映的存放库中找到。信息内容目录3322可能包含信息 内容的标题、摘要、以及其他标识信息。另外,该目录还可以说明电子 协定和/或VDE协定模板应用(提供了备用的、可选的控制结构,并且 /或者提供一个或多个机会以便提供相关参数数据)的格式。对于信息 内容的给定部分,用户可以通过存放库得到上述信息,以便决定(举例 来说)下面的选项和/或要求:在上述信息内容使用期间应该记录何种 信息、对某些信息内容使用活动应该如何收费、根据某些使用信息是否 被记录下来和/或这些信息是否对存放库和/或信息内容提供者可用的不 同情况,如何收取不同的费用、与上述信息内容相关的再分发权利、审 核的报告发送频度、可以用于支付上述信息内容使用费的信用和/或货 币形式、对于一定批量使用的相关折扣、如果用户已具有某些权利准许 他使用同一和/或不同信息内容提供者、销售途径提供的其他信息内 容,那么如何确定折扣、等等。另外,VDE存放库信息内容目录3322 可以指定某些或所有所需的部件组以便使用信息内容,这样最终用户的 系统和该存放库可以交换一些消息,以确保所有必需的VDE部件组或 其他VDE控制信息已被指明,并且如果需要并经过授权的话,这些部 件组或控制信息与上述信息内容一起交付给最终用户(而不是(举例来 说)在以后注册和/或试图使用的过程中发现它们不在时才请求提供)。

为了使用本例中的VDE存放库,最终用户必须向存放库注册。类 似上述作者例子中所采用的方式,VDE最终用户可以通过网络从其 VDE设备向存放库发送一条消息,表明他希望使用存放库提供的服务 (例如:访问由存放库保存和/或引用的信息内容、使用存放库提供的 信用、等等)。作为对该消息的响应,信息内容系统3302A的用户/作 者注册系统和存放库的票据交换所系统3302B(例如:通过联机和/或 批方式交互作用)向最终用户发送请求,要求最终用户提供某些信息。 信息内容系统3302A的用户/作者注册系统所要求的信息可以包括:用 户希望访问的信息内容类型、用户电子设备600的特征、等等。票据交 换所系统3302B的用户/作者注册系统所要求的信息可以包括该用户是 否希望在票据交换所系统3302B创建一个信用帐户、用户为了计帐的 目的可以希望使用何种信用、在使用从该存放库得到的信息内容的过程 中,最终用户可以使用其他哪些票据交换所、用户根据自身喜好为公布 和处理使用分析信息的目的已经制定的任何一般规则、等等。一旦用户 准备好上述注册信息并发送给存放库,存放库将为该用户创建一个帐户 轮廓。在本例中,上述请求和响应过程由发送和接收两方的安全VDE 子系统之间的安全VDE通信进行控制。

为了使用存放库,最终用户可以运行应用软件。例如,最终用户既 可以使用一个标准的应用软件(如诸如Mosaic之类的环球网(World Wide Web)浏览器),也可以使用由存放库在完成注册进程以后提供的 应用软件。如果最终用户选择使用由存放库提供的应用软件,他们可以 避免在使用标准软件包的过程中可能碰到的某些交互作用复杂性。尽管 标准化的软件包使用起来通常比较简单,但加入了VDE感知型功能的 定制软件包提供给用户的接口可能更易使用。另外,可以将存放库的某 些特征加入该接口中以便简化对该服务的使用(例如,类似于America Online提供的应用程序)。

最终用户可以利用网络连接到存放库。在本例中,用户连接到存放 库之后,将会发生鉴别进程。该进程既可以由用户(例如通过使用登录 和口令协议)控制,也可以由最终用户的电子设备安全子系统建立,该 安全子系统在VDE鉴别进程中与存放库电子设备交互作用。在上述两 种情况下,存放库和用户都必须一开始就确保他们连到了正确的另一 方。在本例中,如果经过安全保护的信息将要在两方间进行传递,那么 必须进行VDE安全鉴别,同时必须建立安全会话过程。另一方面,如 果需要交换的信息已经经过了安全保护,以及/或者无需进行鉴别就可 得到上述信息(例如某些目录信息、已经经过加密且不需特殊处理的容 器),那么可以使用“较弱”的登录/口令形式。

一旦最终用户已经连接到VDE存放库,并且已经经过了鉴别,那 么该用户可以开始操作和控制其用户接口软件,以便浏览存放库信息内 容目录3322(例如:出版物、软件、游戏、电影等的清单),使用搜 索机制协助定位他所感兴趣的信息内容、调度信息内容以便将之交付出 去、查询有关信息、等等,被查询的有关信息包括:帐户状态、是否可 以得到使用分析信息、计帐信息、注册和帐户轮廓信息等。如果用户连 接到该VDE存放库是为了获取信息内容,则可以将该信息内容的使用 要求交付给该用户。如果用户连接到该VDE存放库是为了将使用信息 交付给该存放库,那么可以将有关该传递过程的信息交付给该用户。下 面将更加详细地说明上述的某些进程。

在本例中,当最终用户(例如:通过在可用选项菜单中进行选择) 请求VDE存放库提供信息内容时,信息内容系统3302A可以在信息内 容引用中和/或信息内容存贮设备中找到该信息内容。然后信息内容系 统3302A可以参考存放在信息内容目录3322、最终用户帐户轮廓、和 /或作者帐户轮廓中的信息,以确定容器格式和/或控制信息的精确特 征,这些特征可以是为满足最终用户请求而创建VDE信息内容容器所 需要的。随后,发货系统访问票据交换所系统3302B,收集需要加入 到容器中的任何其他控制结构,并确定作者和/或最终用户帐户轮廓的 任何下列有关特征:这些特征将对交付信息内容到最终用户的交易过程 产生影响,或者对是否处理该交易产生影响。如果该交易得到了授权, 并且容器的所有必需元素都已可用,那么控制包装器(control packager)将产生一个适合于用户所发请求的控制信息包,然后控制 包装器利用该控制信息包以及信息内容产生一个适当的容器(还放入可 以与该容器一起交付的任何许可,并装入任何加密要求、等等)。如果 存放库或作者帐户轮廓要求的话,发货系统的交易系统将记录涉及该信 息内容交付的具体事项。当上述容器和涉及交付的任何具体事项都已经 准备好了以后,该容器将通过网络传送给最终用户。

最终用户可以使用安全存放在最终用户VDE设备安全子系统中的 信用和/或货币来支付对收自存放库的VDE信息内容的使用费,以及/ 或者可以在存放库远程地维护一个安全的信用和/或货币帐户,包括使 用一个“虚拟”存放库,最终用户可以在该“虚拟”存放库为收到上述 信息内容进行付款。后一种方法将为向存放库和/或信息内容提供者付 款提供更高程度的安全保障,尤其是在最终用户只带有基于HPE的安 全子系统的情况下。如果最终用户的电子信用和/或货币帐户由本例中 的存放库来维护,那么将根据最终用户从存放库收到了信息内容而从所 述帐户中收取费用。根据最终用户对上述已收到信息内容的使用情况以 及传送给存放库票据交换所系统3302B的信息内容使用信息,可以从 上述的远程最终用户帐户中进一步收取费用。

在本例中,如果最终用户没有与财务提供者(该财务提供者对信息 内容提供者进行了授权,最终用户可以通过使用上述存放库来获取信息 内容提供者提供的信息内容,并使用其货币和/或信用来支付与所述提 供者提供的信息内容有关的任何使用费用)建立关系,以及/或者如果 最终用户希望使用上述信用的新来源,那么该最终用户可以请求存放库 票据交换所系统3302B提供信用。如果最终用户的信用请求得到批准, 存放库可以采用与存放库管理的预算方法相关的信用额(例如:该信用 额记录在一个或多个UDE中)形式对信用进行增加。最终用户定期地 将涉及上述预算方法的使用信息传送给存放库的审核系统。在上述传送 之后(但可能在该连接终止之前),应付帐款被记录下来供计帐系统处 理,同时,按照存放库的业务惯例,最终用户可以使用的信用数量可以 在同一传送过程或后续传送过程中得到补充。在本例中,存放库的票据 交换所支持:带有一个票据系统的计帐系统,该系统通过邮件解决未付 帐款;一个信用卡系统,该系统通过从一个或多个信用卡收取费用来解 决未付帐款;以及一个电子资金转移系统,该系统通过向银行帐户直接 记入借方来解决上述未付帐款。存放库可以自动地让付款系统利用类似 方式为欠付作者的款项确定付款。下面将会讲到涉及审核过程的补充细 节。

如上所述,本例中的最终用户3310将定期地与VDE存放库联系, 向它传送信息内容使用信息(例如,这些信息涉及预算的使用、对其他 使用活动进行的记录、等等),补充他们的预算、修改他们的帐户轮廓、 访问使用分析信息、并执行其他管理活动和信息交换活动。在某些情况 下,最终用户可以希望与存放库联系以获取其他控制结构。例如,如果 最终用户从存放库请求并获取了VDE信息内容容器,该容器通常与适 合于该容器的控制结构、作者的要求和帐户轮廓、最终用户的帐户轮 廓、信息内容目录3322、和/或交付情况(如:特定作者进行的首次交 付、预订、市场宣传、是否带有某些广告材料、由用户的本地VDE实 例代表该用户正式提出的请求、等等)等一起发送给最终用户。即便如 此,在本例中,存放库可能试图交付所有的相关控制结构,在某些容器 可以包含的控制结构中允许带有某些特定选项,该最终用户没有预料到 将来要行使这些选项(并且也未自动选择其他规则并自动将之加入到上 述容器中),但是该最终用户仍然决定他们将来愿意行使。在这种情况 下,最终用户可能希望与存放库联系,并请求提供所有附加的控制信息 ((举例来说)包括控制结构),他们将利用这些信息在上述选项的控 制下使用信息内容。

例如,假设最终用户获得了带有总体控制结构的VDE信息内容容 器,该总体控制结构含有两个选项,一个选项记录对容器进行的某些类 访问的次数,并进而根据这些访问的次数规定使用费用;另一个选项允 许最终用户根据对所述容器信息内容的使用时间长度来规定对该特定 容器的使用费;同时,该最终用户开始并没有收到支持第二种使用类型 的控制结构,于是存放库可以在以后某个时间并且是在用户请求的时候 交付上述控制结构。在另一个例子中,作者可能已经改变了他们的控制 结构(例如用来反映贱价销售、新的折扣方式、修改了的业务策略、等 等),而用户可以或必须接收这些控制结构,以便在改变后的控制结构 控制下使用信息内容容器。例如,与特定VDE信息内容容器相关的一 个或多个控制结构可能需求经过一次“刷新”,以得到使用该结构的继 续授权,否则这些控制结构可能会过期。这种方式允许(如果愿意的话) VDE信息内容提供者定期地(使用本地VDE安全子系统)修改和/或 增添处于最终用户站点的VDE控制信息。

在本例中,票据交换所的接收系统3362安全地从最终用户3310接 收审核信息(该审核信息涉及对收自存放库的信息内容的使用)。如上 所述,该系统可以对审核信息进行处理,并将处理的某些或全部输出传 递给计帐系统和/或将该输出传送给适当的信息内容作者。上述传递审 核信息的过程使用了报告信息处理技术的VDE安全通路。审核信息也 可以被传递给分析系统,以便产生涉及最终用户信息内容使用的分析结 果,供最终用户、存放库、第三方市场调查人员、和/或一个或多个作 者使用。产生分析结果可以基于一次审核传送、一次审核传送的一部 分、由单个最终用户和/或多个最终用户3310发出的一组审核传送、或 者根据分析主题(例如,对给定信息内容元素或元素集合的使用模式、 对某类信息内容的使用活动、付帐历史、人数统计使用模式、等等)的 某些审核传送的组合。响应系统3364用来向最终用户发送信息,以便 (举例来说)补充预算、传递使用控制、更新许可信息、并传送最终用 户在与票据交换所交互过程中请求和/或要求提供的某些其他信息和/或 消息。在最终用户与票据交换所之间的相互连接或传送过程中,某些具 体事项(例如,时间、日期、以及/或者连接和/或传送的意图)可以被 审核系统的交易系统记录下来,以反映存放库和/或作者的要求。

某些审核信息可以被传送给作者。例如,作者3306A可以请求从 最终用户收集到的某些信息不需审核系统处理即送给作者3306A。在 这种情况下,审核系统可以记录传输操作的事实,但作者3306A可能 已经决定由其自身执行使用的分析过程,而不允许(或尽管也允许)存 放库访问、或处理和/或使用上述信息。本例中的存放库可以提供给作 者3306A某些使用信息,这些信息涉及存放库从一个或多个最终用户 3310收到的存放库预算方法,并且根据上述用户由于使用作者3306A 提供的信息内容的而应支付的有关费用产生。在这种情况下,作者 3306A能够将涉及信息内容的某些使用信息与涉及存放库信息内容预 算方法的使用信息进行比较,以分析出使用的模式(例如,根据使用费 分析使用情况、检测可能的欺骗行为、产生用户轮廓信息、等等)。由 票据交换所收集的、涉及作者3306A所提供的信息内容并应付给作者 3306A的任何使用费将由票据交换所的付款系统决定。该付款系统可以 包含某些(完整的或概要性的)使用信息,这些信息涉及由上述决定确 定的、应该向作者3306A支付的任何使用费。所述付款和信息报告过 程可以是一系列完全自动化的进程,这些进程发生在从最终用户VDE 安全子系统到票据交换所安全子系统、再到作者安全子系统之间的 VDE通路中。

在本例中,最终用户3310可以向存放库3302传送VDE许可和/ 或其他控制信息,这些许可和/或控制信息可以允许和/或禁止访问由审 核系统收集供分析系统使用的使用信息。这可以部分地有助于保障最终 用户的个人隐私权,因为它涉及了对上述信息的使用。某些容器可以要 求(该要求作为其控制结构的一部分)最终用户允许将使用信息用于分 析目的,而另一些容器则能够让最终用户选择:是允许将使用信息用于 分析,还是禁止将某些或全部使用信息用于分析。某些用户可以决定允 许将某些信息用于分析,而禁止对其他信息进行分析。在本例中的最终 用户3310(举例来说)可以决定限制可供分析的信息的粒度(例如, 最终用户可以允许分析在某段时间内观看的电影数目,但不允许分析有 关特定片名;最终用户可以允许为人数统计之用公布其邮政(ZIP)编 码,但不允许使用他们的名字或地址、等等)。如果最终用户3310同 意公布某些使用信息供分析之用,那么作者和/或存放库3302可以(举 例来说)决定少收取最终用户3310的使用费。

在本例中,存放库3302可以接收由一个以上的作者制作的信息内 容。例如作者B、作者C和作者D可以都创建了信息内容的部分,而 这些信息内容部分将放在一个容器中传递给最终用户3310。例如,作 者B可能创作了一份参考文献,作者C则为作者B的参考文献提供了 注释,而作者D可能为作者A的参考文献和作者C的注释制作了一套 示意图。作者B可以将作者C和作者D的信息内容收集在一起并加入 其他信息内容(如上述的参考文献),然后将这些信息内容放到单个容 器中,该容器随后将被传送给存放库3302。作为一种选择,每个作者 都可以将其著作独立地传送给存放库3302,同时还传送一个标志,表 明在将某个容器发送给最终用户之前,必须使用模板将他们分别的著作 合并到一起。作为另一种选择,可以将反映了总体信息内容结构的容器 传送给存放库3302,同时,可以在信息内容引用中引用某些或所有信 息内容,而不是将这些信息内容交付给存放库3302以保存在信息内容 存贮设备中。

当最终用户使用容器信息内容时,其信息内容使用信息可以(举例 来说)按照某些控制结构被划分成片段,这些控制结构至少部分地基于 创建上述片段的作者来组织使用信息。作为另一种选择,作者和/或存 放库可以协商一种或多种其他技术,以便遵照VDE控制信息安全地划 分和/或共享使用信息。另外,与容器相关联的控制结构可以实现某些 模型,这些模型可以根据若干依据来区分涉及信息内容不同部分的任何 使用费,所述的依据包括:对特定信息内容部分的使用、对容器的总体 使用、特定使用模式、或作者协商(或他同意的)的其他机制。使用信 息、分析结果、付款过程、以及票据交换所其他进程的报告可以采用适 当方式产生,该方式要反映出由存放库3302参与者各方(作者、最终 用户3310和/或存放库3302)针对上述进程所达成的协定。上述参与 者通过对VDE控制信息进行协商可达成上述协定。

在本例中,一种类型的作者是出版商3308。本例中的出版商3308 通过一个“内部”网络与基于VDE的本地存放库3302进行通信,并通 过前述的网络与公用存放库3302进行通信。出版商3308可以创建或提 供信息内容和/或VDE控制结构模板,这些模板被交付给本地存放库 3302供可以访问“内部”网的其他参与者使用。这些模板可以用来描 述容器结构,还可以用来描述:在出版商3308的组织中,谁可以采取 哪些适当措施来调整和确定在该组织中创建的、需要出版的信息内容, 以便将其交付给存放库3302(和/或由存放库3302引用)。例如,出 版商3308可以决定(或使用所述模板来控制)期刊需要有某种格式, 该格式可以涉及:期刊信息内容的结构以及可能包含的信息种类(如正 文、图形、多媒体展示、广告、等等)、其信息内容的相对位置和/或 出现顺序、某些片段的长度、等等。另外,出版商3308可以(举例来 说)(通过分发适当的许可)决定:刊物编辑是能够授予容器写许可的 唯一方,而组织中的图书管理员则是能够对信息内容建索引和/或摘要 的唯一方。另外,出版商3308还可以(举例来说)只允许一方或多方 最终完成一个容器,以便以可用形式交付给存放库3302(例如,为了 实现上述目标,出版商3308可以借助于维护对许可类型的控制,这些 许可类型中包括分发许可,存放库3302可以要求使用该分发许可来执 行后续的、涉及存放库最终用户3310的分发活动)。

在本例中,作者3306E直接连接到出版商3308,这样,出版商3308 可以向该作者提供适当模板,这些模板为作者3306E的信息内容确定容 器特征。例如,如果作者3306E创作了图书供出版商3308分发,那么 出版商3308可以规定VDE控制结构模板,该模板提供了多种备选控制 方法供作者3306E选择,同时,该模板还提供了用来安全分发作者 3306E的图书的VDE控制结构。作者3306E和出版商3308可以使用 VDE协商来确定由用户3306E使用的模板特征、特定控制结构、和/或 参数数据。于是作者3306E可以使用上述模板为其信息内容容器创建控 制结构。然后,出版商3308在VDE扩展协定下将上述作品交付给存放 库3302,所述扩展协定包括在作者3306E和出版商3308之间以及存放 库3302和出版商3308之间的达成的电子协定。

在本例中,出版商3308还在本地存放库3302中提供作者3306E 的作品。编辑可以(例如通过分发适当许可)授权作者F创建信息内容 的某些部分以供出版。在本例中,该编辑可以审阅和/或修改作者F的 作品,并且将该作品与作者3306E提供的信息内容(该信息内容可以在 本地存放库3302中得到)一起放入一个容器中。该编辑可以有,也可 以没有从出版商3308得到的许可,这些许可允许修改作者3306E的信 息内容(这些修改要依照出版商3308和作者3306E之间已经达成的任 何协定,还依照出版商3308的决定,即:如果对作者3306E的信息内 容的修改权由出版商3308以可再分发的形式持有的话,出版商3308将 决定把上述权利延伸到编辑)。编辑也可以将来自其他作者的信息内容 放入容器中,其途径是:(a)通过使用一个授权进程,该进程授权作者 直接写入容器;并且/或者(b)从本地存放库3302中检索出容器来以便往 里加入信息内容。本地存放库3302也可用来服务由出版商3308的组织 所使用的其他材料(例如,数据库、其他参考文献、内部文件、供审阅 的草稿、培训录象、等等)。在得到适当许可的前提下,可以将上述材 料放入由上述编辑创建的VDE容器信息内容集合中。

本例中的图书管理员负责创建和/或编辑倒排索引、关键字列表(例 如从有限词汇表中得到)、信息内容摘要、修订历史、等等。出版商 3308可以(举例来说)只授权给图书管理员使他可以创建上述类型的 信息内容。出版商3308还可以要求在把信息内容传送给存放库3302之 前就进行上述的创建和/或编辑过程。

示例—受VDE管理的信息内容和控制信息的演变和变换

VDE信息内容控制体系结构允许加工信息内容控制信息(例如控 制信息内容使用的控制信息)以便适合多方的VDE控制信息要求。制 订上述多方信息内容控制信息通常涉及从多方安全提供出来的控制信 息中安全地导出适当控制信息,而所述的多方在信息内容处理和控制模 型中起一定的作用(如信息内容制作者、提供者、用户、票据交换所、 等等)。为了把受到独立管理的VDE信息内容的多个部分合并到单个 VDE容器对象中(特别是当所述受到独立管理的VDE信息内容部分具 有不同的—例如冲突的—信息内容控制信息时),必须使用多方控制信 息。对受VDE管理的信息内容部分进行的上述安全合并过程将会不断 地请求使用VDE功能,以便安全地导出信息内容控制信息,这些信息 内容控制信息满足了各个受VDE管理的信息内容部分所产生的控制信 息要求(包括任何组合规则),并反映了上述大量信息内容控制信息集 合之间的可接受协定。

将受VDE管理的信息内容部分组合起来将得到受VDE管理的信 息内容复合体。组合受VDE管理的信息内容必须依照与所述信息内容 部分相关的信息内容控制信息进行,并且通过使用一个或多个VDE安 全子系统PPE 650处理。VDE有能力支持嵌入或组合受VDE管理的 信息内容部分,从而可以创建组合产品,该产品中含有各种VDE信息 内容部分。VDE的上述能力使VDE信息内容提供者可以优化其VDE 电子信息内容产品。对受VDE管理的信息内容部分进行组合可以产生 特殊的VDE信息内容容器,它“容纳”联合的信息内容和/或衍生的、 分离的、嵌套的VDE信息内容容器。

VDE支持创建特殊信息内容容器,用来容纳以前分开管理的VDE 信息内容的不同部分,这样就允许VDE信息内容提供者开发出某些特 定产品,这些产品的信息内容控制信息反映的价值取向与信息内容部分 的提供者所期望的目标是一致的;同时对于信息内容聚合者来说,他可 能正在制作某种信息内容的组合以期望作为一种产品在商业领域分 发,而上述控制信息也进而可以与所述信息内容聚合者的目标相一致。 例如,由某一信息内容提供者向某一商业渠道(例如一个网络存放库) “发放”的信息内容产品可以由不同信息内容提供者和/或最终用户并 入VDE信息内容容器中(只要被发售产品的信息内容控制信息允许上 述并入过程)这些不同信息内容提供者和/或最终用户可以(举例来说) 提供不同的控制信息以便控制对该信息内容的使用。如果经过适当地授 权,他们还可以将被发放信息内容的某些部分与从其他方收到的(和/ 或由他们自己制作的)信息内容组合在一起形成不同的组合,从而产生 不同的信息内容集合。

于是,VDE允许把受VDE管理的给定信息内容部分的拷贝安全 地组合到不同的信息内容联合中,而各信息内容联合反映了不同VDE 信息内容聚合者的产品策略。VDE信息内容聚合功能将导致产生更 广范围的具有竞争性的电子信息内容产品,这种产品提供不同的信息内 容总体集合,并可以对上述产品可能通用的信息内容施用不同信息内容 控制信息。重要的是,VDE安全地和灵活地支持编辑VDE信息内容 容器中的信息内容,从VDE信息内容容器中抽取信息内容、向VDE 信息内容容器中嵌入信息内容、以及加工VDE信息内容容器中的信息 内容组成。通过逐渐反映电子商业模型中“下一”参与者的要求,上述 功能允许VDE支持的产品模型不断地进化。其结果是,受VDE管理的 给定信息内容部分在通过处理和分支通路移动的过程中可以参与许多 不同的信息内容容器和信息内容控制信息商业模型。

可以采用某些商业途径使用并逐渐地操作VDE信息内容以及与 上述信息内容相关联的电子协定,这种方式反映了对非电子产品的传统 商业操作(尽管比起大多数传统模型来说,VDE支持更高程度的灵活 性和效率)。VDE只受VDE控制控制信息的限制,这些VDE控制信 息由信息内容制作者、其他提供者以及处理和控制参与者的其他通路使 用。虽然有此限制,VDE仍然支持自然、流畅的电子信息内容产品模 型流通和创建过程。VDE通过制作者、提供者和用户的网络提供VDE 产品和服务的上述流通,而上述的制作者等参与者则通过在虚拟分发环 境中进行信息内容合并、抽取和编辑而依次地、安全地对产品组成进行 加工和再加工。

VDE提供了安全组合信息内容的机制,这些信息内容可以在不同 时间由不同来源提供,和/或代表不同信息内容类型。这些不同类型、 来自不同时间和/或不同来源的信息内容可以用来形成VDE信息内容 容器中复杂的信息内容组合。例如,VDE信息内容容器可以含有大量 不同的信息内容容器对象,每个容器都含有不同的信息内容,对这些信 息内容的使用活动可以至少部分地由其所有者的VDE信息内容控制 信息集合控制。

通过使用安全VDE子系统可以将VDE信息内容容器对象“安全” 地嵌入到“父”VDE信息内容容器中。该嵌入进程可能涉及创建一个 嵌入对象;或者涉及在VDE信息内容容器中装入一个以前是独立的但 现在是嵌入的对象,该装入过程至少要通过正确地引用所述对象的位置 而引用所述对象。

父VDE信息内容容器中的嵌入对象有下列特性:

    (1)该嵌入对象可以是一个以前创建好的、已被嵌入到父VDE

信息内容容器中的VDE信息内容容器。为此,需要通过在VDE安

全子系统PPE 650中安全地处理一个或多个部件组,将上述被嵌入

容器从一个独立对象转化成一个嵌入对象。在该例中,嵌入对象可

以受到信息内容控制信息的控制,包括与父容器相关联的一个或多

个许可记录,而该对象可以(举例来说)除了信息内容标识信息之

外不带有其自身的信息内容控制信息;或者嵌入对象可以更广泛地

受到其自身信息内容控制信息(如许可记录)的控制。

    (2)该嵌入对象可以含有从另一个VDE信息内容容器中抽取

出的信息内容(以及可使用的信息内容控制信息),这些抽取出的

信息内容和控制信息将以被嵌入VDE信息内容容器对象的形式嵌

入到一个父VDE信息内容容器中。在该例中,所述抽取和嵌入可

以使用安全地运行于VDE安全子系统PPE 650中的一个或多个

VDE进程,这些进程可以从一个源VDE信息内容容器中取走(或

复制)所需的信息内容,将该信息内容放入一个新的或已有的容器

对象中,而该容器对象可能会或将会被嵌入到一个父VDE信息内

容容器中。

    (3)该嵌入对象可以含有首先创建好然后嵌入到一个VDE信

息内容容器对象中的信息内容。所述接受信息内容的容器可以已经

被嵌入到一个父VDE信息内容容器中,并可以已经包含其他信息

内容。放有上述信息内容的容器可以由一个VDE感知型应用指定, 该应用与信息内容以及VDE安全子系统进行交互作用,以便安全 地创建上述VDE容器并将上述信息内容放入其中。之后,再安全 地将该容器嵌入到目的地父容器中。作为另一种选择,也可以不用 VDE感知型应用指定信息内容,而是用VDE感知型应用操纵该信 息内容,以设法将它移动到VDE信息内容容器中。这种应用可以 是一个VDE感知型字处理器、桌上型和/或多媒体出版包、图形和/ 或展示包、等等。它也可以是一个操作系统功能(例如:VDE感 知型操作系统的部分或运行于操作系统之上的小应用—如与 Microsoft Windows兼容的对象封装引用),另外,将信息内容从 VDE对象外面移动到VDE对象里面可以(举例来说)基于“拖与 放”比喻,该比喻涉及使用一个诸如鼠标之类的指点设备将一个文 件“拖动”到VDE容器对象中。作为另一种方案,用户可以将信 息内容的一部分“剪切”下来,再将该信息内容部分“粘贴”到一 个VDE容器中,其过程是首先将剪切下来的信息内容部分放到“剪 贴板”中,然后选择目标信息内容对象,并将上述信息内容部分粘 贴到该对象中。该进程可以在VDE信息内容控制信息和VDE安全 子系统的控制下自动将信息内容放置到目标对象中的某个位置,例 如放在对象的尾部;或者对象的某一部分中,该部分对应于由该信 息内容携带或随信息内容一同传递的一个标识符,例如一个字段标 识符;或者,上述的嵌入进程可以弹出一个用户接口,该接口允许 用户浏览目标对象的信息内容和/或信息内容目录和/或其他目录、 索引等等。上述进程还可以允许用户作出某些决定,这些决定涉及 需要应用到上述嵌入信息内容的VDE信息内容控制信息(预算限 制的使用、汇报途径、使用注册要求、等等),并且/或者上述进程 涉及选择特定位置以嵌入上述信息内容。所有这些进程的执行都尽 可能地做到对引用透明。

(4)可以结合一个或多个用于对象嵌入和链接的操作系统实用 程序访问该嵌入对象,这些实用程序的例子包括符合Microsoft OLE标准的实用程序。在该例中,VDE容器可以与一个OLE“链 接”相关联。对受VDE保护的容器的访问(包括从该容器中读信 息内容,或向该容器中写信息内容)可以从一个OLE感知型引用 传递给一个VDE感知型引用,后者结合与被保护信息内容相关联

的控制信息对该信息内容进行访问。

VDE感知型应用还可以与PPE中的部件组进行交互作用,以允许 直接编辑VDE容器中的信息内容,不管该信息内容是在父VDE信息 内容容器中还是在被嵌入的VDE信息内容容器中。该过程可以包括使 用一个VDE感知型字处理器(举例来说)来直接编辑(添加、删除或 修改)VDE容器中的信息内容。VDE容器信息内容编辑底层的上述 安全VDE进程可以大部分或完全地对编辑者(用户)透明,并可以透 明地允许编辑者安全地浏览VDE信息内容容器分层结构中的某些或 所有信息内容并安全地修改嵌入到上述VDE信息内容容器分层结构 中的一个或多个VDE信息内容容器。

所有VDE嵌入的信息内容容器的嵌入进程通常都包括安全地为该 嵌入信息内容指定适当的信息内容控制信息。例如,对于VDE设备和/ 或VDE信息内容容器的VDE信息内容控制信息可以安全地、对嵌入 者(用户)透明地将同样的信息内容控制信息应用到被编辑的(如被修 改的或外加的)容器信息内容,也可以将将这些控制信息应用到所述容 器中已“就位”的信息内容的一个或多个部分((举例来说)包括所有 部分),并且/或者安全地应用通过在控制集合之间进行VDE控制信息 协商而产生的控制信息,并且/或者它可以应用以前应用到所述信息内 容的控制信息。对控制信息的应用不顾及被编辑的信息内容是在父容器 中还是在嵌入容器中。有些信息内客是利用抽取和嵌入信息内容,或通 过移动、或拷贝和嵌入VDE容器对象的过程被嵌入到VDE容器中的, 这些信息内容也可以使用上述的、安全应用的信息内容控制信息(这些 信息可以被自动地和/或透明地应用)的同样功能。通常在一个或多个 VDE安全子系统PPE 650中安全地执行信息内容控制信息的应用。该 进程可以使用VDE模板,使用户能够借助易用的GUI用户接口工具为 某些或所有嵌入信息内容规定VDE控制信息,该用户接口可含有菜单 驱动、用户可选的和/或可定义的选项,例如从可选的控制方法中作出 选择(例如在不同的计量形式之间作出选择),这些控制方法可以由不 同的图标代表,这些图标分别表示了(或象征了)不同的控制功能;同 时,在作出上述选择之后,将上述控制功能应用到受VDE保护信息内 容的增量部分,例如在对象目录显示中列出的某个嵌入对象。

使用VDE感知型应用从VDE信息内容容器中抽取信息内容、或 者编辑或创建VDE信息内容将会提供信息内容,这些信息内容可以被 放入一个新的VDE信息内容容器对象中,以便嵌入到所述的父VDE 容器中;或者可以将上述信息内容直接放入一个已有的信息内容容器 中。通过处理一个或多个VDE设备安全子系统中的VDE信息内容控 制信息可以对所有上述进程进行管理。

将VDE信息内容容器对象嵌入到父对象中可以由父对象许可记 录引用的控制信息进行控制。父对象许可记录确定了所述嵌入对象的位 置和/或信息内容。在该例中,对嵌入对象的已有信息内容控制信息需 要做的改动很小或根本不需改动。可以使用VDE子系统安全进程把被 重定位到某个VDE信息内容容器中的VDE安全管理的信息内容再重 新定位;在重定位/嵌入过程中,所述安全进程将继续(例如通过使用 安全防破坏屏障502)维护被重定位信息内容的加密或被保护状态。

可以由不同各方提供嵌入的信息内容(和/或信息内容对象),并 且可以通过VDE信息内容和信息内容控制信息集成进程将所述嵌入 信息内容集成进一个VDE容器中。而通过使用一个或多个安全VDE 子系统可以安全地管理上述集成进程。该集成进程可能(举例来说)涉 及一个或多个:

(1)安全地应用的指令,该指令控制对所述被提交的信息内容的嵌 入和/或使用,其中,至少部分地由信息内容提供者和/或所述VDE容 器的用户将所述指令安全地安放就位。例如,所述用户和/或提供者可 以与一个或多个用户接口交互作用,这些用户接口(例如采用VDE模 板的形式)提供了对信息内容嵌入和/或控制选项的选择机制。这些选 项可以包括一个或多个控制中的哪一个应该被应用到所述信息内容的 一个或多个部分,以及/或者是否应该将上述一个或多个控制应用到所 述信息内容的一个或多个部分,并且/或者这些选项还包括信息内容控 制参数数据(例如在所述信息内容可被使用之前的时间段、信息内容的 使用费、和/或价格折扣控制参数—如软件程序套件销售折扣)的条目。 一旦提供者和/或用户确定了所需的和/或可选的信息内容控制信息,这 些控制信息可以部分或全部地被自动应用到嵌入至VDE信息内容容 器中的某些或全部信息内容。

(2)安全的、由VDE管理的协商活动,这些活动中包括位于接受 方VDE设备的用户通过一个用户接口与被提交出来供嵌入之用的信息 内容所对应的VDE信息内容控制信息进行交互作用。例如,上述相应 控制信息可以提供某些信息内容信息,而信息内容接收者则可以(举例 来说)接受、拒绝、提供可选控制信息,从大量可选控制信息中进行选 择、和/或将某些条件应用到对特定信息内容控制信息的使用上(例如, 如果所述信息内容由特定的一个或多个用户使用并且/或者对特定信息 内容的使用量超过了某一程度,则接受特定的一个或多个控制)。

(3)一个安全的、自动化的、VDE电子协商进程,该协商进程涉 及接受方VDE信息内容容器和/或VDE设备的VDE信息内容控制信 息以及与被提交的信息内容相关联的信息内容控制信息(例如被提交 VDE对象许可记录中的控制信息、某些部件组、一个或多个UDE和/ 或MDE中的参数数据、等等)。

嵌入到VDE信息内容容器中的信息内容可以以下面的形式嵌入 进去:

(1)不形成一个新的容器对象,而直接地、安全地与某个VDE信 息内容容器(所述容器可以是一个父信息内容容器或嵌入信息内容容 器)中已有信息内容集成在一起的信息内容。在嵌入后,与所述信息内 容相关联的控制信息必须与任何嵌入前的、用来至少部分地对嵌入后所 需控制信息的创建进行控制的信息内容控制信息相一致。对应于上述被 直接集成、嵌入信息内容的信息内容控制信息可以被集成进所述VDE 容器控制信息(例如,该控制信息位于一个或多个含有信息内容控制信 息的许可记录之中)之中和/或包含所述VDE容器控制信息的一部分。 并且/或者

(2)被集成进所述容器内一个或多个对象之中的信息内容。这些对 象在所述VDE信息内容容器对象中嵌套。在本例中,所述信息内容的 控制信息可以或者被父VDE信息内容容器的信息内容控制信息携 带,或者(举例来说)部分地或全部地由一个或多个许可记录携带,这 些许可记录包含在一个或多个含有嵌套VDE对象的信息内容中,以及/ 或者与一个或多个含有嵌套VDE对象的信息内容专门相关。在父VDE 信息内容容器中含有对象的上述VDE信息内容嵌套层次可以有多 层,也就是说嵌入到一个VDE信息内容容器中的VDE信息内容容器 本身还可以包含一个或多个嵌入的VDE信息内容容器。

VDE信息内容容器可以带有嵌套的结构,该结构含有一个或多个 嵌套容器(对象),而这些容器本身又存放其他容器和/或一种或多种 类型的信息内容,如正文、图象、声音、和/或任意其他类型的电子信 息(对象信息内容可以由信息内容控制信息指定,而信息内容控制信息 则引用(举例来说)存贮介质中的字节偏移地址)。可以采用流的形式 (例如动态的积聚和/或流动)和/或静态的形式(即固定的形式,例如 预先规定好的完整文件)存放、传送、和/或使用上述信息内容。这些 信息内容可以通过从一个或多个VDE信息内容容器内的信息内容中 抽取信息内容的子集而被派生出来,然后直接由上述派生出来的信息内 容形成一个或多个最终VDE信息内容容器。由VDE(例如,通过使 用VDE感知型应用或具有抽取功能的操作系统)安全管理的信息内容 在从一个或多个VDE信息内容容器中的一个或多个位置抽取出来的 时候可以被做上标识,然后,通过在安全子系统PPE 650中运行某些进 程以执行各种VDE控制,上述信息内容被安全地嵌入到新的或已有的 VDE信息内容容器中。上述的抽取和嵌入(VDE“输出”)涉及安 全地保护(包括安全地执行)VDE输出进程。

一个有关VDE输出和嵌入的VDE活动涉及对VDE信息内容执行 一次或多次变换,使之从一种安全形式变换成一种或多种其他安全形 式。在执行上述变换时,可以把也可以不把经过变换的信息内容移动到 一个新的VDE信息内容容器中(例如,通过运行于PPE之中的部件 组执行这种变换。在没有执行对所述信息内容中至少一部分的使用进行 控制的其他VDE进程时,上述部件组不会以来受保护的形式暴露上述 变换进程的结果或其他输出)。上述变换进程的一个例子涉及执行数学 变换然后产生诸如数学结果之类的结果,同时丝毫不保留在其上执行了 上述变换过程的信息内容信息,或者保留所述信息的部分或全部。上述 变换的其他例子有:转换文件格式(例如从WordPerfect格式转换成 Word for Windows格式,或从SGML文件转换成Postscript文件), 改变图像格式(例如从QuickTime图像格式转换成MPEG图像格式), 执行人工智能进程(例如对正文进行分析,以产生概要报告),以及从 其他受VDE保护的信息内容中获得受VDE保护的信息内容的其他处 理。

图79示意了商业VDE用户的组织方案。本例中的用户采用多种方 式制作、分发、再分发和使用信息内容。该例示意了在控制信息通过处 理和控制链进行传递的过程中,与信息内容相关的控制信息的某些方面 可能如何演变。下面将详细解释这些VDE用户和控制。

在本例中,制作者A创建了一个VDE容器,并提供了相关的信息 内容控制信息,该控制信息含有对可能“类型”的VDE控制信息几个 例子的引用(还可能包含其他内容)。为了更好地说明本例,在下面更 加详细的讨论中,某些被传递给其他VDE参与者的VDE控制信息被 分成下面三类:分发控制信息、再分发控制信息以及使用控制信息。在 本例中,可以将作为第四类的嵌入控制信息看作是上述所有三种类型中 一个元素。也可能有其他的控制信息分类方式(VDE不要求采用上述 方式组织控制信息)。在图80中,用CA指代与制作者A所创建的容 器的这一例子相关的信息内容控制信息。图80还示意了其他的VDE参 与者,这些参与者可接收与制作者A的VDE信息内容容器有关的允许 控制信息。下面将会详细说明本例中的某些上述控制信息。

由制作者A规定的某些分发控制信息(在本例中,这些分发控制 信息主要涉及分发者对控制信息的创建、修改、和/或使用)包括:(1)对 于该容器信息内容的每个实际用户,分发者都要支付制作者A一定报 酬,报酬的标准是每人每月10美元;(b)对分发者进行预算,在不补 充该预算的情况下,他们最多只能允许100个独立的用户访问上述信息 内容(即:他们最多只能创建100个反映信息内容使用权的许可记录); (c)不允许将分发权利(如许可记录和相关部件组)放在被创建出来以 便分发给其他参与者的允许控制信息中传递。

由制作者A规定的某些信息内容再分发控制信息(在本例中,这 些控制信息即为由某个分发者在不超越处理和控制链中的上级参与者 所允许的限度内所创建的控制信息,这些控制信息被传递给用户/提供 者(在本例中即为用户/分发者),并与某些控制和/或上述用户/分发者 提出的、涉及再分发活动的其他要求相关联)包括:(a)规定用户/分发 者在分发允许对信息内容进行访问的控制信息时不能够超过两级,并进 一步要求每次再分发时都将上述的级数减一,这样,第一个再分发者所 能进行的分发就被限制在两级之内,接收第一个分发者传递来的许可的 第二个分发者将被限制为只能再分发一级,而从第二个分发者接收许可 的用户将不能再进行分发(举例来说,可以在上述限制中加入一个要求 作为与创建新许可相关联的VDE控制方法的一个方面,以便强制执行 上述限制,该要求调用一个或多个方法,这些方法:(i)找到再分发的 当前级数,该级数(举例来说)作为一个整数值存放在与上述一个或多 个方法相关联的UDE中,(ii)将再分发级值与一个限制数值相比较, 以及(iii)如果该再分发级值小于限制数值,则首先把所述再分发级值增 1,然后才把所述UDE作为与VDE所管理信息内容相关联的信息内容 控制信息的一个方面传递给用户;如果再分发级值与限制数值相等,则 令该进程失败);(b)对于再分发者没有其他特殊限制。

由制作者A规定的某些使用控制信息(在本例中,即为制作者要 求分发者在传递给用户和/或用户/分发者的控制信息中提供的控制信 息)可以包括(举例来说):(a)不允许移动信息内容(该移动方式可 以是在本文件中任何地方所说明的分发形式);以及(b)要求分发者在 使用许可范围内保留(至少)足够的计量信息,以便计算出一个月内访 问过该容器的用户数目,并且在租用期到期后禁止进一步的使用(例 如,通过使用一个计量器方法,该方法通过处理和控制链把访问使用信 息汇报给制作者A;以及/或者在许可记录或其他所需的控制信息中使 用过期日期和/或时间衰老加密密钥)。

本例中的制作者A规定的某些抽取和/或嵌入控制信息包括:要求 处于与该控制信息相关联的处理和控制链中的各方不允许或将不允许 抽取和/或嵌入上述信息内容,而某些用户则不在此限,这些用户不带 有与制作者A提供的上述受VDE保护信息内容相关的再分发权利。作 为一种选择或补充,对于所述信息内容的不同部分,可以把允许特定抽 取和/或嵌入的控制信息与本例中说明的、供用户/分发者(这些用户/ 分发者包括用户信息内容聚合者,即:他们提供由不同来源创建的信息 内容,和/或从不同来源收到的信息内容,从而制作他们自己的信息内 容产品)使用的再分发权利一起提供出去。

本例中的分发者A选择了一种基本方式,在向用户和/或用户/分发 者提供信息内容控制信息的时候,分发者A将优选该方式,该方式比 起其他方式来更有利于信息内容访问权利的租用。在本例中,由制作者 提供的某些控制信息将允许分发者A直接实现上述的有利方式,而另 一些控制结构则不允许实现该有利方式(除非(举例来说)分发者A 完成了一个成功的VDE协商,该协商允许上述的方式,并支持相应的 控制信息)。在本例中,由分发者A收到的许多控制结构都是来自一 个VDE协商进程(或反映了该协商进程的结果),在该VDE协商进 程中,分发者A表明他希望使用某些分发控制信息,这些分发控制信 息授权了对某些使用控制信息的创建,所述的使用控制信息反映了基于 租用的使用权利。所述分发控制信息可允许分发者A引入和/或修改由 制作者提供的控制结构,其方式为:创建控制信息,以便将其分发给用 户和/或用户/分发者,而这些用户和/或用户/分发者实际上“租用”访 问权利。另外,分发者A对用户/分发者要求提供再分发权利的请求进 行服务,因而也支持了与制作者协商得出的(或达成一致的)分发控制 信息,该分发控制信息允许分发者A包含上述权利,使之作为由分发 者A产生的控制信息的一个方面。

在本例中,分发者A和制作者A可以使用VDE来协商((举例来 说)VDE协商)他们之间的分发关系。由于在本例中制作者A制作了 一个VDE信息内容容器以及相关的控制信息,该控制信息表明制作者 A希望根据使用权利的租用收到报酬,该控制信息还表明制作者A在再 分发控制信息中加入了可接受的限制,分发者A可以根据这些再分发 控制信息来服务用户/分发者的请求,因此,分发者A可以接受制作者 A的分发控制信息,而不再商议其他修改。

从制作者A收到允许分发控制信息之后,分发者A可以运行一个 应用程序,为分发者A允许的用户和/或用户/分发者指定使用控制信息 的某些或所有细节(这要以上级控制信息允许或不禁止为前提)。分发 者A可以(举例来说)确定:关于用户为制作者A的容器所支付的使 用费用,每人每月15美元的价格可以满足分发者A的业务目的。分发 者A必须指定某些使用控制信息,使之满足制作者A给予分发者A的 分发控制信息的要求。例如,分发者A可以按照制作者A的要求在控 制信息的详细说明中加入规定的任何过期日期和/或时间衰老加密密 钥。如果分发者A没有在其控制信息的详细说明中加入上述信息(或 满足其他要求),那么在本例中,在制作者A的许可记录中所引用的、 以及在PPE 650中经过安全调用而实际创建上述控制信息的控制方法 将不能以所期望的方式执行(例如,根据对某些字段中所期望数值的检 查结果、根据某些方法必需包含在许可中之类的要求、等等),直到在 分发者A的控制信息详细说明中加入了可接受的信息。

在本例中,用户A可以与分发者A一起开立一个帐户,这样用户 A可以从分发者A接收受VDE管理的信息内容使用控制信息。用户A 可以从分发者A接收信息内容使用控制信息以便访问和使用制作者A 的信息内容。由于使用控制信息通过了包括分发者A的处理和控制链 进行传递(并且被加入该链和/或由该链修改),因此,在本例中由分 发者A要求提供的、用于使用制作者A所制作信息内容的使用控制信 息反映了来自制作者A和分发者A两者的控制信息的合成。例如,制 作者A可能创建了一个计量器方法,如果某一用户在某个月份中第一 次访问制作者A的受VDE控制的信息内容容器,该方法将为此产生一 个审核记录(例如将用户上一次访问的日期存放在与打开容器事件相关 的UDE中,所述事件由上述计量器方法的方法核心引用;同时在发生 后续访问的时候将上述的日期与当前访问日期相比较,以确定本次访问 是否发生在同一月份中)。分发者A可以使用与打开制作者A的容器 这一事件相关的控制方法所调用的上述计量器方法((举例来说),该 计量器方法也是由制作者A或分发者A创建和/或提供),该控制方法 调用了一个或多个计帐和/或预算方法,这些方法在一个或多个许可记 录中创建、修改和引用,并且/或者由分发者A为它们提供参数,以反 映上述的月使用费。如果分发者A在制作者A的上级控制信息允许的 范围之内,规定了使用和/或分发控制信息,那么当对应于制作者A VDE 信息内容容器的控制信息被传递给用户和/或用户/分发者(在本例中为 用户A、用户B和用户/分发者A)时,一套新的控制信息集合(在图 80中示意为DA(CA))将与于制作者A的VDE信息内容容器相关联。

在本例中,用户A将从分发者A收到与制作者A的VDE信息内 容容器相关联的控制信息。该控制信息可以代表用户A和分发者A之 间(例如,针对信息内容的使用费,有限的再分发权利,等等)以及分 发者A与制作者A之间(例如,针对受VDE控制信息内容的使用信息 和/或信息内容控制信息((举例来说)这些信息由分发者A从制作者 A收到,或相反)的特征、程度、处理、汇报、和/或使用和/或创建的 其他方面,或针对其他VDE信息内容使用信息的处理)达成的扩展协 定。这种扩展协定由多个过程进行强化,这些过程运行于每个参与者 VDE设备的安全子系统中。制作者A的控制信息经分发者A修改后由 上述扩展协定来表示,在本例中,该扩展协定由DA(CA)来代表,它包 括(举例来说):(a)控制结构(如一个或多个部件组、一个或多个许 可记录、等等);(b)对使用信息的记录,该记录产生于使用制作者A 的信息内容的过程中,而上述使用遵照了在该控制信息中阐述的要求; (c)进行付帐(包括为响应上述使用活动而“执行”的自动电子信用和/ 或货币付款),以此作为上述使用活动的结果(其中,所述结果也可以 包括电子地、安全地和自动地接收通过使用VDE而传递过来的帐单, 所述帐单是从所述使用中导出的);(d)在用户A的VDE设备安装站 点由用户A和/或VDE安全子系统采取的其他行动,这些行动是上述使 用和/或上述控制信息的结果。

除了控制信息DA(CA),用户A可以实施其自身的控制信息,以控 制他对制作者A的VDE信息内容容器的使用(其使用要在上级信息内 容控制信息的限制范围之内)。该控制信息可以包括(举例来说)(a)在 使用上设置的交易、会话、基于时间的和/或其他方面的阈值(如某些 数量限制,例如,对于每个活动参数所花销的数额自行施加的限制), 于是如果这些阈值被超过之后,用户A必须在继续使用之前明确地表 示同意。(b)用户A的个人隐私要求,它涉及对某些使用相关细节的记 录和/或传送,这些相关细节涉及用户A对制作者A的信息内容的使 用。(c)备份要求,用户对其自身设置该备份要求,以便确保制作者A信 息内容容器中的数值和/或本地保存的电子信用和/或货币被确实保护 好,否则,当出现系统故障和/或其他原因时上述信息可能会丢失。在 某些例子中,可以通过与分发者A协商来确定在某些或所有上述用户A 控制信息示例中所执行的权利。可以不依赖于从任何信息内容提供者收 到的任何控制信息而实施其他上述用户指定的控制信息,并且,针对信 息内容和/或电子设备使用的一种或多种类型,或所有类型,可以设置 上述的用户指定控制信息,使之与用户的、(或者更一般地)VDE设 备的控制信息相关。在用户A使用制作者A信息内容容器的过程中将 投入使用的、VDE控制信息的整个集合在图80中由UA(DA(CA))指 代。该集合代表了源于制作者A的控制信息经过了分发者A的修改, 并进一步经过了用户A的修改,全部都遵照了价值链中提供上级控制 信息的各方所产生的控制信息,因此构成了(对于本例来说)在用户A、 分发者A和制作者A之间达成的、有关制作者A VDE信息内容容器 的“完整”VDE扩展协定。用户B也可以(举例来说)从分发者A接 收上述控制信息DA(CA),并以经过授权的方式加入其自身的控制信 息,以形成集合UB(DA(CA))。

用户/分发者A也可以从分发者A接收有关制作者A VDE信息内 容容器的VDE控制信息。用户/分发者A既可以(举例来说)作为一个 用户来使用制作者A的信息内容,也可以作为其控制信息的再分发者。 在本例中,控制信息DA(CA)既允许又限制了上述两种活动。在DA(CA) 允许的限度内,用户/分发者A可以根据DA(CA)创建其自身的控制信 息UDA(DA(CA)),该控制信息既控制了用户/分发者A的使用活动(其 方式类似于前面结合用户A和用户B所说明的方式),又控制由用户/ 分发者A再分发的控制信息(其方式类似于前面结合分发者A所说明 的方式)。例如,如果用户/分发者A向用户/分发者B再分发 UDA(DA(CA)),用户/分发者B可能需要向用户/分发者A汇报某些使 用信息,而制作者A和分发者A两者都不要求这些信息。作为另一种 选择或补充,用户/分发者B可以(举例来说)同意根据其使用制作者 A信息内容的分钟数而为其使用向用户/分发者A支付一定费用,(而 不是由分发者A为用户/分发者B的使用活动按月向用户/分发者A收 费)。

在本例中,用户/分发者A可以向用户/分发者B分发控制信息 UDA(DA(CA)),该控制信息允许用户/分发者B再分发与制作者A的信 息内容相关联的控制信息。用户/分发者B可以产生一个新的控制信息 集合UDB(UDA(DA(CA)))。如果控制信息UDA(DA(CA))允许用户/分 发者B再分发,本例中由制作者A设置的再分发限制将禁止集合 UDB(UDA(DA(CA)))包含进一步的再分发权利(例如,向用户B提供 再分发权利),因为处理链从分发者A到用户/分发者A(分发)、再 继续从用户/分发者A到用户/分发者B(一级再分发)、进一步延续到 另一用户已经代表了两级的再分发,因此,在本例中,集合 UDB(UDA(DA(CA)))不能包含进一步的再分发权利。

如图79所示,用户B可以使用来自用户/分发者B和分发者A两 者(不限于此两者)的信息内容。在本例中,如图80所示,用户B可 以从分发者A和/或用户/分发者B接收与制作者A的信息内容相关联的 控制信息。在两种情况下,用户B都可以分别在DA(CA)和/或 UDB(UDA(DA(CA)))之上创建其自身的控制信息(如果上述控制信息允 许的话)。得到的控制信息集合UB((DA(CA))和/或 UB(UDB(UDA(DA(CA))))分别代表不同的控制方案,每种控制方案都 可以使用户B获益。前面已经结合一个例子介绍过,用户B可以已从 处理链中的用户/分发者B收到控制信息,该处理链中还包括用户/分发 者A,用户/分发者A根据用户B使用制作者A信息内容的分钟数来 收取费用(并要求用户/分发者A按照每人每月15美元向分发者A支 付使用费,而不管用户在一个月中的使用量是多少)。在某些情况下, 上述方案比起直接使用分发者A提供的控制信息来收取费用要更有利 一些,但也可能有不利的一面,即有可能耗尽再分发链,以及(举例来 说)包含在UDB(UDA(DA(CA)))中的进一步的使用信息汇报要求。如 果控制信息DA(CA)和UDB(UDA(DA(CA)))允许的话(例如,它们不要 求采用下面的方法强制排他性,即(举例来说)在由用户B的VDE设 备安全子系统所使用的对象注册中使用注册间隔,以禁止在特定时间间 隔内对涉及特定容器的不同控制信息集合取消注册和再注册(或禁止对 带有不同控制信息和/或由不同信息内容提供者提供的同一信息内容之 大量拷贝进行注册),所述的特定时间间隔是由DA(CA)和/或 UDB(UDA(DA(CA)))反映出来的、作为针对处理和控制链之扩展协定的 一个方面),那么用户B可以已注册了两个控制信息集合,并且如果 他们发现某种控制信息集合更适合于给定的使用方案时,他们可以使用 该控制信息集合。

在本例中,制作者B创建了一个VDE信息内容容器,并把一个 VDE控制信息集合关联到该容器,所述的控制信息集合在图81中由 CB指代。图81还示意了某些VDE参与者,他们可以接收与制作者B VDE信息内容容器相关联的允许控制信息。在本例中,控制信息可以 指出,制作者B信息内容的分发者:(1)在该分发者的授权下,必须为 用户和/或用户/分发者解密的信息向用户B支付每千字节0.50美元的 使用费;(b)可以允许用户和/或用户/分发者将他们的信息内容容器嵌 入到另一容器中,同时维持一个要求即制作者B为每千字节解密信息 内容收取0.50美元使用费;(c)不限制为用户和/或用户/分发者产生的 允许控制信息集合的数量;(d)必须在特定的时间间隔内(如每月至少 一次)汇报有关上述被分发控制信息集合数量的信息;(e)可以创建控 制信息,这些控制信息允许用户和/或用户/分发者对其控制信息执行最 多为三次移动;(f)可以允许用户/分发者对控制信息进行最多三级的再 分发;(g)可以允许从用户/分发者那里收到再分发的控制信息的每个用 户最多执行一次移动。

在本例中,分发者A可以请求制作者B提供控制信息,该控制信 息使分发者A可以向用户和/或用户/分发者分发控制信息,该控制信息 与VDE容器相关联,前面已经结合制作者B对该VDE容器进行了说 明。如前所述,分发者建立了一种商业模型,该模型有利于向从分发者 A收到上述权利的用户和用户/分发者“出租”访问权利。在本例中, 制作者B的分发控制信息并不强迫使用包括“出租”权利的模型,而 是根据由用户或用户/分发者解密的信息内容数量来决定付款额。在本 例中,分发者A可以使用VDE与制作者B协商,以便含有一种经过制 作者B允许的不同使用信息记录模型。该模型可以基于在与制作者B 的容器相关联的控制结构中加入一个或多个计量器方法,这些方法将记 录最终用户解密的字节数目,但是并不根据上述解密收取用户的使用 费。相反,分发者A建议—同时制作者B的控制信息也同意—允许使 用“租用”模型向用户收费,并根据由解密字节计量器方法记录的信息 和/或从用户收取的付款来确定应该向制作者B支付的费用额。

制作者B可以(举例来说)(a)接受上述的新模型,同时由分发者 A充当审核员(如,依赖涉及处理审核信息的控制方法(这些审核信息 由分发者A使用分发者A站点处的VDE安全子系统从制作者B信息 内容的用户收到);并进一步安全地计算出分发者A应付制作者B的 费用;然后(举例来说)使用互相接受的预算方法完成向制作者B的 付款,所述的预算方法管理从分发者A持有的信用和/或货币向制作者 B付帐);(b)接受上述的新模型,前提是分发者A接受由第三方执行 与该上述信息内容相关联的所有审核功能;(c)可以接受上述模型,前 提是:与记录用户解密字节数目的一个或多个计量器方法相关联的信息 被分发者B的VDE安全子系统安全地包装好,并通过使用VDE通信 技术被安全地传送给分发者A以及制作者B;以及/或者(d)接受其他 双方可接受的条件。分发者A根据分发者A在CB允许的条件下所执 行的修改产生控制信息,该控制信息在本例中由DA(CB)指代。

用户A可以从分发者A接受控制信息集合DA(CB),前面已经结合 通过包含分发者A的处理链从制作者A收到的信息内容介绍过,用户 A可以在控制信息DA(CB)允许的限度内将他们自己的控制信息应用到 DA(CB),从而产生控制信息集合UA(DA(CB))。控制信息集合DA(CB) 可以包含一个或多个计量器方法,这些方法记录由用户A从制作者B 的容器中解密的信息内容字节数目(以便允许针对用户A对制作者B 信息内容的使用而正确地计算出分发者A应付制作者B的费用,该计 算过程要遵照CB控制信息的规定,即每千字节解密信息要收取0.50 美元的费用),另外,DA(CB)还可以包含另一个与记录的使用相关联 的计量器方法,这样,分发者A可以收集足够的信息以便安全地产生 计帐信息,该计帐信息与用户A对制作者B信息内容的使用相关联, 并且基于“租用”模型(例如,分发者可以(举例来说)带有一个计量 器方法,每当用户A使用制作者B的信息内容时,该计量器方法都记 录下当时的月份;同时,该计量器方法还涉及进一步的控制信息,对于 用户A使用上述信息内容期间,该控制信息将按每月10美元向用户收 费)。

用户/分发者A可以直接从制作者B接收控制信息CB。在本例中, 制作者B可以使用VDE与用户/分发者A协商,并传递控制信息集合 CB,该控制信息集合CB可以等同于或不同于前面结合制作者B和分 发者A之间建立的分发关系所描述的控制信息集合。例如,用户/分发 者A可以接收控制信息CB,该控制信息包含一个要求,即:用户/分 发者A对于由用户/分发者A(以及从用户/分发者A接收到分发和/或 再分发控制信息的任何参与者)解密的信息内容需要按照每千字节 0.50美元的标准向制作者B付款。如上所述,用户/分发者A也可以从 分发者A接收与制作者B的VDE信息内容容器相关联的控制信息。 在本例中,用户/分发者A可以有两种选择,一种是通过经由分发者A 的处理链支付“租用”费;一种是根据解密的字节数量通过处理链直接 向制作者B支付费用。在本例中,用户/分发者A能够从CB和DA(CB) 中选择使用其一。前面已经结合含有制作者A和分发者A的处理链描 述过,用户/分发者A可以在CB和/或DA(CB)允许的限度内应用其自 己的控制信息,以分别形成控制信息集合UDA(CB)和UDA(DA(CB))。

如图81所示,在本例中,用户B可以从六个不同的来源接收与制 作者B的VDE信息内容容器相关联的控制信息:直接从制作者B接 收CB,从分发者A接收DA(CB),从用户/分发者B接收 UDB(UDA(DA(CB)))和/或UDB(UDA(CB)),从分发者C接收DC(CB), 以及/或者从分发者B接收DB(DC(CB))。他们代表了六条处理链,通 过这些处理链,用户B可以与本例中的其他参与者达成扩展协定。这 些处理链其中的两条经过了用户/分发者B。根据用户/分发者B和用户 B之间的VDE协商,可以达成一个扩展协定(如果控制双方的控制信 息允许的话),该协定反映了用户B可以使用两个控制信息集合之一 或两个都使用的条件。在本例中,两条处理和控制链将在用户/分发者B 处“会合”,然后传递到用户B(并且如果控制信息允许的话,上述 处理和控制将根据用户B的分发和/或再分发而在以后又一次分开)。

在本例中,制作者C产生与制作者C创建的VDE信息内容容器 相关联的一个或多个控制信息集合CC,如图82所示。图82还示意了 某些VDE参与者,这些参与者可以接收涉及制作者C VDE信息内容 容器的允许控制信息。在本例中,该容器中的信息内容被组织成正文文 章的集合。在本例中,控制信息可以含有一个或多个部件组,这些部件 组描述了该容器内的文章(例如,一个或多个事件方法引用映射表和/ 或算法,这些映射表和/或算法描述了每篇文章的范围)。CC还包括 (举例来说):(a)一个要求,即对于由用户和/或用户/分发者访问的 每篇文章,分发者要确保制作者C收到1美元的付款,该付款允许一 个用户在不超过六个月的时间内可以访问该篇文章(例如,使用映射类 型计量器方法,该计量器方法每月老化一次;使用时间衰老解密密钥; 使用与相关许可记录相关联的过期日期,等等);(b)控制信息;它允 许从制作者C容器中抽取文章,并嵌入到另一个容器中,对每次抽取/ 嵌入一次性收费10美元;(c)禁止对抽取的/嵌入的文章进行再抽取; (d)允许分发者每月为最多1000个用户或用户/分发者创建允许控制信 息;(e)要求至少每星期向制作者C汇报一次有关分发者允许的用户和 用户/分发者的数量信息;(f)允许分发者使用户或用户/分发者可以对允 许控制信息执行最多一次移动;(g)允许用户/分发者进行最多2级的再 分发。

在本例中,分发者B可以与制作者C建立分发关系。本例中的分 发者B可能已经建立了一种业务模型,该模型有利于向用户和用户/分 发者分发控制信息,该模型根据由上述VDE参与者所执行访问的次数 来决定对分发者B的付款。在本例中,分发者B可以创建一个经过修 改了的允许控制信息集合DB(CC),以便将之分发给用户和/或用户/分 发者。该集合DB(CC)可以(举例来说)根据使用了VDE的一次协商 过程而确定:对于从分发者B收到控制信息的用户和/或用户/分发者, 采用每个用户每次访问收费0.10美元的标准。例如,如果CC中已经含 有了一个或多个映射类型计量器方法,以确保可以从用户和/或用户/分 发者收集到足够的信息,用以保证分发者B根据CC向制作者C支付 了正确的费用,这些方法可以在集合DB(CC)中保存,同时,还要加入 一个或多个另外的计量器方法(以及其他必要的控制结构,例如计帐和 /或预算方法)以便记录每次访问,这样,集合DB(CC)还将确保分发者 B将根据每次访问收到付款。

本例中的客户管理员可以接收信息内容控制信息集合DB(CC),该 集合DB(CC)不同于(举例来说)由用户B从分发者B接收到的控制信 息。例如,分发者B可以向客户管理员提供对应于某些制作者的允许 信息内容控制信息,而客户管理员可以使用VDE与分发者B进行协 商,以便对于所有上述制作者的信息内容建立一个控制信息集合。例 如,客户管理员可以收到一个控制信息集合DB(CC),该集合反映了客 户管理员和分发者B之间VDE协商的结果。客户管理员可以含有对 DB(CC)的修改集合,并形成一个新集合CA(DB(CC)),该集合含有某 些控制信息,这些控制信息只对与该客户管理员属于同一组织的用户和 /或用户/分发者(如同事、雇员、顾问、等等)可用。为了强化这种方 案,CA(DB(CC))可以(举例来说)含有某些控制结构,这些结构在注 册时检验与用户或用户/分发者相关联的名字服务信息;这些结构还建 立一个新的预算方法,该预算方法由该客户管理员管理,在信息内容的 使用中要用到该方法;等等。

分发者可以向客户管理员提供再分发权利,以允许所述管理员只在 该管理员的组织内而不向其他方再分发权利,以便为某些信息内容创建 特定的许可记录(再分发对所述信息内容的使用权)。类似地,该管理 员可以扩展上述的“有限”权利,而再分发给其组织内的部门和/或其 他管理员,这样,他们可以根据由所述管理员指定的个人、和/或类别、 和/或该组织成员其他分类的一个或多个有限列表再分发上述的信息内 容使用权。这种VDE功能—即把再分发的范围限制到特定的一方或多 方、和/或特定的一个或多个类别和/或VDE用户和/或设备的其他分 类—可以由任何VDE信息内容提供者应用到信息内容上,只要该控制 经过了上级控制信息的允许。

在本例中,用户D可以从客户管理员和/或用户/分发者C接收控制 信息。用户/分发者C可以(举例来说)向用户D分发控制信息 UDC(CA(DB(CC))),该控制信息含有一个由用户/分发者C管理的部门 预算方法,该方法允许用户/分发者C对用户D的活动维持另一层控 制。在本例中,除了从商业分发渠道中得到的控制之外, UDC(CA(DB(CC)))还可以含有多层的组织控制(例如,源自客户管理 员的控制以及源自用户/分发者C的另外控制)。作为补充或选择,即 使客户管理员带有足够的控制信息,他也可以拒绝向用户D分发特定 种类的控制信息(如分发给用户/分发者C的控制信息,该控制信息允 许向诸如用户D这样的用户进行再分发),这样做有助于确保控制信 息按照某些策略、过程和/或其他管理进程在该客户管理员的组织中流 动。

在本例中,用户E可以从客户管理员和/或分发者B接收控制信息。 例如,用户E可以与分发者B一起拥有一个帐户,尽管可以从客户管 理员那里收到某些控制信息。在本例中,可以允许用户E不受限制地从 分发者B请求并接收控制信息;或者作为一项组织策略,客户管理员 可以在与用户E电子设备相关联的位置带有某些控制信息,该控制信 息限制了用户E与分发者B交互作用的范围。在后一种情况中,客户 管理员可能(举例来说)已经限制用户E必须向用户E电子设备的安 全子系统注册控制信息,该控制信息不能从该客户管理员得到,它来自 于一个或多个特定种类的分发者和/或制作者,并且对它的使用需要付 款,例如按某种价位点(如每使用1小时收费50美元)。作为一种选 择或补充,客户管理员可以(举例来说)将用户E限制在从分发者B 接收控制信息,在该过程中,用户E收到了一个价格(或其他控制信息 标准),该价格比起从该客户管理员的控制信息中可以得到的价格(或 其他标准)更加有利。

在本例中,制作者D可以创建一个VDE信息内容容器,该容器主 要用来(例如通过使用VDE抽取/嵌入进程)与其他信息内容集成在一 起,所述其他信息内容的例子包括由制作者B和/或制作者C提供的信 息内容。图83还示意了一些VDE参与者,这些参与者可以接收有关制 作者D创建的VDE信息内容容器的允许控制信息。与制作者D的信 息内容相关联的控制信息(图83中的CD)可以含有(举例来说): (a)一个要求,即分发者的付款方式或者是每个用户每次打开为1.50美 元,或者是每个用户付款25美元之后可以打开无限多次;(b)对于任 何用户,只要他以前已经为无限次地打开由制作者D所制作的某些其 他信息内容而支付了费用,就可以给予该用户20%的折扣(其实现过 程是:包含一个或多个计帐方法,这些计帐方法分析用户VDE设备的 安全数据库,以确定上述的任何其他容器是否被注册,并进一步确定购 买该容器使用权的用户所持有权利的特征);(c)一个要求,即:当依 照CD而产生的控制信息所允许的用户和/或用户/分发者之数目超过了 1000之后,分发者需要报告该数目;(d)一个要求,即分发者将用户和 /或用户/分发者所执行的移动数目限制为不超过一次;(3)一个要求, 即分发者将用户和/或用户/分发者所执行的再分发级数限制为不超过四 级;(f)分发者可以创建某些允许控制信息,该控制信息允许其他分发 者以分发者的身份创建控制信息,但是该上述分发者不能将该功能传递 给所述的被允许分发者;另外,还要求与所述被允许分发者使用控制信 息相关联的审核信息直接传递给制作者D,而不要经过所述允许分发 者的处理;并且,对于制作者D从所述被允许分发者收到的任何付款, 制作者D都应从中抽出10%来支付所述允许分发者。

在本例中,分发者C可以从制作者B、制作者C和制作者D收到 VDE信息内容容器以及相关的控制信息集合CB、CC和CD。分发 者C可以使用嵌入控制信息以及其他控制信息,利用从制作者B、制 作者C和制作者D收到的两个或多个VDE对象而制作一个新容器。作 为补充或选择,分发者C可以分别地为上述收到的容器创建允许控制 信息,以便将它分发给用户和/或用户/分发者(或在CD情况下,分发 给分发者)。例如,分发者C可以创建一个容器,该容器含有来自制 作者B、制作者C和制作者D的信息内容部分(如嵌入容器),在该 容器中,每个上述部分都具有与对该部分的访问和使用相关联的控制信 息,该控制信息记录并允许审核员收集足够的信息,以便使每个上述制 作者可以根据涉及由分发者C允许的用户和/或用户/分发者所进行的使 用而安全可靠地从分发者C收取付款。另外,制作者C可以使用VDE 与某些或所有上述制作者协商以确定某种模型,在该模型中,制作者C 为整个容器提供全局控制信息,并为此向用户和/或用户/分发者收取“统 一”的费用(例如,按每月、每次访问计算,按组合模型计算、等等); 与此同时仍然维持每个上述制作者根据CB、CC和/或CD所确立的、 有关分发者C如何向他们付款的模型;并且,由于上述制作者已经确 立了各自不同的、有关收集信息内容使用信息和任何相关(如广告)信 息的模型,于是分发者C可以从每个上述模型中得到相应信息。

在本例中,分发者B可以从制作者E接收一个VDE信息内容容 器和相关控制信息CE,如图83所示。如果CE允许的话,分发者B 可以从该容器中抽取部分信息内容。然后,分发者B可以(举例来说) 将该信息内容部分嵌入到从分发者C收到的一个容器中,该容器含有 多个VDE对象的一个聚集,这些对象分别由制作者B、制作者C、和 制作者D创建。根据从每个制作者和分发者C收到的控制信息集合中 所规定的具体限制和/或许可,分发者B(举例来说)能够将上述抽取 出的信息内容部分作为一个独立VDE对象嵌入到从分发者C收到的容 器中,或直接嵌入到制作者B、制作者C、和/或制作者D之“就位” 对象的信息内容中。作为一种选择或补充,如果CE允许的话,分发者 B可以决定将上述抽取出来的信息内容部分作为独立的VDE对象分发 出去。

在本例中,用户B可以从分发者C接收一个VDE信息内容容器, 该容器中含有由制作者B、制作者C、和制作者D创建的VDE对象。 另外,用户B还可以从分发者B接收一个VDE信息内容容器,该容 器中含有由制作者B、制作者C、和制作者D创建的同样信息内容, 而除此之外还含有由制作者E所创建信息内容的一个或多个被抽取/被 嵌入部分。用户B将基于确定他们选择使用上述容器中的哪一个(包 括哪个嵌入容器是他希望使用的),以及在何种情况下使用,比如基于 上述被抽取/被嵌入部分的特征(如,在信息内容的其余部分中用以表 现可能引起人们兴趣的领域的多媒体展示、解释和/或说明信息内容其 他元素的评论、相关文章、作为一个信息内容元素交付的改进型应用软 件、等等);上述信息内容部分的质量、实用性、和/或价格(或控制 信息的其他属性);以及其他一些方面上,这些方面突出了本例中从分 发者B和分发者C接收到的容器和/或信息内容控制信息的特色。

用户B可以为上述VDE信息内容容器从分发者B接收信息内容 控制信息,该控制信息允许用户B添加和/或修改上述容器中所包含的 息内容。用户B可能(举例来说)希望能够使用一个VDE感知型字处 理器或其他应用对上述容器中的信息内容做注释。如果上级控制信息允 许的话,某些和/或所有的信息内容都可供用户B修改和增添。在本例 中,用户B对于被增添和/或修改的信息内容来说是充当其VDE制作 者。用户B可以(举例来说)向该信息内容提供新控制信息,也可以被 要求(或希望)使用现有的控制信息(或处理链中上级成员、针对该目 的所加入的控制信息),以便(根据与上述容器和/或所含对象相关的 控制信息)管理上述信息内容。

在本例中,VDE 100用来支持一个环境,该环境含有(举例来说) 信息内容分发,再分发、聚合(抽取和/或嵌入)、再聚合、修改、和 使用。本例中的上述环境支持竞争模型,在该模型中,控制信息和信息 内容两者都可以经过协商确定,并且都可以根据它们所经处理链的不同 而带有不同的细节。而且,本例中的上述环境允许VDE参与者添加和/ 或修改信息内容,只要该VDE参与者收到了允许执行上述活动的控制 信息。

示例一通过信息内容VDE处理链进行的信息内容分发

图84示意了一个相对简单的VDE信息内容分发模型3400中的某 些方面,该模型中包括几种不同类型的VDE参与者。为了引用起来简 单,本例采用VDE信息内容容器对象的形式将信息内容的各种不同部 分表示为独立的项。用户还可以把一个或多个上述信息内容部分集成在 一起形成单个对象,并且可以整个地或部分地把它们抽取出来(如同在 信息内容控制信息允许时任何VDE信息内容容器对象的信息内容一 样)。在本例中,历史/教育多媒体信息内容的出版商通过使用信息内 容对象创建VDE信息内容容器,这些信息内容对象可从下面三种信息 内容来源得到:

出版商可以得到的视频库3402产品,这些产品存放在 光盘上,它们含有视频剪辑VDE对象,代表各种历史局势;

Internet存放库3404,它在VDE对象中存放了历史信 息文本和图片资源,这些对象可以由出版商和其他用户下载得 到;

声音库3406,该库也可以通过光盘得到,它带有各种 音乐演出和演讲片段(例如历史讲解),可以单独使用该库,

也可以结合其他历史教育材料一起使用。

可以将库3402、存放库3404和库3406中提供的信息提供给不同 的出版商3408(a)、3408(b),...,3408(n)。出版商3408接下来可以将他们 得到的某些或所有信息提供给最终用户3410。

在本例中,视频库3402控制信息允许出版商从视频库产品容器和 信息内容控制信息中抽取对象,这些信息内容控制信息允许在一年之内 使用每个被抽取出的对象,前提是该对象的使用许可费小于或等于50 美元,并且其播放时间少于45分钟;并允许对任何其他被抽取对象中 的每一个都可以做20,000份拷贝。另外,视频库3402还要求所有的视 频对象在被解密时都要加入VDE指纹。声音库3406建立了类似的控制 方案,该方案符合其业务模型。为响应用户有关下载某个对象的联机请 求,在某个被选定对象流出该存放库时,Internet存放库3404 VDE容 器包装—包括加密—选定的对象信息内容。存放库3404可以首先将接 收方VDE设备的标识作为指纹加入其信息内容之中,然后才加密该信 息内容并将之传送给出版商,存放库3404还要求上述出版商或其他信 息内容用户在解密其信息内容的时候将用户标识信息作为指纹加入该 信息内容中。

按照与信息内容提供源经过协商(或一致同意)所确定条款和条件 的规定,本例中的出版商3408选择各种信息内容部分,将这些部分组 合在一起,为他们的教师用户形成VDE对象容器。出版商3408(A)组 合了:从视频库3402抽取的视频对象(由圆圈表示)、从Internet存 放库3404抽取的正文和图像对象(由菱形表示)、以及从声音库3406 抽取的一个音乐片段和一个历史讲解片段(由矩形表示)。出版商3408(B) 抽取了类似的对象集合以形成其自己的产品,同时他还加入了由出版商 3408(B)创建的图形元素(由六边形代表)以增强该产品。出版商3408(C) 通过组合来自Internet存放库3404的对象和来自声音库3406的对象也 创建了一个产品。在本例中,所有的出版商产品都放在他们各自的光盘 上,以含有嵌入对象的VDE信息内容容器对象形式交付给一所现代化 高中,以便安装在这所高中的计算机网络中。

在这个特殊的例子中,最终用户3410是一些教师,他们使用其VDE 节点的安全子系统访问其高中服务器中的VDE设备,该VDE设备对 出版商的产品提供支持(在另一例子中,这所高中可以只维护一个基于 服务器的VDE设备)。这些教师从一个或多个上述出版商那里获得VDE 产品的使用许可,并从这些VDE产品信息内容容器中抽取所需的对 象,然后或者将这些抽取出的VDE信息内容以VDE信息内容容器的 形式下载到其教室的计算机中保存起来,以及/或者作为一种适当的和/ 或有效的手段,这些教师可以将抽取出的信息内容以VDE信息内容容 器的形式存放在服务器的大容量存贮设备中(以及/或者如果希望的话 且如果最终用户可以获得,并且依据可接受的定价和/或其他条款和条 件和/或上级信息内容控制信息的规定,这些教师可以将抽取出的信息 以未加密“明文”形式保存在其节点中和/或服务器存贮设备中)。这 种方式允许用户播放或使用从所述出版商产品中选择出来的部分,并且 如同本例所述的两个实例那样,向所述对象添加由教师和/或学生创建 的其他信息内容。例如,最终用户3410(2)选择了从出版商A收到的视 频片段1,而该出版商A则是从视频库中收到的上述对象。最终用户 3410(3)也从相同的出版商3408(A)那里接收视频片段3,其中,他也可 以从出版商3408(B)那里得到相同的片段,但是依据的条款和条件或许 不那么有利(例如可能不支持咨询电话)。另外,最终用户3410(3)从 出版商3408(B)那里接收了一个声音历史讲解片段,该片段对应于历史 参考片段7的信息内容。最终用户3410(3)还从出版商3408(2)接收了对 应的历史参考片段7(一本书),而该出版商3408(2)则是从Internet 存放库3404那里接收到所述的书。在本例中,由于最终用户3410(3) 还从出版商3408(2)那里而不是从带有同一书籍的出版商3408(1)那里取 得了历史参考片段7的使用许可,所以出版商3408(2)也许会对上述的 书收取较低的费用。作为一个教师,最终用户3410(3)选择了若干他认 为最适合于其班级的项,并且通过使用VDE,该最终用户3410(3)已经 能够灵活地从对他可用的来源中选择上述项(在本例中即是:从出版商 提供的、并且在该高中本地网络服务器中可以得到的各种光盘产品中抽 取各种对象)。

示例—一个组织内部的信息内容控制信息分发

图85示意了两个VDE信息内容容器:容器300(A)和容器300(B), 他们已经被分发给某个大组织中的VDE客户管理员3450。如图所示, 当容器300(A)和容器300(B)到达该公司的时候,它们都带有某些控制 信息,这些控制信息规定了该组织的可获得的使用权利。可以进一步从 图85中看到,客户管理员3450将上述权利中的某些子集分发给了该组 织中的某些部门管理员,例如销售和市场管理员3452(1)、规划管理员 3452(2)、以及研究与开发管理员3452(k)。对于每个部门,客户管理员 3450都确定该部门可以获得哪些使用选项,以及可以使用多少预算。

图85是一个简化的例子。例如,客户管理员3450可以已加入由他 自己创建的其他VDE控制,并且/或者(如果上级信息内容控制信息允 许的话)可以修改和/或删除已经存在的控制,并且/或者(如果控制信 息允许的话)他本来还可以在进一步将可用的资金预算(或其他预算) 划分给各种具体的使用活动。正如客户管理员对于各部门所具有的权利 那样,在本例中,部门管理员也具有同样的权利来确定部门最终用户的 权利。在本例中(图85未示出),客户管理员3450和/或信息内容提 供者还确定某些控制信息,这些控制信息必须对所有或某些类别的最终 用户直接控制他们对信息内容的使用和/或所述使用活动的结果(包括 提供有关上述方面的权利)。在图85所示的例子中,所述组织中只有 三级的VDE参与者:

一个客户管理员3450

若干部门管理员3452

若干最终用户3454

在其他例子中,VDE将支持一个组织中的多级VDE管理(包括 重叠的组)(如:分支、部门、项目、网络、组、最终用户、等等)。 另外,VDE模型中的管理员本身也可以是VDE信息内容用户。

在一个组织中,VDE设备可以:存在于每个最终用户节点处、只 存在于服务器处或其他多用户计算机或其他电子设备处,或者可以有混 合的环境。可以根据组织和/或信息内容提供者安全性、性能、成本开 销或其他需要虑及的方面来作出有关VDE服务器混合和/或节点使用活 动的决定。

在本例中,图85所示的各VDE参与者之间的通信使用了VDE安 全通信技术,这些安全通信技术适用于支持PPE的VDE安全子系统以 及该组织内每个VDE设备中的其他VDE安全系统部件互相之间的通 信。

示例—信息内容分发的另一个例子

受VDE保护的信息内容的制作者可以采用多种不同的方式与其他 VDE参与者进行交互作用。VDE制作者102可以(举例来说):直接 向用户分发信息内容和/或信息内容控制信息、向商业信息内容存放库 分发信息内容和/或信息内容控制信息、向团体信息内容存放库分发信 息内容和/或信息内容控制信息、以及/或者向其他VDE参与者分发信 息内容和/或信息内容控制信息。如果制作者102不直接和其信息内容 的所有用户交互作用,他可以向其他VDE参与者传送分发许可,这些 许可允许所述VDE参与者进一步分发信息内容和/或信息内容控制信 息。他也可以允许进一步分发VDE信息内容和/或信息内容控制信息, 其实现方式是(举例来说)不限制对控制信息的再分发,或允许某个 VDE参与者为可被传递给另一方的一个或多个许可记录充当一个“导 管”,在所述的另一方中,所述许可记录将第一接收方和/或第二接收 方的标识包括了进去。

图86示意了VDE参与者的一个可能组织方案。在本例中,制作者 102可以使用一个或多个应用软件程序和一个或多个VDE安全子系统 将未加密的信息内容放入受VDE保护的形式(即放入一个或多个VDE 信息内容容器)中。另外,制作者102可以产生一个或多个分发许可 3502和/或使用许可3500,作为与上述受VDE保护信息内容相关联的 控制信息的一个方面。这些分发和/或使用许可3500、3502可以是相 同的(例如,所有的分发许可都可以实际带有相同的全部特征),或者 它们也可以是不同的,这要取决于:这些许可创建所针对的参与者的分 类和/或类别、请求和/或传送这些许可时的情况、改变制作者102或接 收者的信息内容的控制模型、等等。

在本例中,制作者102将受VDE保护的信息内容(例如通过网络、 广播、和/或物理介质传送)传送给用户112a、用户112b和/或用户 112c。另外,制作者102还使用VDE安全通信技术将使用许可传送给 上述用户。用户112a、用户112b和用户112c可以在控制信息的规定 范围内使用上述受VDE保护的信息内容,从制作者102接收的使用许 可对上述控制信息作了规定。在本例中,制作者102可以(举例来说) 管理上述用户活动的所有方面,所述的用户活动涉及由制作者102传送 给他们的受VDE保护的信息内容。作为另一种选择,制作者102可以 (举例来说)含有对制作者102未提供的控制信息进行的引用(例如由 其他方管理的部件组),这些引用是用户必须可获得的。

在本例中,商业信息内容存放库200g可以从制作者102接收受 VDE保护的(或被安全交付的)信息内容以及分发、许可和/或其他信 息内容使用控制信息。商业信息内容存放库200g可以安全地存放信息 内容,因而当用户的某些必要条件得到满足之后,他们才可以从该存放 库200g中获取上述信息内容。分发许可3502可以(举例来说)允许商 业信息内容存放库200g在收自制作者102的信息内容控制信息所规定 的某些限制范围内(例如,拷贝数不能超过某一数目,要求商业信息内 容存放库200g向制作者102进行付款,要求该许可的接收者满足涉及 汇报信息内容使用信息的某些要求、等等)使用VDE安全子系统创建 再分发许可和/或使用许可3500、3502。可以将上述信息内容控制信 息存放在该存放库设备中,并且当为响应某个用户请求而将信息内容传 送出所述存放库时,可以将上述信息内容控制信息应用到未加密的上述 信息内容中,其中,所述信息内容被放到一个VDE容器中,作为将所 述信息内容传送给用户的安全进程的一个步骤。再分发许可可以(举例 来说)允许上述许可的接收者在某些限制范围内创建一定数量的使用许 可(例如,只对于同一家庭、商业机构、或其他组织的成员、等等)。 由制作者102发送给存放库200g的控制信息可以(举例来说)要求存 放库200g从存放库200g分发了许可的所有VDE参与者那里收集并汇 报信息内容使用信息。

在本例中,权力用户(power user)112d可以使用桌上型计算机 3504从商业信息内容存放库200g那里接收受VDE保护的信息内容和 再分发许可。权力用户112d可以(举例来说)结合桌上型计算机3504 的VDE安全子系统使用应用软件,以便为桌上型计算机3504、膝上型 计算机3506、和/或顶置设备3508创建使用许可(假设从商业信息内 容存放库200g收到的再分发许可允许上述活动)。如果上级控制信息 (例如,该控制来自制作者102,并可能经过了存放库200g的修改) 允许的话,权力用户112d可以向上述使用许可中加入其自己的限制(例 如限制权力用户112d的某些家庭成员对顶置设备的使用为每天特定时 间、限制对其的使用量、等等,这要取决于这些家庭成员的用户标识信 息)。然后,权力用户112d可以将采用VDE安全通信技术将上述受 VDE保护的信息内容和使用许可传送给膝上型计算机3506和顶置设备 3508。在本例中,权力用户112d将许可从桌上型计算机3504中再分 发给顶置设备3508和膝上型计算机3506,并且,该顶置设备和膝上型 计算机将被定期地要求向上述桌上型计算机汇报信息内容使用信息,然 后桌上型计算机将聚集、和/或处理用户使用信息,并将该使用信息汇 报给存放库200g。

用户112e和/或用户112f可以从商业信息内容存放库200g接收使 用许可和受VDE保护的信息内容。这些用户能够按照上述使用信息授 权的方式使用上述信息内容。与权力用户112d相反,这些用户没有向 存放库200g请求或从存放库200g接收再分发许可。在本例中,这些用 户仍然能够向其他电子设备600传送某些或所有使用权利,并且/或者 他们可以被允许将他们的某些权利移动到另一电子设备一如果从存放 库200g收到的使用许可允许上述传送和/或移动的话。在这种情况下, 上述其他设备能够直接向存放库汇报使用信息。

在本例中,公司700中的团体信息内容存放库702可以从制作者 102接收受VDE保护信息内容和分发许可。团体存放库702收到的分 发许可可以(举例来说)含有某些限制,这些限制规定存放库702只能 在公司700内部从事分发活动。

存放库702可以(举例来说)结合VDE安全子系统使用自动化的 操作系统接收和/或传送受VDE保护信息内容以及/或者再分发许可和/ 或使用许可。在这种情况下,自动化系统可以(举例来说)依靠由公司 策略、部门策略、和/或用户喜好等规定的标准来确定交付给公司700 内部各方(公司中的群体和/或个人)的许可和/或信息内容的特征。上 述的系统可以(举例来说)在公司700从制作者102收到分发许可后, 自动地为部门信息内容存放库704产生再分发许可作为响应,并且/或 者为用户112j和/或用户112k产生使用许可。

部门存放库704可以自动地为用户112g、用户112h和/或用户112i 产生使用许可。上述用户可以从团体信息内容存放库702访问信息内 容,而从部门存放库704接收使用许可。在这种情况下,用户112g、 用户112h和/或用户112i可以从部门存放库704接收使用权限,这些使 用许可中除了有上级控制信息规定的限制之外,还加入了部门的限制 (在本例中,上级控制信息来自制作者102,然后可被团体存放库702 修改,又可进一步由部门存放库704修改,修改后的控制信息反映了一 个VDE扩展协定,该协定除了带有团体和/或部门的策略以及与公司 700各团体人员之间的协定之外,还包含了制作者102和公司700的商 业要求)。

示例“虚拟硅容器”(Virtual Silicon Container)

如上所述,在某个例子中的VDE提供了“虚拟硅容器”(“虚拟 黑盒子”),在该虚拟硅容器中,  SPU 500的若干不同实例可以安全地 在一起通信,以提供一个整体安全硬件环境,该环境“虚拟地”存在于 多个地点和多个电子设备600中。图87示意了虚拟硅容器的一个模型 3600。该虚拟容器模型3600含有信息内容制作者102、信息内容分发 者106、一个或多个信息内容再分发者106a、一个或多个客户管理员 700、一个或多个客户用户3602、以及一个或多个票据交换所116。 上述每个不同的VDE参与者都可以带有一个电子设备600,该电子设 备600含有一个受保护的处理环境655,而受保护的处理环境655可以 至少部分地含有一个基于硅的半导体硬件元素安全处理部件500。各种 不同的SPU 500中的每一个都封装了虚拟分发环境的一部分,于是它们 一起构成了虚拟硅容器3600。

实例测验/考试

教育考试服务中心(Educational Testing Service)为高中高年级 学生准备了一次排定好时间的SAT考试。考试信息被放置在一个VDE 容器中,并计划好在美国东部时间1994年11月15日下午1:00发放。 SAT为每个学校或其他将要举行该考试的地点都准备了一个容器备 份。上述学校和其他地点(“考点”)将得到一个分发来的考试容器, 该容器安全地包含了与考点(例如某个考试组织)的“管理”电子设备 和/或考试管理员相对应的VDE标识,还包含一个预算,该预算允许创 建200个考试VDE信息内容容器。在考点中创建的每个容器都可以带 有一个许可记录,该许可记录包含了考点网络中每个考生所使用的电子 设备600所对应的安全标识信息,以及(举例来说)每个将要参加考试 的学生的标识。考生标识可以(举例来说)采用安全PIN口令的形式。 该口令由考生在考试之前输入(考试监察员或管理员可能通过输入一个 PIN口令来校验该考生的标识)。当然,标识可以采取多种形式,包括: 自动声音识别、手写文字识别(签名识别)、指纹信息、眼部识别、以 及类似的一种或多种识别形式,这些识别形式用来或者确认考生(和/ 或考试监察员/管理员)的身份,并且/或者可以与考试结果一起存放在 VDE容器中或其他类似结构中,或放在由特定容器信息指向的位置。 该标识可以以加密形式或未加密形式存放。如果以加密或保护的形式存 放,那么需要将某些概要信息—例如改错信息—与上述标识信息一起存 放,以便鉴别对应于该标识的相关考试。

当考生使用计算机终端参加考试时,选择的答案可以立即被安全地 存放起来(但考生可以考试期间对其答案进行修改)。一旦考试结束, 考生的答案以及考试的参考资料被安全地存放在一个VDE汇报对象 中,该汇报对象通过网络被传递给考试管理员和管理电子设备600。然 后,对应于所有考生的所有考试对象都将被放入一个VDE对象300中, 并传递给教育考试服务中心,一同传递过去的还有任何其他相关信息 (这些信息也受到了VDE 100的保护),包括某些概要信息,这些概 要信息给出了平均分和中间分以及其他信息,这些信息可能比较适于总 结被发送出去的对象,并且/或者适于充当被发送对象的鉴别信息。举 例来说,某些信息可能独立于每个考生的概要对象而被发送出去,所述 概要对象包含的某些信息有助于确认该对象是一个“真实”的考试对 象。

在考试方案中应用VDE将大大地消除由于在考试之前得知了考题 (考卷通常是从教师或考试管理员那里失窃)而产生的作弊行为。在 ETS,能够访问考题的个人受到限制使他只能访问考试的一部分,这样 可以消除“整个”考题失窃的危险。使用VDE还可以确保不会出现处 理错误或对考试答案的其它操作,因为可以将绝对真实的考试结果在一 段合理的时间之内存档保留。

总的来说,在电子化考试中使用VDE 100可以一方面提供电子考 试的好处,另一方面又杜绝了与电子化保存、传送、以及处理考试材料 和考试结果相关联的实际风险。电子化考试由于消除了对试卷的打印、 发送、操作、以及人工处理,从而大大地提高了效率,显著地降低了举 行和处理考试的成本。同时,电子化考试可以使用户在结束考试时得到 其考试结果的一份(加密的或未加密的)拷贝。这样有助于保护参加考 试的个人不会遭致考试结果的丢失或对考试结果的不当处理。使用了 VDE的电子化测验还可以确保与时间相关的考试变量(例如,精确的 开始时间、持续时间、以及结束时间)能够得到可靠的管理。并且,在 考试过程中正确地使用VDE 100当然还可以防止在考试之前对考卷的 不当访问,同时还确保考试的过程经过了适当地审核和鉴别,即:何人 参加了哪个考试、在什么时间、在哪个电子设备、在哪个位置。这样, 就可以避免或消除由于丢失、失窃、不当定时、或其他因素而导致的重 考。

经过VDE协助的测验当然可以被应用于许多不同的、含有个人安 全识别的应用中,所述的个人安全鉴别可用于安全/鉴别目的、用于雇 佣(如申请工作)应用、以及用于各种评价测验中。例如,飞行员、或 卡车、火车、公共汽车司机可以在马上就要启程之前或在航行中参加测 验,该测验评价受测人员的机敏性,以便发现疲劳、服药等问题。每次 进行考试时,或按每组时间进行考试时,可以改变该测验的顺序,并且 /或者利用不同测验活动组合进行测验。上述测验或主测验可以存放在 VDE容器中(可以由安全执行于PPE 650中的一个进程来确定测验问 题的顺序与取舍)。当对测验发生响应时,可以将该响应加密,并且或 者将其存放在本地以便积累到一定程度以后再传送(或与其他测验结果 一起传送),或动态地传送出去(例如,传送给一个中央测验管理计算 机)。如果被测验者考试“未能通过”,那么也许将采用某些手段禁止 他或她操作上述交通工具,这些手段可以是本地的PPE 650发出特定控 制指令,使上述交通工具的电子控制系统产生所述的禁止功效;也可以 是本地的PPE未能解密或提供操作上述交通工具所需的某些关键信 息。

示例-设备出租

通过使用本发明,电子设备可以被“出租给”或提供给客户,客户 可以不用为了无限使用的目的而购买一个给定设备,而是获得该设备 (如VCR、电视、微波炉、等等)并按照使用活动一个或多个方面支 付使用费。例如,对于微波炉可以根据使用它准备食品的次数和/或使 用时间进行收费。可以一直地或定期地将一个电话插座与一个廉价的调 制解调器相连,该调制解调器可工作地连接了上述微波炉或位于该微波 炉之内(该调制解调器也可以位于某个可服务大量食品和/或提供多种 功能(例如防盗报警、照明和/或温度控制)的位置)。作为另一种选 择,该设备可以使用建筑物内由电源线构成的网络来传送或接收信号。

在定期的时间间隔内,(概要形式的或详细的)使用信息可以被自 动传送给远程信息服务中心,该中心收集有关设备使用的信息(该服务 中心可以服务特定品牌、特定类型的设备、和/或品牌和/或类型的组 合)。使用信息将以VDE形式(如以VDE对象300的形式)传送出去。 之后,如果该服务中心本身不执行计帐功能,或者如果“属于”各个设 备生产厂家和/或出租人(零售商)的信息可能需要发送给某个财务票 据交换所或其代理的话,那么该服务中心将向该财务票据交换所分发信 息。这种方式将允许一个新企业租用设备,而该租用形式可能类似于汽 车出租。

安装了VDE以后,还可以用安全识别(PIN、声音或签名识别、 等等)对设备进行管理。可以在每次使用一个部件时都要求执行上述识 别,也可以定期地执行。在未能使用该识别过程或未能及时使用该过程 的情况下,如果PPE 650发出了一个或多个指令(或PPE 650未能解 密或提供涉及该设备操作的某些关键信息)以禁止使用部分或全部的设 备功能,那么该设备将被禁止使用。这一特点将大大地遏制盗窃电子设 备的欲望。对VDE的进一步联合使用是向家庭或商业机构中某些控制 处所的VDE安全子系统“注册”给定设备中的VDE安全子系统。该 控制处所还可能负责VDE远程通信和/或集中化管理(包括(举例来说) 通过识别出某些数据来限制用户的孩子通过电视或者录象带收看R级 电影,其中,上述数据表明给定的电影、歌曲、频道、游戏等是R级 的,并允许父母限制对其观看和收听)。该控制处所还可以(举例来说) 收集有关水、气、电、电话等的使用信息(或者使用集成进某个控制 装置中的PPE 650,该控制装置用来测量和/或控制上述使用;或者使 用一个或多个特定信号,这些信号由非VDE系统产生,并被传递给VDE 安全子系统(举例来说),供处理、使用控制(如使用限制)和/或计 帐之用)、将上述信息传送给一个或多个服务中心、使用受VDE保护 的电子货币和/或信用支付上述使用的费用、等等。

另外,可以用VDE来管理一个或多个使用预算,该VDE可以防 止对某个出租设备进行不当、过量的使用,这些类型的使用可能(举例 来说)导致该设备故障,上述不当使用的一个例子是:使用复印机复印 的拷贝数大大超过该机器工作周期所规定的数量。这种不当使用可导致 在显示面板或电视屏幕显示一条信息,或者导致中央票据交换所传来一 条消息,告诉用户应当升级到一个更为耐用的型号。

本文已经结合目前被认为是最有实效和较佳的实施例对本发明进 行了说明,同时应该认识到,本发明并不局限于所公开的实施例,相反, 本发明试图涵盖在所附权利要求的主旨和范围内的各种改进和等价方 案。

高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈