CN1953459A - 内容消费环境的完整性验证和确认的系统和方法 - Google Patents

内容消费环境的完整性验证和确认的系统和方法 Download PDF

Info

Publication number
CN1953459A
CN1953459A CN 200610136581 CN200610136581A CN1953459A CN 1953459 A CN1953459 A CN 1953459A CN 200610136581 CN200610136581 CN 200610136581 CN 200610136581 A CN200610136581 A CN 200610136581A CN 1953459 A CN1953459 A CN 1953459A
Authority
CN
Grant status
Application
Patent type
Prior art keywords
systems
methods
integrity
certification
verification
Prior art date
Application number
CN 200610136581
Other languages
English (en)
Inventor
T·塔
X·王
Original Assignee
康坦夹德控股股份有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Family has litigation

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for supporting authentication of entities communicating through a packet data network
    • H04L63/0823Network architectures or network communication protocols for network security for supporting authentication of entities communicating through a packet data network using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to network resources
    • H04L63/104Grouping of entities

Abstract

诸如文档发行者或分发者的内容供应者,向用户提供例如被保护内容,以用于在信任的用户环境中的消费。通过提供完整性验证和确认设备,验证内容消费环境的真实性。内容供应者将包括例如许可协议和完整性简档表标识的被保护的数字内容版本,转送给用户。该简档表包括例如被允许与被保护内容结合使用的应用程序和系统构件。此外,内容供应者启动对完整性简档表的请求。该对完整性简档表的请求被转送到完整性验证和确认设备。如果不存在用于所请求的应用程序和/或系统构件的完整性简档表,则完整性验证和确认设备能够询问将系统构件供应给用户的内容消费系统/应用程序供应者。该供应者返回关于特定应用程序或系统构件的完整性验证和确认设备的验证信息。该信息在用户系统上的应用程序和/或系统构件与由内容消费系统/应用程序供应者分发的原始应用程序或系统构件之间,进行比较或完整性验证。

Description

内容消费环境的完整性验证和确认的系统和方法

本申请是申请日为“2001年8月28日”、申请号为“01814836.0”、题为“内容消费环境的完整性验证和确认的系统和方法”的分案申请。

技术领域

本发明涉及完整性(integrity)验证和确认。本发明具体涉及在内容消费环境中的完整性验证和确认。

背景技术

阻碍通过电子商务广泛分发数字文件的一个最重要的问题是,在如今数字文件的分发和使用中,缺乏对内容拥有者和供应者的知识产权保护。解决这个问题的工作被称为知识产权管理(IPRM),数字产权管理(DPRM),知识财产管理(IPM),数字权管理(DRM),权利管理(RM)和电子著作权管理(ECM)。

内容供应者经常希望他们的内容由具有所需特征和/或行为的验证应用程序和系统来消费。公开密钥基础结构(PKI)的直接使用,使应用程序和系统供应者能够确证他们自己的产品,使内容供应者能够验证用于消费其内容的应用程序和系统的完整性。

发明内容

不过,PKI的直接使用产生了卖方和供应者间的多对多关系。这类关系可能标定得不完善,从而难以管理这类关系,难以有效实时地进行完整性验证。

内容供应者经常希望他们的内容由用希望的特征和行为的验证应用程序和系统来消费。通过控制内容消费环境的这些方面,内容供应者能够限制诸如复制,打印,嵌入,分发等使用。

例如,内容供应者可希望要求消费内容的系统带有某一等级完整性和权限管理能力,保护内容不被滥用。该内容供应者也可希望在用户系统上,保证没有诸如调试器,病毒,监听程序等,会挪用或“偷窃”内容或其它敏感信息的“异类”应用程序干扰内容消费应用程序。比如,在此处完全引用标题为“DocumentDistribution Management Method And Apparatus Using A Standard RenderingEngine And A Method And Apparatus For Controlling A Standard RenderingEngine”的代理号为111325 000002文件,在文中,通过控制用户系统的功能,限制用户访问和控制文件。

为了验证带有所需特征和行为的给定应用程序和系统,需要验证所有的应用程序和系统构件,来消费由验证应用程序确认的内容。

本发明描述了为内容消费环境提供验证和确认服务的系统和方法。在这样的系统中,内容供应者和内容消费系统/应用程序供应者间,引入了提供这些服务的完整性验证和确认设备。这个验证设备注册来自各个供应者的各个应用程序和/或系统,根据预定的选择确认这些应用程序和/或系统对内容供应者的完整性。通过使用这个设备,内容供应者能够“确信”(trust)完整性验证和确认系统。经过这个确信,供应者建立了允许消费其内容的一系列验证和确认设备的简档表,并且根据这个简档表,在用户系统上验证用户的这一系列应用程序和系统是真实的。

具体而言,这个发明的系统和方法为消费环境中的例如文档内容完整性提供了验证和确认服务。在这个环境中,在内容供应者、内容消费系统和应用程序供应者间,引入提供这些服务的完整性验证和确认设备,它们可以分布于诸如个人计算机,手提计算机,PDAs,多媒体显示装置,DVD播放器,分布式网络电话,以及应用程序例如可以是文字处理器,文件浏览器,多媒体播放器等等。完整性验证和确认设备注册来自各个内容消费系统/应用程序供应者的各个应用程序和/或系统,并且对内容供应者证明这些应用程序和系统。用这个设备,内容供应者可以选择或确信这个完整性验证和确认设备,建立允许消费其内容的一系列应用程序和系统的简档表,并根据该简档表在用户系统上验证在其上的那个系列应用程序和系统是真实的。在这种方式中,可以对请求或提交的内容控制由用户访问或控制的范围。

在这里所述用的术语文档,是被分发或传送的任意信息主题单元,包括但不限于,信件,书,杂志,期刊,新闻报纸,其它报纸,软件,插件,照片和其它图像,音频和视频剪切,和其它多媒体表示。文档可以是纸张印刷形式,存储介质上的数据形式,或任意其它已知或未来将出现的各种介质或软件,例如包括光盘(CD),数字视频光盘(DVD),激光影碟,磁介质和磁光介质,等等。

本发明系统和方法提供完整性验证和确认服务。

本发明为内容消费环境分别提供用于完整性验证和确认服务的系统和方法。

本发明也为确定完整性简档表分别提供系统和方法。

本发明此外还为验证一个或更多系统环境的完整性分别提供系统和方法。

本发明也为管理完整性简档表,系统和系统构件信息提供系统和方法。

本发明另外还通过使用完整性简档表,提供在用户系统上执行完整性检查的系统和方法。

特别是诸如文档发布者或分发者的内容供应者,它启动对完整性简档表的请求,并转送到完整性验证和确认设备。如果还不存在用于请求的应用程序和系统构件的完整性简档表,完整性验证和确认设备将对例如向用户提供各种系统构件和/或应用程序的内容消费系统/应用程序供应者进行询问。内容消费系统/应用程序提供者返回关于特别应用程序或系统构件的完整性验证和确认设备的认证信息。在用户系统上的应用程序或系统构件和由内容消费系统/应用程序供应者分发的初始应用程序或系统构件之间,能够通过认证信息进行比较或完整性验证。

在构件数据库中存储用于系统应用程序和构件的认证信息,在简档表数据库中存储内容供应者所需的简档表。另一方面,内容消费系统/应用程序供应者也可以保持认征信息数据库,其中认证信息可以直接转送到完整性验证和确认设备各自的数据库,而无须完整性验证和确认设备来确定完整性简档表。接着,对应于确定的完整性简档表的完整性简档表的标识被返回给内容供应者。

诸如文档分发者的内容供应者例如向用户提供被保护的内容。内容供应者向用户转送被保护的数字内容版本,例如包括许可协议和完整性简档表标识。完整性简档表标识包括可与被保护内容联合使用的应用程序和系统构件,和用于那些系统/应用程序的完整性简档表标识。

在用户系统的请求下,拥有了从内容消费系统/应用程序供应者取得认证信息,完整性验证和确认设备将完整性简档表转送到用户系统。利用这个完整性简档表可执行用户系统的完整性验证。如果确定用户系统的构件/应用程序是真实的,则例如根据附加的简档表信息,就可由用户应用程序和系统访问由内容供应者提供的数字内容。

不过须注意,对完整性验证的请求发起不一定需要有供应者。反过来说,通过嵌入在简档表识别信息中的随被保护内容从内容供应者转送到用户系统的软件应用程序,能够发起完整性请求。

另外,内容供应者也可以用作完整性验证和确认设备。在这种情况中,内容供应者通过取得适当的认证信息并确定完整性简档表是供内容供应者自己使用时,自己就可以进行完整性验证和确认服务。

此外,内容消费应用程序/系统供应者也能够起到完整性验证和确认设备的作用。在这种情况中,该内容消费应用程序/系统供应者例如也可以提供完整性简档表和相应的应用程序和/或系统构件。

根据本发明的第一方面,提供一种在内容消费或计算环境中提供被保护的执行环境的系统,所述系统包括:至少一个用于内容消费的应用程序,在所述被保护的执行环境中运行;完整性认证器,用于在运行所述被保护的执行环境中的应用程序之前验证所述用于内容消费的应用程序的完整性;以及监控器,用于保护所述完整性认证器以及所述在被保护执行环境中运行的用于内容消费的应用程序不被监控或调试。

根据本发明的第二方面,提供一种在内容消费或计算环境中提供被保护的执行环境的方法,所述方法包括:建立被保护的执行环境,用于保护在所述被保护执行环境中消费的内容;保护在所述被保护执行环境中消费的内容,其中所述保护步骤进一步包括:验证消费所述被保护执行环境中的内容的应用程序的完整性;如果验证了所述应用程序的完整性,则运行该应用程序;和监控所述应用程序不被监控或调试。

在下面较佳实施例的详细描述中,描述了本发明上述和其它的特征和优点。

附图说明

通过引用附图,将详细描述本发明的较佳实施例,其中:图1是根据本发明,示出完整性验证和确认系统的第一个示范实施例的功能概图。

图2是根据本发明,示出完整性验证和确认系统的第一个示范实施例的功能方框图。

图3是根据本发明,示出完整性验证和确认系统的示范工作流程图。

图4是根据本发明,示出的完整性简档表的示范结构。

图5是根据本发明,示出的示范环境堆栈。

图6是根据本发明,示出的示范环境堆栈。

图7是根据本发明,示出的示范堆栈工作流程。

图8是根据本发明,示出的示范堆栈工作流程。

图9是根据本发明,示出的操纵堆栈的示范方法。

图10是根据本发明,通过使用调试防止动态篡改的示范方法。

图11是根据本发明,用于完整性验证和确认方法的一个示范实施例的概要流程图。

图12是根据本发明,用于注册应用程序和/或系统的方法的一个示范实施例的概要流程图。

图13是根据本发明,用于确定完整性简档表的方法的一个示范实施例的概要流程图。

图14是根据本发明,用于验证完整性认证器的完整性的方法的一个示范实施例的概要流程图。

具体实施方式

本发明提供了确定内容消费环境完整性的验证和确认服务的系统和方法。在该系统中一个或更多的内容供应者和一个或更多的内容消费系统及应用程序供应者间,引入了完整性验证和确认设备。该完整性验证和确认设备从内容消费供应者和/或系统供应者取得认证信息。该认证信息使内容供应者相信内容将被提供到的环境。这样,根据由内容消费应用程序和系统供应者接收的认证信息,建立完整性简档表。接着,这个简档表转送到用户系统,确认用户没有在未授权的方式下,改变,修改,或干涉内容供应者提供的数字内容。

图1示出用于执行完整性验证和确认的示范系统。具体而言,完整性验证和确认系统100包括完整性验证和确认设备200,内容供应者和/或分发者300,用户系统400,内容消费环境/应用程序供应者500,构件数据库260和简档数据库270。

在示范的操作环境中,内容消费系统/应用程序供应者500为用户提供了应用程序,系统和/或软件/硬件构件。用户系统400使文档等数字内容消费,该内容由内容供应者和300分发者提供。为验证用户系统400的完整性,完整性验证和确认设备200,采集并注册来自内容消费系统/应用程序供应者500的,关于各个应用程序,系统和/或软件/硬件构件的认证信息。使用这个认证信息,根据来自内容供应者300的服务请求20,完整性验证和确认设备200确定并验证一个或更多的应用程序,系统和/或系统构件的完整性简档表。然后,这个确定的完整性简档表50转送到用户系统400,这样可以确定用户系统400的完整性。

在操作中,内容供应者和分发者300提供文档等数字内容到用户系统400。用户系统400包括一个或更多的系统构件,诸如硬件构件和/或各种软件应用程序。这些应用程序和硬/软件构件通常由用户从一个或更多的内容消费系统/应用程序供应者(诸如计算机供应商,软件仓库,应用程序供应者,等等)得到。这些应用程序以及硬件和软件构件,随后,如果没有完成组装,将由用户在适当的时间候组装和安装,使用户能消费文档等内容。

这样,在使用用户环境的应用程序和硬件/软件的过程中,用户可能想要查看文档等被保护的内容。这样,用户400将从内容供应者300请求一个或更多的文件,诸如电子书籍,多媒体文件,图像,模板,等等。收到这些请求后,内容供应者和分发者300可以将在被保护形式中的所需内容和简档表标识10提供给最终用户400。这个简档表标识10包括诸如关于从中可见到的应用程序被保护内容的细节,和在特定软/硬件环境中被提供内容可以操作的范围。

此外,内容供应者300可以把服务请求20转送到完整性验证和确认设备200。该服务请求20可例如包括一个构件和/或软件应用程序的列表,在其上列有内容供应者300允许用户系统400消费所分发的被保护内容。由完整性验证和确认设备200确定,是否在服务请求20中标识的构件和应用程序/软件有存储在构件数据库260中和/或简档表数据库270中的相关的认证信息,如果没有这种信息,则该设备200可向一个或更多的内容消费系统/应用程序供应者500请求关于特定应用程序,系统,硬/软件构件等的认证信息。用这个认证信息,该设备200将在构件数据库260中存储属于应用程序和系统构件的信息。另外,完整性验证和确认设备200可以为一个或更多的应用程序开发完整性简档表。用这个确认应用程序、系统和系统构件的认证的信息,该完整性验证和确认设备200将完整性简档表50转送到用户系统400。这个完整性简档表50用于确认用户系统400的系统,系统构件和/或应用程序的真实性,如果被确定为真实的,则将被保护内容10解保护,从而用户系统400可依照完整性简档表,见到或操作被保护内容。

图2是根据本发明的一个示范实施例,示出的完整性验证和确认环境100的构件概图。具体而言,完整性验证和确认环境100包括一个或更多的内容供应者300,一个或更多的用户系统400,一个或更多的完整性验证和确认装置200,和一个或更多的内容消费系统/应用程序供应者500。

内容供应者300例如可包括控制器310,存储器320,I/O控制器330和内容数据库340。不过须注意,内容供应者300也可以用更常规的方式分发内容。例如,内容供应者可以分发含有内容的光盘,光盘可被通过邮政服务邮寄给用户。本发明的系统和方法可用任意类型的分发和分配处理。

完整性验证和确认设备200包括控制器210,存储器220和I/O控制器230,数字签名装置240,构件注册装置250,构件数据库260,简档表数据库270,简档表创建装置280,简档表分发装置290和简档表验证装置295。完整性验证和确认设备200提供下列服务:构件注册服务和完整性简档表服务。注册服务能够对来自各个供应者的应用程序,系统,和/或软/硬件作为真实的进行注册,并带有所需的特征,目的和/或行为。

完整性简档表服务为内容供应者提供服务,建立和检索完整性简档表。完整性简档表是一种具有任选项数字签名的文档,包含可验证的信息和一系列要消费被保护文档内容的已注册的系统构件。完整性简档表一旦创建,其标识会返回给内容供应者。内容供应者包括完整性简档表标识和任选项被保护文档的使用许可。当消费被保护文档的内容并需要传送用户的系统和环境的本地完整性验证时,完整性简档表可从完整性验证和确认设备200检索到用户系统。

用户系统可400包括控制器410,存储器420,I/O控制器430,存储设备440,完整性认证设备450和简档表存储设备460。不过须理解,这个示范用户系统是基于计算机模型,而用户系统的构件可以依照例如所消费内容的类型而改变。通常本发明的系统和方法可包括任何带有完整性可被检验的部分的用户系统。

内容消费系统/应用程序供应者500可例如包括,控制器510,存储器520,I/O控制器530,注册应用程序设备540,应用程序数据库550和系统数据库560。不过,类似于内容供应者300,内容消费系统/应用程序供应者可以有几个不同的形式,该形式依赖于内容消费系统/应用程序供应者500提供的系统和/或应用程序。例如,如果内容消费系统/应用程序供应者500提供了特定的硬件构件,内容消费系统/应用程序供应者500可以不保持应用程序和系统数据库。另外,例如系统/设备构件供应者可以在盘片上直接发送认证信息到完整性验证和确认设备200。

此外,内容消费系统/应用程序供应者500可以和内容供应者300协调一起促进完整性简档表的确定。通常,内容消费系统/应用程序供应者可以同样是能够提供硬件或软件和认证信息的任何实体。

虽然在这个示范实施例中,内容消费系统/应用程序供应者500由不同的系统构件组成,须理解内容消费系统/应用程序供应者500可以是计算机分配者,软件开发者,软件供应者,软件分发者等等。这样,内容消费系统/应用程序供应者500能够提供允许消费由内容供应者300提供的内容的设备和/或软件。

完整性验证和确认环境100的各种构件能够通过链路5互相通信,链路5可以是有线或无线链路,或任意其它已知或将来开发的,能够从互连构件发送或接收电子数据的构件。例如链路5可以是一个或多个分布网络,其依次连接到一个或多个附加的完整性验证和确认环境100,或连接到内容供应者300,用户系统400,内容消费系统/应用程序供应者500和完整性验证和确认设备200中任意一个或多个的多重实例。

##在用户系统400的用户请求下,内容供应者300将文档等内容分发到用户系统400。具体而言,从用户系统400的内容供应者300可以接收请求。这个请求,通过I/O控制器330接收,并由控制器310结合存储器320处理,以从内容数据库340检索请求内容。比如,内容供应者300可以是在线内容供应者,书店,软件供应者,或任意其它希望将例如文档等内容提供给用户的内容供应者。

在接收到来自用户系统400的内容请求后,内容供应者300将所请求内容和关于被保护内容的附加信息送回到用户系统。这个附加信息可以包括简档表标识。另外,附加信息可以包括指示用户系统以请求简档表的信息,和在启用内容前的完整性验证。

##因而,在存储在一个或多个存储器420和存储设备440中的控制器410的指示下,用户系统400通过I/O控制器430,接收一个或更多的所需内容,附加信息和简档表标识。

在一个示范实施例中,内容供应者300可以启动,诸如来自完整性验证和确认设备260的,对完整性简档表的服务请求20。完整性验证和确认设备260通过I/O控制器230并结合控制器210和存储器220,接收来自内容供应者300的服务请求。

如上所述,完整性验证和确认设备200包括构件数据库260和简档表数据库270。构件数据库260存储属于系统和系统构件的,可以由一个或更多的内容消费系统/应用程序供应者500分发的认证信息。类似地,简档表数据库270为一个或多个单个内容供应者300存储可验证信息和一系列要消费被保护文件内容的注册系统构件。

这样,在为完整性简档表接收来自内容供应者300的请求后,在控制器210的指引下和存储器220的协助下,完整性验证和确认设备200查找构件数据库260和简档表数据库270,确定是否已经存在对应于服务请求信息的认证信息。

另外,完整性验证和确认设备200可以执行在线验证服务。在线验证服务提供比如在完整性验证和确认设备200内实时执行在线完整性验证。为启动这个服务,将一个称作完整性认证器的软件转送到用户系统400。完整性认证器采集本地软件和/或硬件构件的信息。另外,完整性认证器可以是专用设备,诸如图2所示的完整性认证设备。采集的关于本地软件和/或硬件构件信息和完整性简档表标识一起被返回给完整性验证和确认设备200,从而执行在线完整性检验。构件注册设备250检查来自各自的供应者的软/硬件构件,并在构件数据库260中存储标识信息。属于软/硬件构件的信息可以被进行散列操作,又散列值可以用作真实软件/硬件的标识。但是须注意,标识各个软/硬件构件的信息可是任何已知的或未来将开发的能允许对硬件和/或软件的真实片段进行标识的方法。

在下面叙述特定软件和/或硬件构件的注册。例如,内容消费系统/应用程序供应者500可与完整性验证和确认设备200的通信以请求注册服务,或者,另一方面,标识和验证确认设备200也可与内容消费系统/应用程序供应者500通信以确保认证信息。在这个例子中,注册应用程序设备540结合控制器510,存储器520和I/O控制器530,查找一个或多个应用程序数据库550和系统数据库560,以确保关于特定软件和/或硬件的信息,例如供应者名称,构件标识,诸如序列号,版本号,创建号等,或应用程序本身。

例如,在一个特别的操作情景中,完整性验证和确认设备200可以从内容消费系统/应用程序供应者500请求诸如软件应用程序的特定应用程序,而不是从该特定内容消费系统供应者500处获取认证信息。这样,完整性验证和确认设备200不需要认证信息,就可以直接从内容消费系统/应用程序供应者500确保特定的软件应用程序。

构件注册设备250验证构件信息,可任选地计算可被例如用于作为真实的软件和/或硬件标识的散列值。然后,构件注册设备250在构件数据库260中存储构件信息和散列值。

另一方面,内容消费系统/应用程序供应者500可以不发送软件和/或硬件构件到注册应用程序设备540,而是连接到构件注册设备250,以下载小的诸如注册应用程序的软件应用程序,并在本地执行这个程序。这个注册应用程序将检查目标软件/硬件构件,并且将属于这个软件/硬件构件的信息或许和诸如散列值的完整性数据一起,发送回到随后可能在构件数据库260中存储关于该构件的认证信息的构件注册设备250。

另外,简档表创建设备280为软件创建完整性简档表。特别地,可以从构件数据库检索各个软件应用程序的诸如散列值的完整性数据并将其存储。该简档表还包括了任选的构件间的互动关系。这种关系用于标识构件的调用和返回次序,防止构件和其它构件发生不希望的交互动作。然后,对完整性简档表的内容作数字化签名,并把所产生的签名添加到完整性简档表。每个完整性简档表与唯一的标识相关联。

图3示出了由完整性验证和确认设备200提供的输入,输出,服务和操作的示范性工作流程。特别对于构件注册服务,可把关于特别构件的构件标识以及任选地把它的元信息转送到构件注册设备250。构件注册设备250在构件数据库中注册该构件,并可带有所需的特征,目的和行为。然后,构件注册设备250将已注册的构件的标识返回到例如内容消费系统/应用程序供应者,并使该标识可用于例如内容供应者300。

在简档表创建中,简档表创建设备280接收已注册构件的标识。已注册构件标识可先与相关构件信息(如果有的话)结合,然后数字化签名并被存储到简档表数据库中。将完整性简档表标识返回给请求者。

类似的,简档表分发设备290接收完整性简档表标识。然后,询问简档表数据库270,确定对应于完整性简档表标识的完整性简档表是否可供使用。如果可以,则将完整性简档表返回给请求者。不然,则在简档表创建设备280的辅助下,确定完整性简档表。

简档表验证设备295接收识别一个或更多的构件和完整性简档表标识的信息。简档表验证设备比较构件标识,完整性简档表标识和相应的完整性简档表,来确定验证数据。如果简档表与构件和标识符合,则验证了系统的完整性。不然,该系统就不是完整性简档表所指定的系统,或在某些方面被改动了。

图4示出了示范的完整性简档表。通过简档表创建设备280可以创建这个示范完整性简档表。为了给已认证的内容供应者建立完整性简档表,可开始请求创建一个完整性简档表。例如,供应者可以与完整性验证和确认设备200接触,请求创建完整性简档表,然后发送软件和/或硬件构件的名称清单给完整性验证和确认设备200。接着,简档表创建设备280,从构件数据库260检索诸如各个构件的完整性或散列值的标识。然后,该设备确定各个构件的包含诸如完整性或散列值的认证信息的完整性简档表,和其它信息,诸如完整性简档表标识,版本号,创建日期,构成日期,内容供应者名称,以及例如可任选的任何软件和/或硬件构件间的互动关系。

简档表创建设备280将已确定的完整性简档表转送到随后可对简档表内容签名的数字签名器240。然后,简档表创建设备280在简档表数据库270中存储已签名简档表,并且将简档表标识返回内容供应者300。

在创建例如用于被保护文档内容的使用许可时,内容供应者300能够任选地在使用许可中包括完整性简档表标识。在用户系统400上,完整性简档表将被用于验证鉴别在环境调用堆栈中的所有软件/硬件构件。这保证只能由授权的软件/硬件构件或任何它们的组合消费敏感信息。

简档表分发设备290接收为得到完整性简档表的请求,从简档表数据库270检索它们,并将完整性简档表返回到各个请求者。类似地,简档表验证设备295接收为一个或多个系统环境验证用户系统的请求。该简档表验证设备295根据完整性简档表,采集关于软件/硬件构件的信息,将信息与简档表核对,并且将核对后的结果返回请求者。

用户系统400包括完整性认证设备450。后者例如可在任何内容消费应用程序的顶层运行。

这样,图5示出在用户系统400上的验证系统完整性的示范系统环境堆栈。特别地,用户系统环境堆栈包括完整性认证器和一个或多个系统构件。

图6示出了环境堆栈的示例,它包括完整性认证器,插件,翻译(render)应用程序,操作系统,操作系统(OS)引导,和各个硬件。

在示范操作环境中,完整性认证设备450包含它自己的加密/解密密钥对和标识验证和确认设备的验证密钥。对于这个发明的防篡改方面,这些密钥可以隐藏在和/或嵌入在完整性认证设备400中。对那些需要使用用户信息或包含敏感文档和数据的应用程序,完整性认证设备450可以使用相关联的完整性简档表,来验证所有在用户系统环境的调用堆栈上的软件/硬件构件。

完整性验证设备450先用完整性验证和确认设备的验证密钥来验证简档表的签名。如图7-9所示,一旦验证了该签名,完整性认证设备450检查当前调用堆栈,并用在完整性简档表中提供的信息,开始认证在调用堆栈上的各个软件/硬件构件。该调用堆栈是由存储图像和所包含的函数或程序组成的连续存储块。该堆栈以后进先出的概念操作,且堆栈的基本操作是堆栈“压入”和堆栈“弹出”。压入用于把图像存储到堆栈上,推进到堆栈顶部的位置。弹出用于把数据从堆栈中移出,并将堆栈顶部恢复到先前的位置。

对于调用堆栈,当前执行的函数的图像处于堆栈顶部。在当前执行的函数启用或调用下一个函数后,下一个函数的存储图象压入到调用堆栈顶部,而调用堆栈的顶部指向下一个函数的图像。各部分堆栈图象在完成调用函数的执行后,将包含地址或返回指令。

图10示出怎样保护执行环境。特别为保护完整性认证器(IA),由作为IA一部分的信任的应用程序监控该IA的执行。该监控进程,诸如应用程序,可以是防止IA被系统中任意其它进程或应用程序监测的调试器或特定进程。在这样的环境中,当进程只能由一个进程调试时,该信任的监控程序能够用作调试器。由于监控程序是信任的应用程序,监控程序的完整性必需处于当前完整性简档表中。因此,IA在加载和运行前,将核对该信任的应用程序的完整性。信任的监控应用程序的一个功能是防止IA被其它进程监控,控制和捕获。该应用程序的另一个功能是监控当前环境,并确定环境中的改变是否是有效的。不过和IA相似,也必需保护被信任的控应用程序,而IA则扮演了保护信任的监控应用程序不被其它应用程序监控,捕获和/或控制的监控器的角色。这样的双重保护机制创造了防止其它应用程序监控该完整性认证器运行的封闭系统。

图11示出操作完整性验证和确认设备的示范方法。具体而言,控制从步骤S100开始,接着执行步骤S110。在步骤S110,确定完整性简档表。在下面的步骤S120,验证完整性简档表。其后,在步骤S130,将完整性简档表转送给用户。然后控制进入步骤S140。

在步骤S140,核对用户系统的完整性。接着,在步骤S150,确定用户系统是否是真实的。如果用户系统是真实的,则控制进入允许用户访问所需内容的步骤S160。不然,控制跳到拒绝访问内容的步骤S170。然后,控制进入控制流程结束的步骤S180。

图12示出根据本发明的注册构件/硬件和/或软件的示范方法。具体而言,控制从步骤S200开始,进入步骤S210。在步骤210,开始注册服务。下面,在步骤S220,构件供应者提供关于特定构件/硬件和/或软件的认证信息。然后,在步骤230,验证关于特定构件/硬件和/或软件的信息。接着,控制进入步骤S240。

在步骤240,确定完整性值是否需要被确定。如果需要,则控制进入确定完整性值的步骤250。不然,控制跳到存储关于构件/硬件和/或软件的认证信息的步骤260。

下面,在步骤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。

如图1-2所示,完整性验证和确认设备较佳地用单程序通用计算机或分立程序通用计算机来实现。不过,该设备也能够用专用计算机,编程微处理器或微控制器和外围集成电路,ASIC,或其它集成电路,数字信号处理器,诸如分立元件电路的硬布线电子或逻辑电路,诸如PLA,PLD,FPGA,PAL等的可编程逻辑设备来实现。一般而言,可实现有限状态机器的任何设备从而可实现图11-14中示出流程图,从而可用于实现完整性验证和确认设备。

此外,在各种计算机或工作站硬件平台中,提供可移植源代码的环境内,使用对象或面向对象软件开发技术的软件中,易于实现所述方法。另外,所揭示的完整性验证和确认设备可部分或完全地用标准逻辑电路或VLSI结构的硬件来实现。是否使用软件或硬件来实现根据本发明系统和方法取决于系统需要的速度和/或效率,特定的功能以及准备使用的特定的硬件或软件系统,或微处理器或微型计算机系统。不过,本领域的普通技术人员,无需对所述功能描述进行过多试验,就可易于将上述完整性验证和确认设备和方法,采用任何已知的或未来将开发的系统、结构、设备和/或软件加上计算机技术的知识以硬件或软件来实现。而且,所揭示的方法易于作为在可编程的通用计算机,专用计算机,微处理器,服务器等设备上的被执行的软件而实现。在这种情况下,本发明的方法和系统可用作嵌入在个人计算机或服务器中的例行程序而实现,这种例行程序比如是作为服务器或图形工作站的资源的JAVA或CGI脚本,嵌入在专用完整性验证和确认设备,web浏览器,web TV界面,PDA界面,多媒体演示设备等中。通过将该系统和方法物理结合到诸如图形工作站或专用完整性验证和确认设备的软件和/或硬件系统中,也可以实现该完整性验证和确认设备。

显然,本发明提供了用于完整性验证的系统和方法。本发明已描述了较佳的实施例,而对本领域的普通技术人员而言,相应的替换方案,修改和变化是显然的。因此,申请人认为,在本发明的精神和范围中包含了所有这样的替换方案,修改和变化。

Claims (9)

1.一种在内容消费或计算环境中提供被保护的执行环境的系统,所述系统包括:至少一个用于内容消费的应用程序,在所述被保护的执行环境中运行;完整性认证器,用于在运行所述被保护的执行环境中的应用程序之前验证所述用于内容消费的应用程序的完整性;以及监控器,用于保护所述完整性认证器以及所述在被保护执行环境中运行的用于内容消费的应用程序不被监控或调试。
2.如权利要求1所述的系统,其特征在于,所述系统还包括至少一个完整性简档表,所述完整性简档表包括在所述被保护执行环境中运行的应用程序的标识和完整性信息。
3.如权利要求1所述的系统,其特征在于,所述完整性认证器当被运行时验证所述监控器的完整性,而如果验证了所述监控器的完整性则运行所述监控器。
4.如权利要求1所述的系统,其特征在于,所述完整性认证器在运行所述用于内容消费的应用程序之前运行所述监控器。
5.如权利要求1所述的系统,其特征在于,所述完整性认证器保护所述监控器不被监控或调试。
6.一种在内容消费或计算环境中提供被保护的执行环境的方法,所述方法包括:建立被保护的执行环境,用于保护在所述被保护执行环境中消费的内容;保护在所述被保护执行环境中消费的内容,其中所述保护步骤进一步包括:验证消费所述被保护执行环境中的内容的应用程序的完整性;如果验证了所述应用程序的完整性,则运行该应用程序;和监控所述应用程序不被监控或调试。
7.如权利要求6所述的方法,其特征在于,所述建立步骤包括:运行完整性认证器,该完整性认证器当被运行时,验证用于内容消费的应用程序的完整性,且如果验证了所述应用程序的完整性则运行该应用程序;验证所述监控器的完整性,且如果验证了所述监控器的完整性则运行该监控器。
8.如权利要求6所述的方法,其特征在于,所述被保护的执行环境包括至少一个完整性简档表。
9.如权利要求6所述的方法,其特征在于,所述建立步骤进一步包括:验证所述完整性简档表的完整性并加载所述完整性简档表。
CN 200610136581 2000-08-28 2001-08-28 内容消费环境的完整性验证和确认的系统和方法 CN1953459A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US09649838 US6931545B1 (en) 2000-08-28 2000-08-28 Systems and methods for integrity certification and verification of content consumption environments

Publications (1)

Publication Number Publication Date
CN1953459A true true CN1953459A (zh) 2007-04-25

Family

ID=24606431

Family Applications (2)

Application Number Title Priority Date Filing Date
CN 200610136581 CN1953459A (zh) 2000-08-28 2001-08-28 内容消费环境的完整性验证和确认的系统和方法
CN 01814836 CN1291326C (zh) 2000-08-28 2001-08-28 内容消费环境的完整性验证和确认的系统和方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN 01814836 CN1291326C (zh) 2000-08-28 2001-08-28 内容消费环境的完整性验证和确认的系统和方法

Country Status (8)

Country Link
US (2) US6931545B1 (zh)
EP (1) EP1301863B1 (zh)
JP (1) JP3671178B2 (zh)
KR (1) KR100402071B1 (zh)
CN (2) CN1953459A (zh)
CA (1) CA2419863C (zh)
DE (2) DE60119326T2 (zh)
WO (1) WO2002019598A3 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100454324C (zh) 2007-09-21 2009-01-21 武汉大学 一种可信机制上的嵌入式平台引导方法
CN105930721A (zh) * 2016-04-28 2016-09-07 北京小米移动软件有限公司 一种管理应用程序的方法和装置

Families Citing this family (109)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1085396A1 (en) 1999-09-17 2001-03-21 Hewlett-Packard Company Operation of trusted state in computing platform
US8095508B2 (en) * 2000-04-07 2012-01-10 Washington University Intelligent data storage and processing using FPGA devices
US7395246B2 (en) * 2000-06-30 2008-07-01 Intel Corporation Delegating digital credentials
US6965881B1 (en) * 2000-04-24 2005-11-15 Intel Corporation Digital credential usage reporting
GB0020441D0 (en) 2000-08-18 2000-10-04 Hewlett Packard Co Performance of a service on a computing platform
US7457950B1 (en) * 2000-09-29 2008-11-25 Intel Corporation Managed authentication service
GB0031370D0 (en) * 2000-12-21 2001-02-07 Nokia Oyj Improvements in and relating to the distribution of content
GB0102516D0 (en) * 2001-01-31 2001-03-21 Hewlett Packard Co Trusted gateway system
US20020111911A1 (en) * 2001-02-13 2002-08-15 Kennedy Kelli Hodge Document distribution system and method with consolidated document services management
GB0103986D0 (en) * 2001-02-17 2001-04-04 Hewlett Packard Co Secure e-mail handling using a compartmented operating system
GB0104673D0 (en) 2001-02-23 2001-04-11 Hewlett Packard Co Method of and apparatus for ascertaining the status of a data processing environment
GB2372592B (en) 2001-02-23 2005-03-30 Hewlett Packard Co Information system
GB2372593B (en) * 2001-02-23 2005-05-18 Hewlett Packard Co Electronic communication
WO2002091146A3 (en) * 2001-05-09 2003-11-27 Ecd Systems Inc Systems and methods for the prevention of unauthorized use and manipulation of digital content
GB0114882D0 (en) * 2001-06-19 2001-08-08 Hewlett Packard Co Performing secure and insecure computing operations in a compartmented operating system
GB2376764B (en) * 2001-06-19 2004-12-29 Hewlett Packard Co Multiple trusted computing environments
GB2376763B (en) * 2001-06-19 2004-12-15 Hewlett Packard Co Demonstrating integrity of a compartment of a compartmented operating system
GB0114898D0 (en) * 2001-06-19 2001-08-08 Hewlett Packard Co Interaction with electronic services and markets
GB0114884D0 (en) * 2001-06-19 2001-08-08 Hewlett Packard Co Renting a computing environment on a trusted computing platform
GB2376765B (en) 2001-06-19 2004-12-29 Hewlett Packard Co Multiple trusted computing environments with verifiable environment identities
US7552222B2 (en) * 2001-10-18 2009-06-23 Bea Systems, Inc. Single system user identity
US20090006659A1 (en) * 2001-10-19 2009-01-01 Collins Jack M Advanced mezzanine card for digital network data inspection
US7137004B2 (en) * 2001-11-16 2006-11-14 Microsoft Corporation Manifest-based trusted agent management in a trusted operating system environment
GB2382419B (en) * 2001-11-22 2005-12-14 * Hewlett-Packard Company Apparatus and method for creating a trusted environment
JP4145118B2 (ja) * 2001-11-26 2008-09-03 松下電器産業株式会社 アプリケーション認証システム
GB0129596D0 (en) * 2001-12-11 2002-01-30 Nokia Corp Risk detection
US7680743B2 (en) 2002-05-15 2010-03-16 Microsoft Corporation Software application protection by way of a digital rights management (DRM) system
JP2007524923A (ja) * 2003-05-23 2007-08-30 ワシントン ユニヴァーシティー Fpgaデバイスを使用するインテリジェントデータ記憶および処理
US7296154B2 (en) * 2002-06-24 2007-11-13 Microsoft Corporation Secure media path methods, systems, and architectures
US7694343B2 (en) * 2002-11-27 2010-04-06 Symantec Corporation Client compliancy in a NAT environment
US7827607B2 (en) * 2002-11-27 2010-11-02 Symantec Corporation Enhanced client compliancy using database of security sensor data
US20040139312A1 (en) 2003-01-14 2004-07-15 General Instrument Corporation Categorization of host security levels based on functionality implemented inside secure hardware
US7290149B2 (en) * 2003-03-03 2007-10-30 Microsoft Corporation Verbose hardware identification for binding a software package to a computer system having tolerance for hardware changes
US7137002B2 (en) * 2003-03-24 2006-11-14 Lucent Technologies Inc. Differential authentication entity validation scheme for international emergency telephone service
US8041957B2 (en) * 2003-04-08 2011-10-18 Qualcomm Incorporated Associating software with hardware using cryptography
EP1623355A1 (en) 2003-05-15 2006-02-08 Nokia Corporation Transferring content between digital rights management systems
US7249263B2 (en) * 2003-07-25 2007-07-24 International Business Machines Corporation Method and system for user authentication and identification using behavioral and emotional association consistency
GB2404537B (en) * 2003-07-31 2007-03-14 Hewlett Packard Development Co Controlling access to data
GB2404536B (en) * 2003-07-31 2007-02-28 Hewlett Packard Development Co Protection of data
US8037515B2 (en) 2003-10-29 2011-10-11 Qualcomm Incorporated Methods and apparatus for providing application credentials
KR100982515B1 (ko) * 2004-01-08 2010-09-16 삼성전자주식회사 해시 체인을 이용하여 디지털 컨텐츠의 접근 횟수를제한하는 장치 및 방법
CA2552384A1 (en) * 2004-01-09 2005-08-04 General Instrument Corporation Method and apparatus for providing a security profile
KR20050094273A (ko) * 2004-03-22 2005-09-27 삼성전자주식회사 디지털 저작권 관리 구조, 휴대용 저장 장치 및 이를이용한 컨텐츠 관리 방법
US20050235357A1 (en) * 2004-04-19 2005-10-20 Securemedia International Preventing cloning of high value software using embedded hardware and software functionality
US8074287B2 (en) 2004-04-30 2011-12-06 Microsoft Corporation Renewable and individualizable elements of a protected environment
FR2872979A1 (fr) * 2004-07-09 2006-01-13 France Telecom Systeme d'acces controle a des informations contenues dans un terminal
WO2006044765A8 (en) 2004-10-18 2006-12-28 Syphermedia International Inc Method and apparatus for supporting multiple broadcasters independently using a single conditional access system
US8347078B2 (en) 2004-10-18 2013-01-01 Microsoft Corporation Device certificate individualization
US8336085B2 (en) 2004-11-15 2012-12-18 Microsoft Corporation Tuning product policy using observed evidence of customer behavior
CN1633065B (zh) 2004-12-28 2010-05-12 华中师范大学 带内容监控的网络数字图书安全分发系统和方法
JP2008532177A (ja) 2005-03-03 2008-08-14 ワシントン ユニヴァーシティー 生物学的配列類似検索を実行するための方法および装置
JP4464297B2 (ja) 2005-03-10 2010-05-19 パナソニック株式会社 再生装置、再生方法、及び再生プログラム
US8539587B2 (en) 2005-03-22 2013-09-17 Hewlett-Packard Development Company, L.P. Methods, devices and data structures for trusted data
US20060242406A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Protected computing environment
US9363481B2 (en) 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
US9436804B2 (en) * 2005-04-22 2016-09-06 Microsoft Technology Licensing, Llc Establishing a unique session key using a hardware functionality scan
JP2008539502A (ja) * 2005-04-29 2008-11-13 コンテントガード ホールディングズ インコーポレイテッドContentGuard Holdings, Inc. 検証
US7805752B2 (en) * 2005-11-09 2010-09-28 Symantec Corporation Dynamic endpoint compliance policy configuration
US7921303B2 (en) 2005-11-18 2011-04-05 Qualcomm Incorporated Mobile security system and method
CN101341710B (zh) * 2005-12-16 2013-06-05 诺基亚公司 对于集成wlan热点客户端的支持
EP1801720A1 (en) * 2005-12-22 2007-06-27 Microsoft Corporation Authorisation and authentication
US20070150299A1 (en) * 2005-12-22 2007-06-28 Flory Clive F Method, system, and apparatus for the management of the electronic files
JP4960023B2 (ja) 2006-01-18 2012-06-27 富士通株式会社 画像読取装置、認証方法、評価システム、評価方法およびプログラム
US7954114B2 (en) 2006-01-26 2011-05-31 Exegy Incorporated Firmware socket module for FPGA-based pipeline processing
GB0603781D0 (en) 2006-02-24 2006-04-05 Nokia Corp Application verification
EP1826695A1 (en) * 2006-02-28 2007-08-29 Microsoft Corporation Secure content descriptions
WO2007121035A3 (en) 2006-03-23 2008-09-18 Exegy Inc Method and system for high throughput blockwise independent encryption/decryption
KR20090006235A (ko) * 2006-05-05 2009-01-14 인터디지탈 테크날러지 코포레이션 트러스티드 프로세싱 기술을 사용하는 디지탈 권리 관리
US7970138B2 (en) 2006-05-26 2011-06-28 Syphermedia International Method and apparatus for supporting broadcast efficiency and security enhancements
EP1873668A1 (en) * 2006-06-28 2008-01-02 Nokia Siemens Networks Gmbh & Co. Kg Integration of device integrity attestation into user authentication
US8239915B1 (en) 2006-06-30 2012-08-07 Symantec Corporation Endpoint management using trust rating data
US20080008321A1 (en) * 2006-07-10 2008-01-10 Syphermedia International, Inc. Conditional access enhancements using an always-on satellite backchannel link
US20080120390A1 (en) * 2006-09-15 2008-05-22 Icebreaker, Inc. Date management within a social interaction network
US20080080711A1 (en) * 2006-09-28 2008-04-03 Syphermedia International, Inc. Dual conditional access module architecture and method and apparatus for controlling same
KR100823738B1 (ko) * 2006-09-29 2008-04-21 한국전자통신연구원 컴퓨팅 플랫폼의 설정 정보를 은닉하면서 무결성 보증을제공하는 방법
US8296569B2 (en) * 2006-10-09 2012-10-23 Microsoft Corporation Content protection interoperability infrastructure
US20080091978A1 (en) * 2006-10-13 2008-04-17 Stephen Andrew Brodsky Apparatus, system, and method for database management extensions
US8761393B2 (en) * 2006-10-13 2014-06-24 Syphermedia International, Inc. Method and apparatus for providing secure internet protocol media services
US9277259B2 (en) 2006-10-13 2016-03-01 Syphermedia International, Inc. Method and apparatus for providing secure internet protocol media services
GB0622149D0 (en) * 2006-11-07 2006-12-20 Singlepoint Holdings Ltd System and method to validate and authenticate digital data
US20080148253A1 (en) * 2006-12-15 2008-06-19 Microsoft Corporation Automatic software license reconciliation
US8108856B2 (en) * 2007-03-30 2012-01-31 Intel Corporation Method and apparatus for adaptive integrity measurement of computer software
US8145655B2 (en) * 2007-06-22 2012-03-27 International Business Machines Corporation Generating information on database queries in source code into object code compiled from the source code
US8639627B2 (en) * 2007-07-06 2014-01-28 Microsoft Corporation Portable digital rights for multiple devices
US8887298B2 (en) 2007-07-13 2014-11-11 Microsoft Corporation Updating and validating documents secured cryptographically
US8879727B2 (en) 2007-08-31 2014-11-04 Ip Reservoir, Llc Method and apparatus for hardware-accelerated encryption/decryption
US8997054B2 (en) * 2007-11-30 2015-03-31 Red Hat, Inc. Software application certification service
US8374986B2 (en) 2008-05-15 2013-02-12 Exegy Incorporated Method and system for accelerated stream processing
US9779234B2 (en) * 2008-06-18 2017-10-03 Symantec Corporation Software reputation establishment and monitoring system and method
US8402519B2 (en) * 2008-10-16 2013-03-19 Verisign, Inc. Transparent client authentication
US9946848B2 (en) * 2009-02-26 2018-04-17 International Business Machines Corporation Software protection using an installation product having an entitlement file
KR101590188B1 (ko) * 2009-05-08 2016-01-29 삼성전자주식회사 휴대단말기에서 소프트웨어 패키지의 무결성을 검증하는 방법
US8800057B2 (en) * 2009-09-24 2014-08-05 Samsung Information Systems America, Inc. Secure content delivery system and method
KR20110045960A (ko) * 2009-10-28 2011-05-04 엘지이노텍 주식회사 전자문서 다운로드를 위한 전자책 단말기 및 그 시스템
US8521778B2 (en) * 2010-05-28 2013-08-27 Adobe Systems Incorporated Systems and methods for permissions-based profile repository service
US8515241B2 (en) 2011-07-07 2013-08-20 Gannaway Web Holdings, Llc Real-time video editing
US9047243B2 (en) 2011-12-14 2015-06-02 Ip Reservoir, Llc Method and apparatus for low latency data distribution
EP2798566A4 (en) * 2011-12-31 2015-09-30 Intel Corp Securing device environment for trust provisioning
KR101311287B1 (ko) * 2012-02-21 2013-09-25 주식회사 파수닷컴 전자책 생성 장치 및 방법, 그리고 전자책 무결성 검증 장치 및 방법
US9990393B2 (en) 2012-03-27 2018-06-05 Ip Reservoir, Llc Intelligent feed switch
WO2014042632A1 (en) * 2012-09-12 2014-03-20 Empire Technology Development, Llc Compound certifications for assurance without revealing infrastructure
US9135436B2 (en) * 2012-10-19 2015-09-15 The Aerospace Corporation Execution stack securing process
US9633097B2 (en) 2012-10-23 2017-04-25 Ip Reservoir, Llc Method and apparatus for record pivoting to accelerate processing of data fields
US9633093B2 (en) 2012-10-23 2017-04-25 Ip Reservoir, Llc Method and apparatus for accelerated format translation of data in a delimited data format
US9560014B2 (en) * 2013-01-23 2017-01-31 Mcafee, Inc. System and method for an endpoint hardware assisted network firewall in a security environment
WO2015013474A3 (en) 2013-07-25 2015-11-12 Siemens Healthcare Diagnostics Inc. Anti-piracy protection for software
KR20150049571A (ko) * 2013-10-30 2015-05-08 한국전자통신연구원 객체검증장치 및 그 무결성인증방법
CN103685277B (zh) * 2013-12-17 2016-08-17 南京大学 一种浏览器访问网页安全保护方法
WO2016001814A1 (en) * 2014-07-02 2016-01-07 Indian Institute Of Technology Madras System and method for determining the behavioral integrity of an application

Family Cites Families (124)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3263158A (en) 1963-08-15 1966-07-26 Motorola Inc Saturable reactor voltage control circuit
US3609697A (en) 1968-10-21 1971-09-28 Ibm Program security device
US3798605A (en) 1971-06-30 1974-03-19 Ibm Centralized verification system
US3790700A (en) 1971-12-17 1974-02-05 Hughes Aircraft Co Catv program control system
US4220991A (en) 1977-10-08 1980-09-02 Tokyo Electric Co., Ltd. Electronic cash register with removable memory packs for cashier identification
US4278837A (en) 1977-10-31 1981-07-14 Best Robert M Crypto microprocessor for executing enciphered programs
US4159468A (en) 1977-11-17 1979-06-26 Burroughs Corporation Communications line authentication device
FR2448825B1 (zh) 1979-02-06 1984-05-11 Telediffusion Fse
US4529870A (en) 1980-03-10 1985-07-16 David Chaum Cryptographic identification, financial transaction, and credential device
US4442486A (en) 1981-11-25 1984-04-10 U.S. Philips Corporation Protected programmable apparatus
US4558176A (en) 1982-09-20 1985-12-10 Arnold Mark G Computer systems to inhibit unauthorized copying, unauthorized usage, and automated cracking of protected software
US4593376A (en) 1983-04-21 1986-06-03 Volk Larry N System for vending program cartridges which have circuitry for inhibiting program usage after preset time interval expires
US4658093A (en) 1983-07-11 1987-04-14 Hellman Martin E Software distribution system
US4644493A (en) 1984-09-14 1987-02-17 International Business Machines Corporation Implementing a shared higher level of privilege on personal computers for copy protection of software
US4614861A (en) 1984-11-15 1986-09-30 Intellicard International, Inc. Unitary, self-contained card verification and validation system and method
US4713753A (en) 1985-02-21 1987-12-15 Honeywell Inc. Secure data processing system architecture with format control
US4891838A (en) 1985-11-04 1990-01-02 Dental Data Service, Inc. Computer accessing system
EP0252646B1 (en) 1986-07-07 1993-09-29 Semiconductor Energy Laboratory Co., Ltd. Paperless portable book
US5014234A (en) 1986-08-25 1991-05-07 Ncr Corporation System with software usage timer and counter for allowing limited use but preventing continued unauthorized use of protected software
US5010571A (en) 1986-09-10 1991-04-23 Titan Linkabit Corporation Metering retrieval of encrypted data stored in customer data retrieval terminal
US5050213A (en) 1986-10-14 1991-09-17 Electronic Publishing Resources, Inc. Database usage metering and protection system and method
US4827508A (en) 1986-10-14 1989-05-02 Personal Library Software, Inc. Database usage metering and protection system and method
US4977594A (en) 1986-10-14 1990-12-11 Electronic Publishing Resources, Inc. Database usage metering and protection system and method
US5047928A (en) 1986-10-24 1991-09-10 Wiedemer John D Billing system for computer software
US4817140A (en) 1986-11-05 1989-03-28 International Business Machines Corp. Software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocessor
US4796220A (en) 1986-12-15 1989-01-03 Pride Software Development Corp. Method of controlling the copying of software
US4868376A (en) 1987-05-15 1989-09-19 Smartcard International Inc. Intelligent portable interactive personal data system
US4975647A (en) 1987-06-01 1990-12-04 Nova Biomedical Corporation Controlling machine operation with respect to consumable accessory units
US4999806A (en) 1987-09-04 1991-03-12 Fred Chernow Software distribution system
US5390297A (en) * 1987-11-10 1995-02-14 Auto-Trol Technology Corporation System for controlling the number of concurrent copies of a program in a network based on the number of available licenses
US4937863A (en) 1988-03-07 1990-06-26 Digital Equipment Corporation Software licensing management system
US4924378A (en) 1988-06-13 1990-05-08 Prime Computer, Inc. License mangagement system and license storage key
US4961142A (en) 1988-06-29 1990-10-02 Mastercard International, Inc. Multi-issuer transaction device with individual identification verification plug-in application modules for each issuer
US5247575A (en) 1988-08-16 1993-09-21 Sprague Peter J Information distribution system
US4932054A (en) 1988-09-16 1990-06-05 Chou Wayne W Method and apparatus for protecting computer software utilizing coded filter network in conjunction with an active coded hardware device
US5023907A (en) 1988-09-30 1991-06-11 Apollo Computer, Inc. Network license server
US4953209A (en) 1988-10-31 1990-08-28 International Business Machines Corp. Self-verifying receipt and acceptance system for electronically delivered data objects
DE3903454A1 (de) 1988-12-12 1990-06-13 Raymund H Eisele In edv-einrichtungen einsteckbares element
US4949187A (en) 1988-12-16 1990-08-14 Cohen Jason M Video communications system having a remotely controlled central source of video and audio data
US5113519A (en) 1989-05-15 1992-05-12 International Business Machines Corporation Maintenance of file attributes in a distributed data processing system
US5347579A (en) 1989-07-05 1994-09-13 Blandford Robert R Personal computer diary
US5138712A (en) 1989-10-02 1992-08-11 Sun Microsystems, Inc. Apparatus and method for licensing software on a network of computers
US5148481A (en) 1989-10-06 1992-09-15 International Business Machines Corporation Transaction system security method and apparatus
FR2653248B1 (fr) 1989-10-13 1991-12-20 Gemolus Card International Systeme de paiement ou de transfert d'information par carte a memoire electronique porte monnaie.
US5136643A (en) 1989-10-13 1992-08-04 Fischer Addison M Public/key date-time notary facility
FR2653914A1 (fr) 1989-10-27 1991-05-03 Trt Telecom Radio Electr Systeme d'authentification d'une carte a microcircuit par un micro-ordinateur personnel, et procede pour sa mise en óoeuvre.
US5263157A (en) 1990-02-15 1993-11-16 International Business Machines Corporation Method and system for providing user access control within a distributed data processing system by the exchange of access control profiles
US5263158A (en) 1990-02-15 1993-11-16 International Business Machines Corporation Method and system for variable authority level user access control in a distributed data processing system having multiple resource manager
US5058164A (en) 1990-05-03 1991-10-15 National Semiconductor Corp. Encryption of streams of addressed information to be used for program code protection
US5052040A (en) 1990-05-25 1991-09-24 Micronyx, Inc. Multiple user stored data cryptographic labeling system and method
US5504818A (en) 1991-04-19 1996-04-02 Okano; Hirokazu Information processing system using error-correcting codes and cryptography
JP2689998B2 (ja) 1990-08-22 1997-12-10 インターナショナル・ビジネス・マシーンズ・コーポレイション 暗号動作を行う装置
JPH05134957A (ja) 1990-10-10 1993-06-01 Fuji Xerox Co Ltd データ管理システム
US5222134A (en) 1990-11-07 1993-06-22 Tau Systems Corporation Secure system for activating personal computer software at remote locations
US5103476A (en) 1990-11-07 1992-04-07 Waite David P Secure system for activating personal computer software at remote locations
US5255106A (en) 1991-02-05 1993-10-19 International Integrated Communications, Ltd. Method and apparatus for delivering secured hard-copy facsimile documents
US5438508A (en) 1991-06-28 1995-08-01 Digital Equipment Corporation License document interchange format for license management system
US5260999A (en) 1991-06-28 1993-11-09 Digital Equipment Corporation Filters in license management system
US5204897A (en) 1991-06-28 1993-04-20 Digital Equipment Corporation Management interface for license management system
US5504814A (en) 1991-07-10 1996-04-02 Hughes Aircraft Company Efficient security kernel for the 80960 extended architecture
US5276444A (en) 1991-09-23 1994-01-04 At&T Bell Laboratories Centralized security control system
US5734823A (en) 1991-11-04 1998-03-31 Microtome, Inc. Systems and apparatus for electronic communication and storage of information
WO1993009490A1 (en) * 1991-11-04 1993-05-13 Vpr Systems Ltd. Lap-top computer for retrieving and displaying text and graphic information encoded on personal library cd-rom
US5453601A (en) 1991-11-15 1995-09-26 Citibank, N.A. Electronic-monetary system
US5301231A (en) 1992-02-12 1994-04-05 International Business Machines Corporation User defined function facility
US5183404A (en) 1992-04-08 1993-02-02 Megahertz Corporation Systems for connection of physical/electrical media connectors to computer communications cards
US5276735A (en) 1992-04-17 1994-01-04 Secure Computing Corporation Data enclave and trusted path system
US5440631A (en) * 1992-04-24 1995-08-08 Fijitsu Limited Information distribution system wherein storage medium storing ciphered information is distributed
JP2659896B2 (ja) 1992-04-29 1997-09-30 インターナショナル・ビジネス・マシーンズ・コーポレイション 構造化文書複製管理方法及び構造化文書複製管理装置
US5412717A (en) 1992-05-15 1995-05-02 Fischer; Addison M. Computer system security method and apparatus having program authorization information data structures
US5235642A (en) 1992-07-21 1993-08-10 Digital Equipment Corporation Access control subsystem and method for distributed computer system using locally cached authentication credentials
US5287408A (en) * 1992-08-31 1994-02-15 Autodesk, Inc. Apparatus and method for serializing and validating copies of computer software
US5381526A (en) 1992-09-11 1995-01-10 Eastman Kodak Company Method and apparatus for storing and retrieving generalized image data
JP3358627B2 (ja) * 1992-10-16 2002-12-24 ソニー株式会社 情報記録再生装置
US5319705A (en) 1992-10-21 1994-06-07 International Business Machines Corporation Method and system for multimedia access control enablement
US5414852A (en) * 1992-10-30 1995-05-09 International Business Machines Corporation Method for protecting data in a computer system
US5341429A (en) 1992-12-04 1994-08-23 Testdrive Corporation Transformation of ephemeral material
US5509070A (en) 1992-12-15 1996-04-16 Softlock Services Inc. Method for encouraging purchase of executable and non-executable software
US5504837A (en) 1993-05-10 1996-04-02 Bell Communications Research, Inc. Method for resolving conflicts among distributed entities through the generation of counter proposals by transversing a goal hierarchy with acceptable, unacceptable, and indeterminate nodes
US5337357A (en) 1993-06-17 1994-08-09 Software Security, Inc. Method of software distribution protection
US5428606A (en) 1993-06-30 1995-06-27 Moskowitz; Scott A. Digital information commodities exchange
JPH09503322A (ja) 1993-09-14 1997-03-31 スピラス インコーポレイテッド 小型データ記憶媒体に対するアクセス制御
CA2129075C (en) 1993-10-18 1999-04-20 Joseph J. Daniele Electronic copyright royalty accounting system using glyphs
US6135646A (en) * 1993-10-22 2000-10-24 Corporation For National Research Initiatives System for uniquely and persistently identifying, managing, and tracking digital objects
US5455953A (en) 1993-11-03 1995-10-03 Wang Laboratories, Inc. Authorization system for obtaining in single step both identification and access rights of client to server directly from encrypted authorization ticket
US5625690A (en) * 1993-11-15 1997-04-29 Lucent Technologies Inc. Software pay per use system
US5768426A (en) * 1993-11-18 1998-06-16 Digimarc Corporation Graphics processing system employing embedded code signals
US5495411A (en) * 1993-12-22 1996-02-27 Ananda; Mohan Secure software rental system using continuous asynchronous password verification
US5473687A (en) 1993-12-29 1995-12-05 Infosafe Systems, Inc. Method for retrieving secure information from a database
US5394469A (en) 1994-02-18 1995-02-28 Infosafe Systems, Inc. Method and apparatus for retrieving secure information from mass storage media
US5499298A (en) 1994-03-17 1996-03-12 National University Of Singapore Controlled dissemination of digital information
CA2143874C (en) * 1994-04-25 2000-06-20 Thomas Edward Cooper Method and apparatus for enabling trial period use of software products: method and apparatus for utilizing a decryption stub
US5757907A (en) * 1994-04-25 1998-05-26 International Business Machines Corporation Method and apparatus for enabling trial period use of software products: method and apparatus for generating a machine-dependent identification
US5563946A (en) 1994-04-25 1996-10-08 International Business Machines Corporation Method and apparatus for enabling trial period use of software products: method and apparatus for passing encrypted files between data processing systems
US5557518A (en) 1994-04-28 1996-09-17 Citibank, N.A. Trusted agents for open electronic commerce
US5799087A (en) * 1994-04-28 1998-08-25 Citibank, N.A. Electronic-monetary system
US5473692A (en) 1994-09-07 1995-12-05 Intel Corporation Roving software license for a hardware agent
US5638443A (en) 1994-11-23 1997-06-10 Xerox Corporation System for controlling the distribution and use of composite digital works
US5629980A (en) 1994-11-23 1997-05-13 Xerox Corporation System for controlling the distribution and use of digital works
US5715403A (en) 1994-11-23 1998-02-03 Xerox Corporation System for controlling the distribution and use of digital works having attached usage rights where the usage rights are defined by a usage rights grammar
US5634012A (en) 1994-11-23 1997-05-27 Xerox Corporation System for controlling the distribution and use of digital works having a fee reporting mechanism
US5655077A (en) 1994-12-13 1997-08-05 Microsoft Corporation Method and system for authenticating access to heterogeneous computing services
US5649013A (en) 1994-12-23 1997-07-15 Compuserve Incorporated Royalty tracking method and apparatus
CN1912885B (zh) * 1995-02-13 2010-12-22 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法
US5530235A (en) 1995-02-16 1996-06-25 Xerox Corporation Interactive contents revealing storage device
US5748783A (en) * 1995-05-08 1998-05-05 Digimarc Corporation Method and apparatus for robust information coding
US5534975A (en) 1995-05-26 1996-07-09 Xerox Corporation Document processing system utilizing document service cards to provide document processing services
US5765152A (en) * 1995-10-13 1998-06-09 Trustees Of Dartmouth College System and method for managing copyrighted electronic media
US5708717A (en) 1995-11-29 1998-01-13 Alasia; Alfred Digital anti-counterfeiting software method and apparatus
US5633932A (en) 1995-12-19 1997-05-27 Intel Corporation Apparatus and method for preventing disclosure through user-authentication at a printing node
US5745569A (en) * 1996-01-17 1998-04-28 The Dice Company Method for stega-cipher protection of computer code
US5761686A (en) * 1996-06-27 1998-06-02 Xerox Corporation Embedding encoded information in an iconic version of a text image
US5943422A (en) * 1996-08-12 1999-08-24 Intertrust Technologies Corp. Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels
US5892900A (en) * 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US6006332A (en) * 1996-10-21 1999-12-21 Case Western Reserve University Rights management system for digital media
US5920861A (en) * 1997-02-25 1999-07-06 Intertrust Technologies Corp. Techniques for defining using and manipulating rights management data structures
US6233684B1 (en) * 1997-02-28 2001-05-15 Contenaguard Holdings, Inc. System for controlling the distribution and use of rendered digital works through watermaking
EP1679894A3 (en) * 1997-03-21 2007-10-10 Nagra Thomson Licensing Broadcast and reception system, and conditional access system therefor
US6073089A (en) * 1997-10-22 2000-06-06 Baker; Michelle Systems and methods for adaptive profiling, fault detection, and alert generation in a changing environment which is measurable by at least two different measures of state
FR2772486B1 (fr) * 1997-12-15 2000-01-07 Elf Exploration Prod Methode de detection automatique des heterogeneites planaires recoupant la stratification d'un milieu
GB2319102B (en) * 1998-01-30 1998-12-23 Ibm A security system for a transaction processing system
US6226618B1 (en) * 1998-08-13 2001-05-01 International Business Machines Corporation Electronic content delivery system
US6327652B1 (en) * 1998-10-26 2001-12-04 Microsoft Corporation Loading and identifying a digital rights management operating system
US7243236B1 (en) * 1999-07-29 2007-07-10 Intertrust Technologies Corp. Systems and methods for using cryptography to protect secure and insecure computing environments

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100454324C (zh) 2007-09-21 2009-01-21 武汉大学 一种可信机制上的嵌入式平台引导方法
CN105930721A (zh) * 2016-04-28 2016-09-07 北京小米移动软件有限公司 一种管理应用程序的方法和装置

Also Published As

Publication number Publication date Type
DE60119326T2 (de) 2006-08-31 grant
WO2002019598A3 (en) 2002-06-13 application
CA2419863C (en) 2006-04-25 grant
CA2419863A1 (en) 2002-03-07 application
JP3671178B2 (ja) 2005-07-13 grant
EP1301863A4 (en) 2003-07-02 application
KR20030040427A (ko) 2003-05-22 application
JP2004507845A (ja) 2004-03-11 application
WO2002019598A2 (en) 2002-03-07 application
US6931545B1 (en) 2005-08-16 grant
KR100402071B1 (ko) 2003-10-17 grant
DE60119326D1 (de) 2006-06-08 grant
US20050262086A1 (en) 2005-11-24 application
EP1301863B1 (en) 2006-05-03 grant
EP1301863A2 (en) 2003-04-16 application
CN1291326C (zh) 2006-12-20 grant
CN1449523A (zh) 2003-10-15 application

Similar Documents

Publication Publication Date Title
US6510513B1 (en) Security services and policy enforcement for electronic data
US7225333B2 (en) Secure processor architecture for use with a digital rights management (DRM) system on a computing device
US6374357B1 (en) System and method for regulating a network service provider's ability to host distributed applications in a distributed processing environment
US7231669B2 (en) Binding content to a portable storage device or the like in a digital rights management (DRM) system
US6948073B2 (en) Protecting decrypted compressed content and decrypted decompressed content at a digital rights management client
US6820063B1 (en) Controlling access to content based on certificates and access predicates
US7461249B1 (en) Computer platforms and their methods of operation
US8549511B2 (en) Information processing apparatus, executability determining method, and computer program for the same
US20090037388A1 (en) Network-based content distribution system
US20020019814A1 (en) Specifying rights in a digital rights license according to events
US20030194094A1 (en) System and method for secure storage data using a key
US20020152262A1 (en) Method and system for preventing the infringement of intellectual property rights
US20030046238A1 (en) Data processing apparatus, data processing system, and data processing method therefor
US20020006204A1 (en) Protecting decrypted compressed content and decrypted decompressed content at a digital rights management client
US20070255659A1 (en) System and method for DRM translation
US20030159055A1 (en) System and method for verifying integrity of system with multiple components
US20030204723A1 (en) Digital license with referral information
US7073063B2 (en) Binding a digital license to a portable device or the like in a digital rights management (DRM) system and checking out/checking in the digital license to/from the portable device or the like
US20020012432A1 (en) Secure video card in computing device having digital rights management (DRM) system
US6330670B1 (en) Digital rights management operating system
US20040205333A1 (en) Method and system for digital rights management
US7047241B1 (en) System and methods for managing digital creative works
US7322042B2 (en) Secure and backward-compatible processor and secure software execution thereon
US7185195B2 (en) Certificate based digital rights management
US20060179002A1 (en) Flexible licensing architecture for licensing digital application

Legal Events

Date Code Title Description
C06 Publication
C10 Request of examination as to substance
C02 Deemed withdrawal of patent application after publication (patent law 2001)