KR102500619B1 - 신뢰의 계층적 체인용 미래 제약 - Google Patents

신뢰의 계층적 체인용 미래 제약 Download PDF

Info

Publication number
KR102500619B1
KR102500619B1 KR1020170109111A KR20170109111A KR102500619B1 KR 102500619 B1 KR102500619 B1 KR 102500619B1 KR 1020170109111 A KR1020170109111 A KR 1020170109111A KR 20170109111 A KR20170109111 A KR 20170109111A KR 102500619 B1 KR102500619 B1 KR 102500619B1
Authority
KR
South Korea
Prior art keywords
domain
constraint
command
target domain
authenticated
Prior art date
Application number
KR1020170109111A
Other languages
English (en)
Other versions
KR20180027343A (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
Application filed by 트러스토닉 리미티드 filed Critical 트러스토닉 리미티드
Publication of KR20180027343A publication Critical patent/KR20180027343A/ko
Application granted granted Critical
Publication of KR102500619B1 publication Critical patent/KR102500619B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • G06F21/335User authentication using certificates for accessing specific resources, e.g. using Kerberos tickets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • 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
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Automation & Control Theory (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

전자 기기(2)에 의해 실행될 명령을 인증하기 위한 암호화 아이덴티티를 제공하는 목표 도메인(50-T)을 구성하는 방법은 도메인 구성 명령(60)을 수신하는 단계와, 신뢰의 계층적 체인에서 상기 목표 도메인(50-T)의 조상인 인증 도메인(50-A)에 의해 제공되는 암호화 아이덴티티를 기초로 상기 명령(60)을 인증하는 단계를 포함한다. 인증시, 상기 명령(60)에 의해 특정된 적어도 하나의 목표 도메인 제약(72)은 인증 도메인(50-A)에 의해 특정된 적어도 하나의 미래 제약(82-A)과 결합되어 목표 도메인에 의해 인증될 명령에 의해 만족될 결합된 제약 세트(80-T)를 생성한다. 결합된 제약 세트(80-T)는 목표 도메인(50-T)에 대해 저장된다. 이 접근법은 신뢰의 체인의 보안 및 확장성 사이에 균형을 제공한다.

Description

신뢰의 계층적 체인용 미래 제약{FUTURE CONSTRAINTS FOR HIERARCHICAL CHAIN OF TRUST}
본 기술은 전자 기기 분야에 관한 것이다.
잠재적으로 민감한 정보의 처리를 위해 전자 장치의 사용이 점증하고 있다. 예를 들면, 모바일 기기에서 구동하는 어플리케이션을 이용하여 금융이 수행되는 것은 점점 더 흔한 일이다. 사용자가 잠재적으로 민감한 어플리케이션에 대해 자신의 전자 기기를 사용하는 것이 안전하다고 확신하기 위해서는 해당 기기에서 구동하는 어플리케이션에 대한 신뢰를 입증하는 메카니즘이 제공될 수 있다. 예를 들면, 어플리케이션과 해당 어플리케이션에 의해 실행되는 명령의 진위를 검증하기 위해 암호화 기술이 사용될 수 있으므로, 사용자는 사용 중인 어플리케이션이 인증된 소스로부터 온 것이고 예컨대, 악의적인 집단에 의해 제공된 어플리케이션의인증되지 않은 복제품이 아니라는 것을 확신할 수 있다.
적어도 일부의 예는 전자 기기에서 해당 전자 기기에 의해 실행되는 명령을 인증하기 위한 암호화 아이덴티티를 제공하는 신뢰의 계층적 체인의 목표 도메인을 구성하는 방법을 제공하며, 해당 방법은:
전자 기기에 대한 목표 도메인의 구성을 요청하는 도메인 구성 명령으로서, 상기 목표 도메인에 의해 인증되는 명령에 의해 만족될 적어도 하나의 목표 도메인 제약을 특정하는 도메인 구성 명령을 수신하는 단계와;
인증 도메인-상기 목표 도메인은 상기 신뢰의 계층적 체인에서 인증 도메인 또는 해당 인증 도메인의 후손 도메인임-에 의해 제공되는 암호화 아이덴티티를 기초로 상기 도메인 구성 명령을 인증하는 단계와;
상기 도메인 구성 명령이 인증되는 경우, 상기 적어도 하나의 목표 도메인 제약과 상기 인증 도메인에 의해 특정되는 적어도 하나의 미래 제약을 결합하여 제로인 결합된 제약 세트-하나 이상의 제약은 상기 목표 도메인에 의해 인증될 명령에 의해 만족됨-를 생성하고 상기 결합된 제약 세트의 지시를 저장하는 단계를 포함한다.
적어도 일부의 예는 상기 방법을 수행하도록 전자 기기를 제어하는 프로그램 명령을 포함하는 컴퓨터 프로그램을 제공한다.
상기 컴퓨터 프로그램은 저장 매체에 저장될 수 있다. 상기 저장 매체는 일시적 또는 비일시적 저장 매체일 수 있다.
적어도 일부의 예는 처리 회로와 상기 컴퓨터 프로그램을 저장한 저장 회로를 포함하는 전자 기기를 제공한다.
적어도 일부의 예는 전자 기기를 제공하며, 해당 전자 기기는:
상기 전자 기기에 대한 목표 도메인-상기 전자 기기에 의해 실행될 명령을 인증하기 위한 암호화 아이덴티티를 제공함-의 구성을 요청하는 도메인 구성 명령- 상기 목표 도메인에 의해 인증되는 명령에 의해 만족될 적어도 하나의 목표 도메인 제약을 특정함-을 수신하고, 인증 도메인-상기 목표 도메인은 상기 신뢰의 계층적 체인에서 인증 도메인 또는 해당 인증 도메인의 후손 도메인임-에 의해 제공되는 암호화 아이덴티티를 기초로 상기 도메인 구성 명령을 인증하도록 구성된 인증 회로를 포함하며;
상기 도메인 구성 명령이 인증되는 경우, 상기 인증 회로는 상기 적어도 하나의 목표 도메인 제약과 상기 인증 도메인에 의해 특정되는 적어도 하나의 미래 제약을 결합하여 제로인 결합된 제약 세트-하나 이상의 제약은 상기 목표 도메인에 의해 인증될 명령에 의해 만족됨-를 생성하고 상기 결합된 제약 세트의 지시를 저장하도록 구성된다.
본 기술의 추가의 양태, 특징 및 장점은 첨부된 도면응 함께 판독될 수 있는 여러 가지 예에 대한 다음의 설명으로부터 분명해질 것이며, 도면에서:
도 1은 전자 기기의 단순화된 예를 개략적으로 예시하며;
도 2는 전자 기기 상에 구현될 수 있는 정상 및 보안 런타임 환경을 예시하며;
도 3은 전자 기기에 의해 실행될 명령을 인증하기 위한 개별 암호화 아이덴티티를 제공하는 다수의 도메인을 제공하는 신뢰의 계층적 체인을 예시하며;
도 4는 인증 도메인에 의해 설정되는 미래 제약을 기초로 신뢰의 체인의 목표 도메인을 구성하는 예를 보여주며;
도 5는 도메인 구성 명령이 인증되는 경우를 포함하는 명령 인증 방법의 흐름도를 예시하며;
도 6은 신뢰의 체인의 개별 레벨에 대해 적용되는 상이한 세트의 제약 및 미래 제약을 예시하며;
도 7은 인증 도메인에 의해 특정되는 미래 제약과 목표 도메인을 위한 도메인 구성 명령에서 특정되는 제약을 결합시키기 위한 4가지 다른 규칙을 개략적으로 예시한다.
아래 논의되는 바와 같이, 본 기술은 신뢰의 계층적 체인 내의 인증 도메인이 상기 신뢰의 체인의 목표 도메인에 의해 인증되는 명령에 의해 만족될 미래 제약을 특정할 수 있게 한다. 인증 도메인이 목표 도메인(인증 도메인 자체 또는 인증 도메인의 후손 도메인)을 구성하기 위한 도메인 구성 명령을 인증하는 경우, 상기 특정된 미래 제약은 도메인 구성 명령에서 특정된 적어도 하나의 목표 도메인과 결합되어 목표 도메인에 의해 인증될 명령에 의해 만족될 제로 또는 하나 이상의 제약을 포함하는 결합된 제약 세트를 생성한다. 이후, 결합된 제약 세트의 지시가 목표 도메인에 대해 저장된다. 후속하여, 목표 도메인에 의해 인증될 수신된 명령은 결합된 제약 세트의 대상이 될 수 있다.
이 접근은 신뢰의 체인의 더 높은 레벨에 있는 인증 도메인이 후손 도메인에 의해 사용되는 기준에 대해 영향을 미쳐 명령을 인증하도록 함과 함께, 상기 후속 도메인이 인증 도메인에 의해 명시적으로 설정되지 않은 자체의 제약을 도입할 수 있게 한다. 주어진 목표 도메인에 대해 특정된 제약과 미래 제약을 이 방식으로 결합하는 것에 의해, 이것은 상부 레벨 도메인이 신뢰의 체인의 더 낮은 레벨들에 사용되지만 더 높은 레벨의 경우 명령이 계층의 더 아래에서 인증되는 방식에 여전히 영향을 미치므로 증가된 보안을 가지는 모든 기준을 알 필요가 없는 선정된 신뢰의 체인을 이용하는 융통성을 허용함으로써, 더 낮은 도메인들은 이들이 선택하는 메시지 또는 명령을 인하는 완전한 자유를 가지지 않는다.
도 1은 프로세서(4), 메모리(6), 디스플레이 제어기(8) 및 디스플레이(10), 사용자 입력(예, 키보드 또는 터치 스크린)을 수용하는 사용자 입/출력 회로(12), 다른 기기와의 통신을 위한 통신 인터페이스(14), 및 추가의 데이터 저장을 제공하는 메모리 카드나 지문 검출을 위한 지문 센서 등과 같은 다른 주변 기기와의 통신을 위한 주변 입/출력 회로(16)를 포함하는 전자 기기(2)를 개략적으로 예시한다. 작동 중, 프로세서(4)는 메모리(6) 또는 외장 데이터 저장 장치에 저장되고나 통신 인터페이스(14)를 통해 동적으로 다운로드될 수 있는 컴퓨터 프로그램 명령을 실행시킨다. 전자 기기(2)의 동작을 제어하는 사용자 입력은 사용자 입/출력 회로(12)를 통해 수신될 수 있다. 컴퓨터 프로그램은 다양한 다른 컴퓨터 언어로 기록될 수 있음을 알 것이다. 컴퓨터 프로그램은 기록 매체에 저장 또는 배포되거나 통신 인터페이스(14)를 통해 기기에 동적으로 다운로드될 수 있다. 이것은 전자 기기의 일부 부품들의 단순화된 예이고 기기의 아키텍처는 크게 변할 수 있으며, 전자 기기는 간결성을 위해 도 1에 예시되지 않은 다른 요소들을 가질 수 있음을 알 것이다. 전자 기기는 예컨대, 데스크탑 또는 랩탑 컴퓨터, 휴대 전기화 또는 태블릿 컴퓨터와 같은 모바일 기기, 또는 예컨대, 텔레비전, 세탁기 또는 냉장고와 같은 가전 제품에 매입된 기기를 포함하는 광범위한 종류의 기기 중 임의의 것일 수 있다. 따라서, 본 기술은 신뢰를 확인하는 암호화 기술이 구현된 상기 종류의 전자 기기에 대해 한정되지 않는다.
일부의 예에서, 보안을 향상시키기 위해, 전자 기기(2)는 도 2에 예시된 바와 같이 정상 런타임 환경(32) 이외에 보안 런타임 환경(30)의 작동을 지원하는 하드웨어 아키텍처를 가질 수 있다. 보안 데이터는 보안 런타임 환경(30) 하에서 실행되는 신뢰된 어플리케이션(36) 및/또는 보안 작동 시스템을 사용하여 처리될 수 있다. 정상 런타임 환경(32)에서 구동하는 어플리케이션(40) 또는 작동 시스템(42)이 보안 런타임 환경(30)에 관련된 보안 데이터 또는 코드에 접근할 수 없음을 보장하기 위해 하드웨어 메커니즘이 제공될 수 있다. 예를 들면, 메모리 어드레스 공간을 보안 및 정상 영역으로 분할하고 정상 런타임 환경(32)에서 실행되는 코드에 의해 보안 영역으로의 접근을 방지하기 위해 메모리 관리부 또는 유사 구성이 사용될 수 있다. 보안 런타임 환경(32)으로의 접근을 감시하기 위한 다수의 옵션이 존재한다. 일례로, 정상 및 보안 런타임 환경 간의 전환이 제한된 세트의 상황에서 전환을 허용할 수 있는 보안 모니터 코드(46)에 의해 감시될 수 있다. 예를 들면, 보안 런타임 환경으로의 접근을 요청하는 어플리케이션의 동작 허용 여부 등을 확인할 수 있는 모니터 코드를 통해 런타임 환경 간의 전환을 개시하기 위해 예외 메커니즘이 사용될 수 있다. 대안적으로, 상기 전환을 감시하기 위해 소프트웨어를 사용하는 대신에, 하드웨어 아키텍처가 정상 및 보안 런타임 환경(30, 32) 간의 직접 분기를 허용할 수 있지만, 예컨대, 비보안 코드가 소정의 미리 정해진 진입 포인트에서 보안 코드로만 분기되는 것을 필요로 하는 안전한 전환을 보장하기 위해 하드웨어 메커니즘이 제공될 수 있다. 예를 들면, 주어진 어플리케이션은 기능의 말단에서 정상 세계(32)로 다시 분기되기 전에 패드워드 확인과 같은 일부의 보안-민감성 기능을 가지기 위해 보안 도메인 내의 기능으로 분기될 수 있다. 이러한 보안 런타임 환경(13)을 제공하는 하드웨어 아키텍터의 예는 영국 캠브릿지에 소재한 ARM®사에 의해 제공되는 Trustzone® 아키텍처일 수 있지만, 다른 예들도 사용될 수 있다. 따라서, 보안 런타임 환경이 기기(2)에 구현되면, 이것은 전자 기기에서 구동하는 민감한 데이터 또는 코드를 더 확실하게 보호할 수 있다. 그럼에도 불구하고, 본 기술은 기기(2)의 하드웨어 아키텍처에 구현되는 이러한 보안 런타임 환경을 가지지 않는 기기에도 적용될 수 있다.
도 3은 전자 기기에 구현될 수 있는 신뢰의 계층적 체인을 예시한다. 전자 기기에서 구동되는 주어진 어플리케이션 또는 다른 프로세스에 의해 내려진 명령이 인증된 소스로부터 온 것임을 검증하기 위해, 전자 기기에 의해 실행될 명령을 인증하기 위해 적어도 하나의 암호화 아이덴티티가 제공될 수 있다. 예를 들면, 암호화 아이덴티티는 하나 이상의 암호화 키, 서명 또는 인증서에 의해 표현될 수 있다. 예를 들면, 실행 대상 명령은 주어진 키를 사용하여 서명될 수 있고, 해당 명령에 관련된 서명은 대응하는 키를 사용하는 그 서명을 해독하는 것에 의해 검증될 수 있다. 예를 들면, 공용-개인 키 인프라가 사용될 수 있다. 주어진 명령에 관련된 서명이 진짜인 것으로 검증되면, 명령이 예상된 소스로부터 온 것으로 신뢰될 수 있어서 전자 기기에 의해 조치가 이루어질 수 있다. 다른 한편, 해커나 다른 악의적인 집단이 기기로 하여금 명령이 소정의 다른 소스로부터 온 것이지만 그 암호화 아이덴티티를 검증하기 위한 적절한 키를 가지고 있지 않은 것으로 간주하도록 기기를 기만하는 명령을 주입하고자 시도하면, 해당 명령은 인증되지 않을 것이고 조치가 취해지지 않을 것이다. 이 접근법은 모바일 뱅킹 어플리케이션, 전자적 식별 어플리케이션(예, 전자 지갑 등), 보안 결제 어플리케이션 등과 같은 민감한 어플리케이션을 보호하기 위해 사용될 수 있다.
주어진 암호화 아이덴티티에 의해 규명된 신뢰는 결국은 특정 인증 기관으로부터 얻어질 수 있는 데, 그 특정 인증 기관은 예컨대, 전자 기기 자체의 제조사, 실행 대상의 명령에 관련된 암호화 아이덴티티를 확인하고 그 진위를 검증하기 위한 인프라를 구성하는 보안 소프트웨어를 공급하는 공급자, 또는 다른 집단 어플리케이션의 진위 확인에 책임이 있는 완전 독립체일 수 있다. 따라서, 전자 기기에 구동되는 어플리케이션의 신뢰를 유지하기 위한 하나의 접근법은 인증 기관이 기기에 설치될 수 있으면서 어플리케이션에 의해 실행될 임의의 명령에 관련된 모든 서명 및 인증 동작에 대해 사용될 기준을 정하는 정보를 가지도록 기기를 구성하는 데 책임이 있는 어플리케이션 각각에 대해 암호화 아이덴티티를 설정하는 것일 수 있다. 그러나, 실제, 잠재적으로 인증이 필요할 수 있는 어플리케이션의 수는 방대하고, 하나의 인증 기관은 단순히 임의의 주어진 인증 대상 어플리케이션으로부터의 명령에 대해 적용될 기준을 특정하는 것을 포함하여 모든 어플리케이션을 검증하기에 충분한 리소스를 가지지 않을 수 있다. 따라서, 모든 어플리케이션을 위한 암호화 아이덴티티를 수립하는 단일 에이전트를 가지는 이 접근법은 실제 기준화되지 않는다.
도 3에 도시된 신뢰의 계층적 체인은 신뢰의 루트로서 작용하는 인증 기관이 서명 또는 인증 기능을 선정하는 방식을 다른 집단에 제공한다. 루트 기관은 다른 집단에 대한 암호화 아이덴티티를 마련하고 해당 다른 집단으로부터 온 것이라는 취지의 명령이 실제로 해당 집단으로부터 온 것임을 검증하는 수단을 전자 기기 내에 제공하는 것에 의해 다른 집단에 권한을 부여하여 루트 기관 대신에 명령을 인증하도록 할 수 있다. 로트 기관이 신뢰된 동작을 위임한 대상인 다른 집단은 자체가 추가의 동작을 자기 대신에 메시지를 인증하는 다른 집단에 위임할 수 있으며, 다시 해당 다른 집단에 대해 대응하는 암호화 아이덴티티가 마련된다. 이것은 도 3에 예시된 바와 같이 신뢰의 계층적 체인이 전자 기기에 의해 실행될 명령을 인증하는 암호화 아이덴티티를 각각 제공하는 다수의 도메인(50)을 포함할 수 있도록 계속될 수 있고, 여기서 루트 도메인(50-0)이 아닌 각각의 도메인(50)은 부모(parent) 도메인에 의해 인증된 명령을 기초로 구성된 것이다. 예를 들면, 도 3에서, 신뢰의 좌측 체인의 루트 도메인(50-0)은 2개의 레벨-1 도메인(50-1)의 구성을 인증한 것이고, 해당 레벨-1 도메인은 자체가 다수의 레벨-2 도메인(50-2)의 구성을 인증한 것이고, 해당 레벨-2 도메인은 자체가 어플리케이션-레벨 도메인(50-3)의 구성을 인증한 것이다. 각각의 도메인은 명령이 해당 도메인에 의해 인증되어야 하는 지를 확인하는 데 사용될 암호화 아이덴티티를 표현하기 위해 암호화 키 또는 인증서와 같은 저장된 세트의 암호화 정보(52)에 의해 전자 기기에 표현되니다. 각각의 도메인은 아래에 더 상세히 논의되는 바와 같이 인증될 명령에 부과될 제약 세트를 정할 수 있다.
따라서, 기기(2)에 실행하는 주어진 소프트웨어 프로세스 또는 외부 기기에 의해 주어진 명령이 주어진 어플리케이션-레벨 도메인(예컨대 도메인(50-3c))에 의해 신뢰되는 것으로 인증되면, 어플리케이션-레벨 도메인이 부모 도메인(본 예에서는 레벨 2 도메인(50-2b))에 의해 진짜인 것으로 검증되었고, 레벨 2 도메인(50-2b)은 자체가 레벨 1 도메인(50-1b)에 의해 신뢰되는 것으로 인증되었고, 레벨 1 도메인(50-1b)은 루트 도메인(50-0)에 의해 인증되었기 때문에, 어플리케이션-레벨 도메인(50-3c)에 의해 인증된 명령도 루트 도메인(50-0) 자체에 의해 인증된 것을 의미한다. 어플리케이션으로부터의 명령을 처리시 어플리케이션-레벨 도메인(50-3c)에 관련된 암호화 아이덴티티를 사용하여 명령을 인증하면 족하다(신뢰의 체인에서 다른 인증은 조상 도메인이 구성되었을 때 이미 수행되었으므로, 이들을 명령 수신시마다 반복하는 것은 필요치 않다)는 것에 유의하라. 이러한 신뢰의 선정된 체인은 루트 도메인 자체가 기기에 의해 실행될 모든 명령을 인증하는 기준을 정하는 책임을 가질 필요가 없지만, 이러한 책임을 다른 집단에 위임할 수 있음을 의미한다.
일반적으로, 신뢰의 체인에서 주어진 도메인은 하나 이상의 개입 조상 도메인을 통해 직접적으로 또는 전적으로 해당 주어진 도메인의 구성을 인증한 도메인인 하나 이상의 "조상 도메인"을 가질 수 있다. 다른 한편, 주어진 도메인은 하나 이상의 개입 자손 도메인의 인증을 통해 직접 또는 전적으로 해당 주어진 도메인에 의해 인증된 구성을 가지는 도메인인 하나 이상의 "자손 도메인"을 가질 수 있다. 주어진 도메인의 "부모 도메인"은 주어진 도메인의 설치를 인증한 도메인을 말하는 반면, 주어진 도메인의 "자식 도메인"은 해당 주어진 도메인에 의해 설치되는 것이 인증된 도메인이다.
도 3에 예시된 바와 같이, 동일한 전자 기기에 여러 개의 독립적인 신뢰의 계층적 체인이 제공될 수 있다. 예를 들면, 다수의 상이한 인증 기관은 동일한 기기에 분리 루트 도메인을 구성할 수 있다. 또한, 도 3에 예시된 바와 같이, 주어진 계층 요구에 대하여 모든 가지들이 동일한 수의 레벨을 가질 필요는 없다. 예를 들면, 우측 체인에 예시된 바와 같이, 하나의 어플리케이션-레벨 도메인(50-3e)이 레벨 1 도메인(50-1c) 바로 아래에 설치될 수 있는 반면, 다른 어플리케이션-레벨 도메인(50-3a, 50-3b, ..., 50-3g)은 레벨 2 도메인(50-2)의 자식일 수 있다. 트리의 다른 가지에 제공되는 레벨의 특정 개수는 신뢰가 선정되는 특정 집단에 의존할 수 있다. 예를 들면, 루트 도메인은 인증 기관 또는 사용되는 암호화 처리용 인프라를 구현하는 보안 소프트웨어의 제공자에 의해 설정된 정보에 의해 구성될 수 있다. 레벨 1 도메인(50-1)은 인증 기관이 신뢰 서명 동작을 직접 위임한 다수의 집단 중 하나일 수 있는 신뢰된 어플리케이션 메니저에 의해 설정된 정보를 기초로 구성될 수 있다. 레벨 2 도메인(50-2)은 다수의 보안 소프트웨어의 제공을 원하는 어플리케이션 스토어, 은행 또는 다른 회사의 제공자와 같은 서비스 제공자 또는 임의의 다른 집단에 의해 구현될 수 있다. 어플리케이션-레벨 도메인(50-3)은 전자 기기에서 구동하는 특정 어플리케이션의 개발자의 제어하에 설치될 수 있다. 신뢰된 어플리케이션 매니저는 일반적으로 레벨 2 도메인을 설치하기 위해 추가의 서비스 제공자들을 인증할 수 있지만, 이들은 때로 1차로 레벨 2 도메인(50-2)을 설치하지 않고 레벨 1 도메인(50-1)이 어플리케이션-레벨 도메인을 직접 설치할 수 있는 경우에 자체의 어플리케이션을 지원할 수 있다.
도 3에 예시된 도메인(50)은 기기에 실행하는 실제 소프트웨어 프로세스에 반드시 대응할 필요는 없음을 알 것이다. 어플리케이션-레벨 도메인(50-3)은 소정의 어플리케이션에 전형적으로 대응할 것이지만, 그 조상 도메인은 기기 상의 것에 관련된 임의의 특정 소프트웨어를 가질 필요는 없다. 대신에, 이들은 단지 기기에 의해 실행될 명령을 인증하기 위한 암호화 아이덴티티를 제공할 수 있다. 인증 프로세스를 제어하기 위해 기기 상에서 구동하는 실제 소프트웨어는 명령이 인증되는 신뢰의 체인의 특정 목표 레벨에 의존하여 상이한 제약 및 상이한 암호화 아이덴티티에 따라 명령의 진위를 검증할 수 있는 루트 도메인 인증 기관에 의해 제공되는 프로그램과 같은, 신뢰의 체인의 모든 레벨에 사용되는 보편적인 프로그램일 수 있다.
따라서, 선정된 신뢰의 체인을 제공하는 것은 하나의 인증 기관 자체에 의해 지원될 수 있는 것보다 훨씬 더 다양한 어플리케이션이 신뢰되는 것으로 인증될 수 있게 하는 장점을 가진다. 그러나, 특정 집단의 도메인에 의해 인증될 메시지에 대해 적용되는 제약을 특정하는 것을 포함하여, 신뢰의 체인의 주어진 레벨에서 인증 에이전트로서 역할하는 특정 집단에 권한을 부여하면, 이는 보안 루프홀을 개방할 수 있고, 보안 루프홀에서 일단 신뢰의 체인 내의 명령을 확인하는 것으로 인증된 집단은 조상 도메인에 연관된 집단이 적절히 고려되지 않을 수 있는 다른 명령이 허용되게 할 수 있다. 예를 들면, 나중의 도메인에 의해 사용되는 암호화 알고리즘은 보안 핀홀을 포함하는 것을 나중에 알 수 있지만, 조상 도메인이 나중의 후손 도메인에 의해 적용될 기준을 제어하기 위한 모든 책임을 후손 도메인 자체에 위임하면, 이것은 기기 상에서 구동하는 보안 어플리케이션이 신뢰되는 것을 보장하기 위해 핀홀을 적절히 차단하는 것을 허용하지 않을 수 있다. 따라서, 실제, 명령을 인증하기 위한 암호화 수단을 제공하는 데 완전히 책임이 있는 한 집단에 대한 완전 통합된 메커니즘은 물론, 신뢰의 체인에서 후손 도메인이 인증 메시지에 적용하는 기준에 대해 완전히 제어하는 완전 선정된 접근법도 역시 보안과 확장성 간에 적절한 균형을 제공하지 않는다.
대신, 조상 도메인이 후손 도메인에 의해 메시지에 제공되는 제약에 소정의 영향을 미칠 수 있게 하면서, 후손 도메인 자체가 조상 도메인이 알고 있지 못한 제약을 특정할 수 있게 하는 메커니즘이 여기에 설명된다.
도 4는 신뢰의 계층에서 소정의 목표 도메인(50)을 구성할 때 추가의 제약을 제공하는 것을 예시한다. 예컨대, 기기 상에서 구동하는 어플리케이션 또는 다른 소프트웨어 프로세스로부터 또는 전자 기기가 통신 인터페이스(14)를 통해 통신하고 있는 대상의 다른 기기(예, 서버)와 같은 외부 소스로부터 기기(2)에 의해 도메인 구성 명령(60)이 수신된다. 도메인 구성 명령(60)은 신뢰의 계층적 체인에서 소정의 목표 도메인(50-T)의 구성을 요청하는 명령이며, 상기 목표 도메인은 루트 도메인(50-0)이 아닌 도 3에 예시된 도메인(50) 중 임의의 것일 수 있다(도메인 구성 명령은 루트 도메인 자체를 구성하기 위해 수신될 수도 있지만, 이 경우, 도 4에 예시된 미래 제약 메커니즘은 루트 도메인의 구성에 영향을 미치는 조상 도메인이 존재하지 않으므로 적용되지 않을 것이다). 도메인 구성 명령(60)은 계층에서 완전히 새로운 도메인의 설치를 요청하는 도메인 설치 명령 또는 기존의 도메인(50)의 소정의 파라미터의 갱신을 요청하는 도메인 갱신 명령일 수 있다.
도 4에 예시된 바와 같이, 도메인 구성 명령(60)은 명령의 종류(예, 도메인 설치 명령인지 도메인 갱신 명령인지)를 식별하는 명령 식별자 필드(62), 목표 도메인에 대해 전자 기기에 저장될 암호화 키(64), 다른 도메인이 해당 명령에 대해 인증 도메인으로서 역할하는 지의 지시와 같은 명령의 다른 파라미터(66), 또는 명령의 처리 또는 목표 도메인의 구성에 필요한 임의의 다른 정보와 같은 다양한 필드와, 명령이 관련 암호화 아이덴티티를 가지는 집단으로부터 온 것을 검증하는 키로써 명령을 서명하는 것에 의해 생성된 디지털 서명(68)을 포함할 수 있다. 선택적으로, 명령은 명령(60)의 어떤 다른 부분이 서명(68)에 의해 진짜인 것으로 검증되는 지를 식별하는 메타데이터를 제공하는 서명 비트맵(70)을 역시 포함할 수 있다. 필수적인 것은 아니지만, 일부의 프로토콜은 메시지의 오직 일부만이 서명에 의해 확인될 수 있게 하며, 이는 명령 중에서 보호되지 않은 부분이 서명(68)의 유효성을 해치지 않고 명령을 가로채는 집단에 의해 수정될 수 있음을 의미한다. 예를 들면, 서명(68)은 서명 비트맵(70)에 의해 지시된 명령의 비보호된 부분의 해시(hash)에 의해 생성될 수 있으며, 따라서 상기 비보호된 부분은 서명(68)의 옳음 여부에 영향을 미치지 않고 변할 수 있다. 다른 예는 명령의 어떤 부분이 서명에 의해 인증되는 지(비트맵의 사용은 필수적이지 않음)를 나타내기 위해 다른 포맷을 사용할 수 있다.
명령(60)은 목표 도메인에 의해 인증될 메시지에 적용될 제로, 하나 이상의 목표 도메인 제약의 리스트(72)와 목표 도메인의 후손 도메인에 도입될 제로, 하나 이상의 미래 제약의 목표 도메인 미래 제약 리스트(74)를 특정한다.
도메인 구성 명령(60)은 인증 도메인(50-A)에 의해 인증된다. 어떤 도메인이 인증 도메인으로서 역할하는 것은 명령(60) 자체에 의해 식별되거나 (예, 명령을 발행한 소스 또는 예컨대, 어떤 도메인이 목표 도메인(50-T)인지를 기초로) 암시될 수 있다. 예를 들면, 일부 시스템에서, 주어진 도메인이 직계 부모 도메인, 즉, 초기에 목표 도메인을 설치한 도메인에 의해 인증된 명령을 기초로 구성되도록 할 수 있다. 이 경우, 별도로 목표 도메인(50-T)과 인증 도메인(50-A) 모두를 특정할 필요는 없을 수 있다. 다른 한편, 다른 시스템은 주어진 도메인의 임의의 조상이 해당 도메인을 구성하는 것을 허용할 수 있어서, 인증 도메인(50-A)은 목표 도메인 직계 부모보다 신뢰의 체인에서 더 높은 도메인일 수 있다. 새로운 도메인의 설치를 위해 의미상으로 설치 명령이 상기 도메인의 부모 도메인에 의해 인증될 것이지만, 기존 도메인의 갱신을 위해 목표 도메인의 임의의 조상 도메인에 의해 인증이 수행될 수 있다. 실제, 신뢰의 선정된 체인을 준비하는 목적이 더 높은 레벨로부터 책임을 제거하기 위한 것으로 주어지면, 주어진 도메인은 직계 부모에 의해 구성되지만, 그럼에도 원하는 경우 더 높은 레벨로부터 도메인을 구성하는 것이 여전히 가능한 경우가 있을 것이다.
도 4에 예시된 바와 같이, 인증 도메인(50-A)은 전자 기기(2)의 메모리(6)에 저장되는 다수의 제어 파라미터를 가질 수 있다. 예를 들면, 보안 런타임 환경이 제공되면, 이것은 메모리 어드레스 공간의 보안 영역에 보안 데이터(34)의 일부로서 저장될 수 있다. 제어 파라미터는 인증 도메인에 관련된 키(52), 인증 도메인(50-A) 자체에 의해 인증될 명령에 부여될 하나 이상의 제약(80-A), 및 인증 도메인(50-A)의 적어도 하나의 후손 도메인에 의해 인증되는 명령에 사용될 수 있는 하나 이상의 미래 제약(82-A)을 포함할 수 있다.
따라서, 도메인 구성 명령(60)이 수신되면, 해당 명령은 저장된 키(52-A)와 적용된 제약(80-A)을 기초로 인증 도메인(50-A)에 의해 인증된다. 예를 들면, 서명 비트맵(70)에 의해 보호되는 것으로 지시된 명령(60)의 일부는 명령(60)의 해시를 생성하도록 사용될 수 있고, 서명(68)은 저장된 키를 사용하여 해독될 수 있으며, 해독된 서명은 일반화된 해시에 비교되어 메시지의 진위 여부를 검증할 수 있다. 추가로, 인증 도메인의 제약(80-A)에 의해 특정된 명령의 인증을 위한 임의의 다른 기준이 확인될 수 있고, 명령은 암호화 아이덴티티가 키(52-A)를 사용하여 검증되었고 그 외의 제약(80-A)이 만족되는 경우에만 인증될 수 있다. 예를 들면, 제약(80-A)은 명령이 소정의 암호화 알고리즘으로 서명되어야 하거나 소정의 키 식별자 또는 키 크기가 사용되어야 하거나 소정의 패딩 알고리즘이 명령에 대해 사용되거나 명령(60), 명령(60)이 인증될 수 있는 주파수(예, 명령은 주어진 시간 내에 N회만 수신될 수 있고, 후속하는 명령의 경우는 시간의 말미까지 거절될 수 있다) 등에 대한 최대 크기를 특정할 수 있다는 것을 특정할 수 있다. 주어진 집단 또는 명령의 유형에 대한 특정 요구에 따라 인증되도록 명령에 부과될 수 있는 광범위한 다양한 조건이 존재함을 알 것이다. 일반적으로, "제약"이란 용어는 인증되도록 명령에 의해 만족되는 임의의 요건을 말할 수 있다. 명령이 인증되면, 목표 도메인은 예컨대 설치되거나 갱신된 해당 명령에 응답하여 구성된다. 예를 들면, 도메인 구성 명령(60)에 의해 특정되는 새로운 키(64)는 목표 도메인의 키(52-T)로서 설치될 수 있고, 명령에 의해 특정되는 다른 파라미터(66)는 목표 도메인의 특성의 갱신 등에 사용될 수 있다.
도메인 구성 명령이 인증되면, 명령(60)에서 특정된 목표 도메인 제약(72)은 인증 도메인(50-A)에 의해 특정된 미래 제약(82-A)과 비교되어, 나중에 전자 기기에 저장되는 결합된 목표 도메인 제약(80-T) 세트를 생성할 수 있다. 이후, 목표 도메인에 의해 인증되는 임의의 후속 메시지를 인증할 때 제약(80-T)의 목표 도메인의 결합된 세트가 적용될 수 있다. 따라서, 목표 도메인(50-T)의 의해 적용되는 제약은 도메인 구성 명령(60)에 특정된 제약(목표 도메인을 작동시키는 집단에 의해 선택될 수 있음)은 물론, 완전히 다른 집단에 의해 제어될 수 있는 제약으로서 인증 도메인(50-A)이 구성됐을 때 설정된 미래 제약(82-A)에 의존할 수 있다. 유사하게, 명령(60)에 특정된 목표 도메인의 미래 제약(74)은 인증 도메인(50-A)에 의해 설정된 미래 제약(82-A) 중 적어도 일부와 결합될 수 있고, 이들은 이후 목표 도메인(50-T)에 관련된 결합된 세트의 목표 도메인 미래 제약(82-T)으로서 저장될 수 있다. 목표 도메인의 결합된 제약(80-T)은 목표 도메인 자체에 의해 인증될 메시지에 적용될 제약을 나타내지만, 목표 도메인의 미래 제약(82-T)은 목표 도메인의 적어도 하나의 후손에 부과될 수 있는 제약을 나타낸다. 목표 도메인(50-T)이 나중에 후속하는 도메인 구성 명령을 위한 인증 도메인으로서 역할을 행하면, 그 미래 제약(82-T)은 도 4에 예시된 방법과 유사한 방법으로 도메인 구성 명령에 의해 특정된 제약과 결합될 수 있다. 즉, 목표 도메인(50-T)은 후속하는 도메인 구성 명령을 위한 인증 도메인(50-A)으로서 역할할 수 있다. 도 4에 예시된 인증 및 결합 처리는 프로세서 상에서 구동하는 보안 소프트웨어에 의해 제어될 수 있다.
도 5는 이들 기술을 요약하는 흐름도를 보여준다. 100 단계에서, 인증될 명령이 수신된다. 102 단계에서, 신뢰의 계층적 체인의 인증 도메인(50-A)은 명령의 인증 여부를 결정한다. 인증 도메인은 명령 자체에 의해 분명히 식별되거나 내적으로 대응하는 어플리케이션-레벨 도메인(50-3)에 의해 인증되는 것이 필요할 수 있다. 인증 도메인은 검증된 집단의 암호화 아이덴티티를 제공하는 키 또는 인증서 등의 암호화 정보에 대해 명령을 확인하고, 그 제약(80-A)이 명령에 의해 만족되는 지도 확인한다. 명령을 내는 집단의 암호화 아이덴티티가 검증되지 않았거나 제약이 만족되지 않았으면, 104 단계에서, 명령은 거절되어 조치가 취해지지 않는다. 거절된 명령은 단순히 무시될 수 있거나 대안적으로 예외 또는 에러 메시지를 트리거링 하는 등의 다른 동작이 수행될 수 있다.
명령이 인증되면, 106 단계에서, 명령이 인증 도메인(50-A)의 후손인 목표 도메인(50-T)을 구성하는 도메인 구성 명령인지 여부가 결정된다. 목표 도메인은 도메인 갱신 명령의 경우 인증 도메인의 직계 자식 도메인이거나 손자 또는 다른 후손일 수 있다. 명령이 도메인 구성 명령이 아닌 경우, 108 단계에서 명령은 해당 명령에 의해 어떤 기능이 표현되는 지에 따라 조치가 취해진다.
명령이 도메인 구성 명령이면, 110 단계에서, 도메인 구성 명령에 의해 특정된 임의의 목표 도메인 제약(72)이 인증 도메인(50-A)에 의해 특정된 임의의 미래 제약(82-A)이 결합되며, 결합된 제약 세트(80-T)는 이후 목표 도메인(50-T)을 위한 구성 파라미터의 일부로서 메모리(6)에 저장된다. 유사하게, 112 단계에서, 명령(60)에 의해 특정된 임의의 목표 도메인 미래 제약(74)과 인증 도메인(50-A)에 의해 목표 도메인의 후손에 적용되는 것으로 지시된 임의의 미래 제약(82-A)이 결합되며, 그 경합된 미리 제약 세트는 이후 목표 도메인(50-T)에 대해 저장된다. 즉, 인증 도메인(50-A)에 의해 특정되는 미래 제약(82-A) 모두가 인증 도메인의 모든 후손에 적용될 필요는 없다. 이들 제약 중 일부는 인증 도메인의 직계 자식 도메인에 적용될 수 있지만, 추가의 후손으로 통과될 필요는 없다. 추가이 후손에 적용되는 것으로 지시된 다른 미래 제약들은 112 단계에서 결합될 수 있다. 114 단계에서, 목표 도메인의 구성에 관련된 임의의 다른 구성 동작이 수행된다. 예를 들면, 이것은 목표 도메인에 관련된 키(52-T)의 갱신을 포함할 수 있다.
상기의 예에서, 110 단계에서, 결합된 제약 세트는 전자 기기(2) 자체의 메모리에 저장된다. 그러나, 대안적인 실시예에서, 결합된 제약 세트의 지시가 별도의 장치의 다른 곳에 저장될 수 있다. 예를 들면, 결합된 제약 세트는 서버에 원격 저장되어 명령 처리시마다 불러올 수 있다.
따라서, 도 6에 예시된 바와 같이, 신뢰의 트리에서 상이한 도메인들은 트리의 해당 레벨에서 인증되는 메시지에 적용될 상이한 제약(80) 세트 및 후속하는 레벨에 부과될 상이한 미래 제약 세트가 될 수 있다. 예를 들면, 도 6에 예시된 바와 같이, 루트 도메인(50-0)은 예로써 루트 도메인에 의해 인증되는 메시지에 의해 만족될 2개의 제약(A, B) 및 루트 도메인의 후손에 부과될 다수의 미래 제약(W, X, Y, Z)을 특정할 수 있다. 이들 미래 제약 중, X와 Y는 루트의 모든 후손에 부과되는 것으로 지시되는 한편(이것은 도 6에서 별표로 지시되며-하드웨어 장치에서 비트 플래그 또는 다른 지시가 어떤 제약이 모든 후손에 적용되는 지를 식별하기 위해 설정될 수 있음), W와 Z는 루트 도메인(50-0)의 직계 자식에만 적용된다.
구성 명령은 이후 수신되어 루트 도메인(50-0)의 자식인 레벨 1 도메인(50-1)을 구성한다. 레벨 1 구성 명령은 제약(A)을 목표 도메인 제약(72-1)으로서 특정하고, 제약(A, C)을 미래 제약(74-1)으로서 특정하는 데, A는 레벨 1 도메인의 모든 후손에 적용되는 것으로 지시된다. 따라서, 레벨 1 도메인의 구성에서 레벨 1 제약(72-1)이 루트 도메인에 의해 특정된 미래 제약(82-0)과 결합되어 제약(A, W, X, Y, Z)을 포함하는 결합된 제약 세트(80-1)를 제공한다. 또한, 명령의 미래 제약(74-1)은 레벨 1 도메인의 후손에 적용되는 것으로 지시된 루트 도메인의 미래 제약 세트(82-0)의 제약((X, Y)과 결합되어 제약(A, C, X, Y)을 포함하는 결합된 미래 제약 세트(82-1)를 제공한다. 제약(C)은 구성 명령에서 바로 후속하는 자식 도메인에만 적용되는 것으로 지시되어 있으므로, 이외의 것과는 달리 별표로 지시되어 있지 않다.
유사하게, 레벨 1 도메인(50-1)의 인증 상태에서 레벨 2 도메인(50-2)을 구성하기 위한 다른 레벨 2 구성 명령(60-2)의 수신시, 레벨 2 도메인(50-2)에 대한 제약 세트(80-2)와 미래 제약 세트(82-2)를 설정하기 위해 추가의 결합이 행해진다. 모든 명령이 미리 제약을 특정하는 것은 아니라는 것에 유의하라. 예를 들면, 도 6의 예에서, 레벨 2 구성 명령(60-2)은 미래 제약 리스트를 포함하고 있지 않으므로(또는 비어있는 미래 제약 세트를 특정하지 않음) 이 경우 레벨 2 도메인의 미래 제약 세트(82-2)는 오직 레벨 1 도메인에 의해 특정된 미래 제약으로부터 온 것이다. 유사하게, 일부 구성 명령은 더 앞선 도메인으로부터의 미래 제약과의 결합에 의해 인증 도메인의 미래 제약 세트에 의해 특정된 제약만을 포함하는 결합된 세트가 얻어질 수 있는 경우 임의의 목표 도메인 제약(72)을 특정하지 않을 수 있다. 따라서, 본 기술의 방법은 명령(60)으로부터의 제약(72)과 인증 도메인에 의해 특정되는 미래 제약의 결합을 지원하지만, 모든 도메인 구성 명령에 대해 이 결합을 행하는 것은 필수적인 것은 아니다.
따라서, 도 6에 예시된 바와 같이, 동일한 종류의 명령은 인증되는 신뢰의 체인의 레벨에 따라 다른 제약에 처해질 수 있다. 예를 들면, 명령은 제약(D)을 만족하지 않아서 레벨 2 도메인(50-2)에서 거절될 수 있지만, 레벨 1 도메인(50-1)에서 동일한 명령은 제약(A, W, X, Y, Z)을 만족시키는 경우 인증될 수 있다. 마찬가지로, 레벨 1에서 거절된 명령은 예컨대 레벨 2에서 승인될 수 있다.
도 6의 예에서, 인증 도메인으로부터의 미래 제약(82)과 도메인 구성 명령(60)에 의해 특정된 제약(72) 또는 미래 제약(74)을 결합시, 제약 또는 미래 제약의 결합된 세트가 목표 도메인이 제약 세트(72) 또는 인증 도메인의 미래 제약 세트(82) 중 어느 하나에 의해 특정되는 경우 주어진 제약을 포함하도록 OR 결합이 행해진다. 그러나, 도 7에 예시된 바와 같이, 이것은 제약들의 세트를 결합하기 위한 유일한 옵션이 아니며, 다른 기능도 이용될 수 있다.
도 7은 간결성을 위해 4개의 제약(ABCD)의 단순화된 세트가 고려되고 상기 제약 각각이 인증 도메인(50-A)에 대한 저장된 구성 정보에 의해 특정된 미래 제약 세트(82-A)와 도메인 구성 명령(60)에 의해 특정된 목표 도메인의 제약 세트(72) 내에 특정되는 것을 지시한 비트밉이 제공되는 4가지 예를 보여준다. 비트맵에서 '1'은 대응하는 제약이 관련 제약에 의해 특정되는 것을 지시하는 반면, '0'은 제약이 특정되지 않음을 지시한다. 4개의 예는 다음과 같다:
a) 이 예에서는 도 6에 나타낸 OR 결합이 예시된다. 이 접근법에서, 주어진 종류의 제약이 결합되는 제약 세트(82-A, 72) 중 하나 또는 양자에 의해 특정되면, 결합된 제약 세트는 해당 종류의 제약을 포함할 것이다. 따라서, 이 접근법은 인증 도메인을 구성하는 집단이 목표 도메인 자체에 의해 특정되는 임의의 다른 제약과 나란히 후손 도메인의 제약 세트 내로 도입될 수 있는 추가적인 제약을 특정할 수 있게 한다.
b) 이 예는 AND 연산을 이용하여 제약이 개별 세트를 결합시키며, 이는 주어진 종류의 제약이 미래 제약 세트(82-A) 및 목표 도메인 제약 세트(72) 양자에 의해 특정되는 경우 결합된 제약 세트의 일부를 형성함을 의미한다. 이 접근법은 인증 도메인이 어떤 종류의 제약이 목표 도메인에 의해 부과될 수 있는 지를 제한하는 데 유용할 수 있다. 즉, AND 결합은 미래 제약 세트에서 특정된 제약만이 결합된 제약 세트에 포함될 수 있는 것을 보장하지만, 목표 도메인은 이들 특정 제약 중 어떤 것이 부과될 것인지를 설정하는 융통성을 여전히 가질 것이다(인증 도메인은 이들 도메인 중 임의의 도메인이 부과되어야 하는 것을 실시하지 않지만, 어떤 것들이 목표 도메인에 의해 설정이 허용되는 지를 정한다).
c) XOR 연산을 이용하여 개별 제약 세트가 결합될 수 있으므로, 오직 미래 제약 세트(82-A)와 목표 도메인의 제약 세트(72) 중 하나에 보이는 교차하지 않는 제약만이 결합된 세트의 일부를 형성할 것이다. 따라서, 양측의 세트(82-A, 72)에 보이는 제약은 결합된 세트(80-T)로부터 제거된다.
d) 이 접근법에서, 주어진 종류의 제약은 목표 도메인의 제약 세트(72)에 의해 특정되지만 미래 제약 세트(82-A)에 의해서ㅓ는 특정되지 않는 경우 결합된 제약 세트(80-T)의 일부를 형성한다. 예를 들면, 이것은 비트 관련 AND 연산을 이용하여 목표 도메인 제약 비트뱁(72)과 미래 제약 비트맵(82-A)의 부정(NOT)을 결합하는 것에 의해 달성될 수 있다. 이 접근법을 통해, 미래 제약 세트는 목표 도메인에 의해 적용되지 않아야 하는 제약을 효과적으로 특정하는 데, 이는 미래 제약 세트에 특정된 임의의 제약은 목표 제약 세트에 의해 특정되는 경우 결합된 제약 세트로부터 추후 제거될 것이기 때문이다. 따라서, 이 접근법은 후손 도메인에 의해 부과되지 않아야 하는 제약을 형성하는 네거티브 미래 제약을 효과적으로 정할 수 있다.
목표 도메인에 대한 구성 명령에 특정된 미래 제약 세트 및 제약을 결합하는 데 사용되는 특정 규칙에 따라, 일부의 경우, 결합된 제약 세트(80-T)는 제약을 전혀 포함하지 않는 것으로 종결될 수 있음을 알게 된다. 예를 들면, NND 연산이 이용되고 인증 도메인에 의해 특정된 미래 제약에 특정된 제약과 교차되는 목표 도메인에 의해 어떤 제약도 적용되지 않으면, 결합된 세트는 제로 제약을 포함할 것이다. 따라서, 명령을 제공하는 집단의 암호화 아이덴티티가 키 또는 다른 암호화 자료를 사용하여 검증될 수 있는 것 이외에, 때로는 주어진 도메인에 어떤 추가적인 제약도 적용되지 않을 수 있다.
도 7은 미래 제약(82-A)과 목표 도메인 제약(72)의 결합을 위한 다른 결합 규칙을 보여주지만, 미래 제약(82-A)과 목표 도메인의 미래 제약(74)을 결합하여 결합된 세트의 미래 제약(82-T)을 생성하는 경우 유사한 옵션들을 적용할 수 있다.
또한, 도 7에 나타낸 4개의 예는 따로 보여주고 있지만, 실제, 인증 도메인은 다른 종류의 제약에 대해 이들의 결합을 사용할 수 있다. 예를 들면, 일부 종류의 제약은 OR 함수와 결합될 수 있는 반면, 다른 종류의 제약은 전술한 예((b~d) 중 하나 또는 대체예를 사용할 수 있다. 따라서, 일부의 경우, 주어진 도메인에 대해 특정된 미래 제약 정보(82)는 구성되는 목표 도메인에 의해 설정된 제약과 목표 제약을 결합하는 데 어떤 특정 규칙을 사용할 수 있으며 다른 규칙들은 다른 종류의 제약에 설정될 수 있는 지를 특정하는 정보를 포함할 수 있다. 데이터를 정의하는 이 규칙은 인증 도메인(80-A)을 구성하는 도메인 구성 명령(60)에 의해 특정될 수 있다.
일부의 경우, 미리 제약의 도입은 신뢰의 체인의 소정 레벨에 한정될 수 있다. 예를 들면, 일부의 경우, 루트 도메인(80-0)은 신뢰의 체인의 후속 레벨에 부과될 미래 제약을 정의할 수 있는 능력을 가질 수 있지만, 다른 레벨은 추가의 미래 제약의 도입이 허용되지 않을 수 있으며, 이 경우 후속 레벨을 구성하는 구성 명령은 해당 레벨에 적용될 제약(72()을 포함할 것이지만, 임의의 추가의 미래 제약(72)을 포함하지 않을 것이며, 후속 레벨 도메인에 대해 정해지는 미래 제약 세트(82-T)는 오직 루트 도메인에 대해 설정된 미래 제약(82-0)만을 기초로 할 것이다. 대안적으로, 다른 예들은 신뢰의 체인의 다른 도메인이 자체의 미래 제약을 도입하도록 할 수 있어서, 도 4에 예시된 일반적인 제약 도입 메커니즘은 신뢰의 체인의 2개 이상의 레벨에 적용될 수 있다.
주어진 인증 도메인에 대한 미래 제약 또는 주어진 목표 도메인에 대한 제약(72)으로서 설정될 수 있는 여러 종류의 제약의 일부 예를 아래에서 논의한다.
일례로, 미래 제약은 신뢰의 계층적 체인의 하나 이상의 미리 정해진 레벨에서 도메인에 의해 인증될 명령에 의해 만족될 수 있는 레벨-특정 제약일 수 있다. 예를 들면, 제약은 제약들을 특정하여야 할 트리의 레벨(예, 레벨 1만, 또는 레벨 1 및 레벨 2)을 특정하는 파라미터와 관련될 수 있다. 예를 들면, 일부 제한은 어플리케이션 레벨 또는 루트 도메인의 직계 자식을 나타내는 레벨 1에서만을 목표로 할 수 있다.
다른 한편, 다른 제약은 일반적이어서 인증 도메인의 모든 후손에 적용될 수 있다. 예를 들면, 이들은 트리에서 동일한 가지 내에 구성된 각각의 후속 도메인의 미래 제약 세트를 전파하는 도 6의 예에서 별표가 마킹된 제약일 수 있다. 따라서, 일부 제약은 목표 도메인 자체 및 신뢰의 체인에서 목표 도메인의 임의의 후손 도메인에 의해 인증될 명령에 의해 만족될 수 있는 후손 제약일 수 있다.
예를 들면, 소정의 암호화 알고리즘을 안전하게 처리하는 것을 보장하기 위해, 주어진 도메인은 그 아래의 도메인들이 일부의 조건, 예컨대, 명령(60)의 서명 비트맵(70)이 전체 명령(60)이 서명(68)에 의해 보호되어 인증되는 것을 나타내야 하는 일부의 조건을 적용하는 것이 필요할 수 있다. 제약을 시행하는 이러한 서명은 소정의 집단이 서명(68)을 무효화되게 하지 않고 명령의 일부를 수정할 수 있게 하는 루프홀의 차단하는 데 유용할 수 있다. 주어진 집단은 이 루프홀을 방해하는 것을 원할 수 있으므로, 이러한 제약을 시행하는 서명을 특정하는 것으로써, 이것은 상당한 보안을 보장한다(구체적으로 이러한 미래 제약이 미래 제약을 설정하는 도메인의 모든 후손에 적용되는 후손 제약으로서 마킹되는 경우).
미래 제약은 목표 도메인 또는 목표 도메인의 후손 도메인에 의해 인증될 하나 이상의 미리 정해진 종류의 명령에 대해 만족될 수 있는 종류-특정 제약으로서도 마킹될 수 있다. 예를 들면, 제약은 도메인 설치 명령 또는 다른 종류의 명령에만 적용될 수 있다. 따라서, 이러한 제약의 경우, 인증 프로세스는 명령 ID(62)를 확인하는 것을 포함할 수 있고, 제약이 적용하는 미리 정해진 값의 세트 중 하나이면, 제약 자체는 확인되지만 이와 달리 종류-특정 제약은 무시될 수 있다.
종류-특정 제약의 하나의 예는 전자 기기에 신뢰의 계층적 체인의 새로운 도메인을 설치하기 위한 도메인 설치 명령에 적용될 수 있다. 제약은 새로운 도메인이 아직 명령을 인증할 수 없어서 그렇지 않은 경우 도메인 설치 명령이 거절되게 되는 차단 상태로 설치되어야 함을 특정하는 차단 제약일 수 있다. 새로이 설치된 도메인의 차단 해제롤 통해, 명령의 인증이 허용되는 차단 해제 상태가 계속될 수 있고, 수신될 추가의 차단 해제 명령이 필요할 수 있다. 차단 해제 명령의 인증은 설치 명령 자체에 의해 특정되지 않아야 하는 일부 제약을 필요로 할 수 있다. 예를 들면, 차단 해제 명령은 예컨대, 차단 해제 명령이 설치 명령 자체를 제공하거나 전자 기기에 대한 차단 해제 명령을 인증하는 일부 비밀 식별자를 제공하는 집단이 아닌 다른 집단에 의해 인증되었음을 검증하는 일부 다른 암호화 정보를 특정할 수 있다. 예를 들면, 치단 해제 명령은 차단 해제 명령이 새로운 도메인의 차단 해제를 예컨대 특정 기기 ID에 의해 식별되는 특정 전자 기기로 제한하는 경우에만 인증될 수 있는 것을 특정하는 차단 해제 제약을 받을 수 있다. 예컨대, 차단 해제 명령은 인증되도록 하기 위해 기기 자체의 고유한 식별자를 특정하는 것이 필요할 수 있다.
이 접근법은 신뢰의 계층적 체인에서 앞선 도메인에 관련된 집단이 후손 도메인이 무제한의 기기에 추가의 도메인의 형성을 인증할 수 없는 것을 보장하는 조치를 부과하는 것을 원할 수 있기 때문에 유용할 수 있다. 예를 들면, 신뢰 내의 인증체로서 역할하는 주어진 집단에 초기에 권한을 부여한 후, 루트 인증 기관은 후속으로 해당 집단이 책임감 있게 행동하지 않아서 필요한 보안도 체크를 적용하지 않고 명령을 인가하고 있음을 확인할 수 있어서 새로운 암호화 아이덴티티를 제공할 수 있는 상기 집단의 능력의 취소를 원할 수 있다. 새로운 도메인이 차단된 상태로 설치되는 것을 필요로 하는 것에 의해, 이것은 차단 해제 명령이 내려질 때 추가의 체크가 부과되도록 할 수 있다. 예를 들면, 차단 해제 명령의 인증은 전자 기기가 서버 또는 다른 기기와 접촉하거나 차단 해제가 예컨대 필요한 경우 도메인의 추가 생성을 제한하는 수단을 제공하는 서버에 의해 인증된 것을 검증하는 차단 해제 코드를 제공하는 것을 필요로 할 수 있다. 또한, 차단 해제 명령을 특별한 전자 기기에 특정되게 만드는 것에 의해, 이것은 암호화 데이터가 하나의 기기로부터 다른 기기로 복사되는 것을 방지할 수 있어서 있을 수 있는 보안 방지를 피할 수 있다.
따라서, 보다 높은 도메인의 제어하에서 낮은 트리 레벨에 도입될 이러한 차단 및 차단 해제 제약을 위한 메커니즘을 제공하는 것에 의해, 이것은 보다 높은 도메인이 자체적으로 서명되지 않는 메시지를 인증하는 방식을 안정하게 제어할 수 있게 한다.
다른 종류의 미래 제약은 어떤 종류의 명령이 주어진 목표 도메인 또는 후손 도메인에 의해 인증이 허용되는 지를 특정할 수 있다. 예를 들면, 일부 도메인은 소정의 종류의 명령의 인가를 간단하게 허용하지 않을 수 있으며, 이는 후속하는 도메인들이 미래 제약을 설정하는 도메인의 즉각적인 제어를 벗어나 인증되고 있더라도 트리의 후속 레벨에서의 도메인의 제약 세트(80) 내로 제약들이 도입되도록 미래 제약에 의해 특정될 수 있다.
다른 종류의 미래 제약은 적어도 하나의 다른 미리 정해진 제약이 역시 명령에 의해 만족된다면 주어진 명령에 의해 만족될 수 있는 조건적 제약을 특정할 수 있다. 따라서, 제약의 도입 여부는 다른 제약이 적용되는 것에 의존할 수 있다. 예를 들면, 주어진 조건적 제약은 주어진 후손 도메인이 특정 암호화 알고리즘(예, SHA)을 도입하는 경우, 해당 처리에 대한 암호화 정보가 소정의 날짜보다 새롭거나 소정의 기간 내에 갱신된 버전의 날짜를 가져야 하는 추가적인 제약도 역시 부과되어야 함을 특정할 수 있다. 조건적 제약을 특정할 수 있는 능력을 제공하는 것에 의해, 트리의 주어진 레벨의 인증 도메인은 후속하는 후손 도메인에 의해 선택적으로 적용될 수 있지만 관련 제약에 노출되지 않을 것이라면 다른 명령에 해당 제약을 부과할 필요가 없는 더 세부적인 처리들을 제어할 수 있다.
다른 옵션은 미래 제약 세트가 다른 제약에 의해 무효로 되지 않으면 명령에 의해 만족될 수 있는 적어도 하나의 디폴트 제약을 특정할 수 있다는 것이다. 따라서, 미래 제약은 후손 도메인이 벌써 일부 형태의 제약을 적용하지 않는 경우 안전 장치 옵션을 제공하는 데 사용될 수 있다. 예를 들면, 디폴트는 소정의 날짜보다 오랜 서명을 갖는 명령이 후손 도메인이 이미 다른 마감 날짜를 부과하고 있지 않는 다면 거절되어야 하는 것을 특정함으로써 어떤 마감 날짜도 부과하고 있지 않은 소정의 도메인에 대해 보호를 제공할 수 있다.
일부의 경우, 적용되는 제약은 주어진 도메인에 의해 인증되는 명령에는 물론, 전자 기기(2)에 의해 수행되는 다른 동작에도 영향을 미칠 수 있다. 예를 들면, 미래 제약은 전자 기기가 미리 정해진 동작 모드로 동작하는 경우에만 명령이 인증될 수 있는 것을 특정하는 기기 모드 제약을 특정할 수 있다. 예를 들면, 일부 기기는 소정의 보안 요건이 만족되어 일부의 명령이 기기가 해당 동작 모드로 동작하는 경우에만 인증될 수 있는 것을 보장하는 소정의 암호화 프로토콜에 관련된 동작 모드를 가질 수 있다. 이 경우, 명령의 인증은 기기가 해당 모드로 전환되는 것을 필요로 할 수 있고, 이것은 기기에 의해 수행되는 다른 동작(인증된 명령에 관련된 동작은 물론)에 영향을 미칠 수 있다. 따라서, 인증 도메인은 기기 전체에 영향을 미치는 제약을 설정할 수 있고, 주어진 후손 도메인에 의해 명령이 인증될 때 명령이 조치되는 것을 보장하는 메커니즘이 적용되는 동안, 이것은 해당 제약의 부과에 의해 영향을 받는 동작만이 아닐 수 있다.
상기 예들은 목표 도메인을 구성하기 위한 도메인 구성 명령이 인도 도메인에 의해 인증되고, 목표 도메인이 인증 도메인의 후손인 경우를 보여준다. 그러나, 목표 도메인을 구성하는 도메인 구성 명령이 목표 도메인 자체에 의해 인증되는 경우(즉, 목표 도메인이 인증 도메인과 동일한 경우)에 미래 제약을 결합하는 기술도 역시 사용될 수 있다. 이 경우, 결합 기술은 인증/목표 도메인을 형성하는 구성 데이터의 일부로서 저장되는 제로, 하나 이상의 제약의 결합된 세트를 생성하도록 인증(목표) 도메인에 의해 특정되는 하나 이상의 미래 제약이 도메인 구성 명령에 특정된 제약과 결합되는 데 유용할 수 있다. 이래 제약은 앞선 조상 도메인에 의해 설정된 앞선 미래 제약으로부터 온 것이기 때문에(예, 레벨 2 도메인(50-2)에 대한 미래 제약(X, Y)이 궁극적으로 루트 도메인(50-0)에서 온 경우의 도 6의 예를 참조), 명령이 목표 도메인 자체에 의해 인증된 경우에도 미래 제약과 도메인 구성 명령으로부터의 제약을 결합하는 것은 목표 도메인이 인증 도메인의 후손인 경우의 상기 예와 동일한 방식으로 신뢰의 선정된 체인을 통해 제약의 "침투"(trickling down)를 구현하는 데 도움이 된다. 목표 도메인이 자체의 구성 명령의 인증을 허용하는 일부 실시예에서, 별개의 미래 제약 세트는 주어진 도메인에 대해 정해질 수 있는 데, 그 하나는 해당 도메인 자체를 목표로 하는 명령을 인증시 적용될 수 있고 다른 하나는 후손 도메인을 구성하기 위한 명령을 인증시 적용된다. 이것은 후손 도메인에 적용될 수 있는 모든 미래 제약이 인증 도메인 자체에 필요할 수 있는 것은 아니기 때문에 유용할 수 있다.
일부 실시예에서, 도 5의 방법은 전자 기기(2) 내의 범용 프로세서(4)에 실행되는 메모리(6)에 저장된 컴퓨터 프로그램에 의해 제어될 수 있다. 다른 실시예에서, 전자 기기(2)는 인증 프로세스의 적어도 일부를 수행하기 위한 한 벌의 전용 하드웨어를 가질 수 있다. 일부 구현예는 프로세스의 일부(예, 인증 단계 또는 미래 제약의 결합 단계)가 전용 하드웨어에 의해 처리되고 다른 일부는 범용 프로세서 상의 소프트웨어로 수행되는 결합된 하드웨어-소프트웨어 접근접을 이용할 수 있다.
따라서, 전자 기기는 전자 기기 상의 신뢰의 계층적 체인의 목표 도메인의 구성을 요청하는 도메인 구성 명령을 수신하여 인증 도메인에 의해 제공되는 암호화 아이덴티티를 기초로 도메인 구성 명령이 인증될 때 도메인 구성 명령을 인증하고 도메인 구성 명령에 의해 특정된 적어도 하나의 목표 제약과 인증 도메인에 의해 특정된 적어도 하나의 미래 제약을 결합하여 목표 도메인에 의해 인증될 명령에 의해 만족될 제로 또는 하나 이상의 제약을 포함하는 결합된 제약 세트를 생성하고, 상기 결합된 제약 세트의 지시를 저장하는 인증 회로를 포함할 수 있다. 인증 회로는 소프트웨어 또는 한 벌의 전용 인증 하드웨어 또는 양자의 혼합(예, 프로세스의 일부를 수행하기 위한 일부 전용 하드웨어 및 프로세스의 다른 일부를 수행하기 위한 범용 소프트웨어-제어된 처리 회로)의 제어하에 동작하는 범용 프로세서(4)일 수 있다.
요약하면, 여기에 설명되는 기술은 신뢰의 계층적 체인의 주어진 도메인이 추가의 제약을 명령의 진위를 검증하도록 후손 도메인에 의해 사용되는 제약들 내로 도입할 수 있게 함으로써 모든 후속 레벨에 의해 사용되는 모든 제약이 상부 레벨 도메인에 알려지는 탑 다운 접근법으로 가능하지 않을 수 있는 다른 집단으로의 책임을 위임하는 융통성을 여전히 허용하면서 더 우수한 보안을 제공한다.
본 발명의 예시적인 실시예들을 첨부 도면을 참조로 여기에 상세히 설명하고 있지만, 본 발명은 상기 정확한 실시예에 한정되지 않으며 첨부된 특허청구범위에 의해 정의되는 본 발명의 범위 및 취지를 벗어나지 않고 당업자에 의해 다양한 변경 및 변형이 이루어질 수 있는 것으로 이해된다.

Claims (26)

  1. 전자 기기 내에서 신뢰의 계층적 체인의 목표 도메인을 구성하는 방법으로서, 상기 목표 도메인은 상기 전자 기기에 의해 실행될 인증 명령을 위한 암호화 아이덴티티를 제공하며, 상기 방법은:
    상기 전자 기기 상에 상기 목표 도메인의 구성을 요청하고 상기 목표 도메인에 의해 인증될 명령에 의해 만족될 적어도 하나의 목표 도메인 제약을 특정하는 도메인 구성 명령을 수신하는 단계와;
    인증 도메인에 의해 제공되는 암호화 아이덴티티를 기초로 상기 도메인 구성 명령을 인증하는 단계로, 상기 목표 도메인은 상기 신뢰의 계층적 체인에서 상기 인증 도메인 또는 해당 인증 도메인의 후손 도메인인, 상기 도메인 구성 명령을 인증하는 단계와;
    상기 도메인 구성 명령이 인증될 때, 상기 적어도 하나의 목표 도메인 제약과 상기 인증 도메인에 의해 특정되는 적어도 하나의 미래 제약을 결합하여 상기 목표 도메인에 의해 인증될 명령에 의해 만족될 제로 또는 하나 이상의 제약을 포함하는 결합된 제약 세트를 생성하고, 상기 결합된 제약 세트의 지시를 저장하는 단계와;
    상기 도메인 구성 명령이 인증되는 것에 응답하여, 상기 목표 도메인의 후손 도메인을 구성할 때 다른 제약과 결합되는 적어도 하나의 목표 도메인 미래 제약의 지시를 저장하는 단계를 포함하고,
    상기 적어도 하나의 목표 도메인 미래 제약은:
    상기 적어도 하나의 인증 도메인 미래 제약과;
    상기 도메인 구성 명령에 의해 특정되는 적어도 하나의 목표 도메인 미래 제약중 적어도 하나에 따라 선택되는 것을 특징으로 하는 방법.
  2. 제1항에 있어서,
    상기 목표 도메인의 구성 후에 수신되고 상기 목표 도메인에 의해 인증될 후속 명령은 상기 명령이 상기 결합된 제약 세트를 만족시키는 지 여부를 기초로 인증되는 것을 특징으로 하는 방법.
  3. 삭제
  4. 삭제
  5. 제1항에 있어서,
    동일한 종류의 명령에 해당 명령이 인증될 수 있는 신뢰의 계층적 체인의 레벨에 따라 상이한 제약 세트가 적용되는 것을 특징으로 하는 방법.
  6. 제1항에 있어서,
    상기 적어도 하나의 미래 제약은 신뢰의 계층적 체인에서 상기 목표 도메인 및 해당 목표 도메인의 임의의 후손 도메인에 의해 인증될 명령에 의해 만족될 적어도 하나의 후손 제약을 포함하는 것을 특징으로 하는 방법.
  7. 제1항에 있어서,
    상기 적어도 하나의 미래 제약은 상기 신뢰의 계층적 체인의 하나 이상의 미리 정해진 레벨의 도메인에 의해 인증될 명령에 의해 만족될 적어도 하나의 레벨-특정 제약을 포함하는 것을 특징으로 하는 방법.
  8. 제1항에 있어서,
    상기 적어도 하나의 미래 제약은 상기 목표 도메인 또는 상기 목표 도메인의 후손 도메인에 의해 인증될 명령의 하나 이상의 미리 정해진 종류에 대해 만족될 적어도 하나의 종류-특정 제약을 포함하는 것을 특징으로 하는 방법.
  9. 제1항에 있어서,
    상기 적어도 하나의 미래 제약은 상기 목표 도메인 또는 상기 목표 도메인의 후손 도메인에 의해 인증이 허용되는 명령의 종류를 특정하는 적어도 하나의 종류-제한 제약을 포함하는 것을 특징으로 하는 방법.
  10. 제1항에 있어서,
    상기 적어도 하나의 미래 제약은 적어도 하나의 미리 정해진 제약이 상기 명령에 의해 만족될 수 있으면 상기 명령에 의해 만족될 적어도 하나의 조건적 제약을 포함하는 것을 특징으로 하는 방법.
  11. 제1항에 있어서,
    상기 적어도 하나의 미래 제약은 다른 제약에 의해 무효로 되지 않으면 상기 명령에 의해 만족될 적어도 하나의 디폴트 제약을 포함하는 것을 특징으로 하는 방법.
  12. 제1항에 있어서,
    상기 적어도 하나의 미래 제약은 상기 전자 기기가 미리 정해진 동작 모드로 동작하는 경우에만 명령이 인증될 수 있는 것을 특정하는 적어도 하나의 기기 모드 제약을 포함하는 것을 특징으로 하는 방법.
  13. 제1항에 있어서,
    상기 적어도 하나의 미래 제약은 상기 전자 기기에 상기 신뢰의 계층적 체인의 새로운 도메인을 설치하는 도메인 설치 명령이 상기 목표 도메인 또는 상기 목표 도메인의 후손 도메인에 의해 인증될 수 있되, 상기 도메인 설치 명령이 상기 새로운 도메인이 명령을 인증할 수 없는 차단 상태로 상기 새로운 도메인이 설치될 수 있는 것을 특정할 때에만 상기 인증이 이루어지도록 특정하는 차단 제약을 포함하는 것을 특징으로 하는 방법.
  14. 제13항에 있어서,
    상기 새로운 도메인은 차단 해제 명령에 의해 차단 해제되는 것을 특징으로 하는 방법.
  15. 제14항에 있어서,
    상기 적어도 하나의 미래 제약은 상기 차단 해제 명령이 상기 새로운 도메인의 차단 해제를 특정 전자 기기로 제한하는 경우에만 상기 목표 도메인 또는 상기 목표 도메인의 후손 도메인에 의해 상기 차단 해제 명령이 인증될 수 있는 것을 특정하는 차단 해제 제약을 포함하는 것을 특징으로 하는 방법.
  16. 제1항에 있어서,
    상기 인증될 명령은 디지털 서명과 해당 디지털 서명에 의해 명령의 어떤 부분이 인증되는 지를 식별하는 서명 메타데이터를 특정하고,
    상기 미래 제약은, 상기 서명 메타데이터가 전체 명령이 디지털 서명에 의해 인증되는 것을 특정할 때에만 상기 목표 도메인 또는 상기 목표 도메인의 후손 도메인에 의해 명령이 인증되는 것을 특정하는 제약을 시행하는 서명을 포함하는 것을 특징으로 하는 방법.
  17. 제1항에 있어서,
    적어도 일종의 제약의 경우, 상기 결합된 제약 세트는 상기 적어도 하나의 목표 도메인 제약과 상기 적어도 하나의 미래 제약 중 적어도 하나가 상기 적어도 일종의 제약을 특정할 때 상기 적어도 일종의 제약을 포함하는 것을 특징으로 하는 방법.
  18. 제1항에 있어서,
    적어도 일종의 제약의 경우, 상기 결합된 제약 세트는 상기 적어도 하나의 목표 도메인 제약 및 상기 적어도 하나의 미래 제약 모두가 상기 적어도 일종의 제약을 특정할 때 상기 적어도 일종의 제약을 포함하는 것을 특징으로 하는 방법.
  19. 제1항에 있어서,
    적어도 일종의 제약의 경우, 상기 결합된 제약 세트는 상기 적어도 일종의 제약이 상기 적어도 하나의 목표 도메인 제약과 상기 적어도 하나의 미래 제약 중 하나에 의해 독점적으로 특정될 때 상기 적어도 일종의 제약을 포함하는 것을 특징으로 하는 방법.
  20. 제1항에 있어서,
    적어도 일종의 제약의 경우, 상기 결합된 미래 제약 세트는 상기 적어도 일종의 제약이 상기 적어도 하나의 목표 도메인 제약에 의해 특정되지만 상기 적어도 하나의 미래 제약에 의해 특정되지 않을 때 상기 적어도 일종의 제약을 포함하는 것을 특징으로 하는 방법.
  21. 제1항에 있어서,
    상기 도메인 구성 명령은 상기 전자 기기에 상기 목표 도메인의 설치를 요청하는 도메인 설치 명령을 포함하는 것을 특징으로 하는 방법.
  22. 제1항에 있어서,
    상기 도메인 구성 명령은 상기 전자 기기에 상기 목표 도메인의 파라미터의 갱신을 요청하는 도메인 갱신 명령을 포함하는 것을 특징으로 하는 방법.
  23. 제1항, 제2항 및 제5항 내지 제22항 중 어느 한 항의 방법을 수행하도록 전자 기기를 제어하는 프로그램 명령을 포함하는, 컴퓨터 판독 가능한 저장매체에 저장된 컴퓨터 프로그램.
  24. 제23항의 컴퓨터 프로그램이 저장된 컴퓨터 판독 가능한 저장매체.
  25. 처리 회로와;
    제23항에 따른 컴퓨터 프로그램을 저장한 저장 회로를 포함하는 것을 특징으로 하는 전자 기기.
  26. 전자 기기로서:
    상기 전자 기기에 신뢰의 계층적 체인의 목표 도메인-상기 전자 기기에 의해 실행될 명령을 인증하기 위한 암호화 아이덴티티를 제공함-의 구성을 요청하는 도메인 구성 명령-상기 목표 도메인에 의해 인증될 명령에 의해 만족될 적어도 하나의 목표 도메인 제약을 특정함-을 수신하여, 인증 도메인에 의해 제공되는 암호화 아이덴티티를 기초로 상기 도메인 구성 명령을 인증하도록 구성된 인증 회로를 포함하고,
    상기 목표 도메인은 상기 신뢰의 계층적 체인에서 상기 인증 도메인 또는 상기 인증 도메인의 후손 도메인이며,
    상기 도메인 구성 명령이 인증될 때, 상기 인증 회로는 상기 적어도 하나의 목표 도메인 제약과 상기 인증 도메인에 의해 특정되는 적어도 하나의 미래 제약을 결합하여 상기 목표 도메인에 의해 인증될 명령에 의해 만족될 제로 또는 하나 이상의 제약을 포함하는 결합된 제약 세트를 생성하고, 상기 결합된 제약 세트의 지시를 저장하고, 상기 도메인 구성 명령이 인증되는 것에 응답하여, 상기 목표 도메인의 후손 도메인을 구성할 때 다른 제약과 결합되는 적어도 하나의 목표 도메인 미래 제약의 지시를 저장하도록 구성되고,
    상기 적어도 하나의 목표 도메인 미래 제약은:
    상기 적어도 하나의 인증 도메인 미래 제약과;
    상기 도메인 구성 명령에 의해 특정되는 적어도 하나의 목표 도메인 미래 제약중 적어도 하나에 따라 선택되는 것을 특징으로 하는 전자 기기.
KR1020170109111A 2016-09-06 2017-08-29 신뢰의 계층적 체인용 미래 제약 KR102500619B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB1615135.9A GB2553376A (en) 2016-09-06 2016-09-06 Future constraints for hierarchical chain of trust
GB1615135.9 2016-09-06

Publications (2)

Publication Number Publication Date
KR20180027343A KR20180027343A (ko) 2018-03-14
KR102500619B1 true KR102500619B1 (ko) 2023-02-16

Family

ID=57139912

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170109111A KR102500619B1 (ko) 2016-09-06 2017-08-29 신뢰의 계층적 체인용 미래 제약

Country Status (5)

Country Link
US (1) US10594493B2 (ko)
EP (1) EP3291123B1 (ko)
KR (1) KR102500619B1 (ko)
CN (1) CN107798233B (ko)
GB (1) GB2553376A (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10715526B2 (en) 2016-12-14 2020-07-14 Microsoft Technology Licensing, Llc Multiple cores with hierarchy of trust
US10416991B2 (en) * 2016-12-14 2019-09-17 Microsoft Technology Licensing, Llc Secure IoT device update
US10402273B2 (en) 2016-12-14 2019-09-03 Microsoft Technology Licensing, Llc IoT device update failure recovery
US20190097785A1 (en) * 2017-09-27 2019-03-28 Silicon Laboratories Inc. Apparatus for Clock-Frequency Variation in Electronic Circuitry and Associated Methods
US11562086B2 (en) 2018-06-27 2023-01-24 International Business Machines Corporation Filesystem view separation for data confidentiality and integrity using lattice-based security domains
US11775638B2 (en) 2018-06-27 2023-10-03 International Business Machines Corporation Identification and extraction of key forensics indicators of compromise using subject-specific filesystem views

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020040936A1 (en) 1998-10-27 2002-04-11 David C. Wentker Delegated management of smart card applications
US20080066159A1 (en) * 2006-09-08 2008-03-13 Microsoft Corporation Controlling the Delegation of Rights
WO2010095432A1 (en) 2009-02-18 2010-08-26 Panasonic Corporation Information processing device and information processing method

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6760441B1 (en) * 2000-03-31 2004-07-06 Intel Corporation Generating a key hieararchy for use in an isolated execution environment
US7159240B2 (en) * 2001-11-16 2007-01-02 Microsoft Corporation Operating system upgrades in a trusted operating system environment
EP1668815B1 (en) * 2003-09-29 2019-06-12 Ayman, LLC Delegated certificate authority
US9130921B2 (en) * 2003-09-30 2015-09-08 Ca, Inc. System and method for bridging identities in a service oriented architectureprofiling
US8438658B2 (en) * 2006-02-02 2013-05-07 International Business Machines Corporation Providing sealed storage in a data processing device
JP4198719B2 (ja) * 2006-05-12 2008-12-17 シャープ株式会社 複合機、複合機の制御方法、複合機制御システム、プログラムおよび記録媒体
US8898267B2 (en) * 2009-01-19 2014-11-25 Netapp, Inc. Modifying information lifecycle management rules in a distributed system
US20110010543A1 (en) * 2009-03-06 2011-01-13 Interdigital Patent Holdings, Inc. Platform validation and management of wireless devices
EP2814277A1 (en) * 2009-04-15 2014-12-17 Interdigital Patent Holdings, Inc. Validation and/or authentication of a device for communication with a network
CN107332816A (zh) * 2009-04-20 2017-11-07 交互数字专利控股公司 多个域和域所有权的系统
WO2011109772A2 (en) * 2010-03-05 2011-09-09 Interdigital Patent Holdings, Inc. Method and apparatus for providing security to devices
US20150188710A1 (en) * 2013-12-28 2015-07-02 Simon Johnson Offloading functionality from a secure processing environment
CN103973451B (zh) * 2014-05-05 2017-04-12 西南交通大学 一种用于分布式网络系统的跨信任域认证方法
CN104468712B (zh) * 2014-10-31 2018-05-29 中标软件有限公司 轻量级可信计算平台及其通信方法、信任链建立方法
CN104378210B (zh) * 2014-11-26 2018-01-26 成都卫士通信息安全技术有限公司 跨信任域的身份认证方法
US9462006B2 (en) * 2015-01-21 2016-10-04 Palo Alto Research Center Incorporated Network-layer application-specific trust model

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020040936A1 (en) 1998-10-27 2002-04-11 David C. Wentker Delegated management of smart card applications
US20080066159A1 (en) * 2006-09-08 2008-03-13 Microsoft Corporation Controlling the Delegation of Rights
WO2010095432A1 (en) 2009-02-18 2010-08-26 Panasonic Corporation Information processing device and information processing method

Also Published As

Publication number Publication date
GB201615135D0 (en) 2016-10-19
KR20180027343A (ko) 2018-03-14
US20180069707A1 (en) 2018-03-08
US10594493B2 (en) 2020-03-17
GB2553376A (en) 2018-03-07
EP3291123A1 (en) 2018-03-07
CN107798233B (zh) 2022-01-07
EP3291123B1 (en) 2020-05-06
CN107798233A (zh) 2018-03-13

Similar Documents

Publication Publication Date Title
KR102500619B1 (ko) 신뢰의 계층적 체인용 미래 제약
US20200125756A1 (en) Implementing access control by system-on-chip
US9268971B2 (en) Secure processor supporting multiple security functions
JP4689946B2 (ja) 安全なデータを使用して情報処理を実行するシステム
EP1453241B1 (en) Revocation of a certificate in a digital rights management system based on a revocation list from a delegated revocation authority
US6715077B1 (en) System and method to support varying maximum cryptographic strength for common data security architecture (CDSA) applications
CN113168476A (zh) 操作系统中个性化密码学安全的访问控制
KR20090109589A (ko) 프로세서 내에서의 보호된 리소스들로의 억세스에 대한 안전한 보호 방법
US8953805B2 (en) Authentication information generating system, authentication information generating method, client apparatus, and authentication information generating program for implementing the method
JPH10171648A (ja) アプリケーションを認証する装置
JPH1185622A (ja) コア・データ機密事項の保護記憶
EP3912064A1 (en) Apparatus and method for dynamic configuration of trusted application access control
KR20090052321A (ko) 다기능 제어 구조를 이용하는 콘텐트 제어 시스템과 방법
Nyman et al. Citizen electronic identities using TPM 2.0
KR20090028806A (ko) 증명서 철회 리스트를 이용한 콘텐트 제어 시스템과 방법
KR20190070691A (ko) 프로그램 실행권한 인증 방법 및 시스템
CN117063174A (zh) 用于通过基于app的身份的app间相互信任的安全模块及方法
KR20230137422A (ko) 디지털 장치를 위한 신뢰할 수 있는 컴퓨팅
US20230053907A1 (en) Method and apparatus for flexible configuration managment using external identity management service
Kostiainen et al. Key attestation from trusted execution environments
Sitawarin iOS Security
WO2023186328A1 (en) Method and apparatus for providing an application-level attestation for trusted applications
Module Trusted Computing Group Protection Profile PC Client Specific Trusted Platform Module TPM Family 1.2; Level 2
WO2023237197A1 (en) Attested one-time on-device secure api authorization
Vossaert et al. Client-side biometric verification based on trusted computing

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant