KR20080065633A - 제약된 암호 키 - Google Patents

제약된 암호 키 Download PDF

Info

Publication number
KR20080065633A
KR20080065633A KR1020087010426A KR20087010426A KR20080065633A KR 20080065633 A KR20080065633 A KR 20080065633A KR 1020087010426 A KR1020087010426 A KR 1020087010426A KR 20087010426 A KR20087010426 A KR 20087010426A KR 20080065633 A KR20080065633 A KR 20080065633A
Authority
KR
South Korea
Prior art keywords
key
proxy
client device
constraints
derivation function
Prior art date
Application number
KR1020087010426A
Other languages
English (en)
Other versions
KR101032016B1 (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 KR20080065633A publication Critical patent/KR20080065633A/ko
Application granted granted Critical
Publication of KR101032016B1 publication Critical patent/KR101032016B1/ko

Links

Images

Classifications

    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0872Generation of secret information including derivation or calculation of cryptographic keys or passwords using geo-location information, e.g. location data, time, relative position or proximity to other entities
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic 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/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
    • 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/321Cryptographic 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 a third party or a trusted authority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/76Proxy, i.e. using intermediary entity to perform cryptographic operations
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
    • Y04S40/20Information technology specific aspects, e.g. CAD, simulation, modelling, system security

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

매개 디바이스를 통해서 2 개의 디바이스들 사이의 통신을 보안하기 위해 제약된 프록시 키가 이용된다. 제 1 프록시 키는, 제 1 프록시 키의 공유 비밀 키, 하나 이상의 제약들, 및 키 유도 함수에 기초하여 호스트 디바이스 (키 생성기 디바이스) 에서 생성된다. 적어도 공유 비밀 키 및 키 유도 함수는 호스트 디바이스 및 클라이언트 디바이스 (인증 디바이스) 에 알려진다. 제 1 프록시 키는 클라이언트 디바이스와의 통신을 인증하는데 이용하기 위해 프록시 디바이스에 전송된다. 인증된 메세지는 제 1 프록시 키를 이용하여 프록시 디바이스에 의해 생성되고, 클라이언트 디바이스에 전송된다. 클라이언트 디바이스는 키 유도 함수, 하나 이상의 제약들, 및 프록시 디바이스를 인증하기 위한 공유 비밀 키를 이용하여 제 2 프록시 키를 국부적으로 생성한다. 클라이언트 디바이스가 제 2 프록시 키를 이용하여 프록시 디바이스로부터 인증된 메세지에 성공적으로 액세스하는 경우, 프록시 디바이스가 인증된다.
Figure P1020087010426
클라이언트 디바이스, 프록시 디바이스, 호스트 디바이스, 공유 비밀 키, 키 유도 함수

Description

제약된 암호 키{CONSTRAINED CRYPTOGRAPHIC KEYS}
배경
35 U.S.C §119 에 따른 우선권 주장
본 특허 출원은, 발명의 명칭이 "제약된 암호 키 (Constrained Cryptographic Keys)" 로 2005년 9월 29일자로 출원된 미국 가출원 제60/722,185호 및 발명의 명칭이 "프록시에 의한 인증 (Authentication By Proxy)" 으로 2006년 1월 24일자로 출원된 미국 가출원 제60/761,476호를 우선권 주장하며, 이 가출원들은 본 발명의 양수인에게 양도되었으며, 따라서 본 명세서에 참조로서 명백하게 포함된다.
분야
다양한 실시형태들은 보안 통신에 관한 것이고, 더욱 상세하게는, 프록시 디바이스를 통해서 2 개의 파티 (party) 사이에서의 보안 통신을 가능하게 하는 제약된 암호 키에 관한 것이다.
배경
현재, 2 개의 파티 사이에서 보안 통신이 공유 비밀 (shared secret) 을 이용하여 종종 달성된다. 이 공유 비밀은 2 개의 파티가 이 공유 비밀에 기초하여 암호화를 이용함으로써 그 통신 (예를 들어, 데이터 패킷, 메세지 등) 의 내용을 사적으로 지킬 수 있게 한다. 또한, 공유 비밀은, 사실상 통신이 승인을 요 구하는 발신기로부터 왔고 전송중에 변형되지 않았다는 것을 하나의 파티가 인증하도록 한다.
몇몇 경우에서는, 직접적인 및 보안 통신 링크가 2 개의 파티 사이에서 확립될 수 없다. 예를 들어, 제 1 디바이스 및 제 2 디바이스 사이의 보안 통신 링크가 손실되거나 단절될 때, 제 3 디바이스가 제 2 디바이스를 조정 또는 서비스할 필요가 있을 수도 있다. 제 2 디바이스와 통신하기 위해서는, 제 3 디바이스 (예를 들어, 분야 기술자 등) 가 제 2 디바이스와 보안 링크를 확립할 필요가 있다.
공개 키 암호 (비대칭 키 암호) 가 제 1 파티와 제 2 파티 사이에 이용되는 어플리케이션에서, 제 1 파티와 제 2 파티 사이에서 프록시로서 동작하는 제 3 파티에 의해서 이 문제를 해결하기 위해 인증 계층이 종종 이용된다. 제 1 파티는, 제 3 파티가 제 1 파티에 대한 프록시로서 작용하게 하는 프록시 인증을 제 3 파티로 발행 (통상적으로, 제 1 파티의 개인 키로 제 3 파티의 공개 키를 디지털로 서명함으로써) 할 수 있다. 따라서, 제 3 파티는 제 2 파티에 대한 프록시 증명과 함께 그 공개 키를 제공할 수 있다.
그러나, 비대칭 키 암호 알고리즘은 다른 암호 방법에 비해 비교적 계산적으로 손실이 크다. 또한, 프록시 증명이 제 3 파티로 발행되면, 어떠한 유형의 정보를 제 3 파티가 제 2 파티로부터 수신 또는 액세스될 수도 있는지 또는 얼마나 길게 제 3 파티가 제 1 파티에 대한 프록시로서 작용할 수도 있는지에 대한 한계를 정하는 것은 어렵다. 따라서, 계산적으로 효율적이며, 프록시 키 생성기로 하 여금 프록시 키에 대한 제약을 가하도록 허용하는 프록시 키 암호 알고리즘이 필요하다.
개요
클라이언트 디바이스와 프록시 디바이스 사이에서 보안 통신을 가능하게 하는 방법이 제공된다. 제 1 프록시 키는, 호스트 디바이스와 클라이언트 디바이스에 알려진 공유 비밀 키에 기초하여 호스트 디바이스에서 생성된다. 제 1 프록시 키는 프록시 디바이스에 전송된다. 제 2 프록시 키는 프록시 디바이스를 인증하기 위해 이를 이용하는 클라이언트 디바이스에서 생성된다. 인증 알고리즘의 분배는 호스트 디바이스와 클라이언트 디바이스 사이에서 사전-배열될 수도 있다. 마찬가지로, 호스트 디바이스와 클라이언트 디바이스 사이에서 비밀 키의 분배도 또한 사전-배열될 수도 있다. 프록시 디바이스는 제 1 및 제 2 프록시 키가 동일할 때 인증될 수도 있다.
제 1 프록시 키 및 제 2 프록시 키는 키 유도 함수 (KDF; key derivation function) 및 공유 비밀 키를 이용하여 독립적으로 생성될 수도 있다. KDF 는 입력으로서 하나 이상의 제약들 및 공유 비밀 키를 취하여 제 1 프록시 키 및 제 2 프록시 키를 획득한다. 공유 비밀 키는 제 1 프록시 키, 하나 이상의 제약, 및 KDF 의 지식으로만 회복될 수 있다.
이 방법은 호스트 디바이스에서 제 1 프록시 키와 연관된 하나 이상의 제약들을 선택하는 단계를 더 포함하는데, 여기서 제 1 프록시 키 및 제 2 프록시 키는 하나 이상의 제약들에 기초한다. 하나 이상의 제약들은 프록시 디바이스에서 클라이언트 디바이스에 전송될 수도 있고, 여기서 클라이언트 디바이스는 제약을 제 1 프록시 키에 적용한다. 이와 다르게, 하나 이상의 제약들은 호스트 디바이스로부터 클라이언트 디바이스에 전송되고, 여기서 클라이언트 디바이스는 제 2 프록시 키에 제약을 적용한다.
프록시 디바이스에서 클라이언트 디바이스에 전송된 메세지에 표시자가 설정되어, 프록시 키가 이용되어 메세지를 보안하는 것을 클라이언트 디바이스에 나타낸다. 제 1 프록시 키를 유도하도록 이용되는 하나 이상의 제약들은 호스트 디바이스에서 정의될 수도 있고 클라이언트 디바이스에 전송될 수도 있다. 클라이언트 디바이스의 동작은 하나 이상의 제약들에 따라서 프록시 디바이스에 관련하여 제한될 수도 있다.
호스트 디바이스에서 프록시 키를 생성하기 위한 다른 방법이 제공된다. 공유 비밀 키가 획득되고, 동일한 공유 키를 가지는 클라이언트 디바이스와의 통신을 보안하기 위해 이용된다. 제 1 키 유도 함수가 또한 획득되고, 여기서, 제 1 키 유도 함수는 클라이언트 디바이스에 알려진 제 2 키 유도 함수와 관련된다. 프록시 키는 제 1 키 유도 함수 및 공유 비밀 키에 기초하여 생성된다. 프록시 키는 프록시 디바이스로 제공되고, 여기서 프록시 디바이스는 프록시 키를 이용하여 클라이언트 디바이스와의 통신을 인증할 수 있다. 프록시 키를 생성하는 단계 이전에 프록시 키에 대한 하나 이상의 제약이 정의될 수도 있다. 이러한 제약은 프록시 키를 생성하기 위해 이용되고 프록시 디바이스에 전송된다. 하나 이상의 제약들은 클라이언트 디바이스에 전송된다. 프록시 키를 생성하는 단계는 공유 비밀 키와 함께 제 1 키 유도 함수에 대한 파라미터로서 하나 이상의 제약들을 이용하여 프록시 키를 획득하는 단계를 포함한다.
공유 비밀 키는 호스트 디바이스와 클라이언트 디바이스 사이에서 대칭 키 보안 체계에 이용될 수도 있다. 제 1 키 유도 함수는 암호화 블록 사이퍼일 수도 있다.
이 방법은 또한 복수의 암호 함수를 저장하는 단계 및 복수의 암호 함수들 중으로부터 제 1 키 유도 함수를 선택하는 단계를 포함한다. 복수의 키 유도 함수들 중 하나를 지정하여 데이터를 송신할 수도 있다. 하나 이상의 제약들은 프록시 키가 유효한 동안의 기간을 나타내는 타임스탬프를 포함할 수도 있다.
또한, (a) 다른 디바이스들과 통신하기 위한 통신 인터페이스; (b) 공유 비밀 키 및 키 유도 함수를 저장하기 위한 저장 디바이스로서, 여기서 공유 비밀 키 및 키 유도 함수 모두는 클라이언트 디바이스에 알려져 있는, 상기 저장 디바이스; 및/또는 (c) 통신 인터페이스 및 저장 디바이스에 연결된 프로세싱 회로를 포함하는 키 생성기 호스트 디바이스가 제공된다. 프로세싱 회로는, (1) 키 유도 함수 및 공유 비밀 키에 기초하여 프록시 키를 생성하고, 및/또는 (2) 프록시 디바이스로 프록시 키를 전송하도록 구성될 수도 있고, 여기서 프록시 디바이스는 프록시 키를 클라이언트 디바이스와의 통신을 인증하기 위해 이용될 수 있다. 프로세싱 회로는 프록시 키를 생성하기 전에 프록시 키에 대한 하나 이상의 제약들을 정의하도록 또한 구성될 수도 있다. 프록시 키는 하나 이상의 제약들에 기초하여 생성될 수도 있다. 제약은 클라이언트 디바이스를 통해서 사전-배열될 수도 있 고, 및/또는 프록시 디바이스에 전송될 수도 있다. 제약들 중 하나는 프록시 키를 상당한 양의 시간 이후에 만료시키도록 할 수도 있다.
키 유도 함수는 암호화 블록 사이퍼일 수도 있다. 저장 디바이스는 복수의 암호 함수를 저장하고, 프로세싱 회로는 복수의 암호 함수들 중으로부터 키 유도 함수를 선택하도록 구성된다. 프로세싱 회로는, 하나 이상의 제약들을 프록시 키로 통합시키기 위해 이용된 복수의 암호 함수로부터 선택된 키 유도 함수를 지정하는 데이터를 송신하도록 또한 구성될 수도 있다.
또한, (a) 동일한 공유 비밀 키를 가지는 클라이언트 디바이스와 보안 통신을 위해 이용되는 공유 비밀 키를 획득하기 위한 수단; (b) 키 유도 함수를 획득하기 위한 수단으로서, 여기서, 키 유도 함수는 또한 클라이언트 디바이스에 알려지는, 상기 키 유도 함수 획득 수단; (c) 키 유도 함수 및 공유 비밀 키에 기초하여 프록시 키를 생성하기 위한 수단; 및/또는 (d) 프록시 키를 프록시 디바이스에 전송하기 위한 수단으로서, 여기서, 프록시 디바이스는 프록시 키를 이용하여 클라이언트 디바이스와의 통신을 인증할 수 있는, 상기 전송 수단을 포함하는 프록시 생성 디바이스가 제공된다.
또한, 호스트 디바이스에서 프록시 키를 생성하도록 구성된 프로세서가 제공되는데, 이 프로세서는: (a) 동일한 공유 비밀 키를 가지는 클라이언트 디바이스와의 보안 통신을 위해 이용된 공유 비밀 키를 획득하고, (b) 클라이언트 디바이스에 알려진 제 2 키 유도 함수에 관련된 키 유도 함수를 획득하고, (c) 키 유도 함수 및 공유 비밀 키에 기초하여 프록시 키를 생성하고, 및 (d) 프록시 키를 프록시 디 바이스로 제공하도록 구성된 프로세싱 회로를 포함한다. 이 프로세싱 회로는, (e) 프록시 키를 생성하기 전에 프록시 키에 대한 하나 이상의 제약들을 정의하고, (f) 하나 이상의 제약들에 기초하여 프록시 키를 생성하고, 및/또는 (g) 하나 이상의 제약들을 클라이언트 디바이스로 제공하도록 또한 구성될 수도 있다.
호스트 디바이스에서 프록시 키를 생성하기 위한 하나 이상의 명령을 가지는 머신-판독가능 매체가 제공되는데, 여기서, 프로세서에 의해 실행될 때 이 명령은 프로세서로 하여금: (a) 동일한 공유 비밀 키를 가지는 클라이언트 디바이스와의 보안 통신을 위해 이용되는 공유 비밀 키를 획득하고; (b) 클라이언트 디바이스에 알려진 제 2 키 유도 함수에 관련된 키 유도 함수를 획득하고; (c) 키 유도 함수 및 공유 비밀 키에 기초하여 프록시 키를 생성하고; 및 (d) 프록시 키를 프록시 디바이스로 제공하게 한다. 머신 판독가능 매체는, 프로세서에 의해 실행될 때 이 프로세스로 하여금: (e) 프록시 키에 대한 하나 이상의 제약들을 정의하고; (f) 하나 이상의 제약들에 기초하여 프록시 키를 생성하고; 및/또는 하나 이상의 제약들을 클라이언트 디바이스로 제공하게 하는 하나 이상의 명령을 더 포함할 수도 있다.
프록시 디바이스에서 동작가능한 방법이 제공되는데, 이 방법은: (a) 호스트 디바이스로부터 프록시 키를 획득하는 단계; (b) 호스트 디바이스가 키 유도 함수 및 비밀 키를 공유하는 클라이언트 디바이스에 의해 이용하기 위한 프록시 키를 저장하는 단계; (c) 프록시 키에 의해 메세지를 인증하는 단계; 및/또는 (d) 클라이언트 디바이스에 대해 프록시 디바이스를 인증하기 위해 클라이언트 디바이스에 인 증된 메세지를 전송하는 단계를 포함한다. 또한, 이 방법은 (e) 클라이언트 디바이스로부터 인증된 메세지를 수신하는 단계; 및/또는 (f) 클라이언트 디바이스로부터의 메세지를 인증하기 위해 프록시 키를 이용함으로써 클라이언트 디바이스를 인증하는 단계를 포함한다. 일 구현에서, 호스트 디바이스에 의해 프록시 키에 부과된 하나 이상의 제약이 획득되어 클라이언트 디바이스에 전송된다. 프록시 키는 하나 이상의 제약들에 기초하여 생성될 수도 있다. 인증된 메세지가 프록시 키를 이용하여 인증되는 것을 나타내는 표시자가 클라이언트 디바이스에 전송될 수도 있다. 또한, 프록시 키를 생성하기 위해 이용된 키 유도 함수를 지정하는 데이터가 클라이언트 디바이스에 송신될 수도 있다.
또한,(a) 호스트 디바이스 및 클라이언트 디바이스와 통신하기 위한 통신 인터페이스; (b) 저장 디바이스; 및/또는 (c) 통신 인터페이스 및 저장 디바이스에 연결된 프로세싱 회로를 포함하는 프록시 디바이스가 제공된다. 프로세싱 회로는 (1) 호스트 디바이스로부터 프록시 키를 획득하고, (2) 클라이언트 디바이스에 의해 이용하기 위해 저장 디바이스에 프록시 키를 저장하고, 여기서 호스트 디바이스와 클라이언트 디바이스는 키 유도 함수 및 비밀 키를 공유하며, (3) 프록시 키를 이용하여 메세지를 인증하고, 및/또는 (4) 클라이언트 디바이스에 대해 프록시 디바이스를 인증하기 위해 클라이언트 디바이스로 인증된 메세지를 전송하도록 구성될 수도 있다.
(a) 호스트 디바이스로부터 프록시 키를 획득하기 위한 수단; (b) 호스트 디바이스가 키 유도 함수 및 비밀 키를 공유하는 클라이언트 디바이스에 의해 이용하 기 위한 프록시 키를 저장하기 위한 수단;
프록시 키에 의해 메세지를 인증하기 위한 수단; (c) 프록시 디바이스를 클라이언트 디바이스에 대해 인증하기 위해 클라이언트 디바이스에 인증된 메세지를 전송하기 위한 수단; (d) 호스트 디바이스에 의해 프록시 키에 부과된 하나 이상의 제약들을 획득하기 위한 수단; 및/또는 (e) 클라이언트 디바이스에 하나 이상의 제약들을 전송하기 위한 수단을 포함하는 다른 프록시 디바이스가 제공된다.
프록시 디바이스를 인증하기 위해 클라이언트 디바이스 상에서 동작가능한 방법이 제공된다. 호스트 디바이스 및 클라이언트 디바이스 모두에게 알려진 공유 비밀 키가 획득된다. 또한, 클라이언트 디바이스 및 호스트 디바이스 모두에 알려진 키 유도 함수가 획득된다. 인증된 메세지는 프록시 디바이스로부터 클라이언트 디바이스에서 수신된다. 로컬 프록시 키는 키 유도 함수 및 공유 비밀 키를 이용하여 생성된다. 프록시 디바이스는 로컬 프록시 키를 이용함으로써 클라이언트 디바이스에서 인증된다. 하나 이상의 제약이 획득되고, 프록시 디바이스에 의해 수행될 수 있는 동작이 제약들에 따라서 제한된다. 프록시 디바이스는, 로컬 프록시 키가 보안된 메세지를 성공적으로 해독하는 경우에 클라이언트 디바이스에 의해 인증된다.
또한, (a) 프록시 디바이스와 통신하기 위한 통신 인터페이스; (b) 공유 비밀 키 및 키 유도 함수를 저장하기 위한 저장 디바이스, 여기서, 공유 비밀 키 및 키 유도 함수 모두는 호스트 디바이스에 알려지고; 및/또는 (c) 통신 인터페이스 및 저장 디바이스에 연결된 프로세싱 회로를 포함하는 키 인증 클라이언트 디바이 스가 제공된다. 프로세싱 회로는, (1) 프록시 디바이스로부터 보안된 메세지를 수신하고, (2) 키 유도 함수 및 공유 비밀 키를 이용하여 로컬 프록시 키를 생성하고, (3) 이 로컬 프록시 키를 이용함으로써 프록시 디바이스를 인증하고, 및/또는 (4) 프록시 디바이스에서 하나 이상의 제약들을 획득하고, 및/또는 하나 이상의 제약들에 따라서 프록시 디바이스에 의해 수행될 수 있는 동작을 제한하도록 구성될 수도 있다.
또한, (a) 동일한 공유 비밀 키를 가지는 클라이언트 디바이스와의 통신을 인증하기 위해 호스트 디바이스에 의해 이용될 수 있는 공유 비밀 키를 획득하기 위한 수단; (b) 호스트 디바이스와 클라이언트 디바이스 모두에 알려진 키 유도 함수를 획득하기 위한 수단; (c) 프록시 디바이스로부터 클라이언트 디바이스에서 인증된 메세지를 수신하기 위한 수단; (d) 키 유도 함수 및 공유 비밀 키를 사용하여 로컬 프록시 키를 생성하기 위한 수단; 및/또는 (f) 로컬 프록시 키를 사용함으로써 프록시 디바이스를 인증하기 위한 수단을 포함하는 다른 키 인증 클라이언트 디바이스가 제공된다. 이 디바이스는 (g) 하나 이상의 제약들을 획득하기 위한 수단; (h) 하나 이상의 제약들을 이용하여 로컬 프록시 키를 생성하기 위한 수단; 및 (i) 제약들에 따라서 프록시 디바이스에 의해 수행될 수 있는 동작을 제한하기 위한 수단을 더 포함할 수도 있다.
(1) 동일한 공유 비밀 키를 가지는 클라이언트 디바이스와의 통신을 인증하기 위해 호스트 디바이스에 의해 이용될 수 있는 공유 비밀 키를 획득하고; (2) 클라이언트 디바이스와 호스트 디바이스 모두에 알려진 키 유도 함수를 획득하고; (3) 프록시 디바이스로부터 클라이언트 디바이스에서 인증된 메세지를 수신하고; (4) 키 유도 함수와 공유 비밀 키를 사용하여 로컬 프록시 키를 생성하고; (5) 로컬 프록시 키를 사용함으로써 클라이언트 디바이스에서 프록시 디바이스를 인증하고; (6) 프록시 디바이스에 대한 하나 이상의 제약들을 획득하고; (7) 이 하나 이상의 제약들에 기초하여 로컬 프록시 키를 생성하고; 및/또는 (8) 하나 이상의 제약들에 기초하여 클라이언트 디바이스에 관련하여 프록시 디바이스의 동작을 제한하도록 구성된 프로세싱 회로를 포함하는, 클라이언트 디바이스에서 프록시 디바이스를 인증하도록 구성된 프로세서가 제공된다.
또한, 클라이언트 디바이스에서 프록시 디바이스를 인증하기 위한 하나 이상의 명령을 가지는 머신-판독가능 매체가 제공되는데, 여기서, 프로세서에 의해 실행될 때 이 명령은 프로세서로 하여금: (a) 동일한 공유 비밀 키를 가지는 클라이언트 디바이스와의 통신을 인증하기 위해 호스트 디바이스에 의해 이용될 수 있는 공유 비밀 키를 획득하고; (b) 클라이언트 디바이스와 호스트 디바이스 모두에 알려진 키 유도 함수를 획득하고;
프록시 디바이스로부터 클라이언트 디바이스에서 인증된 메세지를 수신하고; (c) 키 유도 함수 및 공유 비밀 키를 이용하여 로컬 프록시 키를 생성하고; (d) 이 로컬 프록시 키를 사용함으로써 클라이언트 디바이스에서 프록시 디바이스를 인증하고; (e) 프록시 키에 대한 하나 이상의 제약들을 획득하고; (f) 하나 이상의 제약들에 기초하여 프록시 키를 생성하고, 및/또는 (g) 하나 이상의 제약들에 기초하여 클라이언트 디바이스와 관련하여 프록시 디바이스의 동작을 제한하도록 한다. 수신된 인증 메세지가 로컬 프록시 키를 사용함으로써 적절하게 인증되는 경우, 프록시 디바이스가 인증된다.
도면의 간단한 설명
도 1 및 도 2 는, 프록시 키가 별개의 디바이스에 의해 생성 및 인증될 수 있는 보안 체계를 도시한다.
도 3 은 보안하고 제약된 프록시 키를 생성, 분배, 및 인증하기 위한 방법을 도시한다.
도 4 는 프록시 키 생성기 호스트 디바이스의 일 실시형태를 도시하는 블록도이다.
도 5 는 다른 디바이스에 프록시 키를 생성하고 분배하기 위해 프록시 생성기 호스트 디바이스상에서 동작가능한 방법을 도시한다.
도 6 은 프록시 키 생성기 호스트 디바이스의 다른 예를 도시한다.
도 7 은 프록시 키를 생성하기 위해 호스트 디바이스상에서 동작가능할 수도 있는 방법을 도시한다.
도 8 은 프록시 디바이스의 일 실시형태를 도시하는 블록도이다.
도 9 는 프록시 키를 획득하고, 이 키를 다른 디바이스와의 통신을 인증하도록 이용하기 위해 프록시 디바이스상에서 동작가능한 방법을 도시한다.
도 10 은 다른 프록시 디바이스의 일 예를 도시한다.
도 11 은 클라이언트 디바이스와의 통신을 인증하는데 프록시 디바이스에 의해 이용되는 다른 방법을 도시한다.
도 12 는 키 인증 클라이언트 디바이스의 일 실시형태를 도시하는 블록도이다.
도 13 은 보안 통신을 확립하고 및/또는 프록시 디바이스를 인증하기 위해 프록시 디바이스로부터 제약 키를 인증 및 이용하기 위해 키 인증 클라이언트 디바이스상에서 동작가능한 방법을 도시한다.
도 14 는 저장 매체, 파라미터 수신기, 메세지 수신기, 키 생성기, 및 해독 모듈을 구비하는 일 예시적인 클라이언트 디바이스를 도시한다.
도 15 는 클라이언트 디바이스에 의해 통신을 인증하기 위한 다른 방법을 도시한다.
도 16 은 (인증) 클라이언트 디바이스에 의해 수신된 메세지에 이용될 수도 있는 메세지 포맷을 도시한다.
도 17 은, 블록 사이퍼가 프록시 키 생성 디바이스에서 일 유형의 프록시 키 유도 함수로서 이용될 수 있는 방법에 대해 도시한다.
도 18 은, 블록 사이퍼가 프록시 키 인증 디바이스에서 일 유형의 프록시 키 유도 함수로서 이용될 수 있는 방법에 대해 도시한다.
상세한 설명
이하의 설명에서, 실시형태들의 전반적인 이해를 제공하기 위해 구체적인 세부사항이 나타난다. 그러나, 당업자는 이러한 구체적인 세부사항 없이도 이 실시형태들이 실행될 수도 있다는 것을 이해한다. 예를 들어, 회로는 불필요한 세부사항으로 이 실시형태들을 불분명하지 않게 하기 위해 블록도에 도시되지 않을 수도 있다.
또한, 실시형태는 플로우차트, 흐름도, 구성도, 또는 블록도로서 도시된 프로세스로서 나타날 수도 있다는 것이 명시된다. 플로우차트가 순차적인 프로세스로서 동작을 설명할 수도 있지만, 많은 동작이 병행으로 또는 동시에 수행될 수 있다. 또한, 동작의 순서는 재-배열될 수도 있다. 프로세스는, 그 동작이 완성될 때 종결된다. 프로세스는 방법, 함수, 절차, 서브루틴, 서브프로그램 등에 해당할 수도 있다. 프로세스가 함수에 대응하는 경우, 그 종결은 그 함수가 호출 함수 또는 주함수로 복귀하는 것에 해당한다.
또한, 저장 매체는 ROM (read-only memory), RAM (random access memory), 자기 디스크 저장 매체, 광학 저장 매체, 플래시 메모리 디바이스, 및/또는 정보 저장을 위한 다른 머신 판독가능 매체를 포함하는 데이터 저장을 위한 하나 이상의 디바이스를 나타낼 수도 있다. 용어 "머신 판독가능 매체" 는 휴대용 또는 고정식 저장 디바이스, 광학 저장 디바이스, 무선 채널, 및 명령(들) 및/또는 데이터를 저장, 함유, 또는 전송할 수 있는 다양한 다른 매체를 포함하지만 이에 한정되지 않는다.
또한, 실시형태는 하드웨어, 소프트웨어, 펌웨어, 미들웨어, 마이크로코드, 또는 그 조합에 의해 구현될 수도 있다. 소프트웨어, 펌웨어, 미들웨어, 또는 마이크로코드로 구현될 때, 필요한 임무를 수행하기 위한 프로그램 코드 또는 코드 세그먼트는 저장 매체 또는 다른 저장 수단과 같은 머신-판독가능 매체에 저장될 수도 있다. 프로세서는 필요한 임무를 수행할 수도 있다. 코드 세그먼트는 절차, 함수, 서브프로그램, 프로그램, 루틴, 서브루틴, 모듈, 소프트웨어 패키지, 클래스, 또는 명령, 데이터 구조, 또는 프로그램 스테이트먼트의 조합을 나타낼 수도 있다. 코드 세그먼트는, 정보, 데이터, 아규먼트, 파라미터, 또는 메모리 콘텐츠를 통과 및/또는 수신함으로써 다른 코드 세그먼트 또는 하드웨어 회로에 연결될 수도 있다. 정보, 아규먼트, 파라미터, 데이터 등은, 그 중에서 메모리 공유, 메세지 통과, 토큰 통과, 및 네트워크 송신을 포함하는 적절한 수단을 통해서 통과, 전송, 또는 송신될 수도 있다.
이하의 설명에서, 일정 전문 용어가 하나 이상의 실시형태의 일정 특징을 설명하도록 이용된다. 용어 "키" (예를 들어, 프록시 키, 비밀 키, 제약된 키 등) 는 인증서, 식별자, 암호표기, 또는 다른 유형의 숫자, 문자-숫자겸용 (alpha-numeric), 또는 심볼을 지칭한다.
하나의 특징은, 제 3 파티 (프록시) 는 제 2 파티 (클라이언트) 와 보안되게 통신하기 위해 이용될 수 있는 제 1 파티 (호스트) 에 의해 프록시 키가 제공된 대칭 키 암호 체계를 제공한다. 프록시 키는 그 기능 및 사용이 제약되어 있을 수도 있다. 예를 들어, 제약된 프록시 키는, 제 3 파티 (프록시) 가 제 1 파티 (호스트) 에 대해 프록시로서 작용할 수도 있는 특정 시간 기간 동안으로 제한될 수도 있다. 다른 예에서, 제약된 프록시 키는 제 3 파티 (프록시) 가 전송할 수도 있는 일정 유형의 메세지로 한정될 수도 있다. 제 3 파티 (프록시) 와 제2 파티 (클라이언트) 사이의 모든 통신은 암호화 및/또는 인증에 이용되는 프록시 키에 의해 보안 유지된다. 또한, 일 구현에서, 프록시 키는, 제 3 파티 (프록 시) 가 제 1 파티 (호스트) 에 의해 인증되었다고 제 2 파티 (클라이언트) 에게 확신을 주기 위해 충분한 정보를 포함한다. 마지막으로, 비밀 키는 제 1 파티 (호스트) 와 제 2 파티 (클라이언트) 에 의해 알려지고, 프록시 키를 생성 및 인증하기 위해 이용된다. 그러나, 비밀 키는 제 1 파티 (호스트) 에 의해 점유된 제약을 넘어설 수 없는 제 3 파티 (프록시) 에 의해서는 알려지지 않는다.
도 1 및 도 2 는, 프록시 키가 별개의 디바이스들에 의해 생성 및 인증될 수 있는 보안 체계를 도시한다. 일 모드의 동작에서, 호스트 디바이스 A (102) 및 클라이언트 디바이스 B (104) 는, 공유 비밀 키 K 가 호스트 디바이스 A (102) 와 클라이언트 디바이스 B (104) 모두에 의해 알려진 암호 키(들) (예를 들어, 비대칭 또는 대칭 키) 를 이용하여 보안 통신 링크 (108) 를 확립한다. 몇몇 구현에서, 호스트 디바이스 A (102) 는 보안 통신 링크 (108) 를 통해 전송된 커맨드에 의해 클라이언트 디바이스 B (104) 의 동작을 제어할 수도 있다. 공유 비밀 키 K 는 클라이언트 디바이스 B (104) 와의 통신과 관련될 수도 있고, 통신 링크 (108) 를 통해 호스트 디바이스 A (102) 와 클라이언트 디바이스 B (104) 사이의 메세지를 암호화, 보안 및/또는 인증하기 위해 이용될 수도 있다. 다른 디바이스들과 통신할 때, 호스트 디바이스 A (102) 는 상이한 공유 비밀 키들을 이용할 수도 있다.
때때로, 프록시 디바이스 C (106) 가 클라이언트 디바이스 B (104) 와 통신하는 것이 필요한 예가 있을 수도 있다. 공유 비밀 키 K 가 프록시 디바이스 C (106) 에 누설되지 않아야 하지만, 클라이언트 디바이스 B (104) 와 프록시 디바이 스 C (106) 사이의 통신은 적어도 보안되고 인증되어야만 한다. 이러한 목적으로, 호스트 디바이스 A (102) 는 프록시 디바이스 C (106) 에게 디바이스 B (104) 와의 통신을 인증하는 프록시 키 K' 를 제공할 수도 있다. 도 2 에 도시된 바와 같이, 호스트 디바이스 A (102) 와 클라이언트 디바이스 B (104) 사이의 보안 통신 링크 (108) 가 결여된 경우, 즉 네트워크 서비스의 중단 도중의 경우에 있는 것과 같이, 프록시 디바이스 C (106) 는 호스트 디바이스 A (102) 로부터의 프록시 키 (110) 를 이용하여 제 2 보안 통신 링크 (202) 를 확립할 수도 있다. 비밀 키 K 를 누설하지 않고 클라이언트 디바이스 B (104) 로의 액세스를 프록시 디바이스 C (106) 에게 부여하기 위해, 호스트 디바이스 A (102) 는 비밀 키 K 로부터 프록시 키 K' 를 생성하고, 프록시 키 K' 를 프록시 디바이스 C (106) 에 전송한다. 프록시 키 K' 는 디바이스 C (106) 와 디바이스 B (104) 사이에서 메세지를 암호화 및/또는 인증하도록 이용된다. 디바이스 B (104) 에 프록시 키 K' 를 제공함으로써, 디바이스 C (106) 는 예를 들어 디바이스 B (104) 의 동작을 제어할 수도 있다. 제 2 통신 링크 (202) 는, 제 1 통신 링크 (108) 가 동작하지 않아도 동작한다.
프록시 디바이스 C (106) 가 클라이언트 디바이스 B (104) 에 걸쳐 영향을 줄 수도 있는 제어를 제한하기 위해, 키 유도 함수 (KDF; key derivation function) 로 지칭되는 암호 함수가 디바이스 A (102) 와 디바이스 B (104) 사이에서 사전 배열된다. 즉, KDF 는 프록시 또는 제약된 키를 그 공유 비밀 키 (K) 로부터 유도하기 위해 이용될 수 있다. 몇몇 실시형태에서, 디바이스 A (102) 및 디바이스 B (104) 는 특정 KDF 를 미리-배열할 수도 있다. 다른 구현에서, 복수의 이러한 암호 함수는 디바이스 A (102) 및 디바이스 B (104) 모두에 알려진다. KDF 는 입력으로서 공유 비밀 키 K 및 프록시 또는 제약된 키에 부과될 임의의 제약을 취한다. 호스트 디바이스 A (102) 가 프록시 디바이스 C (106) 에 프록시 전력을 부여하기 희망하는 경우, KDF (K) 를 이용하여 신규의 프록시 키 (K'; 110) 를 발생시키고 이를 프록시 키 C (106) 에 전송한다. 이제, 이 프록시 키 K' (110) 는 클라이언트 디바이스 B (104) 와 호스트 디바이스 C (106) 사이의 통신을 보안 및/또는 인증하도록 이용될 수 있다.
프록시 디바이스 C (106) 로부터 나오는 메세지를 적절하게 인증 (예를 들어, 해독) 하기 위해, 클라이언트 디바이스 B (104) 는 프록시 키가 이용되고 있다고 통지받는다. 이를 달성하기 위한 하나의 방법은 프록시 키의 사용을 신호하기 위해 모든 메세지에서 일 비트의 플래그 (flag) 를 이용하는 것이다. 클라이언트 디바이스 B (104) 는 프록시 디바이스 C (106) 로부터 수신된 인증 메세지를 인증하기 위해 이용된 프록시 키 K' 의 로컬 버전을 생성하기 위해 KDF 와 그 비밀 키 K 를 이용할 수도 있다. 이 메세지가 적절하게 인증되면 (예를 들어, 해독 등), 그 후, 프록시 디바이스 C (106) 가 인증되고, 프록시 키 K' 를 이용하여 클라이언트 디바이스 B (104) 및 프록시 디바이스 C (106) 사이에서 보안 통신이 수행될 수 있다.
또한, 클라이언트 디바이스 B (104) 가 호스트 디바이스 A (102) 와 동일한 프록시 키를 독립적으로 생성하기 위해, 디바이스 B (104) 는 호스트 디바이스 A (102) 가 갖는 프록시 키 K' 에 대한 제약을 알아야만 한다. 일 실시형태에서, 호스트 디바이스 A (102) 에 의해 프록시 키 K' 에 부과된 제약의 목록은 프록시 디바이스 C (106) 에 의해 전송된 모든 메세지에 수반될 수 있다. 다른 실시형태에서, 세션의 개념이 도입될 수 있고, 제약의 목록은 세션당 한 번 (바람직하게는 시작부에서) 프록시 디바이스 C (106) 에 의해 전송될 수 있다. 다른 실시형태에서, 제약은 호스트 디바이스 A (102) 와 클라이언트 디바이스 B (104) 에 의해 미리 사전-배열될 수도 있다. 예를 들어, 호스트 디바이스 A (102) 와 클라이언트 디바이스 B (104) 는, 모든 프록시 키들이 정확히 하루, 예를 들어, 자정에서 자정까지, 에 걸쳐 유효할 것이라는 것을 사전에 동의할 수도 있다. 이러한 경우, KDF 에 대해 입력으로 이용된 제약은 프록시 키가 유효한 날짜일 수도 있다. 클라이언트 디바이스 B (104) 가 프록시 키에 의해 인증 또는 보호된 메세지를 수신하는 언제나, 현재의 날짜를 이용하여 프록시 키를 복원한다.
일 예에서, 프록시 디바이스 C (106) 를 이용함으로써, 호스트 디바이스 A (102) 는 프록시 디바이스 C (106) 에 이용가능한 액세스 특권의 제어를 유지하면서 프록시 디바이스 C (106) 에 권한을 위임할 수 있다. 또한, 프록시 키 K' 의 생성기로서, 호스트 디바이스 A (102) 는 프록시 디바이스 C (106) 에 의한 통신을 도청 또는 모니터할 수도 있다.
일 실시형태에서, 암호 함수 또는 키 유도 함수는 블록 사이퍼일 수도 있고, 여기서, 공유 비밀 키 K 는 키 입력으로서 이용되고, 프록시 제약 (및/또는 다른 파라미터) 은 블록 사이퍼에 입력된 플레인 텍스트 입력으로서 이용된다. 일 구현에서, 키가 프록시 또는 제약된 키라는 것을 나타내기 위해, 프록시 메세지 (예를 들어, 클라이언트 디바이스 B (104) 로의 모든 메세지 또는 클라이언트 디바이스 B (104) 와의 각각의 통신 세션의 시작 중 하나) 에 하나 이상의 비트가 설정된다. 다른 실시형태에서, 프록시 비트는 생략될 수 있고, 이 경우, 모든 수신된 메세지에 대해, 클라이언트 디바이스 B (104) 는 모든 수신된 메세지들을 2 번, 한번은 이 비트가 설정된 것처럼 그리고 다른 한번은 이 비트가 설정되지 않은 것처럼, 처리하기 시도하고, 인증을 통과하는 하나의 버전을 선택한다.
다른 구현에서, 호스트 디바이스 A (102) 는 다수의 다른 (유선 또는 무선) 디바이스들과 통신할 수도 있다. 이러한 경우, 호스트 디바이스 A (102) (예를 들어, 호스트 디바이스) 는 복수의 비밀 키 Ki 를 저장하는데, 이 각각의 비밀 키 Ki 는 복수의 유선 또는 무선 디바이스 중 하나에 대응하고 또한 이에 저장된다. 호스트 디바이스 A (102) 는 제 1 디바이스 Mi 에 대응하는 비밀 키 Ki 로부터 프록시 키 Ki' 를 생성하고, 프록시 키 Ki' 를 프록시 디바이스 (예를 들어, 프록시 디바이스 C (106)) 에 전송한다. 프록시 키 Ki' 는 프록시 디바이스와 제 1 디바이스 Mi (예를 들어, 클라이언트 디바이스 B (104)) 사이에서 메세지를 암호화하고 및/또는 인증하도록 이용될 수도 있다. 유사하게, 하나 보다 많은 프록시 디바이스가 있을 수도 있는데, 이 경우, 호스트 디바이스 A (102) (예를 들어, 호스트 디바이스) 는 프록시 디바이스에 대한 동일한 또는 상이한 프록시 키를 생성 할 수도 있다. 마지막으로, 하나 보다 많은 프록시 키 생성기 디바이스 (예를 들어, 다수의 호스트 디바이스 A (102)) 가 있을 수도 있다.
다양한 구현에서, 통신 링크 (108, 112 및/또는 202) 는 무선 및/또는 비무선일 수도 있다.
도 3 은 보안되고 및 제약된 프록시 키를 생성, 분배, 및 인증하기 위한 방법을 도시한다. 호스트 디바이스 A (302) 와 클라이언트 디바이스 B (304) 는 키 암호를 이용하여 보안된 및/또는 인증된 통신 메커니즘을 확립하였다. 예를 들어, 공유 비밀 키가 호스트 디바이스 A 및 클라이언트 디바이스 B (304) 모두에 알려진 곳에서 대칭 키 암호가 구현될 수도 있다. 동작의 일 모드에서, 디바이스 A (302) 및 디바이스 B (304) 는 2 개의 디바이스 사이에서 통신을 보안하고 인증하기 위해 공유 비밀 키를 이용할 수 있다. 또한, 키 유도 함수 KDF 가 디바이스 A 및 디바이스 B 모두에 제공된다. 공유 비밀 키 및 KDF 는 호스트 디바이스 A (302) 에 의해 이용되어 제약된 프록시 키를 생성하며, 프록시 디바이스 C (306) 에 전송된다 (308). 예를 들어, 호스트 디바이스 A (302) 는 프록시 키 생성기로서 동작하고, 프록시 디바이스 C (306) 는 프록시 키를 수신하고 호스트 디바이스 A 에 대한 프록시로서 동작하며, 클라이언트 디바이스 B (304) 는 프록시 디바이스 C (306) 과의 보안 통신을 확립하기 전에 프록시 키를 인증하는 인증기를 동작한다.
프록시 디바이스 C (306) 는 제약된 프록시 키를 저장하고 (312), 제약된 프록시 키에 의해 메세지를 인증하며 (314), 디바이스 B (304) 와의 통신 링크를 확 립하기 위해 인증된 메세지를 전송한다 (316). 일 구현에서, 클라이언트 디바이스 B (304) 는, 수신된 키가 프록시 키 인지의 여부를 확인하고 (318), 만약 그렇다면, 그 KDF 를 이용하여 로컬 프록시 키를 독립적으로 생성한다 (320). 이는, 예를 들어, 인증된 메세지 (316) 의 특정 비트 또는 수신된 키가 설정었는지 (이에 따라, 수신된 키가 프록시 키임을 나타내는지) 를 체크함으로써 수행될 수도 있다. 클라이언트 디바이스 B (304) 는 파라미터, 제약 및/또는 하나 이상의 개인 키 및/또는 공용 키와 함께 KDF 을 이용하여 로컬 프록시 키를 생성할 수도 있다.
다음으로, 클라이언트 디바이스 B (304) 는 프록시 디바이스 (322) 를 인증한다. 예를 들어, 프록시 디바이스 C (306) 의 이러한 인증은 국부적으로 생성된 제약된 프록시 키에 의해 수신된 인증 메세지를 해독하는 것을 포함할 수도 있다. 메세지가 적절하게 인증되면, 프록시 디바이스 C (306) 는 또한 동일한 제약된 프록시 키를 가지는 (따라서, 인증된) 것을 의미한다. 따라서, 보안 통신 링크는 클라이언트 디바이스 B (304) 와 호스트 디바이스 C (306) 사이에서 확립될 수도 있다 (324). 예를 들어, 클라이언트 디바이스 B (304) 에 의해 하나 이상의 수신된 파라미터를 하나 이상의 파라미터와 비교하여 이들이 동일한지를 판별함으로써, 수신된 인증 메세지의 적절한 인증이 규명될 수도 있다.
클라이언트 디바이스 B (304) 는, 디바이스 A (302) 에 의해 사전-배열되거나 또는 프록시 디바이스 C (306) 로부터의 수신된 프록시 제약 정보에 의해 정의되는 것과 같은 프록시 키의 이용을 제한할 수도 있다. 예를 들어, 클라이언트 디바이스 B (304) 는 상당한 양의 시간 이후에 프록시 디바이스 C (306) 로부터의 프록시 키를 만료 또는 무효화할 수도 있다 (326). 이는, 호스트 디바이스 A (302) 와 클라이언트 디바이스 C (304) 가 제약된 프록시 키를 만료시키는데 이용되는 클록 및/또는 날짜를 동기화시킬 때 달성될 수도 있고, 또는, 파라미터로서 제약된 프록시 키를 생성하는 것으로 달성될 수도 있다. 예를 들어, 제약된 프록시 키가 1/1/2006 의 날짜를 이용하여 호스트 디바이스 A (302) 에 의해 생성되는 경우, 인증을 위해 클라이언트 디바이스 B 에 의해 생성된 로컬 제약된 프록시 키는 1/1/2006 에만 매칭할 것이다. 이 날짜 이후에는, (클라이언트 디바이스 B (304) 에서 생성된) 로컬 제약된 프록시 키는 수신된 제약된 프록시 키와 더 이상 매칭하지 않을 것이다. 이 특성은, 호스트 디바이스 A (302) 에 의해, 특정 날짜 (예를 들어, 프록시 디바이스 C (306) 가 클라이언트 디바이스 B (304) 와의 통신이 필요한 것으로 기대되는 날짜) 에만 유효한 제약된 프록시 키를 생성하는데 이용될 수도 있다.
도 4 는 키 생성기 호스트 디바이스 (예를 들어, 도 3 의 호스트 디바이스 A (302)) 의 일 실시형태를 도시하는 블록도이다. 키 생성기 디바이스 (402) 는, 이를 통해서 다른 디바이스와의 보안 통신 링크를 확립할 수도 있는 통신 인터페이스 (404) 를 포함한다. 프로세싱 회로 (406) 는 키 생성기 디바이스 (402) 로/로부터의 통신을 보안하기 위해 키 암호 (예를 들어, 대칭 또는 비대칭 키) 를 이용하도록 구성된다. 저장 디바이스 (408) 는 사전에 다른 보안 디바이스 (예를 들어, 독립적인 분배 채널을 통해서) 와 공유될 수도 있는 프록시 키 암호 함수 또 는 키 유도 함수 (KDF) 및 공유 비밀 키 (예를 들어, 대칭 암호 체계) 를 저장할 수도 있다. 키 생성기 디바이스 (402) 는 공유 비밀 키를 이용하여 메세지를 인증하고, 공유 비밀 키 및 프록시 키 유도 함수에 기초하여 프록시 키를 생성하도록 구성될 수도 있다.
도 5 는 프록시 키를 다른 디바이스에 생성 및 분배하기 위해 키 생성기 호스트 디바이스 (402) 상에서 동작가능한 방법을 도시한다. 동일한 공유 비밀 키를 가지는 클라이언트 디바이스 (예를 들어, 도 12 의 키 인증 디바이스 (1202)) 와의 보안 통신을 위해 이용될 수 있는 공유 비밀 키가 획득된다 (502). 프록시 키를 생성 및 인증하기 위해 호스트 디바이스에 의해 이용될 수 있는 암호 함수 또는 키 유도 함수 (KDF) 가 획득되고, 여기서 암호 함수는 클라이언트 디바이스에 알려진다 (504). 키 유도 함수는 상이한 값을 획득하기 위해 해시 함수 (hash function) 및 값을 무작위로 추출하거나 혼합하는데 이용된 다른 유형의 함수일 수도 있다. 다른 실시형태에서, 제 1 일방향 함수는 프록시 키를 생성하기 위해 프록시 생성 디바이스 (402) 에 의해 획득되고, 상이한 제 2 일방향 함수는 인증을 위해 클라이언트 디바이스에 의해 이용된다.
또한, 프록시 키에 대한 하나 이상의 파라미터 또는 제약은 키 생성기 호스트 디바이스에 의해 정의된다 (506). 예를 들어, 이 제약은, 프록시 디바이스가 클라이언트 디바이스에 전송할 수도 있는 메세지 또는 커맨드의 유형 또는 그 프록시 키가 유효한 시간의 길이를 제한할 수도 있다. 이 제약은 클라이언트 디바이스에 또한 알려진다. 호스트 디바이스는 키 유도 함수 및 제약에 기초하 여 프록시 키를 생성한다 (508). 예를 들어, 키 생성기 호스트 디바이스 (402) 는 키 유도 함수에 대한 입력으로서 공유 비밀 키, 현재 날짜/시간, 및/또는 다른 파라미터/제약을 이용하여 제약된 프록시 키를 획득할 수도 있다. 따라서, 프록시 키는 프록시 디바이스에 전송되고 (510), 여기서, 프록시 디바이스는 클라이언트 디바이스와의 통신을 인증하기 위해 프록시 키를 이용할 수 있다.
도 6 은, 저장 매체 (604), 유저 인터페이스 (606), 파라미터 설정 모듈 (608), 키 생성기 (610), 출력 모듈 (612) 및 인증 모듈 (614) 을 포함하는 키 생성기 호스트 디바이스 (602) (예를 들어, 호스트 디바이스) 의 다른 예를 도시한다. 저장 매체 (604) 는 클라이언트 디바이스와 관련된 비밀 키 K 를 저장하도록 구성된다. 이 특성에 따르면, 인증 모듈 (614) 은 비밀 키 K 를 이용하여 메세지를 인증할 수도 있고, 출력 모듈 (612) 은 인증된 메세지를 관련 클라이언트 디바이스로 송신할 수도 있다.
다른 특성에서, 키 발생기 호스트 디바이스 (602) 는 비밀 키 K 에 (적어도 부분적으로) 기초하여 프록시 키 K' 를 발생시키고, 이 프록시 키를 프록시 디바이스에 전송한다. 프록시 키 K' 는 유저 인터페이스 (606) 를 통해서 선택 또는 입력될 수도 있는 제한 또는 제약을 가질 수도 있고, 파라미터는 선택된 제약에 기초하여 파라미터 설정 모듈 (608) 을 통해서 설정될 수도 있다. 선택된 제약은, 예를 들어, 권한 또는 한정된 특권의 일정 레벨을 허용하는 것과 같은 기능적인 면, 및/또는 제약된 프록시 키를 일정 기간의 시간 동안 이용하도록 하는 시간적인 면에서 제약된 프록시 키 K' 의 이용을 제한할 수도 있다. 따라서, 파라 미터/제약은 제약된 프록시 키의 이용 및/또는 액세스 제한을 나타낼 수도 있다. 파라미터는 또한, 제약된 프록시 키로 암호화된 메세지가 유효한 동안의 시간 기간을 나타내는 타임스탬프를 포함할 수도 있다.
키 생성기 (610) 는 파라미터 및 비밀 키 K 의 함수로서 제약된 프록시 키 K' 를 생성한다. 키 생성기 (610) 는 키 유도 함수와 비밀 키 K 를 이용하여 파라미터/제약을 암호화함으로써 제약된 프록시 키 K' 를 생성할 수도 있다. 파라미터가 타임스탬프를 포함하면, 제약된 프록시 키 K' 는 이하와 같이 비밀 키 K 를 이용하여 타임스탬프를 암호화함으로써 생성될 수 있는데;
K'=EK(Ts, Te) [1]
여기서, E 는 비밀 키 K 에 기초한 암호 또는 키 유도 함수이고, Ts 는 유효 기간의 시작을 나타내고, Te 는 유효 기간의 종료를 나타낸다. 식 [1] 에서, 예를 들어, 해시 함수와 같은 임의의 알려진 암호 또는 키 유도 함수가 이용될 수도 있다. 몇몇 구현에서, 하나 보다 많은 암호/키 유도 함수가 이용될 수도 있다. 예를 들어, 복수의 암호 함수들 중 하나가 이용되어 제약된 프록시 키를 생성할 수도 있다. 이러한 경우, 어떤 암호 함수(들) 또는 키 유도 함수(들) 이 파라미터/제약을 암호화하는데 이용되었는지를 지정하는 데이터가 송신될 수도 있다.
다음으로, 제약된 프록시 키 K' 는 출력 모듈 (612) 을 통해서 제 3 엔티티 또는 프록시 디바이스에 전송된다. 또한, 제약된 프록시 키 K' 를 생성하기 위 해 이용된 파라미터/제약은 출력 모듈 (612) 을 통해서 프록시 디바이스에 전송된다. 제약된 프록시 키 K' 및/또는 파라미터는 비무선으로 또는 무선으로 송신될 수도 있다. 추가적으로, 제약된 프록시 키 K' 는 프록시 디바이스에 송신하기 전에 암호화될 수도 있다. 다른 특성은, 제약된 프록시 키가 생성되었다는 것을 (수신기에) 통지하는 표시자를 출력 모듈 (612) 을 통해서 송신하는 것을 포함한다.
키 생성기 호스트 디바이스 (602) 는 예시적인 도면이고, 다른 엘리먼트를 제어하도록 구성된 컨트롤러 및/또는 전술한 동작의 일부를 포함할 수도 있는 다양한 기능을 수행하도록 구성된 프로세서와 같은 추가적인 엘리먼트들을 포함할 수도 있다. 엘리먼드의 하나 또는 조합은 키 생성기 호스트 디바이스 (602) 의 동작에 영향을 주지 않고 재배열될 수도 있다. 또한, 엘리먼트의 하나 또는 조합은 키 생성기 호스트 디바이스 (602) 의 동작에 영향을 주지 않고 하나의 엘리먼트에 조합될 수도 있다.
도 7 은 키 생성기 호스트 디바이스에서 동작가능할 수도 있는 프록시 키를 생성하기 위한 방법을 도시한다. 비밀 키가 저장되고 (702), 파라미터/제약이 선택된 제약에 기초하여 설정된다 (704). 다음으로, 제약된 프록시 키는 키 유도 함수를 이용하여 생성되고 (706), 여기서 제약된 프록시 키는 비밀 키 및 파라미터/제약의 함수이다. 제약된 프록시 키는 키 유도 함수를 이용하여 생성되어 비밀 키를 이용하여 파라미터/제약을 암호화할 수도 있다. 몇몇 구현에서, 호스트 디바이스는 복수의 암호 또는 키 유도 함수들 중에서 키 유도 함수를 선택할 수도 있다. 이러한 경우, 이 방법은 프록시 키를 생성하기 위해 이용된 복수의 암호 또는 키 유도 함수 중 하나를 지정하는 데이터를 송신하는 단계 (708) 를 포함할 수도 있다.
제약된 프록시 키 및/또는 파라미터/제약은 제 2 디바이스 (예를 들어, 프록시 디바이스) 에 전송된다 (710 및 712). 제약된 프록시 키는 제 2 디바이스에 비무선으로 또는 무선으로 송신될 수도 있다. 제약된 프록시 키는 송신 이전에 암호화될 수도 있다. 파라미터/제약은, 제약된 프록시 키가 유효한 동안의 시간 기간을 나타내는 타임스탬프를 포함할 수도 있다. 파라미터/제약은 제약된 프록시 키의 사용 제한을 나타낼 수도 있다.
또한, 이 방법은, 관련 키가 제약된 프록시 키라는 것을 수신기에게 통지하기 위해 표시자 (예를 들어, 메세지 플래그 등) 를 송신 (714) 하는 단계를 포함할 수도 있다. 이 방법은 비밀 키를 이용하여 메세지를 인증하고 (716), 인증된 메세지를 송신하는 (718) 단계를 추가적으로 포함할 수도 있다.
도 8 은 프록시 디바이스 (예를 들어, 도 3 의 프록시 디바이스 C (306)) 의 일 실시형태를 도시하는 블록도이다. 프록시 디바이스 (802) 는, 이를 통해서 다른 디바이스와의 통신 링크를 확립할 수도 있는 통신 인터페이스 (804) 를 포함한다. 프로세싱 회로 (806) 는 프록시 디바이스 (802) 로 및/또는 로부터의 통신을 보안하기 위해 암호 키(들) (예를 들어, 대칭 또는 비대칭 키) 를 이용하도록 구성된다. 저장 디바이스 (808) 는 키 생성기 호스트 디바이스로부터 수신된 프록시 키를 저장할 수도 있어, 이는 클라이언트 디바이스와의 통신을 인증하는데 이용될 수 있다.
도 9 는 키를 획득하고 이 키를 클라이언트 디바이스와의 통신을 인증하는데 이용하기 위해 프록시 디바이스 (802) 상에서 동작가능한 방법을 도시한다. 프록시 키는 키 생성기 호스트 디바이스로부터 획득된다 (902). 이 프록시 키는 키 생성기 호스트 디바이스에 의해 전송될 수도 있고, 또는, 프록시 디바이스에 의해 요청될 수도 있다. 몇몇 구현에서, 프록시 키는 암호 또는 키 유도 함수 및 비밀 키를 이용하여 키 호스트 생성기 디바이스에 의해 생성될 수도 있다. 프록시 키는, 키 생성기 호스트 디바이스가 키 유도 함수 및/또는 비밀 키를 공유한 인증 클라이언트 디바이스에 의해 미래의 이용을 위해 (프록시 디바이스에 의해) 저장된다 (904). 메세지는 프록시 키를 이용하여 인증된다 (906). 인증된 메세지는 인증 클라이언트 디바이스에 전송된다 (908). 몇몇 구현에서, 프록시 디바이스는 키 발생기 호스트 디바이스에 의해 프록시 키에 부과된 하나 이상의 제약들을 획득할 수도 있다 (910). 이러한 제약은 프록시 키와 함께 또는 그 일부와 함께 키 생성기 호스트 디바이스에 의해 전송될 수도 있다. 하나 이상의 제약이 인증 클라이언트 디바이스에 따라 통과된다 (912). 대신에, 이와 다른 구현에서는, 프록시 키에 대한 제약은 프록시 키 생성기 호스트 디바이스 (예를 들어, 도 3 의 호스트 디바이스 A (302)) 와 인증 클라이언트 디바이스 (예를 들어, 도 3 의 클라이언트 디바이스 B (304)) 사이에서 사전배열될 수도 있다.
다른 특성에 따르면, 프록시 디바이스는 클라이언트 디바이스로부터 암호화된 메세지를 수신할 수도 있다. 따라서, 이는, 클라이언트 디바이스로부터의 메세지를 해독하기 위해 프록시 키를 이용하여 클라이언트 디바이스를 인증한다.
도 10 은 다른 프록시 디바이스 (1000) 의 일 예를 도시한다. 프록시 디바이스 (1000) 는 파라미터 수신기 (1002), 키 수신기 (1004), 출력 모듈 (1006) 및 인증 모듈 (1008) 을 포함한다. 파라미터 수신기 (1002) 는 선택된 제약을 나타내는 파라미터를 수신하도록 구성된다. 전술한 바와 같이, 선택된 제약은, 예를 들어, 기능적인 면에서 및/또는 시간적인 면에서 프록시 키 K' 의 이용을 제한할 수도 있다. 따라서, 파라미터/제약은 제약된 프록시 키 K' 의 이용 제한을 나타낼 수도 있다. 또한, 파라미터/제약은, 제약된 프록시 키로 암호화된 메세지가 유효한 동안의 시간 기간을 나타내는 타임스탬프를 포함할 수도 있다. 키 수신기 (1004) 는 키 생성기 호스트 디바이스로부터 제약된 프록시 키 K' 를 수신하도록 구성된다. 제약된 프록시 키 K' 는 비밀 키 K 및 파라미터/제약의 함수이다. 제약된 프록시 키는 암호 함수에 대한 입력으로서 파라미터/제약 및 비밀 키 K 를 이용함으로써 생성될 수도 있다. 예를 들어, 제약된 프록시 키 K' 는 전술한 식 [1] 에 기초하여 생성될 수도 있다. 제약된 프록시 키 K' 및/또는 파라미터는 비무선으로 또는 무선으로 수신될 수도 있다. 추가적으로, 제약된 프록시 키 K' 는 암호화된 형태로 수신될 수도 있다. 이러한 경우, 제약된 프록시 키 K' 를 획득하기 위해 암호화된 제약된 프록시 키가 해독된다.
인증 모듈 (1008) 은 제약된 프록시 키 K' 를 이용하여 메세지를 인증, 암호화, 및/또는 보안하고, 출력 모듈 (1006) 은 인증된 메세지를 전송한다. 여기서, 이 메세지는 데이터 및 수신된 파라미터/제약을 포함할 수도 있다. 출력 모듈 (1006) 은 암호화하지 않고 수신된 파라미터/제약을 전송할 수도 있다. 다른 양태는, 제약 키가 이용되고 있다는 것 (예를 들어, 메세지가 인증된 키가 제약된 키라는 것) 을 수신하는 클라이언트 디바이스에 통지하는 출력 모듈 (1006) 을 통해서 표시자를 전송하는 것을 포함할 수도 있다.
수신된 파라미터/제약뿐만 아니라 제약된 프록시 키 K' 를 이용하여 인증된 (예를 들어, 암호화된) 파라미터/제약을 전송함으로써, 메세지 인증 코드 (MAC) 가 생성된다. 따라서, 클라이언트 디바이스 (예를 들어, 인증 디바이스) 는, 동일한 수신된 파라미터에 기초하여 생성된 국부적으로-생성된 제약된 프록시 키 K' 를 이용하여 회복된 파라미터와 수신된 파라미터를 비교함으로써 프록시 디바이스 또는 제 3 엔티티로부터 수신된 메세지의 유효성, 인증성 및/또는 무결성을 결정할 수 있다.
프록시 디바이스 (1000) 는 일 예이고, 프록시 디바이스 (1000) 의 다른 엘리먼트를 제어하도록 구성된 컨트롤러, 유저 입력을 수신하도록 구성된 유저 인터페이스, 저장 매체, 및/또는 전술한 동작의 일부를 포함할 수도 있는 다양한 기능을 수행하도록 구성된 프로세서와 같은 추가적인 엘리먼트들을 포함할 수도 있다는 것이 명시된다. 엘리먼트들 중 하나 또는 그 조합이 프록시 디바이스 (1000) 의 동작에 영향을 주지 않고 재배열되거나 또는 결합될 수도 있다.
도 11 은 클라이언트 디바이스와의 통신을 인증하는 프록시 디바이스를 이용하기 위한 다른 방법을 도시한다. 선택된 제약을 나타내는 파라미터가 수신되고 (1102), 제약된 프록시 키가 수신되며 (1104), 여기서 제약된 프록시 키는 비밀 키 및 제약 파라미터/제약의 함수이다. 메세지는 제약된 프록시 키를 이용하여 인증 (예를 들어, 암호화 또는 보안) 되고 (1106), 이 메세지는 데이터 및 파라미터들을 포함할 수도 있다. 다음으로, 인증된 메세지 및 수신된 제약 파라미터가 전송 또는 송신된다 (1108 및 1110). 수신된 제약된 프록시 키는 비밀 키를 이용하여 제약 파라미터를 암호화함으로써 생성될 수도 있다. 제약된 프록시 키는 비무선으로 또는 무선으로 수신될 수도 있다. 제약된 프록시 키가 수신될 때 암호화되고 그렇지 않으면 보안된다. 암호화되는 경우, 이 방법은 제약된 프록시 키를 해독하는 (1112) 단계를 포함한다.
수신된 파라미터/제약은 메세지가 유효한 동안의 시간 기간을 나타내는 타임스탬프를 구비할 수도 있다. 이 파라미터는 제약된 프록시 키의 사용 제한을 나타낼 수도 있다. 또한, 이 방법은, 이 키가 제약된 프록시 키라는 것을 클라이언트 수신기에 통지하는 플래그와 같은 프록시 표시자를 전송하는 단계 (1114) 를 포함할 수도 있다.
도 12 는 키 인증 클라이언트 디바이스 (도 3 의 클라이언트 디바이스 B (304)) 의 일 실시형태를 도시하는 블록도이다. 키 인증 클라이언트 디바이스 (1202) 는, 이를 통해서 다른 디바이스들, 예를 들어, 키 생성기 호스트 디바이스 (예를 들어, 도 4 의 호스트 디바이스 (402)) 및 프록시 디바이스 (예를 들어, 도 8 의 프록시 디바이스 (802)) 와의 보안 통신 링크를 확립할 수도 있는 통신 인터페이스 (1204) 를 포함한다. 프로세싱 회로 (1206) 는 키 인증 클라이언트 디바이스로 및/또는 로부터 통신을 인증하기 위해 암호 키(들) (예를 들어, 대칭 또 는 비대칭 키) 를 사용하도록 구성된다. 저장 디바이스 (1208) 는, 사전에 (예를 들어, 독립적인 및/또는 보안 분배 채널을 통해서) 다른 보안 디바이스 (예를 들어, 키 생성기 호스트 디바이스) 와 공유될 수도 있는 공유 비밀 키 (예를 들어, 대칭 암호 체계) 및 암호 함수 (예를 들어, 키 유도 함수) 를 저장할 수도 있다.
도 13 은 보안 통신을 확립하고 및/또는 프록시 디바이스를 인증하도록 프록시 디바이스 (제 3 엔티티) 로부터의 제약 키를 인증하고 이용하기 위해 키 인증 클라이언트 디바이스 (1202) 상에서 동작가능한 방법을 도시한다. 동일한 공유 비밀 키를 가지는 호스트 디바이스 (예를 들어, 도 4 에서 키 생성기 디바이스 (402)) 와의 보안 통신을 위한 클라이언트 디바이스 (예를 들어, 인증 디바이스) 에 의해 이용될 수 있는 공유 비밀 키가 획득된다 (1302). 클라이언트 디바이스와 호스트 디바이스 모두에 알려진 키 유도 함수가 획득된다 (1304). 공유 비밀 키 및/또는 키 유도 함수가 개별적인 분배 채널을 통해서 키 인증 클라이언트 디바이스에 제공될 수도 있다. 인증된 메세지는 프록시 디바이스로부터 수신되고 (1306), 여기서 이 메세지는 호스트 디바이스에 의해 초기에 생성된 프록시 키를 이용하여 암호화되었다. 또한, 클라이언트 디바이스는 프록시 키와 연관된 하나 이상의 제약들을 획득한다 (1308). 이 제약은 프록시 디바이스 및/또는 호스트 디바이스로부터 획득된다. 키 유도 함수, 하나 이상의 제약, 및 공유 비밀 키를 이용하여 클라이언트 디바이스에 의해 로컬 프록시 키가 생성된다 (1310). 프록시 디바이스는 수신된 디바이스에서 로컬 프록시 키를 이용함으로써 인증된다. 즉, 프록시 디바이스가 메세지를 인증했던 프록시 키와 국부적으 로 생성된 프록시 키가 동일하면, 이에 따라, 클라이언트 디바이스는 이 메세지를 적절하게 인증 (예를 들어, 해독) 한다.
프록시 디바이스에 의해 수행된 동작이 프록시 키의 제약에 따라서 제한될 수도 있다 (1316). 일 구현에서, 프록시 키의 제약은 프록시 키와 함께 수신될 수도 있고, 또는 프록시 키의 일부일 수도 있다. 다른 구현에서는, 프록시 키의 제약은 개별적인 분배 채널을 통해서 또는 그 사이의 보안 통신 링크를 통해서 호스트 디바이스 (예를 들어, 프록시 키 생성기 디바이스) 와 클라이언트 디바이스 (예를 들어, 프록시 키 인증 디바이스) 사이에 사전 배열될 수도 있다. 또 다른 실시형태에서, 프록시 키의 제약이 함축될 수도 있다. 예를 들어, 클라이언트 디바이스 (1202) 는 상이한 통신 인터페이스, 예를 들어, 프록시 키 생성기 호스트 디바이스와의 통신을 위한 주요 인터페이스, 및 프록시 디바이스와의 통신을 위한 보조 인터페이스를 포함할 수도 있다. 프록시 키가 보조 인터페이스에 걸쳐서 수신되는 경우, 이에 따라, 프록시 인증 디바이스는 이것이 프록시 디바이스라고 가정하고 이에 따라서 이를 인증한다. 다른 유형의 수신된 제약은 프록시 키가 유효한 시간의 기간을 나타내는 하나 이상의 타임스탬프일 수도 있다.
도 14 는, 저장 매체 (1402), 파라미터 수신기 (1404), 메세지 수신기 (1406), 키 생성기 (1408), 및 인증 모듈 (1410)을 포함하는 예시적인 (인증) 클라이언트 디바이스 (1400) 를 도시한다. 저장 매체 (1402) 는 비밀 키 K 를 저장하도록 구성된다. 인증 모듈 (1410) 은 메세지 수신기 (1406) 를 통해서 수신된 메세지를 인증 (예를 들어, 해독) 하기 위해 비밀 키 K 를 이용할 수도 있다. 비밀 키 K 를 이용하여 수신된 메세지의 인증이 실패하는 경우, 클라이언트 디바이스 (1400) 는 수신된 메세지를 인증하는데 이용될 수 있는 제약된 프록시 키를 생성한다. 몇몇 구현에서, 수신된 메세지가 프록시 키를 이용하여 인증된다는 것을 클라이언트 디바이스 (1400) 에 통지하는 표시자가 수신된다. 따라서, 이 표시자가, (제약) 프록시 키를 이용하여 수신된 메세지가 인증된다는 것을 나타내는 경우, (인증) 클라이언트 디바이스 (1400) 는 수신된 메세지를 인증하고 수신된 메세지 및/또는 메세지의 전송자에 대한 인증성을 증명하기 위해 나타난 제약을 이용하여 로컬 프록시 키를 생성한다.
파라미터 수신기 (1404) 는 선택된 제약을 나타내는 파라미터들을 수신한다. 선택된 제약이, 예를 들어, 기능적인 면 및/또는 시간적인 면의 제약된 프록시 키의 사용을 제한할 수도 있다. 이 파라미터들은 제약된 프록시 키의 사용 제한을 나타낼 수도 있다. 또한, 이 파라미터들은, 제약된 프록시 키로 암호화된 메세지가 유효한 동안의 시간 기간을 나타내는 타임스탬프를 포함할 수도 있다.
수신된 메세지를 인증하기 위해, 키 생성기 (1408) 는 수신된 파라미터의 함수 (즉, 제약) 및 비밀 키 K 로서 로컬 프록시 키를 생성한다. 키 생성기 (1408) 는 도 6 의 키 생성기 (610) 와 유사한 방식으로 로컬 프록시 키를 생성한다. 따라서, 키 생성기 (1408) 는 파라미터/제약을 통합하는 키 유도 함수 (암호 키의 유형) 및 비밀 키 K 를 이용함으로써 로컬 프록시 키를 생성할 수도 있다. 파라미터가 타임스템프를 포함하는 경우, 식 [1] 에서와 같이 타임스탬프를 암호화함으로써 프록시 키가 생성될 수도 있다. 이 구현에 기초하여, 하나 이상 의 키 유도 함수가 이용될 수도 있다. 예를 들어, 복수의 암호 함수가 로컬 제약 키를 생성하기 위해 이용될 수도 있다. 이러한 경우, 암호 함수 중 하나를 지정하는 데이터가 클라이언트 디바이스 (1400) 에 의해 수신될 수도 있다. 키 생성기 (1408) 는 지정된 키 유도 함수를 이용하여 로컬 프록시 키를 생성하여 파라미터 (제약) 와 비밀 키를 통합할 수도 있다. 로컬 프록시 키가 생성되면, 인증 모듈 (1410) 은 그 내부의 데이터 및 파라미터 (제약) 를 회복시키기 위해 로컬 프록시 키를 이용하여 수신된 메세지를 인증하도록 구성된다.
클라이언트 디바이스 (1400) 는 비교 모듈 (1412) 을 더 포함할 수도 있다.비교 모듈 (1412) 은 수신된 파라미터 (제약) 와 회복된 파라미터 (예를 들어, 인증된 메세지로부터의 제약) 를 비교하도록 구성된다. 예를 들어, 수신된 파라미터 (제약) 및 회복된 파라미터 (제약) 이 일치하면, 프록시 디바이스가 인증된다. 예를 들어, 파라미터가 타임스탬프이면, 수신된 메세지가 파라미터들에 의해 나타내어진 시간 기간 내에 수신되는 경우, 이 수신된 메세지는 인증된다.
다른 구현에서, 프록시 키를 생성하기 위해 이용된 파라미터 (제약) 는 클라이언트 디바이스에 의해 개별적으로 획득된다. 예를 들어, 호스트 디바이스는 사전에 파라미터 (제약) 를 제공할 수도 있다. 다음으로, 클라이언트 디바이스는 이들 제약을 이용하여 로컬 프록시 키를 생성하고 프록시 디바이스를 인증 (예를 들어, 프록시 디바이스로부터 수신된 메세지를 인증) 한다.
클라이언트 디바이스 (1400) 는 일 예시적인 설명이고, 클라이언트 디바이스 (1400) 의 다른 엘리먼트들을 제어하도록 구성된 컨트롤러 및/또는 전술한 동작의 일부를 포함할 수도 있는 다양한 기능들을 수행하도록 구성된 프로세서와 같은 추가적인 엘리먼트를 포함할 수도 있다는 것이 명시된다. 또한, 클라이언트 디바이스 (1400) 는 텔레커뮤니케이션용 엘리먼트들뿐만 아니라 무선 통신용 엘리먼트들을 포함할 수도 있다. 이 엘리먼트들 중 하나 또는 그 조합이 클라이언트 디바이스 (1400) 의 동작에 영향을 주지 않고 재배열될 수도 있다. 또한, 이 엘리먼트들 중 하나 또는 그 조합이 클라이언트 디바이스 (1400) 의 동작에 영향을 주지 않고 하나의 엘리먼트로 결합될 수도 있다.
도 15 는 클라이언트 디바이스에 의한 통신을 인증하기 위한 방법을 도시한다. 보안 통신에 이용되는 비밀 키가 저장된다 (1502). 이 비밀 키는 제약 키를 프록시 디바이스에 제공하는 호스트 디바이스와 공유될 수도 있다. 클라이언트 디바이스에 의해, 선택된 제약을 나타내는 파라미터가 수신되고 (1504), 제약 키를 이용하여 인증된 메세지가 수신된다 (1506). 이 메세지는 데이터 및 파라미터를 포함할 수도 있다. 수신된 메세지 (1506) 는 비밀 키를 이용하여 인증된다 (1516). 수신된 메세지의 인증이 성공적이면 (1518) (예를 들어, 메세지가 적절하게 해독되면), 인증이 완성된다. 즉, 이러한 메세지는 비밀 키를 알고 있던 다른 디바이스에 의해 인증되었다. 이와 다르게, 수신된 메세지의 인증이 실패하면 (1518), 키 유도 함수, 비밀 키 및 하나 이상의 파라미터 (제약) 를 이용하여 제약된 프록시 키가 국부적으로 생성되고 (1508), 메세지를 인증한다 (1510). 수신된 메세지는 데이터 및 파라미터를 회복시키기 위해 국부적으로 생성된 프록시 키를 이용하여 인증된다 (1510).
암호 함수, 예를 들어, 키 유도 함수 (KDF) 를 이용함으로써 수신된 파라미터 및 비밀 키에 기초하여 제약된 프록시 키가 생성될 수도 있다. 이 방법은, 수신하는 클라이언트 디바이스에게, 수신된 메세지가 (제약) 프록시 키를 통해서 인증 (예를 들어, 암호화) 된다는 것을 통지하는 표시자를 수신하는 단계 (1512) 를 또한 포함할 수도 있다. 따라서, 이 표시자가 (제약) 프록시 키가 수신된 메세지를 인증하도록 이용되었을 경우, 제약된 프록시 키는 (비밀 키를 통한 인증 (1516) 을 시도하는 것보다는) 직접적으로 생성될 수도 있다. 예를 들어, 표시자는 플래그일 수도 있다. 이 방법은 복수의 암호 함수 중 하나를 지정하는 데이터를 수신하는 단계 (1514) 를 추가적으로 포함할 수도 있다. 이러한 경우, 입력으로서 파라미터 및 비밀 키를 이용하여 나타난 암호 함수를 이용하여 제약된 프록시 키가 생성될 수도 있다.
이 방법은 수신된 파라미터와 (예를 들어, 수신된 메세지로부터 해독된) 회복된 파라미터를 비교하는 단계 (1520) 및 이 비교와 파라미터에 기초하여 프록시 디바이스를 인증하는 단계 (1522) 를 더 포함할 수도 있다. 수신된 파라미터와 회복된 파라미터가 일치하는 경우, 프록시 디바이스가 인증될 수도 있다. 수신된 및 회복된 파라미터는 타임스탬프를 포함할 수도 있다. 이 타임스탬프는 메세지가 유효한 동안의 시간 기간을 나타낼 수도 있다. 따라서, 이 메세지가 그 시간 기간내에 수신되는 경우에 이 메세지가 인증될 수도 있다. 수신된 및 회복된 파라미터는 제약 키의 이용 제한을 더 나타낼 수도 있다.
도 16 은 (인증) 클라이언트 디바이스에 의해 수신된 메세지에 대해 이용될 수도 있는 메세지 포맷을 도시한다. 데이터 포맷은 인증된 메세지 필드 (1602) 를 포함할 수 있다. 또한, 데이터 포맷은, 제약 키가 생성되는지의 여부를 통지하는 표시자에 대한 표시자 비트 필드 (1604) 를 포함할 수도 있다. 표시자 비트는, 예를 들어, 비트 = 0 은 제약 키가 생성되지 않았음을 나타내고, 비트 = 1 은 제약 키가 생성되었음을 나타내는, 또는 그 반대인, 1 비트 길이 플래그일 수도 있다. 데이터 포맷은 제약 키를 생성하기 위해 이용된 복수의 암호 함수 중 하나를 지정하는 데이터에 대한 필드 (1606) 를 추가적으로 포함할 수도 있다. 이 데이터 필드 (1606) 의 길이는 암호 함수의 수에 의존할 수도 있다. 예를 들어, 3 개 또는 4 개의 암호 함수가 있는 경우, 이 데이터 필드 (1606) 는 00, 01, 10 및 11 의 4 개의 상태를 가지는 2 비트일 수도 있고, 여기서 각각은 3 개 (1 개의 상태는 이용되지 않음) 또는 4 개의 암호 함수 중 하나에 대응한다. 데이터 필드 (1604 및 1606) 는 이동 디바이스에 통신되는 메세지의 헤더에 있을 수도 있다. 데이터 필드 (1602) 는 클라이언트 디바이스에 통신되는 메세지의 페이로드에 있을 수도 있다.
도 17 은, 블록 사이퍼가 프록시 키 생성기 호스트 디바이스에서 일 유형의 암호 함수 (예를 들어, 키 유도 함수) 로서 어떻게 이용되는지에 대한 방법을 도시한다. 블록 사이퍼 (1702) 는 비밀 키 (1704) 를 수신하고, 하나 이상의 제약들 (1706) 및 인증 키 (1710) (플레인 텍스트) 를 수신하여, 프록시 키 (1708) (사이퍼 텍스트) 를 생성한다. 이 구현에서, 프록시 키 생성 호스트 디바이스는 프록시 키 (1708) 의 일부로서 프록시 제약 및 인증 키를 인코딩한다.
도 18 은 프록시 키 인증 클라이언트 디바이스에서 일 유형의 암호 함수 (예를 들어, 키 유도 함수) 로서 어떻게 이용되는지에 대한 방법을 도시한다. 블록 사이퍼 (1802) 는 프록시 디바이스로부터의 (이전에 인증 디바이스에 알려진) 비밀 키 (1804) 및 수신된 프록시 키 (1806) (사이퍼 텍스트) 를 이용하여 프록시 제약 (1808) 및 인증 키 (1810) (플레인 텍스트) 를 획득한다. 다음으로, 인증 키 (1810) 는, 프록시 키를 전송한 프록시 디바이스가 프록시로서 동작하도록 인증되는지의 여부를 결정하기 위해 인증 디바이스에 의해 이용될 수 있다.
본 명세서에 설명된 다양한 예시가 대칭 키 암호 (예를 들어, 공유 비밀 키, 사이퍼 블록 등) 를 이용하고, 프록시 키 체계는 대칭 키 암호를 또한 이용하여 구현될 수도 있다.
도 1 내지 도 18 에 도시된 하나 이상의 컴포넌트, 단계, 및/또는 기능은 본 발명에서 벗어나지 않고 단일의 컴포넌트, 단계, 또는 기능으로 재배열되고 및/또는 결합되고 또는 몇몇 컴포넌트, 단계, 또는 기능에 내장될 수도 있다. 또한, 추가적인 엘리먼트, 컴포넌트, 단계, 및/또는 기능이 본 발명을 벗어나지 않고 부가될 수도 있다. 도 1, 도 2, 도 4, 도 6, 도 8, 도 10, 도 12, 도 14, 도 17 및/또는 도 18 에 도시된 장치, 디바이스, 및/또는 컴포넌트는 도 3, 도 5, 도 7, 도 9, 도 11, 도 13, 및/또는 도 15 에 설명된 하나 이상의 방법, 특성, 또는 단계를 수행하도록 구성될 수도 있다.
본 명세서에 개시된 실시형태와 관련하여 설명된 다양한 예시적인 로컬 블록, 모듈, 회로, 및 알고리즘 단계는 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이 둘의 조합으로 구현될 수도 있다는 것을 당업자는 더 이해할 수 있다. 하드웨어와 소프트웨어의 교환을 명백하게 설명하기 위해, 다양한 예시적인 컴포넌트, 블록, 모듈, 회로, 및 단계가 그 기능성의 용어를 통해 일반적으로 설명되었다. 이러한 기능성이 구현되는지의 여부는, 소프트웨어 또는 하드웨어가 전반적인 시스템에 부여된 특정 어플리케이션 및 디자인 제약에 기초함에 따른다.
전술한 실시형태는 단지 예시이고 본 발명을 한정하는 것으로서 구성되지 않았음이 명시된다. 실시형태의 설명은 예시적으로 의도되고, 특허청구범위를 제한하지 않도록 의도된다. 이와 같이, 본 발명의 교시는 다른 유형의 장치에 쉽게 적용될 수 있고, 많은 대안, 변형, 및 변화가 당업자에게는 명백하다.

Claims (71)

  1. 클라이언트 디바이스와 프록시 디바이스 사이에서 보안 통신 (secure communication) 을 가능하게 하는 방법으로서,
    호스트 디바이스 및 상기 클라이언트 디바이스에 알려진 공유 비밀 키에 기초하여 상기 호스트 디바이스에서 제 1 프록시 키를 생성하는 단계;
    상기 프록시 디바이스에 상기 제 1 프록시 키를 전송하는 단계;
    상기 클라이언트 디바이스에서 제 2 프록시 키를 생성하는 단계; 및
    상기 제 1 프록시 키 및 상기 제 2 프록시 키를 이용함으로써 상기 클라이언트 디바이스에서 상기 프록시 디바이스를 인증하는 단계를 포함하는, 클라이언트 디바이스와 프록시 디바이스 사이에서 보안 통신을 가능하게 하는 방법.
  2. 제 1 항에 있어서,
    상기 호스트 디바이스와 상기 클라이언트 디바이스 사이에서 인증 알고리즘의 분배를 사전-배열하는 단계; 및
    상기 호스트 디바이스와 상기 클라이언트 디바이스 사이에서 상기 공유 비밀 키의 분배를 사전-배열하는 단계를 더 포함하는, 클라이언트 디바이스와 프록시 디바이스 사이에서 보안 통신을 가능하게 하는 방법.
  3. 제 2 항에 있어서,
    상기 제 1 프록시 키와 상기 제 2 프록시 키가 동일한 경우, 상기 프록시 디바이스가 인증되는, 클라이언트 디바이스와 프록시 디바이스 사이에서 보안 통신을 가능하게 하는 방법.
  4. 제 1 항에 있어서,
    상기 제 1 프록시 키와 상기 제 2 프록시 키는 키 유도 함수 (KDF; key derivation function) 및 상기 공유 비밀 키를 이용하여 독립적으로 생성되는, 클라이언트 디바이스와 프록시 디바이스 사이에서 보안 통신을 가능하게 하는 방법.
  5. 제 4 항에 있어서,
    상기 KDF 는 입력으로서 하나 이상의 제약 (constraint) 들 및 상기 공유 비밀 키를 취하여 상기 제 1 프록시 키 및 상기 제 2 프록시 키를 획득하는, 클라이언트 디바이스와 프록시 디바이스 사이에서 보안 통신을 가능하게 하는 방법.
  6. 제 5 항에 있어서,
    상기 공유 비밀 키는 상기 제 1 프록시 키, 상기 하나 이상의 제약들, 및 상기 KDF 의 지식 (knowledge) 으로만 복구될 수 있는, 클라이언트 디바이스와 프록시 디바이스 사이에서 보안 통신을 가능하게 하는 방법.
  7. 제 1 항에 있어서,
    상기 호스트 디바이스에서 상기 제 1 프록시 키와 연관된 하나 이상의 제약들을 선택하는 단계를 더 포함하며,
    상기 제 1 프록시 키와 상기 제 2 프록시 키는 상기 하나 이상의 제약들에 기초하는, 클라이언트 디바이스와 프록시 디바이스 사이에서 보안 통신을 가능하게 하는 방법.
  8. 제 7 항에 있어서,
    상기 프록시 디바이스로부터 상기 클라이언트 디바이스에 상기 하나 이상의 제약들을 전송하는 단계를 더 포함하며,
    상기 클라이언트 디바이스는 상기 하나 이상의 제약들을 상기 제 1 프록시 키에 적용하는, 클라이언트 디바이스와 프록시 디바이스 사이에서 보안 통신을 가능하게 하는 방법.
  9. 제 7 항에 있어서,
    상기 호스트 디바이스로부터 상기 클라이언트 디바이스에 상기 하나 이상의 제약들을 전송하는 단계를 더 포함하며,
    상기 클라이언트 디바이스는 상기 하나 이상의 제약들을 상기 제 2 프록시 키에 적용하는, 클라이언트 디바이스와 프록시 디바이스 사이에서 보안 통신을 가능하게 하는 방법.
  10. 제 1 항에 있어서,
    상기 프록시 디바이스로부터 상기 클라이언트 디바이스에 전송된 메세지에 표시자를 설정하여, 상기 클라이언트 디바이스에게 프록시 키를 이용하여 상기 메세지를 보안하고 있다는 것을 표시하는 단계를 더 포함하는, 클라이언트 디바이스와 프록시 디바이스 사이에서 보안 통신을 가능하게 하는 방법.
  11. 제 1 항에 있어서,
    상기 호스트 디바이스에서 상기 제 1 프록시 키를 유도하도록 이용된 하나 이상의 제약들을 정의하는 단계; 및
    상기 클라이언트 디바이스에 상기 하나 이상의 제약들을 전송하는 단계를 더 포함하는, 클라이언트 디바이스와 프록시 디바이스 사이에서 보안 통신을 가능하게 하는 방법.
  12. 제 11 항에 있어서,
    상기 하나 이상의 제약들에 따라서, 상기 프록시 디바이스와 관련하여 상기 클라이언트 디바이스의 동작을 제한하는 단계를 더 포함하는, 클라이언트 디바이스와 프록시 디바이스 사이에서 보안 통신을 가능하게 하는 방법.
  13. 호스트 디바이스에서 프록시 키를 생성하기 위한 방법으로서,
    동일한 공유 비밀 키를 가지는 클라이언트 디바이스와의 통신을 보안하기 위 해 이용된 공유 비밀 키를 획득하는 단계;
    제 1 키 유도 함수를 획득하는 단계로서, 상기 제 1 키 유도 함수는 상기 클라이언트 디바이스에 알려진 제 2 키 유도 함수와 관련되는, 상기 제 1 키 유도 함수를 획득하는 단계;
    상기 제 1 키 유도 함수 및 상기 공유 비밀 키에 기초하여 상기 프록시 키를 생성하는 단계; 및
    프록시 디바이스에 상기 프록시 키를 제공하는 단계로서, 상기 프록시 디바이스는 상기 프록시 키를 이용하여 상기 클라이언트 디바이스와의 통신을 인증할 수 있는, 상기 상기 프록시 키를 제공하는 단계를 포함하는, 호스트 디바이스에서 프록시 키를 생성하기 위한 방법.
  14. 제 13 항에 있어서,
    상기 프록시 키를 생성하는 단계 이전에 상기 프록시 키에 대한 하나 이상의 제약들을 정의하는 단계를 더 포함하는, 호스트 디바이스에서 프록시 키를 생성하기 위한 방법.
  15. 제 14 항에 있어서,
    상기 하나 이상의 제약들은 상기 프록시 키를 생성하기 위해 이용되고, 상기 프록시 디바이스에 전송되는, 호스트 디바이스에서 프록시 키를 생성하기 위한 방법.
  16. 제 14 항에 있어서,
    상기 하나 이상의 제약들은 상기 클라이언트 디바이스에 전송되는, 호스트 디바이스에서 프록시 키를 생성하기 위한 방법.
  17. 제 13 항에 있어서,
    상기 공유 비밀 키는 상기 호스트 디바이스와 상기 클라이언트 디바이스 사이의 대칭 키 보안 체계에 이용되는, 호스트 디바이스에서 프록시 키를 생성하기 위한 방법.
  18. 제 13 항에 있어서,
    상기 제 1 키 유도 함수는 암호화 블록 사이퍼 (encryption block cipher) 인, 호스트 디바이스에서 프록시 키를 생성하기 위한 방법.
  19. 제 13 항에 있어서,
    복수의 암호 함수들을 저장하는 단계; 및
    상기 복수의 암호 함수들 중에서 상기 제 1 키 유도 함수를 선택하는 단계를 더 포함하는, 호스트 디바이스에서 프록시 키를 생성하기 위한 방법.
  20. 제 13 항에 있어서,
    상기 프록시 키를 생성하는 단계는, 상기 공유 비밀 키와 함께 상기 제 1 키 유도 함수에 대한 파라미터들로서 하나 이상의 제약들을 이용하여 상기 프록시 키를 획득하는 단계를 포함하는, 호스트 디바이스에서 프록시 키를 생성하기 위한 방법.
  21. 제 20 항에 있어서,
    복수의 키 유도 함수들 중 하나를 지정하는 데이터를 송신하는 단계를 더 포함하는, 호스트 디바이스에서 프록시 키를 생성하기 위한 방법.
  22. 제 20 항에 있어서,
    상기 하나 이상의 제약들은, 상기 프록시 키가 유효한 동안의 기간을 나타내는 타임스탬프들을 포함하는, 호스트 디바이스에서 프록시 키를 생성하기 위한 방법.
  23. 다른 디바이스들과의 통신을 위한 통신 인터페이스;
    공유 비밀 키 및 키 유도 함수를 저장하기 위한 저장 디바이스로서, 상기 공유 비밀 키 및 상기 키 유도 함수는 모두 클라이언트 디바이스에 알려져 있는, 상기 저장 디바이스; 및
    상기 통신 인터페이스 및 상기 저장 디바이스에 연결된 프로세싱 회로를 포함하며;
    상기 프로세싱 회로는,
    상기 키 유도 함수 및 상기 공유 비밀 키에 기초하여 프록시 키를 생성하고,
    상기 프록시 키를 프록시 디바이스에 전송하도록 구성되고,
    상기 프록시 디바이스는 상기 클라이언트 디바이스와의 통신을 인증하기 위해 상기 프록시 키를 이용할 수 있는, 키 생성기 호스트 디바이스.
  24. 제 23 항에 있어서,
    상기 프로세싱 회로는 상기 프록시 키를 생성하기 전에 상기 프록시 키에 대한 하나 이상의 제약들을 정의하도록 또한 구성된, 키 생성기 호스트 디바이스.
  25. 제 24 항에 있어서,
    상기 하나 이상의 제약들은 상기 클라이언트 디바이스를 통해서 사전-배열된, 키 생성기 호스트 디바이스.
  26. 제 24 항에 있어서,
    상기 하나 이상의 제약들 중 하나는 상기 프록시 키가 일정량의 시간 이후에 만료되도록 하는, 키 생성기 호스트 디바이스.
  27. 제 24 항에 있어서,
    상기 프로세싱 회로는 상기 하나 이상의 제약들을 상기 프록시 디바이스에 전송하도록 또한 구성된, 키 생성기 호스트 디바이스.
  28. 제 24 항에 있어서,
    상기 프록시 키는 상기 하나 이상의 제약들에 기초하여 생성되는, 키 생성기 호스트 디바이스.
  29. 제 23 항에 있어서,
    상기 키 유도 함수는 암호화 블록 사이퍼인, 키 생성기 호스트 디바이스.
  30. 제 23 항에 있어서,
    상기 저장 디바이스는 복수의 암호 함수들을 저장하고,
    상기 프로세싱 회로는 상기 복수의 암호 함수들 중에서 상기 키 유도 함수를 선택하도록 구성되는, 키 생성기 호스트 디바이스.
  31. 제 30 항에 있어서,
    상기 프로세싱 회로는 하나 이상의 제약들을 상기 프록시 키에 통합하기 위해 이용된 상기 복수의 암호 함수들로부터 상기 선택된 키 유도 함수를 지정하는 데이터를 송신하도록 또한 구성된, 키 생성기 호스트 디바이스.
  32. 동일한 공유 비밀 키를 가지는 클라이언트 디바이스와의 보안 통신을 위해 이용된 상기 공유 비밀 키를 획득하기 위한 수단;
    상기 클라이언트 디바이스에 또한 알려진 키 유도 함수를 획득하기 위한 수단;
    상기 키 유도 함수 및 상기 공유 비밀 키에 기초하여 프록시 키를 생성하기 위한 수단; 및
    프록시 디바이스에 상기 프록시 키를 전송하기 위한 수단으로서, 상기 프록시 디바이스는 상기 클라이언트 디바이스와의 통신을 인증하기 위해 상기 프록시 키를 이용할 수 있는, 상기 프록시 키를 전송하기 위한 수단을 포함하는, 프록시 생성 디바이스.
  33. 제 32 항에 있어서,
    상기 호스트 디바이스에서 상기 프록시 키에 대한 하나 이상의 제약들을 정의하기 위한 수단; 및
    상기 하나 이상의 제약들을 상기 클라이언트 디바이스에 전송하기 위한 수단을 더 포함하고,
    상기 키 유도 함수는 상기 하나 이상의 제약들 및 상기 공유 비밀 키를 이용하여 상기 프록시 키를 생성하는, 프록시 생성 디바이스.
  34. 호스트 디바이스에서 프록시 키를 생성하도록 구성된 프로세서로서,
    동일한 공유 비밀 키를 가지는 클라이언트 디바이스와의 보안 통신을 위해 이용된 공유 비밀 키를 획득하고;
    키 유도 함수를 획득하고, 상기 키 유도 함수는 상기 클라이언트 디바이스에 알려진 제 2 키 유도 함수와 관련되고;
    상기 키 유도 함수 및 상기 공유 비밀 키에 기초하여 상기 프록시 키를 생성하고; 및
    상기 프록시 키를 프록시 디바이스에 제공하도록
    구성된 프로세싱 회로를 포함하는, 호스트 디바이스에서 프록시 키를 생성하도록 구성된 프로세서.
  35. 제 34 항에 있어서,
    상기 프로세싱 회로는 상기 프록시 키를 생성하기 전에 상기 프록시 키에 대한 하나 이상의 제약들을 정의하도록 또한 구성된, 호스트 디바이스에서 프록시 키를 생성하도록 구성된 프로세서.
  36. 제 35 항에 있어서,
    상기 프로세싱 회로는 상기 하나 이상의 제약들에 기초하여 상기 프록시 키를 생성하도록 또한 구성된, 호스트 디바이스에서 프록시 키를 생성하도록 구성된 프로세서.
  37. 제 35 항에 있어서,
    상기 프로세싱 회로는 상기 하나 이상의 제약들을 상기 클라이언트 디바이스에 제공하도록 또한 구성된, 호스트 디바이스에서 프록시 키를 생성하도록 구성된 프로세서.
  38. 호스트 디바이스에서 프록시 키를 생성하기 위한 하나 이상의 명령들을 가지는 머신-판독가능 매체로서,
    상기 하나 이상의 명령들은,
    프로세서에 의해 실행될 때 상기 프로세스가,
    동일한 공유 비밀 키를 가지는 클라이언트 디바이스와의 보안 통신을 위해 이용된 상기 공유 비밀 키를 획득하고;
    키 유도 함수를 획득하고, 상기 키 유도 함수는 상기 클라이언트 디바이스에 알려진 제 2 키 유도 함수와 관련되고;
    상기 키 유도 함수 및 상기 공유 비밀 키에 기초하여 상기 프록시 키를 생성하고; 및
    상기 프록시 키를 프록시 디바이스로 제공하도록 하는, 호스트 디바이스에서 프록시 키를 생성하기 위한 하나 이상의 명령들을 가지는 머신-판독가능 매체.
  39. 제 38 항에 있어서,
    프로세서에 의해 실행될 때 상기 프로세스가,
    상기 프록시 키에 대한 하나 이상의 제약들을 정의하고;
    상기 하나 이상의 제약들에 기초하여 상기 프록시 키를 생성하도록 하는 하나 이상의 명령들을 더 가지는, 호스트 디바이스에서 프록시 키를 생성하기 위한 하나 이상의 명령들을 가지는 머신-판독가능 매체.
  40. 제 39 항에 있어서,
    프로세서에 의해 실행될 때 상기 프로세서가,
    상기 하나 이상의 제약들을 상기 클라이언트 디바이스에 제공하도록 하는 하나 이상의 명령들을 더 가지는, 호스트 디바이스에서 프록시 키를 생성하기 위한 하나 이상의 명령들을 가지는 머신-판독가능 매체.
  41. 프록시 디바이스에서 동작가능한 방법으로서,
    호스트 디바이스로부터 프록시 키를 획득하는 단계;
    상기 호스트 디바이스가 키 유도 함수 및 비밀 키를 공유하는 클라이언트 디바이스에 의해 이용하기 위해 상기 프록시 키를 저장하는 단계;
    상기 프록시 키에 의해 메세지를 인증하는 단계; 및
    상기 클라이언트 디바이스에 대해 상기 프록시 디바이스를 인증하기 위해 상기 클라이언트 디바이스에 상기 인증된 메세지를 전송하는 단계를 포함하는, 프록시 디바이스에서 동작가능한 방법.
  42. 제 41 항에 있어서,
    상기 클라이언트 디바이스로부터 인증된 메세지를 수신하는 단계; 및
    상기 클라이언트 디바이스로부터의 상기 인증된 메세지를 인증하기 위해 상기 프록시 키를 이용함으로써 상기 클라이언트 디바이스를 인증하는 단계를 더 포함하는, 프록시 디바이스에서 동작가능한 방법.
  43. 제 41 항에 있어서,
    상기 호스트 디바이스에 의해 상기 프록시 키에 부과된 하나 이상의 제약들을 획득하는 단계; 및
    상기 클라이언트 디바이스에 상기 하나 이상의 제약들을 전송하는 단계를 더 포함하는, 프록시 디바이스에서 동작가능한 방법.
  44. 제 43 항에 있어서,
    상기 프록시 키는 상기 하나 이상의 제약들에 기초하여 생성되는, 프록시 디바이스에서 동작가능한 방법.
  45. 제 41 항에 있어서,
    상기 인증된 메세지가 프록시 키를 이용하여 인증되는 것을 나타내는 표시자를 상기 클라이언트 디바이스에 전송하는 단계를 더 포함하는, 프록시 디바이스에서 동작가능한 방법.
  46. 제 41 항에 있어서,
    상기 프록시 키를 생성하기 위해 이용된 키 유도 함수를 지정하는 데이터를 상기 클라이언트 디바이스에 송신하는 단계를 더 포함하는, 프록시 디바이스에서 동작가능한 방법.
  47. 호스트 디바이스 및 클라이언트 디바이스와의 통신을 위한 통신 인터페이스,
    저장 디바이스, 및
    상기 통신 인터페이스 및 상기 저장 디바이스에 연결된 프로세싱 회로를 포함하는 프록시 디바이스로서,
    상기 프로세싱 회로는,
    상기 호스트 디바이스로부터 프록시 키를 획득하고,
    상기 클라이언트 디바이스에 의해 이용하기 위해 상기 저장 디바이스에 상기 프록시 키를 저장하고,
    여기서, 상기 호스트 디바이스 및 상기 클라이언트 디바이스는 키 유 도 함수와 비밀 키를 공유하고,
    상기 프록시 키를 이용하여 메세지를 인증하고, 및
    상기 클라이언트 디바이스에 대해 상기 프록시 디바이스를 인증하기 위해 상기 클라이언트 디바이스에 상기 인증된 메세지를 전송하도록 구성된, 프록시 디바이스.
  48. 제 47 항에 있어서,
    상기 프로세싱 회로는,
    상기 호스트 디바이스에 의해 상기 프록시 키에 부과된 하나 이상의 제약들을 획득하고; 및
    상기 하나 이상의 제약들을 상기 클라이언트 디바이스에 전송하도록 또한 구성된, 프록시 디바이스.
  49. 제 47 항에 있어서,
    상기 프로세싱 회로는,
    상기 인증된 메세지가 제약된 키를 이용하여 보안된다는 것을 나타내는 표시자를 상기 클라이언트 디바이스에 전송하고; 및
    상기 프록시 키를 생성하기 위해 이용된 키 유도 함수를 지정하는 데이터를 상기 클라이언트 디바이스에 전송하도록 또한 구성된, 프록시 디바이스.
  50. 호스트 디바이스로부터 프록시 키를 획득하기 위한 수단;
    상기 호스트 디바이스가 키 유도 함수 및 비밀 키를 공유하는 클라이언트 디바이스에 의해 이용하기 위해 상기 프록시 키를 저장하기 위한 수단;
    상기 프록시 키에 의해 메세지를 인증하기 위한 수단; 및
    상기 클라이언트 디바이스에 대해 상기 프록시 디바이스를 인증하기 위해 상기 클라이언트 디바이스에 상기 인증된 메세지를 전송하기 위한 수단을 포함하는, 프록시 디바이스.
  51. 제 50 항에 있어서,
    상기 호스트 디바이스에 의해 상기 프록시 키에 부과된 하나 이상의 제약들을 획득하기 위한 수단; 및
    상기 하나 이상의 제약들을 상기 클라이언트 디바이스에 전송하기 위한 수단을 더 포함하는, 프록시 디바이스.
  52. 프록시 디바이스를 인증하기 위해 클라이언트 디바이스에서 동작가능한 방법으로서,
    호스트 디바이스 및 상기 클라이언트 디바이스 모두에 알려진 공유 비밀 키를 획득하는 단계;
    상기 클라이언트 디바이스 및 상기 호스트 디바이스 모두에 알려진 키 유도 함수를 획득하는 단계;
    상기 프록시 디바이스로부터 상기 클라이언트 디바이스에서 인증된 메세지를 수신하는 단계;
    상기 키 유도 함수 및 상기 공유 비밀 키를 이용하여 로컬 프록시 키를 생성하는 단계; 및
    상기 로컬 프록시 키를 이용함으로써 상기 클라이언트 디바이스에서 상기 프록시 디바이스를 인증하는 단계를 포함하는, 프록시 디바이스를 인증하기 위해 클 라이언트 디바이스에서 동작가능한 방법.
  53. 제 52 항에 있어서,
    하나 이상의 제약들을 획득하는 단계; 및
    상기 하나 이상의 제약들에 따라서 상기 프록시 디바이스에 의해 수행될 수 있는 동작들을 제한하는 단계를 더 포함하는, 프록시 디바이스를 인증하기 위해 클라이언트 디바이스에서 동작가능한 방법.
  54. 제 53 항에 있어서,
    상기 하나 이상의 제약들을 이용하여 상기 로컬 프록시 키를 생성하는 단계를 더 포함하는, 프록시 디바이스를 인증하기 위해 클라이언트 디바이스에서 동작가능한 방법.
  55. 제 52 항에 있어서,
    상기 하나 이상의 제약들은 상기 프록시 디바이스의 인증이 일정량의 시간 이후에 만료되도록 하는, 프록시 디바이스를 인증하기 위해 클라이언트 디바이스에서 동작가능한 방법.
  56. 제 52 항에 있어서,
    상기 수신된 메세지가 제 2 프록시 키에 의해 인증되는 것을 나타내는 표시 자를 수신하는 단계를 더 포함하는, 프록시 디바이스를 인증하기 위해 클라이언트 디바이스에서 동작가능한 방법.
  57. 제 56 항에 있어서,
    상기 제 2 프록시 키를 생성하기 위해 이용된 키 유도 함수의 표시자를 수신하는 단계를 더 포함하는, 프록시 디바이스를 인증하기 위해 클라이언트 디바이스에서 동작가능한 방법.
  58. 제 52 항에 있어서,
    상기 로컬 프록시 키가 상기 보안된 메세지를 성공적으로 해독하는 경우, 상기 프록시 디바이스는 상기 클라이언트 디바이스에 의해 인증되는, 프록시 디바이스를 인증하기 위해 클라이언트 디바이스에서 동작가능한 방법.
  59. 프록시 디바이스와의 통신을 위한 통신 인터페이스,
    공유 비밀 키 및 키 유도 함수를 저장하기 위한 저장 디바이스로서, 상기 공유 비밀 키 및 상기 키 유도 함수는 모두 호스트 디바이스에 알려져 있는, 상기 저장 디바이스, 및
    상기 통신 인터페이스 및 상기 저장 디바이스에 연결된 프로세싱 회로를 포함하는 키 인증 클라이언트 디바이스로서,
    상기 프로세싱 회로는,
    상기 프록시 디바이스로부터 보안 메세지를 수신하고,
    상기 키 유도 함수 및 상기 공유 비밀 키를 이용하여 로컬 프록시 키 를 생성하고, 및
    상기 로컬 프록시 키를 이용함으로써 상기 프록시 디바이스를 인증하도록 구성된, 키 인증 클라이언트 디바이스.
  60. 제 59 항에 있어서,
    상기 프로세싱 회로는,
    상기 프록시 디바이스에 대한 하나 이상의 제약들을 획득하고; 및
    상기 하나 이상의 제약들에 따라서 상기 프록시 디바이스에 의해 수행될 수 있는 동작들을 제한하도록 또한 구성된, 키 인증 클라이언트 디바이스.
  61. 제 59 항에 있어서,
    상기 하나 이상의 제약들 중 하나는 상기 프록시 디바이스의 인증이 일정량의 시간 이후에 만료하도록 하는, 키 인증 클라이언트 디바이스.
  62. 제 59 항에 있어서,
    상기 프로세싱 회로는,
    상기 수신된 메세지가 프록시 키에 의해 인증되는 것을 나타내는 표시자를 수신하고; 및
    상기 수신된 메세지를 보안하도록 이용된 키 유도 함수의 표시자를 수신하도록 또한 구성된, 키 인증 클라이언트 디바이스.
  63. 동일한 공유 비밀 키를 가지는 키 인증 클라이언트 디바이스와의 통신을 인증하기 위해 호스트 디바이스에 의해 이용될 수 있는 상기 공유 비밀 키를 획득하기 위한 수단;
    상기 호스트 디바이스 및 상기 키 인증 클라이언트 디바이스 모두에 알려진 키 유도 함수를 획득하기 위한 수단;
    프록시 디바이스로부터 상기 키 인증 클라이언트 디바이스에서 인증된 메세지를 수신하기 위한 수단;
    상기 키 유도 함수 및 상기 공유 비밀 키를 이용하여 로컬 프록시 키를 생성하기 위한 수단; 및
    상기 로컬 프록시 키를 이용함으로써 상기 프록시 디바이스를 인증하기 위한 수단을 포함하는, 키 인증 클라이언트 디바이스.
  64. 제 63 항에 있어서,
    하나 이상의 제약들을 획득하기 위한 수단;
    상기 하나 이상의 제약들을 이용하여 상기 로컬 프록시 키를 생성하기 위한 수단; 및
    상기 하나 이상의 제약들에 따라서 상기 프록시 디바이스에 의해 수행될 수 있는 동작들을 제한하기 위한 수단을 더 포함하는, 키 인증 클라이언트 디바이스.
  65. 클라이언트 디바이스에서 프록시 디바이스를 인증하도록 구성된 프로세서로서,
    동일한 공유 비밀 키를 가지는 상기 클라이언트 디바이스와의 통신을 인증하기 위해 호스트 디바이스에 의해 이용될 수 있는 상기 공유 비밀 키를 획득하고;
    상기 클라이언트 디바이스 및 상기 호스트 디바이스 모두에 알려진 키 유도 함수를 획득하고;
    프록시 디바이스로부터 상기 클라이언트 디바이스에서 인증된 메세지를 수신하고;
    상기 키 유도 함수 및 상기 공유 비밀 키를 이용하여 로컬 프록시 키를 생성하고; 및
    상기 로컬 프록시 키를 이용함으로써 상기 클라이언트 디바이스에서 상기 프록시 키를 인증하도록 구성된 프로세싱 회로를 포함하는, 클라이언트 디바이스에서 프록시 디바이스를 인증하도록 구성된 프로세서.
  66. 제 65 항에 있어서,
    상기 프로세싱 회로는 상기 프록시 디바이스에 대한 하나 이상의 제약들을 획득하고; 및
    상기 하나 이상의 제약들에 기초하여 상기 로컬 프록시 키를 생성하도록 또 한 구성된, 클라이언트 디바이스에서 프록시 디바이스를 인증하도록 구성된 프로세서.
  67. 제 66 항에 있어서,
    상기 프로세싱 회로는 상기 하나 이상의 제약들에 기초하여 상기 클라이언트 디바이스에 관련하여 상기 프록시 디바이스의 동작을 제한하도록 또한 구성된, 클라이언트 디바이스에서 프록시 디바이스를 인증하도록 구성된 프로세서.
  68. 클라이언트 디바이스에서 프록시 디바이스를 인증하기 위한 하나 이상의 명령들을 가지는 머신-판독가능 매체로서,
    상기 하나 이상의 명령들은, 프로세서에 의해 실행될 때 상기 프로세스가,
    동일한 공유 비밀 키를 가지는 상기 클라이언트 디바이스와의 통신을 인증하기 위해 호스트 디바이스에 의해 이용될 수 있는 상기 공유 비밀 키를 획득하고;
    상기 클라이언트 디바이스 및 상기 호스트 디바이스 모두에 알려진 키 유도 함수를 획득하고;
    프록시 디바이스로부터 상기 클라이언트 디바이스에서 인증된 메세지를 수신하고;
    상기 키 유도 함수 및 상기 공유 비밀 키를 이용하여 로컬 프록시 키를 생성하고; 및
    상기 로컬 프록시 키를 이용함으로써 상기 클라이언트 디바이스에서 상기 프 록시 디바이스를 인증하게 하는, 클라이언트 디바이스에서 프록시 디바이스를 인증하기 위한 하나 이상의 명령들을 가지는 머신-판독가능 매체.
  69. 제 68 항에 있어서,
    프로세서에 의해 실행될 때 상기 프로세서가,
    상기 프록시 키에 대한 하나 이상의 제약들을 획득하고;
    상기 하나 이상의 제약들에 기초하여 상기 프록시 키를 생성하게 하는 하나 이상의 명령들을 더 가지는, 클라이언트 디바이스에서 프록시 디바이스를 인증하기 위한 하나 이상의 명령들을 가지는 머신-판독가능 매체.
  70. 제 69 항에 있어서,
    프로세서에 의해 실행될 때 상기 프로세서가,
    상기 하나 이상의 제약들에 기초하여 상기 클라이언트 디바이스에 관련하여 상기 프록시 디바이스의 동작을 제한하게 하는 하나 이상의 명령들을 더 가지는, 클라이언트 디바이스에서 프록시 디바이스를 인증하기 위한 하나 이상의 명령들을 가지는 머신-판독가능 매체.
  71. 제 68 항에 있어서,
    상기 수신된 인증된 메세지가 상기 로컬 프록시 키를 이용함으로써 적절하게 인증된 경우, 상기 프록시 디바이스는 인증되는, 클라이언트 디바이스에서 프록시 디바이스를 인증하기 위한 하나 이상의 명령들을 가지는 머신-판독가능 매체.
KR1020087010426A 2005-09-29 2006-09-29 제약된 암호 키 KR101032016B1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US72218505P 2005-09-29 2005-09-29
US60/722,185 2005-09-29
US76147606P 2006-01-24 2006-01-24
US60/761,476 2006-01-24
US11/535,937 US8788802B2 (en) 2005-09-29 2006-09-27 Constrained cryptographic keys
US11/535,937 2006-09-27

Publications (2)

Publication Number Publication Date
KR20080065633A true KR20080065633A (ko) 2008-07-14
KR101032016B1 KR101032016B1 (ko) 2011-05-02

Family

ID=39050817

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087010426A KR101032016B1 (ko) 2005-09-29 2006-09-29 제약된 암호 키

Country Status (6)

Country Link
US (1) US8788802B2 (ko)
EP (1) EP2016702A2 (ko)
JP (1) JP4814339B2 (ko)
KR (1) KR101032016B1 (ko)
CN (1) CN101385274A (ko)
WO (1) WO2008054375A2 (ko)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101256114B1 (ko) * 2011-11-07 2013-04-23 고려대학교 산학협력단 다수의 mac검증서버에 의한 메시지인증코드 검증 방법 및 시스템
KR101314404B1 (ko) * 2008-12-11 2013-10-04 퀄컴 인코포레이티드 다중의 무선 디바이스들 사이의 동적 자원 공유
US8674957B2 (en) 2011-02-04 2014-03-18 Qualcomm Incorporated User input device for wireless back channel
KR101478526B1 (ko) * 2013-06-24 2015-01-02 바른소프트기술 주식회사 인증 정보를 이용한 비밀 키 관리 시스템 및 이를 이용한 비밀 키 제공 방법
US9065876B2 (en) 2011-01-21 2015-06-23 Qualcomm Incorporated User input back channel from a wireless sink device to a wireless source device for multi-touch gesture wireless displays
US9198084B2 (en) 2006-05-26 2015-11-24 Qualcomm Incorporated Wireless architecture for a traditional wire-based protocol
US9264248B2 (en) 2009-07-02 2016-02-16 Qualcomm Incorporated System and method for avoiding and resolving conflicts in a wireless mobile display digital interface multicast environment
US9413803B2 (en) 2011-01-21 2016-08-09 Qualcomm Incorporated User input back channel for wireless displays
US9503771B2 (en) 2011-02-04 2016-11-22 Qualcomm Incorporated Low latency wireless display for graphics
US9525998B2 (en) 2012-01-06 2016-12-20 Qualcomm Incorporated Wireless display with multiscreen service
US9582238B2 (en) 2009-12-14 2017-02-28 Qualcomm Incorporated Decomposed multi-stream (DMS) techniques for video display systems
US9582239B2 (en) 2011-01-21 2017-02-28 Qualcomm Incorporated User input back channel for wireless displays
US9787725B2 (en) 2011-01-21 2017-10-10 Qualcomm Incorporated User input back channel for wireless displays
US10108386B2 (en) 2011-02-04 2018-10-23 Qualcomm Incorporated Content provisioning for wireless back channel
WO2020116915A1 (ko) * 2018-12-05 2020-06-11 엘지전자 주식회사 무선 통신 시스템 엑세스 허가를 위한 단말의 대행 인증 방법 및 장치

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10181953B1 (en) * 2013-09-16 2019-01-15 Amazon Technologies, Inc. Trusted data verification
US20080045149A1 (en) * 2006-05-26 2008-02-21 Dinesh Dharmaraju Wireless architecture for a traditional wire-based protocol
US8667144B2 (en) * 2007-07-25 2014-03-04 Qualcomm Incorporated Wireless architecture for traditional wire based protocol
US8811294B2 (en) * 2008-04-04 2014-08-19 Qualcomm Incorporated Apparatus and methods for establishing client-host associations within a wireless network
US20100205321A1 (en) * 2009-02-12 2010-08-12 Qualcomm Incorporated Negotiable and adaptable periodic link status monitoring
US8160248B2 (en) * 2009-04-02 2012-04-17 Broadcom Corporation Authenticated mode control
US9252950B2 (en) * 2010-05-28 2016-02-02 Ram Caspi Methods and apparatus for interactive multimedia communication
US8964783B2 (en) 2011-01-21 2015-02-24 Qualcomm Incorporated User input back channel for wireless displays
US10135900B2 (en) 2011-01-21 2018-11-20 Qualcomm Incorporated User input back channel for wireless displays
US20120303503A1 (en) 2011-05-26 2012-11-29 First Data Corporation Systems and Methods for Tokenizing Financial Information
US8638935B2 (en) * 2012-01-12 2014-01-28 Apple Inc. System and method for key space division and sub-key derivation for mixed media digital rights management content
US9215076B1 (en) 2012-03-27 2015-12-15 Amazon Technologies, Inc. Key generation for hierarchical data access
US8892865B1 (en) 2012-03-27 2014-11-18 Amazon Technologies, Inc. Multiple authority key derivation
GB2500720A (en) * 2012-03-30 2013-10-02 Nec Corp Providing security information to establish secure communications over a device-to-device (D2D) communication link
US10148438B2 (en) * 2012-04-03 2018-12-04 Rally Health, Inc. Methods and apparatus for protecting sensitive data in distributed applications
CN102957704B (zh) * 2012-11-09 2016-02-24 北京神州绿盟信息安全科技股份有限公司 一种确定mitm攻击的方法、装置及***
TWI524718B (zh) * 2012-12-06 2016-03-01 財團法人資訊工業策進會 進行委任金鑰管理之主要管理裝置、代理管理裝置、電子裝置及其金鑰管理方法
US9305172B2 (en) 2013-03-15 2016-04-05 Mcafee, Inc. Multi-ring encryption approach to securing a payload using hardware modules
CN103401872B (zh) * 2013-08-05 2016-12-28 北京工业大学 基于rdp改进协议的防止和检测中间人攻击的方法
FR3019416A1 (fr) * 2014-03-28 2015-10-02 Orange Procede de traitement de donnees
US9870462B2 (en) * 2014-09-22 2018-01-16 Intel Corporation Prevention of cable-swap security attack on storage devices
DE102015121861A1 (de) 2015-12-15 2017-06-22 Endress + Hauser Flowtec Ag Zugangsschlüssel für ein Feldgerät
KR101834504B1 (ko) * 2016-01-15 2018-03-06 단국대학교 산학협력단 암복호화 장치 및 방법
GB2546494B (en) * 2016-01-19 2020-02-26 British Telecomm Data relay authentication
KR101834522B1 (ko) 2016-04-22 2018-03-06 단국대학교 산학협력단 데이터 확인 장치 및 이를 이용하여 데이터를 확인하는 방법
KR101837150B1 (ko) 2016-06-30 2018-03-09 (주)넷비젼텔레콤 프록시 서비스 제공을 위한 프록시 인증시스템 및 인증방법
US11611547B2 (en) 2016-11-08 2023-03-21 Dish Network L.L.C. User to user content authentication
EP3644142A1 (en) * 2018-10-23 2020-04-29 Siemens Aktiengesellschaft Constrained operation of a field device
US11695722B2 (en) 2019-07-30 2023-07-04 Sling Media L.L.C. Devices, systems and processes for providing geo-located and content-to-comment synchronized user circles
US11838450B2 (en) 2020-02-26 2023-12-05 Dish Network L.L.C. Devices, systems and processes for facilitating watch parties
US11509463B2 (en) 2020-05-31 2022-11-22 Daniel Chien Timestamp-based shared key generation
US11438145B2 (en) 2020-05-31 2022-09-06 Daniel Chien Shared key generation based on dual clocks
US11606597B2 (en) 2020-09-03 2023-03-14 Dish Network Technologies India Private Limited Devices, systems, and processes for facilitating live and recorded content watch parties
US11758245B2 (en) 2021-07-15 2023-09-12 Dish Network L.L.C. Interactive media events
US11954207B2 (en) * 2021-09-17 2024-04-09 Dell Products L.P. Proxy authentication for resource-constrained device
US11849171B2 (en) 2021-12-07 2023-12-19 Dish Network L.L.C. Deepfake content watch parties
US11974005B2 (en) 2021-12-07 2024-04-30 Dish Network L.L.C. Cell phone content watch parties
US11973999B2 (en) 2022-08-19 2024-04-30 Dish Network L.L.C. User chosen watch parties

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6157721A (en) * 1996-08-12 2000-12-05 Intertrust Technologies Corp. Systems and methods using cryptography to protect secure computing environments
US6052784A (en) * 1997-10-14 2000-04-18 Intel Corporation Network discovery system and method
JP2001134534A (ja) 1999-11-08 2001-05-18 Ntt Communications Kk 認証代行方法、認証代行サービスシステム、認証代行サーバ装置及びクライアント装置
US20020025046A1 (en) * 2000-05-12 2002-02-28 Hung-Yu Lin Controlled proxy secure end to end communication
TWI224455B (en) 2001-01-19 2004-11-21 Mitake Data Co Ltd End-to-end encryption procedure and module of M-commerce WAP data transport layer
US7779267B2 (en) * 2001-09-04 2010-08-17 Hewlett-Packard Development Company, L.P. Method and apparatus for using a secret in a distributed computing system
GB2382501B (en) 2001-11-22 2005-11-23 Vodafone Plc Wireless telecommunication arrangements and methods
JP2003179592A (ja) 2001-12-12 2003-06-27 Sony Corp ネットワークシステム、情報処理装置および方法、記録媒体、並びにプログラム
JP4186466B2 (ja) 2002-01-16 2008-11-26 ソニー株式会社 コンテンツ配信システム、コンテンツ配信方法、および情報処理装置、並びにコンピュータ・プログラム
JP2003304252A (ja) 2002-04-11 2003-10-24 Canon Inc 通信システム、認証装置、通信接続装置、ステーション認証方法、プログラム、及び記憶媒体
JP3864249B2 (ja) 2002-06-04 2006-12-27 インターナショナル・ビジネス・マシーンズ・コーポレーション 暗号通信システム、その端末装置及びサーバ
GB2392590B (en) 2002-08-30 2005-02-23 Toshiba Res Europ Ltd Methods and apparatus for secure data communication links
JP2004142848A (ja) 2002-10-22 2004-05-20 Nidec Copal Corp 付着物除去装置
WO2004040397A2 (en) 2002-10-31 2004-05-13 Telefonaktiebolaget Lm Ericsson (Publ.) Secure implementation and utilization of device-specific security data
KR100581590B1 (ko) * 2003-06-27 2006-05-22 주식회사 케이티 이중 요소 인증된 키 교환 방법 및 이를 이용한 인증방법과 그 방법을 포함하는 프로그램이 저장된 기록매체
AU2003279498A1 (en) * 2003-11-02 2005-05-19 Yossy Sela Mobile telephone gateway apparatus, communication system, and gateway operating system
US7734042B2 (en) * 2003-12-22 2010-06-08 Aol Inc. System and method for using a streaming protocol
US7457955B2 (en) * 2004-01-14 2008-11-25 Brandmail Solutions, Inc. Method and apparatus for trusted branded email
JP4006403B2 (ja) 2004-01-21 2007-11-14 キヤノン株式会社 ディジタル署名発行装置
JP2006246081A (ja) 2005-03-03 2006-09-14 Sharp Corp 暗号処理装置、コンテンツ再生システム、icカード、暗号処理方法、暗号処理プログラムおよび記録媒体

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9198084B2 (en) 2006-05-26 2015-11-24 Qualcomm Incorporated Wireless architecture for a traditional wire-based protocol
KR101314404B1 (ko) * 2008-12-11 2013-10-04 퀄컴 인코포레이티드 다중의 무선 디바이스들 사이의 동적 자원 공유
US9264248B2 (en) 2009-07-02 2016-02-16 Qualcomm Incorporated System and method for avoiding and resolving conflicts in a wireless mobile display digital interface multicast environment
US9582238B2 (en) 2009-12-14 2017-02-28 Qualcomm Incorporated Decomposed multi-stream (DMS) techniques for video display systems
US10911498B2 (en) 2011-01-21 2021-02-02 Qualcomm Incorporated User input back channel for wireless displays
US9787725B2 (en) 2011-01-21 2017-10-10 Qualcomm Incorporated User input back channel for wireless displays
US9065876B2 (en) 2011-01-21 2015-06-23 Qualcomm Incorporated User input back channel from a wireless sink device to a wireless source device for multi-touch gesture wireless displays
US9413803B2 (en) 2011-01-21 2016-08-09 Qualcomm Incorporated User input back channel for wireless displays
US9582239B2 (en) 2011-01-21 2017-02-28 Qualcomm Incorporated User input back channel for wireless displays
US9503771B2 (en) 2011-02-04 2016-11-22 Qualcomm Incorporated Low latency wireless display for graphics
US9723359B2 (en) 2011-02-04 2017-08-01 Qualcomm Incorporated Low latency wireless display for graphics
US10108386B2 (en) 2011-02-04 2018-10-23 Qualcomm Incorporated Content provisioning for wireless back channel
US8674957B2 (en) 2011-02-04 2014-03-18 Qualcomm Incorporated User input device for wireless back channel
KR101256114B1 (ko) * 2011-11-07 2013-04-23 고려대학교 산학협력단 다수의 mac검증서버에 의한 메시지인증코드 검증 방법 및 시스템
US9525998B2 (en) 2012-01-06 2016-12-20 Qualcomm Incorporated Wireless display with multiscreen service
KR101478526B1 (ko) * 2013-06-24 2015-01-02 바른소프트기술 주식회사 인증 정보를 이용한 비밀 키 관리 시스템 및 이를 이용한 비밀 키 제공 방법
WO2020116915A1 (ko) * 2018-12-05 2020-06-11 엘지전자 주식회사 무선 통신 시스템 엑세스 허가를 위한 단말의 대행 인증 방법 및 장치

Also Published As

Publication number Publication date
US20080037785A1 (en) 2008-02-14
WO2008054375A2 (en) 2008-05-08
JP2009510978A (ja) 2009-03-12
KR101032016B1 (ko) 2011-05-02
JP4814339B2 (ja) 2011-11-16
CN101385274A (zh) 2009-03-11
US8788802B2 (en) 2014-07-22
WO2008054375A3 (en) 2008-11-13
EP2016702A2 (en) 2009-01-21

Similar Documents

Publication Publication Date Title
KR101032016B1 (ko) 제약된 암호 키
US10951423B2 (en) System and method for distribution of identity based key material and certificate
US7584505B2 (en) Inspected secure communication protocol
EP1394982B1 (en) Methods and apparatus for secure data communication links
US7979707B2 (en) Secure seed generation protocol
US7424115B2 (en) Generating asymmetric keys in a telecommunications system
US20070083766A1 (en) Data transmission links
US20030210789A1 (en) Data transmission links
KR101549034B1 (ko) Can에서 데이터의 기밀성과 무결성을 보장하는 방법
EP3476078B1 (en) Systems and methods for authenticating communications using a single message exchange and symmetric key
JP2005515701A6 (ja) データ伝送リンク
CN107294937A (zh) 基于网络通信的数据传输方法、客户端及服务器
KR20150129824A (ko) 키 복원 공격들을 좌절시키기 위한 대책으로서 송신기-수신기 페어링을 위한 마스터 키 암호화 기능들
CN111052672A (zh) 无证书或预共享对称密钥的安全密钥传输协议
KR20050084877A (ko) 장치 특정 보안 데이터의 안전한 실시 및 이용
CN101170413A (zh) 一种数字证书及其私钥的获得、分发方法及设备
CN108011856B (zh) 一种传输数据的方法和装置
JP2006197065A (ja) 端末装置および認証装置
KR20190040443A (ko) 스마트미터의 보안 세션 생성 장치 및 방법
CN114760046A (zh) 一种身份鉴别方法和装置
CN110417722B (zh) 一种业务数据通信方法、通信设备及存储介质
KR101575040B1 (ko) 이종의 계장제어 시스템간의 통신 인터페이스를 지원하는 2.5계층 보안 시스템
CN108737093B (zh) 一种加密的方法、装置及***
US20090147956A1 (en) Sharing a Secret Element
CN114760038A (zh) 一种身份鉴别方法和装置

Legal Events

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

Payment date: 20160330

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170330

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20180329

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee