KR100402071B1 - 콘텐트 소비 환경의 무결성 보증 및 검증 시스템 및 방법 - Google Patents

콘텐트 소비 환경의 무결성 보증 및 검증 시스템 및 방법 Download PDF

Info

Publication number
KR100402071B1
KR100402071B1 KR10-2003-7002905A KR20037002905A KR100402071B1 KR 100402071 B1 KR100402071 B1 KR 100402071B1 KR 20037002905 A KR20037002905 A KR 20037002905A KR 100402071 B1 KR100402071 B1 KR 100402071B1
Authority
KR
South Korea
Prior art keywords
integrity
content
profile
applications
systems
Prior art date
Application number
KR10-2003-7002905A
Other languages
English (en)
Other versions
KR20030040427A (ko
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=24606431&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR100402071(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 콘텐트가드 홀딩즈 인코포레이티드 filed Critical 콘텐트가드 홀딩즈 인코포레이티드
Publication of KR20030040427A publication Critical patent/KR20030040427A/ko
Application granted granted Critical
Publication of KR100402071B1 publication Critical patent/KR100402071B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/104Grouping of entities

Abstract

문서발행자나 배포자와 같은 콘텐트 제공자는 예컨대 보호되는 콘텐트를 사용자에게 신뢰된 사용자 환경 내에서의 소비를 위해 제공한다. 무결성 보증 및 검증 서비스를 제공함으로써, 콘텐트 소비환경들의 진정성(authenticity)이 검증될 수 있다. 콘텐트 제공자는 예컨대 라이센스 계약서와 무결성 프로파일 ID와 같은 것을 포함하는 디지털 콘텐트의 보호판을 사용자에게 보낸다. 프로파일은 예컨대 애플리케이션들과 시스템 구성요소들을 포함하는데, 이들은 보호되는 콘텐트와 결합하여 사용되도록 허락된다. 부가하여, 콘텐트 제공자는 무결성 프로파일에 대한 요청을 개시한다. 무결성 프로파일에 대한 이러한 요청은 무결성 보증 및 검증 장치에 전달된다. 무결성 보증 및 검증 장치는 예컨대, 만약 무결성 프로파일이 요청된 애플리케이션들 및/또는 시스템 구성요소들에 대하여 이미 존재하지 않는다면, 예컨대 사용자에게 시스템 구성요소들을 제공하는 콘텐트 소비 시스템/애플리케이션 제공자에게 질의를 할 수 있다. 콘텐트 소비 시스템/애플리케이션 제공자는 특정의 애플리케이션들이나 시스템 구성요소들에 관한 무결성 보증 및 검증 장치 인증 정보로 리턴 한다. 인증정보는 사용자 시스템 상의 애플리케이션 및/또는 시스템 구성요소와 콘텐트 소비 시스템/애플리케이션 제공자가 배포한 그 상태의 오리지널 애플리케이션이나 시스템 간에 만들어지는 비교 또는 무결성 검증을 하게 한다.

Description

콘텐트 소비 환경의 무결성 보증 및 검증 시스템 및 방법{Systems and methods for integrity certification and verification of content consumption environments}
[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) 등으로 불린다.
[0003] 콘텐트 제공자들은 종종 그들의 콘텐츠가 원하는 특성 및/또는 작용(behaviors)을 갖는 보증된 애플리케이션들(applications)과 시스템에 의해 소비되기를 바란다. 공개키 기반구조(public key infrastructure: PKI)의 직접적인 사용은 애플리케이션과 시스템 제공자들이 그들 자신의 제품을 보증할 수 있고 콘텐트 제공자들은 그들의 콘텐츠를 소비하는 데 이용되는 그런 애플리케이션들과 시스템들의 무결성을 검증할 수 있음을 가능하게 해준다.
[0001] 본 발명은 무결성 보증 및 검증에 관한 것이다. 특히, 본 발명은 콘텐트 소비 환경(a content consumption environment) 내에서의 무결성 보증 및 검증(integrity certification and verification)에 관련된 것이다.
[0025] 본 발명은 첨부된 도면을 참조하여 상세히 설명되는데, 첨부된 도면은 다음과 같다.
[0026] 도 1은 본 발명에 따른 무결성 보증 및 검증 시스템의 제1 실시예를 도시하는 기능 개요도(functional overview)이다.
[0027] 도 2는 본 발명에 따른 무결성 보증 및 검증 시스템의 제1 실시예를 도시한 기능 블록도이다.
[0028] 도 3은 본 발명에 따른 예시적인 무결성 보증 및 검증장치의 작업흐름도이다.
[0029] 도 4는 본 발명에 다른 무결성 프로파일의 예시적인 구조를 도시한다.
[0030] 도 5는 본 발명에 따른 예시적인 환경 스택(environment stack)을 도시한다.
[0031] 도 6은 본 발명에 따른 예시적인 환경 스택을 도시한다.
[0032] 도 7은 본 발명에 따른 예시적인 환경 스택의 작업흐름(workflow)을 도시한다.
[0033] 도 8은 본 발명에 따른 스택의 예시적인 작업흐름을 도시한다.
[0034] 도 9는 본 발명에 따른 스택을 조작하는 방법을 예시적으로 도시한다.
[0035] 도 10은 본 발명에 따른 디버깅의 사용을 통해 동적 간섭(dynamic tampering)을 막는 방법을 예시적으로 도시한다.
[0036] 도 11은 본 발명에 따른 무결성 보증 및 검증 방법의 예시적인 일 실시예의 대강을 나타내는 흐름도이다.
[0037] 도 12는 본 발명에 따른 애플리케이션들 및/또는 시스템을 등록하는 방법의 예시적인 일 실시예의 대강을 나타내는 흐름도이다.
[0038] 도 13은 본 발명에 따른 무결성 프로파일을 결정하는 방법의 예시적인 일 실시예의 대강을 나타내는 흐름도이다.
[0039] 도 14는 본 발명에 따른 무결성 인증자(integrity authenticator)의 무결성을 검증하는 방법의 예시적인 일 실시예의 대강을 나타내는 흐름도이다.
[0004] 그러나 PKI의 직접적인 사용은 판매자들과 제공자들 간에 다 대 다 관계(many-to-many relationship)를 만들게 된다. 이런 유형의 관계는 기준화하기(scale)가 쉽지 않고, 따라서 그 관계를 관리하고 효율적이고 실시간적으로 무결성 검증을 하는 것이, 불가능하지는 않다 하더라도, 어려운 일이다.
[0005] 콘텐트 제공자들은 종종 원하는 특성과 작용(behaviors)을 갖는 보증된 애플리케이션들과 시스템에 의해 소비되는 그들의 콘텐트를 갖기를 원한다. 콘텐트 소비 환경의 이러한 측면들을 제어함으로써, 콘텐트 제공자는 예컨대 복사, 프린트, 매입(embedding), 배포(distribution) 등과 같은 사용법(usage)을 제한할 수 있다.
[0006] 예컨대, 콘텐트 제공자는 콘텐트를 소비하는 시스템이 안전도와 권리관리능력이 어떤 레벨은 되어야 한다는 것을 요구하는 방식으로 콘텐트를 오용으로부터 보호하기를 원할 수 있다. 콘텐트 제공자는 또한 예컨대 디버거, 바이러스,가로채기 루틴(interception routine) 등과 같은 어떤 "외래(alien)" 애플리케이션도 콘텐트나 다른 민감한 정보를 압수하거나 혹은 그렇지 않다면 "훔치기"를 하는 사용자 시스템상의 콘텐트 소비 애플리케이션과 상호작용하지 않기를 원할 수도 있다. 예컨대, 변호사 도켓번호(Attorney Docket No.)가 111325 000002이고 제목이 "표준 렌더링 엔진을 사용하는 문서 배포 관리 방법 및 장치와 표준 렌더링 엔진을 제어하기 위한 방법 및 장치"이며 그 내용 전체가 본 출원에 통합되어 여기에 함께 출원되는 발명이 있는데, 그 발명은 사용자 시스템의 기능성 관리를 통해 문서에 대한 사용자의 접근을 제한하도록 한다.
[0007] 주어진 애플리케이션들과 시스템이 원하는 특성과 작용을 갖는 것을 보증하기 위해서는, 콘텐트를 소비하는 데 필요한 모든 애플리케이션들과 시스템 구성요소들(system components)의 검증은 검증 애플리케이션에 의해 확인받을 필요가 있다.
[0008] 본 발명은 콘텐트 소비 환경들에 대한 보증과 검증을 제공하는 시스템들과 방법들을 기술한다. 그러한 시스템 내에서, 이러한 서비스들을 제공하는 무결성 보증 및 검증 장치는 콘텐트 제공자와 콘텐트 소비 시스템/애플리케이션 제공자 사이에 도입된다. 이 보증장치는 각 제공자들의 개별 애플리케이션들 및/또는 시스템들을 등록하고, 이들 애플리케이션들 및/또는 시스템들의 무결성을 미리 정해진 선택에 따라 콘텐트 제공자들에게 보증해준다. 이러한 서비스의 사용을 통해, 콘텐트 제공자는 무결성 보증과 검증 장치를 "신뢰(trust)"할 수 있다. 이러한 신뢰를 가지고, 제공자는 그의 콘텐트를 소비하는 것이 허락된 애플리케이션들과 시스템세트의 프로파일(profile)을 수립하고, 그 프로파일에 따라 사용자 시스템에 대하여 사용자의 애플리케이션들과 시스템 세트가 인증된다는 것을 검증한다.
[0009] 특히, 본 발명의 시스템들과 방법들은 예를 들면 문서와 같은 콘텐트와 소비 환경의 무결성에 대하여 보증과 검증을 제공한다. 그러한 시스템 내에서, 이러한 서비스를 제공하는 무결성 보증 및 검증 장치는, 콘텐트 제공자들과 콘텐트 소비 시스템과, 예컨대 개인용 컴퓨터들, 핸드헬드 컴퓨터들, PDA들, 멀티미디어 디스플레이장치들, DVD 플레이어들, 분산망작동형 전화기들(distributed network enabled phones), 그리고 워드프로세서, 문서 뷰어, 멀티미디어 플레이어들과 같은 애플리케이션들을 배포하는 애플리케이션 제공자들 사이에 도입된다. 무결성 보증 및 검증 장치는 콘텐트 소비 시스템/애플리케이션 제공자들의 개별적인 애플리케이션들 및/또는 시스템들을 등록하고, 이러한 애플리케이션들과 시스템들의 집합을 콘텐트 제공자들에게 보증해준다. 이러한 서비스를 이용하는 것에 의해, 콘텐트 제공자는 무결성 보증 및 검증 장치를 선택하거나 신뢰할 수 있고, 애플리케이션들과 그 콘텐트를 소비하도록 허여된 시스템들 세트의 프로파일을 수립할 수 있고, 그 프로파일에 따라서 사용자 시스템 상의 애플리케이션들과 시스템이 인증된 것이라고 사용자 시스템에 대하여 검증을 해줄 수 있다. 이러한 방법에 있어서, 사용자가 요청하거나 제출한 콘텐트에 대한 접근이나 통제의 정도는 제어될 수 있다.
[0010] 문서라는 용어는, 여기서 사용되는 것처럼, 배포나 전달할 정보의 어떤 단위로서, 서신, 책, 잡지, 정기간행물, 신문, 기타 서류, 소프트웨어, 플러그-인, 사진, 기타 이미지, 오디오 비디오 클립 및 기타 멀티미디어 프레젠테이션들을 포함하지만, 이것들에 국한되는 것은 아니다. 문서는, 저장매체 혹은, 예컨대 콤팩트디스크(CDs), 디지털비디오디스크(DVDs), 레이저디스크, 광- 및 광자기- 매체 등과 것을 포함하는, 어떤 다른 알려진 혹은 향후에 개발될 다양한 매체나 소프트웨어에 기록된 디지털데이터로서, 종이에 인쇄된 형태로 구체화될 수도 있다.
[0011] 본 발명의 시스템들과 방법들은 무결성 보증 및 검증 서비스를 제공한다.
[0012] 본 발명은 콘텐트 소비 시스템 환경에 관한 무결성 보증 및 검증 서비스용 시스템 및 방법을 별도로 제공한다.
[0013] 본 발명은 무결성 프로파일을 결정하는 시스템과 방법을 또한 별도로 제공한다.
[0014] 본 발명은 하나 이상의 시스템 환경의 무결성을 검증하는 시스템과 방법을 부가적으로 제공한다.
[0015] 본 발명은 또한 무결성 프로파일, 시스템 및 시스템 구성요소 정보를 관리하는 시스템 및 방법을 제공한다.
[0016] 본 발명은 사용자 시스템 상의 무결성 체크를 무결성 프로파일의 사용을 통해 수행하는 시스템과 방법을 부가적으로 제공한다.
[0017] 구체적으로, 문서 발행자 또는 배포자와 같은 콘텐트 제공자는 무결성 프로파일에 대한 요청을 시작한다. 무결성 프로파일에 관한 이러한 요청은 무결성 보증 및 검증 장치로 전달된다. 무결성 보증 및 검증 장치는 예컨대, 만약 요청된 애플리케이션들과 시스템 구성요소들에 관한 무결성 프로파일이 존재하지 않는다면, 여러 가지 시스템 구성요소 및/또는 애플리케이션들을 사용자에게 공급해오고 있는 콘텐트 소비 시스템/애플리케이션 제공자에게 질의를 할 수 있다. 콘텐트 소비 시스템/애플리케이션 제공자는 특정 애플리케이션들 또는 시스템 구성요소들에 관한 무결성 보증 및 검증장치 인증정보(authentication information)로 리턴한다. 상기 인증정보는 사용자의 시스템 상의 애플리케이션 또는 시스템 구성요소와 콘텐트 소비 시스템/애플리케이션 제공자가 배포한 오리지널 애플리케이션 또는 시스템 구성요소 간의 비교, 또는 무결성 검증이 수행되도록 한다.
[0018] 시스템 애플리케이션들 및 구성요소에 관한 상기 인증정보는 구성요소 데이터베이스에 저장된다. 콘텐트 제공자들에 대한 프로파일들은 프로파일 데이터베이스에 저장된다. 다른 대안으로서, 콘텐트 소비 시스템/애플리케이션 제공자는, 무결성 프로파일을 결정하는 무결성 검증 및 보증 장치에 대한 필요성 없이, 무결성 보증 및 검증 장치의 각 데이터베이스로 직접 전달될 수 있는 인증정보의 데이터베이스를 유지할 수 있다. 무결성 프로파일 식별자(identification: ID)가, 정해진 무결성 프로파일에 대응하여, 그 후에 콘텐트 제공자에게 리턴 된다.
[0019] 문서 배포자와 같은 콘텐트 제공자는 예컨대 보호되는 콘텐트(protected content)를 사용자에게 제공한다. 콘텐트 제공자는 사용자에게 예컨대 라이센스 동의서와 무결성 프로파일 ID를 포함하는 디지털 콘텐트의 보호판(protected version)을 전달한다. 무결성 프로파일 ID는 예컨대 보호되는 콘텐트와 결합되어 사용되도록 허여된 애플리케이션들과 시스템 구성요소들, 그리고 그러한 시스템/애플리케이션들에 관한 무결성 프로파일의 ID를 포함한다.
[0020] 무결성 보증 및 검증 장치는, 콘텐트 소비 시스템/애플리케이션 제공자로부터의 인증정보를 가지고서, 예컨대 사용자 시스템의 요청이 있으면, 무결성 프로파일을 사용자 시스템으로 전달한다. 이러한 무결성 프로파일을 이용하여, 사용자 시스템의 무결성 검증이 수행될 수 있다. 사용자 시스템의 구성요소/애플리케이션이 인증받을 수 있는 것이라고 결정되면, 비로소 콘텐트 제공자에 의해 제공되는 디지털 콘텐트에 대한 사용자의 애플리케이션들과 시스템의 액세스가 예컨대 부가적인 프로파일 정보에 따라서 이루어질 수 있다.
[0021] 그러나 무결성 보증은 콘텐트 제공자에게서 유래될 필요는 없다는 점을 인식할 필요가 있다. 반대로, 보증 요청은 예컨대 프로파일 ID 정보에 내장된(embedded) 소프트웨어 애플리케이션에 의해 시발될 수 있으며, 그 프로파일 ID 정보는 보호되는 콘텐트와 함께 콘텐트 제공자로부터 사용자의 시스템으로 전달된다.
[0022] 대안으로서, 콘텐트 제공자는 또한 무결성 검증 및 보증 시스템으로서 서비스할 수도 있다. 이 경우, 콘텐트 제공자는 적절한 인증정보를 수집하고 콘텐트 제공자 자신의 사용에 관한 무결성 프로파일을 정함으로써 무결성 보증 및 검증 서비스 그 자체를 수행한다.
[0023] 부가적으로, 콘텐트 소비 애플리케이션/시스템 제공자는 또한 무결성 보증 및 검증 장치로서 행동할 수 있다. 이 경우, 콘텐트 소비 애플리케이션/시스템 제공자는 무결성 프로파일을 예컨대 관련 애플리케이션 및/또는 시스템 구성요소와 함께 공급할 수도 있다.
[0024] 본 발명의 이러한 그리고 그 밖의 특징들과 장점은 바람직한 실시예에 관한 다음의 상세한 설명으로부터 명확해질 것이다.
[0040] 본 발명의 시스템과 방법은 콘텐트 소비 환경의 무결성을 결정하는 보증 및 검증 서비스를 제공한다. 이러한 시스템 내에서, 무결성 보증 및 검증 장치는 하나 이상의 콘텐트 제공자와 하나 이상의 콘텐트 소비 시스템 및 애플리케이션 제공자들 사이에 도입된다. 무결성 보증 및 검증 장치는 인증정보를 콘텐트 소비 애플리케이션 및/또는 시스템 제공자들로부터 획득한다. 이 인증정보는 콘텐트 제공자로 하여금 콘텐트가 제공되는 환경에 대하여 신뢰하도록 해준다. 따라서 콘텐트 소비 애플리케이션 및 시스템 제공자로부터 받은 인증정보에 의거하여, 무결성 프로파일이 만들어진다. 이 프로파일은 그 후 사용자 시스템으로 전달되어 그 사용자가 콘텐트 제공자에 의해 제공된 디지털 콘텐트를 개조하였거나, 변경하였거나 공인되지 않은 방법으로 잠재적인 방해를 하지 않는다는 것을 확인해준다.
[0041] 도 1은 무결성 보증 및 검증을 수행하는 예시적인 시스템을 도시한다. 특히, 무결성 보증 및 검증 시스템(100)은 무결성 보증 및 검증 장치(200), 콘텐트 제공자 및/또는 배포자(300), 사용자 시스템(400), 콘텐트 소비 시스템/애플리케이션 제공자(500), 구성요소 데이터베이스(260) 및 프로파일 데이터베이스(270)를 포함한다.
[0042] 예시적 운영 환경에 있어서, 콘텐트 소비 시스템/애플리케이션 제공자(500)는 애플리케이션들, 시스템 및/또는 소프트웨어/하드웨어 구성요소들을 사용자에게 제공한다. 사용자 시스템(400)은 문서와 같이 콘텐트 제공자와 배포자(300)에 의해 공급되는 디지털 콘텐트의 소비를 허락한다. 사용자 시스템(400)의 무결성을 검증하기 위해, 무결성 보증 및 검증 장치(200)는 개인적인 애플리케이션들, 시스템 및/또는 콘텐트 소비 시스템/애플리케이션 제공자(500)의 소프트웨어/하드웨어 구성요소들에 대한 인증정보를 수집 및 등록한다. 이러한 인증정보를 가지고서, 무결성 보증 및 검증 장치(200)는 하나 이상의 애플리케이션들의 무결성 프로파일, 그 콘텐트 제공자(300)로부터의 서비스 요청(20)에 의거한 시스템 및/또는 시스템 구성요소들을 결정하고 보증해준다. 이 결정된 무결성 프로파일(50)은 사용자 시스템(400)에 전달되어 사용자 시스템(400)의 무결성이 결정될 수 있다.
[0043] 동작 시, 콘텐트 제공자 및 배포자(300)는 문서와 같은 디지털 콘텐트를 사용자 시스템(400)에 제공한다. 사용자 시스템(400)은 하드웨어 구성요소들 및/또는 여러 가지 소프트웨어 애플리케이션들과 같은 하나 이상의 시스템 구성요소들을 구비한다. 이들 애플리케이션들과 하드웨어/소프트웨어 구성요소들은 대개 사용자에 의해, 컴퓨터 공급자, 소프트웨어 창고, 애플리케이션 제공자 등과 같은 하나 이상의 콘텐트 소비 시스템/애플리케이션 제공자로부터 입수된다. 그 후, 이들 애플리케이션들과 하드웨어 및 소프트웨어 구성요소들은, 사용자가 문서와 같은 콘텐트를 소비하게 되도록 하기 위해, 만약 이미 조립되어 있는 것이 아니라면, 사용자에 의해 조립되거나 전용물로서 설치된다.
[0044] 따라서 사용자 환경의 애플리케이션들 및 하드웨어/소프트웨어를 사용하는 과정 동안에, 사용자는 문서와 같은 보호되는 내용을 보길 원할 수도 있다. 따라서 사용자(400)는 콘텐트 제공자(300)로부터 하나 이상의 서류, 예컨대 전자책, 멀티미디어 파일, 프레젠테이션, 폼 템플릿 등을 요청할 것이다. 이러한 요청을 받으면, 콘텐트 제공자 및 배포자(300)는 요청된 콘텐트를 보호되는 형식으로 프로파일 ID(10)와 함께 최종 사용자(400)에게 제공할 수 있다. 이 프로파일 ID(10)는 예컨대 어떤 애플리케이션에서 그 보호되는 콘텐트가 보여질 수 있는지와 예컨대 제공된 콘텐트가 특정의 소프트웨어/하드웨어 환경 내에서 조작될 수 있는 정도에 관한 상세사항들을 포함한다.
[0045] 부가해서, 콘텐트 제공자(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)은 그 보호 콘텐트를 보거나 그렇지 않을 경우 무결성 프로파일에 따라서 조작하게 된다.
[0046] 도 2는 본 발명의 예시적인 실시예에 따른 무결성 보증 및 검증환경(100)의 구성요소들의 개요를 도시한다. 특히, 무결성 보증 및 검증 환경(100)은 하나 이상의 콘텐트 제공자들(300), 하나 이상의 사용자 시스템들(400), 하나 이상의 무결성 보증 및 검증 장치들(200), 그리고 하나 이상의 콘텐트 소비 시스템/애플리케이션 제공자들(500)을 구비한다.
[0047] 콘텐트 제공자(300)는 예컨대 제어기(310), 메모리(320), 입출력제어기(330), 그리고 콘텐트 데이터베이스(340)를 구비한다. 그러나 콘텐트 제공자(300)는 또한 보다 전통적인 방법으로 콘텐트를 배포할 수도 있음을 인식할 필요가 있다. 예컨대 콘텐트 제공자는 콘텐트를 담고 있는 콤팩트디스크(CD)를 배포할 수도 있다. 이 CD는 예컨대 우편배달 서비스를 통해 사용자에게 배달될 수 있을 것이다. 일반적으로 어떤 형태의 배포와 보급과정이라도 본 발명의 시스템 및 방법들과 동등하게 잘 돌아갈 수 있을 수 있을 것이다.
[0048] 무결성 보증 및 검증 장치(200)는 제어기(210), 메모리(220), 입출력제어기(230), 디지털 서명장치(240), 구성요소 등록장치(250), 구성요소 데이터베이스(260), 프로파일 데이터베이스(270), 프로파일 생성장치(280), 프로파일 배포장치(290) 및 프로파일 검증장치(295)를 구비한다. 무결성 보증 및 검증장치(200)는 다음과 같은 서비스들을 제공한다: 구성요소 등록 서비스와 무결성 프로파일 서비스. 등록서비스는 각 제공자들로부터 받은 애플리케이션들, 시스템, 및/또는 소프트웨어/하드웨어 구성요소들을, 의도된 특징들, 목적 및/또는 작용등과 함께, 인증된 것으로서 등록되도록 허락한다.
[0049] 무결성 프로파일 서비스는 콘텐트 제공자들에게 제공되어 무결성 프로파일들을 구축하고 검색한다. 무결성 프로파일은 임의적으로(optionally) 그리고 디지털적으로 서명될 수 있는 문서인데, 그 문서는 검증 가능한 정보와 보호 문서들의 콘텐트를 소비할 등록된 시스템 구성요소 세트를 포함한다. 일단 한 번 무결성 프로파일이 생성되면, 그 무결성 프로파일의 ID는 콘텐트 제공자에게로 리턴된다. 콘텐트 제공자는 무결성 프로파일 ID와 임의적으로는(optionally) 보호문서에 관한 사용 라이센스를 포함할 것이다. 보호문서들의 콘텐트가 소비되고 사용자의 시스템과 환경의 지역적인 무결성 검증을 수행할 필요가 있을 때, 무결성 프로파일은 무결성 보증 및 검증 장치(200)로부터 사용자 시스템으로 검색될 수 있다.
[0050] 사용자 시스템(400)은 제어기(410), 메모리(420), 입출력제어기(430), 저장장치(440), 무결성 인증장치(450), 및 프로파일 저장장치(460)를 구비한다. 그러나 이 예시적인 사용자 시스템은 컴퓨터의 모델에 기반을 둔 것이라는 점이 인식될 필요가 있다. 그러나 사용자 시스템의 구성요소들은 예컨대 소비되고 있는 콘텐트의 유형에 따라서 변할 수 있다. 일반적으로, 자신의 무결성이 검증될 수 있는 부분들을 구비하는 어떠한 사용자 시스템이건 본 발명의 시스템 및 방법들과 동등하게 잘 작동할 것이다.
[0051] 콘텐트 소비 시스템/애플리케이션 제공자(500)는 예컨대 제어기(510), 메모리(520), 입출력제어기(530), 등록애플리케이션장치(540), 애플리케이션 데이터베이스(550), 및 시스템 데이터베이스(560)를 구비한다. 그러나 콘텐트 제공자(300)와 비슷하게, 콘텐트 소비시스템/애플리케이션 제공자는 콘텐트 소비 시스템/애플리케이션 제공자가 공급하는 시스템 및/또는 애플리케이션의 유형에 따라서 여러 가지 다른 형태를 가질 수도 있다. 예컨대 만약 콘텐트 소비 시스템/애플리케이션 제공자(500)가 특수한 하드웨어 구성요소들을 공급한다면, 콘텐트 소비 시스템/애플리케이션 제공자(500)는 애플리케이션 및 시스템 데이터베이스들을 유지하지 않을 수도 있다. 대안으로는, 예컨대 시스템/장치 구성요소 공급자는 예컨대, 디스크 상에서, 인증정보를 직접 무결성 보증 및 검증장치(200)로 보낼 수도 있을 것이다.
[0052] 다른 방안으로서, 콘텐트 소비 시스템/애플리케이션 제공자(500)는 콘텐트 제공자(300)와 노력을 조율하여 무결성 프로파일의 결정을 용이하게 할 수도 있다. 일반적으로 콘텐트 소비 시스템/애플리케이션 제공자는 하드웨어 혹은 소프트웨어 및 그에 관한 인증정보를 공급할 수 있는 어떤 실체가 될 수 있다.
[0053] 이러한 예시적인 실시예에서 콘텐트 소비 시스템/애플리케이션 제공자(500)는 여러 가지 시스템 구성요소들을 구비하는 것으로 나타나는 반면, 콘텐트 소비 시스템/애플리케이션 제공자(500)는 예컨대 컴퓨터 배포자, 소프트웨어 개발자, 소프트웨어 제공자, 소프트웨어 배포자 등이 될 수 있다는 점을 인식할 필요가 있다. 따라서 콘텐트 소비 시스템/애플리케이션 제공자(500)는 콘텐트 제공자(300)에 의해 제공되는 콘텐트의 소비를 허락하는 장치들 및/또는 소프트웨어를 공급할 수 있다.
[0054] 무결성 보증 및 검증 환경(100)의 다양한 구성요소들은 그들 간에 링크(5)를 경유하여 통신을 할 수 있으며, 그 링크는 유선 또는 혹은 무선 링크, 또는 연결된 구성요소들간에 전자적인 데이터를 공급할 수 있는 어떤 다른 알려진 혹은 후에 개발될 구성요소들이 될 수 있다. 예컨대 링크(5)는 하나 이상의 분산망일 수 있으며, 이들 망은 하나 이상의 무결성 보증 및 검증 환경들(100) 혹은, 다른 대안으로서, 하나 이상의 콘텐트 제공자들(300), 사용자 시스템들(400), 콘텐트 소비 시스템/애플리케이션 제공자들(500) 그리고 무결성 보증 및 검증 장치들(200)의 다중 인스턴스(multiple instances)에 차례로 연결될 수 있다.
[0055] 예시적인 운영 환경에 있어서, 콘텐트 소비 시스템/애플리케이션 제공자(500)는 애플리케이션들, 소프트웨어 및/또는 하드웨어를 사용자에게 공급한다. 이들 애플리케이션들, 소프트웨어 및/또는 하드웨어는 사용자에 의해 이용되어 예컨대 문서를 보는 것과 같은 콘텐트 소비를 한다.
[0056] 콘텐트 제공자(300)는 예컨대 사용자 시스템(400)에 위치하고 있는 사용자의 요청에 즈음하여 문서와 같은 콘텐트를 사용자 시스템(400)으로 배포한다. 특히, 하나의 요청은 콘텐트 제공자(300)에 의해 사용자 시스템(400)으로부터 수신될 수 있다. 이 요청은, 입출력 제어기(330)를 통해 수신되는데, 제어기(310)에 의해, 메모리(320)와 협력하여 처리되어 콘텐트 데이터베이스(340)로부터 요청된 콘텐트를 검색한다. 예컨대 콘텐트 제공자(300)는 온라인 콘텐트 제공자, 책방, 소프트웨어 제공자, 혹은 문서와 같은 콘텐트를 사용자에게 제공하기를 희망하는 어떤 다른 콘텐트 제공자 일 수 있다.
[0057] 사용자 시스템(400)으로부터의 콘텐트 요청을 접수하였을 때, 콘텐트 제공자(300)는 그 요청된 콘텐트 뿐만 아니라 보호되는 콘텐트에 관한 부가적인 정보까지 사용자 시스템으로 되돌려준다. 이러한 부가적인 정보는 프로파일 ID를 포함할 수 있다. 다른 안으로서, 부가정보는 예컨대 사용자 시스템에게 프로파일과 따라서 무결성 보증도, 콘텐트의 인에이블 전에, 요청하도록 지시하는 정보를 내포할 수 있다.
[0058] 덧붙여, 부가정보는 어느 시스템 구성요소 및/또는 하드웨어 및/또는 소프트웨어가, 요청된 콘텐트를 보거나 그것과 상호 작용할 때, 사용자의 기계에서 실행 및/또는 사용될 수 있는지를 식별할 수 있다.
[0059] 따라서 하나 이상의 요청된 콘텐트, 부가정보 및 프로파일 ID는 사용자 시스템(400)에 의해 입출력 제어기(430)를 경유하여 수신되며, 제어기(410)의 방향에서 하나 이상의 메모리(420)와 저장장치(440)에 저장된다.
[0060] 하나의 예시적인 실시예에 있어서, 콘텐트 제공자(300)는 무결성 보증 및 검증 장치(260)로부터의 무결성 프로파일에 관한 요청과 같은 서비스 요청(20)을 시작케 할 수 있다. 무결성 보증 및 검증 장치(260)는, 입출력 제어기(230)를 경유하여, 그리고 제어기(210)와 메모리(220)와 협력하여, 콘텐트 제공자(300)로부터의 서비스 요청을 수신한다.
[0061] 앞서 논의했듯이, 무결성 보증 및 검증 장치(200)는 구성요소 데이터베이스(260)와 프로파일 데이터베이스(270)를 구비한다. 구성요소 데이터베이스(260)는 하나 이상의 콘텐트 소비 시스템/애플리케이션들 제공자들(500)에 의해 배포될 수 있는 시스템들과 시스템 구성요소들에 관계된 인증정보를 저장한다. 비슷하게, 프로파일 데이터베이스(270)는 검증 가능한 정보와 하나 이상의 개별적인 콘텐트 제공자들(300)용 보호 문서의 콘텐트를 소비할 예정인 등록된 시스템 구성요소 세트를 저장한다.
[0062] 따라서 콘텐트 제공자(300)로부터 무결성 프로파일에 대한 요청을 접수하였을 때, 무결성 보증 및 검증 장치(200)는, 제어기(210)의 방향에서 메모리(220)의 도움으로, 구성요소 데이터베이스(260)와 프로파일 데이터베이스(270)를 조사하여 서비스요청에 있는 정보에 대응하는 인증정보가 이미 존재하는지 여부를 결정한다.
[0063] 다른 대안으로서, 무결성 보증 및 검증 장치(200)는 온라인 검증 서비스를 수행할 수 있다. 온라인 검증 서비스는 온라인에서, 예컨대 실시간으로 무결성 보증 및 검증 장치(200) 내에서, 무결성 검증을 수행하기 위해 제공된다. 이러한 서비스를 개시하기 위해, 무결성 인증자(integrity authenticator)라 불리는, 일부 소프트웨어가 사용자 시스템(400)에 전달된다. 무결성 인증자는 로컬 소프트웨어 및/또는 하드웨어 구성요소의 정보수집이 수행되도록 한다. 다른 대안으로서, 무결성 인증자는 도 2에 예시된 무결성 인증장치(450)와 같은 전용의 장치(dedicated device)일 수 있다. 로컬 소프트웨어 및/또는 하드웨어 구성요소에 관해 수집된 그 정보는 무결성 프로파일 ID와 함께 무결성 보증 및 검증 장치(200)로 리턴 되어 온라인 무결성 검증이 수행될 수 있다. 구성요소 등록장치(250)는 각 제공자로부터 제공된 소프트웨어/하드웨어 구성요소를 검사하고 ID 정보를 구성요소 데이터베이스(260) 내에 저장한다. 그 소프트웨어/하드웨어 구성요소에 관계된 정보는 예컨대 해시(hash) 될 수 있으며, 해시값(hash value)은 인증된 소프트웨어/하드웨어 정보로서 사용될 수 있다. 그러나 각 소프트웨어/하드웨어 구성요소를 식별하는 정보는 하드웨어 및/또는 소프트웨어의 인증된 부분의 ID를 참작하는 어떤 알려지거나 후에 개발되는 구조일 수 있다는 점이 인식될 필요가 있다.
[0064] 특별한 소프트웨어 및/또는 하드웨어 구성요소의 등록은 다음과 같이 이루어진다. 예컨대 콘텐트 소비 시스템/애플리케이션 제공자(500)는 등록서비스를 요청하기 위해 식별 및 보증 검증 장치(identification and certification verification device)(200)와 통신을 할 수 있거나, 또는 다른 대안으로, 그 식별 및 보증 검증 장치(200)는 인증 정보를 확보하기 위해 콘텐트 소비 시스템/애플리케이션 제공자(500)와 통신할 수 있다. 이 예에서, 등록 애플리케이션 장치(540)는 제어기(510), 메모리(520) 및 입출력 제어기(530)와 협력하여, 하나 이상의 애플리케이션 데이터베이스(550)와 시스템 데이터베이스(560)를 서치 하여 예컨대, 제공자 이름, 구성요소 ID, 예컨대 일련번호, 버전 번호, 제조번호(build number), 등을 포함하는 특정한 소프트웨어 및/또는 하드웨어에 관한 정보 혹은 다른 대안으로서, 애플리케이션 그 자체를 확보한다.
[0065] 예컨대, 하나의 특정한 운영 시나리오에 있어서, 특정한 콘텐트 소비 시스템/애플리케이션 제공자(500)로부터의 인증 정보를 얻는 대신에, 무결성 보증 및 검증 장치(200)는 실제적으로 예컨대 소프트웨어 프로그램과 같은 콘텐트 소비 시스템/애플리케이션 제공자(500)로부터의 특정한 애플리케이션을 요청할 수 있다. 이러한 방법에 있어서, 무결성 보증 및 검증 장치(200)는 인증정보를 필요치 않을지도 모르는데, 그 이유는 무결성 보증 및 검증 장치(200)가 특정한 소프트웨어 애플리케이션을 콘텐트 소비 시스템/애플리케이션 제공자(500)로부터 직접적으로 확보할 수 있기 때문이다.
[0066] 구성요소 등록장치(250)는 구성요소의 정보를 검증하고, 예컨대 인증 소프트웨어 및/또는 하드웨어 ID로서 사용될 수 있는 해시값은 임의적으로(optionally) 계산한다. 구성요소 등록장치(250)는 그 후 구성요소 정보와 예컨대 해시값을 구성요소 데이터베이스(260)에 저장한다.
[0067] 다른 대안으로, 소프트웨어 및/또는 하드웨어 구성요소를 등록 애플리케이션 장치(540)로 보내는 대신에, 콘텐트 소비 시스템/애플리케이션 제공자(500)는 또한 구성요소 등록장치(250)에 접속하여 등록 애플리케이션과 같은 작은 소프트웨어 애플리케이션을 다운로드할 수 있고, 국부적으로 실행되도록 할 수 있다. 이 등록 애플리케이션은 타겟(target) 소프트웨어/하드웨어 구성요소를 검사하여 이 소프트웨어/하드웨어 구성요소에 관계되는 정보를, 어쩌면 해시값과 같은 무결성 값과 함께, 구성요소에 관한 인증정보를 구성요소 데이터베이스(260)에 저장할 수 있는, 원래의 구성요소 등록장치(250)로 보낼 것이다.
[0068] 다른 대안으로서, 프로파일 생성장치(280)는 소프트웨어용 무결성 프로파일들을 구축한다. 특히, 각 소프트웨어의 해시값과 같은 무결성 값은 구성요소 데이터베이스로부터 검색되어 저장될 수 있다. 또한 구성요소들 간의 임의적인 상호작용관계(optional interaction relationship)가 그 프로파일들에 포함된다. 이러한 관계는, 다른 구성요소들과의 의도되지 않은 상호작용을 막기 위해, 구성요소들의 호출과 반환 순서를 식별하는 데 이용된다. 무결성 프로파일의 콘텐트는 그후 예컨대 디지털적으로 서명되고 그 서명결과물은 무결성 프로파일에 추가된다. 각 무결성 프로파일은 유일한 ID와 연관된다.
[0069] 도 3은 무결성 보증 및 검증 장치(200)에 의해 제공된 입력, 출력 및 서비스와 작용들의 예시적인 작업흐름을 도시한다. 특히, 구성요소 등록 서비스를 위해 구성요소 ID, 그리고 임의적으로는(optionally) 특정한 구성요소에 관한 메타 정보(meta information)가 구성요소 등록장치(250)에 전달된다. 구성요소 등록장치(250)는 예컨대 의도된 특징들, 목적들 및 작용들을 갖는 구성요소를 구성요소 데이터베이스에 등록한다. 그런 다음, 구성요소 장치(250)는 등록된 구성요소의 ID를 예컨대 콘텐트 소비 시스템/애플리케이션 제공자에게 반환하고 그 ID를 예컨대 콘텐트 제공자(300)에 대하여 가용하게 만든다.
[0070] 프로파일 생성을 위해 프로파일 생성장치(280)는 등록된 구성요소들의 ID를 수신한다. 등록된 구성요소들의 ID들은, 관련 구성요소들에 관한 정보와 조합될 때, 만약 있다면, 디지털적으로 서명되어 프로파일 데이터베이스에 저장된다. 무결성 프로파일 ID는 요청자에게 반환된다.
[0071] 유사하게, 프로파일 배포장치(290)는 무결성 프로파일 ID를 수신한다. 그리고 나서 프로파일 데이터베이스(270)는 질의를 받아 그 무결성 프로파일 ID에 해당하는 무결성 프로파일이 가용한지를 결정한다. 만약 무결성 프로파일이 가용하다면, 그 무결성 프로파일은 요청자에게 반환된다. 그렇지 않다면, 그 무결성 프로파일은 프로파일 생성장치(280)의 도움으로 정해질 수 있다.
[0072] 무결성 검증장치(295)는 하나 이상의 구성요소들과 무결성 프로파일ID를 식별하는 정보를 받는다. 프로파일 검증장치는 구성요소 ID들, 무결성 프로파일 ID 및 대응 무결성 파일을 비교하여 검증데이터를 결정한다. 만약 그 프로파일들과 구성요소들 및 ID들이 매치되면, 그 시스템의 무결성은 검증된다. 그렇지않으면, 그 시스템은 무결성 프로파일에서 특정된 것이 아니거나 혹은 어떤 방법으로 변경되어버린 것이다.
[0073] 도 4는 예시적인 무결성 프로파일을 보여준다. 이 예시적인 무결성 프로파일은 무결성 생성장치(280)에 의해 생성될 수 있다. 인증된 콘텐트 제공자를 위한 무결성 프로파일을 구축하기 위해, 무결성 프로파일을 생성하라는 요청이 시작된다. 예컨대 그 제공자는 무결성 보증 및 검증장치(200)와 접촉하여 무결성 프로파일의 생성을 요청할 수 있다. 그런 다음, 그 제공자는 소프트웨어 및/또는 하드웨어 구성요소들의 이름 리스트를 무결성 보증 및 검증 장치(200)에 보낸다. 그 후 프로파일 생성장치(280)는 무결성 혹은 해시값과 같은 구성요소들 각각의 ID를 구성요소 데이터베이스(260)로부터 검색해낸다. 그러고 나서, 프로파일 생성장치(280)는 무결성 프로파일을 정하는데, 그 무결성 프로파일은 구성요소들 각각의 무결성 혹은 해시값과 같은 인증정보를 기타 정보 예컨대 무결성 프로파일 ID, 버전번호, 생성일자, 구축일자, 콘텐트 제공자명, 및 예컨대, 임의적으로(optionally), 어떤 소프트웨어 및/또는 하드웨어 구성요소들이건 그들 간의 상호작용관계와 같은 정보를 함께 내포한다.
[0074] 프로파일 생성장치(280)는 정해진 무결성 프로파일을 디지털 서명자(240)에게 전달하며, 그 후에 디지털 서명자(240)는 프로파일의 콘텐트에 대하여 서명할 수 있다. 프로파일 생성장치(280)는 그리고 나서 서명된 프로파일을 프로파일 데이터베이스(270)에 저장하고 그 프로파일 ID를 콘텐트 제공자(300)에게 반환한다.
[0075] 예컨대 보호되는 문서의 콘텐트에 대한 사용 라이센스(usage license)를 생성할 때, 콘텐트 제공자(300)는 임의적으로(optionally) 그 무결성 프로파일 ID를 사용 라이센스 안에 포함시킬 수 있다. 사용자 시스템(400) 상에서, 그 무결성 프로파일은 환경호출스택에 있는 모든 소프트웨어/하드웨어 구성요소들을 검증하는 데 사용될 것이다. 이는 민감한 정보(sensitive information)는 권한이 주어진 소프트웨어/하드웨어 구성요소들, 혹은 그들의 어떤 조합에 의해 소비될 수 있을 뿐임을 보장해준다.
[0076] 프로파일 배포장치(290)는 무결성 프로파일들을 입수하기 위한 요청을 받아들이고 그들을 프로파일 데이터베이스(270)로부터 검색하여 그 무결성 프로파일을 각각의 요청자에게 반환한다. 비슷하게, 프로파일 검증장치(295)는 하나 이상의 시스템 환경에 관한 사용자 시스템들을 검증하기 위한 요청을 받아들인다. 프로파일 검증장치(295)는 소프트웨어/하드웨어 구성요소들에 관한 정보를 무결성 프로파일들에 따라 모으고, 그 정보를 그 프로파일들과 대비하여 검증하고, 그 검증결과를 그 요청자들에게 반환한다.
[0077] 사용자 시스템(400)은 무결성 인증장치(450)를 구비한다. 그 무결성 인증장치(450)는 예컨대 어떤 콘텐트 소비 애플리케이션의 최상부(top)에서 실행된다.
[0078] 따라서 도 5는 시스템 무결성을 검증하기 위한 사용자 장치(400) 위의 예시적인 시스템 환경 스택을 도시한다. 특히, 사용자시스템 환경 스택은 무결성 인증자와 하나 이상의 시스템 구성요소들을 구비한다.
[0079] 도 6은 환경 스택의 일 예를 도시하는데, 이 환경스택은 무결성 인증자, 플러그-인, 랜더링 애플리케이션, 운영체제(OS), 운영체제 부트스트랩 (OS boot strap), 및 각각의 하드웨어를 포함한다.
[0080] 예시적인 운영 환경에 있어서, 무결성 인증장치(450)는 그 자신의 암호/해독 키 쌍과 ID 보증 및 검증 장치의 검증키를 내포한다. 이들 키들은 본 발명의 간섭-저항의 측면들을 고려하여 가능한 한 무결성 인증장치(400) 내에 숨기거나 및/또는 내장(embedded)된다. 사용자의 사적 정보의 사용을 필요로 하거나 민감한 문서와 데이터를 포함하는 그런 애플리케이션들을 위해, 무결성 인증장치(450)는 연관된 무결성 프로파일을 사용할 수 있어 사용자 시스템 환경의 호출 스택상의 모든 소프트웨어/하드웨어 구성요소들을 검증할 수 있다.
[0081] 무결성 인증장치(450)는 먼저 무결성 보증 및 검증장치 검증키를 사용하는 그 프로파일의 서명을 검증할 것이다. 도 7-9에서 예시된 것처럼, 일단 그 서명이 검증되면, 그 무결성 인증장치(450)는 현재의 호출스택을 검사하고, 무결성 프로파일 내에 제공된 그 정보를 사용하는 호출스택상의 각 소프트웨어/하드웨어 구성요소를 인증하기 시작한다. 상기 호출스택은 메모리 이미지들과 포함된 기능들 혹은 절차들로 구성된 메모리의 연속 블록이다. 그 스택은 후입선출(last-in-first-out)의 개념으로 작동하며 스택들의 기본 동작들은 스택 "푸쉬(push)" 및 스택 "팝(pop)"이다. 푸쉬는 이미지들을 스택 위에 저장하여 스택의 최상부(top)를 어떤 위치로 전진시키는 데 사용된다. 팝은 그 데이터를 스택으로부터 제거하고 그 스택의 최상부를 이전 위치로 회복시키는 데 사용된다.
[0082] 호출스택의 경우, 현재 실행되는 기능의 이미지가 그 스택의 최상부에 있다. 현재 실행되는 기능이 다음 기능을 부르거나 호출할 때, 다음번 기능의 메모리 이미지는 그 호출스택의 최상부로 푸쉬되고 그 호출스택의 최상부는 다음번 기능의 이미지를 가리킨다. 축적된(stacked) 이미지들의 각부는, 그 호출된 기능이 그 실행을 마친 후에, 주소나 반환명령을 내포할 것이다.
[0083] 도 10은 어떻게 그 실행환경이 보호되는지를 예시한다. 특히, 무결성 인증자(Integrity Authenticator: IA)를 보호하기 위해, 그 IA의 실행은, IA의 일부분인, 신뢰된 애플리케이션에 의해 모니터 된다. 모티터링 프로세스, 예를 들면 애플리케이션은, 그 IA를 시스템 내의 어떤 다른 프로세스나 애플리케이션에 의해 모니터링 되지 않도록 막을 수 있는, 디버거 혹은 특별 프로세스일 수 있다. 어떤 환경에서 프로세서가 오로지 하나의 프로세스에 의해 오로지 디버그 될 수 있을 때에는, 그 신뢰된 모니터링 프로그램은 디버거로서 실행될 수 있다. 모니터링 프로그램은 신뢰된 애플리케이션이므로, 그 모니터링 프로그램의 무결성은 현재의 무결성 프로파일에 있어야 한다. 그러므로 그 IA는 그 신뢰된 애플리케이션의 무결성을 로딩 및 실행 이전에 검증할 것이다. 신뢰된 모니터링 애플리케이션의 기능은 그 IA를 다른 프로세스에 의해 모니터 되고 제어되고 포착되는 것으로부터 막아준다. 신뢰된 모니터링 애플리케이션의 다른 기능은 현재의 환경을 모니터하고 환경상의변화가 유효한지를 결정하는 것이다. 그러나 그 IA와 같이, 신뢰된 모니터링 애플리케이션은 또한 보호되어야 하고 그 IA는 모니터로서 행동하여 신뢰된 모니터링 애플리케이션이 다른 애플리케이션들에 의해 모니터 되고, 포착되고 및/또는 제어되는 것을 막아줄 것이다. 이러한 이중보호 메커니즘은, 다른 애플리케이션들이 무결성 인증자의 실행을 모니터링 하는 것을 막아주는 닫힌 시스템(closed system)을 생성한다.
[0084] 도 11은 무결성 보증 및 검증 장치의 작동의 예시적인 방법을 도시한다. 특히 제어는 단계 S100에서 시작하여 단계 S110까지 계속된다. 단계 S110에 있어서, 무결성 프로파일이 결정된다. 다음으로, 단계 S120에서, 무결성 프로파일이 보증된다. 그런 다음, 단계 S130에서, 무결성 프로파일이 사용자에게로 전달된다. 제어는 단계 S140까지 계속된다.
[0085] 단계 S140에서, 사용자 시스템의 무결성은 검증된다. 다음으로, 단계 S150에서, 사용자 시스템이 인증될 만한지에 관한 결정이 이루어진다. 만약 사용자 시스템이 인증될 만한 것이라면, 제어는 단계 S160으로 계속 이어져서 거기서 사용자는 선택된 콘텐트에 대한 액세스가 주어진다. 그렇지 않으면, 제어는 단계 S170으로 점프하여, 콘텐트 액세스가 부정되거나 혹은 불능으로 된다. 그런 다음, 제어는 단계 S180으로 이어져서 그 제어시퀀스는 종료한다.
[0086] 도 12는 본 발명에 따른 구성요소/하드웨어 및/또는 소프트웨어의 등록에 관한 예시적인 방법을 도시한다. 구체적으로, 제어는 단계 S200에서 시작하여 단계 210까지 계속된다. 단계 S210에서는, 등록 서비스가 개시된다. 다음으로, 단계 S220에서는, 구성요소 공급자가 특정의 구성요소/하드웨어 및/또는 소프트웨어에 관한 인증정보를 제공한다. 그런 다음, 단계 S230에서, 그 특정의 구성요소/하드웨어 및/또는 소프트웨어에 관한 정보가 검증된다. 그런 다음, 제어가 단계 S240으로 이어진다.
[0087] 단계 S240에서는, 무결성 값이 결정되어야 하는지에 관한 결정이 이루어진다. 만약 무결성 값이 정해져야 할 것이라면, 제어는 단계 S250으로 연결되어 거기서 무결성 값이 결정된다. 그렇지 않다면 제어는 단계 S260으로 점프하여 구성요소/하드웨어 및/또는 소프트웨어에 관한 인증정보가 저장된다.
[0088] 다음으로, 단계 S270에서, 무결성 값을 저장해야 하는지에 관한 결정이 이루어진다. 만약 무결성 값이 저장될 것이라면, 제어는 단계 S280으로 이어져서 거기서 무결성 값이 저장된다. 그렇지 않고, 무결성 값이 저장되지 않을 것이라면, 제어는 단계 S290으로 점프하여 제어시퀀스가 종료한다.
[0089] 도 13은 본 발명에 따른 프로파일을 결정하는 예시적인 방법을 보여준다. 구체적으로, 제어는 단계 S300에서 시작하여 단계 S310까지 이어진다. 단계 S310에서 무결성 프로파일 결정이 시작된다. 다음으로, 단계 S320에서 구성요소 및/또는 하드웨어 혹은 소프트웨어의 ID와 같은 이름이 얻어진다. 그런 다음, 단계 S330에서, 구성요소/하드웨어 혹은 소프트웨어에 관한 ID가 검색된다. 그런 다음 제어는 단계 S340으로 이어진다.
[0090] 단계 S340에서, 무결성 프로파일이 결정된다. 다음으로, 단계 S350에서, 무결성 프로파일은 디지털적으로 서명된다. 그런 다음 단계 S360에서 디지털적으로 서명된 무결성 프로파일이 저장된다. 그 후 제어는 단계 S370으로 이어진다.
[0091] 단계 S370에서, 서명된 무결성 프로파일은 콘텐트 소비 시스템/애플리케이션 제공자와 같은 요청자에게 전달된다. 그런 다음, 제어는 단계 S380으로 계속되어 제어시퀀스가 종료된다.
[0092] 도 14는 본 발명의 일 측면에 따라서 무결성 인증자의 무결성을 검증하는 예시적인 방법을 예시한다. 제어는 단계 S400에서 시작하여 단계 S410으로 계속한다. 단계 S410에서, 무결성 인증자의 무결성이 검증된다. 다음으로, 단계 S420에서 무결성 인증자가 유효한지에 관한 결정이 이루어진다. 만약 무결성 인증자가 유효하면, 제어가 단계 S430으로 이어진다. 그렇지 않으면, 제어는 단계 S540으로 점프한다.
[0093] 단계 S430에서, 간섭-저항 환경(tamper-resistant environment)이 수립된다. 다음으로, 단계 S440에서 무결성 프로파일이 검증된다. 그런 다음, 단계 S450에서 그 무결성 프로파일이 유효한지에 관한 결정이 만들어진다. 만약 그 무결성 프로파일이 유효하면, 단계 S640으로 이어진다. 그렇지 않으면, 제어는 단계 S540으로 점프한다.
[0094] 단계 S460에서, 무결성 프로파일이 로드 된다. 다음으로, 단계 S470에서 현재의 실행환경의 호출스택이 도 6에 관련되어 예시된 것처럼 구축된다. 그 호출스택의 바닥에는 하드웨어 및/또는 장치들 집합이, 스택의 최상부를 향하는 모든 소프트웨어 구성요소들과 더불어, 있다. 스택에 있는 구성요소들의 관계는 저위의 구성요소가 그 바로 위의 구성요소를 호출하는 것이다. 일단 호출스택이 구축되면,마지막으로 실행된 구성요소의 실행이미지를 내포하는 그 호출스택의 최상부는 위치가 정해진다. 따라서 스택상의 각 구성요소의 실행이미지는 호출 구성요소를 식별하는 것을 돕는다. 그런 다음, 단계 S480에서 구성요소를 호출하는 ID가 검색된다. 그 후 제어는 단계 S490으로 이어진다.
[0095] 단계 S490에서, 구성요소의 무결성은 무결성 프로파일과 대비하여 검증된다. 다음으로, 단계 S500에서, 구성요소가 유효한지에 관한 결정이 이루어진다. 만약 구성요소가 유효하면, 제어는 단계 S510으로 계속된다. 그렇지 않으면, 제어는 단계 S540으로 점프한다.
[0096] 단계 S510에서, 스택이 비어 있는지를 결정한다. 만약 스택이 비어있으면, 제어는 단계 S520으로 점프한다. 그렇지 않으면, 제어는 단계 S530으로 점프한다. 단계 S520에서, 스택내의 다음 번 구성요소에 위치하고 이 다음번 구성요소가 현재 스택 프레임으로서 설정된다. 그런 다음, 제어는 검증을 위해 단계 S480으로 복귀한다.
[0097] 단계 S530에서, 무결성이 검증되고 제어는 단계 S550으로 계속 이어져서 거기서 그 제어시권스가 종료된다.
[0098] 단계 S540에서, 무결성 체크가 실패하고 제어는 단계 S550으로 이어져 그 제어시퀀스가 종료된다.
[0099] 도 1-2에서 예시된 바와 같이, 무결성 보증과 검증장치는 바람직하게는 단일 프로그램 범용 목적 컴퓨터 혹은 별개 프로그램 범용 목적 컴퓨터 중 어느 하나 위에서 실행된다. 그러나 상기 무결성 보증 및 검증 장치는 또한 특수 목적의 컴퓨터, 프로그램 된 마이크로프로세서 또는 마이크로콘트롤러 및 주변 집적회로(IC) 요소, ASIC, 또는 다른 집적회로, 디지털 신호 처리기, 분산요소회로와 같은 하드-와이어드(hard-wired) 전자 및 논리회로, PLA, PLD, FPGA, PAL, 등과 같은 프로그램가능 논리장치 위에서 수행될 수도 있다. 일반적으로, 도 11-14에 예시된 흐름도를 순차적으로 실행할 수 있는 유한 상태 기계를 실행할 수 있는 어떤 장치도 무결성 보증 및 검증 장치를 실행하는 데 사용될 수 있다.
[0100] 나아가, 개시된 방법은, 다양한 컴퓨터 또는 워크스테이션 하드웨어 플랫폼에서 사용될 수 있는 휴대용 소스코드를 제공하는 환경에서, 객체 혹은 객체지향 (object-oriented) 소프트웨어 개발 기술들을 사용하는 소프트웨어에서 실행될 수 있다. 대안으로는, 개시된 무결성 보증 및 검증장치는 부분적으로 혹은 전적으로 표준 로직회로 혹은 VLSI 설계를 사용하는 하드웨어에서 실행될 수 있다. 소프트웨어 혹은 하드웨어가 본 발명에 따른 시스템들과 방법들을 실행하는 데 사용되는지 여부는 그 시스템의 속도 및/또는 효율 요구사항, 특수한 기능, 및 특수한 하드웨어 혹은 소프트웨어 시스템 또는 이용되고 있는 마이크로프로세서 혹은 마이크로컴퓨터 시스템에 달려있다. 그러나 위에서 설명된 그 무결성 보증 및 검증 장치 및 방법들은, 컴퓨터 기술에 관한 일반적인 지식과 함께, 어떤 알려진 또는 나중에 개발되는 시스템 혹은 구조, 장치, 및/또는 당업자가 여기서 기술된 기능적인 설명을 토대로 어떤 과도한 실험을 하지 않고서도 만들 수 있는 소프트웨어를 사용하는 하드웨어 또는 소프트웨어에서도 실행될 수 있다. 더구나 개시된 방법들은 소프트웨어로서 프로그램 된 범용 컴퓨터, 특수목적 컴퓨터, 마이크로프로세서, 서버 등과 같은 장치 상에서 기꺼이 실행될 수도 있다. 이 경우에 있어서 본 발명의 방법 및 장치들은 JAVA 또는 CGI 스크립트와 같은 개인용 컴퓨터나 서버 상에, 전용의 무결성 보증 및 검증장치, 웹브라우저, 웹TV 인터페이스, PDA 인터페이스, 멀티미디어 프레젠테이션 장치 등과 같은 장치에 내장된 루틴으로서 서버나 그래픽 워크스테이션에 상주하는 자원(resource)처럼, 내장된 루틴(embedded routine)으로서 실행될 수 있다. 상기 무결성 보증 및 입증장치는 또한 시스템과 방법을 물리적으로 통합하여, 그래픽 워크스테이션의 하드웨어 및 소프트웨어 시스템 또는 전용의 무결성 보증 및 검증장치와 같은 소프트웨어 및/또는 하드웨어 시스템화 하는 것에 의해 실행될 수도 있다.
[0101] 그러므로 본 발명에 따라서, 무결성 검증을 위한 시스템과 방법들이 제공되었다는 것이 분명하다. 본 발명이 바람직한 실시예들과 조합되어 설명되었고, 많은 다른 대안들, 수정 및 변경들이 당업자에게는 자명함이 분명하다. 따라서 출원인들은 본 발명의 사상과 범위에 있는 모든 그러한 대안들, 수정들 및 변경들을 권리범위로 두고자 한다.

Claims (34)

  1. 콘텐트 소비 환경 내에서 무결성 보증 및 검증을 제공하기 위한 시스템으로서,
    하나 이상의 애플리케이션들, 시스템들 또는 시스템 구성요소들에 관한 인증 정보(authentication information)를 저장하는 구성요소 등록장치; 및
    상기 인증정보에 의거하여 만들어지는 검증가능한 정보를 포함하고, 그리고 어떤 콘텐트 소비환경의 상기 하나 이상의 애플리케이션들, 시스템들 또는 시스템 구성요소들의 진정성(authenticity)을 결정하는 데 사용되는 인증된 환경(authenticated environment)을 정의하는 적어도 하나의 무결성 프로파일을 저장하는 무결성 프로파일장치를 구비하는 것을 특징으로 하는 시스템.
  2. 제1항에 있어서, 상기 무결성 프로파일은 등록된 애플리케이션들, 시스템들 또는 상기 구성요소 등록장치에 저장된 인증정보를 갖는 시스템 구성요소들의 식별자(identification)를 포함하는 것을 특징으로 하는 시스템.
  3. 제 1항에 있어서, 상기 프로파일 장치는 상기 무결성 프로파일을 관리(maintain)하는 프로파일 데이터베이스를 구비하는 것을 특징으로 하는 시스템.
  4. 제1항에 있어서, 상기 적어도 하나의 무결성 프로파일에 상술된(specified), 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소 식별자(identification)들을 콘텐트 소비 환경의 하나 이상의 애플리케이션들, 시스템들 또는 시스템 구성요소들과 비교함으로써 진정성(authenticity)을 검증하는 프로파일 검증장치를 더 구비하는 것을 특징으로 하는 것을 특징으로 하는 시스템.
  5. 제 1항에 있어서, 상기 하나 이상의 애플리케이션들, 시스템들 또는 시스템 구성요소들에 관한 인증정보를 콘텐트 소비 애플리케이션, 시스템 또는 시스템 구성요소 제공자로부터 입수하고 상기 인증정보를 상기 구성요소 등록장치에 제공하는 등록 애플리케이션 장치를 더 구비하는 것을 특징으로 하는 것을 특징으로 하는 시스템.
  6. 제1항에 있어서, 상기 무결성 프로파일은 디지털적으로 서명되며 그리고 상기 환경의 상기 하나 이상의 애플리케이션들, 시스템들 또는 시스템 구성요소들의 식별자(identification)를 구비하는 것을 특징으로 하는 시스템.
  7. 제 1항에 있어서, 상기 콘텐트 소비환경에 결합된 콘텐트 제공자 시스템을 더 구비하는 것을 특징으로 하는 시스템.
  8. 제1항에 있어서, 콘텐트 소비 애플리케이션, 시스템 또는 콘텐트 소비환경에 결합된 시스템 구성요소 제공자를 더 구비하는 것을 특징으로 하는 시스템.
  9. 제 1항에 있어서, 만일 프로파일 검증장치가 콘텐트 소비 환경의 상기 하나 이상의 애플리케이션들, 시스템들 또는 시스템 구성요소들이 진정성이 없다(not authentic)는 결정을 하면, 하나 이상의 문서들에 대한 접근(access)이 불가능해지는 것을 특징으로 하는 시스템.
  10. 제 1항에 있어서, 상기 무결성 프로파일을, 상기 구성요소 등록장치에 저장된 상기 하나 이상의 애플리케이션들, 시스템들 또는 시스템 구성요소들에 관한 인증정보에 의거하여, 생성하는 프로파일 생성 장치를 더 구비하는 것을 특징으로 하는 시스템.
  11. 콘텐트 소비 환경에서의 무결성 보증과 검증을 위한 방법으로서,
    무결성 프로파일을 결정하며, 상기 무결성 프로파일은 하나 이상의 애플리케이션들, 시스템들 또는 시스템 구성요소들의 인증된 환경(authenticated environment)을 정의하는 검증가능 정보(verifiable information)를 포함하는 단계; 및
    상기 무결성 프로파일에 의해 정의되는 상기 인증된 환경을 콘텐트 소비 환경의 하나 이상의 애플리케이션들, 시스템들 또는 시스템 구성요소들과 비교하여 콘텐트에 대한 접근권들(access rights)을 결정하는 단계를 구비하는 것을 특징으로 하는 방법.
  12. 제 11항에 있어서, 상기 무결성 프로파일을 구성요소 등록장치에 저장된 인증정보(authentication information)와 비교하여 상기 무결성 프로파일을 보증하는 단계를 더 구비하는 것을 특징으로 하는 방법.
  13. 삭제
  14. 제 11항에 있어서, 상기 접근권은 상기 콘텐트에 대한 접근 가능 또는 접근 불능 중 적어도 하나(at least one of enabling or disabling access to the content)를 포함하는 것을 특징으로 하는 방법.
  15. 제 11항에 있어서, 상기 적어도 하나의 애플리케이션, 시스템 또는 시스템 구성요소에 관한 인증정보를 콘텐트 소비 애플리케이션, 시스템 또는 시스템 구성요소 제공자로부터 입수하는 단계를 더 구비하는 것을 특징으로 하는 방법.
  16. 제 15항에 있어서, 상기 무결성 프로파일을 디지털적으로 서명하는 단계를 더 구비하는 것을 특징으로 하는 방법.
  17. 제 15항에 있어서, 상기 디지털적으로 서명된 무결성 프로파일을 상기 콘텐트 소비 환경에 전달하는 단계를 더 구비하는 것을 특징으로 하는 방법.
  18. 삭제
  19. 제 11항에 있어서, 상기 결정단계에 앞서서, 간섭 저항 환경(a tamper resistant environment)을 수립하는 단계를 더 구비하는 것을 특징으로 하는 방법.
  20. 제 11항에 있어서, 상기 무결성 프로파일을 검증하는 단계를 더 구비하는 것을 특징으로 하는 방법.
  21. 제 20항에 있어서, 상기 결정단계에 앞서서, 검증된 무결성 프로파일을 로딩하는 단계를 더 구비하는 것을 특징으로 하는 방법.
  22. 제 11항에 있어서, 상기 콘텐트 소비환경의 하나 이상의 애플리케이션들, 시스템들 또는 시스템 구성요소들이 인증되지 않은 장치에 의해 모니터 되거나, 제어되거나, 또는 기록되는 적어도 어느 하나가 아님을 확립하는(establishing) 단계를 더 구비하는 것을 특징으로 하는 방법.
  23. 콘텐트 소비 환경내의 무결성 보증과 검증을 위해 작성된 컴퓨터 가독형 코드가 기록되어 있으며, 상기 코드는,
    무결성 프로파일을 결정하며, 상기 무결성 프로파일은 하나 이상의 애플리케이션들, 시스템들 또는 시스템 구성요소들의 인증된 환경(authenticated environment)을 정의하는 검증가능 정보를 포함하는 단계; 및
    상기 무결성 프로파일에 의해 정의되는 상기 인증된 환경을 콘텐트 소비 환경의 하나 이상의 애플리케이션들, 시스템들 또는 시스템 구성요소들과 비교하여 콘텐트에 대한 접근권들(access rights)을 결정하는 단계를 실행하는 것을 특징으로 하는 컴퓨터 가독형 매체(computer readable medium).
  24. 제23항에 있어서, 상기 무결성 프로파일을 구성요소 등록장치에 저장된 인증정보와 비교하여 상기 무결성 프로파일을 보증하는 단계를 더 실행하는 것을 특징으로 하는 컴퓨터 가독형 매체.
  25. 삭제
  26. 제23항에 있어서, 상기 접근권은 상기 콘텐트에 대한 접근 가능 또는 접근 불가능 중 적어도 어느 하나를 포함하는 것을 특징으로 하는 컴퓨터 가독형 매체.
  27. 제23항에 있어서, 상기 적어도 하나의 애플리케이션, 시스템 또는 시스템 구성요소에 관한 인증정보를 콘텐트 소비 애플리케이션, 시스템 또는 시스템 구성요소 제공자로부터 입수하는 단계를 더 수행하는 것을 특징으로 하는 컴퓨터 가독형 매체.
  28. 제27항에 있어서, 상기 무결성 프로파일을 디지털적으로 서명하는 단계를 더 수행하는 것을 특징으로 하는 컴퓨터 가독형 매체.
  29. 제27항에 있어서, 상기 디지털적으로 서명된 무결성 프로파일을 상기 콘텐트 소비 환경으로 전달하는 단계를 더 구비하는 것을 특징으로 하는 컴퓨터 가독형 매체.
  30. 삭제
  31. 제23항에 있어서, 간섭 저항 환경을 확립하는 단계를 더 수행하는 것을 특징으로 하는 컴퓨터 가독형 매체.
  32. 제23항에 있어서, 상기 무결성 프로파일을 검증하는 단계를 더 수행하는 것을 특징으로 하는 컴퓨터 가독형 매체.
  33. 제32항에 있어서, 검증된 무결성 프로파일을 로드하는 단계를 더 수행하는 것을 특징으로 하는 컴퓨터 가독형 매체.
  34. 제23항에 있어서, 상기 콘텐트 소비 환경의 하나 이상의 애플리케이션, 시스템 또는 시스템 구성요소는 모니터 되거나, 제어 되거나 또는 기록되는 적어도 어느 하나는 아니라는 것을 확립하는(establishes) 단계를 더 수행하는 것을 특징으로 하는 컴퓨터 가독형 매체.
KR10-2003-7002905A 2000-08-28 2001-08-28 콘텐트 소비 환경의 무결성 보증 및 검증 시스템 및 방법 KR100402071B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/649,838 2000-08-28
US09/649,838 US6931545B1 (en) 2000-08-28 2000-08-28 Systems and methods for integrity certification and verification of content consumption environments
PCT/US2001/026634 WO2002019598A2 (en) 2000-08-28 2001-08-28 Systems and methods for integrity certification and verification of content consumption environments

Publications (2)

Publication Number Publication Date
KR20030040427A KR20030040427A (ko) 2003-05-22
KR100402071B1 true KR100402071B1 (ko) 2003-10-17

Family

ID=24606431

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-7002905A KR100402071B1 (ko) 2000-08-28 2001-08-28 콘텐트 소비 환경의 무결성 보증 및 검증 시스템 및 방법

Country Status (12)

Country Link
US (2) US6931545B1 (ko)
EP (1) EP1301863B1 (ko)
JP (1) JP3671178B2 (ko)
KR (1) KR100402071B1 (ko)
CN (2) CN1291326C (ko)
AT (1) ATE325384T1 (ko)
AU (2) AU8529801A (ko)
BR (1) BR0113572A (ko)
CA (1) CA2419863C (ko)
DE (1) DE60119326T2 (ko)
MX (1) MXPA03001761A (ko)
WO (1) WO2002019598A2 (ko)

Families Citing this family (132)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1085396A1 (en) 1999-09-17 2001-03-21 Hewlett-Packard Company Operation of trusted state in computing platform
US8095508B2 (en) * 2000-04-07 2012-01-10 Washington University Intelligent data storage and processing using FPGA devices
US6965881B1 (en) * 2000-04-24 2005-11-15 Intel Corporation Digital credential usage reporting
US7395246B2 (en) * 2000-06-30 2008-07-01 Intel Corporation Delegating digital credentials
GB0020441D0 (en) 2000-08-18 2000-10-04 Hewlett Packard Co Performance of a service on a computing platform
US7457950B1 (en) * 2000-09-29 2008-11-25 Intel Corporation Managed authentication service
GB2376763B (en) * 2001-06-19 2004-12-15 Hewlett Packard Co Demonstrating integrity of a compartment of a compartmented operating system
GB2371636A (en) * 2000-12-21 2002-07-31 Nokia Oyj Content Distribution System
GB0102516D0 (en) * 2001-01-31 2001-03-21 Hewlett Packard Co Trusted gateway system
US20020111911A1 (en) * 2001-02-13 2002-08-15 Kennedy Kelli Hodge Document distribution system and method with consolidated document services management
GB2372345A (en) * 2001-02-17 2002-08-21 Hewlett Packard Co Secure email handling using a compartmented operating system
GB2372595A (en) 2001-02-23 2002-08-28 Hewlett Packard Co Method of and apparatus for ascertaining the status of a data processing environment.
GB2372593B (en) * 2001-02-23 2005-05-18 Hewlett Packard Co Electronic communication
GB2372592B (en) 2001-02-23 2005-03-30 Hewlett Packard Co Information system
WO2002091146A2 (en) * 2001-05-09 2002-11-14 Ecd Systems, Inc. Systems and methods for the prevention of unauthorized use and manipulation of digital content
US7099663B2 (en) 2001-05-31 2006-08-29 Qualcomm Inc. Safe application distribution and execution in a wireless environment
GB0114898D0 (en) * 2001-06-19 2001-08-08 Hewlett Packard Co Interaction with electronic services and markets
GB2376764B (en) * 2001-06-19 2004-12-29 Hewlett Packard Co Multiple trusted computing environments
GB2376765B (en) 2001-06-19 2004-12-29 Hewlett Packard Co Multiple trusted computing environments with verifiable environment identities
GB2376761A (en) * 2001-06-19 2002-12-24 Hewlett Packard Co An arrangement in which a process is run on a host operating system but may be switched to a guest system if it poses a security risk
GB2376762A (en) * 2001-06-19 2002-12-24 Hewlett Packard Co Renting a computing environment on a trusted computing platform
US7552222B2 (en) * 2001-10-18 2009-06-23 Bea Systems, Inc. Single system user identity
US20090006659A1 (en) * 2001-10-19 2009-01-01 Collins Jack M Advanced mezzanine card for digital network data inspection
US7137004B2 (en) * 2001-11-16 2006-11-14 Microsoft Corporation Manifest-based trusted agent management in a trusted operating system environment
GB2382419B (en) * 2001-11-22 2005-12-14 Hewlett Packard Co Apparatus and method for creating a trusted environment
JP4145118B2 (ja) * 2001-11-26 2008-09-03 松下電器産業株式会社 アプリケーション認証システム
GB0129596D0 (en) * 2001-12-11 2002-01-30 Nokia Corp Risk detection
US7680743B2 (en) * 2002-05-15 2010-03-16 Microsoft Corporation Software application protection by way of a digital rights management (DRM) system
US7296154B2 (en) 2002-06-24 2007-11-13 Microsoft Corporation Secure media path methods, systems, and architectures
US7694343B2 (en) * 2002-11-27 2010-04-06 Symantec Corporation Client compliancy in a NAT environment
US7827607B2 (en) * 2002-11-27 2010-11-02 Symantec Corporation Enhanced client compliancy using database of security sensor data
US20040139312A1 (en) 2003-01-14 2004-07-15 General Instrument Corporation Categorization of host security levels based on functionality implemented inside secure hardware
US7290149B2 (en) * 2003-03-03 2007-10-30 Microsoft Corporation Verbose hardware identification for binding a software package to a computer system having tolerance for hardware changes
US7137002B2 (en) * 2003-03-24 2006-11-14 Lucent Technologies Inc. Differential authentication entity validation scheme for international emergency telephone service
US8041957B2 (en) * 2003-04-08 2011-10-18 Qualcomm Incorporated Associating software with hardware using cryptography
US10572824B2 (en) 2003-05-23 2020-02-25 Ip Reservoir, Llc System and method for low latency multi-functional pipeline with correlation logic and selectively activated/deactivated pipelined data processing engines
EP2528000B1 (en) 2003-05-23 2017-07-26 IP Reservoir, LLC Intelligent data storage and processing using FPGA devices
US7249263B2 (en) * 2003-07-25 2007-07-24 International Business Machines Corporation Method and system for user authentication and identification using behavioral and emotional association consistency
GB2404537B (en) * 2003-07-31 2007-03-14 Hewlett Packard Development Co Controlling access to data
GB2404536B (en) * 2003-07-31 2007-02-28 Hewlett Packard Development Co Protection of data
US8037515B2 (en) 2003-10-29 2011-10-11 Qualcomm Incorporated Methods and apparatus for providing application credentials
KR100982515B1 (ko) 2004-01-08 2010-09-16 삼성전자주식회사 해시 체인을 이용하여 디지털 컨텐츠의 접근 횟수를제한하는 장치 및 방법
WO2005071519A1 (en) * 2004-01-09 2005-08-04 General Instrument Corporation Method and apparatus for providing a security profile
KR20050094273A (ko) * 2004-03-22 2005-09-27 삼성전자주식회사 디지털 저작권 관리 구조, 휴대용 저장 장치 및 이를이용한 컨텐츠 관리 방법
US20050235357A1 (en) * 2004-04-19 2005-10-20 Securemedia International Preventing cloning of high value software using embedded hardware and software functionality
US8074287B2 (en) 2004-04-30 2011-12-06 Microsoft Corporation Renewable and individualizable elements of a protected environment
US20060242406A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Protected computing environment
FR2872979A1 (fr) * 2004-07-09 2006-01-13 France Telecom Systeme d'acces controle a des informations contenues dans un terminal
EP1813107B1 (en) 2004-10-18 2015-03-18 Syphermedia International, Inc. Method and apparatus for supporting multiple broadcasters independently using a single conditional access system
US8347078B2 (en) 2004-10-18 2013-01-01 Microsoft Corporation Device certificate individualization
US10477151B2 (en) 2004-10-18 2019-11-12 Inside Secure Method and apparatus for supporting multiple broadcasters independently using a single conditional access system
US8336085B2 (en) 2004-11-15 2012-12-18 Microsoft Corporation Tuning product policy using observed evidence of customer behavior
CN1633065B (zh) * 2004-12-28 2010-05-12 华中师范大学 带内容监控的网络数字图书安全分发系统和方法
EP1859378A2 (en) 2005-03-03 2007-11-28 Washington University Method and apparatus for performing biosequence similarity searching
JP4464297B2 (ja) 2005-03-10 2010-05-19 パナソニック株式会社 再生装置、再生方法、及び再生プログラム
US8539587B2 (en) 2005-03-22 2013-09-17 Hewlett-Packard Development Company, L.P. Methods, devices and data structures for trusted data
US9436804B2 (en) * 2005-04-22 2016-09-06 Microsoft Technology Licensing, Llc Establishing a unique session key using a hardware functionality scan
US9363481B2 (en) 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
CN101167290A (zh) * 2005-04-29 2008-04-23 康坦夹德控股股份有限公司 用于完整性证明和验证的系统和方法
US7805752B2 (en) * 2005-11-09 2010-09-28 Symantec Corporation Dynamic endpoint compliance policy configuration
US7921303B2 (en) 2005-11-18 2011-04-05 Qualcomm Incorporated Mobile security system and method
WO2007068992A1 (en) * 2005-12-16 2007-06-21 Nokia Corporation Support for integrated wlan hotspot clients
EP1826695A1 (en) * 2006-02-28 2007-08-29 Microsoft Corporation Secure content descriptions
EP1801720A1 (en) * 2005-12-22 2007-06-27 Microsoft Corporation Authorisation and authentication
WO2007076484A2 (en) * 2005-12-22 2007-07-05 Flory Clive F Method, system, and apparatus for the management of the electronic files
JP4960023B2 (ja) 2006-01-18 2012-06-27 株式会社Pfu 画像読取装置、認証方法、評価システム、評価方法およびプログラム
US7954114B2 (en) 2006-01-26 2011-05-31 Exegy Incorporated Firmware socket module for FPGA-based pipeline processing
GB0603781D0 (en) 2006-02-24 2006-04-05 Nokia Corp Application verification
WO2007121035A2 (en) 2006-03-23 2007-10-25 Exegy Incorporated Method and system for high throughput blockwise independent encryption/decryption
TWI562580B (en) 2006-05-05 2016-12-11 Interdigital Tech Corp Device and method for integrity protection of information used in protocol messages exchanged between two entities in a rpotocol
US7970138B2 (en) 2006-05-26 2011-06-28 Syphermedia International Method and apparatus for supporting broadcast efficiency and security enhancements
EP1873668A1 (en) * 2006-06-28 2008-01-02 Nokia Siemens Networks Gmbh & Co. Kg Integration of device integrity attestation into user authentication
US8239915B1 (en) 2006-06-30 2012-08-07 Symantec Corporation Endpoint management using trust rating data
US20080008321A1 (en) * 2006-07-10 2008-01-10 Syphermedia International, Inc. Conditional access enhancements using an always-on satellite backchannel link
US20080086458A1 (en) * 2006-09-15 2008-04-10 Icebreaker, Inc. Social interaction tagging
US20080080711A1 (en) * 2006-09-28 2008-04-03 Syphermedia International, Inc. Dual conditional access module architecture and method and apparatus for controlling same
KR100823738B1 (ko) * 2006-09-29 2008-04-21 한국전자통신연구원 컴퓨팅 플랫폼의 설정 정보를 은닉하면서 무결성 보증을제공하는 방법
US8296569B2 (en) * 2006-10-09 2012-10-23 Microsoft Corporation Content protection interoperability infrastructure
US8761393B2 (en) * 2006-10-13 2014-06-24 Syphermedia International, Inc. Method and apparatus for providing secure internet protocol media services
US9277259B2 (en) 2006-10-13 2016-03-01 Syphermedia International, Inc. Method and apparatus for providing secure internet protocol media services
US10031830B2 (en) * 2006-10-13 2018-07-24 International Business Machines Corporation Apparatus, system, and method for database management extensions
GB0622149D0 (en) * 2006-11-07 2006-12-20 Singlepoint Holdings Ltd System and method to validate and authenticate digital data
US20080148253A1 (en) * 2006-12-15 2008-06-19 Microsoft Corporation Automatic software license reconciliation
US8879727B2 (en) 2007-08-31 2014-11-04 Ip Reservoir, Llc Method and apparatus for hardware-accelerated encryption/decryption
US8108856B2 (en) * 2007-03-30 2012-01-31 Intel Corporation Method and apparatus for adaptive integrity measurement of computer software
US8145655B2 (en) * 2007-06-22 2012-03-27 International Business Machines Corporation Generating information on database queries in source code into object code compiled from the source code
US8639627B2 (en) * 2007-07-06 2014-01-28 Microsoft Corporation Portable digital rights for multiple devices
US8887298B2 (en) * 2007-07-13 2014-11-11 Microsoft Corporation Updating and validating documents secured cryptographically
CN100454324C (zh) * 2007-09-21 2009-01-21 武汉大学 一种可信机制上的嵌入式平台引导方法
US8997054B2 (en) * 2007-11-30 2015-03-31 Red Hat, Inc. Software application certification service
GB2468422A (en) 2007-12-04 2010-09-08 Fox Entertainment Group System for distributing digital media to exhibitors
US10229453B2 (en) 2008-01-11 2019-03-12 Ip Reservoir, Llc Method and system for low latency basket calculation
US8374986B2 (en) 2008-05-15 2013-02-12 Exegy Incorporated Method and system for accelerated stream processing
US9779234B2 (en) * 2008-06-18 2017-10-03 Symantec Corporation Software reputation establishment and monitoring system and method
US8402519B2 (en) * 2008-10-16 2013-03-19 Verisign, Inc. Transparent client authentication
US9946848B2 (en) * 2009-02-26 2018-04-17 International Business Machines Corporation Software protection using an installation product having an entitlement file
KR101590188B1 (ko) * 2009-05-08 2016-01-29 삼성전자주식회사 휴대단말기에서 소프트웨어 패키지의 무결성을 검증하는 방법
US8800057B2 (en) 2009-09-24 2014-08-05 Samsung Information Systems America, Inc. Secure content delivery system and method
KR20110045960A (ko) * 2009-10-28 2011-05-04 엘지이노텍 주식회사 전자문서 다운로드를 위한 전자책 단말기 및 그 시스템
US8521778B2 (en) * 2010-05-28 2013-08-27 Adobe Systems Incorporated Systems and methods for permissions-based profile repository service
US8515241B2 (en) 2011-07-07 2013-08-20 Gannaway Web Holdings, Llc Real-time video editing
US9047243B2 (en) 2011-12-14 2015-06-02 Ip Reservoir, Llc Method and apparatus for low latency data distribution
CN104160405B (zh) * 2011-12-31 2017-08-15 英特尔公司 用于信任配置的安全设备环境
KR101311287B1 (ko) * 2012-02-21 2013-09-25 주식회사 파수닷컴 전자책 생성 장치 및 방법, 그리고 전자책 무결성 검증 장치 및 방법
US10650452B2 (en) 2012-03-27 2020-05-12 Ip Reservoir, Llc Offload processing of data packets
US11436672B2 (en) 2012-03-27 2022-09-06 Exegy Incorporated Intelligent switch for processing financial market data
US10121196B2 (en) 2012-03-27 2018-11-06 Ip Reservoir, Llc Offload processing of data packets containing financial market data
US9990393B2 (en) 2012-03-27 2018-06-05 Ip Reservoir, Llc Intelligent feed switch
CN104620278B (zh) * 2012-09-12 2017-12-22 英派尔科技开发有限公司 用于保证而不显露基础结构的复合认证
US9135436B2 (en) * 2012-10-19 2015-09-15 The Aerospace Corporation Execution stack securing process
CA2887022C (en) 2012-10-23 2021-05-04 Ip Reservoir, Llc Method and apparatus for accelerated format translation of data in a delimited data format
US9633093B2 (en) 2012-10-23 2017-04-25 Ip Reservoir, Llc Method and apparatus for accelerated format translation of data in a delimited data format
US10133802B2 (en) 2012-10-23 2018-11-20 Ip Reservoir, Llc Method and apparatus for accelerated record layout detection
US9560014B2 (en) 2013-01-23 2017-01-31 Mcafee, Inc. System and method for an endpoint hardware assisted network firewall in a security environment
TWI502342B (zh) * 2013-03-08 2015-10-01 Chunghwa Telecom Co Ltd Method and system for automatic synchronization of dual - track test
WO2015013474A2 (en) 2013-07-25 2015-01-29 Siemens Healthcare Diagnostics Inc. Anti-piracy protection for software
KR20150049571A (ko) * 2013-10-30 2015-05-08 한국전자통신연구원 객체검증장치 및 그 무결성인증방법
CN103685277B (zh) * 2013-12-17 2016-08-17 南京大学 一种浏览器访问网页安全保护方法
GB2541577A (en) 2014-04-23 2017-02-22 Ip Reservoir Llc Method and apparatus for accelerated data translation
FR3023028B1 (fr) * 2014-06-26 2017-07-28 Olivier Robert Gerard Joffray Procede pour proteger des biens utilises par des dispositifs communiquant certifies connectes en reseaux, et pour garantir les comportements operationnels desdits dispositifs
WO2016001814A1 (en) * 2014-07-02 2016-01-07 Indian Institute Of Technology Madras System and method for determining the behavioral integrity of an application
JP6757125B2 (ja) * 2015-07-29 2020-09-16 ヤフー株式会社 転送装置および転送システム
US10942943B2 (en) 2015-10-29 2021-03-09 Ip Reservoir, Llc Dynamic field data translation to support high performance stream data processing
US10149166B2 (en) 2016-01-14 2018-12-04 Blackberry Limited Verifying a certificate
US10496814B2 (en) * 2016-03-07 2019-12-03 Intertrust Technologies Corporation Software integrity checking systems and methods
CN105930721B (zh) * 2016-04-28 2018-11-23 北京小米移动软件有限公司 一种管理应用程序的方法和装置
WO2018119035A1 (en) 2016-12-22 2018-06-28 Ip Reservoir, Llc Pipelines for hardware-accelerated machine learning
US10733178B2 (en) 2018-08-01 2020-08-04 Saudi Arabian Oil Company Electronic document workflow
US10924933B2 (en) 2018-08-23 2021-02-16 Motorola Solutions, Inc. System and method for monitoring the integrity of a virtual assistant
US11240044B2 (en) 2018-11-22 2022-02-01 International Business Machines Corporation Verifying purpose of data usage at sub-application granularity
DE102019216527A1 (de) * 2019-10-28 2021-04-29 Robert Bosch Gmbh Gerät, system und verfahren zum nachweis eines integritätszustands eines geräts
CN111737657B (zh) * 2020-06-16 2024-03-12 湖南省星岳天璇科技有限公司 基于license文件对JAVA类软件实现授权控制的方法

Family Cites Families (124)

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

Also Published As

Publication number Publication date
JP3671178B2 (ja) 2005-07-13
DE60119326T2 (de) 2006-08-31
MXPA03001761A (es) 2003-06-04
CA2419863C (en) 2006-04-25
EP1301863B1 (en) 2006-05-03
CN1953459A (zh) 2007-04-25
DE60119326D1 (de) 2006-06-08
EP1301863A2 (en) 2003-04-16
BR0113572A (pt) 2003-07-15
KR20030040427A (ko) 2003-05-22
ATE325384T1 (de) 2006-06-15
WO2002019598A3 (en) 2002-06-13
EP1301863A4 (en) 2003-07-02
CN1449523A (zh) 2003-10-15
JP2004507845A (ja) 2004-03-11
AU2001285298B2 (en) 2005-09-08
US20050262086A1 (en) 2005-11-24
US6931545B1 (en) 2005-08-16
AU8529801A (en) 2002-03-13
CA2419863A1 (en) 2002-03-07
CN1291326C (zh) 2006-12-20
WO2002019598A2 (en) 2002-03-07

Similar Documents

Publication Publication Date Title
KR100402071B1 (ko) 콘텐트 소비 환경의 무결성 보증 및 검증 시스템 및 방법
AU2001285298A1 (en) Systems and methods for integrity certification and verification of content consumption environments
JP6983794B2 (ja) 著作権管理方法およびシステム
US6327652B1 (en) Loading and identifying a digital rights management operating system
US7809648B2 (en) System and method for software licensing
US7302709B2 (en) Key-based secure storage
US6820063B1 (en) Controlling access to content based on certificates and access predicates
JP4912406B2 (ja) 第1プラットフォームから第2プラットフォームへのディジタルライセンスの移送
US6330670B1 (en) Digital rights management operating system
US5935246A (en) Electronic copy protection mechanism using challenge and response to prevent unauthorized execution of software
US9246916B2 (en) Specifying rights in a digital rights license according to events
CA2457291C (en) Issuing a publisher use license off-line in a digital rights management (drm) system
US20060095383A1 (en) Content revocation and license modification in a digital rights management (DRM) system on a computing device
US20070219917A1 (en) Digital License Sharing System and Method
US20050060549A1 (en) Controlling access to content based on certificates and access predicates
KR101034127B1 (ko) 무결성 보증 및 검증을 위한 시스템 및 방법
US20050060544A1 (en) System and method for digital content management and controlling copyright protection
JP2003256596A (ja) 著作権保護コンテンツ配信方法及びシステム、著作権保護管理方法、著作権保護管理端末、プログラム並びに記録媒体

Legal Events

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

Payment date: 20120306

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20130919

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20140919

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20150924

Year of fee payment: 13

LAPS Lapse due to unpaid annual fee