KR20080006638A - Systems and methods for integrity certification and verification - Google Patents

Systems and methods for integrity certification and verification Download PDF

Info

Publication number
KR20080006638A
KR20080006638A KR1020077027952A KR20077027952A KR20080006638A KR 20080006638 A KR20080006638 A KR 20080006638A KR 1020077027952 A KR1020077027952 A KR 1020077027952A KR 20077027952 A KR20077027952 A KR 20077027952A KR 20080006638 A KR20080006638 A KR 20080006638A
Authority
KR
South Korea
Prior art keywords
integrity
profile
applications
application
systems
Prior art date
Application number
KR1020077027952A
Other languages
Korean (ko)
Other versions
KR101034127B1 (en
Inventor
탄 타
진 왕
빈센트 티유
조셉 제트. 와이. 풍
덕 트란
베누고팔 벤카트라맨
호세 로메로-로보
에디 제이. 첸
찰스 피. 길리암
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
Application filed by 콘텐트가드 홀딩즈 인코포레이티드 filed Critical 콘텐트가드 홀딩즈 인코포레이티드
Publication of KR20080006638A publication Critical patent/KR20080006638A/en
Application granted granted Critical
Publication of KR101034127B1 publication Critical patent/KR101034127B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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 ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2115Third party
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2149Restricted operating environment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/303Terminal profiles

Abstract

A method and system for integrity certification and verification in a computer environment based on characteristics and behaviors of one or more applications, systems or system components as compared with a profile of characteristics and behaviors, including determining a behavior integrity profile (BIP) specifying characteristics and behaviors of one or more applications, systems or system components; determining based on the BIP whether or not characteristics and behaviors of one or more applications, systems or system components are compliant with characteristics and behaviors defined in a behavior integrity profile specification; and determining access rights to the one or more applications, systems or system components based on the step of determining the compliance.

Description

무결성 보증 및 검증을 위한 시스템 및 방법{SYSTEMS AND METHODS FOR INTEGRITY CERTIFICATION AND VERIFICATION}System and Method for Integrity Assurance and Verification {SYSTEMS AND METHODS FOR INTEGRITY CERTIFICATION AND VERIFICATION}

[0001] 본 발명은 무결성 보증 및 검증에 관한 것이다. 특히, 본 발명은 애플리케이션 무결성 프로파일(AIP)과 행위 무결성 프로파일(BIP)을 포함하는 프로파일의 사용에 관한 것이다. The present invention relates to integrity assurance and verification. In particular, the present invention relates to the use of a profile comprising an Application Integrity Profile (AIP) and a Behavioral Integrity Profile (BIP).

[0002] 디지털 문서와 전자 서비스의 전자상거래를 통한 폭 넓은 배포와 다양한 용도의 사용을 가능케 하는 가장 중요한 이슈들 중의 하나는 콘텐트 소유자들과 공급자들의 지적재산권 보호에 대한 필요성이다. 이러한 문제를 해결하려는 노력들은 지적재산권관리(Intellectual Property Rights Management: IPRM), 디지털재산권 관리(Digital Property Rights Management: DPRM), 지적재산 관리(Intellectual Property Management: IPM), 디지털 권리 관리(Digital Rights Management: DRM), 권리 관리(Rights Management: RM) 및 전자 저작권 관리(Electronic Copyright Management: ECM) 등으로 불린다.[0002] One of the most important issues that enable wide distribution and use of various purposes through electronic commerce of digital documents and electronic services is the need for protection of intellectual property rights of content owners and suppliers. Efforts to address these issues include Intellectual Property Rights Management (IPRM), Digital Property Rights Management (DPRM), Intellectual Property Management (IPM), and Digital Rights Management: DRM), Rights Management (RM) and Electronic Copyright Management (ECM).

[0003] 그러나, 콘텐트 제공자들은 그들의 콘텐트가 원하는 특성 및/또는 행위(behavior)를 갖는 보증된 애플리케이션들(certified applications)과 시스템에 의해 소비되기를 바란다. 또한, 애플리케이션, 서비스 및 컴퓨터 시스템의 제공자 들은 그들의 애플리케이션, 서비스 및 시스템이 원하는 특성 및/또는 행위를 갖는 애플리케이션과 시스템에 의해서만 접근되거나 사용되기를 바란다.However, content providers want their content to be consumed by certified applications and systems with desired characteristics and / or behaviors. In addition, providers of applications, services, and computer systems want their applications, services, and systems to be accessed or used only by applications and systems having the desired characteristics and / or behaviors.

[0004] 공개키 기반구조(Public Key Infrastructure: PKI)의 직접적인 사용은 애플리케이션과 시스템 제공자들이 그들 자신의 제품을 보증할 수 있도록 해주며, 콘텐트와 서비스 제공자들로 하여금 그들의 콘텐트와 서비스를 소비하는 데 이용되는 애플리케이션들과 시스템들의 무결성을 검증할 수 있도록 해준다. 그러나, 공개키 기반구조의 직접적인 사용은 판매자들과 제공자들 간에 다 대 다 관계(many-to-many relationship)를 만들게 되는데, 이런 유형의 관계는 기준화하기(scale)가 쉽지 않다. 따라서 그러한 관계를 관리하기 위한, 그리고 효율적이고 실시간이나 거의 실시간에 가깝게 무결성 검증을 하기 위한 방법과 시스템이 필요하다.Direct use of the Public Key Infrastructure (PKI) enables application and system providers to endorse their own products, allowing content and service providers to consume their content and services. It allows you to verify the integrity of the applications and systems used. However, the direct use of public key infrastructure creates a many-to-many relationship between sellers and providers, which is not easy to scale. Thus, there is a need for a method and system for managing such relationships and for verifying integrity efficiently, in near real time, or near real time.

[0005] 그러므로, 상기한 필요성들 및 문제들과 그에 관련된 다른 문제들을 처리하는 방법과 시스템이 필요하다. 상기한 필요성들 및 문제들과 그에 관련된 다른 문제들은 무결성 보증 및 검증을 위한 방법과 시스템을 제공하는 본 발명의 예시적인 실시예들에 의해서 해결될 수 있다.Therefore, there is a need for a method and system for handling the above needs and problems and other problems related thereto. The above needs and problems and other problems related thereto may be solved by exemplary embodiments of the present invention that provide a method and system for integrity assurance and verification.

[0006] 따라서, 본 발명의 예시적인 형태로서, 특징 및 행위의 프로파일에 비교되는 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 특징 및 행위에 기초한 컴퓨터 환경에서의 무결성 보증 및 검증을 위한 방법과 시스템이 제공된다. 이 예로 든 방법과 시스템은, 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 특징 및 행위들을 세부화 하는(specifying) 행위 무결성 프로파일(BIP)을 결정하는 단계와; 상기 행위 무결성 프로파일의 세부사항에서 정의된 특징 및 행위에 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 특징 및 행위가 순응하는 지의 여부를 상기 행위 무결성 프로파일에 기초하여 결정하는 단계와; 상기 순응여부 결정단계에 기초하여 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들에 대한 액세스 권한을 결정하는 단계를 포함할 수 있다.Thus, as an exemplary form of the present invention, there is provided a method and system for integrity assurance and verification in a computer environment based on the features and behavior of one or more applications, systems or system components compared to a profile of features and behaviors. Is provided. This example method and system includes determining a behavioral integrity profile (BIP) that specifies the features and behaviors of one or more applications, systems or system components; Determining based on the behavior integrity profile whether the features and behavior of the one or more applications, systems or system components conform to the features and behaviors defined in the details of the behavior integrity profile; Determining access rights to the one or more applications, systems or system components based on the determining compliance.

[0007] 나아가 본 발명의 다른 실시예, 특징 및 장점들은 본 발명에 따른 다양한 실시예들을 간단히 예시함으로써 이하 본 발명의 상세한 설명으로부터 용이하게 분명해지며, 본 발명에 따른 다양한 실시예들은 본 발명이 실시되기 위해 기대되는 최적의 방법을 포함한다. 또한, 본 발명의 다양한 실시예들은 본 발명의 사상으로부터 벗어나지 않는 범위 내에서 다양한 형태로 변형될 수도 있다. 따라서, 본 발명의 도면과 상세한 설명은 제한적이 아닌 예시적인 것으로서 간주되어야 한다.Further embodiments, features, and advantages of the present invention will be readily apparent from the following detailed description of the invention by simply illustrating various embodiments in accordance with the present invention, and various embodiments of the present invention are embodied by the present invention. Include the best way to be expected to be. In addition, various embodiments of the present invention may be modified in various forms without departing from the spirit of the invention. Accordingly, the drawings and detailed description of the invention should be considered as illustrative and not restrictive.

[0008] 첨부된 도면에서 동일한 구성요소에 대해서는 동일한 참조번호를 부여하였고, 본 발명의 실시예들은 반드시 이에 국한되는 것이 아니라 예시적으로 도시된 것이다.Like reference numerals refer to like elements in the accompanying drawings, and embodiments of the present invention are shown by way of example and not by way of limitation.

[0009] 도 1a는 본 발명에 따른 무결성 보증 및 검증 시스템의 제1실시예를 도시하는 기능 개요도(functional overview)이다. 1A is a functional overview illustrating a first embodiment of an integrity assurance and verification system in accordance with the present invention.

[0010] 도 1b는 본 발명에 따라 행위 무결성 프로파일(BIP)과 애플리케이션 무결성 프로파일(AIP)을 함께 이용하는 무결성 보증 및 검증 시스템의 제1실시예를 도시하는 기능 개요도이다.FIG. 1B is a functional schematic diagram illustrating a first embodiment of an integrity assurance and verification system using a behavioral integrity profile (BIP) and an application integrity profile (AIP) in accordance with the present invention.

[0011] 도 1c는 본 발명에 따라 행위 무결성 프로파일(BIP)을 이용하는 무결성 보증 및 검증 시스템의 제1실시예를 도시하는 기능 개요도이다.[0011] FIG. 1C is a functional schematic diagram illustrating a first embodiment of an integrity assurance and verification system using a Behavioral Integrity Profile (BIP) in accordance with the present invention.

[0012] 도 2는 본 발명에 따른 무결성 보증 및 검증 시스템의 제1실시예를 도시한 기능 블록도이다.2 is a functional block diagram illustrating a first embodiment of the integrity assurance and verification system according to the present invention.

[0013] 도 3은 본 발명에 따른 예시적인 무결성 보증 및 검증장치의 작업흐름도이다.3 is a workflow diagram of an exemplary integrity assurance and verification apparatus in accordance with the present invention.

[0014] 도 4a는 본 발명에 따른 무결성 프로파일의 예시적인 구조를 도시한다.4A shows an exemplary structure of an integrity profile according to the present invention.

[0015] 도 4b는 본 발명에 따른 행위 무결성 프로파일의 예시적인 구조를 도시한다.4B shows an exemplary structure of a behavioral integrity profile in accordance with the present invention.

[0016] 도 5는 본 발명에 따른 예시적인 환경 스택(environment stack)을 도시한다.5 shows an exemplary environment stack in accordance with the present invention.

[0017] 도 6은 본 발명에 따른 또 다른 예시적인 환경 스택을 도시한다.6 shows another exemplary environmental stack in accordance with the present invention.

[0018] 도 7은 본 발명에 따른 예시적인 환경 스택의 예시적인 작업흐름(workflow)을 도시한다.FIG. 7 shows an example workflow of an example environment stack in accordance with the present invention. FIG.

[0019] 도 8은 본 발명에 따른 예시적인 환경 스택의 또 다른 예시적인 작업흐름을 도시한다.8 shows another example workflow of an example environment stack in accordance with the present invention.

[0020] 도 9는 본 발명에 따른 환경 스택을 조작하는 방법을 예시적으로 도 시한다.9 illustratively illustrates a method of manipulating an environmental stack in accordance with the present invention.

[0021] 도 10은 본 발명에 따른 디버깅의 사용을 통해 동적 조작 (dynamic tampering)을 막는 방법을 예시적으로 도시한다.10 illustratively illustrates a method of preventing dynamic tampering through the use of debugging in accordance with the present invention.

[0022] 도 11a는 본 발명에 따른 무결성 보증 및 검증 방법의 예시적인 일 실시예의 대강을 나타내는 흐름도이다.11A is a flow diagram illustrating the outline of one exemplary embodiment of an integrity assurance and verification method according to the present invention.

[0023] 도 11b는 본 발명에 따른 행위 무결성 프로파일과 애플리케이션 무결성 프로파일을 함께 이용하는 무결성 보증 및 검증 방법의 예시적인 일 실시예의 대강을 나타내는 흐름도이다.[0023] Figure 11B is a flow diagram illustrating an overview of one exemplary embodiment of an integrity assurance and verification method that uses a behavioral integrity profile and an application integrity profile in accordance with the present invention.

[0024] 도 11c는 본 발명에 따른 행위 무결성 프로파일을 이용하는 무결성 보증 및 검증 방법의 예시적인 일 실시예의 대강을 나타내는 흐름도이다. [0024] Figure 11C is a flow diagram illustrating the approximation of one exemplary embodiment of an integrity assurance and verification method using a behavioral integrity profile in accordance with the present invention.

[0025] 도 12는 본 발명에 따른 애플리케이션들 및/또는 시스템을 등록하는 방법의 예시적인 일 실시예의 대강을 나타내는 흐름도이다.12 is a flow diagram illustrating the outline of one exemplary embodiment of a method of registering applications and / or system in accordance with the present invention.

[0026] 도 13은 본 발명에 따른 무결성 프로파일을 결정하는 방법의 예시적인 일 실시예의 대강을 나타내는 흐름도이다.FIG. 13 is a flow diagram illustrating the approximation of one exemplary embodiment of a method of determining an integrity profile according to the present invention. FIG.

[0027] 도 14는 본 발명에 따른 무결성 인증자(integrity authenticator)의 무결성을 검증하는 방법의 예시적인 일 실시예의 대강을 나타내는 흐름도이다.FIG. 14 is a flow diagram illustrating an overview of one exemplary embodiment of a method for verifying the integrity of an integrity authenticator in accordance with the present invention. FIG.

[0028] 콘텐트 및 서비스 제공자들은 그들의 콘텐트와 서비스를 종종 원하는 특성과 행위(behaviors)를 갖는 보증된 애플리케이션들과 시스템에 의해 소비되게 하기를 원한다는 점을 본 발명은 인식하고 있다. 콘텐트 및 서비스 소비 환경의 이 러한 측면들을 제어함으로써, 콘텐트 제공자는 예컨대 복사, 프린트, 매입(embedding), 배포(distribution) 등과 같은 사용법(usage)을 제한할 수 있다.The present invention recognizes that content and service providers want to make their content and service often consumed by guaranteed applications and systems with desired characteristics and behaviors. By controlling these aspects of the content and service consumption environment, content providers can limit usage, such as copying, printing, embedding, distribution, and the like.

[0029] 예컨대, 콘텐트 또는 서비스 제공자는 콘텐트를 소비하는 시스템이 안전도와 권리 관리능력이 어떤 레벨은 되어야 한다는 것을 요구하는 방식으로 콘텐트를 오용으로부터 보호하기를 원할 수 있다. 콘텐트 제공자는 또한 예컨대 디버거, 바이러스, 가로채기 루틴(interception routine) 등과 같은 어떤 “외래(alien)”애플리케이션도 콘텐트나 다른 민감한 정보를 압수하거나 혹은 그렇지 않다면 “훔치기”를 하는 사용자 시스템 상의 콘텐트 소비 애플리케이션과 상호작용하지 않기를 원할 수도 있다. 예컨대, 미국특허 출원번호가 09/649,841(출원일 2000.08.28)이고 제목이 "표준 렌더링 엔진을 사용하는 문서 배포 관리 방법 및 장치와 표준 렌더링 엔진을 제어하기 위한 방법 및 장치"이며 그 내용 전체가 본 출원에 통합되어 여기에 함께 언급되는 발명이 있는데, 그 발명은 사용자 시스템의 기능성 관리를 통해 문서에 대한 사용자의 접근을 제한하도록 한다. 이러한 생각들은 애플리케이션들, 서비스 및 컴퓨터 시스템들의 제공자들에게 있어서도 동일하게 적용된다고 할 수 있다. For example, a content or service provider may want to protect content from misuse in a manner that requires a system that consumes content to be at some level of safety and rights management capabilities. The content provider may also be able to communicate with any content consuming application on the user's system that any "alien" application, such as a debugger, virus, interception routine, etc., seizes or otherwise "steals" the content or other sensitive information. You may not want to interact. For example, U.S. Patent Application No. 09 / 649,841 filed on Aug. 28, 2000, entitled " Method and Apparatus for Managing Document Distribution and Using Standard Rendering Engine & Method and Apparatus for Controlling Standard Rendering Engine " There is an invention incorporated in the application and incorporated herein by reference, which allows the user to restrict access to a document through the functional management of the user system. These ideas apply equally to providers of applications, services and computer systems.

[0030] 주어진 애플리케이션들과 시스템이 원하는 특성과 행위를 갖는 것을 보증하기 위해서는, 콘텐트를 소비하는 데 필요한 모든 애플리케이션들과 시스템 구성요소들(system components)의 검증, 서비스에의 접근 또는 다른 시스템과 상호 작용하는 애플리케이션 및 구성요소들은 검증 애플리케이션에 의해 확인 받을 필요가 있다. 검증 애플리케이션은 상호 동일하거나 다를 수도 있는 하나 이상의 무결 성 프로파일들을 이용하여 그 애플리케이션과 시스템 구성요소들을 검증한다. 또한, 상호 동일하거나 다른 유형의 둘 이상의 무결성 프로파일들은 서로 결합되거나 분리되어 사용될 수 있다.In order to ensure that given applications and systems have the desired characteristics and behavior, verification of all applications and system components required to consume content, access to a service or interaction with other systems Working applications and components need to be verified by the verification application. The verification application verifies the application and system components using one or more integrity profiles, which may be the same or different from each other. In addition, two or more integrity profiles of the same or different type may be combined or used separately from each other.

[0031] 무결성 프로파일은 다양한 형태가 될 수 있는데, 본 발명의 일 실시예로서, 무결성 프로파일은 애플리케이션 무결성 프로파일(Application Integrity Profile: AIP), 행위 무결성 프로파일(Behavior Integrity Profile: BIP) 등을 포함할 수 있다. 애플리케이션 무결성 프로파일은 검증 가능한 정보와 애플리케이션에 대해 특정된 특징들을 포함할 수 있다. 이에, 애플리케이션 무결성 프로파일은 특수한 애플리케이션에 결합될 수 있다. 행위 무결성 프로파일은 애플리케이션들의 행위들이 행위 무결성 프로파일의 세부사항에서 특정된 것에 부합되는 지의 여부를 지정한 정보를 포함할 수 있다. 행위 무결성 프로파일은 바람직하게는 행위 무결성 프로파일의 세부사항을 지정하는 행위 무결성 프로파일 식별값(identification)를 포함할 수 있다. 행위 무결성 프로파일의 세부사항은 적합한 순응 애플리케이션들(compliant applications)에 의해 행위의 세트 및/또는 소비 조건 등을 세부화한다. 예를 들면, 행위 무결성 프로파일 세부사항은 행위 무결성 프로파일에 따르는 모든 타당한 애플리케이션들이 다른 행위는 수행하지 않고 재생하는 것이 허용된 재생전용(play-only) 애플리케이션이다는 점을 지정할 수 있다. 기능이나 행동 이외에도, 본 발명의 다른 실시예들은 애플리케이션, 시스템, 장치, 구성요소 등을 검증하기 위하여 예컨대 지리, 장소, 시간, 수행, 서비스 레벨, 다른 적합한 기준들 등에 근거하는 다른 유형의 행위 무결성 프로파일들을 제공한다. The integrity profile may be in various forms. As an embodiment of the present invention, the integrity profile may include an Application Integrity Profile (AIP), a Behavior Integrity Profile (BIP), and the like. have. The application integrity profile may include verifiable information and features specific to the application. As such, application integrity profiles can be combined into special applications. The behavioral integrity profile may include information specifying whether the behaviors of the applications conform to that specified in the details of the behavioral integrity profile. The behavioral integrity profile may preferably include a behavioral integrity profile identification that specifies the details of the behavioral integrity profile. The details of the behavioral integrity profile detail the set of behaviors and / or consumption conditions, etc. by compliant applications. For example, the Behavior Integrity Profile Details may specify that all legitimate applications conforming to the Behavior Integrity Profile are play-only applications that are allowed to play without performing other behavior. In addition to functions or behaviors, other embodiments of the present invention may be of other types of behavioral integrity profiles based on, for example, geography, location, time, performance, service level, other suitable criteria, etc. to verify applications, systems, devices, components, etc. Provide them.

[0032] 본 발명의 실시예들은 컴퓨터 환경에 대한 보증과 검증 서비스를 제공하는 시스템과 방법을 포함한다. 그러한 시스템 내에서, 이러한 서비스들을 제공하는 무결성 보증 및 검증 장치는 콘텐트 또는 서비스의 제공자와 시스템 또는 애플리케이션 등의 제공자 사이에 도입될 수 있다. 이 보증 장치는 그들 각각의 제공자들로부터 각 제공자들의 개별 애플리케이션들 및/또는 시스템들을 등록할 수 있으며, 미리 정해진 선택에 따라 이들 애플리케이션들 및/또는 시스템들의 무결성을 보증할 수 있다. 이러한 서비스의 사용을 통해, 사용자는 무결성 보증 및 검증장치를 "신뢰(trust)"할 수 있다. 이러한 신뢰를 가지고, 제공자는 그의 콘텐트를 소비하는 것이 허락된 애플리케이션들과 시스템 세트의 프로파일(profile)을 설정하고, 그 프로파일에 따라 사용자 시스템에 대하여 사용자의 애플리케이션들과 시스템 세트가 인증된다는 것을 검증한다. Embodiments of the present invention include a system and method for providing warranty and verification services for a computer environment. Within such a system, an integrity assurance and verification device that provides these services can be introduced between a provider of content or services and a provider such as a system or application. This assurance device can register individual applications and / or systems of each provider from their respective providers, and can guarantee the integrity of these applications and / or systems according to a predetermined selection. Through the use of these services, the user can "trust" the integrity assurance and verification device. With this trust, the provider sets up a profile of the applications and system sets that are allowed to consume its content, and verifies that the user's applications and system sets are authenticated to the user system according to that profile. .

[0033] 본 발명의 실시예들은 바람직하게는 콘텐트의 무결성과 문서 및 다른 콘텐트 등의 소비 환경들의 무결성을 위한 보증 및 검증 서비스의 제공을 포함한다. 그러한 시스템 내에서, 이러한 서비스를 제공하는 무결성 보증 및 검증 장치는, 콘텐트 제공자들과 콘텐트 소비 시스템과, 예컨대 개인용 컴퓨터, 핸드헬드 컴퓨터, PDA, 멀티미디어 디스플레이장치, DVD 플레이어, 분산망 작동형 전화기(distributed network enabled phones), 그리고 워드프로세서, 콘텐트 뷰어, 멀티미디어 플레이어들과 같은 애플리케이션들을 배포하는 애플리케이션 제공자들 사이에 도입된다. 무결성 보증 및 검증 장치는 콘텐트 소비 시스템/애플리케이션 제공자들의 개별적인 애플리케이션들 및/또는 시스템들을 등록하고, 이러한 애플리케 이션들과 시스템들의 집합을 콘텐트 제공자들에게 보증해준다. 이러한 서비스를 이용하는 것에 의해, 콘텐트 제공자는 무결성 보증 및 검증 장치를 선택하거나 신뢰할 수 있고, 이들 콘텐트를 소비하도록 허여된 시스템들과 애플리케이션들 세트의 프로파일을 설정할 수 있고, 그 프로파일에 따라서 사용자 시스템 상의 애플리케이션들과 시스템이 인증된 것이라고 사용자 시스템에 대하여 검증을 해줄 수 있다. 이러한 방법에 있어서, 사용자가 요청하거나 제출한 콘텐트에 대한 접근이나 통제의 정도는 제어되고 결정될 수 있다.Embodiments of the present invention preferably include providing assurance and verification services for the integrity of content and the integrity of consumption environments such as documents and other content. Within such systems, integrity assurance and verification devices that provide such services include content providers and content consumption systems, such as personal computers, handheld computers, personal digital assistants (PDAs), multimedia displays, DVD players, distributed network operated telephones. network enabled phones) and application providers that distribute applications such as word processors, content viewers, and multimedia players. The integrity assurance and verification device registers the individual applications and / or systems of the content consuming system / application providers and assures the content providers of this application and the set of systems. By using such a service, a content provider can select or trust an integrity assurance and verification device and set up a profile of a set of systems and applications that are allowed to consume this content, and the applications on the user system in accordance with the profile. You can verify that your system is certified. In this way, the degree of access or control of the content requested or submitted by the user can be controlled and determined.

[0034] 예시적인 실시예들은 행위 무결성 프로파일을 이용하는 보증 및 검증 장치들을 포함한다. 본 발명의 일실시예로서, 무결성 보증 및 검증 장치는 콘텐트 및 서비스 소비 시스템/애플리케이션 제공자들의 개별적인 애플리케이션들 및/또는 시스템들을 등록하고 보증하고, 애플리케이션의 행위들이 행위 무결성 프로파일 세부사항에 순응한다는 것을 검증하며, 순응상태의 증거(proof)를 제공한다. 소비자는 제공자가 강제한 몇몇 행위 무결성 프로파일에 순응하는 서비스나 콘텐트를 소비하기 위하여 어떤 적합한 콘텐트나 서비스 소비 시스템 또는 애플리케이션을 이용할 수 있다. 이러한 방법에 있어서, 콘텐트나 서비스의 이용은 특정 애플리케이션이나 시스템에 대한 소비의 제한 없이 통제될 수 있다. 이와 마찬가지로, 소비자는 몇몇 행위 무결성 프로파일에 순응하는 또 다른 애플리케이션 또는 시스템과 상호 작용하는 애플리케이션이나 어느 적합한 컴퓨터 시스템을 이용할 수 있다.Example embodiments include assurance and verification devices that use an behavior integrity profile. In one embodiment of the present invention, the integrity assurance and verification device registers and assures individual applications and / or systems of the content and service consumption system / application providers, and verifies that the behavior of the application conforms to the behavior integrity profile details. It provides proof of compliance. The consumer may use any suitable content or service consuming system or application to consume a service or content that complies with some behavioral integrity profile enforced by the provider. In this way, the use of content or services can be controlled without limiting consumption for a particular application or system. Similarly, a consumer can use any suitable computer system or application that interacts with another application or system that conforms to some behavioral integrity profile.

[0035] 더욱 안전한 보안을 위해, 애플리케이션, 시스템 등의 검증은 행위 무결성 프로파일(BIP)을 애플리케이션 무결성 프로파일(AIP)과 함께 이용함으로써 수행될 수도 있다. 본 발명의 일실시예로서, 무결성 보증 및 검증 장치는 개별적인 애플리케이션들 및/또는 시스템들을 콘텐트 및 서비스 소비 시스템/애플리케이션 제공자들로부터 등록하고 보증하며, 애플리케이션들이 애플리케이션 및 시스템 구성요소들과 관련된 무결성 프로파일에 따라 진정성이 있다는 것을 검증하고, 애플리케이션의 행위들이 행위 무결성 프로파일 세부사항에 순응한다는 것을 검증하며, 이러한 순응성의 증거를 제공한다.For more secure security, verification of applications, systems, and the like may be performed by using an Behavioral Integrity Profile (BIP) with an Application Integrity Profile (AIP). In one embodiment of the present invention, the integrity assurance and verification device registers and assures individual applications and / or systems from content and service consuming system / application providers, wherein the applications are in an integrity profile associated with the application and system components. It verifies that there is authenticity, verifies that the application's actions conform to the behavior integrity profile details, and provides evidence of this compliance.

[0036] "문서"라는 용어는, 여기서 사용되는 것처럼, 배포나 전달할 정보의 어떤 단위로서, 서신, 책, 정기간행물, 신문, 기타 서류, 소프트웨어, 플러그-인, 사진, 기타 이미지, 오디오 비디오 클립 및 기타 멀티미디어 프리젠테이션들을 포함할 수 있다. 문서는, 콤팩트디스크(CDs), 디지털비디오디스크(DVDs), 레이저디스크, 자기- 및 광자기- 매체 등과 같은 것을 포함하는, 어떤 다른 알려진 혹은 향후에 개발될 다양한 매체나 저장매체에 기록된 디지털데이터로서, 종이에 인쇄된 형태로 구체화될 수도 있다. "소비"와 "소비하다"라는 용어는, 여기서 사용되는 것처럼, 접근, 표현(rendering), 편집, 조종(manipulating), 실행, 복사, 저장, 전달, 발행, 획득, 배포 등과 같은 의미를 포함하며, 콘텐트 및 서비스의 이용 또는 접근이나 그렇지 않으면 컴퓨터 시스템들과의 상호 작용을 포함하는 어떤 적합한 작용의 형태를 내포할 수 있다. "콘텐트"라는 용어는, 여기서 사용되는 것처럼, 실체(entity), 자원, 품질, 이벤트, 상태, 개념, 내용 등과 같은 명사로 쓰일 수 있는 어떤 적합한 것을 뜻할 수 있다. 예시적인 자원들은 문서들, 멀티미디어 파일들, 웹 또는 다른 서비스들, 이름, 이메일 주소 등을 포함할 수 있다.[0036] The term "document", as used herein, is any unit of information to be distributed or conveyed, such as letters, books, periodicals, newspapers, other documents, software, plug-ins, photographs, other images, audio video clips. And other multimedia presentations. Documents are digital data recorded on any other known or future development of various media or storage media, including such as compact discs (CDs), digital video discs (DVDs), laser discs, magnetic and magneto-optical media, and the like. It may also be embodied in the form printed on paper. The terms "consumption" and "consumer", as used herein, include meanings such as accessing, rendering, editing, manipulating, executing, copying, storing, communicating, publishing, acquiring, distributing, and the like. It may include any suitable form of action, including the use or access to content and services or otherwise interaction with computer systems. As used herein, the term "content" may refer to any suitable term that may be used as a noun such as entity, resource, quality, event, state, concept, content, and the like. Example resources may include documents, multimedia files, web or other services, name, email address, and the like.

[0037] 예시적인 실시예들의 시스템 및 방법은 무결성 보증 및 검증 장치에 적용된다. 예시적인 실시예들은 콘텐트 소비 시스템 환경에 대하여 무결성 보증 및 검증 장치들을 위한 시스템들과 방법들을 각각 별개로 제공할 수도 있다. 예시적인 실시예들은 또한 시스템 및 애플리케이션의 표준화된 행위들의 보증 및 검증을 위한 시스템들과 방법들을 제공할 수 있다. 예시적인 실시예들은 또한 무결성 프로파일을 결정하기 위해 시스템과 방법을 각각 별개로 제공할 수 있다. 예시적인 실시예들은 부가적으로 하나 이상의 시스템 환경의 무결성을 검증하기 위해 시스템 및 방법을 제공할 수 있다. 예시적인 실시예들은 또한 무결성 프로파일들, 시스템 및 시스템 구성요소 정보를 관리하기 위해 시스템 및 방법을 제공할 수 있다. 예시적인 실시예들은 무결성 프로파일을 이용하여 사용자 시스템에서 무결성 점검을 수행하는 시스템 및 방법을 부가적으로 제공할 수 있다. 예시적인 실시예들은 행위 무결성 프로파일을 이용하여 사용자 시스템에서 순응 점검을 수행하는 시스템 및 방법을 부가적으로 제공할 수 있다.The system and method of example embodiments apply to an integrity assurance and verification apparatus. Example embodiments may separately provide systems and methods for integrity assurance and verification devices, respectively, for a content consumption system environment. Example embodiments may also provide systems and methods for assuring and verifying standardized behaviors of systems and applications. Example embodiments may also separately provide a system and a method for determining an integrity profile. Example embodiments may additionally provide a system and method for verifying the integrity of one or more system environments. Example embodiments may also provide a system and method for managing integrity profiles, system and system component information. Example embodiments can additionally provide a system and method for performing an integrity check at a user system using an integrity profile. Example embodiments may additionally provide a system and method for performing compliance checks on a user system using a behavioral integrity profile.

[0038] 본 발명의 일실시예로서, 콘텐트 발행자 또는 배포자와 같은 콘텐트 제공자는 사용자, 시스템, 장치 등에 의해 소비되는 콘텐트를 제공하기 위해 무결성 프로파일에 대한 요청을 시작할 수 있다. 무결성 프로파일에 관한 이러한 요청은 무결성 보증 및 검증 장치로 전달된다. 무결성 보증 및 검증 장치는, 만일 요청된 애플리케이션들과 시스템 구성요소들에 관한 무결성 프로파일이 존재하지 않는다면, 여러 가지 시스템 구성요소 및/또는 애플리케이션들을 사용자에게 공급해 오고 있는 콘텐트 소비 시스템/애플리케이션 제공자에게 질의를 할 수 있다. 콘텐트 소비 시스템/애플리케이션 제공자는 특정 애플리케이션들 또는 시스템 구성요소들에 관한 인증정보(authentication information)를 무결성 보증 및 검증장치로 리턴한다. 인증정보에 접근권을 갖는 무결성 보증 및 검증 장치는 사용자 시스템 상의 애플리케이션 또는 시스템 구성요소와 콘텐트 소비 시스템/애플리케이션 제공자가 배포한 오리지널 애플리케이션 또는 시스템 구성요소 간의 비교, 또는 무결성 검증을 할 수 있다.As one embodiment of the invention, a content provider, such as a content publisher or distributor, may initiate a request for an integrity profile to provide content consumed by a user, system, device, or the like. This request for integrity profile is forwarded to the integrity assurance and verification device. The integrity assurance and verification device, if there is no integrity profile for the requested applications and system components, queries the content consumption system / application provider who has been supplying the various system components and / or applications to the user. can do. The content consumption system / application provider returns authentication information about specific applications or system components to the integrity assurance and verification device. The integrity assurance and verification apparatus having access to the authentication information may compare or verify the integrity of the application or system component on the user system and the original application or system component distributed by the content consuming system / application provider.

[0039] 시스템 애플리케이션들 및 구성요소에 관한 상기 인증정보는 구성요소 데이터베이스에 저장될 수 있다. 콘텐트 제공자들에 대한 프로파일들은 프로파일 데이터베이스에 저장될 수 있다. 다른 대안으로서, 콘텐트 소비 시스템/애플리케이션 제공자는, 무결성 보증 및 검증 장치가 무결성 프로파일을 결정할 필요성 없이, 무결성 보증 및 검증 장치의 각 데이터베이스로 직접 전달될 수 있는 인증정보의 데이터베이스를 유지할 수 있다. 이 경우, 무결성 프로파일 식별값(identification)가, 정해진 무결성 프로파일에 대응하여, 콘텐트 제공자에게 리턴된다. The authentication information regarding system applications and components may be stored in a component database. Profiles for content providers may be stored in a profile database. As another alternative, the content consuming system / application provider may maintain a database of authentication information that may be passed directly to each database of the integrity assurance and verification device, without the need for the integrity assurance and verification device to determine the integrity profile. In this case, an integrity profile identification is returned to the content provider, corresponding to the determined integrity profile.

[0040] 콘텐트 배포자와 같은 콘텐트 제공자는 예컨대 보호되는 콘텐트(protected content)를 사용자에게 제공한다. 콘텐트 제공자는 사용자에게 예컨대 라이센스 동의서와 무결성 프로파일 식별값을 포함하는 디지털 콘텐트의 보호판(protected version)을 전달한다. 무결성 프로파일 식별값은 예컨대 보호되는 콘텐트와 결합되어 사용되도록 허여된 애플리케이션들과 시스템 구성요소들, 그리고 그러한 시스템/애플리케이션들에 관한 무결성 프로파일의 식별값을 포함한다.A content provider, such as a content distributor, provides the user with protected content, for example. The content provider delivers a protected version of the digital content to the user, including, for example, a license agreement and integrity profile identification. Integrity profile identifications include, for example, applications and system components that are permitted to be used in conjunction with protected content, and identifications of integrity profiles relating to such systems / applications.

[0041] 무결성 보증 및 검증 장치는, 콘텐트 소비 시스템/애플리케이션 제공자로부터의 인증정보를 가지고서, 예컨대 사용자 시스템의 요청이 있으면, 무결성 프로파일을 사용자 시스템으로 전달한다. 이러한 무결성 프로파일을 이용하여, 사용자 시스템의 무결성 검증이 수행될 수 있다. 사용자 시스템의 구성요소/애플리케이션이 인증받을 수 있는 것이라고 결정되면, 비로소 콘텐트 제공자에 의해 제공되는 디지털 콘텐트에 대한 사용자의 애플리케이션들과 시스템의 액세스가 예컨대 부가적인 프로파일 정보에 따라서 이루어질 수 있다.The integrity guarantee and verification apparatus has authentication information from the content consuming system / application provider, for example, upon request of the user system, delivers an integrity profile to the user system. Using this integrity profile, integrity verification of the user system can be performed. Once it is determined that the components / applications of the user system can be authenticated, the user's applications and system access to the digital content provided by the content provider may be made, for example, in accordance with additional profile information.

[0042] 콘텐트 제공자는 바람직하게는 하나 이상의 행위 무결성 프로파일 식별값을 디지털 콘텐트와 함께 결합할 수 있다. 예를 들면, 음악 콘텐트가 재생-전용(play-only) 및 1회-한정 복사(copy-once-only)만 가능한 장치에 의해 소비되기를 원하는 음악 콘텐트 제공자는 재생-전용 및 1회-한정 복사만 가능한 행위 무결성 프로파일 식별값를 콘텐트와 함께 결합할 수 있다. 애플리케이션 무결성 프로파일 식별값(identification)은 보호 콘텐트와 결합되지는 않지만, 시스템/애플리케이션 제공자에 의해 애플리케이션들과 시스템 구성요소들에 심어져 결합될 수 있다. 예를 들면, 콘텐트 제공자가 서비스를 제공하는 곳에서 보안 브라우저(browser)가 사용될 때에만 고객의 서비스 이용이 가능해지도록 할 수도 있다. [0042] The content provider may preferably combine one or more behavioral integrity profile identifications with the digital content. For example, a music content provider who wants music content to be consumed by a device capable of only play-only and copy-once-only copies only play-only and once-limited copies. Possible behavior integrity profile identifications can be combined with the content. The application integrity profile identification is not combined with the protected content, but may be embedded in the applications and system components by the system / application provider. For example, a customer may be able to use the service only when a secure browser is used where the content provider provides the service.

[0043] 무결성 보증 및 검증 장치는 행위 무결성 프로파일 식별값을 이용하여 프로파일 검증 장치로부터 행위 무결성 프로파일의 순응 증거를 검색한다. 무결성 보증 및 검증 장치는 애플리케이션 무결성 프로파일 식별값을 이용하여 무결성 프로파일을 검색하고 이를 사용자 시스템으로 전달한다. 이 무결성 프로파일을 가 지고, 사용자 시스템의 구성요소들/애플리케이션들이 조작되지 않았다는 것을 보장하기 위해 사용자 시스템의 무결성 검증이 수행될 수 있다. 만일 사용자 시스템의 구성요소들/애플리케이션들이 진정성이 있고 행위 무결성 프로파일의 순응 증거가 존재한다고 결정된다면, 콘텐트 제공자에 의해 제공되는 디지털 콘텐트는 사용자의 애플리케이션들과 시스템들에 의해서 소비될 수 있다. 이와 마찬가지로, 구성요소들/애플리케이션들이 진정성이 있고 행위 무결성 프로파일의 순응 증거가 존재한다고 결정된다면, 서비스는 소비될 수 있거나 애플리케이션 또는 컴퓨터 자원이 접근될 수 있다. The integrity assurance and verification device retrieves compliance evidence of the behavior integrity profile from the profile verification device using the behavior integrity profile identification value. The integrity assurance and verification device uses the application integrity profile identification to retrieve the integrity profile and deliver it to the user system. With this integrity profile, integrity verification of the user system can be performed to ensure that the components / applications of the user system have not been tampered with. If the components / applications of the user system are determined to be authentic and there is evidence of compliance with the behavioral integrity profile, the digital content provided by the content provider may be consumed by the user's applications and systems. Similarly, if the components / applications are determined to be authentic and there is evidence of compliance with the behavioral integrity profile, the service may be consumed or the application or computer resource may be accessed.

[0044] 그러나 무결성 보증에 대한 요청은 콘텐트 제공자에게서 유래될 필요는 없다는 점을 인식할 필요가 있다. 예를 들면, 보증 요청은 프로파일 식별값 정보에 내장된(embedded) 소프트웨어 애플리케이션에 의해 시발될 수 있으며, 그 프로파일 식별값 정보는 보호되는 콘텐트와 함께 콘텐트 제공자로부터 사용자의 시스템으로 전달된다.However, it is to be appreciated that the request for integrity assurance does not need to originate from the content provider. For example, a warranty request can be initiated by a software application embedded in profile identification information, which is passed along with the protected content from the content provider to the user's system.

[0045] 더 나아가 예시적인 실시예로서, 콘텐트 제공자는 또한 무결성 검증 및 보증 시스템으로서 서비스할 수도 있다. 예를 들면, 콘텐트 제공자는 적절한 인증정보를 수집하고 콘텐트 제공자 자신의 사용에 관한 무결성 프로파일을 정함으로써 무결성 보증 및 검증 서비스 그 자체를 수행할 수 있다.Furthermore, as an illustrative embodiment, the content provider may also serve as an integrity verification and assurance system. For example, a content provider may perform the integrity assurance and verification service itself by collecting appropriate authentication information and defining an integrity profile regarding the content provider's own use.

[0046] 더 나아가 예시적인 실시예로서, 콘텐트 또는 서비스 소비 애플리케이션/시스템 제공자는 또한 무결성 보증 및 검증 장치로서 작용할 수 있다. 예를 들면, 콘텐트 또는 서비스 소비 애플리케이션/시스템 제공자는 무결성 프로파일을 관련 애플리케이션 및/또는 시스템 구성요소와 함께 공급할 수도 있다.Further as an example embodiment, the content or service consuming application / system provider may also act as an integrity assurance and verification device. For example, a content or service consuming application / system provider may supply an integrity profile with related applications and / or system components.

[0047] 예시적인 실시예들의 시스템 및 방법은 디지털 콘텐트 및 서비스의 소비와 컴퓨터 시스템의 이용 또는 다른 상호작용에 대한 환경의 무결성을 결정하는 보증 및 검증 서비스를 제공한다. 예를 들면, 예시적인 시스템은 오디오, 비디오, 온라인 서비스 등과 같은 소비자 미디어를 포함하는 콘텐트와 서비스의 소비를 위해 제공된다. 콘텐트의 소비에 관한 예시적인 시스템은 하나 이상의 콘텐트 제공자와 하나 이상의 콘텐트 소비 시스템, 그리고 애플리케이션 제공자들 사이에 도입되는 무결성 보증 및 검증 장치를 포함할 수 있다. 무결성 보증 및 검증 장치는 콘텐트 소비 애플리케이션 및/또는 시스템 제공자들로부터 인증 정보(authentication information)를 획득한다. 이 인증 정보는 콘텐트 제공자로 하여금 콘텐트가 제공될 환경을 신뢰할 수 있도록 해 준다. 이렇게 하여, 콘텐트 소비 애플리케이션 및 시스템 제공자로부터 입수된 인증 정보에 기초하여, 무결성 프로파일이 설정된다. 그러고 나서 이 프로파일은 사용자가 콘텐트 제공자가 제공한 디지털 콘텐트를 바거나 수정하지 않았거나, 또는 잠재적으로라도 권한 없는 방법으로 조작하지 않을 것임을 확인하기 위해 사용자 시스템으로 전달된다.The system and method of example embodiments provide assurance and verification services that determine the integrity of the environment for consumption of digital content and services and use or other interaction of a computer system. For example, example systems are provided for the consumption of content and services, including consumer media such as audio, video, online services, and the like. An example system for the consumption of content may include one or more content providers, one or more content consumption systems, and integrity assurance and verification devices introduced between application providers. The integrity assurance and verification device obtains authentication information from the content consuming application and / or system providers. This authentication information allows the content provider to trust the environment in which the content will be presented. In this way, an integrity profile is established based on authentication information obtained from the content consuming application and the system provider. This profile is then passed to the user's system to confirm that the user has not altered or modified the digital content provided by the content provider, or will not potentially manipulate it in an unauthorized manner.

[0048] 이하 도면들을 참조하면, 도 1a는 무결성 보증 및 검증을 수행하는 예시적인 시스템(100)을 도시한다. 예시적인 실시예에서, 무결성 보증 및 검증 시스템(100)은 무결성 보증 및 검증 장치(200), 콘텐트 제공자 및/또는 배포자(300), 사용자 시스템(400), 콘텐트 소비 시스템/애플리케이션 제공자(500), 구성요소 데이터 베이스(260) 및 프로파일 데이터베이스(270) 등을 포함할 수 있다.Referring to the drawings below, FIG. 1A shows an example system 100 for performing integrity assurance and verification. In an example embodiment, the integrity assurance and verification system 100 includes an integrity assurance and verification apparatus 200, a content provider and / or distributor 300, a user system 400, a content consumption system / application provider 500, Component database 260, profile database 270, and the like.

[0049] 예시적인 운영 환경에 있어서, 콘텐트 소비 시스템/애플리케이션 제공자(500)는 애플리케이션들, 시스템 및/또는 소프트웨어/하드웨어 구성요소들을 사용자에게 제공한다. 사용자 시스템(400)은 콘텐트 제공자와 배포자(300)에 의해 공급되는, 문서와 같은, 디지털 콘텐트의 소비를 허락한다. 사용자 시스템(400)의 무결성을 검증하기 위해, 무결성 보증 및 검증 장치(200)는 콘텐트 소비 시스템/애플리케이션 제공자(500)으로부터 개별적인 애플리케이션들, 시스템 및/또는 소프트웨어/하드웨어 구성요소들에 대한 인증정보를 수집 및 등록한다. 이러한 인증정보를 가지고서, 무결성 보증 및 검증 장치(200)는 하나 이상의 애플리케이션들의 무결성 프로파일, 그 콘텐트 제공자(300)로부터의 서비스 요청(20)에 의거한 시스템 및/또는 시스템 구성요소들을 결정하고 보증해준다. 이 결정된 무결성 프로파일(50)은 사용자 시스템(400)에 전달되어 사용자 시스템(400)의 무결성이 결정될 수 있다.In an example operating environment, content consumption system / application provider 500 provides applications, systems, and / or software / hardware components to a user. User system 400 allows consumption of digital content, such as documents, supplied by content providers and distributors 300. In order to verify the integrity of the user system 400, the integrity assurance and verification device 200 obtains authentication information for individual applications, systems and / or software / hardware components from the content consuming system / application provider 500. Collect and register. With this authentication information, integrity assurance and verification device 200 determines and assures the system and / or system components based on the integrity profile of one or more applications, the service request 20 from its content provider 300. . This determined integrity profile 50 may be communicated to the user system 400 to determine the integrity of the user system 400.

[0050] 동작 시, 콘텐트 제공자 및 배포자(300)는 문서와 같은 디지털 콘텐트를 사용자 시스템(400)에 제공한다. 사용자 시스템(400)은 하드웨어 구성요소들 및/또는 여러 가지 소프트웨어 애플리케이션들과 같은 하나 이상의 시스템 구성요소들을 포함할 수 있다. 이들 애플리케이션들과 하드웨어/소프트웨어 구성요소들은 대개 사용자에 의해, 컴퓨터 공급자, 소프트웨어 창고, 애플리케이션 제공자 등과 같은 하나 이상의 콘텐트 소비 시스템/애플리케이션 제공자로부터 입수된다. 그 후, 이들 애플리케이션들과 하드웨어 및 소프트웨어 구성요소들은, 사용자가 문서와 같은 콘텐트를 소비하게 되도록 하기 위해, 만약 이미 조립되어 있거나 설치된 것이 아니라면, 사용자에 의해 조립된다.In operation, the content provider and distributor 300 provide digital content, such as a document, to the user system 400. User system 400 may include one or more system components, such as hardware components and / or various software applications. These applications and hardware / software components are usually obtained by the user from one or more content consumption system / application providers such as computer providers, software warehouses, application providers, and the like. These applications and hardware and software components are then assembled by the user, if not already assembled or installed, in order to allow the user to consume content such as a document.

[0051] 따라서, 사용자 환경의 애플리케이션들 및 하드웨어/소프트웨어를 사용하는 과정 동안에, 사용자는 문서와 같은 보호되는 내용을 보길 원할 수도 있다. 이에, 사용자(400)는 콘텐트 제공자(300)로부터 하나 이상의 콘텐트, 예컨대 전자 책, 멀티미디어 파일, 프리젠테이션, 폼 템플릿(a form template) 등을 요청할 수 있다. 이러한 요청을 받으면, 콘텐트 제공자 및 배포자(300)는 요청된 콘텐트를 보호되는 형식으로 프로파일 식별값(10)과 함께 최종 사용자(400)에게 제공할 수 있다. 이 프로파일 식별값(10)은 예컨대 어떤 애플리케이션에서 그 보호되는 콘텐트가 보여질 수 있는 지와 예컨대 제공된 콘텐트가 특정의 소프트웨어/하드웨어 환경 내에서 어느 정도까지 조작될 수 있는 지에 관한 상세 사항들을 포함할 수 있다.Thus, during the process of using applications and hardware / software of the user environment, the user may wish to view protected content such as a document. Accordingly, the user 400 may request one or more contents, such as an e-book, a multimedia file, a presentation, a form template, etc. from the content provider 300. Upon receiving this request, the content provider and distributor 300 can provide the requested content to the end user 400 with the profile identification value 10 in a protected format. This profile identification 10 may include, for example, details about in which application the protected content can be viewed and for example to what extent the provided content can be manipulated within a particular software / hardware environment. have.

[0052] 부가해서, 콘텐트 제공자(300)는 서비스요청(20)을 무결성 보증 및 검증 장치(200)로 전달할 수 있다. 서비스 요청(20)은 예컨대 콘텐트 제공자(300)가 배포된 보호 콘텐트를 사용자 시스템(400)이 소비하게 하는 것을 원하는 소프트웨어 애플리케이션 및/또는 구성요소의 리스트를 포함한다. 무결성 보증 및 검증 장치(200)는 그 서비스 요청이 지목한 구성요소 및 애플리케이션들/소프트웨어가 구성요소 데이터베이스(260) 및/또는 프로파일 데이터베이스(270) 안에 저장된 대응 인증 정보를 가지고 있는 지를 결정한다. 만약 무결성 보증 및 검증 장치가 서비스요청(20)에서 특정된 인증정보를 가지지 않았다면, 그 무결성 보증 및 검증 장치(200)는, 하나 이상의 콘텐트 소비 시스템/애플리케이션들의 제공자들(500)로부터, 특정 애플리케이션, 시스템, 하드웨어/소프트웨어 구성요소 등에 관한 인증 정 보를 요청할 수 있다., 무결성 보증 및 검증 장치(200)는, 이러한 인증 정보에 대해 접근하여서, 애플리케이션과 시스템 구성요소에 관련된 정보를 구성요소 데이터베이스(260)에 저장한다. 본 발명의 다른 실시예로서, 무결성 보증 및 검증 장치(200)는 하나 이상의 애플리케이션들에 관한 무결성 프로파일을 발전시킬 수 있다. 애플리케이션들, 시스템 및 시스템 구성요소들의 진정성(authenticity)을 확인해 주는 이러한 정보를 가지고서, 무결성 보증 및 검증 장치(200)는 무결성 프로파일(50)을 사용자 시스템(400)에 전달한다. 이 무결성 프로파일(50)은 시스템, 시스템 구성요소 및/또는 사용자 시스템(400)의 애플리케이션들의 진정성을 확인하는 데 이용된다. 만약 사용자의 시스템 구성요소 및/또는 애플리케이션들이 진정한 것이라는 점이 결정되면, 보호 콘텐트(protected content)(10)는 방호가 해제되어(unprotected) 사용자 시스템(400)은 그 보호 콘텐트를 볼 수 있거나 그렇지 않을 경우 무결성 프로파일에 따라서 조작할 수 있다. In addition, the content provider 300 may forward the service request 20 to the integrity guarantee and verification apparatus 200. The service request 20 includes, for example, a list of software applications and / or components that the content provider 300 wants to cause the user system 400 to consume the distributed protected content. The integrity assurance and verification device 200 determines whether the component and applications / software pointed to by the service request have corresponding authentication information stored in the component database 260 and / or the profile database 270. If the integrity assurance and verification device did not have the authentication information specified in the service request 20, then the integrity assurance and verification device 200, from the providers 500 of one or more content consumption systems / applications, may be selected from the specific application, Authentication information regarding a system, hardware / software component, etc. may be requested. The integrity assurance and verification apparatus 200 accesses such authentication information and stores information related to an application and a system component in the component database 260. Store in As another embodiment of the present invention, the integrity assurance and verification apparatus 200 may develop an integrity profile for one or more applications. With this information confirming the authenticity of applications, systems and system components, integrity assurance and verification device 200 forwards integrity profile 50 to user system 400. This integrity profile 50 is used to verify the authenticity of the system, system components, and / or applications of the user system 400. If it is determined that the user's system components and / or applications are true, the protected content 10 is unprotected so that the user system 400 can view the protected content or not. Can be manipulated according to the integrity profile.

[0053] 도 1b는 행위 무결성 프로파일 검증을 애플리케이션 무결성 프로파일 검증과 함께 적용하는 무결성 보증 및 검증을 수행하기 위한 또 다른 예시적인 시스템을 도시한다. 도 1a에서 설명된 예시적인 시스템과 유사하게, 사용자 시스템(400)은 콘텐트 제공자(300)로부터 전자 책, 멀티미디어 파일, 프리젠테이션, 폼 템플릿 등과 같은 하나 이상의 콘텐트를 제공받는다. 콘텐트 제공자 및 배포자(300)는 콘텐트를 하나 이상의 행위 무결성 프로파일 식별값, 선택적(optional) 행위 무결성 프로파일 연결 검증 플래그(flag) 및 선택사항으로서(optionally) 사용 라이센스와 함께 보호되는 형태로 최종 사용자 시스템(400)에 제공할 수 있다. 행위 무결성 프로파일 식별값은 사용자 시스템(400)이 보호 콘텐트를 소비하기 위해 순응하는 잘 알려진 행위들이나 약정(terms)들 또는 조건들의 집합을 상술한 특정한 행위 무결성 프로파일 세부사항을 나타낸다. 행위 무결성 프로파일 연결 검증 플래그는 다수의 행위 무결성 프로파일 식별값이 특정될 때 이와 연결하여 행위 무결성 프로파일 순응을 검증할 지의 여부를 지시한다. 만일 행위 무결성 프로파일 연결 검증 플래그가 명시적으로 특정되어 있지 않으면, 무결성 보증 및 검증 장치는 연결 없이 검증하도록 검증을 초기화 할 수 있다. 예를 들어, 만일 콘텐트 제공자 및 배포자(300)가 보호 콘텐트에 대해 재생-전용(play-only) 행위 무결성 프로파일 식별값과 일회-한정 전달(transfer-once-only) 두 가지를 특정하였고 그리고 그 행위 무결성 프로파일 연결 검증 플래그가 특정되는 경우, 그 재생-전용(play-only) 행위 무결성 프로파일 식별값과 일회-한정 전달(transfer-once-only) 행위 무결성 프로파일 식별값의 둘 모두를 따르는 시스템들 및 애플리케이션들 등만이 그 보호 콘텐트를 소비할 수 있다. 반면에, 만일 행위 무결성 프로파일 연결 검증 플래그가 특정되어 있지 않으면, 그 재생-전용(play-only) 행위 무결성 프로파일과 일회-한정 전달(transfer-once-only) 행위 무결성 프로파일 중 어느 한 가지 또는 이들 두 가지의 행위 무결성 프로파일을 시스템들과 애플리케이션들 등이 그 보호 콘텐트를 소비할 수 있다. 본 발명의 또 다른 실시예로서, 사용자 시스템(400)은 콘텐트 제공자(300)로부터 콘텐트를 직접 받지 않고, 콘텐트 제공자(300)로부터 하나 이상의 행위 무결성 프로파일 식별값, 선택적(optional) 행위 무결성 프로파일 연결 검증 플래그 및 선택적 사용 라이센스를 제공 받는다. 이러한 시나리오 하에 서는, 선택적 사용 라이센스들에 의해 참조되거나 다른 수단들에 의해 암시되거나 참조되어 사용자 시스템(400) 상에 콘텐트가 존재할 수 있다. 한편, 또 다른 예에서는 "콘텐트"는 사용자 시스템(300)에 의해 접근될 수 있는 어느 적합한 콘텐트, 서비스, 컴퓨터 환경 등을 포함할 수 있다.FIG. 1B shows another example system for performing integrity assurance and verification that applies behavioral integrity profile verification in conjunction with application integrity profile verification. Similar to the example system described in FIG. 1A, the user system 400 receives one or more content, such as an e-book, multimedia file, presentation, form template, etc. from the content provider 300. The content provider and distributor 300 may store the content in a protected form with one or more behavioral integrity profile identifications, optional behavioral integrity profile association verification flags and optionally use licenses. 400). The behavioral integrity profile identification represents a specific behavioral integrity profile detailing the set of well known behaviors or terms or conditions that the user system 400 conforms to to consume protected content. The Behavioral Integrity Profile Association Verification flag indicates whether or not a plurality of Behavioral Integrity Profile identification values are specified in connection with this to verify behavioral integrity profile compliance. If the Behavioral Integrity Profile Connection Verification flag is not explicitly specified, the integrity assurance and verification device may initiate verification to verify without connection. For example, if the content provider and distributor 300 specified both a play-only behavior integrity profile identification and a transfer-once-only for protected content, and the behavior Systems and applications that comply with both the play-only behavior integrity profile identification and the transfer-once-only behavior integrity profile identification when the integrity profile connection verification flag is specified. Only etc. can consume the protected content. On the other hand, if the Behavior Integrity Profile Connection Verification flag is not specified, one or both of its play-only Behavior Integrity Profile and Transfer-once-Only Behavior Integrity Profile Branch behavioral integrity profiles such as systems and applications can consume the protected content. As another embodiment of the present invention, the user system 400 does not receive content directly from the content provider 300, but rather one or more behavior integrity profile identification, optional behavior integrity profile connection verification from the content provider 300. Flags and optional use licenses are provided. Under such a scenario, content may exist on user system 400 as referenced by selective use licenses or implied or referenced by other means. On the other hand, in another example, "content" may include any suitable content, service, computer environment, or the like, accessible by the user system 300.

[0054] 사용자 시스템(400)이 보호된 콘텐트를 소비할 수 있게 되기 전에, 애플리케이션들/시스템들이 진정성이 있고 이들의 행위들이 행위 무결성 프로파일 세부사항에 순응한다는 것을 확인하기 위해 무결성 보증 및 검증 장치(200)는 이들 애플리케이션들/시스템들의 무결성을 검증한다. 만일 사용자의 시스템 구성요소 및/또는 애플리케이션들이 양 기준을 만족시키는 것으로 결정된다면, 사용자 시스템(400)이 행위 무결성 프로파일 세부사항에 따라 보호 콘텐트를 소비할 수 있도록 보호 콘텐트(10)는 보호 해제상태로 만들어 진다. 본 발명에 따라, 애플리케이션들 및 시스템들을 이들의 원하는 특징들 및 행위들에 기초하여 보증함으로써, 개발 및 보증되어야 할 애플리케이션들 및 시스템들 혹은 이들이 장래에 보증될 때에 존재하는 애플리케이션들 및 시스템들 뿐만 아니라 기존의 보증된 애플리케이션들 및 시스템들에 의해서도 동일한 보호 콘텐트가 소비될 수 있다.Before the user system 400 is able to consume the protected content, an integrity assurance and verification device (R) to ensure that the applications / systems are authentic and that their behavior conforms to the behavior integrity profile details. 200 verifies the integrity of these applications / systems. If it is determined that the user's system components and / or applications meet both criteria, the protected content 10 is placed in an unprotected state so that the user system 400 can consume the protected content according to the behavioral integrity profile details. Is made. In accordance with the present invention, by assuring applications and systems based on their desired features and behaviors, as well as the applications and systems to be developed and assured, or the applications and systems that exist when they are warranted in the future, The same protected content can also be consumed by existing guaranteed applications and systems.

[0055] 사용자 시스템(400)의 무결성을 검증하기 위해, 무결성 보증 및 검증 장치(200)는 콘텐트 소비 시스템/애플리케이션 제공자(500)로부터 개별적인 애플리케이션들, 시스템들, 및/또는 소프트웨어/하드웨어 구성요소들에 관한 인증 정보를 수집하고 등록한다. 이 인증 정보를 가지고, 무결성 보증 및 검증 장치(200)는 하나 이상의 애플리케이션들, 시스템들, 및/또는 시스템 구성요소들의 무결성 프로파 일을 결정하고 보증한다. 그런 다음, 사용자 시스템(400)의 무결성이 결정될 수 있도록 애플리케이션 무결성 프로파일(50)이 사용자 시스템(400)으로 전달된다. 일단 시스템의 무결성이 확인되어 시스템이 조작되지 않았음이 결정되면, 무결성 보증 및 검증 장치(200)는 증거(proof)가 존재한다는 것을 검증함으로써 애플리케이션들이 행위 무결성 프로파일 세부사항에 따르며, 애플리케이션들이 행위 무결성 프로파일 식별값에 의해 식별된 행위 무결성 프로파일 세부사항에 진정으로 순응한다는 것을 보장해 준다. 무결성 보증 및 검증 장치(200)는 보호 콘텐트(10)에서 특정되는 행위 무결성 프로파일 식별값을 획득하고, 애플리케이션 무결성 프로파일로부터의 정보에 기초하여 애플리케이션 식별 정보를 구성하며, 행위 무결성 프로파일 순응의 증거를 얻기 위해 애플리케이션 식별값을 이용한다. 무결성 보증 및 검증 장치(200)는 행위 무결성 프로파일 식별값 및 애플리케이션 식별 정보에 관련된 순응 상태를 검색하는 프로파일 검증 장치를 불러냄으로써 행위 무결성 프로파일 순응의 증거를 동적으로 획득할 수 있다. 시스템의 무결성과 시스템의 행위들 모두가 대응하는 애플리케이션 무결성 프로파일 및 행위 무결성 프로파일을 사용하여 성공적으로 검증될 때에, 사용자 시스템(400)은 보호 콘텐트를 소비할 수 있다. In order to verify the integrity of the user system 400, the integrity assurance and verification apparatus 200 may be configured to separate applications, systems, and / or software / hardware components from the content consumption system / application provider 500. Collect and register authentication information for. With this authentication information, the integrity assurance and verification device 200 determines and verifies the integrity profile of one or more applications, systems, and / or system components. The application integrity profile 50 is then passed to the user system 400 so that the integrity of the user system 400 can be determined. Once the integrity of the system is verified and determined that the system has not been tampered with, the integrity assurance and verification device 200 verifies that there is proof that the applications conform to the behavior integrity profile details, and the applications perform the behavior integrity. It ensures genuine compliance with the behavioral integrity profile details identified by the profile identification. The integrity assurance and verification device 200 obtains the behavior integrity profile identification value specified in the protected content 10, constructs the application identification information based on the information from the application integrity profile, and obtains evidence of the behavior integrity profile compliance. To use the application identification. The integrity assurance and verification apparatus 200 may dynamically obtain evidence of behavior integrity profile compliance by invoking a profile verification apparatus that retrieves compliance status related to the behavior integrity profile identification value and the application identification information. When both the system's integrity and the system's behaviors are successfully verified using the corresponding application integrity profile and behavioral integrity profile, the user system 400 can consume the protected content.

[0056] 도 1c는 행위 무결성 프로파일 검증만을 필요로 하는 무결성 보증 및 검증을 수행하기 위한 또 다른 예시적인 시스템을 도시한다. 이러한 실시예서는, 사용자 시스템(400)이 보호 콘텐트를 소비할 수 있게 되기 전에, 애플리케이션들/시스템들의 행위들이 행위 무결성 프로파일 세부사항에 순응한다는 것을 확실히 하도록 무결성 보증 및 검증 장치(200)가 애플리케이션들/시스템들의 무결성을 검증 한다. 만일 사용자의 시스템 구성요소들 및/또는 애플리케이션들이 행위 무결성 프로파일 세부사항에 순응한다는 것이 결정되면, 사용자 시스템(400)이 행위 무결성 프로파일 세부사항에 따라 보호 콘텐트를 소비할 수 있도록 보호 콘텐트(10)는 보호 해제되도록 만들어진다. 이러한 접근의 이점은 애플리케이션 무결성 프로파일 검증 단계가 수행되는 것이 필요하지 않기 때문에, 더 빠르게 수행된다는 것이다. 그러나 행위 무결성 프로파일의 순응 증거가 사용자 시스템(400)에 존재할 때조차도 사용자 시스템(400)이 조작으로부터 자유롭다는 보장은 없을 수도 있다. 닫힌 시스템 등에서의 확실한 애플리케이션에 대해서는 애플리케이션 무결성 검증이 사용될 필요는 없다.FIG. 1C shows another example system for performing integrity assurance and verification that requires only behavioral integrity profile verification. In this embodiment, the integrity assurance and verification apparatus 200 is responsible for ensuring that the actions of the applications / systems conform to the behavior integrity profile details before the user system 400 can consume the protected content. Verify the integrity of the systems If it is determined that the user's system components and / or applications are compliant with the behavioral integrity profile details, the protected content 10 may allow the user system 400 to consume the protected content in accordance with the behavioral integrity profile details. It is made to be unprotected. The advantage of this approach is that the application integrity profile verification step does not need to be performed, so it is done faster. However, even when evidence of compliance of the behavioral integrity profile is present in the user system 400, there may be no guarantee that the user system 400 is free from manipulation. For integrity applications, such as in closed systems, application integrity verification does not need to be used.

[0057] 도 1c에 따라서, 무결성 보증 및 검증 장치(200)는 증거(proof)가 존재한다는 것을 검증함으로써, 즉 애플리케이션들이 행위 무결성 프로파일 식별값에 의해 식별된 행위 무결성 프로파일 세부사항에 진정으로 순응한다는 것을 검증함으로써 애플리케이션들이 행위 무결성 프로파일 세부사항에 따른 다는 것을 보장해 준다. 무결성 보증 및 검증 장치(200)는 보호 콘텐트(10)에서 특정되는 행위 무결성 프로파일 식별값을 획득하고, 사용자 시스템(400)으로부터의 정보에 기초하여 애플리케이션 식별 정보를 구성하며, 행위 무결성 프로파일 순응의 증거를 얻기 위해 애플리케이션 식별 정보를 이용한다. 무결성 보증 및 검증 장치(200)는 행위 무결성 프로파일 식별값 및 애플리케이션 식별 정보에 관련된 순응 상태를 검색하는 프로파일 검증 장치를 불러냄으로써 행위 무결성 프로파일 순응의 증거를 동적으로 획득할 수 있다. 행위 무결성 프로파일을 사용함에 있어서 애플리케이션의 행위들 이 성공적으로 검증될 때에, 사용자 시스템(400)이 보호 콘텐트에 접근하거나 그렇지 않으면 사용자 시스템(400)이 보호 콘텐트를 소비하는 것이 허여된다. According to FIG. 1C, the integrity assurance and verification apparatus 200 verifies that there is proof, that is, the applications are truly compliant with the behavior integrity profile details identified by the behavior integrity profile identification. Verifying that the application ensures that the application complies with the behavioral integrity profile details. The integrity assurance and verification device 200 obtains the behavior integrity profile identification value specified in the protected content 10, constructs application identification information based on the information from the user system 400, and evidences of the behavior integrity profile compliance. Use application identification information to get The integrity assurance and verification apparatus 200 may dynamically obtain evidence of behavior integrity profile compliance by invoking a profile verification apparatus that retrieves compliance status related to the behavior integrity profile identification value and the application identification information. When the behavior of the application is successfully verified in using the behavioral integrity profile, the user system 400 is allowed to access the protected content or otherwise the user system 400 is allowed to consume the protected content.

[0058] 애플리케이션들, 시스템들, 및/또는 소프트웨어/하드웨어 구성요소들이 행위 무결성 프로파일에 순응한다는 것을 보장하기 위해, 무결성 보증 및 검증 장치(200)는 애플리케이션들/시스템들의 행위들이 행위 무결성 프로파일에서 세부사항에 순응한다는 것을 검증하는 기능적 및/또는 시스템 레벨들에서 엄격한 검증을 수행할 수 있다.In order to ensure that applications, systems, and / or software / hardware components conform to the Behavioral Integrity Profile, integrity assurance and verification apparatus 200 may determine that the behaviors of the applications / systems are detailed in the Behavioral Integrity Profile. Strict verification can be performed at functional and / or system levels to verify compliance.

[0059] 기능적인 레벨에서, 검증 프로세스는 애플리케이션들/시스템들에 의해 제공된 모든 적합한 기능들이 행위 무결성 프로파일 세부사항에 의해 한정된 범위 내에서 작동된다는 것을 보장해줄 수 있다. 기능적 레벨에서의 검증 프로세스는 특징들을 실행할 목적의 자동 및/또는 수동 테스트들을 활용할 수 있다. 예를 들어, 재생-전용(play-only) 행위 무결성 프로파일이 주어진다면, 검증 프로세스들은 애플리케이션들/시스템들이 사용자에게 디스플레이 되는 콘텐트 등과 같은 재생-전용 특징들을 제공한다는 것을 확인해 줄 수 있다. 따라서, 그 재생-전용 행위를 침해하는, 예컨대 편집, 복사 등과 같은, 애플리케이션들/시스템들에 의해 제공되는 특징들은 순응하지 않는 것으로 간주될 것이다. At the functional level, the verification process may ensure that all suitable functions provided by the applications / systems operate within the limits defined by the behavioral integrity profile details. The verification process at the functional level may utilize automatic and / or manual tests for the purpose of executing the features. For example, given a play-only behavioral integrity profile, the verification processes can confirm that the applications / systems provide play-only features such as content displayed to the user. Thus, features provided by applications / systems that violate its play-only behavior, such as editing, copying, etc., will be considered noncompliant.

[0060] 시스템 레벨에서, 검증 프로세스는 애플리케이션들/시스템들이 행위 무결성 프로파일을 침해하는 것을 의도하지 않았거나 의도되지 않은 결과들이라는 것을 보장해줄 수 있다. 예를 들어, 깨끗한 상태의 콘텐트(content in the clear)를 캐쉬(cache)하기 위하여 임시 파일들을 사용하거나, 많은 양의 클리어 콘텐 트(clear content)를 메모리에 기록한 다음 이를 교환 파일로 옮기거나, 클리어 콘텐트 정보를 레지스트리나 환경 변수에 기록하는 것 등에 의해 애플리케이션/시스템은 의도되지 않은 결과들을 가질 수도 있다. 따라서, 파일 입출력, 네트워크 입출력, 메모리 트래킹(memory tracking) 및 행위 무결성 프로파일 순응을 결정하기 위한 다른 결과들을 탐지하기 위해 시스템 레벨의 검증 프로세스들은 낮은 레벨 모니터링 소프트웨어를 활용할 수 있다. At the system level, the verification process may ensure that applications / systems are unintended or unintended consequences of violating the behavioral integrity profile. For example, use temporary files to cache content in the clear, or write a large amount of clear content to memory and then move it to an exchange file, or clear The application / system may have unintended results, such as by writing content information to a registry or environment variable. Thus, system level verification processes may utilize low level monitoring software to detect file I / O, network I / O, memory tracking, and other results for determining behavior integrity profile compliance.

[0061] 시스템/애플리케이션 제공자(500)가 이들의 애플리케이션/시스템을 보증을 위해 등록할 때에 기능적 및 시스템 검증들은 수행될 수 있다. 검증들은, 무결성 보증 및 검증 장치의 구성요소 등록 장치 하위 구성요소에 의해 수행될 수 있고, 수행될 필요가 있다. 일단 구성요소 등록 장치가 행위 무결성 프로파일과 관련하여 애플리케이션들/시스템들의 순응상태를 결정하면, 구성요소 등록 장치는 애플리케이션들/시스템들에 관한 상세한 식별 정보와 함께 그 상태를 구성요소 데이터베이스에 기록한다. 애플리케이션/시스템을 정확하게 식별하는 데 필요한 식별 정보의 타입 예들은 애플리케이션/시스템 제품명(product name)이나 유일한 식별값 번호 및/또는 전체 버전번호 등을 포함할 수 있다. 애플리케이션들/시스템들의 식별값과 행위 무결성 프로파일 식별값을 이용하여, 프로파일 검증 장치는 무결성 보증 및 검증 장치로부터 검증 요청에 응하여 순응 상태를 검색할 수 있다. 상기 전술한 예시적인 행위 무결성 프로파일 보증 모델은 필요에 따라 다양하게 변경될 수 있음은 이해되어 질 것이다. 예시적인 검증 모델은 콘텐트 소비 환경이 아닌 다른 곳에서 필요에 따라 변경될 수 있음도 이해될 것이다.Functional and system verifications may be performed when the system / application provider 500 registers their application / system for warranty. Verifications may be performed by, and need to be performed by, the component registration device subcomponents of the integrity assurance and verification device. Once the component registration device determines the compliance status of applications / systems with respect to the behavioral integrity profile, the component registration device records the status along with detailed identification information about the applications / systems in the component database. Examples of types of identification information needed to correctly identify an application / system may include an application / system product name or a unique identification value number and / or a full version number. Using the identification value of the applications / systems and the behavior integrity profile identification value, the profile verification device can retrieve the compliance status in response to the verification request from the integrity assurance and verification device. It will be appreciated that the exemplary behavioral integrity profile assurance model described above may be variously modified as needed. It will also be appreciated that the example validation model may be modified as needed elsewhere in the content consumption environment.

[0062] 일반적으로, 행위 무결성 프로파일 세부사항은 표준기관들(standards bodies), 무역 그룹들(trade groups), 정부 기관(government bodies) 등과 같은 기관들에 의해 생성될 수 있고, 판매자들에 의해 산업 등에 채용될 수 있다. 각각의 행위 무결성 프로파일 세부사항은 프로파일에 순응하는 시스템들, 애플리케이션들 등을 만들기 위해 판매자들이 무엇을 할 수 있는지에 관한 애플리케이션 행위들 혹은 특징들, 보안 요구, 및 상세한 정보의 집합을 설명한다. 바람직하게는, 각각의 행위 무결성 프로파일 세부사항은 이에 연관된 유일한 행위 무결성 프로파일 식별값을 가질 수 있다.In general, behavioral integrity profile details may be generated by institutions such as standards bodies, trade groups, government bodies, etc. Or the like. Each behavior integrity profile detail describes a set of application behaviors or features, security requirements, and detailed information about what sellers can do to create systems, applications, etc. that conform to the profile. Preferably, each behavior integrity profile detail may have a unique behavior integrity profile identification associated with it.

[0063] 도 2는 본 발명의 예시적인 실시예에 따른 무결성 보증 및 검증 환경(100)의 구성요소들의 개요를 도시한다. 도 2에서, 무결성 보증 및 검증 환경(100)은 하나 이상의 콘텐트 제공자들(300), 하나 이상의 사용자 시스템들(400), 하나 이상의 무결성 보증 및 검증 장치들(200), 그리고 하나 이상의 콘텐트 소비 시스템/애플리케이션 제공자들(500)을 포함할 수 있다.FIG. 2 shows an overview of the components of an integrity assurance and verification environment 100 in accordance with an exemplary embodiment of the present invention. In FIG. 2, integrity assurance and verification environment 100 includes one or more content providers 300, one or more user systems 400, one or more integrity assurance and verification devices 200, and one or more content consumption systems / May include application providers 500.

[0064] 콘텐트 제공자(300)는 제어기(310), 메모리(320), 입출력제어기(330), 그리고 콘텐트 데이터베이스(340) 등을 포함할 수 있다. 본 발명의 다른 실시예로서, 콘텐트 제공자(300)는 또한 보다 전통적인 방법으로 콘텐트를 배포할 수도 있다. 예를 들어, 콘텐트 제공자(300)는 콘텐트를 담고 있는 콤팩트디스크(CD) 등을 배포할 수 있다. 이 콤팩트디스크는 예컨대 우편배달 서비스 등을 통해 사용자에게 배달될 수 있을 것이다. 일반적으로 어떤 형태의 배포와 보급과정이라도 본 발명의 시스템 및 방법들과 동등하게 잘 적용될 수 있다.The content provider 300 may include a controller 310, a memory 320, an input / output controller 330, a content database 340, and the like. As another embodiment of the present invention, content provider 300 may also distribute content in a more traditional manner. For example, the content provider 300 may distribute a compact disc (CD) or the like containing the content. This compact disc may be delivered to a user, for example, via a postal delivery service or the like. In general, any form of distribution and dissemination can be applied equally well to the systems and methods of the present invention.

[0065] 무결성 보증 및 검증 장치(200)는 제어기(210), 메모리(220), 입출력제어기(230), 디지털 서명장치(240), 구성요소 등록장치(250), 구성요소 데이터베이스(260), 프로파일 데이터베이스(270), 프로파일 생성장치(280), 프로파일 배포장치(290) 및 프로파일 검증장치(295) 등을 포함할 수 있다. 무결성 보증 및 검증 장치(200)는 구성요소 등록 서비스, 행위 무결성 프로파일(BIP) 보증 서비스 및 무결성 프로파일 서비스 등을 제공할 수 있다. 등록서비스는 각 제공자들로부터 받은 애플리케이션들, 시스템 및/또는 소프트웨어/하드웨어 구성요소들을, 의도된 특징들, 목적들 및/또는 행위들과 함께, 인증된 것으로서 등록하도록 허락한다.Integrity guarantee and verification device 200 is a controller 210, memory 220, input and output controller 230, digital signature device 240, component registration device 250, component database 260, The profile database 270, the profile generator 280, the profile distribution device 290, and the profile verification device 295 may be included. The integrity assurance and verification apparatus 200 may provide a component registration service, a behavior integrity profile (BIP) assurance service, an integrity profile service, and the like. The registration service allows applications, systems and / or software / hardware components received from each provider to be registered as authorized, along with their intended features, purposes and / or actions.

[0066] 행위 무결성 프로파일 보증 서비스는 시스템들, 애플리케이션들 등이 행위 무결성 프로파일에 순응한다는 것을 보증하고 행위 무결성 프로파일 순응 상태의 증거를 제공하기 위해 제공된다. 시스템/애플리케이션의 등록이 행해지는 동안, 무결성 보증 및 검증 장치(200)는 구성요소 데이터베이스(260)에 등록된 시스템/애플리케이션의 행위 무결성 프로파일 순응상태를 결정하는 프로파일 데이터베이스(270)에 저장된 검증 테스트 사례들과 시스템 모니터링 프로세스들을 실행하기 위해 구성요소 등록 장치(250)를 사용한다. 시스템/애플리케이션이 성공적으로 보증되면, 행위 무결성 프로파일 보증 서비스는 보증된 시스템/애플리케이션을 갖는 행위 무결성 프로파일을 생성, 발행 및 연관시킨다. 순응상태는 애플리케이션들/시스템들 식별 정보와 함께 구성요소 데이터베이스(260)에 기록되고 저장된다. 행위 무결성 프로파일 보증 서비스의 일부로서, 프로파일 검증 장치(295)는 몇몇 애플리케이션들/시스템들 식별 정보에 연관된 순응 상태를 검색함에 의해 순응의 증거를 제공한다.An Behavior Integrity Profile Assurance service is provided to ensure that systems, applications, and the like conform to the Behavioral Integrity Profile and provide evidence of the Behavioral Integrity Profile compliance status. During the registration of the system / application, the integrity assurance and verification device 200 verifies the verification test case stored in the profile database 270 that determines the behavior integrity profile compliance status of the system / application registered in the component database 260. Components registration apparatus 250 to execute the system and system monitoring processes. Once the system / application is successfully assured, the Behavioral Integrity Profile Assurance Service creates, publishes and associates an Behavioral Integrity Profile with the assured system / application. Compliance status is recorded and stored in component database 260 along with applications / systems identification information. As part of the Behavioral Integrity Profile Assurance Service, profile verification device 295 provides evidence of compliance by retrieving compliance status associated with some applications / systems identification information.

[0067] 예시적인 실시예에 있어서, 행위 무결성 프로파일 보증 서비스는 무결성 보증 및 검증 장치(200)의 구성요소들을 이용하여 이행될 수 있다. 대안으로서, 행위 무결성 프로파일 보증 서비스는 별도의 행위 무결성 프로파일 보증 서비스 제공자로서 구현될 수도 있다. 그러한 경우에, 콘텐트 소비 시스템/애플리케이션 제공자(500)는 행위 무결성 프로파일 보증 서비스 제공자로 직접, 행위 무결성 프로파일 보증을 위해 애플리케이션들을 등록할 수 있다. 이에 따라, 애플리케이션의 검증이 이뤄지는 동안, 무결성 보증 및 검증 장치(200)는 행위 무결성 프로파일 식별값 및 애플리케이션 정보를 행위 무결성 프로파일 온라인 보증 서비스 제공자로 보내어 행위 무결성 프로파일 순응의 증거를 동적으로 획득할 수 있다.In an example embodiment, the Behavioral Integrity Profile Assurance service may be implemented using the components of the Integrity Assurance and Verification apparatus 200. Alternatively, the behavior integrity profile assurance service may be implemented as a separate behavior integrity profile assurance service provider. In such a case, the content consumption system / application provider 500 may register the applications for behavior integrity profile assurance directly with the behavior integrity profile assurance service provider. Accordingly, during the verification of the application, the integrity assurance and verification apparatus 200 may send the behavior integrity profile identification value and the application information to the behavior integrity profile online assurance service provider to dynamically obtain evidence of behavior integrity profile compliance. .

[0068] 무결성 프로파일 서비스는 사용자가 무결성 프로파일을 구축하고 검색하도록 사용자에게 제공될 수 있다. 무결성 프로파일은 임의적으로(optionally) 그리고 디지털적으로 서명될 수 있는 문서 등과 같은 형태가 될 수 있으며, 무결성 프로파일은 보호 문서들의 콘텐트를 소비할 등록된 시스템 구성요소 세트와 검증 가능한 정보를 포함할 수 있다. 일단 한 번 무결성 프로파일이 생성되면, 그 무결성 프로파일의 식별값은 사용자에게로 리턴된다. 콘텐트 제공자는 무결성 프로파일 식별값을 포함할 수 있고, 바람직하게는 보호문서에 관한 사용 라이센스를 임의로 제공할 수 있다. 보호문서들의 콘텐트가 소비되고 사용자의 시스템과 환경의 현지에서의 무결성 검증을 수행할 필요가 있을 때, 그 사용자 시스템을 위해 무결성 프로파일이 무결성 보증 및 검증 장치(200)로부터 검색될 수 있다. An integrity profile service may be provided to a user for the user to build and retrieve an integrity profile. The integrity profile may be in the form of an optionally and digitally signed document, etc. The integrity profile may include a set of registered system components and verifiable information that will consume the content of protected documents. . Once an integrity profile is created, the identity of that integrity profile is returned to the user. The content provider may include an integrity profile identification and may optionally provide a use license for the protected document. When the content of the protected documents is consumed and needs to perform local integrity verification of the user's system and environment, an integrity profile can be retrieved from the integrity assurance and verification device 200 for that user system.

[0069] 사용자 시스템(400)은 제어기(410), 메모리(420), 입출력제어기(430), 저장장치(440), 무결성 인증장치(450), 및 프로파일 저장장치(460) 등을 포함할 수 있다. 따라서, 이 예시적인 사용자 시스템은 컴퓨터의 모델에 기반을 둔 것이라는 점이 인식될 필요가 있다. 그러나 본 발명의 다른 실시예로서, 사용자 시스템의 구성요소들은 예컨대 소비되고 있는 콘텐트나 서비스의 유형, 접근되는 컴퓨터 환경의 유형, 적용되는 행위의 유형 등에 따라서 변할 수 있다. 일반적으로, 자신의 무결성이 검증될 수 있는 부분들을 구비하는 어떠한 사용자 시스템이건 본 발명의 시스템 및 방법들과 동등하게 잘 적용될 수 있다.The user system 400 may include a controller 410, a memory 420, an input / output controller 430, a storage device 440, an integrity authentication device 450, and a profile storage device 460. have. Thus, it should be appreciated that this exemplary user system is based on the model of the computer. However, as another embodiment of the present invention, the components of the user system may vary depending on, for example, the type of content or service being consumed, the type of computer environment being accessed, the type of behavior applied, and the like. In general, any user system with parts whose integrity can be verified can equally well be applied to the systems and methods of the present invention.

[0070] 시스템/애플리케이션 제공자(500)는 제어기(510), 메모리(520), 입출력제어기(530), 등록 애플리케이션 장치(540), 애플리케이션 데이터베이스(550), 및 시스템 데이터베이스(560) 등을 포함할 수 있다. 그러나 콘텐트 제공자(300)와 비슷하게, 본 발명의 다른 실시예로서, 시스템/애플리케이션 제공자는 시스템/애플리케이션 제공자가 공급하는 시스템 및/또는 애플리케이션의 유형에 따라서 여러 가지 다른 형태를 가질 수도 있다. 예를 들어, 만약 시스템/애플리케이션 제공자(500)가 특수한 하드웨어 구성요소들을 공급한다면, 시스템/애플리케이션 제공자(500)는 애플리케이션 및 시스템 데이터베이스들을 유지할 필요가 없을 수도 있다. 본 발명의 또 다른 실시에로서, 예컨대 시스템/장치 구성요소 공급자는 디스크 등에서 인증 정보를 직접 무결성 보증 및 검증 장치(200)로 보낼 수도 있다.The system / application provider 500 may include a controller 510, a memory 520, an input / output controller 530, a registered application device 540, an application database 550, a system database 560, and the like. Can be. However, similar to the content provider 300, as another embodiment of the present invention, the system / application provider may take many different forms depending on the type of system and / or application supplied by the system / application provider. For example, if system / application provider 500 supplies special hardware components, system / application provider 500 may not need to maintain application and system databases. As another embodiment of the present invention, for example, the system / device component provider may send authentication information directly to the integrity assurance and verification device 200 on a disk or the like.

[0071] 본 발명의 또 다른 실시예로서, 시스템/애플리케이션 제공자(500)는 콘텐트 제공자(300)와 노력을 조율하여 무결성 프로파일의 결정을 용이하게 할 수 도 있다. 일반적으로 시스템/애플리케이션 제공자는 하드웨어 혹은 소프트웨어 및 그에 관한 인증 정보를 공급할 수 있는 어떤 적합한 실체를 포함할 수 있다.As another embodiment of the present invention, the system / application provider 500 may coordinate efforts with the content provider 300 to facilitate determination of the integrity profile. In general, the system / application provider may include any suitable entity capable of supplying hardware or software and authentication information therefor.

[0072] 이러한 예시적인 실시예에서 시스템/애플리케이션 제공자(500)는 다양한 시스템 구성요소들을 포함할 수 있다. 그러나, 본 발명의 다른 실시예로서, 시스템/애플리케이션 제공자(500)는 컴퓨터 배포자, 소프트웨어 개발자, 소프트웨어 제공자, 소프트웨어 배포자 등을 포함할 수 있다는 점을 인식할 필요가 있다. 따라서, 시스템/애플리케이션 제공자(500)는 콘텐트 제공자(300)에 의해 제공되는 콘텐트의 소비를 허락하는 장치들 및/또는 소프트웨어를 공급할 수 있다.In this example embodiment, the system / application provider 500 may include various system components. However, as another embodiment of the present invention, it should be appreciated that system / application provider 500 may include a computer distributor, software developer, software provider, software distributor, and the like. Thus, system / application provider 500 may supply devices and / or software to allow consumption of content provided by content provider 300.

[0073] 무결성 보증 및 검증 환경(100)의 다양한 구성요소들은 그들 간에 링크(5)를 경유하여 통신을 할 수 있으며, 그 링크는 유선 또는 무선 링크, 또는 연결된 구성요소들 간에 전자적인 데이터를 공급할 수 있는 어떤 다른 알려진 혹은 후에 개발될 구성요소들이 될 수 있다. 예컨대 링크(5)는 하나 이상의 분산망일 수 있으며, 이들 망은 하나 이상의 부가적인 무결성 보증 및 검증 환경들(100) 혹은, 다른 대안으로서, 하나 이상의 콘텐트 제공자들(300), 사용자 시스템들(400), 콘텐트 소비 시스템/애플리케이션 제공자들(500) 그리고 무결성 보증 및 검증 장치들(200)의 다중 인스턴스(multiple instances)에 차례로 연결될 수 있다.[0073] Various components of the integrity assurance and verification environment 100 may communicate via a link 5 between them, which may provide electronic data between a wired or wireless link, or connected components. It can be any other known or later developed component. For example, the link 5 may be one or more distributed networks, which may be one or more additional integrity assurance and verification environments 100, or alternatively, one or more content providers 300, user systems 400. , In turn, may be connected to multiple instances of the content consumption system / application providers 500 and the integrity assurance and verification devices 200.

[0074] 예시적인 운영 환경에 있어서, 콘텐트 소비 시스템/애플리케이션 제공자(500)는 애플리케이션들, 소프트웨어 및/또는 하드웨어를 사용자에게 공급한다. 이들 애플리케이션들, 소프트웨어 및/또는 하드웨어는 사용자에 의해 이용되어 예컨대 문서 등을 보는 것과 같은 콘텐트 소비를 한다.In an example operating environment, content consumption system / application provider 500 supplies applications, software, and / or hardware to a user. These applications, software and / or hardware are used by the user to consume content such as viewing documents and the like.

[0075] 콘텐트 제공자(300)는 예컨대 사용자 시스템(400)에 위치하고 있는 사용자의 요청에 즈음하여 문서 등과 같은 콘텐트를 사용자 시스템(400)으로 배포한다. 본 발명의 일실시예로서, 하나의 요청은 콘텐트 제공자(300)에 의해 사용자 시스템(400)으로부터 수신될 수 있다. 입출력제어기(330)를 통해 수신될 수 있는 이 요청은 제어기(310)에 의해 메모리(320)와 협력하여 처리되어 콘텐트 데이터베이스(340)로부터 요청된 콘텐트를 검색한다. 예시적인 실시예에서, 콘텐트 제공자(300)는 온라인 콘텐트 제공자, 책방, 소프트웨어 제공자, 혹은 문서 등과 같은 콘텐트를 사용자에게 제공하기를 희망하는 어떤 다른 콘텐트 제공자를 포함할 수 있다.The content provider 300 distributes content, such as a document, to the user system 400, for example, at the request of a user located in the user system 400. In one embodiment of the invention, one request may be received from the user system 400 by the content provider 300. This request, which may be received via the input / output controller 330, is processed by the controller 310 in cooperation with the memory 320 to retrieve the requested content from the content database 340. In an example embodiment, the content provider 300 may include an online content provider, a bookstore, a software provider, or any other content provider that wishes to provide content to the user, such as a document.

[0076] 사용자 시스템(400)으로부터의 콘텐트 요청을 접수하였을 때, 콘텐트 제공자(300)는 그 요청된 콘텐트 뿐만 아니라 보호되는 콘텐트에 관련된 프로파일 식별값 등과 같은 부가적인 정보까지 사용자 시스템으로 되돌려준다. 본 발명의 다른 실시예로서, 부가정보는 예컨대 사용자 시스템에게 프로파일과 무결성 보증을, 콘텐트의 활성화 전에, 요청하도록 지시하는 정보를 포함할 수 있다. 부가정보는 또한 어느 시스템 구성요소 및/또는 하드웨어/소프트웨어가, 요청된 콘텐트를 보거나 그것과 상호 작용할 때, 사용자의 기계에서 실행 및/또는 사용될 수 있는지를 식별하는 정보를 포함할 수 있다. 따라서 하나 이상의 요청된 콘텐트, 부가정보 및 프로파일 식별값 등은 사용자 시스템(400)에 의해 입출력 제어기(430)를 경유하여 수신되며, 제어기(410)의 방향에서 하나 이상의 메모리(420)와 저장장치(440)에 저장된다.Upon receiving a content request from user system 400, content provider 300 returns not only the requested content, but also additional information such as a profile identification value associated with the protected content, to the user system. As another embodiment of the present invention, the additional information may include, for example, information instructing the user system to request a profile and integrity assurance, before activation of the content. The additional information may also include information identifying which system components and / or hardware / software can be executed and / or used on the user's machine when viewing or interacting with the requested content. Accordingly, one or more requested contents, additional information, profile identification values, and the like are received by the user system 400 via the input / output controller 430, and in the direction of the controller 410, the one or more memories 420 and the storage device ( 440.

[0077] 하나의 예시적인 실시예에 있어서, 콘텐트 제공자(300)는 무결성 보증 및 검증 장치(260)로부터의 무결성 프로파일에 관한 요청과 같은 서비스 요청(20)을 시작케 할 수 있다. 무결성 보증 및 검증 장치(260)는, 입출력제어기(230)를 경유하여, 그리고 제어기(210) 및 메모리(220)와 협력하여, 콘텐트 제공자(300)로부터의 서비스 요청을 수신한다.In one example embodiment, content provider 300 may initiate a service request 20, such as a request for an integrity profile from integrity assurance and verification device 260. The integrity assurance and verification device 260 receives a service request from the content provider 300 via the input / output controller 230 and in cooperation with the controller 210 and the memory 220.

[0078] 전술한 바와 같이, 무결성 보증 및 검증 장치(200)는 구성요소 데이터베이스(260)와 프로파일 데이터베이스(270)를 포함할 수 있다. 구성요소 데이터베이스(260)는 하나 이상의 콘텐트 소비 시스템/애플리케이션들 제공자들(500)에 의해 배포될 수 있는 시스템들과 시스템 구성요소들에 관계된 인증 정보로의 접근을 제공한다. 이와 유사하게, 프로파일 데이터베이스(270)는 검증 가능한 정보와 하나 이상의 개별적인 콘텐트 제공자들(300)용 보호 문서의 콘텐트를 소비할 예정인 등록된 시스템 구성요소 세트를 저장한다. 검증 가능한 정보는 등록된 시스템들과 애플리케이션들에 대한 행위 무결성 프로파일 순응 보증에 사용되는 검증 테스트 사례들을 포함할 수 있다.As described above, the integrity assurance and verification apparatus 200 may include a component database 260 and a profile database 270. Component database 260 provides access to authentication information related to systems and system components that may be distributed by one or more content consumption system / application providers 500. Similarly, profile database 270 stores verifiable information and a set of registered system components intended to consume the content of a protected document for one or more individual content providers 300. The verifiable information may include verification test cases used to ensure behavioral integrity profile compliance for registered systems and applications.

[0079] 따라서 콘텐트 제공자(300)로부터 무결성 프로파일에 대한 요청을 접수하였을 때, 무결성 보증 및 검증 장치(200)는, 제어기(210)의 방향에서 메모리(220)의 도움으로, 구성요소 데이터베이스(260)와 프로파일 데이터베이스(270)를 조사하여 서비스요청에 있는 정보에 대응하는 인증 정보가 이미 존재하는지 여부를 결정한다.Thus, upon receipt of a request for an integrity profile from the content provider 300, the integrity assurance and verification apparatus 200, with the help of the memory 220 in the direction of the controller 210, causes a component database 260. And the profile database 270 to determine whether authentication information corresponding to the information in the service request already exists.

[0080] 본 발명의 다른 실시예로서, 무결성 보증 및 검증 장치(200)는 온라 인 검증 서비스를 수행할 수 있다. 온라인 검증 서비스는 온라인에서, 예컨대 실시간으로 무결성 보증 및 검증 장치(200) 내에서, 무결성 검증을 수행하기 위해 제공된다. 이러한 서비스를 개시하기 위해, 무결성 인증자(integrity authenticator)라 불리는, 일부 소프트웨어가 사용자 시스템(400)에 전달된다. 무결성 인증자는 로컬 소프트웨어 및/또는 하드웨어 구성요소의 정보수집이 수행되도록 한다.As another embodiment of the present invention, the integrity assurance and verification apparatus 200 may perform an online verification service. The online verification service is provided for performing integrity verification online, such as in the integrity assurance and verification apparatus 200 in real time. To initiate this service, some software, called an integrity authenticator, is delivered to the user system 400. Integrity authenticators allow the gathering of local software and / or hardware components to be performed.

[0081] 본 발명의 또 다른 실시예로서, 무결성 인증자는 도 2에 예시된 무결성 인증장치(450) 등과 같은 전용의 장치(dedicated device)일 수 있다. 로컬 소프트웨어 및/또는 하드웨어 구성요소에 관해 수집된 그 정보는 무결성 프로파일 식별값과 함께 무결성 보증 및 검증 장치(200)로 리턴 되어 온라인 무결성 검증이 수행될 수 있다. 구성요소 등록장치(250)는 각 제공자로부터 제공된 소프트웨어/하드웨어 구성요소를 검사하고 식별값 정보를 구성요소 데이터베이스(260) 내에 저장한다. 그 소프트웨어/하드웨어 구성요소에 관계된 정보는 예컨대 해시(hash) 될 수 있으며, 해시값(hash value)은 인증된 소프트웨어/하드웨어 식별값으로서 사용될 수 있다. 그러나, 본 발명의 다른 실시예로서, 각 소프트웨어/하드웨어 구성요소를 식별하는 정보는 하드웨어 및/또는 소프트웨어의 인증된 부분의 식별을 허락하는 어떤 알려지거나 후에 개발되는 구조일 수 있다는 점이 인식될 필요가 있다.As another embodiment of the present invention, the integrity authenticator may be a dedicated device such as the integrity authentication device 450 illustrated in FIG. 2. The information collected about the local software and / or hardware components may be returned to the integrity assurance and verification device 200 along with the integrity profile identification to perform online integrity verification. The component registration apparatus 250 inspects a software / hardware component provided from each provider and stores identification value information in the component database 260. Information related to the software / hardware component may be hashed, for example, and the hash value may be used as an authenticated software / hardware identification value. However, as another embodiment of the present invention, it should be appreciated that the information identifying each software / hardware component may be any known or later developed structure that allows identification of hardware and / or authorized portions of software. have.

[0082] 예시적인 실시예로서, 특별한 소프트웨어 및/또는 하드웨어 구성요소의 등록은 등록 서비스를 요청하기 위해 식별 및 보증 검증 장치(identification and certification verification device)(200)와 통신하는 콘텐트 소비 시스템/ 애플리케이션 제공자(500)에 의해 달성될 수 있다. 본 발명의 다른 실시예로서, 그 식별 및 보증 검증 장치(200)는 인증 정보를 확보하기 위해 콘텐트 소비 시스템/애플리케이션 제공자(500)와 통신할 수 있다. 등록 애플리케이션 장치(540)는 제어기(510), 메모리(520) 및 입출력제어기(530)와 협력하여, 하나 이상의 애플리케이션 데이터베이스(550)와 시스템 데이터베이스(560)를 서치하여 일련번호, 버전 번호, 제조번호(build number) 등을 포함하는 구성요소 식별값, 제공자 이름 및 애플리케이션 그 자체 등을 포함하는 특정한 소프트웨어 및/또는 하드웨어에 관한 정보를 확보한다.As an example embodiment, the registration of a particular software and / or hardware component is a content consumption system / application provider in communication with an identification and certification verification device 200 to request a registration service. 500 may be achieved. As another embodiment of the present invention, the identification and warranty verification apparatus 200 may communicate with the content consumption system / application provider 500 to obtain authentication information. The registration application device 540 cooperates with the controller 510, the memory 520, and the input / output controller 530 to search the one or more application databases 550 and the system database 560 to serial, serial, version and manufacturing numbers. Obtain information about specific software and / or hardware, including component identification values, including build numbers, etc., provider names, and the application itself.

[0083] 예시적인 운영 시나리오에 있어서, 특정한 콘텐트 소비 시스템/애플리케이션 제공자(500)로부터 인증 정보를 얻는 대신에, 무결성 보증 및 검증 장치(200)는 콘텐트 소비 시스템/애플리케이션 제공자(500)로부터 소프트웨어 프로그램 등과 같은 특정한 애플리케이션을 직접 요청할 수 있다. 이러한 방법에 있어서, 무결성 보증 및 검증 장치(200)는 인증 정보를 필요치 않을 지도 모르는데, 그 이유는 무결성 보증 및 검증 장치(200)가 특정한 소프트웨어 애플리케이션을 콘텐트 소비 시스템/애플리케이션 제공자(500)로부터 직접적으로 확보할 수 있기 때문이다.In an example operating scenario, instead of obtaining authentication information from a particular content consumption system / application provider 500, the integrity assurance and verification device 200 may be a software program or the like from the content consumption system / application provider 500. You can request the same specific application directly. In this way, the integrity assurance and verification device 200 may not require authentication information, because the integrity assurance and verification device 200 may be able to directly access a particular software application from the content consumption system / application provider 500. This is because it can be secured.

[0084] 구성요소 등록장치(250)는 구성요소의 정보를 검증하고, 예컨대 인증 소프트웨어 및/또는 하드웨어 식별값으로서 사용될 수 있는 해시값을 임의적으로(optionally) 계산한다. 구성요소 등록장치(250)는 그 후 구성요소 정보와 예컨대 해시값을 구성요소 데이터베이스(260)에 저장한다.The component registration apparatus 250 verifies the information of the component and optionally calculates a hash value that can be used, for example, as authentication software and / or hardware identification. The component registration apparatus 250 then stores the component information and, for example, the hash value in the component database 260.

[0085] 이 경우 시스템/애플리케이션 제공자가 행위 무결성 프로파일 보증을 위해 애플리케이션/시스템을 등록하는 장소에서, 구성요소 등록 장치(250)는 행위 무결성 프로파일과 관련된 애플리케이션/시스템의 순응 상태를 결정하기 위해 기능적 및 시스템 검증들을 또한 수행한다. 구성요소 등록 장치(250)는 그 후 애플리케이션/시스템에 관한 상세한 식별 정보와 함께 순응 상태를 구성요소 데이터베이스(260)에 기록한다. In this case, where the system / application provider registers the application / system for behavior integrity profile assurance, component registration device 250 is functional and to determine the compliance status of the application / system associated with the behavior integrity profile. System verifications are also performed. The component registration device 250 then records the compliance status in the component database 260 along with detailed identification information about the application / system.

[0086] 더 나아가 예시적인 실시예로서, 소프트웨어 및/또는 하드웨어 구성요소를 등록 애플리케이션 장치(540)로 보내는 대신에, 콘텐트 소비 시스템/애플리케이션 제공자(500)는 또한 구성요소 등록장치(250)에 접속하여 등록 애플리케이션, 플러그-인, 애플릿(applet) 등과 같은 작은 소프트웨어 애플리케이션을 다운로드할 수 있고, 국부적으로 실행되도록 할 수 있다. 이 등록 애플리케이션은 타겟(target) 소프트웨어/하드웨어 구성요소를 검사할 수 있고, 타겟 소프트웨어/하드웨어 구성요소에 관계되는 정보를, 어쩌면 해시값 등과 같은 무결성 값과 함께, 구성요소 등록장치(250)로 되돌려 보낼 수 있으며, 그리하여 구성요소에 관한 인증정보를 구성요소 데이터베이스(260)에 저장할 수 있다.[0086] Further as an example embodiment, instead of sending software and / or hardware components to the registration application device 540, the content consuming system / application provider 500 also connects to the component registration device 250. To download small software applications, such as registration applications, plug-ins, applets, and the like, and to run them locally. This registration application can examine the target software / hardware component and return information related to the target software / hardware component to component registration device 250, with integrity values, such as hash values or the like. And may store authentication information about the component in the component database 260.

[0087] 본 발명의 또 다른 실시예로서, 프로파일 생성장치(280)는 소프트웨어용 무결성 프로파일들을 구축한다. 예를 들어, 각 소프트웨어 애플리케이션의 해시값 등과 같은 무결성 값은 구성요소 데이터베이스로부터 검색되어 저장될 수 있다. 또한 구성요소들 간의 임의적인 상호작용관계(optional interaction relationship)는 이 프로파일에 포함될 수 있다. 이 관계는 다른 구성요소들과의 의도되지 않은 상호작용을 막기 위해 구성요소들의 호출과 반환 순서를 식별하는 데 이용된다. 무결성 프로파일의 콘텐트는 그 후 예컨대 디지털적으로 서명되고 그 서명 결과물은 무결성 프로파일에 추가된다. 각 무결성 프로파일은 유일한 식별값과 연관된다. As another embodiment of the present invention, profile generation device 280 builds integrity profiles for software. For example, integrity values such as hash values of each software application may be retrieved from the component database and stored. Optional interaction relationships between components can also be included in this profile. This relationship is used to identify the calling and return order of components to prevent unintended interaction with other components. The content of the integrity profile is then digitally signed, for example, and the signature result is added to the integrity profile. Each integrity profile is associated with a unique identification value.

[0088] 프로파일 생성 장치(280)는 등록되어 행위 무결성 프로파일 보증을 성공적으로 통과한 시스템들 및 애플리케이션들에 대한 행위 무결성 프로파일들을 또한 구축할 수 있다. 프로파일 생성 장치(280)는 각각의 애플리케이션의 행위 무결성 프로파일 순응 상태를 구성요소 데이터베이스(260)로부터 검색할 수 있고 만일 순응상태가 성공적인 순응 보증을 가리키면 애플리케이션에 대한 행위 무결성 프로파일을 생성할 수 있다. 프로파일 생성 장치는 순응 상태를 행위 무결성 프로파일에 임의적으로 기록할 수 있다. 각각의 행위 무결성 프로파일은 또한 행위 무결성 프로파일 세부사항에 연관된 유일한 행위 무결성 프로파일 식별값과 애플리케이션/시스템 식별 정보를 포함할 수 있다. 무결성 프로파일의 콘텐트는 그 다음에, 예컨대, 디지털적으로 서명되고 서명 결과는 행위 무결성 프로파일에 첨부된다.The profile generation device 280 may also build behavioral integrity profiles for systems and applications that have registered and successfully passed the behavioral integrity profile guarantee. Profile generation device 280 may retrieve the behavior integrity profile compliance status of each application from component database 260 and may generate a behavior integrity profile for the application if the compliance status indicates a successful compliance assurance. The profile generation device can optionally record the compliance status in the behavioral integrity profile. Each behavior integrity profile may also include a unique behavior integrity profile identification value and application / system identification information associated with the behavior integrity profile details. The content of the integrity profile is then digitally signed, eg, and the signature result is attached to the behavioral integrity profile.

[0089] 도 3은 무결성 보증 및 검증 장치(200)에 의해 제공된 입력, 출력 및 서비스와 작동들의 예시적인 작업흐름을 도시한다. 예시적인 실시예로서, 구성요소 등록 서비스를 위해 구성요소 식별값, 그리고 임의적으로는(optionally) 특정한 구성요소에 관한 메타 정보(meta information)가 구성요소 등록장치(250)에 전달된다. 구성요소 등록장치(250)는 예컨대 의도된 특징들, 목적들 및 행위들을 갖는 구성요소를 구성요소 데이터베이스에 등록한다. 그런 다음, 구성요소 등록장치(250)는 등록된 구성요소의 식별값을 예컨대 콘텐트 소비 시스템/애플리케이션 제공자에 게 반환하고 그 식별값을 예컨대 콘텐트 제공자(300)에 대하여 가용하게 만든다.FIG. 3 shows an example workflow of inputs, outputs, and services and operations provided by the integrity assurance and verification apparatus 200. As an exemplary embodiment, the component identification value and optionally, meta information about a specific component is transmitted to the component registration apparatus 250 for the component registration service. The component registration apparatus 250 registers, for example, a component having intended features, objects, and actions in the component database. The component registration apparatus 250 then returns an identification value of the registered component to the content consuming system / application provider, for example, and makes the identification value available to the content provider 300, for example.

[0090] 프로파일 생성을 위해 프로파일 생성장치(280)는 등록된 구성요소들의 식별값을 수신한다. 등록된 구성요소들의 식별값들은, 만약 있다면, 관련 구성요소들에 관한 정보와 조합될 때, 디지털적으로 서명되어 프로파일 데이터베이스에 저장된다. 그런 다음, 무결성 프로파일 식별값은 요청자에게 반환된다.Profile generation device 280 for generating a profile receives the identification value of the registered components. The identification values of the registered components, if combined with the information about the relevant components, if any, are digitally signed and stored in the profile database. Then, the integrity profile identification is returned to the requestor.

[0091] 프로파일 생성 장치(280)는 등록되어 행위 무결성 프로파일 보증을 성공적으로 통과한 행위 무결성 프로파일 세부사항과 시스템/애플리케이션을 포함하는 각각의 쌍에 대해 별개의 행위 무결성 프로파일을 또한 생성할 수 있다. 행위 무결성 프로파일은 행위 무결성 프로파일 세부사항과 관련된 유일한 행위 무결성 프로파일 식별값을 포함할 수 있다. 등록된 구성요소들의 식별값들은, 행위 무결성 프로파일 세부사항에 대한 순응 상태와 같은 관련된 구성요소들에 관한 정보와 결합될 때에, 행위 무결성 프로파일에 기록되고, 디지털적으로 서명되어 프로파일 데이터베이스에 저장된다. 유일한 행위 무결성 프로파일 식별값과 애플리케이션/시스템 식별 정보는 프로파일 데이터베이스 내에서 특수한 행위 무결성 프로파일을 고유하게 식별하는 주요 키로서 사용된다.The profile generation device 280 may also generate a separate behavioral integrity profile for each pair that includes a system / application and behavioral integrity profile details that have been registered and successfully passed the behavioral integrity profile assurance. The behavioral integrity profile may include a unique behavioral integrity profile identification associated with the behavioral integrity profile details. The identification values of registered components, when combined with information about related components, such as compliance status to behavioral integrity profile details, are recorded in the behavioral integrity profile, digitally signed and stored in the profile database. The unique behavioral integrity profile identification and the application / system identification are used as the primary key to uniquely identify a particular behavioral integrity profile within the profile database.

[0092] 이와 유사하게, 프로파일 배포장치(290)는 무결성 프로파일 식별값을 수신한다. 그리고 나서 프로파일 데이터베이스(270)는 질의를 받아 그 무결성 프로파일 식별값에 상응하는 무결성 프로파일이 가용한지를 결정한다. 만약 무결성 프로파일이 가용하다면, 그 무결성 프로파일은 요청자에게 반환된다. 그렇지 않다면, 그 무결성 프로파일은 프로파일 생성장치(280)의 도움으로 정해질 수 있다.Similarly, profile distribution device 290 receives an integrity profile identification value. Profile database 270 then receives the query to determine whether an integrity profile corresponding to the integrity profile identification is available. If an integrity profile is available, the integrity profile is returned to the requestor. If not, the integrity profile can be determined with the help of profile generator 280.

[0093] 프로파일 검증장치(295)는 하나 이상의 구성요소들과 무결성 프로파일 식별값을 식별하는 정보를 받는다. 프로파일 검증장치(295)는 구성요소 식별값들, 무결성 프로파일 식별값 및 대응 무결성 파일을 비교하여 검증데이터를 결정한다. 만약 그 프로파일들과 구성요소들 및 식별값들이 매치되면, 그 시스템의 무결성은 검증된다. 그렇지 않으면, 그 시스템은 무결성 프로파일에서 특정된 것이 아니거나 혹은 어떤 방법으로 변경된 것으로 결정된다.The profile verification apparatus 295 receives information identifying one or more components and an integrity profile identification value. The profile verifier 295 compares the component identification values, the integrity profile identification value, and the corresponding integrity file to determine the verification data. If the profiles, components and identifications match, the integrity of the system is verified. Otherwise, the system is determined not to be specified in the integrity profile or to be modified in some way.

[0094] 행위 무결성 프로파일 검증의 경우에 있어서, 프로파일 검증 장치(295)는 하나 이상의 구성요소들을 식별하는 정보와 어떤 유일한 행위 무결성 프로파일 식별값을 수령한다. 이러한 식별값들을 이용하여, 프로파일 검증장치(295)는 적합한 행위 무결성 프로파일을 프로파일 데이터베이스(270)로부터 검색한다. 검증 장치(295)는 그 후 행위 무결성 프로파일 순응의 증거를 결정하기 위해 구성요소의 순응 상태를 점검한다. 순응 상태는 애플리케이션들/시스템들의 행위들이 행위 무결성 프로파일에서의 세부사항들에 순응하는지의 여부를 가리킨다. In the case of behavioral integrity profile verification, the profile verification device 295 receives information identifying one or more components and some unique behavioral integrity profile identification. Using these identifications, profile verifier 295 retrieves the appropriate behavioral integrity profile from profile database 270. The verification device 295 then checks the compliance status of the component to determine evidence of behavioral integrity profile compliance. Compliance status indicates whether the actions of applications / systems conform to the details in a behavioral integrity profile.

[0095] 도 4a는 예시적인 무결성 프로파일을 보여준다. 이 예시적인 무결성 프로파일은 프로파일 생성장치(280)에 의해 생성될 수 있다. 인증된 콘텐트 제공자를 위한 무결성 프로파일을 구축하기 위해, 무결성 프로파일을 생성하라는 요청이 시작된다. 예컨대 그 제공자는 무결성 보증 및 검증 장치(200)와 접촉하여 무결성 프로파일의 생성을 요청할 수 있다. 그런 다음, 그 제공자는 소프트웨어 및/또는 하드웨어 구성요소들의 이름 리스트를 무결성 보증 및 검증 장치(200)로 보낸다. 그 후 프로파일 생성장치(280)는 무결성 값, 해시값 등과 같은 구성요소들 각각의 식별값을 구성요소 데이터베이스(260)로부터 검색해낸다. 그러고 나서, 프로파일 생성장치(280)는 무결성 프로파일을 정하는데, 그 무결성 프로파일은, 구성요소들 각각의 무결성 값, 해시값 등과 같은 인증 정보를 무결성 프로파일 식별값, 버전 번호, 생성일자, 구축일자, 콘텐트 제공자명 등과 같은 다른 정보와 함께 포함할 수 있으며, 어떤 소프트웨어 및/또는 하드웨어 구성요소들이건 그들 간의 상호작용관계를 선택적으로(optionally) 더 포함할 수도 있다.4A shows an example integrity profile. This example integrity profile can be generated by the profile generator 280. In order to build an integrity profile for an authenticated content provider, a request is initiated to create an integrity profile. For example, the provider may contact the integrity assurance and verification device 200 to request the creation of an integrity profile. The provider then sends a list of names of software and / or hardware components to integrity assurance and verification apparatus 200. The profile generator 280 then retrieves from the component database 260 the identification values of each of the components, such as integrity values, hash values, and the like. Then, the profile generator 280 determines the integrity profile, which includes authentication information such as integrity values, hash values, and the like of each of the components. It may be included together with other information such as a content provider name, etc., and may optionally further include an interaction relationship between any software and / or hardware components.

[0096] 프로파일 생성장치(280)는 정해진 무결성 프로파일을 디지털 서명자(240)에게 전달하며, 그 후에 디지털 서명자(240)는 프로파일의 콘텐트에 대하여 서명할 수 있다. 프로파일 생성장치(280)는 그리고 나서 서명된 프로파일을 프로파일 데이터베이스(270)에 저장하고 그 프로파일 식별값을 콘텐트 제공자(300)에게 반환한다.The profile generator 280 delivers the determined integrity profile to the digital signer 240, after which the digital signer 240 can sign the content of the profile. Profile generator 280 then stores the signed profile in profile database 270 and returns the profile identification to content provider 300.

[0097] 도 4b는 예시적인 행위 무결성 프로파일을 도시한다. 프로파일 생성 장치(280)는 시스템/애플리케이션 제공자가 시스템/애플리케이션을 등록하여 행위 무결성 프로파일 세부사항에 대한 순응 보증을 전달(passes)할 때에 행위 무결성 프로파일을 생성한다. 프로파일 생성 장치는 시스템/애플리케이션에 상응하는 애플리케이션 식별 정보와 순응 상태를 구성요소 데이터베이스(260)로부터 검색함으로써 행위 무결성 프로파일을 구축한다. 예시적인 행위 무결성 프로파일은 행위 무결성 프로파일 식별값(s), 행위 무결성 프로파일의 버전번호, 행위 무결성 프로파일의 생성일자, 행위 무결성 프로파일을 생성한 기관의 이름, 행위 무결성 프로파일 식별값(s)에 관련된 세부사항의 URL(s), 등록된 시스템/애플리케이션의 애플리케이 션 식별 정보, 행위 무결성 프로파일의 디지털 서명 등을 포함할 수 있고 등록된 시스템, 애플리케이션 등의 순응 상태를 임의적으로 포함할 수 있다. 행위 무결성 프로파일이 다수의 행위 무결성 프로파일 식별값들을 포함할 때에, 시스템/애플리케이션은 특정된 행위 무결성 프로파일 식별값들과 연관된 모든 적합한 행위 무결성 프로파일 세부사항들에 대해 순응해야 한다.4B shows an example behavioral integrity profile. Profile generation device 280 generates a behavioral integrity profile when the system / application provider registers the system / application to pass compliance assurance on the behavioral integrity profile details. The profile generation device builds the behavioral integrity profile by retrieving from the component database 260 application identification information and compliance status corresponding to the system / application. An exemplary behavioral integrity profile includes details related to the behavioral integrity profile identification value (s), the version number of the behavioral integrity profile, the date of creation of the behavioral integrity profile, the name of the organization that created the behavioral integrity profile, and the behavioral integrity profile identification (s). It may include the URL (s) of the item, the application identification information of the registered system / application, the digital signature of the behavioral integrity profile, and the like, and may optionally include the compliance status of the registered system, application, and the like. When a behavioral integrity profile includes multiple behavioral integrity profile identifications, the system / application must conform to all appropriate behavioral integrity profile details associated with the specified behavioral integrity profile identifications.

[0098] 예컨대 보호되는 문서의 콘텐트에 대한 사용 라이센스(usage license)를 생성할 때, 콘텐트 제공자(300)는 임의적으로(optionally) 그 무결성 프로파일 식별값을 사용 라이센스 안에 포함시킬 수 있다. 사용자 시스템(400) 상에서, 그 무결성 프로파일은 환경호출스택에 있는 모든 적합한 소프트웨어/하드웨어 구성요소들을 검증하는 데 사용될 수 있다. 이는 민감한 정보(sensitive information)는 권한이 주어진 소프트웨어/하드웨어 구성요소들 또는 그들의 어떤 조합에 의해서만 소비될 수 있음을 보장해준다. 본 발명의 다른 실시예로서, 콘텐트 제공자(300)는 행위 무결성 프로파일 세부 사항에 대응하는 무결성 프로파일 식별값을 임의로 포함할 수 있다. 이 경우, 전술한 과정과 유사하게, 환경 호출 스택에서 모든 소프트웨어/하드웨어 구성요소들을 검증하기 위해 특정된 애플리케이션에 연관된 무결성 프로파일은 사용자 시스템(400)에서 최초로 사용된다. 일단 시스템/애플리케이션의 무결성이 확인되면, 행위 무결성 프로파일은 시스템/애플리케이션의 행위들이 행위 무결성 프로파일 식별값에 의해 식별된 행위 무결성 프로파일 세부 사항에 순응한다는 것을 증명하는 데에 사용된다.For example, when generating a usage license for the content of a protected document, content provider 300 may optionally include its integrity profile identification within the usage license. On the user system 400, the integrity profile can be used to verify all suitable software / hardware components in the paging stack. This ensures that sensitive information can only be consumed by authorized software / hardware components or any combination thereof. As another embodiment of the present invention, the content provider 300 may optionally include an integrity profile identification value corresponding to the behavioral integrity profile details. In this case, similar to the process described above, the integrity profile associated with the specified application to verify all software / hardware components in the environment call stack is first used in the user system 400. Once the integrity of the system / application is verified, the behavior integrity profile is used to prove that the behavior of the system / application conforms to the behavior integrity profile details identified by the behavior integrity profile identification.

[0099] 프로파일 배포장치(290)는 무결성 프로파일들을 입수하기 위한 요청 을 받아들이고 그들을 프로파일 데이터베이스(270)로부터 검색하여 그 무결성 프로파일들을 각각의 요청자에게 반환한다. 이와 마찬가지로, 프로파일 검증장치(295)는 하나 이상의 시스템 환경에 관한 사용자 시스템들을 검증하기 위한 요청들을 받아들인다. 프로파일 검증장치(295)는 소프트웨어/하드웨어 구성요소들에 관한 정보를 무결성 프로파일들에 따라 모으고, 그 정보를 그 프로파일들과 대비하여 검증하고, 그 검증결과를 그 요청자들에게 반환한다. 프로파일 검증장치(295)는 또한 행위 무결성 프로파일 검증 요청에 대한 응답으로 행위 무결성 프로파일로부터 순응상태를 도출해 낸다. The profile distribution device 290 accepts a request to obtain integrity profiles and retrieves them from the profile database 270 and returns the integrity profiles to each requester. Similarly, profile verifier 295 accepts requests to verify user systems for one or more system environments. Profile verification device 295 gathers information about software / hardware components according to integrity profiles, verifies the information against the profiles, and returns the verification results to the requestors. The profile verification apparatus 295 also derives compliance from the behavioral integrity profile in response to the behavioral integrity profile verification request.

[00100] 사용자 시스템(400)은 무결성 인증장치(450)를 포함할 수 있다. 그 무결성 인증장치(450)는 예컨대 어느 콘텐트 소비 애플리케이션의 최상부(top)에서 실행된다. User system 400 may include an integrity authentication device 450. The integrity authentication device 450 is executed at the top of a content consumption application, for example.

[00101] 이렇게 하여, 도 5는 시스템 무결성을 검증하기 위한 사용자 장치(400) 상의 예시적인 시스템 환경 스택을 도시한다. 본 발명의 일실시예로서, 사용자 시스템 환경 스택은 무결성 인증자와 하나 이상의 시스템 구성요소 등을 포함할 수 있다.In this way, FIG. 5 shows an exemplary system environment stack on a user device 400 for verifying system integrity. In one embodiment of the invention, the user system environment stack may include an integrity authenticator, one or more system components, and the like.

[00102] 도 6은 환경 스택의 일 예를 도시하는데, 이 환경스택은 무결성 인증자, 플러그-인, 렌더링 애플리케이션(rendering application), 운영체제(OS), 운영체제 부트스트랩(OS boot strap), 및 각각의 하드웨어 등을 포함한다.FIG. 6 shows an example of an environment stack, wherein the environment stack includes an integrity authenticator, a plug-in, a rendering application, an operating system (OS), an operating system bootstrap (OS boot strap), and each Hardware and the like.

[00103] 예시적인 운영 환경에 있어서, 무결성 인증장치(450)는 그 자신의 암호/해독 키 쌍과 식별값 보증 및 검증 장치의 검증키를 포함할 수 있다. 이들 키 들은 조작-저항성을 제공하기 위해 무결성 인증장치(400) 내에 숨겨지거나 및/또는 내장(embedded)될 수 있다. 사용자의 사적 정보의 사용을 필요로 하거나 민감한 문서와 데이터를 포함하는 그런 애플리케이션들을 위해, 무결성 인증장치(450)는 연관된 무결성 프로파일을 사용할 수 있어 사용자 시스템 환경의 호출 스택상의 소프트웨어/하드웨어 구성요소들을 검증할 수 있다.In an exemplary operating environment, the integrity authentication device 450 may include its own crypto / decryption key pair and an identification value assurance and verification key of the verification device. These keys may be hidden and / or embedded within the integrity authenticator 400 to provide manipulation-resistance. For those applications requiring the use of a user's private information or containing sensitive documents and data, integrity authenticator 450 may use an associated integrity profile to verify software / hardware components on the call stack of the user's system environment. can do.

[00104] 무결성 인증장치(450)는 무결성 보증 및 검증 장치 검증키를 사용하여 그 프로파일의 서명을 검증할 수 있다. 도 7-9에서 예시된 것처럼, 일단 그 서명이 검증되면, 그 무결성 인증장치(450)는 현재의 호출스택을 검사하고, 무결성 프로파일 내에 제공된 그 정보를 사용하여 호출스택 상의 각 소프트웨어/하드웨어 구성요소를 인증하기 시작한다. 상기 호출스택은 메모리 이미지들, 포함된 기능들 혹은 절차들 등을 포함할 수 있는 메모리의 연속 블록으로 구성될 수 있다. 그 스택은 후입선출(last-in-first-out)의 개념으로 작동할 수 있으며, 스택들의 기본 동작들은 스택 "푸쉬(push)" 및 스택 "팝(pop)"을 포함할 수 있다. 푸쉬는 이미지들을 스택 위에 저장하여 스택의 최상부(top)를 어떤 위치로 전진시키는 데 사용될 수 있다. 팝은 그 데이터를 스택으로부터 제거하고 그 스택의 최상부를 이전 위치로 회복시키는 데 사용될 수 있다.Integrity authentication device 450 may verify the signature of the profile using the integrity assurance and verification device verification key. As illustrated in Figures 7-9, once the signature is verified, the integrity authenticator 450 examines the current call stack and uses each piece of software / hardware component on the call stack using the information provided in the integrity profile. Start authenticating. The call stack may consist of a contiguous block of memory that may contain memory images, included functions or procedures, and the like. The stack can operate on the concept of last-in-first-out, and the basic operations of the stacks can include a stack "push" and a stack "pop". Push can be used to store images on a stack and advance the top of the stack to a location. The pop can be used to remove the data from the stack and restore the top of the stack to its previous position.

[00105] 호출스택의 경우, 현재 실행되는 함수(function)의 이미지가 그 스택의 최상부에 있다. 현재 실행되는 함수가 다음 함수를 부르거나 호출할 때, 다음 번 함수의 메모리 이미지는 그 호출스택의 최상부로 푸쉬되고 그 호출스택의 최상부는 다음 번 함수의 이미지를 가리킨다. 축적된(stacked) 이미지들의 각부는, 그 호출된 함수가 그 실행을 마친 후에, 주소나 반환명령을 포함할 수 있다.In the case of a call stack, an image of the function currently being executed is on top of the stack. When the currently executing function calls or calls the next function, the memory image of the next function is pushed to the top of the call stack and the top of the call stack points to the image of the next function. Each part of the stacked images may include an address or a return instruction after the called function has finished its execution.

[00106] 도 10은 어떻게 그 실행환경이 보호되는지를 예시한다. 예시적인 실시예에 있어서, 무결성 인증자(Integrity Authenticator: IA)를 보호하기 위해, 그 IA의 실행은, IA의 일부분인, 신뢰된 애플리케이션에 의해 모니터 된다. 애플리케이션 등과 같은 모니터링 프로세스는, 그 IA를 시스템 내의 어떤 다른 프로세스나 애플리케이션에 의해 모니터링 되지 않도록 막을 수 있는, 디버거, 특별 프로세스 등을 포함할 수 있다. 어떤 환경에서 프로세서가 오로지 하나의 프로세스에 의해서만 디버그 될 수 있을 때에는, 그 신뢰된 모니터링 프로그램은 디버거 등으로서 실행될 수 있다. 모니터링 프로그램은 신뢰된 애플리케이션이기 때문에, 그 모니터링 프로그램의 무결성은 현재의 무결성 프로파일에 포함될 수 있다. 따라서, 그 IA는 그 신뢰된 애플리케이션의 무결성을 로딩 및 실행 이전에 검증할 것이다. 신뢰된 모니터링 애플리케이션의 기능은 그 IA를 다른 프로세스에 의해 모니터 되고 제어되고 포착되는 것으로부터 막는 것이다. 신뢰된 모니터링 애플리케이션의 다른 기능은 현재의 환경을 모니터하고 환경상의 변화가 유효한지를 결정하는 것이다. 그러나 그 IA와 같이, 신뢰된 모니터링 애플리케이션은 또한 보호될 수 있고, 그 IA는 모니터로서 행동하여 신뢰된 모니터링 애플리케이션이 다른 애플리케이션들에 의해 모니터 되고, 포착되고 및/또는 제어되는 것을 막아줄 수 있다. 이러한 이중보호 메커니즘은, 다른 애플리케이션들이 무결성 인증자의 실행을 모니터링 하는 것을 막아주는 닫힌 시스템(closed system)을 생성한다.10 illustrates how the execution environment is protected. In an exemplary embodiment, to protect the Integrity Authenticator (IA), the execution of that IA is monitored by a trusted application that is part of the IA. Monitoring processes, such as applications, may include debuggers, special processes, and the like, which may prevent the IA from being monitored by any other process or application in the system. In some circumstances, when a processor can only be debugged by one process, the trusted monitoring program can be run as a debugger or the like. Since the monitoring program is a trusted application, the integrity of the monitoring program can be included in the current integrity profile. Thus, the IA will verify the integrity of the trusted application before loading and executing. The function of a trusted monitoring application is to prevent the IA from being monitored, controlled and captured by other processes. Another function of trusted monitoring applications is to monitor the current environment and determine if changes in the environment are valid. However, like the IA, a trusted monitoring application can also be protected, and the IA can act as a monitor to prevent the trusted monitoring application from being monitored, captured and / or controlled by other applications. This double protection mechanism creates a closed system that prevents other applications from monitoring the execution of the integrity authenticator.

[00107] 도 11a는 무결성 보증 및 검증 장치의 작동의 예시적인 방법을 도시 한다. 본 발명의 일실시예로서, 제어는 단계 S100에서 시작하여 단계 S110으로 이어진다. 단계 S110에 있어서, 무결성 프로파일이 결정된다. 다음으로, 단계 S120에서, 무결성 프로파일이 보증된다. 그런 다음, 단계 S130에서, 무결성 프로파일이 사용자에게로 전달된다. 제어는 단계 S140으로 이어진다.FIG. 11A shows an example method of operation of an integrity assurance and verification apparatus. FIG. In one embodiment of the invention, control begins at step S100 and continues to step S110. In step S110, an integrity profile is determined. Next, in step S120, the integrity profile is guaranteed. Then, in step S130, the integrity profile is delivered to the user. Control continues to step S140.

[00108] 단계 S140에서, 사용자 시스템의 무결성이 검증된다. 다음으로, 단계 S150에서, 사용자 시스템이 인증될 만한지에 관한 결정이 이루어진다. 만약 사용자 시스템이 인증될 만한 것이라면, 제어는 단계 S160으로 계속 이어져서 거기서 사용자는 선택된 콘텐트에 대한 액세스가 주어진다. 그렇지 않으면, 제어는 단계 S170으로 점프하여, 콘텐트 액세스가 부정되거나 혹은 불능으로 된다. 그런 다음, 제어는 단계 S180으로 이어져서 그 제어시퀀스는 종료한다.In step S140, the integrity of the user system is verified. Next, in step S150, a determination is made as to whether the user system is eligible for authentication. If the user system is eligible for authentication, control continues to step S160 where the user is given access to the selected content. Otherwise, control jumps to step S170, where content access is denied or disabled. Control then continues to step S180, where the control sequence ends.

[00109] 도 11b는 애플리케이션 무결성 프로파일과 함께 행위 무결성 프로파일(들)을 이용하는 무결성 보증 및 검증 장치의 예시적인 작동 방법을 도시한다. 예시적인 실시예에 있어서, 제어는 단계 S800에서 시작되어 단계 S810으로 이어진다. 단계 S810에서, 애플리케이션 무결성 프로파일이 결정된다. 다음에, 단계 S820에서, 애플리케이션 무결성 프로파일이 보증된다. 그러면, 단계 S830에서 애플리케이션 무결성 프로파일이 사용자에게 전달된다. 제어는 그 후 단계 S840으로 이어진다.[00109] FIG. 11B shows an exemplary method of operation of an integrity assurance and verification apparatus that uses behavioral integrity profile (s) in conjunction with an application integrity profile. In an exemplary embodiment, control begins at step S800 and continues to step S810. In step S810, an application integrity profile is determined. Next, in step S820, the application integrity profile is guaranteed. Then, the application integrity profile is delivered to the user in step S830. Control then continues to step S840.

[00110] 단계 S840에서, 사용자 시스템의 무결성이 검증된다. 다음에, 단계 S850에서, 사용자 시스템이 진정한 지의 여부가 결정된다. 만일 사용자 시스템에 진정성이 없다면, 제어는 단계 S930으로 점프하여, 콘텐트 액세스가 거절되거나 불 능된다. 그런 다음 제어는 단계 S940으로 이어져, 제어시퀀스는 종료한다. 그러나, 만일 단계 S850에서 사용자 시스템에 진정성이 있다면, 행위 무결성 프로파일 연결 검증 플래그가 명백하게 특정되는지 여부를 결정하기 위해 제어는 단계 S860으로 이어진다. In step S840, the integrity of the user system is verified. Next, in step S850, it is determined whether the user system is true. If the user system is not authentic, control jumps to step S930, where content access is denied or disabled. Control then continues to step S940, where the control sequence ends. However, if there is authenticity in the user system at step S850, control continues to step S860 to determine whether the behavior integrity profile connection verification flag is explicitly specified.

[00111] 만일 행위 무결성 프로파일 연결 검증 플래그가 특정된다면, 제어는 단계 S870으로 가게 되어, 특정된 행위 무결성 프로파일 세부사항(들)과의 순응에 관하여 사용자 시스템이 검증된다. 단계 S880에서, 사용자 시스템이 행위 무결성 프로파일(들)에 순응한다는 증거(들)을 갖는지의 여부를 결정한다. 만일 사용자 시스템이 순응의 증거(들)을 갖는다면, 제어는 단계 S890으로 이어져서, 사용자는 선택한 콘텐트에 접근할 수 있게 된다. 그렇지 않다면, 제어는 단계 S930으로 점프하여, 콘텐트 액세스는 거절되거나 불능이 된다. 제어는 그 후 단계 S940으로 이어져, 제어시퀀스는 종료한다. If the behavior integrity profile connection verification flag is specified, control passes to step S870 where the user system is verified with respect to compliance with the specified behavior integrity profile detail (s). In step S880, it is determined whether the user system has evidence (s) that conforms to the behavior integrity profile (s). If the user system has proof (s) of compliance, control continues to step S890 so that the user can access the selected content. If not, control jumps to step S930, where content access is denied or disabled. Control then continues to step S940, where the control sequence ends.

[00112] 그러나, 만일 단계 S860에서 행위 무결성 프로파일 연결 검증 플래그가 특정되지 않는다면, 제어는 단계 S910으로 가게 되어, 특정된 행위 무결성 프로파일 세부사항(들) 중 어느 하나와의 순응에 관하여 사용자 시스템이 검증된다. 단계 S920에서, 사용자 시스템이 행위 무결성 프로파일(들) 중 하나에 순응한다는 증거를 갖는지의 여부를 결정한다. 만일 사용자 시스템이 순응의 증거를 갖는다면, 제어는 단계 S890으로 이어져서, 사용자는 선택한 콘텐트에 접근할 수 있게 된다. 그렇지 않다면, 제어는 단계 S930으로 점프하여, 콘텐트 액세스는 거절되거나 불능이 된다. 제어는 그 후 단계 S940으로 이어져, 제어시퀀스는 종료한다. However, if the behavior integrity profile connection verification flag is not specified in step S860, control passes to step S910, where the user system verifies compliance with any of the specified behavior integrity profile detail (s). do. In step S920, it is determined whether the user system has evidence that it complies with one of the behavioral integrity profile (s). If the user system has proof of compliance, control continues to step S890 so that the user can access the selected content. If not, control jumps to step S930, where content access is denied or disabled. Control then continues to step S940, where the control sequence ends.

[00113] 도 11c는 행위 무결성 프로파일(들)을 이용하는 무결성 보증 및 검증 장치의 예시적인 작동 방법을 도시한다. 특히, 제어는 단계 S1000에서 시작하여 단계 S1010으로 이어진다. 단계 S1010에서, 행위 무결성 프로파일 연결 검증 플래그는 명백하게 특정될 지 여부가 결정되도록 점검 받는다. 만일 행위 무결성 프로파일 연결 검증 플래그가 특정된다면, 제어는 단계 S1020으로 가게 되어, 사용자 시스템은 특정된 행위 무결성 프로파일 세부사항(들)과의 순응을 위해 검증된다. 단계 S1030에서, 사용자 시스템이 행위 무결성 프로파일(들)과 순응한다는 증거(들)을 갖게 될 지의 여부가 결정된다. 만일 사용자 시스템이 순응의 증거(들)을 갖는다면, 제어는 단계 S1080으로 이어져서, 사용자가 선택한 콘텐트에 접근하는 것이 허여된다. 만일 그렇지 않다면, 제어는 단계 S1040으로 점프하여, 콘텐트 액세스가 거절되거나 불능이 된다. 그런 다음 제어는 단계 S1050으로 이어져, 제어시퀀스는 종료한다.FIG. 11C shows an example method of operation of an integrity assurance and verification apparatus that uses behavioral integrity profile (s). In particular, control begins in step S1000 and continues to step S1010. In step S1010, the behavior integrity profile connection verification flag is checked to determine whether it is explicitly specified. If the behavior integrity profile connection verify flag is specified, control passes to step S1020, where the user system is verified for compliance with the specified behavior integrity profile detail (s). In step S1030, it is determined whether the user system will have evidence (s) that conforms to the behavior integrity profile (s). If the user system has proof (s) of compliance, control continues to step S1080 to allow access to the content selected by the user. If not, control jumps to step S1040, where content access is denied or disabled. Control then continues to step S1050, where the control sequence ends.

[00114] 그러나, 만일 단계 S1010에서 행위 무결성 프로파일 연결 검증 플래그가 특정되지 않는다면, 제어는 단계 S1060으로 가게 되어, 사용자 시스템은 특정된 행위 무결성 프로파일 세부사항(들) 중 어느 하나와의 순응을 위해 검증된다. 단계 S1070에서, 사용자 시스템이 행위 무결성 프로파일(들) 중 하나와 순응한다는 증거를 갖게 될 지의 여부가 결정된다. 만일 사용자 시스템이 순응의 증거를 갖는다면, 제어는 단계 S1080으로 이어져서, 사용자가 선택한 콘텐트에 접근하는 것이 허여된다. 만일 그렇지 않다면, 제어는 단계 S1040으로 점프하여, 콘텐트 액세스가 거절되거나 불능이 된다. 그런 다음 제어는 단계 S1050으로 이어져, 제어시퀀스는 종료한다.However, if the behavior integrity profile connection verification flag is not specified in step S1010, control passes to step S1060, where the user system verifies for compliance with any of the specified behavior integrity profile detail (s). do. In step S1070, it is determined whether the user system will have evidence that it complies with one of the behavioral integrity profile (s). If the user system has proof of compliance, control continues to step S1080 to allow access to the content selected by the user. If not, control jumps to step S1040, where content access is denied or disabled. Control then continues to step S1050, where the control sequence ends.

[00115] 도 12는 본 발명에 따른 구성요소/하드웨어 및/또는 소프트웨어의 등록에 관한 예시적인 방법을 도시한다. 구체적으로, 제어는 단계 S200에서 시작하여 단계 S210으로 이어진다. 단계 S210에서는, 등록 서비스가 개시된다. 다음으로 단계 S220에서는, 구성요소 공급자가 특정의 구성요소/하드웨어 및/또는 소프트웨어에 관한 인증정보를 제공한다. 그런 다음, 단계 S230에서, 그 특정의 구성요소/하드웨어 및/또는 소프트웨어에 관한 정보가 검증된다. 그런 다음, 제어가 단계 S240으로 이어진다. 12 illustrates an exemplary method for registering components / hardware and / or software in accordance with the present invention. Specifically, control begins at step S200 and continues to step S210. In step S210, the registration service is started. Next, in step S220, the component provider provides authentication information regarding a specific component / hardware and / or software. Then, in step S230, information about that particular component / hardware and / or software is verified. Control then continues to step S240.

[00116] 단계 S240에서는, 무결성 값이 결정되어야 하는지에 관한 결정이 이루어진다. 만약 무결성 값이 정해져야 할 것이라면, 제어는 단계 S250으로 연결되어 거기서 무결성 값이 결정된다. 그렇지 않다면 제어는 단계 S260으로 점프하여 구성요소/하드웨어 및/또는 소프트웨어에 관한 인증 정보가 저장된다. In step S240, a determination is made as to whether the integrity value should be determined. If the integrity value should be determined, control passes to step S250 where the integrity value is determined. If not, control jumps to step S260 where authentication information regarding the component / hardware and / or software is stored.

[00117] 다음으로, 단계 S270에서, 무결성 값을 저장해야 하는지에 관한 결정이 이루어진다. 만약 무결성 값이 저장될 것이라면, 제어는 단계 S280으로 이어져서 거기서 무결성 값이 저장된다. 그렇지 않고, 무결성 값이 저장되지 않을 것이라면, 제어는 단계 S290으로 점프하여 제어시퀀스가 종료한다.Next, in step S270, a determination is made as to whether the integrity value should be stored. If the integrity value is to be stored, control continues to step S280 where the integrity value is stored. Otherwise, if the integrity value will not be stored, control jumps to step S290 where the control sequence ends.

[00118] 도 13은 본 발명에 따른 프로파일을 결정하는 예시적인 방법을 보여준다. 구체적으로, 제어는 단계 S300에서 시작하여 단계 S310까지 이어진다. 단계 S310에서 무결성 프로파일 결정이 시작된다. 다음으로, 단계 S320에서 구성요소 및/또는 하드웨어 혹은 소프트웨어의 식별값과 같은 이름이 얻어진다. 그런 다음, 단 계 S330에서, 구성요소/하드웨어 혹은 소프트웨어에 관한 식별값이 검색된다. 그런 다음 제어는 단계 S340으로 이어진다.13 shows an exemplary method of determining a profile according to the present invention. Specifically, control begins in step S300 and continues to step S310. In step S310 integrity profile determination is started. Next, in step S320 a name is obtained, such as an identification value of the component and / or hardware or software. Then, in step S330, an identification value for the component / hardware or software is retrieved. Control then continues to step S340.

[00119] 단계 S340에서, 무결성 프로파일이 결정된다. 다음으로, 단계 S350에서, 무결성 프로파일은 디지털적으로 서명된다. 그런 다음 단계 S360에서 디지털적으로 서명된 무결성 프로파일이 저장된다. 그 후 제어는 단계 S370으로 이어진다.In step S340, an integrity profile is determined. Next, in step S350, the integrity profile is digitally signed. Then, in step S360 the digitally signed integrity profile is stored. Control then continues to step S370.

[00120] 단계 S370에서, 서명된 무결성 프로파일은 콘텐트 소비 시스템/애플리케이션 제공자와 같은 요청자에게 전달된다. 그런 다음, 제어는 단계 S380으로 계속되어 제어시퀀스가 종료된다.In step S370, the signed integrity profile is delivered to the requestor, such as a content consumption system / application provider. Control then continues to step S380, where the control sequence ends.

[00121] 도 14는 무결성 인증자의 무결성을 검증하는 예시적인 방법을 예시한다. 구체적으로, 제어는 단계 S400에서 시작하여 단계 S410으로 계속한다. 단계 S410에서, 무결성 인증자의 무결성이 검증된다. 다음으로, 단계 S420에서 무결성 인증자가 유효한지에 관한 결정이 이루어진다. 만약 무결성 인증자가 유효하면, 제어가 단계 S430으로 이어진다. 그렇지 않으면, 제어는 단계 S540으로 점프한다.[00121] FIG. 14 illustrates an example method of verifying the integrity of an integrity authenticator. Specifically, control begins in step S400 and continues to step S410. In step S410, the integrity of the integrity authenticator is verified. Next, a determination is made as to whether the integrity authenticator is valid at step S420. If the integrity authenticator is valid, control continues to step S430. Otherwise, control jumps to step S540.

[00122] 단계 S430에서, 조작-저항 환경(tamper-resistant environment)이 설정된다. 다음으로, 단계 S440에서 무결성 프로파일이 검증된다. 그런 다음, 단계 S450에서 그 무결성 프로파일이 유효한지에 관한 결정이 이뤄진다. 만약 그 무결성 프로파일이 유효하면, 단계 S460으로 이어진다. 그렇지 않으면, 제어는 단계 S540으로 점프한다.In step S430, a tamper-resistant environment is set. Next, the integrity profile is verified in step S440. Then, in step S450, a determination is made as to whether the integrity profile is valid. If the integrity profile is valid, step S460 is reached. Otherwise, control jumps to step S540.

[00123] 단계 S460에서, 무결성 프로파일이 로드된다. 다음으로, 단계 S470 에서 현재의 실행환경의 호출스택이 도 6에 관련되어 예시된 것처럼 구축된다. 그 호출스택의 바닥에는 하드웨어 및/또는 장치들 집합이, 스택의 최상부를 향하는 소프트웨어 구성요소들과 더불어 있다. 스택에 있는 구성요소들의 관계는 저위의 구성요소가 그 바로 위의 구성요소를 호출하는 것이다. 일단 호출스택이 구축되면, 마지막으로 실행된 구성요소의 실행이미지를 내포하는 그 호출스택의 최상부는 위치가 정해진다. 따라서 스택상의 각 구성요소의 실행이미지는 호출 구성요소를 식별하는 것을 돕는다. 그런 다음, 단계 S480에서 구성요소를 호출하는 식별값이 검색된다. 그 후 제어는 단계 S490으로 이어진다. In step S460, the integrity profile is loaded. Next, in step S470, the call stack of the current execution environment is constructed as illustrated in relation to FIG. At the bottom of the call stack is a set of hardware and / or devices, with software components facing the top of the stack. The relationship of the components on the stack is that the lower component calls the component immediately above it. Once the call stack has been built, the top of the call stack containing the execution image of the last executed component is positioned. Thus, the executable image of each component on the stack helps to identify the calling component. Then, in step S480, the identification value for calling the component is retrieved. Control then continues to step S490.

[00124] 단계 S490에서, 구성요소의 무결성은 무결성 프로파일과 대비하여 검증된다. 다음으로, 단계 S500에서, 구성요소가 유효한지에 관한 결정이 이루어진다. 만약 구성요소가 유효하면, 제어는 단계 S510으로 계속된다. 그렇지 않으면, 제어는 단계 S540으로 점프한다.In step S490, the integrity of the component is verified against the integrity profile. Next, in step S500, a determination is made as to whether the component is valid. If the component is valid, control continues to step S510. Otherwise, control jumps to step S540.

[00125] 단계 S510에서, 스택이 비어 있는지를 결정한다. 만약 스택이 비어있으면, 제어는 단계 S520으로 점프한다. 그렇지 않으면, 제어는 단계 S530으로 점프한다. 단계 S520에서, 스택내의 다음 번 구성요소에 위치하고 이 다음 번 구성요소가 현재 스택 프레임으로서 설정된다. 그런 다음, 제어는 검증을 위해 단계 S480으로 복귀한다. In step S510, it is determined whether the stack is empty. If the stack is empty, control jumps to step S520. Otherwise, control jumps to step S530. In step S520, the next component in the stack is located and this next component is set as the current stack frame. Control then returns to step S480 for verification.

[00126] 단계 S530에서, 무결성이 검증되고 제어는 단계 S550으로 계속 이어져서 거기서 그 제어시퀀스가 종료된다. 단계 S540에서, 무결성 체크가 실패하고 제어는 단계 S550으로 이어져 그 제어시퀀스가 종료된다.In step S530, the integrity is verified and control continues to step S550 where the control sequence ends. In step S540, the integrity check fails and control continues to step S550 where the control sequence ends.

[00127] 이렇게 하여, 문서 발행자나 배포자와 같은 콘텐트 제공자는 신뢰된 사용자 환경 내에서 소비를 위해 사용자에게 예컨대, 보호된 콘텐트를 제공한다. 무결성 보증 및 검증 서비스들을 제공함으로써, 콘텐트 소비 환경들의 진정성이 검증될 수 있다. 콘텐트 제공자는 예컨대, 라이센스 계약 및 무결성 프로파일 식별값을 포함하는 디지털 콘텐트의 보호된 버전을 사용자에게 전달한다. 예컨대, 프로파일은 보호된 콘텐트와 함께 사용되는 것이 허여된 애플리케이션들과 시스템 구성요소들을 포함한다. 부가적으로, 콘텐트 제공자는 무결성 프로파일에 대한 요청을 개시한다. 무결성 프로파일에 대한 이 요청은 무결성 보증 및 검증 장치로 전달된다. 예를 들어, 무결성 보증 및 검증 장치는, 만일 무결성 프로파일이 요청된 애플리케이션들 및/또는 시스템들 구성요소들에 대해 이미 존재하고 있지 않다면, 콘텐트 소비 시스템/애플리케이션 제공자, 예컨대 사용자에게 시스템 구성요소들을 공급하는 자에게 질의할 수 있다. 콘텐트 소비 시스템/애플리케이션 제공자는 특별한 애플리케이션들이나 시스템 구성요소들에 관한 인증 정보를 무결성 보증 및 검증 장치로 되돌려보낸다. 인증 정보는 사용자 시스템 상의 애플리케이션 및/또는 시스템 구성요소, 그리고 콘텐트 소비 시스템/애플리케이션 제공자에 의해 배포된 오리지널 애플리케이션이나 시스템 구성요소 간에 이뤄지는 비교나 무결성 검증을 허여한다.In this way, a content provider, such as a document publisher or distributor, provides, for example, protected content to a user for consumption within a trusted user environment. By providing integrity assurance and verification services, the authenticity of content consumption environments can be verified. The content provider delivers a protected version of the digital content to the user, including, for example, a license agreement and an integrity profile identification. For example, a profile includes applications and system components that are permitted to be used with protected content. In addition, the content provider initiates a request for an integrity profile. This request for the integrity profile is forwarded to the integrity assurance and verification device. For example, the integrity assurance and verification device supplies system components to a content consuming system / application provider, such as a user, if an integrity profile does not already exist for the requested applications and / or systems components. You can ask the person who The content consuming system / application provider returns authentication information about specific applications or system components back to the integrity assurance and verification device. The authentication information permits comparison or integrity verification between the application and / or system components on the user's system and the original application or system components distributed by the content consuming system / application provider.

[00128] 더 나아가 본 발명의 예시적인 실시예로서, 콘텐트 제공자는, 예컨대, 라이센스 계약과 행위 무결성 프로파일 식별값을 포함하는 디지털 콘텐트의 보호된 버전을 사용자에게 전달한다. 애플리케이션 무결성 프로파일 식별값은 보호된 콘텐트와는 관련이 없지만, 콘텐트 소비 시스템/애플리케이션 제공자에 의해 애플리케이션 무결성 프로파일 식별값은 애플리케이션들 및 시스템 구성요소들 안으로 내장된다. 특유한 애플리케이션에 구속되는 애플리케이션 무결성 프로파일과는 다르게, 행위 무결성 프로파일은 모든 순응 애플리케이션들이 따르는 행위들 및/또는 소비 조항들(consumption terms) 및 조건들의 집합을 세분화하는 표준 세부사항에 구속된다. 애플리케이션 무결성 프로파일 식별값을 사용하여, 무결성 보증 및 검증 서비스들은 우선 콘텐트 소비 시스템, 애플리케이션 등의 진정성을 검증한다. 일단 콘텐트 소비 시스템/애플리케이션의 무결성이 확인되어 조작되지 않았음이 결정되면, 무결성 보증 및 검증 장치는 증거가 존재한다는, 즉 애플리케이션들이 행위 무결성 프로파일 세부사항과 확실히 순응한다는 것을 검증함으로써 콘텐트 소비 시스템/애플리케이션이 행위 무결성 프로파일과 순응한다는 것을 보장해 준다. 그런 다음, 무결성 보증 및 검증 장치는 콘텐트 소비 시스템/애플리케이션이 보호된 콘텐트를 소비할 수 있도록 해준다. 행위 무결성 프로파일 식별값에 기초하여 애플리케이션들 및 시스템들을 보증함으로써, 소비자는 보호된 콘텐트를 소비하기 위해 콘텐트 제공자가 강제한 어떤 행위 무결성 프로파일 세부사항에 순응하는 어떤 적합한 콘텐트 소비 시스템 또는 애플리케이션을 사용할 수 있다. 이러한 방법에서, 콘텐트의 사용은 특별한 애플리케이션 또는 시스템에 대한 소비를 제한함이 없이 제어될 수 있다. [00128] Furthermore, as an exemplary embodiment of the present invention, the content provider delivers a protected version of the digital content to the user, including, for example, a license agreement and behavioral integrity profile identification. The application integrity profile identification is not related to the protected content, but by the content consuming system / application provider the application integrity profile identification is embedded into the applications and system components. Unlike the Application Integrity Profile, which is bound to a specific application, the Behavior Integrity Profile is bound to standard details that refine the set of behaviors and / or consumption terms and conditions that all compliant applications follow. Using application integrity profile identification, integrity assurance and verification services first verify the authenticity of content consumption systems, applications, and the like. Once the integrity of the content consuming system / application is verified and determined that it has not been tampered with, the integrity assurance and verification device verifies that the evidence is present, that is, the applications are compliant with the behavioral integrity profile details to ensure that the content consuming system / application is compliant. It ensures compliance with this behavioral integrity profile. The integrity assurance and verification device then allows the content consumption system / application to consume the protected content. By assuring applications and systems based on a behavioral integrity profile identification, the consumer can use any suitable content consumption system or application that conforms to certain behavioral integrity profile details enforced by the content provider to consume the protected content. . In this way, the use of content can be controlled without limiting consumption for a particular application or system.

[00129] 도 1-14에서 예시된 바와 같이, 무결성 보증 및 검증 방법 및 시스 템은 단일의 프로그램된 범용 목적 컴퓨터나 별개의 프로그램된 범용 목적 컴퓨터들에서 실행될 수 있다. 도 1-14의 예시적인 실시예들은 또한 특수 목적의 컴퓨터, 프로그램된 마이크로프로세서 또는 마이크로콘트롤러 및 주변 집적회로(IC) 요소, ASIC, 또는 다른 집적회로, 디지털 신호 처리기, 분산요소회로와 같은 하드-와이어드(hard-wired) 전자 및 논리회로, PLA, PLD, FPGA, PAL 등과 같은 프로그램 가능 논리장치에서 수행될 수도 있다. 일반적으로, 도 1-14의 예시적인 실시예들의 프로세스들(유한 상태 기계 등을 통한)을 실행 가능케 하는 어느 적합한 시스템, 장치, 소프트웨어, 혹은 이들의 결합 등과 것도 적용될 수 있다. As illustrated in FIGS. 1-14, the integrity assurance and verification method and system may be executed on a single programmed general purpose computer or separate programmed general purpose computers. The exemplary embodiments of FIGS. 1-14 also include hard-drives such as special purpose computers, programmed microprocessors or microcontrollers, and peripheral integrated circuit (IC) elements, ASICs, or other integrated circuits, digital signal processors, distributed element circuits. It may also be performed in programmable logic devices such as hard-wired electronics and logic, PLA, PLD, FPGA, PAL, and the like. In general, any suitable system, apparatus, software, combination thereof, or the like that may execute the processes (via a finite state machine, etc.) of the example embodiments of FIGS. 1-14 may be applied.

[00130] 도 1-14의 예시적인 실시예들은, 다양한 컴퓨터 또는 워크스테이션 하드웨어 플랫폼에서 사용될 수 있는 휴대용 소스코드를 제공하는 환경에서, 객체 혹은 객체지향 (object-oriented) 소프트웨어 개발 기술들을 사용하는 소프트웨어로 실행될 수 있다. 도 1-14의 예시적인 실시예들은 또한 표준 로직 회로 혹은 VLSI 설계를 사용하는 하드웨어에서 부분적으로 혹은 전적으로 실행될 수 있다. 소프트웨어 및/또는 하드웨어가 본 발명에 따른 시스템들과 방법들을 실행하는 데 사용되는지 여부는 그 시스템의 속도 및/또는 효율 요구사항, 특수한 기능, 및 특수한 하드웨어 혹은 소프트웨어 시스템 또는 이용되고 있는 마이크로프로세서 혹은 마이크로컴퓨터 시스템에 달려있다. 그러나 위에서 설명된 그 무결성 보증 및 검증 장치 및 방법들은, 컴퓨터 기술에 관한 일반적인 지식과 함께, 어떤 알려진 또는 나중에 개발되는 시스템 혹은 구조, 장치, 및/또는 당업자가 여기서 기술된 기능적인 설명을 토대로 어떤 과도한 실험을 하지 않고서도 만들 수 있는 소프트웨어를 사용하는 하드웨어 또는 소프트웨어에서도 실행될 수 있다. 더구나 개시된 방법들은 소프트웨어로서 프로그램된 범용 컴퓨터, 특수목적 컴퓨터, 마이크로프로세서, 서버 등과 같은 장치 상에서 기꺼이 실행될 수도 있다. 이 경우에 있어서, 본 발명의 방법 및 장치들은 JAVA 또는 CGI 스크립트와 같은 개인용 컴퓨터나 서버 상에, 전용의 무결성 보증 및 검증 장치, 웹브라우저, 웹TV 인터페이스, PDA 인터페이스, 멀티미디어 프리젠테이션 장치 등과 같은 장치에 내장된 루틴으로서 서버나 그래픽 워크스테이션에 상주하는 자원(resource)처럼, 내장된 루틴(embedded routine)으로서 실행될 수 있다. 상기 무결성 보증 및 검증장치는 또한 시스템과 방법을 물리적으로 통합하여, 그래픽 워크스테이션의 하드웨어 및 소프트웨어 시스템 또는 전용의 무결성 보증 및 검증 장치와 같은 소프트웨어 및/또는 하드웨어 시스템화 하는 것에 의해 실행될 수도 있다. [00130] The example embodiments of FIGS. 1-14 are software that uses object or object-oriented software development techniques in an environment that provides portable source code that can be used on various computer or workstation hardware platforms. Can be run as. The example embodiments of FIGS. 1-14 may also be implemented partly or wholly in hardware using standard logic circuits or VLSI designs. Whether software and / or hardware is used to implement the systems and methods according to the present invention depends upon the speed and / or efficiency requirements of the system, the special functionality, and the particular hardware or software system or microprocessor or microcomputer being used. Depends on the computer system However, the integrity assurance and verification apparatus and methods described above, along with general knowledge of computer technology, may be used to identify any known or later developed system or structure, apparatus, and / or techniques based upon the functional description set forth herein by those skilled in the art. It can also run on hardware or software that uses software that can be created without experimentation. Moreover, the disclosed methods may be willing to run on devices such as general purpose computers, special purpose computers, microprocessors, servers, etc., programmed as software. In this case, the methods and apparatuses of the present invention are devices, such as dedicated integrity assurance and verification devices, web browsers, web TV interfaces, PDA interfaces, multimedia presentation devices, etc., on personal computers or servers, such as JAVA or CGI scripts. As a built-in routine, it can be run as an embedded routine, such as a resource residing on a server or graphics workstation. The integrity assurance and verification device may also be implemented by physically integrating systems and methods to software and / or hardware system, such as a hardware and software system of a graphics workstation or a dedicated integrity assurance and verification device.

[00131] 따라서, 도 1-14의 예시적인 실시예에서 설명된 장치들 및 그에 따른 시스템들은, 도 1-14의 예시적인 실시예들의 프로세스들을 수행할 수 있는, 예컨대, 어느 적합한 서버들, 워크 스테이션들, PC들, 랩탑 컴퓨터들, PDA들, 인터넷 기기들, 핸드헬드 장치들, 셀룰라 폰들, 무선 장치들, 다른 장치들 등을 포함할 수 있다. 도 1-14의 예시적인 실시예들의 장치들 및 그에 따른 시스템들은 어느 적합한 프로토콜(protocol)을 사용하여 서로 통신할 수 있으며 하나 이상의 프로그램된 컴퓨터 시스템들 혹은 장치들을 사용하여 이행될 수 있다. Thus, the apparatuses and systems accordingly described in the example embodiment of FIGS. 1-14 may perform, for example, any suitable servers, workstations that may perform the processes of the example embodiments of FIGS. 1-14. Stations, PCs, laptop computers, PDAs, Internet devices, handheld devices, cellular phones, wireless devices, other devices, and the like. The apparatuses and systems accordingly of the example embodiments of FIGS. 1-14 can communicate with each other using any suitable protocol and can be implemented using one or more programmed computer systems or devices.

[00132] 하나 이상의 인터페이스 메커니즘(interface mechanism)들은, 예컨대, 인터넷 액세스, 어느 적합한 형태(음성, 모뎀 등)에서의 통신들, 무선 통신 매 체 등을 포함하는 도 1-14의 예시적인 실시예들과 함께 사용될 수 있다. 예를 들어, 채용된 통신 네트워크들이나 링크들은 하나 이상의 무선 통신 네트워크들, 셀룰라 통신 네트워크들, G3 통신 네트워크들, 공중 회선 교환 전화망들(PSTNs: Public Switched Telephone Network), 패킷 데이터 네트워크들(PDNs: Packet Data Networks), 인터넷, 인트라넷들, 이들의 결합 등을 포함할 수 있다. One or more interface mechanisms include, for example, example embodiments of FIGS. 1-14 that include Internet access, communications in any suitable form (voice, modem, etc.), wireless communication media, and the like. Can be used with For example, the communications networks or links employed may be one or more wireless communications networks, cellular communications networks, G3 communications networks, public switched telephone networks (PSTNs), packet data networks (PDNs) Data Networks), the Internet, intranets, combinations thereof, and the like.

[00133] 도 1-14의 예시적인 실시예들의 장치들 및 그에 따른 시스템들은, 관련된 기술분야에서 숙련된 사람들에 의해 이해될 만한 것들로서, 예시적인 실시예들을 실시하기 위해 이용되는 특정 하드웨어의 다양한 형태로 예시적인 목적을 위한 것이라는 것이 이해되어야 한다. 예를 들어, 도 1-14의 예시적인 실시예들의 하나 이상의 장치들 및 그에 따른 시스템들의 기능성은 하나 이상의 프로그램된 컴퓨터 시스템들 또는 장치들을 통해 달성될 수 있다.The apparatuses and resulting systems of the example embodiments of FIGS. 1-14 are those that will be understood by those skilled in the art, and vary in a variety of specific hardware used to practice the example embodiments. It is to be understood that the form is for illustrative purposes. For example, the functionality of one or more devices and thus systems of the example embodiments of FIGS. 1-14 may be achieved through one or more programmed computer systems or devices.

[00134] 다른 변경들 뿐만 아니라 그러한 변경들을 이행하기 위해, 단독의 컴퓨터 시스템은 도 1-14의 예시적인 실시예들의 하나 이상의 장치들 및 그에 따른 시스템들의 특정 목적을 갖는 기능들을 수행하도록 프로그램될 수 있다. 한편, 둘 이상의 프로그램된 컴퓨터 시스템들 혹은 장치들은 도 1-14의 예시적인 실시예들의 하나 이상의 장치들 및 시스템들 중 어느 하나를 대체할 수 있다. 따라서, 도 1-14의 예시적인 실시예들의 장치들 및 그에 따른 시스템들의 견고성과 성과를 높이기 위해 중복, 반복 등과 같은 배포된 처리의 원리들과 이점들이 의도된 대로 이행될 수 있다. In order to implement such changes as well as other changes, a sole computer system may be programmed to perform functions with the specific purpose of one or more devices and thus systems of the example embodiments of FIGS. 1-14. have. On the other hand, two or more programmed computer systems or devices may replace any one or more of the devices and systems of the example embodiments of FIGS. 1-14. Thus, the principles and advantages of distributed processing, such as redundancy, repetition, and the like, may be implemented as intended to enhance the robustness and performance of the devices of the exemplary embodiments of FIGS. 1-14 and thus systems.

[00135] 도 1-14의 예시적인 실시예들의 장치들 및 그에 따른 시스템들은 여 기서 설명된 다양한 프로세스들에 관련된 정보를 저장할 수 있다. 이 정보는 도 1-14의 예시적인 실시예들의 장치들 및 그에 따른 시스템들의, 하드 디스크, 광학 디스크, 광자기 디스크, RAM 등과 같은 하나 이상의 메모리들에 저장될 수 있다. 도 1-14의 예시적인 실시예들의 장치들 및 그에 따른 시스템들의 하나 이상의 데이터베이스들은 본 발명의 예시적인 실시예들을 달성하기 위해 이용되는 정보를 저장할 수 있다. 데이터베이스들은 여기서 열거된 하나 이상의 메모리들 혹은 저장 장치들에 포함된 데이터 구조들(기록들, 표들, 배열들, 필드들, 그래프들, 트리들, 목록들 등과 같은)을 이용하여 구성될 수 있다. 도 1-14의 예시적인 실시예들에 관하여 설명된 프로세스들은 도 1-14의 예시적인 실시예들의 장치들 및 그에 따른 시스템들의 프로세스들에 의해 이들의 하나 이상의 데이터베이스들에서 수집 및/또는 산출된 데이터를 저장하기 위해 적합한 데이터 구조들을 포함할 수 있다.The apparatuses and systems according to the example embodiments of FIGS. 1-14 may store information related to the various processes described herein. This information may be stored in one or more memories, such as a hard disk, optical disk, magneto-optical disk, RAM, etc., of the devices of the exemplary embodiments of FIGS. 1-14 and thus systems. One or more databases of the apparatuses and thus systems of the example embodiments of FIGS. 1-14 may store information used to achieve the example embodiments of the present invention. Databases can be constructed using data structures (such as records, tables, arrays, fields, graphs, trees, lists, etc.) contained in one or more memories or storage devices listed herein. The processes described with respect to the example embodiments of FIGS. 1-14 are collected and / or calculated in one or more databases thereof by the processes of the apparatuses and thus systems of the example embodiments of FIGS. 1-14. It may include data structures suitable for storing data.

[00136] 도 1-14의 예시적인 실시예들의 장치들 및 그에 따른 시스템들의 모두 혹은 일부가 본 발명의 예시적인 실시예들의 가르침들에 따라 프로그램된, 하나 이상의 범용 컴퓨터 시스템들, 마이크로프로세서들, 디지털 신호 프로세서들, 마이크로 콘트롤러 등을 이용하여 용이하게 달성될 수 있다는 것은, 컴퓨터 및 소프트웨어 분야에서 숙련된 사람들에 의해 이해될 것이다. 이러한 소프트웨어 기술에 숙련된 사람들에 의해 이해되는 것처럼, 예시적인 실시예들의 가르침들에 기초하여 적합한 소프트웨어가 평범한 기술의 프로그래들에 의해 미리 준비될 수 있다. 나아가, 도 1-14의 예시적인 실시예들의 장치들 및 그에 따른 시스템들은 월드 와이드 웹(World Wide Web) 상에서 실행될 수도 있다. 부가하여, 도 1-14의 예시적인 실시 예들의 장치들 및 그에 따른 시스템들은, 전기 기술에 숙련된 사람들에 의해 이해되는 것처럼, 애플리케이션-특정 집적회로들을 마련하거나 종래의 소자 회로들(conventional component circuits)의 적합한 네트워크를 상호 연결함에 의해 달성될 수도 있다. 이에 따라, 상기 예시적인 실시예들은 하드웨어 회로 및/또는 소프트웨어의 어느 특정 조합에 제한되지 않는다. [00136] One or more general purpose computer systems, microprocessors, all or some of the apparatuses and thus systems of the example embodiments of FIGS. 1-14 programmed according to the teachings of the example embodiments of the present invention, It will be understood by those skilled in the computer and software arts that it can be readily accomplished using digital signal processors, microcontrollers and the like. As will be appreciated by those skilled in this software technology, suitable software can be prepared in advance by programs of ordinary skill in the art based on the teachings of the exemplary embodiments. Furthermore, the apparatuses and resulting systems of the example embodiments of FIGS. 1-14 may be implemented on a World Wide Web. In addition, the apparatuses and resulting systems of the example embodiments of FIGS. 1-14 provide application-specific integrated circuits or conventional component circuits, as understood by those skilled in the art of electricity. May be achieved by interconnecting a suitable network. As such, the exemplary embodiments are not limited to any particular combination of hardware circuitry and / or software.

[00137] 컴퓨터 판독 매체의 조합 혹은 그 중 어느 하나에 저장된, 본 발명의 예시적인 실시예들은 도 1-14의 예시적인 실시예들의 장치들 및 그에 따른 시스템들을 제어하고, 구동하며, 인간 사용자 등과 상호작용을 가능케 하기 위한 소프트웨어를 포함할 수 있다. 이러한 소프트웨어는, 이에 제한되지는 않지만, 장치 드라이버들, 펌웨어(firmware), 운영 시스템들, 개발 툴(tool)들, 애플리케이션 소프트웨어 등을 포함할 수 있다. 이러한 컴퓨터 판독 매체는 더욱이 본 발명을 이행하는 데 수행되는 프로세싱의 모두 또는 일부(만일 프로세싱이 배포된다면)를 수행하기 위한 본 발명의 일실시예의 컴퓨터 프로그램 제품을 포함할 수도 있다. 본 발명의 예시적인 실시예들의 컴퓨터 코드 장치들은, 스크립트들(scripts), 해석 프로그램들, 동적 연결 라이브러리들(DLLs: Dynamic Link Libraries), 자바 클래스들 및 애플릿들(Java classes and applets), 완전한 실행이 가능한 프로그램들, 공통 객체 요구 매개자 구조(CORBA: Common Object Request Broker Architecture)의 객체들 등을 포함하지만 이들에 제한되지는 않는, 어느 적합한 해석 가능하거나 실행 가능한 코드 메커니즘(mechanism)을 포함할 수 있다. 또한, 더 나은 성능 및 신뢰성과 비용절감 등을 위해 본 발명의 예시적인 실시예들의 프로세싱 부분들이 배포 될 수도 있다.Exemplary embodiments of the invention, stored on a combination of computer readable media or any one thereof, control, drive, and / or control the devices and systems thereof according to the example embodiments of FIGS. 1-14. It may include software for enabling interaction. Such software may include, but is not limited to, device drivers, firmware, operating systems, development tools, application software, and the like. Such computer readable media may further comprise the computer program product of one embodiment of the invention for performing all or part (if processing is distributed) of the processing performed to implement the invention. Computer code devices of exemplary embodiments of the present invention include scripts, interpreter programs, Dynamic Link Libraries (DLLs), Java classes and applets, complete execution. It may include any suitable interpretable or executable code mechanism, including but not limited to these possible programs, objects of the Common Object Request Broker Architecture (CORBA), and the like. . In addition, the processing portions of exemplary embodiments of the present invention may be distributed for better performance, reliability and cost savings.

[00138] 상기 전술한 바와 같이, 도 1-14의 예시적인 실시예들의 장치들 및 그에 따른 시스템들은 본 발명의 가르침에 따라 프로그램된 명령들을 보유하고 데이터 구조들, 표들, 기록들, 및/또는 여기서 설명된 다른 데이터를 보유하기 위해 컴퓨터 판독 매체 또는 메모리들을 포함할 수 있다. 컴퓨터 판독 매체는 실행을 위한 프로세서로 명령들을 제공하는데 참여하는 어느 적합한 매체를 포함할 수 있다. 이러한 매체는 비 휘발성 매체들, 휘발성 매체들, 전송매체 등을 포함하지만 이에 국한되지는 않는 다양한 형태들을 취할 수 있다. 비 휘발성 매체들은, 예컨대, 광학 혹은 자기 디스크들, 광-자기 디스크들 등을 포함할 수 있다. 휘발성 매체들은 동적 메모리들 등을 포함할 수 있다. 전송 매체들은 동축 케이블들, 구리 선, 광 섬유 등을 포함할 수 있다. 전송 매체들은 또한 무선주파수(RF) 통신들, 적외선(IR) 데이터 통신들 등에서 발생되는 음향, 광학, 전자기파들 등과 같은 형태를 취할 수도 있다. 컴퓨터 판독 매체들의 일반적 형태는, 예를 들면, 플로피 디스크, 플렉시블(flexible) 디스크, 하드 디스크, 자기 테잎, 어느 다른 적합한 자기 매체, CD-ROM, CDRW, DVD, 어느 다른 적합한 광학 매체, 펀치 카드(punch cards), 종이 테잎, 광학 마크쉬트(mark sheets), 구멍 또는 다른 광학적으로 인식 가능한 표시를 갖는 어느 다른 적합한 물리적 매체, RAM, PROM, EPROM, FLASH-EPROM, 어느 다른 적합한 메모리 칩 혹은 카트리지, 컴퓨터가 읽을 수 있는 반송파 또는 어느 다른 적합한 매체를 포함할 수 있다. As mentioned above, the apparatuses and systems according to the exemplary embodiments of FIGS. 1-14 retain data programmed, instructions, and / or data structures in accordance with the teachings of the present invention. Computer-readable media or memories may be included to hold the other data described herein. Computer-readable media can include any suitable media that participates in providing instructions to a processor for execution. Such a medium may take various forms, including but not limited to non-volatile media, volatile media, transmission media, and the like. Non-volatile media may include, for example, optical or magnetic disks, optical-magnetic disks, and the like. Volatile media can include dynamic memories and the like. Transmission media may include coaxial cables, copper wire, fiber optics, and the like. Transmission media may also take the form of acoustic, optical, electromagnetic waves, and the like, generated in radio frequency (RF) communications, infrared (IR) data communications, and the like. Common forms of computer readable media include, for example, floppy disks, flexible disks, hard disks, magnetic tapes, any other suitable magnetic media, CD-ROMs, CDRWs, DVDs, any other suitable optical media, punch cards ( punch cards, paper tapes, optical mark sheets, holes or any other suitable physical medium having other optically recognizable markings, RAM, PROM, EPROM, FLASH-EPROM, any other suitable memory chip or cartridge, computer May include a readable carrier or any other suitable medium.

[00139] 본 발명은 많은 예시적인 실시예들과 이행들에 관하여 설명되었지 만, 본 발명은 이에 국한되지 않고, 오히려 첨부된 청구항들의 범위 내에 해당되는 다양한 변경 실시예들과 등가물들도 포괄한다. While the invention has been described in terms of many exemplary embodiments and implementations, the invention is not limited thereto but rather encompasses various modifications and equivalents that fall within the scope of the appended claims.

Claims (87)

특징 및 행위의 프로파일에 비교되는 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 특징 및 행위에 기초한 컴퓨터 환경에서의 무결성 보증 및 검증방법에 있어서,A method of ensuring and verifying integrity in a computer environment based on the features and behavior of one or more applications, systems or system components compared to a profile of features and behaviors, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 특징 및 행위들을 세부화(specifying) 하는 행위 무결성 프로파일(BIP)을 결정하는 단계와;Determining a Behavioral Integrity Profile (BIP) that details the features and behaviors of the one or more applications, systems or system components; 상기 행위 무결성 프로파일의 세부사항에서 정의된 특징 및 행위에 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 특징 및 행위가 순응하는 지의 여부를 상기 행위 무결성 프로파일에 기초하여 결정하는 단계와;Determining based on the behavior integrity profile whether the features and behavior of the one or more applications, systems or system components conform to the features and behaviors defined in the details of the behavior integrity profile; 상기 순응여부 결정단계에 기초하여 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들에 대한 액세스 권한을 결정하는 단계를 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Determining access rights to the one or more applications, systems or system components based on the determining compliance. 제1항에 있어서, The method of claim 1, 애플리케이션 무결성 프로파일(AIP)을 결정하는 단계와;Determining an application integrity profile (AIP); 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 진정성(authenticity)을 상기 애플리케이션 무결성 프로파일에 기초하여 결정하는 단계와;Determining the authenticity of the one or more applications, systems or system components based on the application integrity profile; 상기 진정성 결정단계에 기초하여 상기 액세스 권한을 결정하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법. And determining the access right based on the authenticity determining step. 제2항에 있어서,The method of claim 2, 하나 이상의 상기 애플리케이션 무결성 프로파일과 하나 이상의 상기 행위 무결성 프로파일을 상호 연계하여 이용하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Using at least one said application integrity profile and at least one said behavior integrity profile in association with each other. 제2항에 있어서, The method of claim 2, 무결성 보증 및 검증 장치를 제공하는 단계를 더 포함하고,Providing integrity assurance and verification devices, 상기 무결성 보증 및 검증 장치는 상기 애플리케이션 무결성 프로파일에 접근하여 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들에 관한 인증정보를 결정하는 것을 특징으로 하는 무결성 보증 및 검증방법. And the integrity assurance and verification device accesses the application integrity profile to determine authentication information for the one or more applications, systems or system components. 제1항에 있어서,The method of claim 1, 구성요소 등록 장치를 통해 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 특징 및 행위를 상기 행위 무결성 프로파일의 세부사항에 대해 검증함으로써 상기 행위 무결성 프로파일의 순응상태를 결정하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법. Determining a compliance state of the behavioral integrity profile by verifying, through a component registration device, features and behaviors of the one or more applications, systems or system components against the details of the behavioral integrity profile Integrity assurance and verification methods. 제2항에 있어서,The method of claim 2, 상기 행위 무결성 프로파일은, 적어도 하나의 행위 무결성 프로파일 식별값과, 등록된 애플리케이션의 식별값과, 시스템 또는 시스템 구성요소와, 순응상태를 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법. The behavior integrity profile includes at least one behavior integrity profile identification value, an identification value of a registered application, a system or a system component, and a compliance state. 제6항에 있어서, The method of claim 6, 프로파일 데이터베이스를 통해 상기 행위 무결성 프로파일을 상기 행위 무결성 프로파일 식별값, 상기 등록 애플리케이션 식별값 및 상기 시스템 또는 시스템 구성요소와 함께 유지 관리하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And maintaining said behavioral integrity profile with said behavioral integrity profile identification, said registration application identification, and said system or system component through a profile database. 제1항에 있어서,The method of claim 1, 프로파일 검증 장치를 통해 상기 행위 무결성 프로파일이 전달되는 상기 애플리케이션, 시스템 또는 시스템 구성요소들의 순응상태를 점검함으로써 행위 무결성 프로파일 순응 증거(proof)를 검증하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Verifying the integrity of the behavioral integrity profile by checking compliance of the application, system or system component to which the behavioral integrity profile is delivered via a profile verification device; Way. 제1항에 있어서,The method of claim 1, 등록 애플리케이션 장치를 통해 애플리케이션, 시스템 또는 시스템 구성요소 제공자로부터 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들에 관한 인증정보를 획득하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And obtaining authentication information about the one or more applications, systems, or system components from an application, system, or system component provider through a registration application device. 제6항에 있어서, The method of claim 6, 상기 행위 무결성 프로파일 식별값을 배포된 정보와 함께 이용하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Using the behavioral integrity profile identification with the distributed information. 제1항에 있어서, The method of claim 1, 상기 행위 무결성 프로파일과 관련된 콘텐트 정보를 콘텐트 제공자를 통해 분배하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Distributing content information associated with the behavioral integrity profile through a content provider. 제1항에 있어서,The method of claim 1, 애플리케이션, 시스템 또는 시스템 구성요소 제공자를 제공하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And providing an application, system, or system component provider. 제10항에 있어서,The method of claim 10, 상기 행위 무결성 프로파일 식별값이 상기 배포된 정보와 함께 이용될 때에, 만일 프로파일 검증 장치가 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들이 진정성이 없거나 상기 행위 무결성 프로파일의 세부사항에 순응하지 않는 것으로 결정하면, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들과 관련된 콘텐트에의 접근이 거부되는 것을 특징으로 하는 무결성 보증 및 검증방법.When the behavioral integrity profile identification value is used with the distributed information, if the profile verification device determines that the one or more applications, systems or system components are not authentic or are not compliant with the details of the behavioral integrity profile And denying access to content associated with the one or more applications, systems, or system components. 제1항에 있어서,The method of claim 1, 행위 무결성 프로파일 생성 장치를 통해 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들에 상응하는 애플리케이션 식별 정보와 순응상태를 구성요소 데이터베이스로부터 얻어냄으로써 상기 행위 무결성 프로파일을 구축하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Constructing the behavioral integrity profile by obtaining, from a component database, application identification information and compliance status corresponding to the one or more applications, systems or system components through a behavioral integrity profile generating device; Integrity assurance and verification methods. 제1항에 있어서,The method of claim 1, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 특징 및 행위가 상기 행위 무결성 프로파일의 세부사항에서 정의된 특징들에 순응하는 지의 여부 결정을 허용하는 것에 대해 상기 행위 무결성 프로파일을 평가하는 단계와;Evaluating the behavioral integrity profile for allowing determining whether a feature and behavior of the one or more applications, systems or system components conform to the features defined in the details of the behavioral integrity profile; 상기 평가단계에 기초하여 상기 액세스 권한을 결정하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법. And determining the access right based on the evaluation step. 제15항에 있어서, The method of claim 15, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 상기 행위 무결성 프로파일 순응상태를 검증하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Verifying the behavior integrity profile compliance of the one or more applications, systems or system components. 제15항에 있어서, The method of claim 15, 상기 액세스 권한은 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들과 관련된 콘텐트에 접근하는 것에 대한 허용권한 및 거부권한 중 적어도 어느 하나를 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And wherein said access right comprises at least one of a grant right and a deny right to access content associated with said one or more applications, systems or system components. 제15항에 있어서, The method of claim 15, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들 중 적어도 하나에 대한 인증 정보를 획득하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And obtaining authentication information for at least one of the one or more applications, systems, or system components. 제1항에 있어서, The method of claim 1, 상기 행위 무결성 프로파일을 디지털적으로 서명하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Digitally signing the behavioral integrity profile. 제19항에 있어서, The method of claim 19, 상기 디지털적으로 서명된 행위 무결성 프로파일을 소비자의 시스템으로 전달하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Delivering the digitally signed behavioral integrity profile to a consumer system. 제1항에 있어서, The method of claim 1, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들과 관련된 무결성 인증자의 무결성을 검증하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Verifying the integrity of the integrity authenticator associated with the one or more applications, systems or system components. 제2항에 있어서,The method of claim 2, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들에 대한 인증정보에 접근하는 무결성 보증 및 검증 장치를 제공하는 단계와;Providing an integrity assurance and verification device for accessing authentication information for the one or more applications, systems or system components; 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 진정성을 결정하기 위해 이용되는 상기 애플리케이션 무결성 프로파일을 제공하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Providing the application integrity profile used to determine authenticity of the one or more applications, systems or system components. 제22항에 있어서,The method of claim 22, 시스템 또는 시스템 구성요소들 및 검증 가능한 정보와 등록 애플리케이션의 식별값 중 적어도 하나를 포함하는 상기 애플리케이션 무결성 프로파일을 상기 인증정보로부터 구성요소 등록 장치를 통해 결정하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And determining, via the component registration device, the application integrity profile from the authentication information, the application integrity profile comprising at least one of a system or system components and verifiable information and an identification value of a registered application. And verification method. 제22항에 있어서,The method of claim 22, 프로파일 데이터베이스를 통해 시스템 또는 시스템 구성요소들 및 상기 애플리케이션 무결성 프로파일과 등록 애플리케이션의 식별값을 유지 관리하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And maintaining an identification of the system or system components and the application integrity profile and the registered application through a profile database. 제22항에 있어서,The method of claim 22, 프로파일 검증 장치를 통해 시스템 또는 시스템 구성요소들의 식별값 및 하나 이상의 애플리케이션의 식별값과, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들, 상기 애플리케이션 무결성 프로파일, 및/또는 애플리케이션 무결성 프로파일 식별값을 비교함으로써 진정성을 검증하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.By comparing the identification value of the system or system components and the identification value of one or more applications with the profile verification device, the one or more applications, system or system components, the application integrity profile, and / or application integrity profile identification value Integrity assurance and verification method further comprising the step of verifying authenticity. 제22항에 있어서,The method of claim 22, 등록 애플리케이션 장치를 통해 애플리케이션, 시스템 또는 시스템 구성요소 제공자로부터 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들에 대한 인증정보를 획득하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Obtaining authentication information for one or more applications, systems, or system components from an application, system, or system component provider via a registered application device. 제22항에 있어서,The method of claim 22, 상기 애플리케이션 무결성 프로파일은 배포된 정보와 함께 이용될 수 있는 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 식별값을 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And said application integrity profile comprises an identification of said one or more applications, systems or system components that can be used with the distributed information. 제22항에 있어서, The method of claim 22, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들과 관련된 콘텐트 정보를 콘텐트 제공자를 통해 배포하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Distributing content information associated with the one or more applications, systems or system components through a content provider. 제22항에 있어서,The method of claim 22, 애플리케이션, 시스템 또는 시스템 구성요소 제공자를 제공하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And providing an application, system, or system component provider. 제22항에 있어서, The method of claim 22, 만일 프로파일 검증 장치가 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들이 진정성이 없는 것으로 판단하면, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들과 관련된 하나 이상의 문서들에의 접근이 거부되는 것을 특징으로 하는 무결성 보증 및 검증방법.If the profile verification device determines that the one or more applications, systems or system components are not authentic, then access to one or more documents associated with the one or more applications, systems or system components is denied. Integrity assurance and verification methods. 제22항에 있어서,The method of claim 22, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들에 관한 검증 가능한 정보에 기초하여 프로파일 생성 장치를 통해 상기 애플리케이션 무결성 프로파일을 결정하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And determining the application integrity profile through a profile generation device based on verifiable information about the one or more applications, systems or system components. 제2항에 있어서,The method of claim 2, 상기 애플리케이션 무결성 프로파일을 보증하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And assuring said application integrity profile. 제2항에 있어서,The method of claim 2, 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 진정성을 검증하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And authenticating the authenticity of one or more applications, systems, or system components. 제2항에 있어서,The method of claim 2, 상기 액세스 권한은 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들과 관련된 콘텐트에 접근하는 것에 대한 허용권한 및 거부권한 중 적어도 어느 하나를 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And wherein said access right comprises at least one of a grant right and a deny right to access content associated with said one or more applications, systems or system components. 제2항에 있어서, The method of claim 2, 적어도 하나의 상기 애플리케이션, 시스템 또는 시스템 구성요소에 관한 인증정보를 획득하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And obtaining authentication information regarding at least one of said application, system, or system component. 제2항에 있어서,The method of claim 2, 상기 애플리케이션 무결성 프로파일을 디지털적으로 서명하는 단계를 더 포 함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Digitally signing the application integrity profile. 제36항에 있어서,The method of claim 36, 상기 디지털적으로 서명된 무결성 프로파일을 소비자의 시스템으로 전달하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Delivering the digitally signed integrity profile to a consumer system. 제2항에 있어서,The method of claim 2, 상기 애플리케이션 무결성 프로파일과 관련된 무결성 인증자의 무결성을 검증하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Verifying the integrity of the integrity authenticator associated with the application integrity profile. 제1항에 있어서,The method of claim 1, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들과 관련된 조작 저지 환경을 설정하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Establishing an tamper resistant environment associated with the one or more applications, systems or system components. 제2항에 있어서, The method of claim 2, 상기 애플리케이션 무결성 프로파일을 검증하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And verifying the application integrity profile. 제2항에 있어서,The method of claim 2, 유효한 애플리케이션 무결성 프로파일을 로드하는 단계를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.And loading a valid application integrity profile. 제38항에 있어서,The method of claim 38, 상기 무결성 인증자의 무결성을 검증하는 단계는 상기 무결성 인증자가 모니터 되거나, 제어되거나 또는 기록되는 것 중 적어도 어느 하나가 아니라는 것을 입증하는 단계를 포함하는 것을 특징으로 하는 무결성 보증 및 검증방법.Verifying the integrity of the integrity authenticator comprises verifying that the integrity authenticator is not at least one of being monitored, controlled or recorded. 제1항에 있어서,The method of claim 1, 상기 무결성 보증 및 검증방법은 컴퓨터 판독 매체에 내장되어 하나 이상의 컴퓨터 프로세서가 상기 무결성 보증 및 검증방법에서 열거된 각 단계들을 수행하도록 구성된 하나 이상의 판독 가능한 명령들로써 실행되는 것을 특징으로 하는 무결성 보증 및 검증방법. The integrity assurance and verification method is an integrity assurance and verification method embedded in a computer readable medium, wherein the one or more computer processors are executed as one or more readable instructions configured to perform each step listed in the integrity assurance and verification method. . 제1항에 있어서,The method of claim 1, 상기 무결성 보증 및 검증방법은 상기 무결성 보증 및 검증방법에서 열거된 각 단계들을 수행하도록 구성된 하나 이상의 컴퓨터 소프트웨어 및/또는 하드웨어 장치들로써 실행되는 것을 특징으로 하는 무결성 보증 및 검증방법. The integrity assurance and verification method is implemented with one or more computer software and / or hardware devices configured to perform the respective steps listed in the integrity assurance and verification method. 특징 및 행위의 프로파일에 비교되는 하나 이상의 애플리케이션, 시스템 또 는 시스템 구성요소들의 특징 및 행위에 기초한 컴퓨터 환경에서의 무결성 보증 및 검증을 위한 시스템에 있어서,A system for integrity assurance and verification in a computer environment based on features and behavior of one or more applications, systems or system components compared to a profile of features and behaviors, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 특징 및 행위들을 세부화 하는 행위 무결성 프로파일(BIP)을 결정하기 위한 수단과;Means for determining a Behavioral Integrity Profile (BIP) that details the features and behaviors of the one or more applications, systems or system components; 상기 행위 무결성 프로파일의 세부사항에서 정의된 특징 및 행위에 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 특징 및 행위가 순응하는 지의 여부를 상기 행위 무결성 프로파일에 기초하여 결정하기 위한 수단과;Means for determining, based on the behavior integrity profile, whether the features and behavior of the one or more applications, systems, or system components conform to the features and behaviors defined in the details of the behavior integrity profile; 상기 순응여부 결정에 기초하여 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들에 대한 액세스 권한을 결정하기 위한 수단을 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.Means for determining access rights to the one or more applications, systems or system components based on the compliance determination. 제45항에 있어서,The method of claim 45, 애플리케이션 무결성 프로파일(AIP)을 결정하기 위한 수단과;Means for determining an application integrity profile (AIP); 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 진정성(authenticity)을 상기 애플리케이션 무결성 프로파일에 기초하여 결정하기 위한 수단과;Means for determining the authenticity of the one or more applications, systems or system components based on the application integrity profile; 상기 진정성 결정에 기초하여 상기 액세스 권한을 결정하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템. Means for determining the access right based on the authenticity determination. 제46항에 있어서,47. The method of claim 46 wherein 하나 이상의 상기 애플리케이션 무결성 프로파일과 하나 이상의 상기 행위 무결성 프로파일을 상호 연계하여 이용하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for interoperating one or more of said application integrity profile and one or more said behavioral integrity profile. 제46항에 있어서, 47. The method of claim 46 wherein 무결성 보증 및 검증 장치를 더 포함하고,Further includes an integrity assurance and verification device, 상기 무결성 보증 및 검증 장치는 상기 애플리케이션 무결성 프로파일에 접근하여 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들에 관한 인증정보를 결정하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And the integrity assurance and verification device accesses the application integrity profile to determine authentication information for the one or more applications, systems or system components. 제45항에 있어서,The method of claim 45, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 특징 및 행위를 상기 행위 무결성 프로파일의 세부사항에 대해 검증함으로써 상기 행위 무결성 프로파일의 순응상태를 결정하기 위한 구성요소 등록 장치를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템. And a component registration device for determining a compliance state of the behavioral integrity profile by verifying features and behaviors of the one or more applications, systems or system components against details of the behavioral integrity profile. System for Warranty and Verification. 제46항에 있어서,47. The method of claim 46 wherein 상기 행위 무결성 프로파일은, 행위 무결성 프로파일 식별값, 등록된 애플리케이션의 식별값, 시스템 또는 시스템 구성요소와, 순응상태 중 적어도 하나를 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템. And wherein said behavior integrity profile comprises at least one of a behavior integrity profile identification value, an identification value of a registered application, a system or system component, and a compliance state. 제6항에 있어서, The method of claim 6, 상기 행위 무결성 프로파일을 상기 행위 무결성 프로파일 식별값, 상기 등록 애플리케이션 식별값 및 상기 시스템 또는 시스템 구성요소와 함께 유지 관리하기 위한 프로파일 데이터베이스를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And a profile database for maintaining the behavioral integrity profile with the behavioral integrity profile identification, the registered application identification, and the system or system component. 제45항에 있어서,The method of claim 45, 상기 행위 무결성 프로파일이 전달되는 상기 애플리케이션, 시스템 또는 시스템 구성요소들의 순응상태를 점검함으로써 행위 무결성 프로파일 순응 증거(proof)를 검증하기 위한 프로파일 검증 장치를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And a profile verification device for verifying a behavior integrity profile compliance proof by checking the compliance status of the application, system or system component to which said behavior integrity profile is delivered. system. 제45항에 있어서,The method of claim 45, 애플리케이션, 시스템 또는 시스템 구성요소 제공자로부터 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들에 관한 인증정보를 획득하기 위한 등록 애플리케이션 장치를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And a registration application device for obtaining authentication information about the one or more applications, systems or system components from an application, system or system component provider. 제50항에 있어서, 51. The method of claim 50, 상기 행위 무결성 프로파일 식별값을 배포된 정보와 함께 이용하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for using the behavioral integrity profile identification with the distributed information. 제45항에 있어서, The method of claim 45, 상기 행위 무결성 프로파일과 관련된 콘텐트 정보를 분배하기 위한 콘텐트 제공자를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And a content provider for distributing content information associated with the behavioral integrity profile. 제45항에 있어서,The method of claim 45, 애플리케이션, 시스템 또는 시스템 구성요소의 제공자를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.The system for integrity assurance and verification further comprising a provider of an application, system or system component. 제54항에 있어서,The method of claim 54, 프로파일 검증 장치를 더 포함하며, 상기 행위 무결성 프로파일 식별값이 상기 배포된 정보와 함께 이용될 때에, 만일 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들이 진정성이 없거나 상기 행위 무결성 프로파일의 세부사항에 순응하지 않는 것으로 상기 프로파일 검증 장치가 결정하면, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들과 관련된 콘텐트에의 접근이 거부되는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.Further comprising a profile verification device, wherein when the behavioral integrity profile identification is used with the distributed information, the one or more applications, systems or system components are not authentic or compliant with the details of the behavioral integrity profile. And if the profile verifying device determines not to, access to content associated with the one or more applications, systems, or system components is denied. 제45항에 있어서,The method of claim 45, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들에 상응하는 애플리케이션 식별 정보와 순응상태를 구성요소 데이터베이스로부터 얻어냄으로써 상기 행위 무결성 프로파일을 구축하기 위한 행위 무결성 프로파일 생성 장치를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.Integrity assurance, characterized in that it further comprises a behavior integrity profile generation device for building the behavior integrity profile by obtaining application identification information and compliance status corresponding to the one or more applications, systems or system components from a component database. And a system for verification. 제45항에 있어서,The method of claim 45, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 특징 및 행위가 상기 행위 무결성 프로파일의 세부사항에서 정의된 특징들에 순응하는 지의 여부 결정을 허용하는 것에 대해 상기 행위 무결성 프로파일을 평가하기 위한 수단과;Means for evaluating the behavioral integrity profile for allowing determining whether a feature and behavior of the one or more applications, systems or system components conform to the features defined in the details of the behavioral integrity profile; 상기 평가에 기초하여 상기 액세스 권한을 결정하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.Means for determining the access right based on the evaluation. 제59항에 있어서, The method of claim 59, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 상기 행위 무결성 프로파일 순응상태를 검증하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for verifying said behavior integrity profile compliance of said one or more applications, systems or system components. 제59항에 있어서, The method of claim 59, 상기 액세스 권한은 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구 성요소들과 관련된 콘텐트에 접근하는 것에 대한 허용권한 및 거부권한 중 적어도 어느 하나를 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And wherein said access right includes at least one of an grant right and a deny right to access content associated with said one or more applications, systems or system components. 제59항에 있어서, The method of claim 59, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들 중 적어도 하나에 대한 인증 정보를 획득하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for obtaining authentication information for at least one of the one or more applications, systems or system components. 제45항에 있어서, The method of claim 45, 상기 행위 무결성 프로파일을 디지털적으로 서명하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for digitally signing the behavioral integrity profile. 제63항에 있어서, The method of claim 63, wherein 상기 디지털적으로 서명된 행위 무결성 프로파일을 소비자의 시스템으로 전달하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for delivering said digitally signed behavioral integrity profile to a system of a consumer. 제45항에 있어서, The method of claim 45, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들과 관련된 무결성 인증자의 무결성을 검증하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for verifying the integrity of an integrity authenticator associated with the one or more applications, systems or system components. 제46항에 있어서,47. The method of claim 46 wherein 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들에 대한 인증정보에 접근하는 무결성 보증 및 검증 장치와;An integrity assurance and verification device for accessing authentication information for the one or more applications, systems or system components; 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 진정성을 결정하기 위해 이용되는 상기 애플리케이션 무결성 프로파일을 제공하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for providing the application integrity profile used to determine the authenticity of the one or more applications, systems or system components. 제66항에 있어서,The method of claim 66, 시스템 또는 시스템 구성요소들 및 검증 가능한 정보와 등록 애플리케이션의 식별값 중 적어도 하나를 포함하는 상기 애플리케이션 무결성 프로파일을 상기 인증정보로부터 결정하기 위한 구성요소 등록 장치를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And a component registration device for determining said application integrity profile from said authentication information, said application integrity profile comprising at least one of a system or system components and verifiable information and an identification value of a registered application. System. 제66항에 있어서,The method of claim 66, 시스템 또는 시스템 구성요소들 및 상기 애플리케이션 무결성 프로파일과 등록 애플리케이션의 식별값을 유지 관리하기 위한 프로파일 데이터베이스를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And a profile database for maintaining system or system components and identification values of said application integrity profile and a registered application. 제66항에 있어서,The method of claim 66, 시스템 또는 시스템 구성요소들의 식별값 및 하나 이상의 애플리케이션의 식별값과, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들, 상기 애플리케이션 무결성 프로파일, 및/또는 애플리케이션 무결성 프로파일 식별값을 비교함으로써 진정성을 검증하기 위한 프로파일 검증 장치를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.To verify authenticity by comparing an identification of a system or system components and an identification of one or more applications with the one or more applications, system or system components, the application integrity profile, and / or an application integrity profile identification. The system for integrity assurance and verification, further comprising a profile verification device. 제66항에 있어서,The method of claim 66, 애플리케이션, 시스템 또는 시스템 구성요소 제공자로부터 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들에 대한 인증정보를 획득하기 위한 등록 애플리케이션 장치를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And a registration application device for obtaining authentication information for one or more applications, systems or system components from an application, system or system component provider. 제66항에 있어서,The method of claim 66, 상기 애플리케이션 무결성 프로파일은 배포된 정보와 함께 이용될 수 있는 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 식별값을 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.The application integrity profile includes an identification of the one or more applications, systems or system components that can be used with the distributed information. 제66항에 있어서, The method of claim 66, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들과 관련된 콘텐트 정보를 배포하기 위한 콘텐트 제공자를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And a content provider for distributing content information associated with the one or more applications, systems or system components. 제66항에 있어서,The method of claim 66, 애플리케이션, 시스템 또는 시스템 구성요소의 제공자를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.The system for integrity assurance and verification further comprising a provider of an application, system or system component. 제66항에 있어서, The method of claim 66, 프로파일 검증 장치를 더 포함하며, 만일 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들이 진정성이 없는 것으로 상기 프로파일 검증 장치가 판단하면, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들과 관련된 하나 이상의 문서들에의 접근이 거부되는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And further comprising a profile verification device, wherein if the profile verification device determines that the one or more applications, systems or system components are not authentic, System for integrity assurance and verification, characterized in that access is denied. 제66항에 있어서,The method of claim 66, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들에 관한 검증 가능한 정보에 기초하여 상기 애플리케이션 무결성 프로파일을 결정하기 위한 프로파일 생성 장치를 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And a profile generation device for determining the application integrity profile based on verifiable information about the one or more applications, systems or system components. 제46항에 있어서,47. The method of claim 46 wherein 상기 애플리케이션 무결성 프로파일을 보증하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for assuring said application integrity profile. 제46항에 있어서,47. The method of claim 46 wherein 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들의 진정성을 검증하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for verifying the authenticity of one or more applications, systems or system components. 제46항에 있어서,47. The method of claim 46 wherein 상기 액세스 권한은 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들과 관련된 콘텐트에 접근하는 것에 대한 허용권한 및 거부권한 중 적어도 어느 하나를 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And wherein said access right comprises at least one of an allowance and a deny permission to access content associated with said one or more applications, systems or system components. 제46항에 있어서, 47. The method of claim 46 wherein 적어도 하나의 상기 애플리케이션, 시스템 또는 시스템 구성요소에 관한 인증정보를 획득하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for obtaining authentication information regarding at least one of said application, system, or system component. 제46항에 있어서,47. The method of claim 46 wherein 상기 애플리케이션 무결성 프로파일을 디지털적으로 서명하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for digitally signing the application integrity profile. 제80항에 있어서,The method of claim 80, 상기 디지털적으로 서명된 무결성 프로파일을 소비자의 시스템으로 전달하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for delivering the digitally signed integrity profile to a system of a consumer. 제46항에 있어서,47. The method of claim 46 wherein 상기 애플리케이션 무결성 프로파일과 관련된 무결성 인증자의 무결성을 검증하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for verifying the integrity of the integrity authenticator associated with the application integrity profile. 제45항에 있어서,The method of claim 45, 상기 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소들과 관련된 조작 저지 환경을 설정하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for establishing an tamper resistant environment associated with the one or more applications, systems or system components. 제46항에 있어서, 47. The method of claim 46 wherein 상기 애플리케이션 무결성 프로파일을 검증하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for verifying the application integrity profile. 제46항에 있어서,47. The method of claim 46 wherein 유효한 애플리케이션 무결성 프로파일을 로드하기 위한 수단을 더 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for loading a valid application integrity profile. 제82항에 있어서,83. The method of claim 82, 상기 검증하기 위한 수단은 상기 무결성 인증자가 모니터 되거나, 제어되거나 또는 기록되는 것 중 적어도 어느 하나가 아니라는 것을 입증하기 위한 수단을 포함하는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And means for verifying includes means for verifying that the integrity authenticator is not at least one of being monitored, controlled or recorded. 제45항에 있어서,The method of claim 45, 상기 시스템은 하나 이상의 컴퓨터 소프트웨어 및/또는 하드웨어 장치들로써 실행되는 것을 특징으로 하는 무결성 보증 및 검증을 위한 시스템.And the system is implemented with one or more computer software and / or hardware devices.
KR1020077027952A 2005-04-29 2005-04-29 Systems and methods for integrity certification and verification KR101034127B1 (en)

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 (2)

Publication Number Publication Date
KR20080006638A true KR20080006638A (en) 2008-01-16
KR101034127B1 KR101034127B1 (en) 2011-05-13

Family

ID=37308255

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077027952A KR101034127B1 (en) 2005-04-29 2005-04-29 Systems and methods for integrity certification and verification

Country Status (5)

Country Link
EP (1) EP1884052A4 (en)
JP (1) JP2008539502A (en)
KR (1) KR101034127B1 (en)
CN (1) CN101167290A (en)
WO (1) WO2006118561A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101370266B1 (en) * 2012-07-20 2014-03-06 한국항공우주산업 주식회사 Method for verification Opertional Flight Program Using Cyclic Redundancy Check TOOL

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010061801A1 (en) * 2008-11-28 2010-06-03 インターナショナル・ビジネス・マシーンズ・コーポレーション Client computer for protecting confidential file, server computer therefor, method therefor, and computer program
KR101590188B1 (en) * 2009-05-08 2016-01-29 삼성전자주식회사 Method for verification of software package integrity in a mobile terminal
CN102480472B (en) * 2010-11-22 2015-07-22 英业达股份有限公司 Application program integration login method of enterprise inner network and verification server thereof
CN104008351B (en) * 2014-05-06 2017-03-15 武汉天喻信息产业股份有限公司 Window application completeness check system, method and device
US10313206B1 (en) * 2015-12-23 2019-06-04 Apstra, Inc. Verifying service status
CN110086828B (en) * 2019-05-14 2021-09-21 长讯通信服务有限公司 Communication engineering project life cycle credible management method based on webpage cloud service

Family Cites Families (6)

* Cited by examiner, † Cited by third party
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
CA2464788A1 (en) * 2003-04-16 2004-10-16 Wms Gaming Inc. 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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101370266B1 (en) * 2012-07-20 2014-03-06 한국항공우주산업 주식회사 Method for verification Opertional Flight Program Using Cyclic Redundancy Check TOOL

Also Published As

Publication number Publication date
JP2008539502A (en) 2008-11-13
CN101167290A (en) 2008-04-23
WO2006118561A1 (en) 2006-11-09
EP1884052A4 (en) 2011-03-23
KR101034127B1 (en) 2011-05-13
EP1884052A1 (en) 2008-02-06

Similar Documents

Publication Publication Date Title
KR100402071B1 (en) Systems and methods for integrity certification and verification of content consumption environments
JP6983794B2 (en) Copyright management method and system
US7152243B2 (en) Providing a secure hardware identifier (HWID) for use in connection with digital rights management (DRM) system
CA2457291C (en) Issuing a publisher use license off-line in a digital rights management (drm) system
KR101143228B1 (en) Enrolling/sub-enrolling a digital rights management drm server into a dram architecture
KR101009126B1 (en) Revocation of a certificate and exclusion of other principals in a digital rights managementdrm system based on a revocation list from a delegated revocation authority
KR101298293B1 (en) Digital license migration from first platform to second platform
US5935246A (en) Electronic copy protection mechanism using challenge and response to prevent unauthorized execution of software
US7610632B2 (en) Software use permission method and system
AU2001285298A1 (en) Systems and methods for integrity certification and verification of content consumption environments
EP1378811A2 (en) Systems and methods for issuing usage licenses for digital content and services
EP1378812A2 (en) Using a rights template to obtain a signed rights label (SRL) for digital content in a digital rights management system
KR101034127B1 (en) Systems and methods for integrity certification and verification
JP2005253048A (en) Acquisition of signed rights label (srl) of digital content using rights template of flexibility in copyright managerial system
KR20040073356A (en) Publishing digital content within a defined universe such as an organization in accordance with a digital rights management(drm) system
KR20070055934A (en) Trusted license removal in a content protection system or the like

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20140424

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20150423

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160421

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee