CN101167290A - 用于完整性证明和验证的系统和方法 - Google Patents
用于完整性证明和验证的系统和方法 Download PDFInfo
- Publication number
- CN101167290A CN101167290A CNA2005800496063A CN200580049606A CN101167290A CN 101167290 A CN101167290 A CN 101167290A CN A2005800496063 A CNA2005800496063 A CN A2005800496063A CN 200580049606 A CN200580049606 A CN 200580049606A CN 101167290 A CN101167290 A CN 101167290A
- Authority
- CN
- China
- Prior art keywords
- bip
- integrity
- component
- system component
- application program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 115
- 238000012795 verification Methods 0.000 title claims abstract description 76
- 238000009826 distribution Methods 0.000 claims description 14
- 238000013475 authorization Methods 0.000 claims description 8
- 238000007689 inspection Methods 0.000 claims description 3
- 230000006399 behavior Effects 0.000 abstract description 40
- 230000015654 memory Effects 0.000 description 23
- 230000006870 function Effects 0.000 description 22
- 230000008569 process Effects 0.000 description 16
- 238000007726 management method Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 7
- 238000012544 monitoring process Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 230000000712 assembly Effects 0.000 description 5
- 238000000429 assembly Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 239000010410 layer Substances 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000002346 layers by function Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 241000700605 Viruses Species 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012353 t test Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2115—Third party
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2149—Restricted operating environment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/303—Terminal profiles
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Storage Device Security (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种在计算机环境中基于一个或多个应用程序、系统或系统组件的特性和行为与特性和行为的概况相比较来进行完整性证明和验证的方法,包括:确定一个指定一个或多个应用程序、系统或系统组件的特性和行为的行为完整性概况(BIP);基于该BIP来确定一个或多个应用程序、系统或系统组件的特性和行为是否遵循在行为完整性概况规范中定义的特性和行为;以及基于确定所述遵循的步骤来确定对所述一个或多个应用程序、系统或系统组件的访问权。
Description
技术领域
本发明涉及完整性证明和验证。本发明尤其涉及包括应用程序完整性概况(AIP)和行为完整性概况(BIP)在内的概况的使用。
背景技术
通过电子商务来使得能广泛分发以及以其它方式使用数字文档和电子服务的最重要的问题之一是需要保护内容所有方和提供方的知识产权。解决这一问题的工作被称为“知识产权权限管理”(“IPRM”)、“数字产权管理”(“DPRM”)、“知识产权管理”(“IPM”)、“数字权限管理”(DRM)、、“权限管理”(“RM”)以及“电子版权管理”(“ECM”)。
然而,内容提供方需要使他们的内容被具有所需特性和/或行为的经证明的应用程序和系统使用。应用程序、服务和计算系统的提供方也需要使他们的应用程序、服务和系统只被具有所需特性和/或行为的应用程序和系统访问和使用。
公钥基础设施(PKI)的直接使用使得应用程序和系统提供方能证明他们的自己的产品并且使得内容和服务的提供方能验证用于使用他们的内容和服务的应用程序和系统的完整性。然而,PKI的直接使用在卖主与提供方之间制造了多对多的关系,这种关系具有难以衡量等问题。因此,需要管理这些关系以及进行有效而实时或近实时的完整性验证的方法和系统。
发明内容
因此,需要有能解决上述和其它需求和问题的方法和系统。本发明的示例性实施例提供了用于完整性证明和验证的方法和系统,解决了上述和其它需求和问题。
因此,在本发明的示例性方面中,提供了基于一个或多个应用程序、系统或系统组件的特性和行为与特性和行为的概况相比较,在计算机环境中进行完整性证明和验证的一种方法和系统。该示例性方法和系统可包括:确定用于指定一个或多个应用程序、系统或系统组件的行为完整性概况(BIP);基于该BIP确定一个或多个应用程序、系统或系统组件的特性和行为是否遵循在行为完整性概况规范中定义的特性和行为;以及在确定遵循步骤的基础上确定对一个或多个应用程序、系统或系统组件的访问权。
从以下详细说明中,简单地通过示出包括为实现本发明所设想的最佳实施方式在内的多个示例性实施例和实现,本发明的其它方面、特性和优点变得显而易见。本发明还可以有其它不同的实施例,且其细节可以从各方面进行修改,而全部在本发明的精神和范围内。因此,附图和说明书本质上应被认为是示例性的而非限定性的。
附图说明
本发明的诸实施例是为了示例而不是为了限定而在附图中的各图中示出的。在附图中,相同的标号指相同的要素,其中:
图1A是示出根据本发明的完整性证明和验证系统的一个示例性实施例的功能概图;
图1B是示出根据本发明的将BIP和AIP结合在一起使用的完整性证明和验证系统的一个示例性实施例的功能概图;
图1C是示出根据本发明的使用BIP的完整性证明和验证系统的一个示例性实施例的功能概图;
图2是示出根据本发明的完整性证明和验证系统的一个示例性实施例的功能块图;
图3是根据本发明的示例性完整性证明和验证设备的工作流程图;
图4A示出根据本发明的完整性概况的示例性结构;
图4B示出根据本发明的BIP的示例性结构;
图5示出根据本发明的示例性环境堆栈;
图6示出根据本发明的另一示例性环境堆栈;
图7示出根据本发明的示例性环境堆栈的示例性工作流程;
图8示出根据本发明的示例性环境堆栈的另一示例性工作流程;
图9示出根据本发明的操纵环境堆栈的示例性方法;
图10示出根据本发明的通过使用调试来防止动态窜改的示例性方法;
图11A是略示出根据本发明的用于完整性证明和验证的方法的一个示例性实施例的流程图;
图11B是略示出根据本发明的将BIP与AIP结合在一起使用的完整性证明和验证的方法的一个示例性实施例的流程图;
图11C是略示出根据本发明的使用BIP的完整性证明和验证的方法的一个示例性实施例的流程图。
图12是略示出根据本发明的注册应用程序和/或系统的方法的一个示例性实施例的流程图;
图13是略示出根据本发明的用于确定完整性概况的方法的一个示例性实施例的流程图;以及
图14是略示出根据本发明的用于验证完整性认证方的完整性的方法的一个示例性实施例的流程图。
具体实施方式
本发明包括识别提供方常想使他们的内容和服务被具有所需特性和行为的经证明的应用程序和系统使用。通过控制使用环境的这些方面,内容提供方例如能限制诸如复制、打印、嵌入、分发等的使用。
例如,内容或服务提供方可能想通过要求使用它的系统具有一定的安全等级和权限管理能力来防止内容被误用。内容提供方还可能想确保“外来”应用程序例如调试程序、病毒、侦听例程等不与用户系统上的内容使用应用程序交互,这种交互可征用或以其它方式“窃取”内容或其它敏感信息。例如,于2000年8月28日提交的题为“Document Distribution Management Method andApparatus for Controlling a Standard Rendering Engine(用于控制标准呈现引擎的文档分发管理方法和装置)”的Raley的美国专利申请第09/649,841号,其全部内容援引于此供参考,该申请允许管理用户系统的功能以限制用户对文档的访问。这些考虑同样适用于应用程序、服务和计算系统的提供方,并且适用于被使用的内容是他们的服务、应用程序或系统的提供方。
为了证明给定应用程序和系统具有所需的特性和行为,使用内容、访问服务或以任何其它合适的方式与其它系统、应用程序及组件交互所需的所有合适的应用程序和系统组件的验证需要由验证应用程序确认。验证应用程序使用可以属于相同或不同类型的一个或多个完整性概况来验证应用程序和系统组件。另外,相同或不同类型的两个或多个完整性概况可结合在一起或分开使用。
完整性概况可以是各种类型的。在一个示例性实施例中,完整性概况可包括应用程序完整性概况(AIP)、行为完整性概况(BIP)等。应用程序完整性概况能包括应用程序特有的可验证信息以及特性。因此,AIP可与特定应用程序联系。行为完整性概况可包括指示应用程序的行为是否与BIP规范中指定的行为相符的信息。有利地,BIP可包括指定PIB规范的一个BIP标识,该BIP规范指定所有合适的遵循应用程序所遵守的一组行为和/或使用条款和条件。例如,BIP规范可指定所有遵循BIP的合适的应用程序是只允许播放不允许执行其它动作的只播放应用程序。除了功能或动作之外,其它示例性实施例,例如基于地理、场所、时间、性能、服务等级、其它合适的标准等,提供其它类型的BIP以验证应用程序、系统、设备、组件等。
示例性实施例包括为计算机环境提供证明和验证服务的系统和方法。在这类示例性系统中,可以在内容或服务提供方与系统、应用程序等提供方之间引入提供这些服务的完整性证明和验证设备。此证明设备能注册来自他们相应的提供方的各应用程序和/或系统,并能根据预定选择来验证这些应用程序和/或系统的完整性。通过使用此服务,用户能“相信”完整性证明和验证设备。在相信的前提下,提供方建立一个其内容和服务被允许使用的一组程序和系统的概况,并根据此概况在用户系统上验证用户组应用程序和系统是可信的。
有利地,示例性实施例包括提供诸如文档、其它内容等的内容使用环境的完整性的证明和验证服务。在这一示例性系统中,在内容提供方与内容使用系统和应用程序提供方之间引入提供这些服务的完整性证明和验证设备,内容使用系统和应用程序提供方可分发例如,个人计算机、手持式计算机、PDA、多媒体显示设备、DVD播放器、分布式网络启动的电话和诸如文字(Word)处理器、内容浏览器、多媒体播放器等应用程序。完整性证明和验证设备注册来自内容使用系统/应用程序提供方的各应用程序和/或系统,并向内容提供方证明这些应用程序和系统组。通过使用此服务,内容提供方能选择或委托完整性证明和验证设备,建立一组被允许使用其内容的应用程序和系统的概况,并在用户系统上根据该概况验证用户系统上的该组应用程序和系统是可信的。以此方式,可以控制和决定由用户对所请求或提交的内容的访问或控制程度。
示例性实施例包括使用BIP的证明和验证服务。在一个示例性实施例中,完整性证明和验证设备注册并证明来自内容和服务使用系统/应用程序提供方的各应用程序和/或系统,验证该应用程序的行为遵循BIP规范,并提供遵循状态的证据。使用方能使用任何合适的内容或服务使用系统或应用程序来使用遵循由提供方要求的某些BIP的内容或服务。以此方式,可以控制内容或服务的使用而不必将使用限制于特定应用程序或系统。同样,使用方能使用任何合适的计算系统或应用程序来与遵循某些BIP的另一系统或应用程序交互。
为了增加安全性,可以使用BIP和AIP一起来执行应用程序、系统等的验证。在一个示例性实施例中,完整性证明和验证设备注册并证明来自内容和服务使用系统/应用程序提供方的各应用程序和/或系统,根据与应用程序和系统组件相关联的完整性概况来验证这些应用程序是可信的,验证这些应用程序的行为遵循BIP规范,并提供该遵循的证据。
本文所使用的文档一词可包括任何适合分发或递送的信息单元,包括:信件、书、杂志、期刊、报纸、其他文献、软件、插件程序、照片以及其它图像、视听剪辑、多媒体呈现等。文档可以打印的形式体现在纸上,作为存储介质上或在任何合适的其它已知或以后开发的各种介质或软件中的数字数据,这些介质或软件包括:光盘(CD)、数字视频盘(DVD)、激光盘、磁和磁光介质等。本文所使用的使用一词可涵盖任何合适形式的动作,包括内容和服务的使用或访问或另外与计算机系统的交互;这些交互包括访问、呈现、编辑、操纵、执行、复制、存储、递送、发行、获取、分发等。本文所使用的内容一词可涵盖能称为名词的任何合适的事物,诸如实体、资源、数量、事件、状态、概念、物质等。示例性资源可包括:文档、多媒体文件、Web或其它服务、名字、电子邮件地址等。
示例性实施例的系统和方法提供完整性证明和验证服务。示例性实施例能为内容使用系统环境单独提供用于完整性证明和验证服务的系统和方法。示例性实施例还可提供用于证明和验证系统和应用程序的标准化行为的系统和方法。示例性实施例还可单独提供用于确定完整性概况的系统和方法。示例性实施例还可提供用于验证一个或多个系统环境的完整性的系统和方法。示例性实施例还可提供用于管理完整性概况、系统及系统组件信息的系统和方法。示例性实施例还可提供通过使用完整性概况对用户系统执行完整性检查的系统和方法。示例性实施例还可提供通过使用BIP对用户系统执行遵循检查的系统和方法。
在一个示例性实施例中,诸如内容发行方或分发方等的内容提供方,为了提供诸如供用户、系统、设备等使用的内容,能启动对完整性概况的请求。对完整性概况的这一请求被发送至完整性证明和验证设备。如果对于所请求的应用程序和系统组件的完整性概况不存在,完整性证明和验证设备能查询已向用户提供了各种系统组件和/或应用程序的内容使用系统/应用程序提供方。内容使用系统/应用程序提供方返回关于特定应用程序或系统组件的完整性证明和验证设备认证信息。具有对认证信息访问权的完整性证明和验证设备可以在用户的系统上的应用程序或系统组件与由内容使用系统/应用程序提供方分发的原始的应用程序或系统组件之间进行比较或完整性验证。
系统应用程序和组件的认证信息可存储在组件数据库中。内容提供方的概况可存储在概况数据库中。或者,内容使用系统/应用程序提供方能维护能直接发往完整性证明和验证设备的相应数据库的认证信息的数据库,而无需完整性验证和证明设备确定完整性概况。随后,与所确定的完整性概况相对应的完整性概况标识被返回给内容提供方。
诸如内容分发方等内容提供方向用户提供例如受保护内容。内容提供方向用户发送包括例如特许契约和完整性概况标识在内的数字内容的受保护版本。完整性概况标识包括例如被允许与受保护内容一起使用的应用程序和系统组件以及这些系统、应用程序等的完整性概况的标识。
在具有来自内容使用系统/应用程序提供方的认证信息的情况下,完整性证明和验证设备例如在用户系统的请求下将完整性概况发往用户系统。通过此完整性概况,可执行用户的系统的完整性验证。如果确定用户的系统的组件/应用程序是可信的,则用户的应用程序和系统可根据例如附加概况信息来访问由内容提供方提供的数字内容。
有利地,内容提供方能将一个或多个BIP标识与数字内容相关联。例如,希望其音乐内容只被只播放和限复制一次的设备使用的音乐内容提供方能将只播放和限复制一次的BIP标识与该内容相关联。AIP标识不与受保护内容相关联,但可以被系统/应用程序提供方嵌入或与应用程序和系统组件相关联。例如,在内容提供方正在提供服务的情况下,可能希望只有在使用安全浏览器时使用方才能使用该服务。
完整性证明和验证设备使用BIP标识从其概况验证设备检索BIP遵循的证据。完整性证明和验证设备使用AIP标识检索完整性概况并将其发往用户系统。通过此完整性概况,能执行用户系统的完整性验证以确保用户系统的组件/应用程序不被窜改。如果确定用户系统的组件/应用程序是可信的并且存在BIP遵循的证据,则用户应用程序和系统可使用由内容提供方提供的数字内容。同样,如果确定组件/应用程序是可信的并且存在BIP遵循的证据,则可使用服务或访问应用程序或计算资源。
然而,应了解不必由内容提供方发起对完整性证明的请求。例如,可以由嵌入在与受保护内容一起从内容提供方发往用户系统的概况标识信息中的软件应用程序来发起该证明请求。
在另一示例性实施例中,内容提供方还能用作完整性验证和证明系统。例如,内容提供方能通过它本身收集合适的认证信息并确定内容提供方自己使用的完整性概况来进行完整性证明和验证服务。
在另一示例性实施例中,内容或服务使用应用程序/系统提供方能充当完整性证明和验证设备。例如,内容或服务使用应用程序/系统提供方还可将完整性概况与相关联的应用程序和/或系统组件一起提供。
示例性实施例的系统和方法提供证明和验证服务以确定数字内容和服务的使用以及使用或与计算系统的其它交互的环境的完整性。例如,为使用内容和服务提供的示例性系统包括使用方介质,诸如音频、视频、联机服务等。用于内容的使用的示例性系统可包括在一个或多个内容提供方与一个或多个内容使用系统和应用程序提供方之间引入的完整性证明和验证设备。该完整性证明和验证设备从内容使用应用程序和/或系统提供方获取认证信息。此认证信息使内容提供方相信给内容所提供的环境。因此,基于从内容使用应用程序和系统提供方接收的认证信息,完整性概况被建立。此概况随后被发往用户系统以确认用户未变更、修改或不可能以未授权的方式干扰由内容提供方提供的数字内容。
现在参见附图,其中在所有几张视图中相同的标号指定相同或相应的部分,特别是对于其图1A,示出了用于执行完整性证明和验证的示例性系统100。在一个示例性实施例中,完整性证明和验证系统100可包括:完整性证明和验证设备200、内容提供方和/或分发方300、用户系统400、内容使用系统/应用程序提供方500、组件数据库260、概况数据库270等。
在一个示例性操作环境中,内容使用系统/应用程序提供方500向用户提供应用程序、系统和/或软件/硬件组件。用户系统400允许使用由内容提供方和分发方300提供的诸如文档等数字内容。为了验证用户系统400的完整性,完整性证明和验证设备200收集并注册关于来自内容使用系统/应用程序提供方500的各应用程序、系统和/或软件/硬件组件的认证信息。完整性证明和验证设备200基于来自内容提供方300的服务请求20使用此认证信息来确定和证明一个或多个应用程序、系统和/或系统组件的完整性概况。随后,此确定的完整性概况50被发往用户系统400从而能确定用户系统400的完整性。
在操作中,内容提供方和分发方300向用户系统400提供诸如文档等数字内容。用户系统400可包括诸如硬件组件和/或各种软件应用程序等的一个或多个系统组件。这些应用程序和硬件/软件组件通常是由用户从诸如计算机提供方、软件仓库、应用程序提供方等一个或多个内容使用系统/应用程序提供方中获得的。这些应用程序和硬件及软件组件随后由用户适当地组装(如果尚未组装或安装)以使用户能使用诸如文档等内容。
因此,在用户环境的应用程序及硬件/软件的使用过程中,用户可能希望查看诸如文档等受保护内容。因此,用户400能向内容提供方300请求诸如电子书、多媒体文件、呈现、表单模板等一个或多个内容。在接收到此请求时,内容提供方和分发方300能向终端用户400提供具有概况标识10的受保护形式的所请求内容。此概况标识10可包括例如关于在哪些应用程序中可查看受保护内容的细节,以及例如在特定软件/硬件环境中所提供内容可被操纵的程度。
另外,内容提供方300能向完整性证明和验证设备200发送服务请求20。服务请求20包括例如:内容提供方300希望允许用户系统400在其上使用所分发的受保护内容的组件和/或软件应用程序的列表。完整性证明和验证设备200确定在服务请求中标识的组件和应用程序/软件是否具有存储在组件数据库260和/或概况数据库270中的相应认证信息。如果完整性证明和验证设备不具有对在服务请求中指定的认证信息的访问权,则完整性证明和验证设备200可向一个或多个内容使用系统/应用程序提供方500请求关于特定应用程序、系统、硬件/软件组件等的认证信息。具有对此认证信息的访问权的完整性证明和验证设备200将与应用程序和系统组件相关的信息存储在组件数据库260中。在另一示例性实施例中,完整性证明和验证设备200能为一个或多个应用程序生成一个完整性概况。由于确认了应用程序、系统和系统组件的可信性的这一信息,完整性证明和验证设备200将完整性概况50发往用户系统400。该完整性概况50用于确认用户系统400的系统、系统组件和/或应用程序的可信性。如果确定用户系统组件和/或应用程序是可信的,则受保护内容10被设置成不受保护从而用户系统400能根据完整性概况对受保护内容进行查看或以其它方式操纵等。
图1B示出将BIP验证和AIP验证一起用于执行完整性证明和验证的另一个示例性系统。与由图1A示出的示例性系统类似,用户系统400从内容提供方300接收诸如电子书、多媒体文件、呈现、表单模板等一个或多个内容。内容提供方和分发方300能向终端用户系统400提供具有一个或多个BIP标识、任选的BIP联合验证标记以及任选的使用许可的受保护形式的内容。BIP标识指定能说明用户系统400为使用受保护内容所遵循的一组公知的行为或条款和条件的专用BIP规范。BIP联合验证标记指示在多个BIP标识被指定时是否要联合地验证BIP遵循。如果未显式地指定BIP联合验证标记,则完整性证明和验证设备可默认其验证为不联合地验证。例如,如果内容提供方和分发方300已对受保护内容指定只播放BIP标识和限送一次BIP标识,并且BIP联合验证标记被指定,则只有遵循只播放BIP和限传送一次BIP两者的系统、应用程序等才能使用受保护内容。另一方面,如果未指定BIP联合验证标记,则遵循只播放BIP或限传送一次BIP或遵循两个BIP的系统、应用程序等才能使用该受保护内容。在另一个示例性系统中,用户系统400从内容提供方300接收一个或多个BIP标识、任选的BIP联合验证标记以及任选的使用许可,而不直接从内容提供方300接收内容。在此情况下,内容可存在于由任选的使用许可所引用或以其它手段暗示或引用的用户系统400中。在另一个例子中,“内容”可包括可由用户系统300访问的任何合适的内容、服务、计算环境等。
在用户系统400能使用受保护内容之前,完整性证明和验证设备200验证应用程序/系统的完整性以确保它们是可信的并且它们的行为遵循BIP规范。如果确定用户系统组件和/或应用程序满足两个标准,则受保护内容10被设置成不受保护从而用户系统400能根据BIP规范来使用该受保护内容。有利地,通过根据其所需的特性和行为来验证应用程序和系统,同一受保护内容可以由现存的已证明应用程序和系统以及由尚未开发和证明的应用程序和系统或由现存的尚未证明的应用程序和系统使用。
为了验证用户系统400的完整性,完整性证明和验证设备200收集并注册关于来自内容使用系统/应用程序提供方500的各应用程序、系统和/或软件/硬件的认证信息。完整性证明和验证设备200用此认证信息确定并证明一个或多个应用程序、系统、和/或系统组件的完整性概况。然后,AIP 50被发往用户系统400,从而能确定用户系统400的完整性。一旦确认了该系统的完整性并且已确定系统未被窜改,则完整性证明和验证设备200通过验证应用程序的确遵循由BIP标识指定的BIP规范的证据存在来确保应用程序遵循BIP规范。完整性证明和验证设备200获取在受保护内容10中指定的BIP标识,基于来自AIP的信息生成应用程序标识信息,并使用此信息来获得BIP遵循的证据。完整性证明和验证设备200能通过调用其概况验证设备来检索与BIP标识符以及应用程序标识信息相关联的遵循状态动态地获取BIP遵循的证据。当使用相应的AIP和BIP成功验证了系统及系统行为的完整性时,用户系统400被允许使用受保护内容。
图1C示出用于执行只需采用BIP验证的完整性证明和验证的另一示例性系统。在此实施例中,在用户系统400能使用受保护内容之前,完整性证明和验证设备200验证应用程序/系统的完整性以确保它们的行为遵循BIP规范。如果确定用户系统组件和/或应用程序遵循BIP规范,则受保护内容10被设置成不受保护,从而用户系统400能根据该BIP规范来使用受保护的内容。这一方法的优点是更快的性能,因为不需要执行AIP验证步骤。然而,即使在存在用户系统400的BIP遵循的证据时,也不能保证用户系统400未被窜改。对于某些应用程序,诸如在封闭系统中,不需要采用应用程序完整性验证。
根据图1C,完整性证明和验证设备200通过验证应用程序的确遵循由BIP标识符标识的BIP规范的证据存在来确保应用程序遵循BIP规范。完整性证明和验证设备200获取在受保护内容10中指定的BIP标识符,基于来自用户系统400的信息生成应用程序标识信息,并使用此信息来获取BIP遵循的证据。完整性证明和验证设备200能通过调用其概况验证设备来检索与BIP标识符以及应用程序标识信息相关联的遵循状态动态地获取BIP遵循的证据。当使用BIP成功验证了应用程序的行为时,用户系统400被允许访问或以在其它方式使用受保护内容。
为了确保应用程序、系统和/或软件/硬件组件遵循BIP,完整性证明和验证设备200能在功能和/或系统层执行严格的验证来验证应用程序/系统的行为遵循BIP中的规范。
在功能层,验证过程能确保由应用程序/系统提供的所有合适的功能都在由BIP规范定义的范围内运行。功能层的验证过程能利用针对实行这些特征的自动和/或手动测试。例如,假设只播放BIP,验证过程能确保应用程序/系统提供诸如向用户显示内容等只播放特征。因此,由应用程序/系统提供的诸如编辑、复制等违反只播放行为的特征会导致该应用程序/系统被认为不遵循。
在系统层,验证过程能确保应用程序/系统没有违反BIP的预期或非预期影响。例如,应用程序/系统可能通过使用临时文件来缓存非加密内容,通过将大量非加密内容写入存储器然后传送到交换文件,通过将非加密内容信息写入寄存器或写入环境变量等而产生非预期影响。因此,系统层的验证过程能利用低层监视软件来检测文件I/O、网络I/O、存储器跟踪以及用于确定BIP遵循的其它影响。
当系统/应用程序提供方500注册其应用程序/系统用于证明时,能执行功能和系统验证。验证可以是并需要是由完整性证明和验证设备的组件注册设备子组件执行的。一旦组件注册设备确定与BIP相关联的应用程序/系统的遵循状态时,组件注册设备将该状态与关于应用程序/系统的详细标识信息一起记录到组件数据库。准确地标识应用程序/系统所需的标识信息的类型的例子可包括应用程序/系统产品名称或唯一的标识号和/或全版本号等。概况验证设备能响应于来自完整性证明和验证设备的验证请求使用应用程序/系统的标识信息和BIP标识来检索遵循状态。如将了解到的,上述示例性BIP证明模型可按需要改变。如将进一步了解的,示例性验证模型可以按内容使用环境以外的环境所需地改变。
通常,BIP规范可以通过诸如标准机关、贸易团体、政府机关等组织创建,并且可以由该行业中的供应商等采用。每个BIP规范说明一组应用程序行为或特征、安全要求以及关于供应商能做什么来使它们的系统、应用程序等遵循概况的详细信息。有利地,每个BIP规范可具有唯一与其相关联的BIP标识。
图2示出完整性证明和验证环境100的组件的示例性概图。在图2中,完整性证明和验证环境100可包括:一个或多个内容提供方300、一个或多个用户系统400、一个或多个完整性证明和验证设备200、一个或多个内容使用系统/应用程序提供方500等。
内容提供方300可包括控制器310、存储器320、I/O控制器330、内容数据库340等。在又一实施例中,内容提供方300还能以更传统的方式分发内容。例如,内容提供方300能分发含有内容的光盘等。光盘可以例如通过邮政服务等递送至用户。通常,可以采用任何与示例性实施例的系统和方法等效的任何合适类型的分发和传播处理。
完整性证明和验证设备200可包括控制器210、存储器220、I/O控制器230、数字签名设备240、组件注册设备250、组件数据库260、概况数据库270、概况创建设备280、概况分发设备290、概况验证设备295等。完整性证明和验证设备200能提供组件注册服务、行为完整性概况(BIP)证明服务、完整性概况服务等。注册服务用预期特性、用途和行为允许将来自它们相应的提供方的应用程序、系统和/或软件/硬件组件注册成可信的。
提供BIP证明服务以验证系统、应用程序等遵循BIP并提供BIP遵循状态的证据。在系统/应用程序的注册期间,完整性证明和验证设备200使用组件注册设备250来执行存储在概况数据库270中的系统监视过程以及验证测试用例以确定注册在组件数据库260中的系统/应用程序的BIP遵循状态。在成功证明系统/应用程序的基础上,BIP证明服务创建、发出BIP并将其与被证明的系统/应用程序相关联。遵循状态连同应用程序/系统标识信息被记录和存储在组件数据库260中。作为BIP证明服务的一部分,概况验证设备295通过检索与某些应用程序/系统标识信息相关联的遵循状态来提供遵循的证据。
在一个示例性实施例中,可使用完整性证明和验证设备200的组件来实现BIP证明服务。或者,BIP证明服务可以被实现为单独的BIP证明服务提供方。在这类情形中,内容使用系统/应用程序提供方500能直接用BIP证明服务提供方注册其对BIP证明的申请。接着,在申请的验证期间,完整性证明和验证设备200能通过向联机的BIP证明服务提供方发送BIP标识符和申请信息来动态地获取BIP遵循的证据。
可以向用户提供完整性概况服务来建立和检索完整性概况。完整性概况可以是以作为被任选地数字地签名并可包括可验证信息和要使用受保护文档的内容的一组注册的系统组件的文档等形式。一旦完整性概况被创建,则完整性概况标识被返回给用户。内容提供方可包括完整性概况标识并且有利地可任选地为使用许可提供受保护文档。当受保护文档的内容被使用并且需要执行用户的系统和环境的局部完整性验证时,可以从用户系统的完整性证明和验证设备200检索完整性概况。
用户系统400可包括:控制器410、存储器420、I/O控制器430、存储设备440、完整性认证设备450、概况存储设备460等。因此,应了解这些示例性用户系统是基于计算机模型的。然而,还应了解根据其它示例性实施例,示例性用户系统的组件可以取决于例如所使用的内容或服务的类型、所访问的计算环境的类型、所进行的动作的类型等而改变。通常,任何其一部分或多个部分的完整性能被验证的合适的用户系统可以等效地用于示例性实施例的系统和方法。
系统/应用程序提供方500可包括:控制器510、存储器520、I/O控制器530、注册申请设备540、应用程序数据库550、系统数据库560等。然而,类似于内容提供方300,按照又一示例性实施例,系统/应用程序提供方根据系统/应用程序提供方所提供的系统和/或应用程序的类型而具有几种不同形式。例如,如果系统/应用程序提供方500提供特定硬件组件,则系统/应用程序提供方500不需要维护应用程序和系统数据库。在又一示例性实施例中,系统/设备组件提供方可将例如在磁盘等上的认证信息直接发送至完整性证明和验证设备200。
在另一示例性实施例中,系统/应用程序提供方500能与内容提供方300一起便于完整性概况的确定。通常,系统/应用程序提供方可包括能提供硬件或软件及其认证信息的任何合适的实体。
在示例性实施例中,系统/应用程序提供方500可包括各种系统组件。然而,应了解根据其它示例性实施例,系统/应用程序提供方500可包括:计算机分发方、软件开发方、软件提供方、软件分发方等。因此,系统/应用程序提供方500能提供允许使用由内容提供方300提供的内容的设备和/或软件。
完整性证明和验证环境100的各种组件能通过链路5交互通信,链路5可以是有线或无线的链接或其它任何已知的或将来开发的能向/从连接的组件传送电子数据的组件。例如,链路5可包括一个或多个分布式网络,这些网络能依次连接至一个或多个附加的完整性证明和验证环境100,或替代地连接至内容提供方300、用户系统400、内容使用系统/应用程序提供方500、完整性证明和验证设备200等中的任何一个或多个中的多个场合。
在一个示例性操作环境中,内容使用系统/应用程序提供方500向用户提供应用程序、软件和/或硬件。这些应用程序、软件和/或硬件被用户用于使用内容,诸如查看文档等。
内容提供方300例如在位于用户系统400的用户的请求下向用户系统400分发诸如文档等内容。在一个示例性实施例中,可由内容提供方300从用户系统400接收请求。可通过I/O控制器330接收的这一请求由控制器310与存储器320一起处理以从内容数据库340中检索所请求的内容。在一个示例性实施例中,内容提供方300可包括希望向用户等提供诸如文档等内容的联机内容提供方、书店、软件提供方、任何其它合适的内容提供方等。
在接收到来自用户系统400的内容请求时,内容提供方300向用户系统返回所请求的内容以及诸如概况标识等与受保护内容相关联的附加信息。在另一示例性实施例中,附加信息可包括指令用户系统在使内容可用之前请求概况从而请求完整性证明等的信息。附加信息还可包括用于标识在查看或与所请求的内容交互时哪些系统组件和/或硬件/软件可以在用户的机器上运行和/或使用的信息。因此,一个或多个请求的内容、附加信息、概况标识等由用户系统400通过I/O控制器430接收并在控制器410的指导下存储在存储器420和存储设备440中的一个或多个中。
在一个示例性实施例中,内容提供方300能从完整性证明和验证设备260启动诸如完整性概况请求等的服务请求20。完整性证明和验证设备260通过I/O控制器230并与控制器210和存储器220一起接收来自内容提供方300的服务请求。
如前所述,完整性证明和验证设备200可包括:组件数据库260和概况数据库270。组件数据库260提供对与可由一个或多个内容使用系统/应用程序提供方500分发的系统和系统组件相关的认证信息的访问权。同样,概况数据库270为一个或多个内容提供方300存储可验证信息以及要使用受保护文档的内容的一组注册的系统组件。可验证信息可包括在已注册的系统和应用程序的遵循BIP的证明中使用的验证测试用例。
因此,在从内容提供方300接收到对完整性概况的请求时,完整性证明和验证设备200在控制器210的指导下并且在存储器220的协助下搜索组件数据库260和概况数据库270以确定是否已存在对应于服务请求中的信息的认证信息。
在另一示例性实施例中,完整性证明和验证设备200能执行联机验证服务。提供联机验证服务以在完整性证明和验证设备200中例如实时地或接近实时地执行联机完整性验证。为了启动此服务,可以向用户系统400发送一个称为完整性认证方的软件。完整性认证方使得能收集本地软件和/或硬件组件的信息。
在另一个示例性实施例中,完整性认证方可以是诸如图2中所示的完整性认证设备450等专用设备。收集的关于本地软件和/或硬件组件的信息与完整性概况标识一起返回给完整性证明和验证设备200使得能执行联机完整性验证。组件注册设备250检查来自它们的相应提供方的软件/硬件组件并将标识信息存储在组件数据库260中。与软件/硬件组件相关的信息可以是例如散列的并且散列值可用作可信软件/硬件标识。然而,应了解根据其它示例性实施例用于标识各软件/硬件组件的信息可以是允许标识可信的硬件和/或软件的任何合适的已知的或将来开发的方案。
在一个示例性实施例中,可以通过内容使用系统/应用程序提供方500与标识和证明验证设备200通信以请求注册服务来完成特定软件和/或硬件组件的注册。在另一示例性实施例中,标识和证明验证设备200能与内容使用系统/应用程序提供方500通信以确保认证信息。注册应用程序设备540与控制器510、存储器520和I/O控制器530合作,随后搜索应用程序数据库550和系统数据库560中的一个或多个以确保包括提供方名字、诸如序号、版本号、建立号等组件标识、应用程序本身等在内的关于特定软件和/或硬件的信息。
在一个示例性操作情形中,完整性证明和验证设备200可直接从内容使用系统/应用程序提供方500请求诸如软件程序等特定应用程序而不是从特定的内容使用系统/应用程序提供方500获取认证信息。这样,完整性证明和验证设备200无需采用认证信息,因为完整性证明和验证设备200能确保直接来自内容使用系统/应用程序提供方500的特定软件应用程序。
组件注册设备250验证组件的信息并任选地计算例如可用作例如可信软件和/或硬件标识的散列值。组件注册设备250随后将组件信息以及例如散列值存储在组件数据库260中。
在系统/应用程序提供方注册用于BIP证明的应用程序/系统的情形中,组件注册设备250还执行功能和系统验证以确定与BIP相关联的应用程序/系统的遵循状态。组件注册设备250随后将遵循状态与关于应用程序/系统的详细标识信息一起记录在组件数据库260中。
在另一示例性实施例中,内容使用系统/应用程序提供方500还可连接至组件注册设备250以下载诸如注册应用程序、插件程序、小应用程序等小软件应用程序并在本地执行它。此注册应用程序可检查目标软件/硬件组件并将与此软件/硬件组件相关的信息(有可能)与诸如散列值等完整性值一起发送回组件注册设备250,该设备随后能将关于组件的认证信息存储在组件数据库260中。
在另一示例性实施例中,概况创建设备280为软件建立完整性概况。例如,各软件应用程序的诸如散列值等完整性值可以从组件数据库中检索以及存储在组件数据库中。组件之间的任选交互关系也可以包括在概况中。此关系用于标识组件的调用和返回顺序以防止与其它组件非预期的交互。随后,完整性概况的内容被数字地签名并且所得的签名被附加至完整性概况。各完整性概况与唯一的标识相关联。
概况创建设备280还可为被注册并成功通过BIP证明的系统和应用程序建立BIP。概况创建设备280能从组件数据库260检索各应用程序的BIP遵循状态并且如果该遵循状态指示成功遵循证明,则为应用程序创建BIP。概况创建设备能任选地将遵循状态记录在BIP内。各BIP还可包括与BIP规范相关联的唯一BIP标识以及应用程序/系统标识信息。完整性概况的内容随后被例如数字地签名并且所得的签名被附加至BIP。
图3示出由完整性证明和验证设备200提供的输入、输出和服务及操作的示例性工作流。在一个示例性实施例中,为了组件注册服务,组件标识以及任选的关于特定组件的元信息被发往组件注册设备250。组件注册设备250将组件的例如预期特性、用途以及行为注册在组件数据库中。然后,组件注册设备250将已注册的组件的标识返回给例如内容使用系统/应用程序提供方并使该标识对例如内容提供方300可用。
为了概况创建,概况创建设备280接收已注册的组件的标识。已注册的组件的标识在与关于相关联的组件的信息(如果有的话)相结合时即被数字化签名并被存储在概况数据库中。随后,完整性概况标识被返回给请求方。
概况创建设备280还可为包括BIP规范和系统/应用程序在内已注册的并成功通过BIP证明的各对创建单独的BIP。BIP可包括与BIP规范相关联的唯一BIP标识。已注册的组件的标识在与关于相关联的组件的信息结合时,诸如它们遵循BIP规范的遵循状态等,被记录在BIP中,被数字地签名并被存储在概况数据库中。唯一的BIP标识和应用程序/系统标识信息用作在概况数据库内唯一地标识特定BIP的主键值。
同样,概况分发设备290接收完整性概况标识。随后查询概况数据库270以确定与完整性概况标识相对应的完整性概况是否可用。如果该完整性概况可用,则将该完整性概况返回给请求方。否则,中可以在概况创建设备280的帮助下确定完整性概况。
概况验证设备295接收标识一个或多个组件的信息以及完整性概况标识。概况验证设备295将组件标识、完整性概况标识与相应的完整性概况相比较以确定验证数据。如果概况与组件和标识相匹配,则系统的完整性被验证。否则,确定该系统不是在完整性概况中所指定的或它已以某种方式变更过。
在BIP验证的情形中,概况验证设备295接收标识一个或多个组件的信息及某些唯一BIP标识。概况验证设备295使用这类标识从概况数据库270检索合适的BIP。随后,验证设备295检查组件的遵循状态以确定BIP遵循的证据。遵循状态指示应用程序/系统的行为是否遵循BIP中的规范。
图4A示出一个示例性完整性概况。该示例性完整性概况可由概况创建设备280创建。为了建立已认证的内容提供方的完整性概况,启动创建完整性概况的请求。例如,提供方可联系完整性证明和验证设备200并请求创建完整性概况。然后,提供方向完整性证明和验证设备200发送一个软件和/或硬件组件的名称的列表。然后,概况创建设备280从组件数据库260中检索各组件的诸如完整性值、散列值等标识。随后,概况创建设备280确定一个完整性概况,该概况可包括各组件的诸如完整性值、散列值等认证信息以及诸如完整性概况、标识、版本号、创建日期、建立日期、内容提供方名字等其它信息,并且任选地包括任意软件和/或硬件组件之间的交互关系。
概况创建设备280将已确定的完整性概况发往数字签名方240,该签名方随后能在概况的内容上签名。随后,概况创建设备280能将签过字的概况存储在概况数据库270中并将概况标识返回至内容提供方300。
图4B示出一个示例性BIP。当系统/应用程序提供方注册其系统/应用程序并通过遵循BIP规范的证明时,概况创建设备280创建BIP。概况创建设备通过从组件数据库260中检索与系统/应用程序相对应的遵循状态和应用程序标识信息来建立BIP。示例性BIP可包括:BIP标识、BIP的版本号、BIP的创建日期、创建BIP的组织名称、与BIP标识相关联的规范的URL、已注册的系统/应用程序的申请标识信息、BIP的数字签名等,并且任选地包括已注册的系统、应用程序等的遵循状态。当BIP包括多个BIP标识时,系统/应用程序必须遵循与指定的BIP标识相关联的所有适合的BIP规范。
当创建例如受保护文档的内容的使用许可时,内容提供方300可任选地包括使用许可中的完整性概况标识。在用户系统400上,完整性概况可用于验证环境调用栈中所有适合的软件/硬件组件。这确保只由授权的软件/硬件组件或其任何组合来使用敏感信息。在另一个示例性实施例中,内容提供方300可任选地包括与BIP规范相对应的完整性概况标识。在此情形中,与所述过程类似,首先在用户系统400中使用与特定应用程序相关联的完整性概况来验证环境调用栈中的所有软件/硬件组件。一旦系统/应用程序的完整性被确认,则BIP被用于证明系统/应用程序的行为是遵循由BIP标识所标识的BIP规范的。
概况分发设备290接受获取完整性概况的请求并从概况数据库270中检索它们并将完整性概况返回至相应的请求方。同样,概况验证设备295接受验证一个或多个系统环境的用户系统的请求。概况验证设备296根据完整性概况收集关于软件/硬件组件的信息,通过将该信息与概况相核对来进行验证,并将验证结果返回到请求方。概况验证设备295还响应于BIP验证请求从BIP获得遵循状态。
用户系统400可包括完整性认证设备450。完整性认证设备450例如在任何适合的内容使用应用程序上运行。
因此,图5示出一个用户设备400上用于验证系统完整性的示例性系统环境堆栈。在一个示例性实施例中,用户系统环境堆栈可包括完整性认证方、一个或多个系统组件等。
图6示出包括完整性认证方、插件程序、呈现应用程序、操作系统、操作系统(OS)引导陷阱、相应的硬件等的环境堆栈的一个例子。
在一个示例性操作环境中,完整性认证设备450可包括其自己的加密/解密密钥对以及标识证明和验证设备的验证密钥。这些密钥可以隐藏在和/或嵌在完整性认证设备400中以防止被窜改。对于需要使用用户的专用信息或涉及敏感文档和数据的那些应用程序,完整性认证设备450可使用相关联的完整性概况来验证用户系统环境中的调用栈上的软件/硬件组件。
完整性认证设备450可使用完整性证明和验证设备验证密钥来验证概况的签名。如图7至9中所示,一旦签名被验证,则完整性认证设备450检查当前的调用栈并开始使用在完整性概况中提供的信息来认证调用栈上的各软件/硬件组件。调用栈可以被配置成连续的存储区,其中可包括存储图像、所存储的功能或过程等。堆栈可以基于后进先出来操作并且堆栈可包括堆栈“进栈”和堆栈“退栈”。进栈可用于将图像存储在堆栈上并进到栈顶某一位置。退栈可用于从堆栈中移走数据并将栈顶恢复到先前位置。
对于调用栈,当前执行的功能的图像处在栈顶。当当前执行的功能调节或调用下一功能时,下一功能的存储图像被推到调用栈的栈顶上并且调用栈的栈顶指向下一功能的图像。入栈图像的各部分可包括在被调用的功能结束其执行之后的地址或返回指令。
图10示出执行环境是如何被保护的。在一个示例性实施例中,为了保护完整性认证方(IA),作为IA的一部分的可信应用程序监视IA的执行。诸如应用程序等监视过程可包括能防止IA被系统中任何其它合适的过程或应用程序监视的调试程序、特定过程等。在某一过程只能由一个过程调试的环境中,可信监视程序可以被实现为调试程序等。因为监视程序是可信应用程序,监视程序的完整性可包括在当前完整性概况中。因此,IA将在加载和执行之前验证可信应用程序的完整性。可信监视应用程序的功能是防止IA被其它过程监视、控制和捕捉。可信监视应用程序的另一功能是监视当前环境并确定环境中的变化是否有效。然而,和IA一样,可信监视应用程序也可被保护,并且IA能充当监视器来保护可信监视应用程序不被其它应用程序监视、捕捉和/或控制。此双重保护机制创建了一个能防止其它应用程序监视完整性认证方的执行的封闭系统。
图11A示出完整性证明和验证设备的操作的一个示例性方法。在一个示例性实施例中,控制在步骤S100开始并继续至步骤S110。在步骤S110中,完整性概况被确定。接着,在步骤S120中,完整性概况被验证。然后,在步骤S130中,完整性概况被发往用户。然后,控制继续至步骤S140。
在步骤S140中,用户系统的完整性被验证。接着,在步骤S150中,进行用户系统是否可信的确定。如果用户系统是可信的,则控制继续至步骤S160,用户被允许访问所选择的内容。否则,控制跳到步骤S170,内容访问被拒绝或停用。然后,控制继续至步骤S180,控制序列结束。
图11B示出一个将BIP与AIP结合在一起使用的完整性证明和验证设备的操作的示例性方法。在一个示例性实施例中,控制始于步骤S800并继续至步骤S810。在步骤S810中,AIP被确定。接着,在步骤S820中,AIP被证明。然后,在步骤S830中,AIP被发往用户。然后,控制继续至步骤S840。
在步骤S840中,用户系统的完整性被验证。接着,在步骤S850中,进行用户系统是否可信的判定。如果用户系统不是可信的,则控制跳到步骤S930,内容访问被拒绝或停用。然后,控制继续至步骤S940,控制序列结束。然而,如果在步骤S850中判定用户系统是可信的,则控制继续至步骤S860以确定BIP联合验证标志是否被显式地指定。
如果BIP联合验证标志被指定,则控制进到S870,验证用户系统遵循所指定的BIP规范。在步骤S880中,进行用户系统是否具有其遵循BIP的证据的判定。如果用户系统具有遵循的证据,则控制继续至步骤S890,用户被允许访问所选择的内容。否则,控制跳到步骤S930,内容访问被拒绝或停用。然后,控制继续至步骤S940,控制序列结束。
然而,如果在步骤S860中BIP联合验证标志未指定,则控制进到步骤S910,用户系统被验证是否遵循所指定的BIP规范中的任何一个。在步骤S920中,进行用户系统是否具有其遵循BIP之一的证据的判定。如果用户系统具有遵循的证据,则控制继续至步骤S890,用户被允许访问所选择的内容。否则,控制跳到步骤S930,内容访问被拒绝或停用。然后,控制继续至步骤S940,控制序列结束。
图11C示出一种使用BIP的完整性证明和验证设备的操作的示例性方法。特别是,控制始于步骤S1000并继续至步骤S1010。在步骤S1010中,BIP联合验证标志被检查以确定其是否被显式地指定。如果该BIP联合验证标志被指定,则控制进到步骤S1020,用户系统被验证是否遵循所指定的BIP规范。在步骤1030中,进行用户系统是否具有其遵循BIP的证据的判定。如果用户系统具有遵循的证据,则控制继续至步骤S1080,用户被允许访问所选择的内容。否则,控制跳至步骤S1040,内容访问被拒绝或停用。然后,控制继续至步骤S1050,控制序列结束。
然而,如果在步骤S1010中BIP联合验证标志不是指定的,则控制进到S1060,用户系统被验证是否遵循所指定的BIP规范之一。在步骤S1070中,进行用户系统是否具有其遵循BIP之一的证据的判定。如果用户系统具有遵循的证据,则控制继续至步骤S1080,用户被允许访问所选择的内容。否则,控制跳至步骤S1090,内容访问被拒绝或停用。然后,控制继续至步骤S1050,控制序列结束。
图12示出一个注册组件/硬件和/或软件的示例性方法。在一个示例性实施例中,控制始于步骤S200并继续至步骤S210。在步骤S210中,注册服务被启动。接着,在步骤S220中,组件提供方提供关于特定组件/硬件和/或软件的认证信息。然后,在步骤S230中,关于特定组件/硬件和/或软件的信息被验证。然后,控制继续至步骤S240。
在步骤S240中,判定完整性值是否应被确定。如果要确定完整性值,则控制继续至步骤S250,完整性值被确定。否则,控制跳至步骤S260,关于组件/硬件和/或软件的认证信息被存储。
接着,在步骤S270中,进行是否要存储完整性值的判定。如果要存储完整性值,则控制继续至步骤S280,完整性值被存储。否则,如果不要存储完整性值,则控制跳至步骤S290,控制序列结束。
图13示出一个确定概况的示例性方法。在一个示例性实施例中,控制始于步骤S300并继续至步骤S310。在步骤S310中,完整性概况确定被启动。接着,在步骤S320中,获取组件和/或硬件或软件的诸如标识等名称。然后,在步骤S330中,检索组件/硬件或软件的标识。然后,控制继续至步骤S340。
在步骤S340中,完整性概况被确定。接着,在步骤S350中,完整性概况被数字地签名。然后,在步骤S360中,被数字地签名的完整性概况被存储。然后,控制继续至步骤S370。
在步骤S370中,已签名的完整性概况随后被发往诸如内容使用系统/应用程序提供方等请求方。然后,控制继续至步骤S380,控制序列结束。
图14示出一个验证完整性认证方的完整性的示例性方法。在一个示例性实施例中,控制始于步骤S400并继续至步骤S410。在步骤S410中,完整性认证方的完整性被验证。接着,在步骤S420中,进行完整性认证方是否有效的判定。如果完整性认证方是有效的,则控制继续至步骤S430。否则,控制跳至步骤S540。
在步骤S430中,防窜改环境被建立。接着,在步骤S440中,完整性概况被验证。然后,在步骤S450中,进行完整性概况是否有效的判定。如果完整性概况是有效的,则控制继续至步骤S460。否则,控制跳至步骤S540。
在步骤S460中,完整性概况被加载。接着,在步骤S470中,相对图6所示的当前执行环境的调用栈被构成。在调用栈的栈底处是一组硬件和/或设备,其中软件组件向栈顶移动。堆栈中的诸组件的关系是较低的组件调节紧挨在它上面的组件。一旦调用栈被构成,则包括最后执行的组件的执行图像的调用栈的栈顶被定位。因此,堆栈上各组件的执行图像帮助标识该调用组件。然后,在步骤S480中,标识调用组件被检索。然后,控制继续至步骤S490。
在步骤S490中,相对于完整性概况来验证组件的完整性。接着,在步骤S500中,进行组件是否有效的判定。如果该组件是有效的,则控制继续至步骤S510。否则,控制跳到步骤S540。
在步骤S510中,进行堆栈是否为空的判定。如果堆栈是空的,则控制跳高到步骤S520。否则,控制跳到步骤S530。在步骤S520中,堆栈中的下一组件被定位并且此下一组件被设置成当前栈帧。然后,控制返回至步骤S480用于验证。
在步骤S530中,完整性被验证并且控制继续至步骤S550,控制序列结束。在步骤S540中,完整性检查失败并且控制继续至步骤S550,控制序列结束。
因此,诸如文档发行方或分发方等内容提供方向用户提供例如受保护内容用于在可信用户环境中使用。通过提供完整性证明和验证服务,可以验证内容使用环境的可信性。内容提供方向用户发送受保护版本的数字内容,它包括例如特许契约和完整性概况标识。概况包括例如被允许与受保护内容一起使用的应用程序和系统组件。另外,内容提供方发出对完整性概况的请求。对完整性概况的这一请求被发往完整性证明和验证设备。此完整性证明和验证设备能例如,如果完整性概况对于所请求的应用程序和/或系统组件尚未存在,则向例如已向用户提供系统组件的内容使用系统/应用程序提供方查询。内容使用系统/应用程序提供方返回关于特定应用程序或系统组件的完整性证明和验证设备认证信息。认证信息使得能在用户系统上的应用程序和/或系统组件与由内容使用系统/应用程序提供方分配的原始应用程序或系统组件之间进行比较或完整性验证。
在另一示例性实施例中,内容提供方将包括例如特许契约和BIP标识在内的受保护版本的数字内容发往用户。应用程序完整性概况标识不与受保护内容相关联,但被内容使用系统/应用程序提供方嵌入应用程序和系统组件中。不同于与特定应用程序联系的应用程序完整性概况,BIP与一个标准规范联系在一起,该标准规范指定所有遵循应用程序遵循的一套行为和/或使用条款和条件。完整性证明和验证服务首先使用应用程序完整性概况标识来验证内容使用系统、应用程序等的可信性。一旦内容使用系统/应用程序的完整性已被确认并且已确定其未被窜改,则完整性证明和验证设备通过验证应用程序的确遵循BIP规范的证据存在来确保内容使用系统/应用程序遵循BIP。然后,完整性证明和验证设备使得内容使用系统/应用程序能使用受保护内容。通过基于BIP标识验证应用程序和系统,使用方能使用遵循由内容提供方所要求的使用受保护内容的某些BIP规范的任何合适的内容使用系统或应用程序。以此方式,内容的使用可以被控制而不将使用限制于特定应用程序或系统。
图1至14的示例性实施例的完整性证明和验证方法和系统可以在单个编程的通用计算机或单独编程的通用计算机上实现。图1至14的示例性实施例还可以在专用计算机,编程的微处理器或微控制器和外围集成电路元件、ASIC或其它集成电路、数字信号处理器、诸如分离元件电路等硬连线的电子或逻辑电路、诸如PLA、PLD、FPGA、PAL等可编辑逻辑器件上实现。通常,可以采用能实现图1至14的示例性实施例的过程的任何合适的系统、设备、软件、及组合等(例如,通过有限状态机器等)。
图1至14的示例性实施例可以在能提供可用于各种计算机或工作站硬件平台的移动源代码的环境中使用对象或面向对象软件开发技术用软件来轻易地实现。图1至14的示例性实施例还可以使用标准逻辑电路或VLSI设计,部分或全部用硬件实现。是否使用软件和/或硬件来实现示例性系统和方法取决于所使用的系统、特定功能、和特定硬件或软件系统或微处理器或微型计算机系统的速度和/或效率要求。然而,上述完整性证明和验证设备和方法可以由本领域的技术人员使用任何已知或将来开发的系统或结构、设备和/或软件结合计算机领域的普通知识来容易地实现,而不必不适当地从本文提供的功能性描述中试验。另外,所公开的方法可以容易地实现为在编程的通用计算机、专用计算机、微处理器、服务器等上执行的软件。在此情形中,示例性实施例的方法和系统可以实现为:嵌入在个人计算机或服务器上的诸JAVA或CGI脚本等的例程、驻留在服务器或图形工作站上的资源、嵌入在专用完整性证明和验证设备、Web浏览器、Web电视接口、PDA接口、多媒体呈现设备等中的例程。完整性证明和验证设备还可以通过将系统和方法物理地包含在诸如图形工作站或专用完整性证明和验证设备的硬件和软件系统的软件和/或硬件系统中去来实现。
因此,图1至14的示例性实施例的上述设备和子系统可包括例如能执行图1至14的示例性实施例的过程的任何合适的服务器、工作站、PC机、膝上型计算机、PDA、因特网设备、手持式设备、蜂窝电话、无线设备、其它设备等。图1至14的示例性实施例的设备和子系统可使用任何适当的协议相互通信并用一个或多个编程的计算机系统或设备来实现。
可以将一个或多个接口机件用于图1至14的示例性实施例,它(们)包括例如因特网接入、任何适当形式的电信(例如,语音、调制解调器等)、无线通信介质等。例如,所采用的通信网络或链路可包括一个或多个无线通信网络、蜂窝通信网络、G3通信网络、公共交换电话网(PSTN)、分组数据网(PDN)、因特网、内联网、其组合等。
应理解图1至14的示例性实施例的设备和子系统是用于示例目的,因为如相关领域的技术人员将了解的,可以有许多用于实现示例性实施例的特定硬件的变型。例如,图1至14的示例性实施例的一个或多个设备和子系统的功能可以通过一个或多个编程的计算机系统或设备来实现。
为了实现这些变型以及其它变型,单个计算机系统可以被编程以执行图1至14的示例性实施例的一个或多个设备和子系统的专用功能。另一方面,可对为图1至14的示例性实施例的设备和子系统中的任何一个可以由两个或多个编程的计算机系统或设备代替。因此,可以在需要时可实现诸如冗余、复制等分布处理的原理和优点用于提高图1至14的示例性实施例的设备和子系统的强度和性能。
图1至14的示例性实施例的设备和子系统可存储与本文所述的各种过程相关的信息。此信息可以被存储在图1至14的示例性实施例的设备和子系统的诸如硬盘、光盘、磁光盘、RAM等一个或多个存储器中。图1至14的示例性实施例的设备和子系统的一个或多个数据库能存储用于实现本发明的示例性实施例的信息。可以使用这里列出的一个或多个存储器或存储设备中所包括的数据结构(例如,记录、表格、陈列、字段、图形、树、列表等)来组织数据库。相对于图1至14的示例性实施例所述的过程包括用于将由图1至14的示例性实施例的设备和子系统的过程收集和/或生成的数据存储在其一个或多个数据库中的适当的数据结构。
如计算机和软件领域中的技术人员所了解的,图1至14的示例性实施例的所有或部分设备和子系统可以使用根据本发明的示例性实施例的教导编程的一个或多个通用计算机系统、微处理器、数字信号处理器、微控制器等来方便地实现。如软件领域的技术人员将了解的,可以由普通技术人员在示例性实施例的教导的基础上容易地准备合适的软件。另外,图1至14的示例性实施例的设备和子系统可以在环球网上实现。另外,如电子领域的技术员将了解的,图1至14的示例性实施例的设备和子系统还可以通过准备专用集成电路或通过互相连接传统组件电路的正确网络来实现。因此,示例性实施例不限于硬件电路和/或软件的任何特定组合。
存储在计算机可读介质中的任何一个上或组合上的本发明的示例性实施例可包括:用于控制图1至14的示例性实施例的设备和子系统的软件、用于驱动图1至14的示例性实施例的设备和子系统的软件、用于使图1至14的示例性实施例的设备和子系统能与人类用户交互的软件等。这类软件可包括,但不限于:设备驱动器、固件、操作系统、开发工具、应用软件等。这类计算机可读介质还可包括用于执行在实现本发明时执行的全部或部分处理(如果处理是分布式的)的本发明的一个实施例)的计算机程序产品。本发明的示例性实施例的计算机编码设备可包括任何合适的可解释或可执行的编码机构,包括但不限于:脚本、可解释程序、动态链接库(DLL)、Java类和小应用程序、完全可执行程序、公用对象请求代理[调度]程序体系结构(CORBA)对象等。另外,可以为更好的性能、可靠度、成本等分配本发明的示例性实施例的部分处理。
如上所述,图1至14的示例性实施例的设备和子系统可包括用于保存根据本发明的教导编程的指令以及用于保存本文所述的数据结构、表、记录和/或其它数据的计算机可读介质或存储器。计算机可读介质可包括参与向处理器提供用于执行的指令的任何合适的介质。这类介质可以采用许多形式,包括但不限于,非易失性介质、易失性介质、传输介质等。非易失性介质可包括例如光盘或磁盘。易失性介质可包括动态存储器等。传输介质可包括同轴电缆、铜线、光纤等。传输介质还可采用诸如在无线电频率(RF)通信、红外线(IR)数据通信等过程中生成的声、光、电磁波等形式。计算机可读介质的普通形式可包括例如:软盘、软磁盘、硬盘、磁带、任何其它适合的磁介质、CD-ROM、CDRW、DVD、任何其它合适的光学介质、穿孔卡、纸带、光标记页、任何其它具有孔形或其它可以光学地识别标记的图形的物理介质、RAM、PROM、EPROM、快可擦编程只读存储器、任何其它合适的存储器片或盒式磁盘、载波或任何其它计算机可从中读取的合适的介质。
虽然已结合多个示例性实施例和实现说明了本发明,但本发明不限于此,而是涵盖了落在所附权利要求的范围内的各种修改和等效安排。
Claims (87)
1.一种在计算机环境中基于一个或多个应用程序、系统或系统组件的特性和行为与特性和行为的概况相比较来进行完整性证明和验证的方法,所述方法包括:
确定一指定一个或多个应用程序、系统或系统组件的特性和行为的行为完整性概况(BIP);
基于所述BIP来确定一个或多个应用程序、系统或系统组件的特性和行为是否遵循在行为完整性概况规范中定义的特性和行为;以及
基于所述确定遵循的步骤来确定对所述一个或多个应用程序、系统或系统组件的访问权。
2.如权利要求1所述的方法,其特征在于,还包括:
确定应用程序完整性概况(AIP);
基于所述AIP确定所述一个或多个应用程序、系统或系统组件的可信性;以及
基于所述可信性确定来确定所述访问权。
3.如权利要求2所述的方法,其特征在于,还包括以联合的方式使用一个或多个应用程序完整性概况以及一个或多个行为完整性概况。
4.如权利要求2所述的方法,其特征在于,还包括提供完整性证明和验证设备,所述完整性证明和验证设备具有对所述应用程序完整性概况的访问权以确定关于一个或多个应用程序、系统或系统组件的所述认证信息。
5.如权利要求1所述的方法,其特征在于,还包括经由组件注册设备通过将所述一个或多个应用程序、系统或系统组件的特性和行为对照所述BIP规范进行验证来确定BIP遵循状态。
6.如权利要求2所述的方法,其特征在于,所述BIP包括BIP标识、注册的应用程序、系统或系统组件的标识以及遵循状态中的至少一个。
7.如权利要求6所述的方法,其特征在于,还包括经由概况数据库以BIP标识以及注册的应用程序、系统或系统组件的标识来维护BIP。
8.如权利要求1所述的方法,其特征在于,还包括经由概况验证设备通过检查已向其发行所述BIP的所述应用程序、系统或系统组件的遵循状态来验证BIP遵循的证据。
9.如权利要求1所述的方法,其特征在于,还包括:经由注册申请设备从应用程序、系统或系统组件提供方获取关于所述一个或多个应用程序、系统或系统组件的所述认证信息。
10.如权利要求6所述的方法,其特征在于,还包括将所述BIP标识与分发的信息结合在一起使用。
11.如权利要求1所述的方法,其特征在于,还包括经由内容提供方来分发与所述BIP相关联的内容信息。
12.如权利要求1所述的方法,其特征在于,还包括提供应用程序、系统或系统组件提供方。
13.如权利要求10所述的方法,其特征在于,当所述BIP标识与所述分发的信息结合在一起使用时,如果概况验证设备确定所述一个或多个应用程序、系统或系统组件不可信或不遵循所述BIP规范,则对与所述一个或多个应用程序、系统或系统组件相关联的内容的访问被拒绝。
14.如权利要求1所述的方法,其特征在于,还包括经由BIP创建设备通过从组件数据库取得与所述一个或多个应用程序、系统或系统组件相对应的遵循状态和应用程序标识信息来建立所述BIP。
15.如权利要求1所述的方法,其特征在于,还包括:评估所述BIP以允许确定所述一个或多个应用程序、系统或系统组件的特性和行为是否遵循在所述BIP规范中定义的特性;以及
基于所述评估步骤来确定所述访问权。
16.如权利要求15所述的方法,其特征在于,还包括验证所述一个或多个应用程序、系统或系统组件的所述BIP遵循状态。
17.如权利要求15所述的方法,其特征在于,所述访问权包括允许或拒绝对与所述一个或多个应用程序、系统或系统组件相关联的内容的访问的权限中的至少一个。
18.如权利要求15所述的方法,其特征在于,还包括获取关于所述一个或多个应用程序、系统或系统组件中的至少一个的认证信息。
19.如权利要求1所述的方法,其特征在于,还包括数字式签名所述BIP。
20.如权利要求19所述的方法,其特征在于,还包括向使用方的系统发送数字式签名的BIP。
21.如权利要求1所述的方法,其特征在于,还包括验证与所述一个或多个应用程序、系统或系统组件相关联的完整性认证方的所述完整性。
22.如权利要求2所述的方法,其特征在于,还包括:
提供对有关所述一个或多个应用程序、系统或系统组件的认证信息具有访问权的完整性证明和验证设备;以及
提供用于确定所述一个或多个应用程序、系统或系统组件的可信性的所述AIP。
23.如权利要求22所述的方法,其特征在于,还包括经由组件注册设备从所述认证信息中确定所述AIP,所述AIP包括注册的应用程序、系统或系统组件的可验证信息和标识中的至少一个。
24.如权利要求22所述的方法,其特征在于,还包括经由概况数据库来维护注册的应用程序、系统或系统组件的所述AIP以及标识。
25.如权利要求22所述的方法,其特征在于,还包括经由概况验证设备通过比较应用程序、系统或系统组件标识,所述一个或多个应用程序、系统或系统组件,所述AIP,和/或AIP标识中的一个或多个来验证可信性。
26.如权利要求22所述的方法,其特征在于,还包括通过注册申请设备从应用程序、系统或系统组件提供方获取关于所述一个或多个应用程序、系统或系统组件的所述认证信息。
27.如权利要求22所述的方法,其特征在于,所述AIP包括可与分发的信息结合在一起使用的所述一个或多个应用程序、系统或系统组件的标识。
28.如权利要求22所述的方法,其特征在于,还包括经由内容提供方分发与所述一个或多个应用程序、系统或系统组件相关联的内容信息。
29.如权利要求22所述的方法,其特征在于,还包括提供应用程序、系统或系统组件提供方。
30.如权利要求22所述的方法,其特征在于,如果概况验证设备确定所述一个或多个应用程序、系统或系统组件是不可信的,则对与所述一个或多个应用程序、系统或系统组件相关联的一个或多个文档的访问被拒绝。
31.如权利要求22所述的方法,其特征在于,还包括经由概况创建设备基于关于所述一个或多个应用程序、系统或系统组件的可验证信息来确定所述AIP。
32.如权利要求2所述的方法,其特征在于,还包括证明所述AIP。
33.如权利要求2所述的方法,其特征在于,还包括验证所述一个或多个应用程序、系统或系统组件的可信性。
34.如权利要求2所述的方法,其特征在于,所述访问权包括允许或拒绝对与所述一个或多个应用程序、系统或系统组件相关联的内容的访问的权限中的至少一个。
35.如权利要求2所述的方法,其特征在于,还包括获取关于所述至少一个应用程序、系统或系统组件的认证信息。
36.如权利要求2所述的方法,其特征在于,还包括数字式签名所述AIP。
37.如权利要求36所述的方法,其特征在于,还包括向使用方的系统发送所述数字式签名的完整性概况。
38.如权利要求2所述的方法,其特征在于,还包括验证与所述AIP相关联的完整性认证方的所述完整性。
39.如权利要求1所述的方法,其特征在于,还包括建立一个与所述一个或多个应用程序、系统或系统组件相关联的防窜改环境。
40.如权利要求2所述的方法,其特征在于,还包括验证所述AIP。
41.如权利要求2所述的方法,其特征在于,还包括加载有效AIP。
42.如权利要求38所述的方法,其特征在于,所述验证步骤包括确定所述完整性认证方未受监视、控制或记录中的至少一个。
43.如权利要求1所述的方法,其特征在于,所述方法被实现为嵌入在计算机可读介质上的并被配置成使一个或多个计算机处理器执行在所述方法中所述的步骤的一条或多条计算机可读指令。
44.如权利要求1所述的方法,其特征在于,所述方法被实现为被配置成执行在所述方法中所述的步骤的一个或多个计算机软件和/或硬件设备。
45.一种在计算机环境中基于一个或多个应用程序、系统或系统组件的特性和行为与特性和行为概况相比较来进行完整性证明和验证的系统,所述系统包括:
用于确定一指定一个或多个应用程序、系统或系统组件的特性和行为的行为完整性概况(BIP)的装置;
用于基于所述BIP来确定一个或多个应用程序、系统或系统组件的特性和行为是否遵循在行为完整性概况规范中定义的特性和行为的装置;以及
用于基于所述遵循的确定来确定对所述一个或多个应用程序、系统或系统组件的访问权的装置。
46.如权利要求45所述的系统,其特征在于,还包括:
用于确定应用程序完整性概况(AIP)的装置;
用于基于所述AIP确定所述一个或多个应用程序、系统或系统组件的可信性的装置;以及
用于基于所述可信性确定来确定所述访问权的装置。
47.如权利要求46所述的系统,其特征在于,还包括用于以联合的方式使用一个或多个应用程序完整性概况以及一个或多个行为完整性概况的装置。
48.如权利要求46所述的系统,其特征在于,还包括完整性证明和验证设备,所述完整性证明和验证设备具有对所述应用程序完整性概况的访问权,以确定关于一个或多个应用程序、系统或系统组件的所述认证信息。
49.如权利要求45所述的系统,其特征在于,还包括用于通过将所述一个或多个应用程序、系统或系统组件的特性和行为对照所述BIP规范进行验证来确定BIP遵循状态的组件注册设备。
50.如权利要求46所述的系统,其特征在于,所述BIP包括BIP标识,注册的应用程序、系统或系统组件的标识,以及遵循状态中的至少一个。
51.如权利要求6所述的系统,其特征在于,还包括用于以BIP标识以及注册的应用程序、系统或系统组件的标识来维护BIP的概况数据库。
52.如权利要求45所述的系统,其特征在于,还包括用于通过检查已向其发行了所述BIP的所述应用程序、系统或系统组件的遵循状态来验证BIP遵循的证据的概况验证设备。
53.如权利要求45所述的方法,其特征在于,还包括:用于从应用程序、系统或系统组件提供方获取关于所述一个或多个应用程序、系统或系统组件的认证信息的注册申请设备。
54.如权利要求50所述的系统,其特征在于,还包括用于将所述BIP标识与分发的信息结合在一起使用的装置。
55.如权利要求45所述的系统,其特征在于,还包括用于分发与所述BIP相关联的内容信息的内容提供方。
56.如权利要求45所述的系统,其特征在于,还包括应用程序、系统或系统组件提供方。
57.如权利要求54所述的系统,其特征在于,还包括概况验证设备,其中当所述BIP标识被与所述分发的信息结合在一起使用时,如果所述概况验证设备确定所述一个或多个应用程序、系统或系统组件不可信或不遵循所述BIP规范,则对与所述一个或多个应用程序、系统或系统组件相关联的内容的访问被拒绝。
58.如权利要求45所述的系统,其特征在于,还包括用于通过从组件数据库取得与所述一个或多个应用程序、系统或系统组件相对应的遵循状态和应用程序标识信息来建立所述BIP的BIP创建设备。
59.如权利要求45所述的系统,其特征在于,还包括:用于评估所述BIP以使得能确定所述一个或多个应用程序、系统或系统组件的特性和行为是否遵循在所述BIP规范中定义的所述特性的装置;以及
用于基于所述评估来确定所述访问权的装置。
60.如权利要求59所述的系统,其特征在于,还包括用于验证所述一个或多个应用程序、系统或系统组件的所述BIP遵循状态的装置。
61.如权利要求59所述的系统,其特征在于,所述访问权包括允许或拒绝对与所述一个或多个应用程序、系统或系统组件相关联的内容的访问的权限中的至少一个。
62.如权利要求59所述的系统,其特征在于,还包括用于获取关于所述一个或多个应用程序、系统或系统组件中的至少一个的认证信息的装置。
63.如权利要求45所述的系统,其特征在于,还包括用于数字式签名所述BIP的装置。
64.如权利要求63所述的系统,其特征在于,还包括用于向使用方的系统发送所述数字地签名的BIP的装置。
65.如权利要求45所述的系统,其特征在于,还包括用于验证与所述一个或多个应用程序、系统或系统组件相关联的完整性认证方的所述完整性的装置。
66.如权利要求46所述的系统,其特征在于,还包括:
具有对关于所述一个或多个应用程序、系统或系统组件的认证信息的访问权的完整性证明和验证设备;以及
用于提供用于确定所述一个或多个应用程序、系统或系统组件的所述可信性的所述AIP的装置。
67.如权利要求66所述的系统,其特征在于,还包括:用于从所述认证信息中确定所述AIP的组件注册设备,所述AIP包括注册的应用程序、系统或系统组件的可验证信息和标识中的至少一个。
68.如权利要求66所述的系统,其特征在于,还包括用于维护注册的应用程序、系统或系统组件的所述AIP以及标识的概况数据库。
69.如权利要求66所述的系统,其特征在于,还包括用于通过比较应用程序、系统或系统组件标识,所述一个或多个应用程序、系统或系统组件,所述AIP,和/或AIP标识中的一个或多个来验证可信性的概况验证设备。
70.如权利要求66所述的系统,其特征在于,还包括用于从应用程序、系统或系统组件提供方获取关于所述一个或多个应用程序、系统或系统组件的所述认证信息的注册申请设备。
71.如权利要求66所述的系统,其特征在于,所述AIP包括可与分发的信息结合在一起使用的所述一个或多个应用程序、系统或系统组件的标识。
72.如权利要求66所述的系统,其特征在于,还包括用于分发与所述一个或多个应用程序、系统或系统组件相关联的内容信息的内容提供方。
73.如权利要求66所述的系统,其特征在于,还包括应用程序、系统或系统组件提供方。
74.如权利要求66所述的系统,其特征在于,还包括概况验证设备,其中如果所述概况验证设备确定所述一个或多个应用程序、系统或系统组件是不可信的,则对与所述一个或多个应用程序、系统或系统组件相关联的一个或多个文档的访问被拒绝。
75.如权利要求66所述的系统,其特征在于,还包括用于基于关于所述一个或多个应用程序、系统或系统组件的可验证信息来确定所述AIP的概况创建设备。
76.如权利要求46所述的系统,其特征在于,还包括用于证明所述AIP的装置。
77.如权利要求46所述的系统,其特征在于,还包括用于验证一个或多个应用程序、系统或系统组件的所述可信性的装置。
78.如权利要求46所述的系统,其特征在于,所述访问权包括允许或拒绝对与所述一个或多个应用程序、系统或系统组件相关联的内容的访问的权限中的至少一个。
79.如权利要求46所述的系统,其特征在于,还包括用于获取关于所述至少一个应用程序、系统或系统组件的认证信息的装置。
80.如权利要求46所述的系统,其特征在于,还包括用于数字地签名所述AIP的装置。
81.如权利要求80所述的系统,其特征在于,还包括用于向使用方的系统发送所述数字地签名的完整性概况的装置。
82.如权利要求46所述的系统,其特征在于,还包括用于验证与所述AIP相关联的完整性认证方的所述完整性的装置。
83.如权利要求45所述的系统,其特征在于,还包括用于建立一个与所述一个或多个应用程序、系统或系统组件相关联的防窜改环境的装置。
84.如权利要求46所述的系统,其特征在于,还包括用于验证所述AIP的装置。
85.如权利要求46所述的系统,其特征在于,还包括用于加载有效AIP的装置。
86.如权利要求82所述的系统,其特征在于,所述用于验证的装置包括用于确定所述完整性认证方未受监视、控制或记录中的至少一个的装置。
87.如权利要求45所述的系统,其特征在于,所述系统被实现为一个或多个计算机软件和/或硬件设备。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2005/014741 WO2006118561A1 (en) | 2005-04-29 | 2005-04-29 | Systems and methods for integrity certification and verification |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101167290A true CN101167290A (zh) | 2008-04-23 |
Family
ID=37308255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2005800496063A Pending CN101167290A (zh) | 2005-04-29 | 2005-04-29 | 用于完整性证明和验证的系统和方法 |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP1884052A4 (zh) |
JP (1) | JP2008539502A (zh) |
KR (1) | KR101034127B1 (zh) |
CN (1) | CN101167290A (zh) |
WO (1) | WO2006118561A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101883360A (zh) * | 2009-05-08 | 2010-11-10 | 三星电子株式会社 | 用于在移动终端中验证软件包的完整性的系统和方法 |
CN102480472A (zh) * | 2010-11-22 | 2012-05-30 | 英业达股份有限公司 | 企业内网络的应用程序整合登录方法及其验证服务器 |
CN110086828A (zh) * | 2019-05-14 | 2019-08-02 | 长讯通信服务有限公司 | 基于网页云服务的通信工程项目生命周期可信管理方法 |
US20220224608A1 (en) * | 2015-12-23 | 2022-07-14 | Apstra, Inc. | Verifying service status |
US11973645B1 (en) | 2019-04-24 | 2024-04-30 | Juniper Networks, Inc. | Business policy management for self-driving network |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010061801A1 (ja) * | 2008-11-28 | 2010-06-03 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 機密ファイルを保護するためのクライアント・コンピュータ、及びそのサーバ・コンピュータ、並びにその方法及びコンピュータ・プログラム |
KR101370266B1 (ko) * | 2012-07-20 | 2014-03-06 | 한국항공우주산업 주식회사 | Crc tool을 이용한 ofp 무결성 입증 방법 |
CN104008351B (zh) * | 2014-05-06 | 2017-03-15 | 武汉天喻信息产业股份有限公司 | Windows应用程序完整性校验系统、方法及装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6658568B1 (en) | 1995-02-13 | 2003-12-02 | Intertrust Technologies Corporation | Trusted infrastructure support system, methods and techniques for secure electronic commerce transaction and rights management |
US6931545B1 (en) * | 2000-08-28 | 2005-08-16 | Contentguard Holdings, Inc. | Systems and methods for integrity certification and verification of content consumption environments |
US6980927B2 (en) * | 2002-11-27 | 2005-12-27 | Telos Corporation | Enhanced system, method and medium for certifying and accrediting requirements compliance utilizing continuous risk assessment |
US20040266533A1 (en) * | 2003-04-16 | 2004-12-30 | Gentles Thomas A | Gaming software distribution network in a gaming system environment |
US20050027657A1 (en) | 2003-08-01 | 2005-02-03 | Yuri Leontiev | Distinguishing legitimate hardware upgrades from unauthorized installations of software on additional computers |
US9064364B2 (en) | 2003-10-22 | 2015-06-23 | International Business Machines Corporation | Confidential fraud detection system and method |
-
2005
- 2005-04-29 EP EP05741715A patent/EP1884052A4/en not_active Withdrawn
- 2005-04-29 CN CNA2005800496063A patent/CN101167290A/zh active Pending
- 2005-04-29 WO PCT/US2005/014741 patent/WO2006118561A1/en active Application Filing
- 2005-04-29 JP JP2008508812A patent/JP2008539502A/ja active Pending
- 2005-04-29 KR KR1020077027952A patent/KR101034127B1/ko not_active IP Right Cessation
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101883360A (zh) * | 2009-05-08 | 2010-11-10 | 三星电子株式会社 | 用于在移动终端中验证软件包的完整性的系统和方法 |
CN101883360B (zh) * | 2009-05-08 | 2015-02-25 | 三星电子株式会社 | 用于在移动终端中验证软件包的完整性的系统和方法 |
US9832651B2 (en) | 2009-05-08 | 2017-11-28 | Samsung Electronics Co., Ltd | System and method for verifying integrity of software package in mobile terminal |
CN102480472A (zh) * | 2010-11-22 | 2012-05-30 | 英业达股份有限公司 | 企业内网络的应用程序整合登录方法及其验证服务器 |
CN102480472B (zh) * | 2010-11-22 | 2015-07-22 | 英业达股份有限公司 | 企业内网络的应用程序整合登录方法及其验证服务器 |
US20220224608A1 (en) * | 2015-12-23 | 2022-07-14 | Apstra, Inc. | Verifying service status |
US11876699B2 (en) * | 2015-12-23 | 2024-01-16 | Apstra, Inc. | Verifying service status |
US11973645B1 (en) | 2019-04-24 | 2024-04-30 | Juniper Networks, Inc. | Business policy management for self-driving network |
CN110086828A (zh) * | 2019-05-14 | 2019-08-02 | 长讯通信服务有限公司 | 基于网页云服务的通信工程项目生命周期可信管理方法 |
Also Published As
Publication number | Publication date |
---|---|
EP1884052A1 (en) | 2008-02-06 |
WO2006118561A1 (en) | 2006-11-09 |
JP2008539502A (ja) | 2008-11-13 |
EP1884052A4 (en) | 2011-03-23 |
KR101034127B1 (ko) | 2011-05-13 |
KR20080006638A (ko) | 2008-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11544670B2 (en) | Distributed data store for managing media | |
US20050262086A1 (en) | Systems and methods for integrity certification and verification | |
KR101298293B1 (ko) | 제1 플랫폼으로부터 제2 플랫폼으로의 디지털 라이센스이주 | |
US7788271B2 (en) | Content distribution server, content distribution method, and program | |
RU2378772C2 (ru) | Воспроизведение цифрового контента в системе защиты контента согласно множеству цепных цифровых лицензий | |
KR101143228B1 (ko) | 디지털 콘텐츠 권리 관리 아키텍처로의 drm 서버등록/부등록 방법 | |
US7062650B2 (en) | System and method for verifying integrity of system with multiple components | |
JP5450392B2 (ja) | コンテンツライセンスのポータブル記憶装置へのバインド | |
US20090307759A1 (en) | Temporary Domain Membership for Content Sharing | |
CN101167290A (zh) | 用于完整性证明和验证的系统和方法 | |
CN1981262B (zh) | 受信任许可证的移除 | |
US8291508B2 (en) | Method and system for processing content | |
CN115552441A (zh) | 低信任特权访问管理 | |
CN101189675A (zh) | 记录介质、再现数据的装置及其方法、存储数据的装置及其方法 | |
JP2003202932A (ja) | コンピュータプログラムの実行を制御する方法 | |
CN101689989A (zh) | 创建和确认密码保护文档 | |
KR20070003518A (ko) | 디지털 극장의 영화 컨텐츠 송출 시스템 및 그 방법 | |
WO2020085226A1 (ja) | 制御方法、コンテンツ管理システム、プログラム、及び、データ構造 | |
JP4410185B2 (ja) | 情報処理装置及びその方法、プログラム | |
JP6231672B2 (ja) | 電話認証基盤の情報流出防止方法及びシステム | |
CN100472508C (zh) | 受保护的媒体路径与拒绝响应使能器 | |
CN113807801A (zh) | 基于区块链的不动产信息管理方法和装置 | |
KR20070097738A (ko) | 플래시 메모리 카드를 이용한 컨텐츠 제공 방법 및 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20080423 |