KR101544629B1 - 안전하고 신뢰성있는 시간 기술을 위한 방법 및 장치 - Google Patents

안전하고 신뢰성있는 시간 기술을 위한 방법 및 장치 Download PDF

Info

Publication number
KR101544629B1
KR101544629B1 KR1020107020972A KR20107020972A KR101544629B1 KR 101544629 B1 KR101544629 B1 KR 101544629B1 KR 1020107020972 A KR1020107020972 A KR 1020107020972A KR 20107020972 A KR20107020972 A KR 20107020972A KR 101544629 B1 KR101544629 B1 KR 101544629B1
Authority
KR
South Korea
Prior art keywords
time
stamp
tick
tpm
tcv
Prior art date
Application number
KR1020107020972A
Other languages
English (en)
Other versions
KR20100138944A (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 KR20100138944A publication Critical patent/KR20100138944A/ko
Application granted granted Critical
Publication of KR101544629B1 publication Critical patent/KR101544629B1/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/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • G06F21/35User authentication involving the use of external additional devices, e.g. dongles or smart cards communicating wirelessly
    • 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
    • G06F21/72Protecting 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 in cryptographic circuits
    • G06F21/725Protecting 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 in cryptographic circuits operating on a secure reference time value
    • 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/81Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer by operating on the power supply, e.g. enabling or disabling power-on, sleep or resume operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/101Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/121Timestamp
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/61Time-dependent

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)
  • Debugging And Monitoring (AREA)
  • Electric Clocks (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Hardware Redundancy (AREA)

Abstract

신뢰성있는 컴퓨팅 방법에 기초하여 신뢰성있는 로컬 시간을 확립하는 방법 및 장치가 개시된다. 개념들은 신뢰가능한 외부 시간 소스가 수정 및/또는 리셋에 이용가능한 빈도 및 정확도에 의해 그리고 이 외부 시간 소스가 상업적 시나리오에 있어서 얼마나 신뢰성있는지에 의해 등급화될 수 있기 때문에 개념들이 스케일화한다. 이 기술은 또한 디바이스와 신뢰성있는 외부 시간 소스 사이에 서로 다른 경로의 수 및 홉들의 수가 변할 수 있음을 고려한다. TPM에 의해 보호받는 로컬 클록 관련 값이 외부 클록에 안전하게 결합된다. 시간 레퍼런스를 내부 시간을 제공하는 시간 소스보다 아마도 더 저렴한 다른 소스에 의해 제공되는 감사 데이터에 도입하도록 정확도 스테이트먼트(AS)의 시스템을 추가한다.

Description

안전하고 신뢰성있는 시간 기술을 위한 방법 및 장치{A METHOD AND APPARATUS FOR SECURE TRUSTED TIME TECHNIQUES}
본 방법 및 장치는 무선 통신에 관한 것이다.
다양한 비지니스 케이스에서의 특정 이벤트들에 대한 실제 시간을 기록하기 위해서는 신뢰성있는 로컬 시간(local time)이 필요하다. 예를 들어, "오프 라인(off-line)"-시나리오에서의 특정한 소비 데이터가 기록되면, 소비 날짜를 보장하기 위해 신뢰할 수 있는 내부 클록이 필요하다. 애플리케이션 영역은 에너지 생성(예를 들어, 분산형 플랜트)의 애플리케이션, 동기화 소프트웨어에서부터 DRM(digital rights management) 사용 케이스에까지 이른다. 일반 공통 요소는 외부 시간 허가부(authority)가 물리적 또는 경제적 외부 특성으로 인해 항상 이용가능한 것은 아니라는 점이다.
신뢰성있는 컴퓨팅(TC; Trusted Computing)은 다른 참여자들에 시간 관련 카운터 값들을 전달하고 신뢰성있는 플랫폼 내부에서 이들을 보호하는 수단을 신뢰성있는 플랫폼 모듈(TPM; Trusted Platform Module) 내에 제공한다. 그러나, 안전한 타이밍을 가능하게 하고 정확한 스테이트먼트를 제공하기 위해서는 이들 제한된 능력을 확장하는 것이 유용하다.
신뢰성있는 플랫폼들의 능력들을 이용하여 신뢰성있는 시간 스테이트먼트를 획득하기 위한 목표의 관점에서, 일정 초기 시간에 플랫폼의 틱(tick) 카운터 값들이 증명가능한 정해진 정확도로 특정의 실시간 값들에 대응하고 있음을 외부의 검증기(verifier)로 하여금 신뢰하게끔 스테이트먼트가 허용하는 경우, TCG 사양은 복수의 단점을 갖는다.
첫번째로, 특정한 플랫폼(P)에서의 신뢰성에 대한 연관성이 존재하지 않는다. 즉, 틱 스탬프 혼자서는, 틱 스탬프가 어느 상태에서 어느 플랫폼으로부터 발생되었는지를 표시하지 않는다. 심지어, 플랫폼이 자신의 내부에 하드웨어 TPM을 갖는 신뢰성있는 플랫폼이였는지도 표시하지 않는다. 틱 스탬프의 데이터 구조는 특히 TPM들의 소프트웨어 에뮬레이션을 이용하여 누군가에 의해 위조될 수 있다. 따라서, 신뢰성있는 틱 스탬핑 방법을 갖는 것이 바람직하다.
두번째로, TIR은 매우 정확할 수도 또는 매우 정확할 수도 없는 TPM 인스턴스로 미리 설치된 팩토리 값(factory value)이며, 아마도 TPM의 수명에 걸쳐 정확도가 느슨해질 것이다. TIR은 TCV들로부터 실시간 값들을 계산하는데 있어 결정적이기 때문에 언제든지 실제 TIR을 진단하는 신뢰성있는 방법들이 바람직하다.
세번째로, TCG 사양들에 의해 정의된 정확도 스테이트먼트는 TCV들과 관련된 오직 하나의 시점만을 수정한다. 표명의 신뢰성을 유지하면서, 정확도의 개선, 즉 실시간 클록값에 대한 일정한 TCV 간격들의 관계에 대한 보다 엄격한 제한이 바람직할 것이다.
네번째로, 분산형 시스템들에서의 시간 동기화는 정확도를 얻기 위해 많은 시간 소스들을 포함할 수 있다. 이들 방법을 포함한 신뢰성있는 시간 스테이트먼트의 확장이 바람직할 것이다.
마지막으로, TCV들의 이용은 TPM 사양에 따라 예측불가능한 경우 리셋되어야 하기 때문에 제약을 심하게 받는다. 액티브 상태의 틱 카운트 세션이 TSN으로 고유하게 이루어진 경우에도, 틱 카운터 세션들 간의 RTC 값들에 대해 TCV들의 연관성을 연결하는 것이 바람직할 것이다. 예를 들어, DRM(Digital Rights Management)의 환경에서는 TCV들에 대한 실제 사용 케이스가 또한 바람직할 것이다.
본 방법은 안전하고 신뢰성있는 시간 기술을 위한 방법 및 장치를 제공하기 위한 것이다.
본 방법 및 장치를 이용하여 무선 통신에서의 시간 값들을 보호한다. 본 장치에는 TPM이 설치되어 있으며, TPM은 시간 허가부(TA; time authority)와의 메시지들의 교환을 수행하여 TA에 의해 제공된 실시간 클록 값과, 장치의 TPM의 틱 카운터로부터의 틱 스탬프를 정렬시킨다. 본 장치는 시간 스탬프 요청을 전송하고 요청에 응답하여 시간 스탬프를 수신한다. 본 장치는 틱 스탬프를 발생시켜 전송하고 응답하여 대체 정확도 스테이트먼트를 수신한다.
두번째 실시예에서, 본 장치는 시간 스탬프를 수신하고, 전송을 위한 두개의 연속적인 틱 스탬프들을 발생시킨다. 이 실시예에서, 본 장치는 두개의 틱 스탬프들의 전송에 응답하여 변경된 시간 스탬프를 수신한다. 본 장치는 변경된 시간 스탬프의 수신시 그 변경된 시간 스탬프를 틱 스탬프한다.
세번째 실시예에서, AIK(attestation identity key)로부터 CSK(certified signing key)를 발생시켜 정확도 스테이트먼트를 보호할 수 있다. 이 실시예에서, 정확도 스테이트먼트 및 신뢰성있는 시간 스테이트먼트(TTS; trusted time statement)를 발생시킨다. AIK 크리덴셜, CSK의 일부분, 정확도 스테이트먼트 또는 서명된 데이터(signed data)는 공개(reveal)될 수 있다.
본 방법들에 의해 원격 입증에 통합된 시간 스테이트먼트를 이용하여, 신뢰성있는 플랫폼 상태의 큰 데이터베이스를 유지하는 검증기의 부담을 부분적으로 경감시킬 수 있다.
첨부한 도면과 함께 예를 들어 주어진 다음 설명으로부터 보다 자세한 이해가 이루어질 수 있다.
도 1은 신뢰성있는 로컬 시간을 확립하도록 구성된 예시적인 무선 송수신 유닛(WTRU)의 도면이다.
도 2는 신뢰성있는 로컬 시간을 확립하도록 구성된 예시적인 WTRU의 다른 도면을 나타낸다.
도 3은 대체 정확도 스테이트먼트 발생을 나타내는 예시적인 방법의 흐름도를 나타낸다.
도 4는 대체 정확도 스테이트먼트 발생을 나타내는 예시적인 방법의 다른 흐름도를 나타낸다.
도 5는 대체 정확도 스테이트먼트 발생의 변형예를 나타내는 예시적인 방법의 흐름도를 나타낸다.
도 6은 신뢰성있는 TIR 측정을 나타내는 예시적인 방법도를 나타낸다.
도 7은 정확도 스테이트먼트를 보호하는 방법을 나타내는 예시적인 방법도를 나타낸다.
도 8은 예시적인 원격 입증(attestation) 프로세스의 흐름도를 나타낸다.
도 9는 메타 세션을 나타내는 예시적인 방법도를 나타낸다.
도 10은 DRM에서의 신뢰성있는 컴퓨팅 기술(Trusted Computing technology)을 이용하기 위한 예시적인 방법의 흐름도를 나타낸다.
이하 언급될 때, 용어 "무선 송수신 유닛(WTRU)"은 이들에 한정되는 것은 아니지만 사용자 기기(UE), 이동국, 고정 또는 이동 가입자 유닛, 페이저, 셀룰라 전화기, 개인 휴대 정보 단말기(PDA), 컴퓨터 또는 무선 환경에서 동작가능한 임의의 기타 유형의 사용자 디바이스를 포함한다. 이하 언급될 때, 용어 "기지국"은 이들에 한정되는 것은 아니지만 노드-B, 사이트 컨트롤러, 액세스 포인트(AP), 또는 무선 환경에서 동작가능한 임의의 기타 유형의 인터페이싱 디바이스를 포함한다. 이하 언급될 때, 용어 "SIM"은 SIM ICC, USIM, UICC(Universal Integrated Circuit Card), RUIM(Removable User Identity Module), 또는 WTRU 아이덴티티 정보를 포함하는 임의의 기타 탈착가능 매체를 포함한다. TPM, 또는 TPM의 모바일 변형 MTM(Mobile Trusted Module)은 이하 간략화를 위하여 상호교환가능한 것으로 언급된다.
정의에 의하면, 틱 스탬프는 TPM에 의해 생성된 시간 스테이트먼트인 한편, 시간 스탬프는 외부 TA(time authority)에 의해 생성된 시간 스테이트먼트이다. TA들을 이용하여 TA들의 시간 스테이트먼트의 특정 정확도를 보장할 수 있다. 틱 카운터가 리셋되었을 때 틱 스탬프는 시간에 관련된 알려진 시간 카운트 유닛일 수 있는 한편, 시간 스탬프는 실제 실시간 값이다.
TPM, 또는 TPM의 모바일 변형 MTM은 TPM이 설치된 디바이스의 새로운 부트 사이클의 시작과 같은 특정 이벤트에서 제로로 초기화되는, 안전하게 보호된 읽기 전용 TCV(Tick Counter Value)를 제공한다. 이 TCV는 가능한 오래 유효 상태로 유지된다. (예를 들어, 전원 고장 때문에) 이전의(old) TCV가 손실되었기 때문에 또는 새로운 TCV 시작 포인트를 필요로 하는 서비스 공급자와의 새로운 접촉으로 인해 새로운 TCV가 필요하다면, 새로운 고유의 TSN(Tick Session Nonce) 값이 TPM의 난수 발생기에 의해 발생된다. 일정 TSN-값을 외부 엔티티들과의 통신에 이용하는 이 기간을 틱 세션이라 부른다. 틱 세션은 디바이스에 의해 발행된 시간 스테이트먼트에 대한 고유의 안전성 콘텍스트를 제공한다. TCG의 설계에 기초를 이루는 가정은 다른 안전한 시간 스케일에 대한 적어도 하나의 외부 접속이 각각의 틱 세션마다 제공된다는 것이다. 이는, 틱 카운터가 충분하게 정확하다고 가정할 경우 TPM이 필요한 만큼 많은 시간 스탬프들을 적용하도록 하는 요건들을 충족시키기에 충분한 것이다.
TCG 표준에 의해 제공된 안전한 시간 기능의 전체 시간 기능성은 다음에 오는 기능적으로 구축된 블록들, 데이터 구조 및 커맨드들에 의존한다. 타이밍 틱들은 미리 정해진 틱 증분율(TIR; Tick Increment Rate; 밀리초 단위)로 틱 카운터 값들(TCV; Tick Counter Value)을 유지 및 증분하기 위해 임의의 플랫폼 상의 TPM의 명령 능력(mandatory capability)을 포함한다. 사양에는, TPM 내의 틱 카운터를 실행시키는데 필요한 메카니즘에 대한 요건 또는 전원 사이클에 걸쳐 또는 플랫폼 상의 서로 다른 전원 모드들에서 틱 카운터를 증분시키는 TPM에 대한 능력 요건이 없다. 그러나, TCV는 각각의 틱 세션의 시작시 0으로 설정되어야 한다. TPM이 TIR에 따라 TCV를 증분시키는 능력을 상실한다면 TPM은 새로운 틱 세션을 시작해야 한다. 이것이 발생할 때, 틱 세션은 구현에 따라 결정되고 플랫폼에 특유의 것이 된다. 보다 자세하게는, 틱 세션들은 TPM 초기화 사이클들과 반드시 일치할 필요가 있는 것은 아니다.
TPM이 틱 카운트를 부당 변경하는 것을 발견하면 TCG 사양이 명시적 프로세스를 요청함을 알아야 한다. 이 경우, TPM은 이것을 공격으로 처리해야 하며, 자체 테스트가 실패하였던 것처럼 추가적인 TPM 처리를 중단한다(shut down).
TSN은 각각의 새로운 틱 세션의 시작시 TPM의 내부 난수 발생기에 의해 발생되어, 각각의 틱 세션의 종료시 모두 0으로 강제된다.
CURRENT_TICKS TPM 구조는 그 구조가 하나의 구조 내에 TCV, TSN 및 TIR을 포함하고 있는 특징적 특성을 갖는다. 이 구조만이 타이밍 틱의 기능으로 동작하는 모든 TPM 커맨드 내에 이용된다. 이는 틱 세션의 아이덴티티가 모든 이러한 동작 내에서 유지되는 것을 보장한다. 추가로, 이는 TCV(차이값(difference))를 TIR로 곱함으로써 실시간들에 대한 연관성을 허용하며 정확도의 진단(예를 들어, 드리프트(drift))에 대한 기준이 된다. TPM 구조의 정의에 의해, CURRENT_TICKS는 조작에 대하여 안전하다. 그러나, 데이터가 TPM 외부에서 이용될 때, CURRENT_TICKS 데이터 구조의 책임은 - 틱 세션 및 TIR에 대한 - 이들 연관성을 유지하는 것이다.
TPM_GetTicks 커맨드는 CURRENT_TICKS 구조를 데이터 구조로서 반환한다. 이 커맨드는 공개된 것이고 인가(authorization)를 필요로 하지 않음을 알아야 한다.
TPM_TickStampBlob 커맨드를 이용하여 데이터 블랍(blob)을 통해 틱 스탬프를 생성한다. 서명 동작은, 예를 들어 이용할 서명키를 로딩하였던 인가 세션에서 서명 동작을 인보크함으로써 그 실행을 위한 인가를 필요로 한다. 실제로 서명될 데이터는 커맨드에 대한 키 처리 입력 파라미터 내에 포함된 서명 방식에 의존한다.
그 후, 동작은 (괄호 내에 추가 이용을 위해 약기(shorthand)를 이용하여) 다음에 오는 데이터에 대해 디지털 서명을 생성한다. 특정한 "고정된" 데이터 필드에서, TPM_SIGN_INFO 데이터 구조 내에 구현된 서명 정보, ASCII 스트링 "TSTP"를 서명하여, 이 서명이 틱 스탬프임을 나타낸다. [D(blob)]은 틱 스탬프될 블랍의 (타입 TPM_DIGEST의 digestToStamp)의 해시 값이다. 이 다이제스트(digest)를 발생시키는 것이 발신자의 책임이다. 외부 논스(nonce; Ne)는 리플레이 공격(replay attack)을 방지하는데 이용될, 외부적으로 제공된 20-바이트이다. 발신자는 이것을 위해 임의의 값을 삽입할 수 있다. CURRENT_TICKS 즉, TCV, TSN 및 TIR 내의 데이터를 또한 이용할 수 있다.
다음에서, 표기법 TS[Key](D(blob),Ne,TCV,TSN,TIR)를 이용한다 - 종종, 혼동이 발생할 수 없고 일부 파라미터들이 독립변수(argument) 선에서 역할이 없는 경우에 TS(D, TCV), TS[Key](TCV,TSN) 등과 같이 축약된 변형 형태로 이용된다. 엔티티들의 복수의 인스턴스들이 이용되는 경우, TCV_1, TSN_a, D(blob)_l 또는 D_l, 및 TS_1, ..., TS_n 등과 같은 아래 첨자 표기법을 채용한다. 실제 물리 시간들은 t_1, ..., t_n으로서 표기된다. 일부 실시간에서 틱 카운터의 값은 TCV(t)로서 쓴다.
다음에서, TPM_TickStampBlob 및 TPM_GetTicks 커맨드의 단순한 호출(invocation) 및 실행과 연관된 일시적인 부정확도는 무시되어질 수 있다. 즉, 어느 커맨드가 실시간(t)에서 인보크될 때, 커맨드는 TS(TCV(t)), 각각 TCV(t)를 반환한다. 이는, TCV 페치 지연(fetching delay)에 대한 TIR의 비에 따라, 즉, 커맨드가 현재 TCV를 검색할 수 있는 레이턴시에 따라 특정한 확률에서만 참으로 됨을 알아야 한다. 이는 플랫폼에 대한 실시간 및 TCV의 내부 연관성이 피스단위(piecewise) 1대1로 되며 TCV가 상수값을 갖는 기간(time span) 동안 T(TCV)로서 표현될 수 있음을 의미한다.
T(TCV):= [t:TCV(t)=TCV], |T(TCV)| = TIR의 경우 식 1
일정한 TCV 간격은 서로 다른 TCV 값들에 대해 분해되며, 만약 TCV_1 ≤ TCV 2 TCV_1 ≤ TCV 2의 경우에 한해서 T(TCV_1) ≤ T(TCV_2)가 설정될 수 있고 이는 일정한 TCV 간격들의 집합 상의 전체 배열을 유도한다. 실시간들과 일정 TCV 간격이 관련된 스테이트먼트는 T(TCV) 내의 일정 s에 대해 s ≤t의 경우에 한해서만 T(TCV) ≤ t로 정의된다. 즉, T(TCV) ≤ t는 t가 간격 T(TCV)의 안쪽에 또는 간격 T(TCV)의 오른쪽에 놓임을 의미한다.
TCG 사양은 TCV들과 실시간들의 연관을 위한 단일의 방법을 표준이 아닌 정보적 코멘트 내에 제공한다. 이는 TStamp(data,t)로 나타낸, 임의의 데이터의 시간 스탬프를 수행할 수 있는 외부 TA(time authority)를 인보크한다. 사양은 다음의 것을 제공한다. 첫번째로, 플랫폼 P는 일부 임의의 알려진 데이터에 대해 시간 t_l에서 TS(TCV(t_l))를 발생시킨다. 이 틱 스탬프는 TA에 즉시 전송된다. 두번째로, TA는 시간 t_a에서 시간 스탬프 TStamp(TS(TCV(t_l)),t_a)를 발생시키고 이 시간 스탬프를 P로 되전송한다. 그리고 나서 P는 TA로부터 시간 스탬프를 수신하고 AS(TCV(T_l),t_a,TCV(t_2)):=TS(TStamp(TS(TCV(t_l)),t_a),TCV(t_2))를 즉시 발생시킨다. 이는 다음의 시간 바운딩 관계식,
T_l ≤ t_a ≤ T_2 (T_l/2:= T(TCV(t_l/2))인 경우) 식 2
를 외부 검증기에 대해 입증하는데 이용될 수 있는 서명된 표명(assertion)이다.
이 예에서, 표기법 AS(t_a)는 시간 t_a에 대한 정확도 스테이트먼트를 지정하도록 도입된다. 이는 디바이스 상에 저장될 수 있고 시간 스탬프들을 테스트하는 참여자(party)로 또는 다른 플랫폼으로와 같이 필요되는 경우에 임의의 위치에 배포될 수 있다. T_l과 T_2 간의 차이값은 플랫폼으로부터 TA로의 라운드 트립 시간과 동일하며, 이후의 실시간에 대한 실제 TCV의 최대 시간 차이값을 평가하는데 이용될 수 있다.
이 차이값은,
d(T_l,T_2):= {sup |t_l-t_2| ; 여기서 t_l/2는 T_l/2 내에 있음} 식 3
보다 더 크지 않다.
TPM에 대한 플랫폼 인증서(certificate) 및 (TA로부터의 인증서를 포함한) 다른 모든 인증서들과 결합하여, 디바이스는 그 시간이 신뢰성있는 소스로부터 발생한 것이며 클록의 플랫폼 고유 드리프트와 AS에 기초하여 실제 시간에 대한 최대 차이값이 얼마인지를 설명할 수 있다. 플랫폼은 틱 스탬프, TA로부터의 틱 스탬프, 및 다른 신뢰성있는 컴퓨팅(Trusted Computing) 방법을 이용하여 실시간 클록(RTC; Real Time Clock) 값들과 특정 T(TCV)에 대한 이들의 관계에 대한 신뢰성있는 표명을 행할 수 있다. 이들 표명은 TTS(trusted time statement)라 불린다.
도 1은 신뢰성있는 로컬 시간을 확립하도록 구성된 WTRU(100)의 예시적 도면이다. WTRU(100)는 확장형 SIM ICC(105), 플랫폼 프로세서(108), 애플리케이션 프로세서 및 SW(110), 통신 프로세서(115) 및 외부 데이터 메모리 (120)를 포함한다. 애플리케이션 프로세서(110)는 DRM(digital rights management) 에이전트(도시 생략)를 포함할 수 있다.
확장형 SIM ICC(105)는 일반 SIM ICC의 일반적으로 알려진 기능들을 수행하기 위하여 구성된 SIM 기능 블록(125)을 포함한다. 추가로, 확장형 SIM ICC(105)는 STC(secure time component; 130)를 포함한다. STC(130)는 시간 리포트 및 동기 컨트롤러(135), RTC(140) 및 부당 변경 검출 및 전원 고장 유닛(145)을 포함한다. 또한, 확장형 SIM ICC(105)에는 TPM 유닛(150)이 포함된다.
확장형 SIM ICC(105) 상에 위치된 SIM 기능 블록(125)은 WTRU와 네트워크 사이에 안전한 채널의 확립을 지원하기 위하여 인증 서비스들을 제공하고 폰을 식별하는데 이용된 마스터 시크릿들을 유지하도록 구성된다. 루트(root) 아이덴티티는 디바이스 내에 안전하게 유지되고 SIM의 안전하거나 또는 신뢰성있는 도메인의 외부로 결코 누출되지 않는다. 기존의 SIM 블록(125)은 또한 3GPP AKA(Authentication and Key Agreement)와 관련된 절차들에 필요한 기능 및 알고리즘을 수행한다.
시간 리포트 및 동기 컨트롤러(135), RTC(140) 및 부당 변경 검출 및 전원 고장 유닛(145)은 확장형 SIM ICC(105) 상에 위치된 STC(130)를 구성한다. STC(130)는 요청 엔티티에 대한 출력으로서 시간과 관련된 데이터의 서명 또는 시간 인증서의 형태로 데이터 엔트리들 또는 특정 이벤트의 시간의 안전한 리코드를 기록하도록 구성된다.
시간 리포트 및 동기 컨트롤러(135)는 RTC(140) 및 부당 변경 검출 및 전원 고장 유닛(145)의 기능들을 제어하도록 구성된다. 추가로, 시간 리포트 및 동기 컨트롤러(135)는 기존의 SIM 기능 블록(125), 외부 TA(165)와 플랫폼 프로세서(108)에 연결될 수 있다. 시간 리포트 및 동기 컨트롤러(135)가 기존의 SIM 기능 블록(125)에 연결될 때, SIM 기능 블록(125)은 폰 북을 위한 데이터베이스와 같이 자신의 데이터베이스 내의 안전한 시간 측정값을 이용할 수 있을 것이다.
RTC(140)는 수정 오실레이터(quartz crystal oscillator)를 포함할 수 있다. 그러나, 당해 기술 분야의 숙련된 자는 다른 정확한 시간 유지 디바이스들을 RTC(140) 내에 이용할 수 있음을 이해할 것이다. 확장형 SIM ICC(105)는 RTC 수정을 물리적으로 제거하여 확장형 SIM ICC(105)을 동작불능으로 하도록 구성될 수 있다. 이 특성은 또한 부당 변경 검출 및 전원 고장 유닛(145) 내에도 포함될 수 있다.
부당 변경 검출 및 전원 고장 유닛(145)은 전원 고장의 경우 STC(130)의 안전한 특성을 유지하는 수단을 제공하도록 구성된다. 유닛은 TPM 및 RTC에 전원을 제공하는 전원 연결부를 포함할 수 있다. 부당 변경 검출 및 전원 고장 유닛(145)은 또한 부당 변경이 검출된다면 알람을 트리거하는 부당 변경 검출 회로를 포함할 수 있다. 유닛(145)의 부당 변경 검출 부분은 또한 하드웨어 및 소프트웨어 레벨 부당 변경을 방지하기 위한 부당 변경 방지 특성을 포함할 수 있다. 유닛(145)의 전원 고장 부분은 또한, 전원 고장의 경우에 RTC 컨텐츠를 비휘발성 메모리 내에 저장하기에 충분히 긴 기간 동안 보유(retention)를 실시하기에 충분한 에너지를 유지하도록 구성된 커패시터 또는 다른 단기 에너지 보유 컴포넌트를 포함할 수 있거나 또는 확장형 SIM가 자신의 전용 그리고 기계적으로 제거불가능하게 고정된 백업 배터리를 가질 수 있다.
TPM(150)은 또한 확장형 SIM ICC(105) 상에 위치되며 기존의 SIM 기능 블록(125) 및 STC(130) 양쪽 모두에 연결된다. SIM ICC(105)은 확장형 SIM ICC(105) 상에 TPM (150)과 STC(130) 양쪽 모두를 배치함으로써, STC(130)에 의해 생성된 시간 정보에 대한 핵심 신뢰 루트(core root of trust)를 보호 및 제공하며 신뢰 측정 능력을 제공하도록 구성된다. TPM(150)의 존재는 또한 RTC(140) 및 연관된 시간 리포팅 및 재동기 컨트롤러(135)에 의해 생성된 시간 리코드들이 보호 메모리 내에 저장되는 것을 보장할 수 있다. 보호 메모리는 TPM 자체의 비휘발성 메모리 내에 위치될 수 있거나 또는 TPM에 의한 암호화로 보호되지만 TPM의 외부에 있는 메모리 내에 위치될 수 있다. 이러한 시간 리코드의 보호는 또한 전원 고장의 경우에도 적용가능할 것이다. 전원 고장 유닛(145)이 TPM(150)에 전원 고장을 경고할 때, TPM(150)은 전원 고장 유닛(145) 내부의 에너지 홀딩 디바이스가 전원을 다 소모하기 전에 시간 리포트 및 재동기 컨트롤러(135)로부터 마지막 저장가능한 시간 리코드를 검색한다.
본 발명의 구성에 의해 수개의 특징이 가능해진다. 예를 들어, 본 발명의 확장형 SIM ICC(105)는 직접 또는 인증 절차를 통하여 외부 요청 애플리케이션에 현재 시간의 측정값을 제공할 수 있다. 이 현재 시간은 외부 네트워크에 대한 디바이스의 인증시 또는 외부 네트워크가 동기화를 위해 현재 시간을 안전하게 제공하는데 있어 유용하다.
확장형 SIM ICC(105)는 또한 디바이스에 대한 시간 정보를 디지털 서명과 암호적으로 안전하게 하여 결합할 수 있다. 대안적으로, 확장형 SIM ICC(105)는 암호 키가 디바이스에 대한 시간 정보를 결합하는데 이용될 경우 암호화를 통하여 시간 정보를 안전하게 하여 결합할 수 있다. 확장형 SIM ICC(105)에 의해 제어된 안전한 시간 정보의 스토어는 확장형 SIM ICC(105)의 내부에 또는 SIM ICC(105)의 외부에 있지만 폰의 외부 메모리(120) 내부에 또는 이들 둘다에 있을 수 있다.
확장형 SIM ICC(105)는 SIM 기능 블록(125)에 의해 수행된 기존의 애플리케이션들을 강화하는 메카니즘을 제공하는데 이용될 수 있다. 예를 들어, 이는 폰북 애플리케이션 및 데이터에 대한 안전한 시간 스탬프, 동기화, 모바일 지불 또는 티켓팅 애플리케이션들 및 관련 데이터, 인증 및 키 관리 기능, 또는 모바일 통신 프로토콜 스택과 관한 데이터를 제공하는데 유용하다. 추가적으로, 확장형 SIM ICC(105)는 이 애플리케이션에서 이후에 설명될 DRM에 대한 많은 실제적인 애플리케이션들을 가질 수 있다.
선택적으로, WTRU(100)는 확장형 SIM ICC(105) 상에 있지 않은 제2 RTC(155)를 포함할 수 있다. 제2 RTC(155)는 선택적인 시간 리포트 및 동기 제어 SW(157)를 포함할 수 있는 플랫폼 프로세서(108)에 연결될 것이다. 제2 RTC(155) 및 선택적 시간 리포트 및 동기 제어 SW(157)의 결합은 WTRU(100) 상에서 선택적 STC 기능을 발생시킨다. 추가로, 플랫폼 상의 제2 RTC(155)는 확장형 SIM ICC(105) 내부에서 보다 심하게 보호받는 제1 STC(130)에 대해 요구될 수 있는 바와 동일한 높은 보안성 레벨을 요구할 수 없는 애플리케이션들에 이용될 수 있다. 보다 덜한 보안성을 요구하는 이러한 애플리케이션들의 일례는 OS에 대한 틱 카운터 또는 평상시 달력 또는 스톱워치 애플리케이션들에 이용할 수 있다.
선택적으로, WTRU(100)는 또한 확장형 SIM ICC(105) 상에 있지 않은 제2 TPM 유닛(160)을 포함할 수 있다. 이 제2 TPM 유닛(160)은 추가적인 보안 기능들을 제공하기 위하여 확장형 SIM ICC(105)에 연결된다. 예를 들어, SIM ICC(105)는 추출될 수 있기 때문에, 각각의 디바이스(SIM ICC 및 플랫폼) 상의 TPM이 그 디바이스에 대한 신뢰 루트로서 동작할 수 있다. 따라서, 제2 TPM(160)은 슬래이브 SIM ICC(105) 내의 종속 TPM(150)을 이용하여 자신의 기능을 검증하고 상호 인증을 실제 수행하여 플랫폼과 SIM ICC(105) 사이의 통신 채널(인터페이스)을 결합할 수 있다.
도 2는 신뢰성있는 로컬 시간을 확립하도록 구성된 WTRU(200)의 다른 예시적인 블록도이다. WTRU(200)는 일반 SIM ICC(205), 플랫폼 프로세서(208), 애플리케이션 프로세서 및 SW(210), 통신 프로세서(215), 데이터용 외부 메모리(220), RTC(225), 및 TPM(230)을 포함한다. 애플리케이션 프로세서(210)는 DRM 에이전트(도시 생략)를 포함할 수 있다.
도 1의 WTRU는 RTC(225)에 의해 도 2의 WTRU와 구별되며 TPM(230)은 WTRU 플랫폼 상에 위치되며 SIM ICC(205) 상에 위치되지 않는다. RTC(225)는 외부 TA(233) 및 플랫폼 프로세서(208)에 연결될 수 있다. 플랫폼 프로세서(208)는 RTC(225)를 제어하기 위한 시간 리포트 및 동기 제어 소프트웨어(235)를 포함한다. 따라서, 플랫폼 프로세서(208) 및 RTC(225)는 결합하여 WTRU(200)에 대한 STC로서 기능할 수 있다.
SIM ICC(205) 상에 있기 보다는 WTRU 플랫폼 상에 RTC 및 TPM을 위치시킴으로써, WTRU(200)는 일반 SIM ICC들에 순응할 수 있다. 이 실시예는 도 1의 확장형 SIM ICC(105)의 설명에서 설명된 바와 같이 여전히 안전한 시간 컴포넌트 특징을 제공한다. 예를 들어, WTRU 플랫폼 상의 TPM(230)은 RTC(225), 시간 리포팅 및 재동기 애플리케이션 및 생성된 시간 리코드 출력들의 보안성을 보호하고 강화하는 절차들을 수행할 수 있다. 대안의 실시예에서, WTRU(200)는 SIM ICC(105) 없이 동작하도록 구성될 수 있다. 이러한 실시예의 일례는 3GPP가 아닌 모바일 폰에 대한 WTRU일 것이다.
선택적으로, WTRU(200)는 SIM ICC 상에 선택적 STC(240)을 포함함으로써 확장형 SIM ICC에의 이용을 위해 구성될 수 있다. SIM ICC(205) 상의 이 선택적 STC(240)는 시간 리포트 및 재동기 컨트롤러(245), RTC(250) 및 부당 변경 검출 및 전원 고장 유닛(255)을 포함할 수 있다. SIM ICC(205) 상에 STC(240)를 포함하는 것은 SIM ICC 애플리케이션에 보다 안전한 시간 소스를 제공할 것이다.
선택적으로, WTRU(200)는 SIM ICC(205) 상에 선택적 TPM(260)을 포함함으로써 확장형 SIM ICC(205)에의 이용을 위해 구성될 수 있다. 선택적 TPM(260)은 SIM ICC(205) 상에 저장된 데이터에 대한 추가적인 보호 뿐만 아니라 SIM ICC 애플리케이션들에 대한 추가적인 신뢰 및 보안을 제공할 수 있다.
당해 기술 분야의 숙련된 자는 수개의 다른 결합 및 구성들이 또한 가능하고, 추가적인 이점을 제공할 수 있음을 이해할 것이다. 예를 들어, SIM ICC는 TPM 없이 또는 부당 변경 검출 유닛 없이 STC로 구성될 수 있다. SIM ICC 상에 STC를 통합하는 임의의 다른 실시예가 또한 본 발명의 범위 내인 것으로 간주될 것이다.
다른 실시예(도시 생략)에서, STC가 SIM ICC 상에 위치하고 TPM이 WTRU 플랫폼 상에 위치하도록 도 1의 WTRU(100)와 도 2의 WTRU(200)를 결합할 수 있다. WTRU 플랫폼 상의 TPM을 이용하여 SIM ICC 내부의 STC 및 STC에 의해 생성된 임의의 데이터의 보안을 보호하고 강화할 수 있다.
또 다른 실시예(도시 생략)에서, STC가 WTRU 플랫폼 상에 위치하고 TPM이 SIM ICC 상에 위치하도록 도 1의 WTRU(100)와 도 2의 WTRU(200)를 결합할 수 있다. 이들 추가적인 실시예들 양쪽 모두에서, WTRU는 도 1 및 도 2의 설명에서 설명된 동일한 안전 애플리케이션 및 동작을 수행하도록 구성될 것이다. SIM ICC 상에 STC를 갖는 것은 RTC 자체에 대한 물리적 공격의 관점에서 더 높은 보안 레벨을 제공할 수 있음을 알아야 한다. 추가로, SIM 상의 TPM이 없이는, SIM 기능이 공유 키 또는 공개/개인키 쌍 또는 SIM ICC의 시크릿을 공유하는 네트워크가 안전한 채널의 세트업을 지원하도록 확장되지 않는다면, SIM과 플랫폼 사이에 채널을 안전하게 하는 것도 가능하지 않고 플랫폼과 SIM ICC 사이에 상호 인증을 수행하는 것도 가능하지 않다.
TCG-사양은 외부의 신뢰성있는 시간 소스 즉, 실시간 클록 소스에 내부 TPM 틱 카운터 값을 결합하기 위한 한 기본 프로세스를 설명한다. 이는 아래 보다 자세히 설명된다. TCG 사양은 이 기본 메카니즘을 너머서는 어떠한 개념들도 포함하고 있지 않다.
거의 접속되지 않는, 대충 연결되는 디바이스들은 이들 기능들을 이용하여 신뢰성있는 시간 스테이트먼트들(TTS; trusted time statement)을 제3자에 제공하기에 충분한 데이터를 수집하고 있음을 볼 수 있다. 외부 시간을 결합하는 것은 시간 스탬프들이 생성된 한참 후에도 발생할 수 있다. 보다 구체적으로, 대부분의 디바이스들이 실제 시간을 결코 알 필요가 없는 방식으로 이를 행하는 것이 가능하다. 이러한 방법 이면에 있는 공통의 개념은 틱 카운터 값들과 실시간 클록 값들 사이의 관계를 얻기 위한, 플랫폼 상의 또는 다른 엔티티들에서의 디바이스 내의 TPM의 내부 틱 카운터 사이의 협업이다. 이러한 스테이트먼트들은 서명된 틱 카운터 값들(틱 스탬프들)과 시간 스탬프들을 결합하여 적절히 이용함으로써 구체화된다.
통상의 정확도 스테이트먼트(AS; accuracy statement), 즉 TPM AS는 신뢰성 및 보안성 관점에서 완전 만족스러운 것은 아니다. 검증기는 기간들 사이의 실시간 간격(time distance)에 관하여 AS에 의해 행해진 표명을 평가하고 신뢰하기 위해 각각 기간 T_l과 t_a 사이에서 그리고 기간 t_a 와 T_2 사이에서 TPM 틱 카운터의 적절한 기능 수행에 있어 정확도에 대해 신뢰성을 가져야 한다. 실시간 클록 값에 대한 T(TCV(t))의 결합을 강화하는 한 방법은 두 시간 스탬프들 사이에서 T(TCV(t))를 프레임하는 것이다. 위에서 설명된 정확도 스테이트먼트에 대한 대안예로서 예를 들기 위하여, TA로부터의 시간 스탬프들을 P의 TS(TCV) 주변에서 폴딩(fold)하여 의미론적으로 다른 TTS를 발생시킬 수 있다.
도 3은 대체 정확도 스테이트먼트 발생을 설명하는 예시적인 흐름도(300)이다. 일정 초기 시간에, 플랫폼(P)은 TA로부터 임의의 알려진 일정 데이터(D)를 통해 시간 스탬프를 요청한다(310). t_a에서, TA는 TStamp(D,t_a)를 발생시키고(320), TStamp(D,t_a)를 P에 즉시 되전송한다(330). P는 시간 t > t_a에서 TA로부터 시간 스탬프를 수신하고 TS(TStamp(t_a),TCV(t))를 발생시키며(340) TS(TStamp(t_a),TCV(t))를 TA에 즉시 되전송한다(350). TA는 구조 TS(TStamp(t_a),TCV(t))를 수신하고 t_b에서, SA(t_a,TCV(t),t_b):=TStamp(TS (TStamp(t_a),TCV(t)),t_b)를 발생시키고(360), 이 구조를 P에 즉시 되전송한다(370).
이 대체 정확도 스테이트먼트 SA(t_a, TCV(t), t_b)는 관계식:
t_a ≤ T ≤ t_b, 여기서 T:= T(TCV(t))임 식 4
을 표명하는 신뢰성있는 시간 스테이트먼트이다.
이러한 대체 정확도 스테이트먼트는 TPM 틱 스탬핑이 발생했을 때 진정한 시간(true time)의 추정 범위를 입증하기 위해 외부적인 TA에 의해 이용될 수 있다.
도 4는 대체 정확도 스테이트먼트 발생에 대한 다른 변형예(400)를 나타낸다. 일정 초기 시간(t_a)에, TA는 미리 정해진 간격(I)(415) 동안 두개의 연속하는 틱 스탬프들을 발행하도록(410) P에 대한 명령들을 포함하는 데이터 D(I)의 시간 스탬프를 발행한다. 따라서, TStamp(D(I), t_a)가 구해진다. 시간 스탬프를 발행한 후, TA가 이 시간 스탬프를 플랫폼(P)에 즉시 전송한다. TStamp(D(I), t_a)의 수신시, P는 D(I)||t_a와 같이 틱 스탬프함으로써 제1 틱 스탬프(TSl)를 발생시킨다(420). 따라서, P는,
TSl:= TS(D(I), t_a), TCV(tl)) 식 5
를 구한다.
이 예에서, tl은 틱 스탬프가 발생할 때의 실제 시간임을 알아야 한다. P는 제1 틱 스탬프를 TA에 즉시 전송한다(430). P는 간격(I415) 동안 기다리고 나서 제2 틱 스탬프, 즉
TS2:= TS(D(I), t_a || TSl, TCV(t2)) 식 6
를 발생시키며(440), 여기서 t2는 t=tl+I의 (P에서의) 로컬 추정값이다. 또한, P는 이 틱 스탬프를 TA에 즉시 전송한다(450). 틱 스탬프 TSl와 TS2 양쪽 모두를 수신시, TA는 다음과 같이 틱 스탬프한다(460).
SA'(t_a, D(I),t_b):= TStamp( TS2 || TS1, t_b) 식 7
이 대체 정확도 스테이트먼트 SA'는 다음 관계식
t_a ≤ tl < tl+I ≤ t_b 식 8
을 표명하는 신뢰성있는 시간 스테이트먼트이며, 여기서 tl:= T(TCV(tl))이고, t2:=T(TCV(tl+I))이다. 이러한 스테이트먼트 SA'는 TPM의 TIR을 추정하는데 이용될 수 있다.
SA(t_a,t_b) 또는 SA'의 발생을 위한 복합 시스템 구현에 있어 주목할만한 변형예가 존재한다. 무엇보다도, 두개의 TA들(time authority)이 동일할 필요가 없다. P는 시간 허가부(TA)로부터 제1 시간 스탬프를 그리고 다른 시간 허가부(TA')로부터 제2 시간 스탬프를 구할 수 있다.
도 5는 TA 및/또는 TA'가 플랫폼의 내부 엔티티일 때, 즉 RTC(Real-Time Clock)가 시간 스탬프 기능과 결합할 때의 예시적인 흐름도(500)를 나타낸다. 이는 다음과 같이 플랫폼의 신뢰성있는 컴퓨텅 능력을 이용하는 세련된 방식으로 실현될 수 있다. 각각의 부트 사이클의 시작시, 신뢰성있는 플랫폼(P)은 특정 플랫폼인 내부 시간 에이전트(ITA; Internal Time Agent; 510)를 시작시킨다. 플랫폼은 TCG 모바일 폰 작업 그룹(Mobile Phone Working Group) 사양의 안전한 부트 기능을 이용하여 신뢰할 수 있는 비타협 상태(uncompromised state)에서 시작하여 적절하게 구성되는 것을 실행한다. 대안으로서, 플랫폼이 오직 부트 시간에 로딩된 프로그램의 측정만을 지원하면, ITA의 존재 및 신뢰성이 원격 입증을 통하여 외부 검증기에 의해 적어도 입증될 수 있다. 전용 목적을 위한 많은 ITA 인스턴스들이 P 상에 공존할 수 있다.
ITA는 다음과 같이 정확한 스테이트먼트의 발생시 TA를 대신할 수 있다. ITA가 언제라도 인증된 실시간 값을 페치할 수 있는(520) ITA와 RTC 사이의 안전한 채널이 존재한다. ITA는 예를 들어, TPM_Seal과 TPM_UnSeal 커맨드들을 이용하여 RTC 값들을 암호화함으로써 TPM의 암호화 능력들을 이용하여 RTC 값들을 보호할 수 있다(530). ITA는 소프트웨어 암호 라이브러리 또는 TPM의 서명 능력, 예를 들어 TPM_sign 커맨드를 이용하여 이들 RTC 값들로부터 시간 스탬프를 발생시킬 수 있다(540). ITA에 의해 이용된 서명 커맨드는 예를 들어, 특정한 ITA 인스턴스와 연관된 고유의 키일 수 있다. 다른 옵션은 ITA가 P의 입증 아이덴티티 키(AIK; Attestation Identity Key)에 결합된 인증된 서명 키(CSK; Certified Signing Key)를 이용하는 것으로서 이는 CSK를 인증하는 인증서가 AIK에 의해 서명됨을 의미한다. 이는 아래 설명된 방법과 유사하게 직접적으로(in direct) 행해질 수 있다. 특정한 신뢰성있는 플랫폼(P) 내에서 ITA의 존재에 대해 입증하는 이점을 갖는데, ITA의 비타협 기능 및 존재 상태는 원격 입증부(Remote Attestation)의 TC 능력을 통하여 외부 엔티티에 의해 검증될 수 있다.
RTC와 TCV의 보다 엄격한 결합은 TCG 사양을 그 베인(vein)으로 확장하는 일부 경우에 바람직할 수 있다. RTC와 ITA가 TPM의 내부 틱 카운터 보다 상당한 또는 훨씬 더 높은 보안 레벨을 갖는다고 가정한다(예를 들어, 특별하게 보호되는 하드웨어에서 양쪽 모두가 구현됨). 그 후, RTC는 위에서와 같이 내부 시간 허가부로서 이용될 수 있지만, 또한 틱 카운터에 활동적으로 영향을 준다. 예를 들어, RTC와 틱 카운터는 동일한 클록 소스에 의해 구동될 수 있다. RTC는 또한 ITA를 통하여 또는 직접적으로 틱 카운터를 리셋할 수 있거나 또는 RTC가 드리프트를 검출할 때 수정값들을 제공할 수 있다. 이는 TPM_TickStampBlob 출력의 정확도의 신뢰성을 잠재적으로 증가시킨다. (RTC의 출력과 TPM 틱 스탬프를 이용하여 시간 값들을 표명하는) ITA 상의 신뢰성은 ITA가 RTC (또는 그 출력)을 보호한다면 보다 신뢰성있는 RTC(또는 그 출력)을 이용하는 TPM으로부터의 틱 스탬프가 또한 보다 신뢰성있게 만들어졌다는 점에 의해 개선될 수 있다.
RTC로부터의 추가적인 정보는 TPM_SIGN_INFO 데이터 구조 내의 미사용 공간 내에 포함될 수 있음을 또한 알아야 한다. 대안적으로, 단지 TCG가 명령 세션 값들(TCV 및 TSN) 보다는 날짜 및 시간의 절대 표시를 제공하도록 인핸스드 TPM_SIGN_INFO 데이터 구조를 특정할 수 있다.
TA는 TA가 대부분의 경우 P보다 더 양호하게, 높은 정확도의 시간 스테이트먼트를 만들도록 설치되기 때문에 서명 지연을 보상하도록 구성될 수 있다. TA에 대한 간단한 모델은 TA의 시간 소스로부터의 UTC 시간을 페치하는데 필요한 시간 d_t와 시간 스탬프를 발생시키는데 필요한 시간 D_t 양쪽 모두가 예를 들어, 지속적인 측정에 의해 또는 정의된 기능적 파라미터들로서 높은 정확도로 알려져 있다고 가정한다. P 상의 시간 관련 TPM-동작들에 관해서는, TA에 대해 또한 d_t=O인 것으로 가정한다. d_t>0에 대한 다음에 오는 방법의 일반화가 간단해 진다. 다음에 오는 것에서는, SA(t,t')에 의해 표기된, 서명 지연을 보상한 정확도 스테이트먼트를 설명한다.
SA(t_a,t_b)로 표기된, 서명 지연을 보상한 정확도 스테이트먼트의 발생에 있어 D_t를 보상하기 위하여, 도 3에 도시된 방법은 TA가 제1 시간 스탬프 320에서 D_t를 포함하도록 변경될 수 있다. (D_t, 변수(variant) a)로 나타낸 한 대안예에서, TA는 시간 t=t_a에서 D'로 표기된 서명-지연-보상 데이터 패키지에 대한 시간 스탬프 TS(D', t_a)를 발생시키며(여기서, D' = D_t, 또는 D' = D||D_t) 신뢰성있는 시간 스테이트먼트 SA(t_a, D',t_b) 내에 시간 스탬프 TS(D', t_a)를 포함시킨다. 여기서, D_t는 TA가 데이터에 대한 시간 스탬프를 발생시키는 엄격하게 알려진 (또는 추정된) 시구간(time duration)을 나타낸다. 따라서, D'=D_t이면, TA는 TA가 시간 스탬프를 발생시키는데 필요한 지연을 단지 시간 스탬프만 하며, D'=D||D_t이면, TA는 지연을 시간 스탬프할 뿐만 아니라 TA가 초기에 시간 스탬프했던(320) 데이터(D) 자체도 시간 스탬프한다. (D_t, 변수 b)로 나타낸 두번째 대안예에서, TA는 t_a에 D_t를 더하고 시간 t_a에서 시간 스탬프 TS(D, t_a+D_t)를 발생시키며, 신뢰성있는 시간 스테이트먼트 SA(t_a+D_t,D,t_b) 내에 시간 스탬프 TS(D, t_a+D_t)를 포함시키며 이를 즉시 P에 되전송한다. 그 후, 결과적인 신뢰성있는 시간 스테이트먼트, (변수 a로부터) SA(t_a, D'=D_t, t_b) 또는 (변수 b로부터의) SA(t_a+D_t, D, t_b)는,
t_a+D_t ≤ T ≤ t_b (여기서, T:= T(TCV(t)) 식 9
이며, SA(t_a, D, t_b)에서, 오직 t_a ≤ T ≤ t_b이기 때문에 이는 단지 SA(t_a, D, t_b)를 이용할 경우 보다 더 엄격한 시간 한계값(bound)을 가져오며 여기서, T:= T(TCV(t))가 구해진다.
이 방법은 SA 대신에 TCG-정의 정확도 스테이트먼트(AS; accuracy statement)에 적용되면, 오직 틱 값들의 정확도를 검증할 수 있는 경우(이는 통상적으로 도저히 불가능함)에만 신뢰성있게 더 엄격한 시간 한계값을 구한다. 즉, TCG-정의 정확도 스테이트먼트(AS)는 외부의 TCV들에 대한 어떠한 표명도 추가함이 없이 틱 스탬프에 의해 표명된 RTC 값을 두개의 틱 값들 사이의 중간값으로 단지 시프트할 것이다. 이는 TCG 정확도 스테이트먼트(AS)의 단점을 또한 부각시킨다.
틱 증분율은 플랫폼에서의 TPM의 팩토리 파라미터이다. 그 초기값이 실제 목적에 대해 신뢰성있고 충분히 정확하다 하더라도, 특정한 TPM의 실제 TIR을 결정하는 하드웨어 특성들이 오랜 시간 범위에 걸쳐 변할 수 있기 때문에 이는 시간에 따라 변할 수 있다. 여기서, P 내의 TPM의 실제 TIR을 임의의 정확도로 측정하는 방법을 제공한다.
도 6은 신뢰성있는 TIR 측정(600)을 설명하는 예시도이다. P는 두개의 정확도 스테이트먼트들, S_l:=SA(t_a,TCV(t_l),t_b), 및 S_2:=SA(t_c,TCV(t_2),t_d)을 발생시킨다(610). 이로부터, P가 S_l 및 S_2를 전달하는 외부 검증기가 S_l 및 S_2에 의해 한정된(enclose) 기간에서 TIR의 평균값으로서 실제 TIR의 현재 추정값을 다음,
t'_l:= (t_b-t_a)/2, 및 t'_2:= (t_d-t_c)/2 식 10
cTIR(S_l,S_2):= (t'_2-t'_l)/(TCV(t_2)-TCV(t_l)) 식 11
과 같이 계산한다(620).
포함된 정확도 스테이트먼트가 각각의 t_l, t_2 주변에서 일정한 TCV의 시간 간격에 대한 한계값을 산출하기 때문에, cTIR도 역시 상한값과 하한값에 따라야 한다. 이들 하한값은,
(t_c-t_b)/(TCV(t_2)-TCV(t_l))≤cTIR≤(t_d-t_a)/(TCV(t_2)-TCV(t_l))
식 12
이다.
TIR을 측정하는 유형 SA의 두개의 정확도 스테이트먼트들을 이용하는 것은 이 방법이 현재 cTIR에 대한 상한값 및 하한값을 제공하는 것을 수반한다. 이것은 반대되는 이익을 균형을 맞추는 것이 필요한 많은 비지니스 시나리오에서 이용될 수 있다. 예를 들어, DRM 시나리오에서, 권한 보유자(rights holder)는 미디어 피스의 허용받은 소비 기간을 제한하는데 이점을 갖는 반면, 소비자는 이 기간을 연장하는데 이점을 갖는다. 정확도는 수반되는 제1 틱 카운터 값과 제2 틱 카운터 값의 차이값으로 증가한다. cTIR과 한계값 양쪽 모두가 누군가에 의해 S_l과 S_2을 소유하여 계산될 수 있다. 이는 P 내의 ITA 또는 외부 검증기일 수 있다. 이 예에서는 이후, P 내의 ITA가 cTIR를 외부 엔티티에 전달하여 TPM의 TIR의 비정확도에 대한 수정을 제공한다(630). 또한, TIR 측정에서의 각각의 시간 허가부는 독립적으로 선택될 수 있다. 보다 자세하게는, 이들 중 일부가 내부 RTC 값과 관련될 수 있다. cTIR의 추정값의 정확도를 추가로 증가시키기 위하여, 지연 보상을 위하여 위에서 설명된 방법을 이용할 수 있다.
이후에 틱들 뿐만 아니라 정확도 스테이트먼트 발생의 샘플 공간(여기에서 통신 라운드 트립 및 서명 생성을 위한 시간들은 변할 수 있음)이 더 크게 되고 따라서 통계적 에러들이 더 작아지기 때문에 한계값의 정확도는 더욱 많은 시간 표명들을 이용함으로써 개선될 수 있다. 충분히 오랜 시간 간격에 걸쳐 확산된 시간 표명들을 이용하여, TIR들의 드리프트 레이트의 추정치를 구할 수 있다. 드리프트 레이트는 또한 TIR의 일차 도함수로서 표현될 수 있다.
디바이스 상의 기술 또는 타이밍 디바이스의 에이징은 팩토리 값으로부터의 실제 TIR의 천천히 증가하는 드리프트에 의해 증명될 수 있고, 에이징 거동으로부터의 편차는 유용한 정보를 산출할 수 있다. 따라서, cTIR들 및 cTIR들을 발생시키는 정확도 스테이트먼트를 포함한 측정들은 P의 상태, 기능적 파라미터들 또는 신뢰성에 대한 평가를 유도하는 여러 환경에 이용될 수 있다. 특히 중요한 경우를 아래 설명한다.
부당 변경 검출시, 디바이스 또는 디바이스의 TPM 또는 MTM 상의 액티브 사이트 채널 공격(active side-channel attack)은, 이들 대부분의 공격이 디바이스의 내부 프로세스의 타이밍에서 행해지기 때문에 cTIR들의 변동들을 일으킬 수 있다. 이것을 검출하는 방법은 측정된 cTIR들의 통계적 편차(variance)를 조사하는 것이다. 이것이 (정확하게 기능하는 디바이스 샘플 상에서 실험으로 결정될 수 있는) 특정한 프리셋 값보다 더 크다면, 이는 디바이스(플랫폼(P)), TPM 또는 틱 카운터 상의 공격으로서 해석될 수 있다.
오동작 검출시, cTIR들은 소정의 기간에 걸쳐 일관되게 그리고 상당하게 더 낮아지거나 더 높아지고 시간 디바이스의 에이징에 의해 야기된 통상의 변동들이 가져오는 것보다 더 높을 수 있다. 이 상황은 외부 관측자에 의해, 디바이스 틱 카운터 또는 디바이스 자체의 오동작의 증거로서 해석될 수 있다.
비정상적인 동작 상태의 검출: cTIR들이 소정의 기간에 걸쳐 무작위하게 그리고 상당하게 더 낮아지거나 더 높아지고 에이징, 전압 변동, 또는 온도 변동 등에 의해 야기되는 정규의 편차들이 허용하는 것보다 더 높다면, 이는 또한 틱 카운터 또는 디바이스의 부당 변경 또는 비정상 동작 상태의 증거로서 외부 관측자에 의해 해석될 수 있다.
위에서 설명된 검출 방법은 대량으로 현장에 배치되는 신뢰성있는 디바이스들 내에 구현될 수 있으며 여기서 이러한 디바이스들은 위에서 설명된 방법들 이외의이례적인 것을 검출하는 (인핸스드 센서들과 같은) 다른 능력들을 가질 수 없다. 예상되는 애플리케이션 필드는 확장된 기간 동안 배치되거나 무인화되거나 또는 인간에 의해 서비스되지 않는 머신 투 머신(M2M; machine-to-machine) 시스템들 내에 TPM을 내장하도록 할 수 있다.
지금까지 설명된 신뢰성있는 시간 스테이트먼트는 P의 신뢰성 및/또는 아이덴티티에 대하여 독립적으로 표명을 행하지 않는다. 아이덴티티는 틱 스탬프들을 서명하기 위해 P에 의해 이용된 서명 키들에 명백하게 의존한다. 이는 서명키들에 의존하는 이후 시간의 틱 스탬프들에 대해서 뿐만 아니라 정확도 스테이트먼트에 대해 중요한 보안성이다. 즉, 틱 카운터 자체 뿐만 아니라 틱 스탬프 동작이 이뮬레이션될 수 있기 때문에 TA는 스테이트먼트를 요청하는 플랫폼의 상태를 본질적으로 알지 못하며; 최악의 경우, TA는 심지어 TA가 TPM와 통신하고 있는 것도 전혀 알지 못한다. 따라서, 추가의 보호가 없다면, 정확도 스테이트먼트는 TCV 조작, 틱 스탬프의 위조, 중간자 공격(man-in-the-middle) 등을 포함한 모든 유형의 공격들에 노출된다. 도 7은 이들 문제를 극복할 수 있는 예시적인 방법을 나타낸다.
도 7은 정확도 스테이트먼트를 보호하는 방법(700)을 설명하는 예시적인 도면이다. P는 AIK(Attestation Identity Key)를 발생시켰으며, P가 TCG에 의해 정의된 프로토콜들에 따라 요청하였던, 프라이버시 CA(PCA; Privacy CA)로부터의 AIK에 대한 AIK 크리덴셜을 소유하는 것으로 가정한다. 정확도 스테이트먼트는 다음의 방식으로 플랫폼 아이덴티티에 결합된다. P는 AIK로부터 CSK(Certified Signing Key)를 발생시킬 수 있다(710). 그 후, P와 TA는 정확도 스테이트먼트 AS()와 SA()를 각각 발생시킬 수 있고 여기서 P에 의한 틱 스탬프의 각각의 인스턴스는 틱 스탬프가 어느 프로토콜에서 인보크되는 각각의 시간(t*)에 CSK를 서명 키로서, 즉 TS[CSK](TCV(t*))로서 이용하도록 특정된다(720).
위에서 이용된 CSK는 이 단일의 동작 동안에 전용될 수 있고 정확도 스테이트먼트를 발생시킨 후 폐기될 수 있거나 또는 CSK는 이후 시간들에서 특히 틱 스탬프를 위한 추가의 동작들에서 이용될 수 있다. 이후 시간(t)에 신뢰성있는 플랫폼(P)에 의한 데이터 블랍(D)의 소유를 검증기(V)에 대해 증명하기 위해, P는 TTS(t):= TS[CSK](D,TCV(t))를 발생시킬 수 있으며, 여기서 CSK는 AIK에 의해 인증된 새로운 키이거나 또는 정확도 스테이트먼트 발생에 이용된 최초의 키이다(730). P는 AIK 크리덴셜, CSK의 공개 부분, 정확도 스테이트먼트 또는 내부에 서명된 데이터, TTS(t), D 및 TCV(t)를 V에 보여줄 수 있다(740). 그 후 V는 정확도 스테이트먼트가 일반적으로 그리고 특히 타이밍 틱들에 관하여 TCG에 의해 특정된 보안성 요건들을 만족시키는 액티브 상태의 TPM을 갖는 신뢰성있는 플랫폼에 의해 발생되었음을 검증할 수 있고(750) 또는 신뢰성있는 시간 스테이트먼트(TTS(t))가 동일한 플랫폼에 의해 발생되었음을 검증할 수 있다(760).
이와 유사하게, 정확도 스테이트먼트 뿐만 아니라 임의의 다른 신뢰성있는 시간 스테이트먼트도 CSK들을 이용할 수 있다. 특히, TPM에 의한 모든 틱 스탬프 동작은 CSK를 이용하여, 특정 TCV에서 일정 데이터의 소유를 나타내는 TTS를 발생시킬 수 있다.
PCA는 AIK 인증 및 TTS 발생의 프로세스들을 통합함으로써 정확도 스테이트먼트를 제공하는 TA 역할을 할 수 있다. 플랫폼(P)과 PCA 사이에서 AIK를 인증하는 이 프로세스는 다음과 같이 확대된다.
P가 PCA에게 AIK의 인증을 요청할 때, P는 또한 상술한 방법들에 따라 정확도 스테이트먼트(SA)에 대한 요청을 발행한다. PCA와 P는 SA의 발생을 위하여 위의 프로토콜을 실행시키며 여기서 서명된 데이터(D)는 인증이 요청된 AIK의 공개 부분으로서 특정되거나 또는 AIK의 공개 부분에 연결된다. 이 프로토콜에서 해당 AIK에 대한 CSK가 PCA에 의한 인증 후에야만 이용을 위해 활성화되기 때문에 P의 틱 스탬프는 해당 AIK에 대한 CSK에 의해 서명될 수 없음을 알아야 한다. 따라서, 다른 서명 키가 틱 스탬프를 위해 P에 의해 이용되어야 하며 이는 SA 발생 프로토콜의 중간자 공격을 낮추기 위한 PCA와 P의 의무이다. 이는 AIK 인증 프로세스 동안에 암호화 및 논스(nonce)의 이용에 의해 보장된다. 암호화 및 논스를 이용한 후에야만 PCA가 AIK 인증을 시작한다.
이 TTS만이 단독으로 AIK 인증 요청의 수신의 의미를 갖는다. 발생된 TTS 및 AIK 인증서의 중요성은 공동으로 검증기에 제공될 때 P가 특정 시간에 AIK 인증을 요청하였던 신뢰성있는 플랫폼이고, AIK 인증 요청의 시간이 SA 내의 두개의 TCV들에 의해 나타내어진 두개의 시간 값들, 즉, 위에서 발생된 TTS에 대한 것과 동일한 검증가능 스테이트먼트 내에 있다는 것이다.
TTS는 레퍼런스 포인트에 의해 P의 특정한 AIK에 결합된다. 따라서, P에 의해 이후 시간에 발행된 모든 이후의 틱 스탬프 또는 P에 발생된 다른 정확도 스테이트먼트는 레퍼런스 시점 및 위에서 설명된 바와 같이 AIK에 대한 CSK들을 이용하여 TCV에 대한 신뢰성있는 관계에 결합될 수 있다. 이 유형의 표명에 대한 한 사용 케이스는 비인증 플랫폼(rogue platform)의 AIK 크리덴셜들의 각각의 무효화 및 철회이다.
위에서 언급된 추가적인 서명 키에 대한 필요의 문제는 PCA에 의한 AIK의 인증이 다음에 오는 방식으로 발생할 때까지 TTS의 발생이 연기될 때 회피될 수 있다. P가 PCA에게 AIK의 인증을 요청할 때 P는 또한 상술한 방법에 따라 정확도 스테이트먼트에대한 요청을 발행한다. PCA는 AIK 인증을 실행하고 인증서를 발생시킨다. PCA는 AIK의 공개 부분 또는 전체 AIK 인증서들을 서명된 데이터로서 포함한, SA 발생 프로토콜의 제1 시간 스탬프를 발생시킨다. PCA는 AIK 인증서 및 제1 시간 스탬프를 P에 전송하고, 선택적으로 타이머를 시작시킨다. P와 PCA는 SA 발생 프로세스를 완료하며, 여기서 P는 AIK에 대한 CSK를 이용한다. 선택적으로, PCA는 타이머 값이 위에서 설명된 특정값보다 더 크지 않은 경우에만 마지막 시간 스탬프를 발행함으로써 발생된 TTS의 신규성(freshness)을 강화할 수 있고, 그 결과 TTS에서 나타내어진 TCV가 AIK 인증 후에야만 제한된 시간에 있게 된다.
TCG는 플랫폼이 액티브 상태의 TPM을 포함할 뿐만 아니라 정교하게 결정되는 신뢰성있는 상태에 있음을 검증기에 증명하는 원격 입증(Remote Attestation)의 개념을 도입하였다. 이 개념을 갖는 주요 문제는 플랫폼의 상태가 항상 시간에 따라 변한다는 것이다.
원격 입증 프로세스는 프로세스가 발생한 시간에 대한 스테이트먼트를 포함하도록 확장될 수 있다. 도 8은 예시적인 원격 입증 프로세스(800)의 흐름도이다. 검증기로부터의 원격 요청의 수신(810) 및 입증 클라이언트와 TPM 사이의 인가 세션의 확립 후, 틱 스탬프(TS_A)를 발생시킨다(820). 이는 후속하는 원격 입증에 이용된 AIK에 대한 CSK를 이용하여 수행될 수 있다. 그 후, P는 TPM_Quote 커맨드를 이용하여 AIK로 플랫폼 구성 레지스터(PCR; platform configuration register)를 서명함으로써(830) 원격 입증을 시작한다.
추가적인 확장으로서, 서명된 PCR들에 의해 나타내어진 P의 상태와 저장된 측정 로그(SML; Stored Measurement Log) 사이의 시간 간격을 측정함으로써, 입증 패키지(AP; attestation package)를 검증기에 전송하기(850) 직전에 제2 틱 스탬프(TS_B)를 발생시킬 수 있다(840). 이 방법의 이점은 SML이 실제적으로 특정한 세분화도(granularity)로 이벤트들을 저장한다는 것으로, 즉 물리적인 것은 말할 것도 없이 정보적인 플랫폼 상태 변화들이 SML 내에 모두 기록되는 것은 아니라는 점이다. SML의 심도는 P의 구현, 특히 신뢰성있는 오퍼레이팅 시스템의 구현에 의존한다. 따라서, PCR 값들의 서명과 SML의 페치 사이에 발생하는 이벤트들이 SML 내에 저장될 수 없다. 이에 대한 가능성은 TS_B와 TS_A 사이의 차이값에 의해 나타내어지는 시간차를 이용하여 평가될 수 있다.
여러 대안예들이 구현될 수 있는데, 예를 들어 입증 클라이언트가 TA에 시간 스탬프들을 요청하여 위에서 설명된 방법들 중 임의의 것에 의해 정확도 스테이트먼트를 발생시킬 수 있거나, 또는 입증 클라이언트가 내부 ITA로서 기능하거나 또는 내부 ITA와 협업하여, RTC 값들에 기초하여 단순히 틱 스탬프들 대신에 정확도 스테이트먼트들을 발생시킬 수 있거나, 또는 틱 스탬프들이 변경된 입증 패키지 데이터 구조 내에 통합될 수 있거나, 또는 플랫폼의 저장된 측정 로그(SML; the stored measurement log)가 틱 스탬프들에 의해 확장될 수 있다.
방금 설명된 방법들에 의해 원격 입증에 통합된 시간 스테이트먼트를 이용하여, 신뢰성있는 플랫폼 상태의 큰 데이터베이스를 유지하는 검증기의 부담을 부분적으로 경감시킬 수 있다. 예를 들어, PCA는 (예를 들어, 멀웨어가 특정한 특정 상태에서 일정 시간에 플랫폼에 영향을 주었던 정보를 이용하여) 비인증 플랫폼의 목록을 유지할 수 있고, 검증기는 AP, TS_A, TS_B를 PCA에 제출하여 입증 시간에 P의 신뢰성에 대한 정보(다른 의견('second opinion'))를 획득할 수 있다.
시간 스테이트먼트들은 이들이 보다 초기 시간에 P의 상태를 통하여 입증에 비교될 수 있을 때 더욱더 유용하다. 이를 위하여, 동일한 아이덴티티, 즉, AIK를 이용하여(이것이 플랫폼의 아이덴티티를 보호하는 것으로 간주되는 AIK 발단의 이면에 있는 사상에 다소 반하더라도) 후속하는 입증을 수행해야 한다. 그 후, 검증기는 플랫폼 상태가 입증들 간의 중간 시간에 원치않는 방식으로 변하였는지 여부를 진단할 수 있다.
TPM 카운터의 각각의 리셋시, 시간 스테이트먼트를 외부 엔티티들에 전달하는 잘 정의된 보안 환경을 얻는데 논스를 필요로 한다. 이 리셋 동작과 시간 스탬프를 연관시키기 위해 이 틱 세션 논스(TSN; Tick Session Nonce)를 나중에 이용한다. 논스는 이 디바이스에 대해 그리고 각각의 리셋 동작에 대해 고유하며 따라서 TPM 내의 난수 발생기에 의해 발생될 필요가 있다. 실제 TSN은 TPM_GetTicks 커맨드를 발행함으로써 얻을 수 있다. TSN 값은 결과적인 CURRENT TICKS 데이터 구조 내에 포함된다.
현재의 TCG 사양은 세션의 손실을 일으키는 플랫폼 상의 서로 다른 전력 모드들로 또는 전력 사이클들을 따라 TPM이 틱 카운터를 증분시키는 능력을 유지하도록 하는 능력에 대한 요구를 행하지 않는다. 리부트 사이클 및 서로다른 전력 모드들을 지닌 세션을 확립하기 위하여, mTSN(meta TSN)를 이용하여 서로 다른 TSN 세션들의 범위에 걸쳐 있을 수 있는 세션을 제공하는 메타 세션 개념을 필요로 한다.
도 9는 메타 세션(900)을 설명하는 예시적인 방법을 나타낸다. mTSN은 외부 시간 제공자 또는 시간 인증 기간(TA)에 의해 발생되거나 또는 TPM의 난수 발생기에 의해 내부적으로 발생될 수 있다. 첫번째 경우에, TA는 플랫폼의 초기화 프로세스 동안에 예를 들어, 부팅 동안에 특정한 시점에서 디바이스로부터 mTSN 요청을 수신하고(910), 오퍼레이팅 시스템은 mTSN을 발생시키고(920) 이 mTSN을 저장하며(930) 이 mTSN을 안전하게 (TPM으로 봉인하여) 디바이스에 전달한다(940). 두번째 경우에, 디바이스는 mTSN를 발생시키고 이 mTSN을 플랫폼 입증에 결합하고, 결합된 mTSN을 TA를 향하여 전송하여, mTSN이 비타협 플랫폼 상의 라이브 상태의 변경되지 않은 TPM에 의해 발생되었음을 표명한다. 그리고 나서, 이 mTSN을 TPM_TickStampBlob 커맨드에 대한 논스로서 이용한다. 그 후, 각각의 발행된 스탬프는 mTSN을 포함하여, mTSN을 특정한 메타 세션에 할당한다.
양쪽 모두의 경우, 디바이스는 세션 초기화 사이클 동안 한번에 TA에 mTSN에 대한 요청을 전송해야 하거나 또는 자체 발생된 mTSN를 TA에 전송해야 함을 알아야 한다.
mTSN의 사용은 하드웨어 수단에 의해 보호되지 않으며, TC에서 정의된 신뢰성있는 동작 환경을 필요로 한다. 이 동작 환경은 입증 동작에 의해 검증되며, 이입증 동작은 mTSN로 하여금 전체 시스템의 잘 정의된 특정 상태로 봉인되도록 허용한다. 정적 mTSN를 사용하는 대신, 마지막 TSN을 다음 스탬프 동작을 위한 논스로서 사용하는 것도 또한 타진할 수 있다. 이는 세션들을 연결하는 체인을 가져올 수 있다. 이 체인의 무결성을 증명하기 위해서는 첫번째 스탬프에 대해 적어도 오프라인 입증 데이터를 추가하는 것을 필요로 한다. 이는 시스템 상태의 연기된 검증을 허용한다.
시간 제공자(TA) 또는 오퍼레이터의 논스 데이터베이스에 대한 필요는 TA 및 오퍼레이터에 의해 발행된 서명의 확장 사용에 의해 제거 또는 경감될 수 있다. 이 방식은, 네트워크 측과의 통신이 최소한의 트랜잭션 세트로 감소될 때 유연성있게 큰 이득을 제공한다. 디바이스 측에서, 논스는 통신에 이용될 수 있는 수개의 서로 다른 시간 서비스들 및 가능하다면 레퍼런스 프레임들을 허용하는 쿠키(세션 값)에 대해 등가이다.
단일의 세션들 간에 갭을 메우고 세션들의 단일성(monotony)을 증명하는 다른 접근 방식은 신뢰성있는 것으로 간주될 수 있는 플랫폼 설계 내에 실시간 클록(RTC; Real Time Clock)을 포함시키는 것이다. 이 신뢰성있는 RTC는 서명이 위에서 제공된 mTSN 방식에 따라 포함되어 있는 서명 날짜를 제공한다. 이는 적어도 첫번째 논스로 끝내야 한다. 신뢰성있는 RTC를 구현하는 것은 보호된 암호화 기능 및 고유한 아이덴티티를 확립하는 것을 필요로 한다.
일부 사용 케이스에서는, 마지막 리포트에서 보고된 TCV 및 TIR을 이용하여 미래에 TCV를 예측하는 것이 필요하다. 최초의 세션이 예를 들어 파워 다운으로 인해 만료하는 경우에, 이 이벤트의 범위를 구하고(span) 구 TCV 값을 후속하는 세션에 매핑하는 것이 필수적이다. 이는 TCV를 특정 시점에 결합하는 시간 스탬프 및 수신 날짜와 함께 최초의 세션의 AS를 이용하여 행해진다. 각각의 후속하는 세션은 또한 AS를 수신한다. 두개의 AS, 날짜 및 시간 정보와 TIR을 이용함으로써, 후속하는 세션에서의 이벤트의 TCV를 상관시키는 경과 시간을 계산하는 것이 가능해진다. 또한, 시스템 로그 및 상호작용 프로파일을 분석함으로써, '세션외(out-of-session)' 지속기간(duration)(예를 들어, 전력 실패 지속기간)을 추정하는 것이 가능해진다. 이 기본 방식은 또한 앞서 제공된 mTSN 개념의 컨셉과 결합될 수 있다.
신뢰성있는 컴퓨팅 기술의 한 애플리케이션은 DRM에의 이용에 대한 것이다. 정확도 스테이트먼트는 DRM 시나리오에서는 두 개의 단계에서 이용될 수 있다. 다음에 오는 예들은 오픈 모바일 얼라이언스(Open Mobile Alliance)의 목록을 이용한다. 일반 시나리오는 디바이스에 DRM 에이전트가 설치되는 것, 즉, 권한에 순응하여 컨텐츠를 통한 액세스 제어를 실행하는 엔티티가 특정 권한 보유자에 의해 설정되는 것으로서 추정한다.
도 10은 DRM에서 신뢰성있는 컴퓨팅 기술을 이용하는 예시적인 방법(1000)의 흐름도를 나타낸다. 이 예에서, RI(Rights Issuer)는 OMA DRM v2.0 표준에 정의된 바와 같이, ROAP(Rights Object Acquisition Protocol)의 실행 동안에 DRM 디바이스에 AS 및 틱 스탬프를 요청할 수 있다(1010). AS를 플랫폼 상의 입증 스테이트먼트에 결합시켜, RI로 하여금 자신의 무결성(integrity)을 검사하게 허용할 수 있다(1020). 이 방식으로, RI는 DRM 에이전트가 액티브 상태에 있으며 비타협 상태에 있으며 부당변경되지 않는 정확한 시간에의 액세스를 갖고 있다는 보장을 얻는다. 그 후, 이들 모든 검사가 성공적인 경우에만 RO(rights object)를 전달한다(1030). 그 후, RI는 RO에서 TSN와 TCV에 의해 사용 권한으로 직접 시간 한계값을 코딩할 수 있다(1040). 권한 획득을 위한 이 초기화 단계에서의 RO의 수신시, DRM 에이전트는 디바이스 상의 ITA와 협업할 수 있거나(1050) 또는 심지어 디바이스 상의 ITA에 통합될 수도 있다. 그 후, DRM 에이전트는 TPM으로부터 틱 스탬프들을 구할 수 있고(1060) TSN과 TCV를 RO에서 표현된 한계값과 비교하여 그에 따라 컨텐츠에 대한 액세스 제어를 실행한다.
두번째 예에서, RO들에서의 시간 한계값은 표준 시간 포맷, 예를 들어, UTC, 값들을 이용하며, 표준 시간 포맷은 시간 한계값과 TCV들을 연관시키는 DRM 에이전트의 작업이다. DRM 에이전트는 TCV들이 정확한 외부 시간에 결합되며 (AS와 MTM 비휘발성 메모리 내의 TSN들의 비교에 의해) 틱 카운터의 동일한 세션에 속하고 있음을 보장하기 위하여 부트 시간에 발생된 AS를 이용할 수 있다. 또한, DRM 에이전트는 컨텐츠 온(content on)에 대한 기본 액세스 제어와의 유효 시간/TCV(valid time-to-TCV) 연관성을 갖는다. 컨텐츠가 액세스되는 시간과 AS 사이의 기간이 길 때, TCV는 상당한 드리프트를 발생시킬 수 있으며 이를 수정하는데 위의 방법을 이용할 수 있다.
DRM 시나리오에서, TCV들의 유효성의, 고유한 TSN에 의해 표현된 단일의 틱 세션으로의 제한은 유용할 수 있다. 틱 카운터가 리셋되고 TSN이 업데이트될 때 권한은 특정한 TSN 값에 결합될 수 있고 DRM 에이전트는 보호되는 컨텐츠에 대한 액세스를 허가하지 않을 것이다. 일부 엔티티, 예를 들어, MTM, DRM 에이전트 또는 ITA는 (사양에 의해 명령되는 리셋을 강화하고 틱 카운터를 디스에이블시키는 임의의 수단에 의해 또는 TCG 표준에서 특정된 기능의 확장에 의해) 틱 카운터를 리셋할 수 있다면, 이는 임의의 TSN 세션, 원하는 시간 또는 TCV에서 컨텐츠에 대한 액세스 권한들을 무효화하는데 이용될 수 있다. 반면, 단일의 TSN 세션을 넘어선 액세스 권한들의 유지를 원하면, 방법들은 RI, DRM 에이전트 및/또는 ITA에 의해 세션들을 연결하고(bridge) 유효성의 TCV 및 TSN 제약을 업데이트하는데 이용될 수 있다.
신뢰성있는 모바일 폰이 외부 RIM 인증서를 외부 엔티티로부터 수신하고 외부 RIM 인증서를, 이후에 내부 플랫폼 입증 목적을 위하여 폰이 사용 및 보유하는 내부 RIM 인증서로 변환할 때 많은 인스턴스들이 있다. 외부 인증서는 많은 경우에 날짜 및 시간에 관하여 유효성 정보를 가질 것이다. 그러나, 현재 TCG MPWG(Mobile Phone Working Group) 사양은 날짜 및 시간에 대한 명시적 필드들을 포함하고 있지 않다. MPWG에 의한 이 결정의 배경은 TPM도 플랫폼도 인증서들의 유효성 검증을 위하여 신뢰성있는 시간 정보를 바로 갖는 능력을 갖는 것으로 예상되지 않았다는 것이였다. 모바일 폰에 대한 내부 RIM_Certificate는 현재 유효성 검사 목적을 위하여 단일의 카운터(monotonic counter)들만을 이용한다. 이는 RIM_Certificate 상에서 행해질 수 있는 유효성 검사들의 유형을 명백하게 제한한다.
그러나, 예를 들어 본 명세서의 초기 섹션에서 설명된 방법에 의해 제공된 안전한 시간 소스가 있다면, RIM_certificate의 유효성은 실제 날짜 및 시간에 의해 표시되는 유효성 기간들과 대조되어 검사될 수 있다.
다른 대안의 실시예에서, 신뢰성있는 모바일 폰의 내부 레퍼런스 무결성(RIM; internal reference integrity Metric) 인증서는 안전하고 신뢰성있는 ITA(internal time agent)를 포함하는 시스템에서 보다 안전하게 행해질 수 있다. ITA는 안전한 RTC에 의해 제공되는 실시간 정보를 안전하게 처리한다. 이러한 능력을 갖는 폰에서, 내부 RIM_Certificate 구조 내의 단일의 카운터 필드는 ITA에 의해 제공된 날짜 및 시간 필드로 보충 또는 대체될 수 있다. 마찬가지로, TSN 및/또는 TCV 값들의 세션 연결이 ITA와 폰의 TPM으로부터 이용가능하다면, 누구나 내부 RIM Certificate 내의 적절한 위치에서 TSN 및/또는 TCV의 세션 값들의 체인화된 기록을 포함한다. 해시 확장을 이용하는 것은, 검증기에 의해 검증될 수 있는 방식으로 TSN 및/또는 TCV의 세션 값들의 이력을 캡쳐하는 옵션일 수 있다.
이러한 보충 정보를 TSN/TCV에 대한 날짜/시간 또는 세션 연결 정보(session-bridged information)로서 포함하는 가능한 필드에 관해서는, 현재 RIM_Certificate 포맷에서 이용가능한 extensionDigest 필드(64 바이트)를 이용할 수 있다. 이 필드는 독점의 또는 보조의 데이터 필드의 다이제스트로 의미될 수 있고 따라서, 이 날짜 및 시간 데이터의 삽입을 위한 위치를 제공할 수 있다.
특징들 및 요소들이 실시예들에서 특정 조합으로 설명되어 있지만, 각각의 특징 또는 요소는 실시예들의 다른 특징들 및 요소들 없이 단독으로, 또는 다른 특징들 및 요소들을 갖고 또는 갖지 않고 여러 조합들로 이용될 수 있다. 본 발명에 제공된 방법들 또는 흐름도들은 범용 컴퓨터 또는 프로세서에 의한 실행을 위해 컴퓨터 판독가능 저장 매체에서 실체적으로 구현되는 컴퓨터 프로그램, 소프트웨어, 또는 펌웨어로 실행될 수 있다. 컴퓨터 판독가능 저장 매체들의 예들은 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 레지스터, 캐시 메모리, 반도체 메모리 디바이스, 내부 하드 디스크 및 착탈 가능 디스크와 같은 자기 매체, 자기 광학 매체, 및 CD-ROM 디스크 및 디지털 다기능 디스크(DVD)와 같은 광학 매체를 포함한다.
적절한 프로세서들은 예를 들어, 범용 프로세서, 특수 목적 프로세서, 통상적인 프로세서, 디지털 신호 프로세서(DSP), 복수의 마이크로프로세서, DSP 코어와 관련된 1 이상의 마이크로프로세서, 컨트롤러, 마이크로컨트롤러, 응용 주문형 직접 회로(ASIC), 필드 프로그래밍가능 게이트 어레이(FPGA) 회로, 임의의 기타 유형의 집적 회로(IC), 및/또는 상태 머신을 포함한다.
[실시예들]
1. 무선 통신에서 시간 값들을 보호하는 방법에 있어서,
시간 스탬프 요청을 전송하고,
시간 스탬프 요청에 응답하여 시간 스탬프를 수신하고,
틱 스탬프를 발생시키고,
틱 스탬프를 전송하고,
대체 정확도 스테이트먼트를 수신하는 것을 포함하는 방법.
2. 실시예 1에 있어서, 수신된 대체 정확도 스테이트먼트는 신뢰성있는 시간 스테이트먼트인 것인 방법.
3. 무선 통신에서 시간 값을 보호하는 방법에 있어서, 제1 시간 스탬프를 수신하고, 연속하는 전송을 위해 두개의 틱 스탬프들을 발생시키고, 변경된 시간 스탬프를 수신하고, 변경된 시간 스탬프를 틱 스탬프하는 것을 포함하는 방법.
4. 실시예 3에 있어서, 두개의 시간 스탬프는 미리 정해진 간격 동안 연속하여 전송되는 것인 방법.
5. 실시예 3 또는 4에 있어서, 제1 시간 스탬프는 데이터를 포함하는 것인 방법.
6. 실시예 3 내지 5 중 어느 하나에 있어서, 데이터는 두개의 틱 스탬프를 발생시키기 위한 명령을 포함하는 것인 방법.
7. 실시예 3 내지 6 중 어느 하나에 있어서, 제1 시간 스탬프 및 변경된 시간 스탬프는 서로 다른 시간 허가부들로부터 수신되는 것인 방법.
8. 실시예 3 내지 7 중 어느 하나에 있어서, 서로 다른 시간 허가부들 중 적어도 하나가 내부 시간 에이전트인 것인 방법.
9. 실시예 3 내지 8 중 어느 하나에 있어서,
실시간 클록 값을 페치하고,
실시간 클록 값을 보호하고,
실시간 클록 값으로부터 시간 스탬프를 발생시키는 것을 더 포함하는 방법.
10. 선행하는 실시예들 중 어느 하나에 있어서, 신뢰성있는 처리 모듈(TPM; trusted processing module)을 이용하여 로컬 클록을 보호하는 것을 더 포함하는 방법.
11. 선행하는 실시예들 중 어느 하나에 있어서, 방법은 신뢰성있는 컴퓨팅 방법에 기초하는 것인 방법.
12. 선행하는 실시예들 중 어느 하나에 있어서, TPM은 외부 클록에 안전하게 결합되어 있는 것인 방법.
13. 선행하는 실시예들 중 어느 하나에 있어서, 초기 시간을 제공하는 시간 소스에 의해 제공된 데이터를 감사(audit)하기 위해 적어도 하나의 정확도 스테이트먼트(AS)를 이용하는 것을 더 포함하는 방법.
14. 선행하는 실시예들 중 어느 하나에 있어서, 오퍼레이팅 신뢰 센터(trust center)의 비용을 감소시키기 위해 X.509 인증서의 애플리케이션에서 OCSP(online certificate status protocol) 응답기를 생략하는 것을 더 포함하는 방법.
15. 선행하는 실시예들 중 어느 하나에 있어서, 인증서들을 검사하기 위해 안전한 시간 소스를 이용하는 것을 더 포함하는 방법.
16. 선행하는 실시예들 중 어느 하나에 있어서, 다른 엔티티들과 협업하여 디바이스에 의해 신뢰성있는 시간 스테이트먼트를 확립할 가능성에 기초하는 모바일 디바이스에 대한 복수의 사용 시나리오들을 가능하게 하는 것을 더 포함하는 방법.
17. 선행하는 실시예들 중 어느 하나에 있어서, 정확도 스테이트먼트(AS)는 하드웨어가 보안된 디바이스 측 카운터 값들 사이의 신뢰성있는 링크에 실제 시간을 제공하는 것인 방법.
18. 실시예 17에 있어서, AS는 신뢰성있는 컴퓨팅 방법에 의해 확립되어 보안되고, 유도된 시간 스테이트먼트의 충분한 유연성 및 스케일링 신뢰성을 제공하는 것인 방법.
19. 선행하는 실시예들 중 어느 하나에 있어서, 시간 스탬프가 생성된 후 외부 시간이 TPM에 결합되는 것인 방법.
20. 선행하는 실시예들 중 어느 하나에 있어서, 실시간 클록 값들과 틱 카운터 값들 사이에 관계를 얻기 위해 다른 엔티티들과의 그리고 플랫폼 상의 TPM의 내부 틱 카운터 사이의 협업이 존재하는 것인 방법.
21. 실시예 20에 있어서, 서명된 틱 카운터 값과 시간 스탬프는 결합하여 이용되는 것인 방법.
22. 선행하는 실시예들 중 어느 하나에 있어서, 복수의 엔티티 인스턴스들이 이용될 때 그리고 틱 카운터 값(TCV) TCV_1, 틱 세션 논스(TSN) TSN_a, D(blob)_l 또는 D_l, 및 TS_1, ..., TS_n과 같이 아래첨자 표기를 채택하여, 실제 물리 시간이 t_l,..., t_n으로서 표기되고, 일정 실시간에서 틱 카운터의 값이 TCV(t)으로서 쓰여지는 것인 방법.
23. 실시예 21 또는 22에 있어서, AS가 신뢰성 및 보안성에 완전히 만족스러은 것이 아니라면, 검증기는 정확도에 대해 각각 T_l과 t_a 사이 그리고 t_a와 T_2 사이의 기간들 내에서 TPM 틱 카운터의 적절한 기능을 신뢰하여 이들 사이의 시간 간격을 평가할 필요가 있는 것인 방법.
24. 실시예 22 또는 23에 있어서, T(TCV(t))를 실시간 클록 값에 보다 양호하게 결합하기 위하여, 값들이 두개의 시간 스탬프들 사이에서 프레임되는 것인 방법.
25. 실시예 22 내지 24 중 어느 하나에 있어서, TA로부터의 시간 스탬프들은 TS(TCV) 주변에서 폴딩되어, 다른 신뢰성있는 시간 스탬프(TTS)를 가져오는 것인 방법.
26. 실시예 22 내지 25 중 어느 하나에 있어서, 일정 초기 시간에서, 플랫폼(P)은 TA로부터 일부 알려진 데이터(D)를 통해 시간 스탬프를 요청하는 것인 방법.
27. 실시예 22 내지 26 중 어느 하나에 있어서, t_a에서, 시간 허가부(TA) 는 TStamp(D,t_a)를 생성하고 TStamp(D,t_a)를 P에 즉시 되전송하는 것인 방법.
28. 실시예 22 내지 27 중 어느 하나에 있어서, P는 시간 t ≥ t_a에서 TA로부터 시간 스탬프를 수신하고, TS(TStamp(t_a),TCV(t))를 생성하며 TS(TStamp(t_a),TCV(t))를 TA에 즉시 되전송하는 것인 방법.
29. 실시예 22 내지 28 중 어느 하나에 있어서, TA는 TS(Tstamp(t_a), TCV(t))를 수신하고, t_b에서 SA(t_a,TCV(t),t_b):= TStamp(TS(TStamp(t_a),TCV(t)), t_b)를 생성하며, 이 구조를 P에 즉시 되전송하는 것인 방법.
30. 실시예 22 내지 29 중 어느 하나에 있어서, t_a ≤ T ≤ t_b이고 여기서 T:= T(TCV(t))인 것인 방법.
31. 실시예 22 내지 30 중 어느 하나에 있어서, 시간 t_a에서, TA는 미리 정해진 간격(I) 동안 두개의 연속하는 틱 스탬프들을 발행하라는 P에의 명령을 포함하는 데이터(D)의 시간 스탬프를 발행하는 것인 방법.
32. 실시예 22 내지 31 중 어느 하나에 있어서, TA는 시간 스탬프를 발행한 후 TStamp(D(I),t_a)를 구하고, TA는 플랫폼 P에 시간 스탬프를 즉시 전송하는 것인 방법.
33. 실시예 22 내지 32 중 어느 하나에 있어서, P는 TStamp(D(I),t_a)의 수신시 D(I)||t_a를 틱 스탬프하는 것인 방법.
34. 실시예 22 내지 33 중 어느 하나에 있어서, P는 TSl:= TS(D(I),t_a), TCV(tl))를 구하는 것인 방법.
35. 실시예 22 내지 34 중 어느 하나에 있어서, tl은 틱 스탬프가 발생할 때의 실제 시간이고, P는 틱 스탬프를 TA에 즉시 전송하는 것인 방법.
36. 실시예 22 내지 35 중 어느 하나에 있어서, P는 간격(I) 동안 기다리고나서, TS2:= TS(D(I), t_a || TSl, TCV(t2)) 이도록 제2 틱 스탬프를 틱 스탬프하며, 여기서, t2는 t=tl+I의 (P에서의) 로컬 추정값이며, P는 이 틱 스탬프를 TA에 즉시 전송하는 것인 방법.
37. 실시예 22 내지 36 중 어느 하나에 있어서, TA는 틱 스탬프 TS1과 TS2 양쪽 모두를 수신시 SA'(t_a,D(I),t_b):= TStamp(TS2||TSl,t_b)를 시간 스탬프하는 것인 방법.
38. 실시예 22 내지 37 중 어느 하나에 있어서, 대체 정확도 스테이트먼트(SA')는 관계 t_a ≤ tl < tl+I≤ t_b를 표명하는 신뢰성있는 시간 스테이트먼트이며 여기서 tl:= T(TCV(tl))이고 t2:=T(TCV(tl+I))인 것인 방법.
39. 선행하는 실시예들 중 어느 하나에 있어서, 부트 사이클의 시작시, 신뢰성있는 플랫폼(P) 방법은 내부 시간 에이전트(ITA)를 시작시키며, ITA가 시작되고 TCG 모바일 폰 작업 그룹의 사양의 안전한 부트 기능을 이용하여 신뢰성있는 비타협 상태로 적절하게 구성되는 것을 실행하는 것을 포함하는 것인 방법.
40. 실시예 39에 있어서, 플랫폼이 부트 시간에 로딩된 프로그램의 측정만을 지원한다면, ITA의 신뢰성이 원격 입증을 통하여 외부 검증기에 입증되는 것인 방법.
41. 실시예 39 또는 40에 있어서, 전용 목적을 위한 ITA 인스턴스가 P 상에 공존하는 것인 방법.
42. 실시예 39 내지 41 중 어느 하나에 있어서, ITA는 정확도 스테이트먼트의 생성시 TA를 대체하는 것인 방법.
43. 실시예 39 내지 42 중 어느 하나에 있어서, ITA와 RTC 사이에는 ITA가 언제라도 인증된 실시간 값을 페치하는 안전한 채널이 존재하는 것인 방법.
44. 실시예 39 내지 43 중 어느 하나에 있어서, ITA는 TPM의 암호화 능력을 이용하여 RTC 값들을 보호하는 것인 방법.
45. 실시예 39 내지 44 중 어느 하나에 있어서, ITA는 TPM의 서명 능력 또는 소프트웨어 암호화 라이브러리를 이용하여 RTC 값들로부터 시간 스탬프를 생성하는 것인 방법.
46. 실시예 39 내지 45 중 어느 하나에 있어서, 인증된 서명 키(CSK)를 인증하는 인증서가 AIK에 의해 서명되도록 ITA는 P의 입증 아이덴티티 키(AIK)에 결합된 CSK를 이용하는 것인 방법.
47. 선행하는 실시예들 중 어느 하나에 있어서, RTC와 틱 카운터가 동일한 클록 소스에 의해 구동되는 것인 방법.
48. 선행하는 실시예들 중 어느 하나에 있어서, RTC로부터의 추가적인 정보가 TPM_SIGN_INFO 데이터 서명 내의 미사용 공간 내에 포함되는 것인 방법.
49. 선행하는 실시예들 중 어느 하나에 있어서, 인핸스드 TPM_SIGN_INFO 데이터 구조가 날짜 및 시간의 절대 표시를 제공하도록 특정되는 것인 방법.
50. 선행하는 실시예들 중 어느 하나에 있어서, 범용 시간 클록(UTC) 시간을 그 시간 소스로부터 페치하는데 필요한 시간 d_t, 및 시간 스탬프를 생성하는데 필요한 시간 D_t는 높은 정확도로 알려져 있는 것인 방법.
51. 실시예 50에 있어서, P 상의 시간 관련 TPM-동작은 d_t=O으로서 가정되는 것인 방법.
52. 실시예 50 또는 51에 있어서, 서명 지연이 보상된 정확도 스테이트먼트는 SA(t,t')로 표기되는 것인 방법.
53. 실시예 50 내지 52 중 어느 하나에 있어서, SA(t_a,t_b)로 표기된 서명 지연이 보상된 정확도 스테이트먼트의 생성에서 D_t를 보상하기 위하여, SA가 시간 t_a에서 (D_t, 변수 a)로 변경되도록 TA가 제1 시간 스탬프에서 D_t를 포함하며, TA는 D'= D_t, 또는 D'= D||D_t TStamp(D',t_a)를 생성하고, D' 및 D_t를 P에 즉시 되전송하는 것인 방법.
54. 실시예 50 내지 53 중 어느 하나에 있어서, TA는 시간 t_a에서 D_t를 t_a에 추가하고 (D_t, 변수 b)를 생성하며, TA는 TStamp(D,t_a+D_t)를 생성하고 이를 P에 즉시 되전송하는 것인 방법.
55. 실시예 54에 있어서, 신뢰성있는 시간 스테이트먼트는 SA(t_a,D'=D_t, t_b)(변수 2a), 또는 SA(t_a+D_t,D,t_b)(변수 2b)로서 표현되고 그 후 t_a+D_t ≤ T ≤ t_b(여기서 T:= T(TCV(t))임)로 되며, SA(t_a,D,t_b)로는 단지 t_a ≤ T ≤ t_b(여기서 T:= T(TCV(t))임)를 얻기 때문에 SA(t_a,D,t_b)보다 더 엄격한 시간 한계값을 산출하는 것인 방법.
56. 선행하는 실시예들 중 어느 하나에 있어서, 틱 증분율은 플랫폼 내의 TPM의 팩토리 파라미터인 것인 방법.
57. 선행하는 실시예들 중 어느 하나에 있어서, P는 두개의 정확도 스테이트먼트, S_l:=SA(t_a,TCV(t_l),t_b) 및 S_2:=SA(t_c,TCV(t_2),t_d)를 생성하는 것인 방법.
58. 실시예 56 또는 57에 있어서, P가 S_l 및 S_2를 전달하는 외부 검증기는 S_l 및 S_2에 의해 둘러싸인 기간에서의 TIR의 평균값으로서 실제 TIR의 현재 추정값을 계산하는 것인 방법.
59. 실시예 56 내지 58 중 어느 하나에 있어서, t'_l:= (t_b- t_a)/2이고, t'_2:= (t_d-t_c)/2이며, cTIR(S_l,S_2):= (t'_2-t'_l)/(TCV(t_2)- TCV(t_l))인 것인 방법.
60. 실시예 56 내지 59 중 어느 하나에 있어서, 포함된 정확도 스테이트먼트가 t_l, t_2 각각의 주변에서 일정한 TCV의 시간 간격에 대한 한계값을 산출할 때, cTIR은 상한값과 하한값에 따르는 것인 방법.
61. 실시예 60에 있어서, 한계값들 중 적어도 하나는 (t_c-t_b)/(TCV(t_2)-TCV(t_l)) ≤ cTIR ≤ (t_d-t_a)/(TCV(t_2)- TCV(t_l))로 표현되는 것인 방법.
62. 실시예 56 내지 61 중 어느 하나에 있어서, 포함된 제1 틱 카운터 값과 제2 틱 카운터 값의 차이값으로 정확도가 증가하고, cTIR과 한계값 양쪽 모두가 S_l 및 S_2를 소유하여 엔티티에 의해 계산되는 것인 방법.
63. 실시예 56 내지 62 중 어느 하나에 있어서, TIR 측정에서 각각의 시간 허가부는 독립적으로 선택되는 것인 방법.
64. 실시예 56 내지 63 중 어느 하나에 있어서, 한계값의 정확도가 추가적인 시간 표명들을 이용하여 연속적으로 향상되고 TIR의 드리프트 레이트의 추정값들은 오랜 시간 간격에 걸쳐 확산된 시간 표명들을 이용하여 구해지는 것인 방법.
65. 실시예 56 내지 64 중 어느 하나에 있어서, cTIR 및 cTIR을 가져오는 정확도 스테이트먼트를 포함하는 측정값은 P의 상태, 기능 파라미터들 또는 신뢰성에 대한 평가를 유도하기 위해 여러 환경에 이용되는 것인 방법.
66. 실시예 56 내지 65 중 어느 하나에 있어서, 측정된 cTIR의 통계적 편차가 특정의 미리 설정된 값보다 더 크다면, 디바이스(플랫폼(P)), TPM 또는 틱 카운터 상의 공격으로서 해석되는 것인 방법.
67. 실시예 56 내지 66 중 어느 하나에 있어서, cTIR가 소정의 기간에 걸쳐 일관되게 그리고 상당하게 더 낮아지거나 더 높아지고 시간 디바이스의 에이징에 의해 야기되는 정규의 편차들이 가져오는 것보다 더 높다면, 이는 외부 관측자에 의해 디바이스 틱 카운터의 오동작의 증거로서 해석되는 것인 방법.
68. 실시예 56 내지 67 중 어느 하나에 있어서, cTIR들이 소정의 기간에 걸쳐 무작위하게 그리고 상당하게 더 낮아지거나 더 높아지고 에이징, 전압 변동, 또는 온도 변동 등에 의해 야기되는 정규의 편차들이 허용하는 것보다 더 높다면, 이는 틱 카운터 또는 디바이스의 부당 변경 또는 비정상 동작 상태의 증거로서 해석되는 것인 방법.
69. 실시예 56 내지 68 중 어느 하나에 있어서, 복수의 예상되는 애플리케이션 필드는 내장형 시스템 내의 TPM인 것인 방법.
70. 선행하는 실시예들 중 어느 하나에 있어서, TA는 스테이트먼트를 요청하는 플랫폼의 상태 또는 플랫폼이 TPM과 통신함을 알지 못하는 것인 방법.
71. 실시예 70에 있어서, P는 입증 아이덴티티 키(AIK)를 생성하였고, P가 TCG에 의해 정의된 프로토콜에 따라 요청하였던 프라이버시 CA(PCA)로부터 AIK에 대한 AIK 크리덴션을 소유하는 것인 방법.
72. 실시예 70 또는 71에 있어서, 정확도 스테이트먼트는 플랫폼 아이덴티티에 결합되는 것인 방법.
73. 실시예 70 내지 72 중 어느 하나에 있어서, P는 AIK로부터 인증된 서명 키(CSK)를 생성하는 것인 방법.
74. 실시예 70 내지 73 중 어느 하나에 있어서, P와 TA는 각각 정확도 스테이트먼트, AS()와 SA를 확립하고, P에 의한 틱 스탬프의 각각의 인스턴스는 CSK를 서명 키로서 이용하도록 특정되는 것인 방법.
75. 실시예 70 내지 74 중 어느 하나에 있어서, 이후 시간 t에서 신뢰성있는 플랫폼 P에 의해 데이터 블랍(D)의 소유를 검증기(V)에게 증명하기 위하여, 본 방법은,
P가 TTS(t):= TS[CSK](D,TCV(t))를 생성하고, - CSK는 AIK에 의해 인증된 새로운 키 또는 정확도 스테이트먼트 생성에 이용된 최초의 키임 -
P가 V에 AIK 크리덴셜, CSK의 공개 부분, 정확도 스테이트먼트 및 내부에 서명된 데이터, TTS(t), D 및 TCV(t)를 공개하는 것을 더 포함하는 방법.
76. 실시예 70 내지 75 중 어느 하나에 있어서, V는 정확도 스테이트먼트가 액티브 상태의 TPM으로 신뢰성있는 플랫폼에 의해 생성되었음을 검증하는 것인 방법.
77. 실시예 70 내지 76 중 어느 하나에 있어서, V는 신뢰성있는 시간 스테이트먼트, TTS(t)가 동일한 플랫폼에 의해 생성되었음을 검증하는 것인 방법.
78. 선행하는 실시예들 중 어느 하나에 있어서, TPM에 의한 모든 틱 스탬프 동작은 CSK를 이용하여 특정한 TCV에서 일부 데이터의 소유를 나타내는 TTS를 생성하는 것인 방법.
79. 선행하는 실시예들 중 어느 하나에 있어서, PCA는 AIK 인증 및 TTS 생성의 프로세스를 통합함으로써 정확도 스테이트먼트를 제공하는 TA의 역할을 행하는 것인 방법.
80. 실시예 79에 있어서, 플랫폼(P)과 프라이버시 CA(PCA) 사이에 AIK를 인증하는 것을 더 포함하며, P는 PCA로부터 AIK의 인증을 요청하고 정확도 스테이트먼트, SA에 대한 요청을 발행하는 것인 방법.
81. 실시예 79 또는 80에 있어서, 플랫폼(P)과 프라이버시 CA(PCA) 사이에 AIK를 인증하는 것은, PCA와 P가 SA의 생성을 위한 프로토콜을 실행시키는 것을 더 포함하며, 서명된 데이터(D)는 인증이 요청되거나 데이터에 연결되는 AIK의 공개 부분으로서 특정되는 것인 방법.
82. 실시예 79 내지 81 중 어느 하나에 있어서, 플랫폼(P)과 프라이버시 CA(PCA) 사이에 AIK를 인증하는 것은, PCA가 AIK 인증을 시작하는 것을 더 포함하는 것인 방법.
83. 선행하는 실시예들 중 어느 하나에 있어서, TTS는 AIK 인증 요청의 수신의 의미를 갖는 것인 방법.
84. 선행하는 실시예들 중 어느 하나에 있어서, 발생된 TTS 및 AIK 인증서의 의미는, 검증기에 함께 제공될 때, P가 특정 시간에 AIK 인증을 요청했던 신뢰성있는 플랫폼이고, AIK 인증 요청의 시간이 SA 내의 두개의 TCV들에 의해 나타내어진 두개의 시간 값들 내에 존재한다는 것인 방법.
85. 선행하는 실시예들 중 어느 하나에 있어서, TTS는 P의 특정한 AIK에 결합되는 것인 방법.
86. 선행하는 실시예들 중 어느 하나에 있어서,
PCA가 AIK 인증을 실행하고 및 인증서를 생성하고,
AIK의 공개 부분 또는 전체 AIK 인증서를 서명된 데이터로서 포함하는, SA 생성 프로토콜의 제1 시간 스탬프를 생성하고,
AIK 인증서 및 제1 시간 스탬프를 P에 전송하고, 선택적으로 타이머를 시작시키며,
P와 PCA가 SA 생성 프로세스를 완료하는 것을 더 포함하며,
P는 해당 AIK에 대한 CSK를 이용하는 것인 방법.
87. 실시예 86에 있어서, PCA는 타이머 값이 미리 정해진 특정값보다 더 크지 않은 경우에만 마지막 시간 스탬프를 발행함으로써 생성된 TTS의 신규성을 강화할 수 있고, 그 결과 TTS에서 나타내어진 TCV가 AIK 인증 후에야만 제한된 시간에 있게 되는 것인 방법.
88. 선행하는 실시예들 중 어느 하나에 있어서, 원격 입증 프로세스는 TPM이 변하는 시간에 대한 스테이트먼트를 포함하도록 확장되는 것인 방법.
89. 선행하는 실시예들 중 어느 하나에 있어서, 검증기로부터의 입증 요청의 수신 및 입증 클라이언트와 TPM 사이의 인가 세션의 확립 후, 틱 스탬프 TS_A가 생성되는 것인 방법.
90. 실시예 89에 있어서, 인가 세션의 확립은 후속하는 원격 입증에 이용된 AIK에 대한 CSK를 이용하여 생성되는 것인 방법.
91. 실시예 90에 있어서, P는 TPM_Quote 커맨드를 이용하여 AIK로 PCR들을 서명함으로써 원격 입증을 시작하는 것인 방법.
92. 실시예 88 내지 91 중 어느 하나에 있어서, 제2 틱 스탬프 TS_B는 검증기에 입증 패키지(AP)를 전송하기 직전에 생성되는 것인 방법.
93. 실시예 88 내지 92 중 어느 하나에 있어서, 입증 클라이언트는 위에서 설명된 방법들 중 임의의 것에 의해 정확도 스테이트먼트를 생성하도록 TA에 시간 스탬프를 요청하는 것인 방법.
94. 실시예 88 내지 93 중 어느 하나에 있어서, 입증 클라이언트는 RTC에 기초하여 단순히 틱 스탬프들 대신에 정확도 스테이트먼트를 생성하도록 내부 ITA로서 기능하는 것인 방법.
95. 선행하는 실시예들 중 어느 하나에 있어서, 틱 스탬프는 변경된 입증 패키지 데이터 구조에 통합되는 것인 방법.
96. 선행하는 실시예들 중 어느 하나에 있어서, 플랫폼의 저장된 측정 로그(SML)는 틱 스탬프들에 의해 확장되는 것인 방법.
97. 선행하는 실시예들 중 어느 하나에 있어서, 원격 입증에 포함된 시간 스테이트먼트는 신뢰성있는 플랫폼 상태의 큰 데이터베이스를 유지하는 검증기의 부담을 부분적으로 경감시키는데 이용되는 것인 방법.
98. 선행하는 실시예들 중 어느 하나에 있어서, 시간 스테이트먼트는 이전 시간에 P의 상태를 통하여 입증에 비교되는 것인 방법.
99. 선행하는 실시예들 중 어느 하나에 있어서, TPM 카운터의 각각의 리셋에서, 외부 엔티티들에 시간 스테이트먼트를 전달하기 위하여 잘 정의된 보안 컨텍스트를 구하는데 논스가 필요한 것인 방법.
100. 실시예 99에 있어서, 틱 세션 논스(TSN)는 이후에 리셋 동작과 시간 스탬프를 연관시키는데 이용되는 것인 방법.
101. 실시예 99 또는 100에 있어서, 논스는 각각의 리셋 동작에 대해 그리고 디바이스에 대해 고유하며, 따라서 TPM 내의 난수 발생기에 의해 생성되는 것인 방법.
102. 실시예 99 내지 101 중 어느 하나에 있어서, 실제 TSN은 TPM_GetTicks 커맨드를 발행함으로써 얻어지고 TSN 값은 결과적인 CURRENT_TICKS 데이터 구조 내에 포함되는 것인 방법.
103. 실시예 99 내지 102 중 어느 하나에 있어서, 리부트 사이클에 대해 그리고 서로 다른 전원 모드에 대해 또한 유지하는 세션을 확립하기 위하여 메타 세션이 필요하고 이에 의해 메타 TSN(mTSN)를 이용하여 서로 다른 TSN 세션들에 걸쳐 있을 수 있는 세션을 제공하는 것인 방법.
104. 실시예 99 내지 103 중 어느 하나에 있어서, mTSN은 외부 시간 제공자또는 외부 시간 허가부(TA)에 의해 생성되거나 또는 TPM의 난수 발생기에 의해 내부적으로 생성되는 것인 방법.
105. 실시예 99 내지 104 중 어느 하나에 있어서, TA는 플랫폼의 초기화 프로세스 동안 특정한 시점에서 디바이스에 mTSN 요청을 수신하는 것인 방법.
106. 실시예 99 내지 105 중 어느 하나에 있어서, 시간 제공자(TA)에서의 논스 데이터에 대한 필요는 TA 및 오퍼레이터에 의해 발행되는 서명들의 확장적 이용에 의해 경감되는 것인 방법.
107. 선행하는 실시예들 중 어느 하나에 있어서, 실시간 클록(RTC)은 플랫폼 설계에 포함되는 것인 방법.
108. 선행하는 실시예들 중 어느 하나에 있어서, 방법은 디지털 권한 측정(DRM) 디바이스에 의해 수행되는 것인 방법.
109. 실시예 108에 있어서, 권한 발행기(RI)는 권한 오브젝트 액세스 프로토콜(ROAP)의 실행 동안에 DRM 디바이스에 AS 및 틱 스탬프를 요청하는 것인 방법.
110. 실시예 108 또는 109에 있어서, AS는 플랫폼 상의 입증 스테이트먼트에 결합되는 것인 방법.
111. 실시예 108 내지 110 중 어느 하나에 있어서, RI는 DRM 에이전트가 액티브 상태이고 비타협적이며, 정확하고 부당 변경되지 않은 시간에 대한 액세스를 갖는다는 보증을 획득하는 것인 방법.
112. 실시예 108 내지 111 중 어느 하나에 있어서, 권한 오브젝트는 모든 검사가 성공적인 경우에만 전달되는 것인 방법.
113. 실시예 108 내지 112 중 어느 하나에 있어서, RI는 권한 오브젝트(RO) 내의 TSN 및 TCV들과 관련하여 사용 권한에서의 시간 한계값을 코딩하는 것인 방법.
114. 실시예 108 내지 113 중 어느 하나에 있어서, DRM 에이전트는 디바이스 상의 ITA와 협업하거나 또는 DRM 에이전트는 권한 획득을 위하여 초기화 단계에서 RO를 수신할 때 통합되는 것인 방법.
115. 실시예 108 내지 114 중 어느 하나에 있어서, DRM 에이전트는 TPM으로부터 틱 스탬프를 획득하고 TSN 및 TCV과 RO에서 표현되는 한계값을 비교하고 따라서 컨텐츠에 대한 액세스 제어를 실행하는 것인 방법.
116. 실시예 108 내지 115 중 어느 하나에 있어서, RO들에서의 시간 한계값은 표준 시간 포맷을 이용하고 이는 시간 한계값과 TCV를 연관시키는 DRM 에이전트의 작업인 것인 방법.
117. 실시예 108 내지 116 중 어느 하나에 있어서, 단일의 틱 세션에 대한 TCV들의 유효성에 대한 제한은 고유의 TSN으로 표현되는 것인 방법.
118. 실시예 108 내지 117 중 어느 하나에 있어서, 틱 카운터가 리셋되고 TSN이 업데이트될 때 권한은 특정한 TSN 값에 결합되고 DRM 에이전트는 보호된 컨텐츠에 대한 액세스를 허가하지 않을 것인 방법.
119. 실시예 108 내지 118 중 어느 하나에 있어서, 신뢰성있는 시간 스테이트먼트가 RIM 인증서에 이용되는 것인 방법.
120. 실시예 119에 있어서, RIM 인증서의 검증은 실제 날짜 및 시간으로 표현되는 유효성 기간들에 대조되어 검사되는 것인 방법.
121. 실시예 119 또는 120에 있어서, 신뢰성있는 모바일의 내부 RIM 인증서는 신뢰성있는 내부 시간 에이전트(ITA)를 이용하는 것인 방법.
122. 실시예 119 또는 121 중 어느 하나에 있어서, 해시 확장을 이용하여 검증기에 의해 검증된 방식으로 TSN 및/또는 TCV의 세션 값들의 이력을 캡쳐하는 것인 방법.
123. 선행하는 실시예들 중 어느 하나를 이용하도록 구성된 무선 송수신 유닛.
124. 무선 송수신 유닛에 있어서,
시간 스탬프 요청을 전송하고,
시간 스탬프 요청에 응답하여 시간 스탬프를 수신하고,
틱 스탬프를 발생시키고,
틱 스탬프를 전송하고,
대체 정확도 스테이트먼트를 수신하도록 구성된 신뢰성있는 플랫폼 모듈(TPM)을 포함하는 무선 송수신 유닛.
125. 무선 송수신 유닛(WTRU)에 있어서,
제1 시간 스탬프를 수신하고,
연속하는 전송을 위해 두개의 틱 스탬프들을 발생시키고,
변경된 시간 스탬프를 수신하고,
변경된 시간 스탬프를 틱 스탬프하도록 구성된 신뢰성있는 플랫폼 모듈(TPM)을 포함하는 무선 송수신 유닛.
126. 실시예 124 또는 125에 있어서, TPM은 미리 정해진 간격 동안 두개의 틱 스탬프를 연속하여 전송하도록 구성된 것인 무선 송수신 유닛.
127. 실시예 124 내지 126 중 어느 하나에 있어서, TPM은 데이터를 포함하는 제1 시간 스탬프를 수신하도록 구성된 것인 무선 송수신 유닛.
128. 실시예 124 내지 127 중 어느 하나에 있어서, TPM은 제1 시간 스탬프에서 수신된 데이터에 기초하여 두개의 틱 스탬프를 발생시키도록 구성된 것인 무선 송수신 유닛.
129. 실시예 124 내지 128 중 어느 하나에 있어서, TPM은 서로 다른 시간 허가부들로부터 제1 시간 스탬프 및 변경된 시간 스탬프를 수신하도록 구성된 것인 무선 송수신 유닛.
130. 실시예 124 내지 129 중 어느 하나에 있어서, TPM은 내부 시간 에이전트를 더 포함하는 것인 무선 송수신 유닛.
131. 실시예 130에 있어서, 내부 시간 에이전트는,
실시간 클록 값을 페치하고,
실시간 클록 값을 보호하고,
실시간 클록 값으로부터 시간 스탬프를 발생시키도록 구성된 것인 무선 송수신 유닛.
132. 무선 통신에서 정확도 스테이트먼트를 보호하는 방법에 있어서,
입증 아이덴티티 키(AIK)로부터 인증된 서명 키(CSK)를 발생시키고,
정확도 스테이트먼트를 발생시키고,
신뢰성있는 시간 스테이트먼트(TTS)를 발생시키고,
AIK 크리덴셜, CSK의 일부분, 정확도 스테이트먼트 또는 서명된 데이터를 공개하는 것을 포함하는 방법.
133. 실시예 132의 방법을 이용하도록 구성된 무선 송수신 유닛.
소프트웨어와 관련된 프로세서는 WTRU, UE, 단말기, 기지국, 무선 네트워크 컨트롤러(RNC) 또는 임의의 호스트 컴퓨터에 이용하기 위한 무선 주파수 트랜시버를 구현하는데 이용될 수 있다. WTRU는 카메라, 비디오 카메라 모듈, 비디오폰, 스피커폰, 바이블레이션 디바이스, 스피커, 마이크로폰, 텔레비젼 트랜시버, 핸드 프리 헤드셋, 키보드, 블루투스® 모듈, 주파수 변조(FM) 무선 유닛, 액정 디스플레이(LCD) 표시 유닛, 유기 발광 다이오드 (OLED) 표시 유닛, 디지털 뮤직 플레이어, 미디어 플레이어, 비디오 게임 플레이어 모듈, 인터넷 브라우저, 및/또는 임의의 무선 근거리 통신 네트워크(WLAN) 모듈 또는 초광대역(UWB) 모듈과 같이, 하드웨어 및/또는 소프트웨어로 구현되는 모듈과 결합하여 이용될 수 있다.
185: 외부 데이터 I/O
115: 통신 프로세서 + SW
110: 애플리케이션 프로세서 + SW
108: 플랫폼 프로세서 & SW
120: 데이터용 외부 메모리
125: 기존의 SIM 기능 블록
135: 시간 리포트 & 동기 컨트롤러
145: 부당 변경 검출 및 전원 고장
155: 선택적 RTC
160: 선택적 TPM
165: 외부 시간 허가부
208: 플랫폼 프로세서 & SW
210: 애플리케이션 프로세서 + SW
215: 통신 프로세서 + SW
220: 데이터용 외부 메모리
233: 외부 시간 허가부
235: 시간 재동기 제어 SW
240: 선택적 STC
245: 시간 리포트 & 동기 컨트롤러
255: 부당 변경 검출 및 전원 고장
260: 선택적 TPM

Claims (18)

  1. 무선 통신에서 시간 값들을 보호하는 방법에 있어서,
    제1 틱(tick) 스탬프 및 제2 틱 스탬프를 연속적으로(successively) 송신하라는 명령을 포함하는 제1 시간 스탬프를 송신하는 단계,
    상기 제1 틱 스탬프를 수신하는 단계,
    상기 제1 틱 스탬프의 생성 이후에 미리 정해진 시간량(amount of time)이 만료하면 생성되는 상기 제2 틱 스탬프를 수신하는 단계,
    상기 제1 틱 스탬프 및 상기 제2 틱 스탬프에 기초하여 상기 미리 정해진 시간량을 결정하는 단계, 및
    상기 제1 틱 스탬프의 표시, 상기 제2 틱 스탬프의 표시, 및 상기 미리 정해진 시간량의 표시를 포함하는 제2 시간 스탬프를 생성하기 위해 상기 제1 시간 스탬프를 변경하는 단계를 포함하는, 시간 값 보호 방법.
  2. 제1항에 있어서, 상기 제1 시간 스탬프는 데이터를 포함하는 것인 시간 값 보호 방법.
  3. 제1항에 있어서, 상기 명령은 상기 미리 정해진 시간량을 포함하는 것인, 시간 값 보호 방법.
  4. 제1항에 있어서, 제1 시간 인증부(authority)로부터 상기 제1 시간 스탬프를 획득하는 단계를 더 포함하는, 시간 값 보호 방법.
  5. 제1항에 있어서,
    실시간 클록 값을 페치(fetch)하는 단계,
    상기 실시간 클록 값을 보호하는 단계, 및
    상기 실시간 클록 값으로부터 상기 제1 시간 스탬프를 생성하는 단계
    를 더 포함하는, 시간 값 보호 방법.
  6. 무선 송수신 유닛(WTRU; wireless transmit/receive unit)에 있어서,
    신뢰성 있는 플랫폼 모듈(TPM; Trusted Platform Module)을 포함하고, 상기 TPM은,
    제1 틱(tick) 스탬프 및 제2 틱 스탬프를 연속적으로(successively) 송신하라는 명령을 포함하는 제1 시간 스탬프를 송신하고,
    상기 제1 틱 스탬프를 수신하고,
    상기 제1 틱 스탬프의 생성 이후에 미리 정해진 시간량(amount of time)이 만료하면 생성되는 상기 제2 틱 스탬프를 수신하고,
    상기 제1 틱 스탬프 및 상기 제2 틱 스탬프에 기초하여 상기 미리 정해진 시간량을 결정하며,
    상기 제1 틱 스탬프의 표시, 상기 제2 틱 스탬프의 표시, 및 상기 미리 정해진 시간량의 표시를 포함하는 제2 시간 스탬프를 생성하기 위해 상기 제1 시간 스탬프를 변경하도록 구성된 것인, 무선 송수신 유닛(WTRU).
  7. 제6항에 있어서, 상기 제1 시간 스탬프는 데이터를 포함하는 것인, 무선 송수신 유닛(WTRU).
  8. 제6항에 있어서, 상기 명령은 상기 미리 정해진 시간량을 포함하는 것인, 무선 송수신 유닛(WTRU).
  9. 제6항에 있어서, 상기 TPM은 또한, 제1 시간 인증부(authority)로부터 상기 제1 시간 스탬프를 획득하도록 구성된 것인, 무선 송수신 유닛(WTRU).
  10. 제6항에 있어서, 상기 TPM은 또한,
    실시간 클록 값을 페치(fetch)하고,
    상기 실시간 클록 값을 보호하며,
    상기 실시간 클록 값에 기초하여 상기 제1 시간 스탬프를 생성하도록 구성된 것인, 무선 송수신 유닛(WTRU).
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
KR1020107020972A 2008-02-19 2009-02-19 안전하고 신뢰성있는 시간 기술을 위한 방법 및 장치 KR101544629B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US2966908P 2008-02-19 2008-02-19
US61/029,669 2008-02-19

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020147006787A Division KR20140052031A (ko) 2008-02-19 2009-02-19 안전하고 신뢰성있는 시간 기술을 위한 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20100138944A KR20100138944A (ko) 2010-12-31
KR101544629B1 true KR101544629B1 (ko) 2015-08-17

Family

ID=40902681

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020167007938A KR101709456B1 (ko) 2008-02-19 2009-02-19 안전하고 신뢰성있는 시간 기술을 위한 방법 및 장치
KR1020147006787A KR20140052031A (ko) 2008-02-19 2009-02-19 안전하고 신뢰성있는 시간 기술을 위한 방법 및 장치
KR1020107020972A KR101544629B1 (ko) 2008-02-19 2009-02-19 안전하고 신뢰성있는 시간 기술을 위한 방법 및 장치

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020167007938A KR101709456B1 (ko) 2008-02-19 2009-02-19 안전하고 신뢰성있는 시간 기술을 위한 방법 및 장치
KR1020147006787A KR20140052031A (ko) 2008-02-19 2009-02-19 안전하고 신뢰성있는 시간 기술을 위한 방법 및 장치

Country Status (6)

Country Link
US (2) US8499161B2 (ko)
EP (1) EP2255561A2 (ko)
JP (3) JP5216873B2 (ko)
KR (3) KR101709456B1 (ko)
CN (2) CN102007787B (ko)
WO (1) WO2009105542A2 (ko)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2255561A2 (en) 2008-02-19 2010-12-01 Interdigital Patent Holdings, Inc. A method and apparatus for secure trusted time techniques
US7984320B2 (en) * 2008-03-28 2011-07-19 Apple Inc. Silent time tampering detection
US20100030874A1 (en) * 2008-08-01 2010-02-04 Louis Ormond System and method for secure state notification for networked devices
CN101587523B (zh) * 2009-07-02 2012-04-18 飞天诚信科技股份有限公司 保护软件的方法和装置
US9490984B2 (en) * 2009-09-14 2016-11-08 Interdigital Patent Holdings, Inc. Method and apparatus for trusted authentication and logon
KR101563828B1 (ko) * 2009-09-14 2015-10-27 인터디지탈 패튼 홀딩스, 인크 신뢰성있는 인증 및 로그온을 위한 방법 및 장치
US9554280B2 (en) * 2009-12-16 2017-01-24 Google Technology Holdings LLC Method for managing data communication between a communication device and another device and communication device
CN102763111B (zh) * 2010-01-22 2015-08-05 交互数字专利控股公司 用于可信联合身份管理和数据接入授权的方法和设备
US9380448B2 (en) * 2010-02-09 2016-06-28 Mediatek Inc. Methods for accessing subscriber identity cards via a dedicated interface and systems containing subscriber identity cards each with a dedicated interface
US8667263B2 (en) * 2010-02-12 2014-03-04 The Johns Hopkins University System and method for measuring staleness of attestation during booting between a first and second device by generating a first and second time and calculating a difference between the first and second time to measure the staleness
CN103124973B (zh) 2010-09-22 2015-09-30 国际商业机器公司 证明引导过程期间交互式组件的使用
US8869264B2 (en) 2010-10-01 2014-10-21 International Business Machines Corporation Attesting a component of a system during a boot process
KR101377967B1 (ko) 2010-10-20 2014-03-25 엘지전자 주식회사 접근점을 이용한 다중 무선 접속 시스템에서 데이터를 송수신하는 방법 및 장치
WO2012053844A2 (en) * 2010-10-20 2012-04-26 Lg Electronics Inc. Method of transmitting and receiving data in a multi radio access technology system and apparatus therefor
US20120131334A1 (en) * 2010-11-18 2012-05-24 International Business Machines Corporation Method for Attesting a Plurality of Data Processing Systems
KR101527670B1 (ko) 2011-05-26 2015-06-09 엘지전자 주식회사 무선 통신 시스템에서 클라이언트 협력을 위한 연결 설정 방법 및 장치
US9301123B2 (en) 2011-05-26 2016-03-29 Lg Electronics Inc. Method and apparatus for confirming validity of candidate cooperative device list for client cooperation in wireless communication system
CA2879819C (en) * 2012-06-18 2021-04-20 Ologn Technologies Ag Systems, methods and apparatuses for secure time management
US9292712B2 (en) * 2012-09-28 2016-03-22 St-Ericsson Sa Method and apparatus for maintaining secure time
US9787667B2 (en) * 2012-10-16 2017-10-10 Nokia Technologies Oy Attested sensor data reporting
WO2014178889A1 (en) * 2013-04-30 2014-11-06 Bao Liu Vlsi tamper detection and resistance
JP6219248B2 (ja) * 2014-08-25 2017-10-25 株式会社東芝 情報処理装置及び通信装置
US9977724B2 (en) 2015-09-20 2018-05-22 Google Llc Systems and methods for correcting timestamps on data received from untrusted devices
DE102016008902A1 (de) * 2016-07-22 2018-01-25 Giesecke+Devrient Mobile Security Gmbh Chipset mit gesicherter Firmware
EP3495980B1 (en) * 2016-08-05 2020-11-25 Tendyron Corporation Method and system for secure communication
US10509435B2 (en) * 2016-09-29 2019-12-17 Intel Corporation Protected real time clock with hardware interconnects
US10068068B2 (en) * 2016-12-30 2018-09-04 Intel Corporation Trusted timer service
US10809760B1 (en) * 2018-10-29 2020-10-20 Facebook, Inc. Headset clock synchronization
US11392167B2 (en) * 2019-03-11 2022-07-19 Hewlett Packard Enterprise Development Lp Device clock setting while booting a device
US11212119B2 (en) * 2019-04-05 2021-12-28 Cisco Technology, Inc. Remote attestation of modular devices with multiple cryptoprocessors
US20200366476A1 (en) * 2019-05-17 2020-11-19 Panasonic Avionics Corporation Transient key negotiation for passenger accessible peripherals
US11595819B2 (en) * 2020-05-26 2023-02-28 At&T Intellectual Property I, L.P. Secure attestation packages for devices on a wireless network
CN113485524B (zh) * 2021-07-12 2022-11-11 上海瓶钵信息科技有限公司 基于可信执行环境的时钟同步方法及系统

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH039060A (ja) 1989-06-01 1991-01-16 Nippondenso Co Ltd 燃料噴射装置
JPH0716200Y2 (ja) * 1989-06-15 1995-04-12 矢崎総業株式会社 メモリカード読み出し/書き込み装置
US5189700A (en) 1989-07-05 1993-02-23 Blandford Robert R Devices to (1) supply authenticated time and (2) time stamp and authenticate digital documents
CN101303717B (zh) * 1995-02-13 2015-04-29 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法
JPH1069035A (ja) 1996-08-26 1998-03-10 Konica Corp ハロゲン化銀写真感光材料の処理方法
JPH10154976A (ja) * 1996-11-22 1998-06-09 Toshiba Corp タンパーフリー装置
US5912621A (en) * 1997-07-14 1999-06-15 Digital Equipment Corporation Cabinet security state detection
US6289456B1 (en) * 1998-08-19 2001-09-11 Compaq Information Technologies, Inc. Hood intrusion and loss of AC power detection with automatic time stamp
US6581100B1 (en) * 1998-09-18 2003-06-17 Skyworks Solutions, Inc. System and method for communication parameter determination
JP2000306006A (ja) * 1999-02-17 2000-11-02 Sony Corp 情報処理装置および方法、並びにプログラム格納媒体
US6823456B1 (en) * 1999-08-25 2004-11-23 International Business Machines Corporation System and method for providing trusted services via trusted server agents
JP3456191B2 (ja) 2000-04-20 2003-10-14 日本電気株式会社 移動通信端末
JP4021689B2 (ja) * 2002-03-18 2007-12-12 株式会社東芝 時刻認証装置及びプログラム
AU2003282289A1 (en) 2002-12-04 2004-06-23 Koninklijke Philips Electronics N.V. Method of automatically testing audio/video synchronization
JP4703102B2 (ja) 2003-02-28 2011-06-15 セイコープレシジョン株式会社 時刻進度を補正するタイムスタンプシステムとその方法及びプログラム
TW200522751A (en) * 2003-03-05 2005-07-01 Interdigital Tech Corp Received communication signal processing methods and components for wireless communication equipment
US7197341B2 (en) * 2003-12-22 2007-03-27 Interdigital Technology Corporation Precise sleep timer using a low-cost and low-accuracy clock
US20050133582A1 (en) * 2003-12-22 2005-06-23 Bajikar Sundeep M. Method and apparatus for providing a trusted time stamp in an open platform
CN1642077B (zh) * 2004-01-13 2011-07-06 国际商业机器公司 可信数字时间戳的生成和验证的方法及系统
EP1870814B1 (en) * 2006-06-19 2014-08-13 Texas Instruments France Method and apparatus for secure demand paging for processor devices
EP1635529A1 (en) * 2004-09-09 2006-03-15 Daniel Akenine Method and computer product for proving time and content of data records in a monitored system
US20060074600A1 (en) * 2004-09-15 2006-04-06 Sastry Manoj R Method for providing integrity measurements with their respective time stamps
US8737920B2 (en) * 2004-11-10 2014-05-27 Interdigital Technology Corporation Method and apparatus for managing wireless communication network radio resources
US7643430B2 (en) * 2005-11-30 2010-01-05 Cisco Technology, Inc. Methods and apparatus for determining reverse path delay
TWI506966B (zh) * 2006-05-09 2015-11-01 內數位科技公司 無線裝置安全時間功能
US7584444B2 (en) * 2006-12-19 2009-09-01 Palo Alto Research Center Incorporated System and method for external-memory graph search utilizing edge partitioning
TWI340332B (en) * 2007-02-02 2011-04-11 Ind Tech Res Inst Computerized apparatus and method for version control and management
US20080244746A1 (en) * 2007-03-28 2008-10-02 Rozas Carlos V Run-time remeasurement on a trusted platform
US8036613B2 (en) * 2007-05-07 2011-10-11 Infineon Technologies Ag Communication system and method for operating a communication system
EP2255561A2 (en) 2008-02-19 2010-12-01 Interdigital Patent Holdings, Inc. A method and apparatus for secure trusted time techniques
WO2010039149A1 (en) * 2008-10-03 2010-04-08 Hewlett-Packard Development Company, L.P. Clearing secure system resources in a computing device
US8312284B1 (en) * 2009-11-06 2012-11-13 Google Inc. Verifiable timestamping of data objects, and applications thereof

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TPM Main Part 1 Design Principles Specification Version 1.2 Level 2 Revision 103 9 July 2007 Published*

Also Published As

Publication number Publication date
WO2009105542A3 (en) 2009-12-30
CN102007787B (zh) 2014-05-21
US9396361B2 (en) 2016-07-19
KR20100138944A (ko) 2010-12-31
JP5216873B2 (ja) 2013-06-19
US20100011214A1 (en) 2010-01-14
JP6166397B2 (ja) 2017-07-19
KR101709456B1 (ko) 2017-02-22
EP2255561A2 (en) 2010-12-01
JP2016054569A (ja) 2016-04-14
WO2009105542A2 (en) 2009-08-27
JP2011512774A (ja) 2011-04-21
US8499161B2 (en) 2013-07-30
CN103974258A (zh) 2014-08-06
US20130312125A1 (en) 2013-11-21
JP2013165494A (ja) 2013-08-22
KR20160040724A (ko) 2016-04-14
KR20140052031A (ko) 2014-05-02
CN103974258B (zh) 2017-10-10
CN102007787A (zh) 2011-04-06

Similar Documents

Publication Publication Date Title
KR101544629B1 (ko) 안전하고 신뢰성있는 시간 기술을 위한 방법 및 장치
JP2013165494A5 (ko)
KR101086568B1 (ko) 무선 장치에 대한 보안 시간 기능
CN103595530B (zh) 软件密钥更新方法和装置
Liu et al. Understanding the security of app-in-the-middle IoT
Arikumar et al. Improved user authentication in wireless sensor networks
Zhang et al. BLESS: A BLE application security scanning framework
Pöpper et al. Keeping data secret under full compromise using porter devices
Seshadri et al. Using FIRE & ICE for detecting and recovering compromised nodes in sensor networks
CN114124394A (zh) 一种认证凭证的生成、设备认证方法及装置
Terzi Athanasios Sersemis (CERTH) Charalampos Savvaidis (CERTH) Konstantinos Votis (CERTH) Version v1. 0

Legal Events

Date Code Title Description
A201 Request for examination
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee