KR100944065B1 - 다중 크리덴셜 인증 프로토콜을 제공하는 시스템 및 방법 - Google Patents

다중 크리덴셜 인증 프로토콜을 제공하는 시스템 및 방법 Download PDF

Info

Publication number
KR100944065B1
KR100944065B1 KR1020077012003A KR20077012003A KR100944065B1 KR 100944065 B1 KR100944065 B1 KR 100944065B1 KR 1020077012003 A KR1020077012003 A KR 1020077012003A KR 20077012003 A KR20077012003 A KR 20077012003A KR 100944065 B1 KR100944065 B1 KR 100944065B1
Authority
KR
South Korea
Prior art keywords
computing device
client computing
credentials
server
network
Prior art date
Application number
KR1020077012003A
Other languages
English (en)
Other versions
KR20070073943A (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 KR20070073943A publication Critical patent/KR20070073943A/ko
Application granted granted Critical
Publication of KR100944065B1 publication Critical patent/KR100944065B1/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/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
    • 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/44Program or device authentication
    • 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/73Protecting 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 by creating or determining hardware identification, e.g. serial numbers
    • 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/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/104Grouping of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/105Multiple levels of security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/303Terminal profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2113Multi-level security, e.g. mandatory access control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2129Authenticate client device independently of the user
    • 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/56Financial cryptography, e.g. electronic payment or e-cash
    • 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/80Wireless
    • 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/081Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying self-generating credentials, e.g. instead of receiving credentials from an authority or from another peer, the credentials are generated at the entity itself
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Power Engineering (AREA)
  • Telephonic Communication Services (AREA)
  • Computer And Data Communications (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

클라이언트 컴퓨팅 장치와 서버 간에 보안 통신을 제공하기 위한 시스템 및 방법이 개시된다. 네트워크 장치는 네트워크를 통해 클라이언트 컴퓨팅 장치의 특성을 전송한다. 네트워크 장치는 네트워크를 통해 클라이언트 컴퓨팅 장치의 특성을 수신한다. 다수의 크리덴셜이 생성되며, 상기 다수의 크리덴셜 중 적어도 하나는 수신된 클라이언트 컴퓨팅 장치의 특성 및 고유 클라이언트 키에 모두 기초하고, 다수의 크리덴셜 중 적어도 하나는 수신된 클라이언트 컴퓨팅 장치의 특성 및 공통 키에 모두 기초한다. 네트워크 장치는 네트워크를 통해 다수의 크리덴셜을 전송한다. 네트워크 장치는 네트워크를 통해 다수의 크리덴셜을 수신한다.

Description

다중 크리덴셜 인증 프로토콜을 제공하는 시스템 및 방법{SYSTEM AND METHOD FOR PROVIDING A MULTI-CREDENTIAL AUTHENTICATION PROTOCOL}
본 발명은 일반적으로 원격 컴퓨팅 장치들과 서버들 간의 보안 통신에 관한 것이다. 보다 구체적으로, 본 발명은 원격 컴퓨팅 장치들과 서버들 간에 강력한 인증을 제공하는 데 사용되는 안전한 클라이언트 크리덴셜(credential)의 생성, 유지, 취소(revocation) 및 갱신에 관한 것이다.
기술의 발달은 개인 컴퓨팅 장치를 보다 작고 보다 강력하게 하였다. 예를 들어, 현재 휴대형 무선 전화, 개인 휴대 단말(PDA) 및 페이징 장치와 같이 각각 작고 경량이며 사용자들이 쉽게 휴대할 수 있는 무선 컴퓨팅 장치를 포함하여 다양한 휴대 개인 컴퓨팅 장치가 존재한다. 보다 구체적으로, 휴대형 무선 전화는 예를 들어 무선 네트워크를 통해 음성 및 데이터 패킷을 전달하는 셀룰러폰을 또 포함한다. 또한, 이러한 많은 셀룰러폰은 컴퓨팅 용량이 비교적 크게 증가하여 제조되고 있으며, 그 자체로 소형 개인 컴퓨터 및 핸드헬드 PDA에 상당해지고 있다. 통상적으로, 이와 같이 보다 작고 보다 강력한 개인 컴퓨팅 장치들은 엄격한 자원 제약이 있다. 예를 들어, 스크린 크기, 이용 가능한 메모리 및 파일 시스템 공간의 양, 입력 및 출력 용량의 양 및 처리 용량이 각각 작은 크기의 장치에 의해 제한될 수 있다. 이러한 엄격한 자원 제약 때문에 예를 들어 이러한 개인 컴퓨팅 장치(클라이언트 컴퓨팅 장치)에 상주하는 소프트웨어 애플리케이션 및 다른 정보의 한정된 크기 및 양을 유지하는 것이 흔히 일반적으로 바람직하다.
이러한 개인 컴퓨팅 장치들 중 일부는 때때로 런타임 환경 및 소프트웨어 플랫폼으로 지칭되는 애플리케이션 프로그래밍 인터페이스("API")를 이용하며, 이는 로컬 컴퓨터 플랫폼에 설치되고, 예를 들어 장치 특정 자원에 대한 일반화된 호출을 제공함으로써 이러한 장치의 동작을 간소화하는 데 사용된다. 또한, 이러한 어떤 API는 이러한 장치에서 충분히 실행 가능한 소프트웨어 애플리케이션을 생성하는 능력을 소프트웨어 개발자들에게 제공하는 것으로도 알려져 있다. 추가로, 이러한 API는 컴퓨팅 장치의 컴퓨팅 기능이 소프트웨어 개발자가 특정 컴퓨팅 장치 시스템 소스 코드를 가질 필요 없이 소프트웨어 애플리케이션에 이용가능하게 되도록 컴퓨팅 장치 시스템 소프트웨어와 소프트웨어 애플리케이션 간에 동작하게 위치되는 것으로 알려져 있다. 또 어떤 API는 보안 암호키 정보를 이용하여 개인 장치(즉, 클라이언트)들과 원격 장치(즉, 서버)들 간의 보안 통신을 위한 메커니즘을 제공하는 것으로 알려져 있다.
일부는 하기에 더욱 상세히 논의되는 이러한 API들의 예는 캘리포니아 샌디에고의 Qaulcomm사에 의해 개발된 Wireless
Figure 112009001820497-pct00001
(BREW
Figure 112009001820497-pct00002
)에 대한 이진 런타임 환경의 현재 공개적으로 이용 가능한 버전을 포함한다. BREW
Figure 112009001820497-pct00003
는 때때로 컴퓨팅 장치(통상적으로는 무선 셀룰러폰)의 운영 시스템 위에 있는 얇은 박판(veneer)으로서 기술되며, 이는 다른 특징들 중에서도 개인 컴퓨팅 장치들에서 특별히 발견되는 하드웨어 특징들에 대한 인터페이스를 제공한다. BREW
Figure 112009001820497-pct00004
는 또한 이러한 장치 자원에 대한 요구 및 BREW
Figure 112009001820497-pct00005
API를 포함하는 장치에 소비자가 치르는 가격에 관하여 비교적 저가로 이러한 개인 컴퓨팅 장치에 제공될 수 있는 적어도 한 가지 이점을 특징으로 한다. BREW
Figure 112009001820497-pct00006
와 관련된 것으로 알려진 다른 특징들은 무선 서비스 운영자, 소프트웨어 개발자 및 컴퓨팅 장치 소비자에게 다양한 이익을 제공하는 종단간 소프트웨어 분산 플랫폼을 포함한다. 이와 같이 현재 이용 가능한 적어도 하나의 종단간 소프트웨어 분산 플랫폼은 클라이언트-서버 구조를 통해 분산되는 로직을 포함하며, 여기서 서버는 예를 들어 과금, 보안 및 애플리케이션 분산 기능을 수행하고, 클라이언트는 예를 들어 애플리케이션 실행, 보안 및 사용자 인터페이스 기능을 수행한다.
클라이언트 컴퓨팅 장치들과 서버 간의 강력한 인증 제공과 관련하여, 현재 어떤 시스템들은 해당 클라이언트 컴퓨팅 장치 및 서버에 해당 암호화(부호화) 알고리즘 또는 프로그램을 포함함으로써 이러한 보안 통신을 제공한다. 이는 서버가 클라이언트 장치를 인증할 수 있도록 이루어진다. 여기서, 이러한 시스템들은 통상적으로 서버에 비슷한 암호화 알고리즘을 제공하여, 명백한 해당 클라이언트로부터 수신된 크리덴셜이 신뢰성 있는 인증된 소스로부터인지 여부를 판독한다. 이러한 시스템들은 예를 들어 모두 각 클라이언트 컴퓨팅 장치에 이용 가능한 정보를 기초로 한 크리덴셜 타입 정보의 생성을 특징으로 한다. 이러한 시스템들은 해당 클라이언트 컴퓨팅 장치들 중 임의의 장치에 존재할 때 암호화 알고리즘의 사본들 중 임의의 것에 대한 허가되지 않은 액세스 때문에 보안 통신의 손실 가능성과 같은 어떤 취약점을 포함하는 것으로 알려져 있다. 이러한 취약점은 예를 들어 일반적으로 이러한 암호화 알고리즘이 해당 클라이언트 컴퓨팅 장치 및/또는 서버에 흔히 유지되는 이용 가능한 정보를 기초로 크리덴셜 정보를 생성하기 때문에 존재한다. 따라서 암호화 알고리즘 및 이러한 알고리즘에 의해 사용되는 데이터가 자유롭게 이용 가능할 때, 이러한 임의의 장치에서 어떻게 크리덴셜이 생성되는지를 판독하는 데 성공하는 임의의 엔티티는 이제 거의 이러한 엔티티가 선택적으로 보안 통신을 위반하거나 그렇지 않으면 이러한 시스템들에 존재하는 인증되고 유효한 클라이언트 컴퓨팅 장치로 가장하도록 허용하는 정보를 소유하게 된다.
클라이언트 컴퓨팅 장치와 서버 간에 보안 통신을 제공하는 다른 시스템들은 적어도 일부는 제조시 클라이언트 컴퓨팅 장치에 보안 크리덴셜을 설치함으로써 그와 같이 하는 것으로 알려져 있다. 일례에서, 서비스 제공자는 컴퓨팅 장치 제조자들이 제조 프로세스 동안 개별 클라이언트 컴퓨팅 장치에 개별 보안 크리덴셜을 설치할 수 있도록 컴퓨팅 장치 제조자들에게 보안 크리덴셜을 제공한다. 이러한 시스템은 일반적으로 상술한 시스템들, 예를 들어 각각의 핸드셋에 암호화 알고리즘을 유지하는 시스템의 일부 취약점을 겪진 않지만, 이러한 크리덴셜 설치 시스템은 자체적인 고유의 문제 및 취약점을 갖는다. 예를 들어, 이러한 크리덴셜 설치 시스템은 흔히 제조 프로세스를 구성하는 일반적인 것일지도 모르는 일련의 정적인 단계에 동적인 단계를 추가해야 하는 일반적인 필요성 때문에 구현이 어렵다. 보다 구체적으로는, 각각의 그리고 모든 컴퓨팅 장치에서 수행되는 동등한 동작을 나타내는 통상의 정적 단계와 달리, 새로운 동적 단계는 반대로 각각의 개별 클라이언트 컴퓨팅 장치에서 다른 동작이 수행되는(고유(unique) 크리덴셜의 부가) 새로운 단계를 나타낸다. 이는 예를 들어 각각의 그리고 모든 개별 클라이언트 컴퓨팅 장치에 동일한 방식으로 동일한 디스플레이를 설치하는 통산의 정적 단계와 매우 다르다. 또한, 이러한 시스템의 적어도 하나의 취약점은 허가되지 않은 엔티티들이 다른 허가된 장치의 신원을 속이게 할 수도 있는 보안 크리덴셜 목록에 대한 허가되지 않은 액세스의 잠재적 발생을 포함한다.
다른 시스템들에서, 보안 통신은 허가된 에이전트에 의한 전화의 설치 또는 프로그래밍에 의해 부분적으로 제공된다. 통상적으로, 이러한 프로그래밍은 클라이언트 컴퓨팅 장치들이 제조되어 발송된 후 발생한다. 일례로, 장치의 판매 시간 및 장소에서 클라이언트 컴퓨팅 장치에 보안 크리덴셜이 설치된다. 여기서 적어도 한 예에서는, 허가된 에이전트가 고유 보안 코드 목록으로부터 코드를 클라이언트 컴퓨팅 장치에 입력한다. 다른 경우에는, 자동 판독기가 사용되어 각 클라이언트 컴퓨팅 장치에 개별 보안 코드를 전달한다. 이 프로세스는 통상적인 정적 단계 프로세스에 동적 제조 단계를 부가하는 것과 같은 제조시 이러한 클라이언트 컴퓨팅 장치의 프로그래밍과 관련된 문제점들 중 일부를 피하지만, 이 프로세스는 여전히 자체적인 문제점 및 취약점을 포함하고 있다. 예를 들어, 한 가지 취약점은 허가되지 않은 엔티티들이 다른 허가된 장치의 신원을 속이게 하는 보안 크리덴셜 목록에 대한 잠재적인 무허가 액세스의 문제이다.
또한, 해당 클라이언트 장치에 대한 크리덴셜 이용의 하드-와이어드(hard-wired) 또는 하드-코딩된(hard-coded) 형태가 현재 이용 가능한 보안 통신 시스템 을 대표한다. 이러한 시스템의 이 하드-와이어드/하드-코딩된 형태는 클라이언트 장치들이 예를 들어, 어떤 하나 이상의 크리덴셜이 대체, 추가 및/또는 그렇지 않으면 업데이트될 필요가 있는 경우에 보안 중단과 같은 상황이 발생할 때마다 서비스 기술자에 의해 물리적으로 서비스될 것을 필요로 한다. 이와 같이 서비스 기술자에 의해 물리적으로 서비스될 필요성은 상당수의 클라이언트 장치가 손상될 때 특히 극도로 비용이 많이 든다.
이에 따라, 보안 크리덴셜의 이용과 관련된 것과 같이 일반적인 보안 통신 기술 본래의 많은 보안 통신 이점을 포함하는 동시에, 클라이언트 컴퓨팅 장치에 암호화 알고리즘을 저장하고, 제조시 보안 크리덴셜의 설치 또는 판매 지점에서 보안 크리덴셜의 프로그래밍 및 보안 중단의 경우 이들 크리덴셜을 업데이트하거나 대체하는 능력을 필요로 하는 것과 관련된 문제점들과 같이 이러한 기존 시스템들의 덜 유리한 다른 형태를 피하는 클라이언트-서버 시스템을 제공하는 것이 유리하다.
본원에 개시된 실시예들은 예를 들어 클라이언트 컴퓨팅 장치들과 서버들 간에 보안 통신들을 제공하기 위해 방법들, 소프트웨어 및 장치가 사용되는 하나 이상의 실시예들을 포함하며, 위에서 언급된 필요성들을 다룬다. 적어도 하나의 실시예는 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 수신하는 것을 포함한다. 이러한 실시예는 또한 다수의 크리덴셜(credential)들을 생성하는 것을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유(unique) 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통(generic) 키 모두에 기초한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 다수의 크리덴셜들을 전송하는 것을 포함한다.
적어도 하나의 실시예는 네트워크를 통해 클라이언트 컴퓨팅 장치의 특성들을 전송하는 것을 포함한다. 이러한 실시예는 또한 상기 네트워크를 통해, 다수의 크리덴셜들을 수신하는 것을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초한다.
적어도 하나의 실시예는 클라이언트 컴퓨팅 장치로부터 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 전송하는 것을 포함한다. 이러한 실시예는 또한 서버에서 상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 수신하는 것을 포함한다. 이러한 실시예는 또한 다수의 크리덴셜들을 생성하는 것을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 또한 서버로부터 상기 네트워크를 통해 상기 다수의 크리덴셜들을 전송하는 것을 포함한다. 이러한 실시예는 또한 상기 클라이언트 컴퓨팅 장치에서 상기 네트워크를 통해 상기 다수의 크리덴셜들을 수신하는 것을 포함한다.
적어도 하나의 실시예는 네트워크를 통해 클라이언트 컴퓨팅 장치의 특성들을 수신하도록 구성된 로직을 포함한다. 이러한 실시예는 또한 다수의 크리덴셜들을 생성하도록 구성된 로직을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 다수의 크리덴셜들을 전송하도록 구성된 로직을 포함한다.
적어도 하나의 실시예는 네트워크를 통해 클라이언트 컴퓨팅 장치의 특성들을 전송하도록 구성된 로직을 포함한다. 이러한 실시예는 또한 상기 네트워크를 통해, 다수의 크리덴셜들을 수신하도록 구성된 로직을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초한다.
적어도 하나의 실시예는 네트워크를 통해 클라이언트 컴퓨팅 장치의 특성들을 전송하고, 상기 네트워크를 통해 다수의 크리덴셜들을 수신하도록 구성된 로직을 포함하는 클라이언트 컴퓨팅 장치를 포함한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 수신하고, 다수의 크리덴셜들을 생성하며 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 -, 상기 네트워크를 통해 상기 다수의 크리덴셜들을 전송하도록 구성된 로직을 포함하는 서버를 포함한다.
적어도 하나의 실시예는 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 수신하도록 동작가능한 코드를 포함한다. 이러한 실시예는 또한 다수의 크리덴셜들을 생성하도록 동작가능한 코드를 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 다수의 크리덴셜들을 전송하도록 동작가능한 코드를 포함한다.
적어도 하나의 실시예는 네트워크를 통해 클라이언트 컴퓨팅 장치의 특성들을 전송하도록 동작가능한 코드를 포함한다. 이러한 실시예는 또한 상기 네트워크를 통해, 다수의 크리덴셜들을 수신하도록 동작가능한 코드를 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초한다.
적어도 하나의 실시예는 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 수신하는 수단을 포함한다. 이러한 실시예는 또한 다수의 크리덴셜들을 생성하는 수단을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 다수의 크리덴셜들을 전송하는 수단을 포함한다.
적어도 하나의 실시예는 네트워크를 통해 클라이언트 컴퓨팅 장치의 특성들을 전송하는 수단을 포함한다. 적어도 하나의 실시예는 상기 네트워크를 통해, 다수의 크리덴셜들을 수신하는 수단을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초한다.
적어도 하나의 실시예는 네트워크를 통해, 다수의 크리덴셜들을 포함하는 신호를 수신하는 것을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초한다. 적어도 하나의 실시예는 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 신호의 진정성(authenticity)을 결정하는 것을 포함한다.
적어도 하나의 실시예는 네트워크를 통해, 다수의 크리덴셜들을 포함하는 신호를 전송하는 것을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초한다.
적어도 하나의 실시예는 클라이언트 컴퓨팅 장치로부터 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 전송하는 것을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 또한 서버에서 상기 네트워크를 통해 상기 신호를 수신하는 것을 포함한다. 이러한 실시예는 또한 상기 서버에서 상기 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 신호의 진정성을 결정하는 것을 포함한다.
적어도 하나의 실시예는 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 수신하도록 구성된 로직을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 상기 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 신호의 진정성을 결정하도록 구성된 로직을 포함한다.
적어도 하나의 실시예는 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 전송하도록 구성된 로직을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초한다.
적어도 하나의 실시예는 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 전송하도록 구성된 로직을 포함하는 클라이언트 컴퓨팅 장치를 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 신호를 수신하고, 상기 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 신호의 진정성을 결정하도록 구성된 로직을 포함하는 서버를 포함한다.
적어도 하나의 실시예는 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 수신하도록 동작가능한 코드를 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 또한 상기 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 신호의 진정성을 결정하도록 동작가능한 코드를 포함한다.
적어도 하나의 실시예는 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 전송하도록 동작가능한 코드를 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초한다.
적어도 하나의 실시예는 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 수신하는 수단을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초한다. 적어도 이러한 하나의 실시예는 또한 상기 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 신호의 진정성을 결정하는 수단을 포함한다.
적어도 하나의 실시예는 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 전송하는 수단을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초한다.
적어도 하나의 실시예는 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 수신하는 것을 포함한다. 이러한 실시예는 또한 다수의 크리덴셜들을 생성하는 것을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 다수의 크리덴셜들을 포함하는 신호를 전송하는 것을 포함한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 다수의 크리덴셜들을 포함하는 신호를 수신하는 것을 포함한다. 이러한 실시예는 또한 수신된 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 수신된 신호의 진정성을 결정하는 것을 포함한다.
적어도 하나의 실시예는 네트워크를 통해 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 전송하는 것을 포함한다. 이러한 실시예는 또한 상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 수신하는 것을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 수신된 다수의 크리덴셜들을 포함하는 신호를 전송하는 것을 포함한다.
적어도 하나의 실시예는 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 수신하도록 구성된 로직을 포함한다. 이러한 실시예는 또한 다수의 크리덴셜들을 생성하도록 구성된 로직을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 다수의 크리덴셜들을 포함하는 신호를 전송하도록 구성된 로직을 포함한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 다수의 크리덴셜들을 포함하는 신호를 수신하도록 구성된 로직을 포함한다. 이러한 실시예는 또한 상기 수신된 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 다수의 크리덴셜들을 포함하는 상기 수신된 신호의 진정성을 결정하도록 구성된 로직을 포함한다.
적어도 하나의 실시예는 네트워크를 통해 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 전송하도록 구성된 로직을 포함한다. 이러한 실시예는 또한 상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 수신하도록 구성된 로직을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 수신된 다수의 크리덴셜들을 포함하는 신호를 전송하도록 구성된 로직을 포함한다.
적어도 하나의 실시예는 네트워크를 통해 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 수신하도록 동작가능한 코드를 포함한다. 이러한 실시예는 또한 다수의 크리덴셜들을 생성하도록 동작가능한 코드를 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 다수의 크리덴셜들을 포함하는 신호를 전송하도록 동작가능한 코드를 포함한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 전송된 다수의 크리덴셜들을 포함하는 신호를 수신하도록 동작가능한 코드를 포함한다. 이러한 실시예는 또한 상기 수신된 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 수신된 다수의 크리덴셜들을 포함하는 상기 수신된 신호의 진정성을 결정하도록 동작가능한 코드를 포함한다.
적어도 하나의 실시예는 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 전송하도록 동작가능한 코드를 포함한다. 이러한 실시예는 또한 상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 수신하도록 동작가능한 코드를 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 수신된 다수의 크리덴셜들을 포함하는 신호를 전송하도록 동작가능한 코드를 포함한다.
적어도 하나의 실시예는 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 수신하는 수단을 포함한다. 이러한 실시예는 다수의 크리덴셜들을 포함하는 신호를 생성하는 수단을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 다수의 크리덴셜들을 포함하는 신호를 전송하는 수단을 포함한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 전송된 다수의 크리덴셜들을 포함하는 신호를 수신하는 수단을 포함한다. 이러한 실시예는 또한 상기 수신된 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 수신된 다수의 크리덴셜들을 포함하는 상기 수신된 신호의 진정성을 결정하는 수단을 포함한다.
적어도 하나의 실시예는 네트워크를 통해 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 전송하는 수단을 포함한다. 이러한 실시예는 또한 상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 수신하는 수단을 포함하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초한다. 이러한 실시예는 또한 상기 네트워크를 통해 상기 수신된 다수의 크리덴셜들을 포함하는 신호를 전송하는 수단을 포함한다.
적어도 하나의 실시예의 적어도 하나의 이점은 크리덴셜을 생성하는데 사용되는 데이터 및 크리덴셜을 해독하는데 사용되는 암호화 알고리즘에 대한 서로 다른 장치들 간의 분리를 포함한다. 적어도 하나의 실시예의 적어도 하나의 이점은 제조시 보안 크리덴셜들의 설치를 필요로 하지 않는 보안 통신 방법의 도입을 포함한다. 적어도 하나의 실시예의 적어도 하나의 이점은 판매 위치 포인트에서 보안 크리덴셜들의 프로그래밍을 필요로 하지 않는 보안 통신 방법의 도입을 포함한다. 적어도 하나의 실시예의 적어도 하나의 이점은 클라이언트 컴퓨팅 장치에 보안 크리덴셜을 도입하기 위한 공공연한 동작을 사람이 할 필요가 없는 보안 통신의 도입을 포함한다.
적어도 하나의 실시예의 적어도 하나의 이점은 통신들이 어떻게 인증되는지에 관한 프로시저를 동적으로 변경하는 클라이언트 컴퓨팅 장치에 원격인 장치의 능력을 포함한다. 적어도 하나의 실시예의 적어도 하나의 이점은 클라이언트 컴퓨팅 장치에서 보안 크리덴셜들에 관한 재설치 프로시저를 시작하는 원격 서버의 능력을 포함한다. 적어도 하나의 실시예의 적어도 하나의 이점은 동적 보안 통신 프로세스에서 다수의 크리덴셜들의 사용에 의해 제공되는 유연성을 포함한다. 적어도 하나의 실시예의 적어도 하나의 이점은 시스템 동작들 동안 클라이언트 컴퓨팅 장치에서 크리덴셜을 추가, 대체 및/또는 삭제하는 클라이언트 컴퓨팅 장치에 대한 원격 장치의 능력을 포함한다.
본 발명의 다른 형태, 이점 및 특징은 다음 도면의 간단한 설명, 실시예 및 청구범위를 포함하는 전체 출원의 검토 후 명백해질 것이다.
본원에서 설명하는 실시예들의 상술한 형태들 및 수반되는 이점들은 첨부 도면과 관련하여 다음 상세한 설명을 참조로 보다 쉽게 명백해질 것이다.
도 1은 클라이언트 컴퓨팅 장치와 서버 간의 보안 통신을 위한 시스템의 일 실시예의 하이 레벨도이다.
도 2는 클라이언트 컴퓨팅 장치와 서버 간의 보안 통신을 위한 시스템의 일 실시예의 세미-하이 레벨도이다.
도 3은 클라이언트 컴퓨팅 장치와 서버 간의 보안 통신을 위한 시스템에 사용되는 클라이언트 컴퓨팅 장치의 일 실시예의 블록도이다.
도 4는 클라이언트 컴퓨팅 장치와 서버 간의 보안 통신을 위한 시스템에 사용되는 서버의 일 실시예의 블록도이다.
도 5는 클라이언트 컴퓨팅 장치와 서버 간의 보안 통신을 위한 시스템의 일 실시예를 설명하는 흐름도이다.
도 6은 클라이언트 컴퓨팅 장치와 서버 간의 보안 통신을 위한 시스템의 일 실시예를 설명하는 흐름도이다.
도 7은 클라이언트 컴퓨팅 장치와 서버 간의 보안 통신을 위한 시스템의 일 실시예를 설명하는 흐름도이다.
도 8은 신호를 이용하여 클라이언트 컴퓨팅 장치와 서버 간의 보안 통신을 시작하는 프로시저의 일 실시예를 설명하는 도면이다.
도 9는 신호를 이용하여 원격 컴퓨팅 장치와 서버 간의 보안 통신을 재시작하는 프로시저의 일 실시예를 설명하는 도면이다.
도 10은 클라이언트 컴퓨팅 장치와 서버 간의 보안 통신을 제공하는 방법의 일 실시예를 설명한다.
도 11은 클라이언트 컴퓨팅 장치와 서버 간의 보안 통신을 제공하는 방법의 일 실시예를 설명한다.
도 12는 클라이언트 컴퓨팅 장치와 서버 간의 보안 통신을 제공하는 방법의 일 실시예를 설명한다.
여기서 "예시적인"이란 단어는 "예시, 실례 또는 예증이 되는 것"의 의미로 사용된다. 여기서 "예시적인" 것으로 설명하는 어떤 실시예도 다른 실시예들보다 바람직하거나 유리한 것으로 해석되는 것은 아니다. 또한, 예를 들어 컴퓨팅 장치의 엘리먼트에 의해 수행되는 동작들의 시퀀스에 관련하여 많은 실시예가 설명된다. 여기서 설명하는 각종 동작들은 특정 회로(예를 들어, 주문형 집적 회로(ASIC))에 의해 수행될 수도 있고, 하나 이상의 프로세서에 의해 실행되는 프로그램 명령들에 의해 또는 이 둘의 조합에 의해 수행될 수 있다. 또한, 여기서 설명한 실시예들은 실행시 관련 프로세서에 여기서 설명한 기능을 수행하게 하는 해당 컴퓨터 명령 세트를 저장한 임의의 형태의 컴퓨터 판독 가능 저장 매체 내에 완전히 구현되는 것으로 부가적으로 간주될 수 있다. 따라서 본 발명의 각종 형태는 다수의 다른 형태로 구현될 수 있으며, 이들 모두 청구 대상의 범위 내에 있는 것으로 여겨진다. 또한, 여기서 설명하는 실시예들마다, 대응하는 형태의 임의의 실시예는 예를 들어 특정 동작을 수행하도록 "구성된 로직" 또는 설명한 동작을 수행하도록 "작동 가능한 코드"로서 설명될 수 있다.
다음의 상세한 설명은 클라이언트 컴퓨팅 장치들과 서버들 간의 보안 통신을 제공하는 데 사용되는 방법, 시스템, 소프트웨어 및 장치를 설명한다. 적어도 일 실시예에서, 무선 클라이언트 컴퓨팅 장치는 서버에 클라이언트 컴퓨팅 장치의 특성을 제공함으로써 네트워크를 통해 애플리케이션 다운로드 서버에 등록하고, 여기서 서버는 클라이언트 컴퓨팅 장치의 특성에 기초한 적어도 하나의 크리덴셜(credential) 및 서버 정보에 기초한 적어도 하나의 다른 크리덴셜을 제공한다.
하나 이상의 실시예에서, 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신을 제공하는 데 사용되는 시스템은 컴퓨팅 장치에서 실행하는 런타임 환경(API)과 관련하여 동작한다. 이러한 한 런타임 환경(API)은 캘리포니아 샌디에고의 QUALCOMM사에 의해 개발된 Wireless
Figure 112009001820497-pct00007
(BREW
Figure 112009001820497-pct00008
) 소프트웨어 플랫폼에 대한 이진 런타임 환경의 새로운 버전이 되는 것이다. 다음 설명의 적어도 하나의 실시예에서, 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신을 제공하는 데 사용되는 시스템은 BREW
Figure 112009001820497-pct00009
소프트웨어 플랫폼의 새로운 버전과 같은 런타임 환경(API)을 실행하는 컴퓨팅 장치에 구현된다. 그러나 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신을 제공하는 데 사용되는 시스템의 하나 이상의 실시예는 예를 들어 무선 클라이언트 컴퓨팅 장치상에서의 애플리케이션 실행을 제어하도록 동작하는 다른 타입의 런타임 환경(API)에 사용하기에 적합하다.
도 1은 소프트웨어 애플리케이션 및 컴포넌트를 무선 통신 포탈 또는 무선 네트워크(104)에 대한 다른 데이터 액세스를 통해 무선 장치에 선택적으로 전송하는 적어도 하나의 애플리케이션 다운로드 서버(106)와의 무선 네트워크(104)를 통한 통신에서, 셀룰러폰(102)과 같은 무선 장치상에서 소프트웨어 애플리케이션 컴포넌트들의 삭제 및 재로딩을 위한 시스템(100)의 한 예시적인 실시예의 블록도이다. 여기에 나타낸 바와 같이, 무선 장치는 셀룰러폰(102), 개인 휴대 단말(108), 여기서는 양방향 문자 호출기인 호출기(110), 또는 무선 통신 포탈을 갖는 심지어 개별 컴퓨터 플랫폼(112)일 수 있으며, 그렇지 않으면 네트워크 또는 인터넷에 대한 유선 접속(114)을 가질 수도 있다. 따라서 발명의 시스템은 제한 없이 무선 통신 포탈, 무선 모뎀, PCMCIA 카드, 액세스 단말, 개인용 컴퓨터, 액세스 단말, 디 스플레이나 키패드 없는 전화기, 또는 이들의 임의의 조합이나 하위 조합을 포함하는 임의의 형태의 원격 모듈 상에서 수행될 수 있다.
애플리케이션 다운로드 서버(106)는 여기서 무선 네트워크(104)와 통신하는 다른 컴퓨터 엘리먼트를 갖는 네트워크(116) 상에 도시된다. 제 2 서버(120) 및 독립형 서버(122)가 있으며, 각 서버는 무선 네트워크(104)를 통해 무선 장치(102, 108, 110, 112)에 개별 서비스 및 프로세스를 제공할 수 있다. 또한, 바람직하게 무선 장치(102, 108, 110, 112)에 의해 다운로드 가능한 소프트웨어 애플리케이션을 보유하는 적어도 하나의 저장된 애플리케이션 데이터베이스(118)가 있다. 다른 실시예들은 애플리케이션 다운로드 서버(106), 제 2 서버(120) 및 독립형 서버(122) 중 임의의 하나 이상에서 보안 통신을 수행하기 위한 로직을 두고 있는 것으로 여겨진다.
도 2에는, 예시적인 실시예의 엘리먼트들의 상호 관계 및 무선 네트워크(104)의 컴포넌트를 포함하는 시스템(100)을 더욱 충분히 설명하는 블록도가 도시된다. 시스템(100)은 예시일 뿐이며, 무선 클라이언트 컴퓨팅 장치(102, 108, 110, 112)와 같은 원격 모듈이 무선으로 각각 서로 간에 그리고/또는 제한 없이 무선 네트워크 캐리어 및/또는 서버를 포함하는 무선 네트워크(104)에 의해 접속된 컴포넌트들 간에 통신하게 하는 임의의 시스템을 포함할 수 있다. 셀룰러 통신 서비스를 제공하는데 필요한 서버(120)와 같은 임의의 다른 서버들과 함께, 애플리케이션 다운로드 서버(106) 및 저장된 애플리케이션 데이터베이스(118)는 인터넷, 보안 LAN, WAN 또는 다른 네트워크 등의 데이터 링크를 통해 캐리어 네트워크(200)와 통신한다. 도시한 실시예에서, 서버(120)는 캐리어 네트워크(200)를 통해 보안 통신을 제공하도록 구성된 로직을 포함하는 서버 보안 모듈(121)을 포함한다. 이러한 서버 보안 모듈(121)은 보안 통신을 제공하기 위해 무선 장치(102, 108, 110, 112)와 같은 클라이언트 컴퓨팅 장치에 위치하는 클라이언트 보안 모듈과 함께 동작한다.
캐리어 네트워크(200)는 메시징 서비스 제어기("MSC")(202)에 전송되는(데이터 패킷으로서 전송되는) 메시지를 제어한다. 캐리어 네트워크(200)는 네트워크, 인터넷 및/또는 POTS("plain ordinary telephone system")에 의해 MSC(202)와 통신한다. 통상적으로, 캐리어 네트워크(200)와 MSC(202) 간의 네트워크 또는 인터넷 접속은 데이터를 전달하고, POTS는 음성 정보를 전달한다. MSC(202)는 다수의 기지국("BTS")(204)에 접속된다. 캐리어 네트워크와 비슷한 방식으로, MSC(202)는 통상적으로 데이터 전송용 네트워크 및/또는 인터넷 및 음성 정보용 POTS 모두에 의해 BTS(204)에 접속된다. BTS(204)는 궁극적으로 단문 서비스("SMS") 또는 당업계에 공지된 다른 무선 방법에 의해 셀룰러폰(102)과 같은 무선 장치에 메시지를 무선으로 방송한다.
셀룰러폰(102)과 같은 무선 장치(여기서는 무선 클라이언트 컴퓨팅 장치)는 애플리케이션 다운로드 서버(106)로부터 전송된 소프트웨어 애플리케이션을 수신하여 실행할 수 있는 컴퓨터 플랫폼(206)을 갖고 있다. 컴퓨터 플랫폼(206)은 주문형 집적 회로("ASIC"(208)) 또는 다른 프로세서, 마이크로프로세서, 로직 회로, 또는 다른 데이터 처리 장치를 포함한다. ASIC(208)는 무선 장치의 제조시 설치되며 일반적으로 업그레이드 가능하지 않다. ASIC(208) 또는 다른 프로세서는 무선 장치의 메모리(212)에 있는 임의의 상주 프로그램과 인터페이스 접속하는 애플리케이션 프로그래밍 인터페이스("API")(210) 계층을 실행한다. 메모리(212)는 읽기 전용 또는 임의 접속 메모리(RAM 및 ROM), EEPROM, 플래시 카드, 또는 컴퓨터 플랫폼에 공통적인 임의의 메모리로 구성될 수 있다. API(210)는 또한 캐리어 네트워크(200)를 통해 보안 통신을 제공하도록 구성된 로직을 포함하는 클라이언트 보안 모듈(214)을 포함한다. 이러한 클라이언트 보안 모듈(214)은 보안 통신을 제공하기 위해 클라이언트 보안 모듈(121)과 함께 동작한다. 컴퓨터 플랫폼(206)은 또한 메모리(212)에서 능동적으로 사용되지 않는 애플리케이션들을 보유할 수 있는 로컬 데이터베이스(214)를 포함한다. 로컬 데이터베이스(216)는 통상적으로 플래시 메모리 셀이지만, 자기 매체, EEPROM, 광 매체, 테이프, 또는 소프트 또는 하드 디스크와 같이 당업계에 공지된 임의의 2차 저장 장치일 수 있다.
셀룰러폰(102)과 같은 무선 클라이언트 컴퓨팅 장치는 이에 따라 게임, 뉴스, 주식 모니터 등과 같이 하나 이상의 소프트웨어 애플리케이션을 애플리케이션 다운로드 서버(106)로부터 다운로드하여, 사용하지 않을 때 로컬 데이터베이스(216) 상에 애플리케이션을 유지하고, 로컬 데이터베이스(216) 상에 저장된 상주 애플리케이션들을 사용자가 원할 때 API(210) 상에서의 실행을 위해 메모리(212)에 업로드한다. 또한, 클라이언트 보안 모듈(214)과 서버 보안 모듈(121) 간의 상호 작용 및 동작 때문에 무선 네트워크(104)를 통한 통신은 적어도 일부는 안전한 방식으로 수행된다. 본 발명의 시스템 및 방법은 여기서 더 설명하는 바와 같이 무선 네트워크(104)를 통해 이러한 보안 통신을 제공한다.
도 3은 원격 서버와의 보안 통신을 제공하도록 동작할 수 있는 클라이언트 컴퓨팅 장치(300)의 한 예시적인 실시예를 나타낸다. 여기서 사용되는 바와 같이, "클라이언트 컴퓨팅 장치"는 예를 들어 상주하도록 구성된 로직을 실행하는 하나 이상의 처리 회로를 포함하며, 이러한 컴퓨팅 장치는 예를 들어 마이크로프로세서, 디지털 신호 프로세서(DSP), 마이크로컨트롤러, 휴대용 무선 전화, 개인 휴대 단말(PDA) 및 페이징 장치, 또는 적어도 보안 통신과 관련하여 여기서 설명하는 동작들을 수행하도록 구성된 프로세서 및 로직을 포함하는 하드웨어, 소프트웨어 및/또는 펌웨어의 적당한 임의의 조합을 포함한다. 클라이언트 컴퓨팅 장치는 적어도 이러한 보안 통신에 관해 적어도 하나의 원격 서버에 의해 서비스된다.
예시적인 실시예에서 도시한 바와 같이, 클라이언트 컴퓨팅 장치(300)는 메모리(302), 네트워크 I/O 인터페이스(304), 프로세서(306) 및 버스(308)를 포함한다. 메모리(302)는 RAM 메모리로 나타내지만, 다른 실시예들은 이러한 메모리(302)를 구성된 로직의 저장을 위해 제공된 알려진 모든 타입의 메모리로서 포함한다. 또한, 메모리(302)는 한 타입의 메모리의 하나의 연속한 유닛으로 나타내지만, 다른 실시예들은 다수의 위치 및 다수 타입의 메모리를 메모리(302)로서 사용한다. 네트워크 I/O 인터페이스(304)는 버스(308)를 통해 네트워크에 연결된 장치에 대한 입력 및 출력을 제공한다. 프로세서(306)는 버스(308)에 의해 제공되는 명령 및 데이터에 따라 동작한다. 적어도 하나의 실시예에서, 프로세서(306)는 ASIC(208)의 일부이다.
메모리(302)에는 클라이언트 컴퓨팅 장치(300), 크리덴셜(312), 네트워크를 통해 클라이언트 컴퓨팅 장치(300)의 특성(310)을 전송하기 위한 로직(314), 및 네트워크를 통해 다수의 크리덴셜(312), 다수의 크리덴셜 중 수신된 클라이언트 컴퓨팅 장치(310)의 특성 및 고유 클라이언트 키(320)에 기초한 적어도 하나의 크리덴셜, 및 다수의 크리덴셜 중 클라이언트 컴퓨팅 장치(310)의 특성 및 공통 키(322)에 기초한 적어도 하나의 크리덴셜을 수신하기 위한 로직(316)이 위치한다. 적어도 하나의 실시예에서, 클라이언트 컴퓨팅 장치(300)의 특성(310)은 클라이언트 컴퓨팅 장치(300) 전화 번호, 클라이언트 컴퓨팅 장치(300) 시스템 식별 번호(SID), 클라이언트 컴퓨팅 장치(300) BREW 버전, 클라이언트 컴퓨팅 장치(300) 하드웨어 ID(예를 들어, 전자 일련 번호(ESN)), 클라이언트 컴퓨팅 장치(300) 펌웨어 버전, 캐리어 ID, 삭제 가능 사용자 식별 모듈(RUIM) 카드 ID, 이동 디렉터리 번호(MDN), 이동 정보 번호(MIN), 장치 네트워크 어드레스(예를 들어, IP 어드레스), 서비스 가입자 청구 계좌 번호(예를 들어, 국제 이동 가입자 과금 계정 번호(예를 들어, 국제 이동 가입자 식별자(IMSI)), 클라이언트 컴퓨팅 장치(300) 비밀 키(예를 들어, A-키), 사용자 ID 및 개인 식별 번호(PIN) 중 임의의 하나 이상을 포함한다. 다른 실시예들에서는, 다른 정보가 클라이언트 컴퓨팅 장치(300)의 특성(310)으로 사용되며, 이러한 정보는 클라이언트 컴퓨팅 장치(300)를 식별하는데 유용하다. 상기 예시와 같이, 클라이언트 컴퓨팅 장치(300)의 특성(310)은 때때로 이러한 클라이언트 컴퓨팅 장치(300)에 본래 그리고 자연히 고유하지 않은 특성(310)을 포함하지만, 다른 특성(310)과 결합하면 특정 클라이언트 컴퓨팅 장치(300)를 고유하게 식별하는데 유용하다. 또한, 적어도 일 실시예에서, 수신된 클라이언트 컴퓨팅 장치의 특성(310) 및 고유 클라이언트 키(320)에 모두 기초한 적어도 하나의 크리덴셜은 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 클라이언트 키에 대해 단방향 암호화 동작을 수행함으로써 공식화된다. 일부 실시예에서는, 동일한 또는 다른 암호화 알고리즘을 이용하여 다른 크리덴셜이 공식화되는 한편, 다른 실시예에서는 암호화 알고리즘을 이용하여 특정 크리덴셜이 공식화되지 않는다.
적어도 일 실시예에서, 시스템은 무선 네트워크(104)를 통해 전송된 신호들을 인증하는데 사용되는 크리덴셜(312)을 포함한다. 이러한 크리덴셜(312)은 적어도 클라이언트 컴퓨팅 장치(300) 특성(310)의 최초 전송 및 대응하는 크리덴셜(312)의 수신 후에만 메모리(302)에 존재한다. 다른 실시예들은 추가 크리덴셜(312)을 사용하지만, 일 실시예에서 크리덴셜(312)은 클라이언트 컴퓨팅 장치(300)의 전송된 특성(310) 및 고유 클라이언트 키(320)에 기초한 하나의 크리덴셜(320) 및 클라이언트 컴퓨팅 장치의 특성(310) 및 공통 키(322)에 모두 기초한 크리덴셜(322)로 구성된다. 이러한 크리덴셜들 중 임의의 하나 이상이 대응하는 신호의 인증에 선택적으로 사용될 수 있도록 다수의 크리덴셜이 사용된다. 이와 같이, 원격 서버는 예를 들어 어느 크리덴셜(312)이 클라이언트 컴퓨팅 장치(300)에 의해 전송된 신호의 인증을 검증하는지 선택적으로 선택할 수 있다.
일 실시예에서, 이러한 하나의 크리덴셜이 특정 서버(106, 120, 122)와 관련되는 경우에는 공통 키를 기초로 다수의 크리덴셜(312)이 사용되는 한편, 이러한 하나의 크리덴셜이 다중 서버 팜(예를 들어, 네트워크 캐리어의 하나 이상의 애플리케이션 다운로드 서버와 관련된 다수의 서버 팜으로 이루어진 그룹) 내의 특정 서버 팜(예를 들어, 네트워크 캐리어의 애플리케이션 다운로드 서버와 관련된 서버 팜)과 관련되는 경우에는 다른 크리덴셜이 공통 키를 기초로 하며, 이러한 크리덴셜이 특성 서버 팜이 속하는 다중 서버 팜과 관련되는 경우에는 다른 크리덴셜이 공통 키를 기초로 한다. 이러한 각각의 실시예에서, 공통 키가 클라이언트 컴퓨팅 장치(300)의 특성(312)과 함께 사용되어 고유 크리덴셜을 생성한다. 이러한 시스템에서, 예를 들어 특정 서버 팜 또는 이와 관련된 데이터베이스가 손실되면, 나머지 관련 서버 팜들이 다중 서버 팜/클라이언트 컴퓨팅 장치(300) 조합과 관련된 크리덴셜을 기초로 크리덴셜(320)만을 인증하도록 선택적으로 선택함으로써 특정 클라이언트 컴퓨팅 장치(300)로부터 전송된 신호를 계속해서 수신하고 인증할 수 있다.
여기서, 특정 서버 팜의 손실 때문에 특정 서버 팜/클라이언트 컴퓨팅 장치(300)와 관련된 크리덴셜은 인증 프로세스에서 무시된다. 이와 같이, 적어도 하나의 실시예는 크리덴셜(312)들 중 하나와 관련된 데이터 또는 기기(예를 들어, 서버 및 서버 팜)의 임의의 특정 손실이 특정 클라이언트 컴퓨팅 장치(300)로부터 전송된 신호를 인증하는 보안 프로세스의 계속에 치명적이지 않도록 신호를 선택적으로 인증하기 위한 다수의 크리덴셜(312)의 선택적인 사용을 포함한다. 이와 같이, 서버 및/또는 서버 팜 관련 컴포넌트들의 유효성 또는 무효성에 따라, 클라이언트 컴퓨팅 장치(300)로부터 전송된 신호들의 인증에 다양한 강도의 인증이 선택적으로 적용될 수 있다.
대안으로, 적어도 일 실시예에서 선택적으로, 다수의 크리덴셜의 하나 이상의 서브셋이 유효하고 이용 가능하더라도 다수의 크리덴셜(312)의 하나의 서브셋이 신호 인증에 사용된다. 이러한 일 실시예에서, 이용 가능하고 유효한 다수의 크리덴셜(312)의 서브셋의 선택적인 사용은 바람직한 특정 인증 강도의 결정을 기초로 수행된다. 일 실시예에서, 이러한 인증 강도는 다른 것들과 비교하여 특정 인증 방식과 관련된 상대적 비용을 기초로 결정된다. 일 실시예에서, 상대적 비용은 이러한 신호의 인증과 관련된 비용(예를 들어, 시간, 처리 비용 등)에 관한 대응하는 거래와 관련된 값(예를 들어, 소득액)에 일부 기초한다. 예를 들어, 시스템은 1달러의 대응하는 낮은 값을 갖는 거래를 나타내는 신호를 처리할 때 시스템이 100달러의 대응하는 더 높은 값을 갖는 거래를 나타내는 신호와 관련된 다른 세트(예를 들어, 서브셋)의 다수의 유효 크리덴셜(312)의 인증에 사용하는 것보다 적은 세트(예를 들어, 서브셋)의 다수의 유효 크리덴셜을 기초로 신호를 인증하는데 사용되는 인증 강도에 선택적으로 기초한다. 또한, 인증에서 평가되는 다수의 유효 크리덴셜 수가 달라질 수 있기 때문에(즉, 낮은 소득 거래에 대한 것보다 높은 소득 거래에 대해서 더 많이), 어떤 거래들(즉, 낮은 소득 거래)은 시스템(즉, 더 적은 다수 크리덴셜(312)의 사용을 필요로 하는 것)에 의해 검증될 수 있는 한편, 다른 거래들(즉, 더 많은 다수 크리덴셜(312)의 사용을 필요로 하는 것)은 그렇지 않다. 즉, 예를 들어 4개의 크리덴셜로 이루어진 세트를 기초로 인증을 결정하는 것은 하나의 신호/거래를 인증하게 할 수 있지만, 예를 들어 4개의 크리덴셜로 이루어진 세트는 다른 신호/거래를 인증하게 할 수 없다. 이와 같이, 적어도 일 실시예는 전송된 크리덴셜(312) 세트 사이의 다른 크리덴셜들(예를 들어, 양이나 어떤 크리덴셜(들)이 사용되는지가 다른)이 다른 시점에 사용되어 임의의 특정 클라이언트 컴퓨팅 장치(300)로부터 동일한 또는 다른 신호를 인증할 수 있다.
적어도 일 실시예에서, 시스템은 네트워크를 통해 클라이언트 컴퓨팅 장치(300)의 특성 및 고유 클라이언트 키(320)를 전송하기 위한 로직(314)을 포함한다. 적어도 일 실시예에서, 이러한 클라이언트 컴퓨팅 장치(300)의 특성(310)은 전송된 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 고유 클라이언트 키(320)에 기초한 크리덴셜(320)의 생성에 이러한 정보 모두 또는 일부가 사용되는 경우에 원격 수신 장치가 이러한 정보를 수신하게 할 목적으로 전송된다. 일 실시예에서, 이러한 원격 수신 장치는 서버(120)이다.
적어도 일 실시예에서, 시스템은 네트워크를 통해 다수의 크리덴셜(312), 다수의 크리덴셜 중 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 고유 클라이언트 키(320)에 모두 기초한 적어도 하나의 크리덴셜, 및 다수의 크리덴셜 중 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 공통 키(322)에 모두 기초한 적어도 하나의 크리덴셜을 수신하기 위한 로직(316)을 포함한다. 적어도 일 실시예에서, 이러한 다수의 크리덴셜(312)은 원격 전송 장치로부터 전송되며, 이러한 크리덴셜들은 이전에 클라이언트 컴퓨팅 장치(300)로부터 전송된 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 원격 전송 장치와 고유하게 관련된 키에 모두 기초하여 생성된다. 일 실시예에서, 이러한 원격 전송 장치는 서버(106, 120, 122)이다. 일 실시예에서, 수신된 다수의 크리덴셜(312)은 원격 장치로부터 전송된 신호에 추후 포함하기 위해 메모리(302)에 저장된다. 일부 실시예에서, 저장된 다수의 크리덴셜(312)은 저장된 크리덴셜을 삭제, 추가 및/또는 대체하기 위한 명령을 포함하는 추후에 수신되는 신호를 기초로 새로운 크리덴셜로 선택적으로 대체된다.
도 4는 클라이언트 컴퓨팅 장치(300)와의 보안 통신을 수행하도록 동작할 수 있는 서버(400)의 예시적인 일 실시예를 나타낸다. 여기서 사용되는 바와 같이, "서버"는 예를 들어 동일한 또는 개별 컴퓨팅 장치(300)에서 실행하는 다른 로직에 서비스를 제공하는 컴퓨팅 장치에서 실행하는 로직을 포함한다. 일 실시예에서, 서버(400)는 클라이언트 컴퓨팅 장치(300)로부터의 개별 컴퓨팅 장치에서 동작하는 로직을 포함하며, 네트워크를 통해 클라이언트 컴퓨팅 장치(300)에 연결된다. 일 실시예에서, 이러한 네트워크는 적어도 일부는 무선 네트워크(104)이다. 이러한 적어도 하나의 실시예에서, 서버(400)는 클라이언트 컴퓨팅 장치(300)의 특성(310)을 포함하는 클라이언트 컴퓨팅 장치로부터의 신호 수신에 응답하여 클라이언트 컴퓨팅 장치에 다수의 크리덴셜(312)을 제공한다. 적어도 하나의 실시예에서, 서버(400)는 도 1과 관련하여 도시 및 설명한 임의의 서버(106, 120, 122)일 수 있다.
예시적인 실시예에 나타낸 바와 같이, 서버(400)는 메모리(402), 네트워크 I/O 인터페이스(404), 프로세서(406) 및 버스(408)를 포함한다. 메모리(402)는 RAM 메모리로 나타내지만, 다른 실시예들은 구성된 로직의 저장을 제공하는 것으로 알려진 공지된 모든 타입의 메모리로서 이러한 메모리(402)를 포함한다. 추가로, 메모리(402)는 한 타입의 메모리의 하나의 연속한 유닛으로 나타내지만, 다른 실시예들은 다수의 위치 및 다수 타입의 메모리를 메모리(402)로서 사용한다. 네트워크 I/O 인터페이스(404)는 버스(408)를 통해 네트워크에 연결된 장치에 대한 입력 및 출력을 제공한다. 프로세서(406)는 버스(408)에 의해 제공되는 명령 및 데이터 에 따라 동작한다.
메모리(402)에는 클라이언트 컴퓨팅 장치(300), 크리덴셜(312), 클라이언트 키(409), 공통 키(410), 네트워크를 통해 클라이언트 컴퓨팅 장치(300)의 특성을 수신하기 위한 로직(412), 다수의 크리덴셜(312), 다수의 크리덴셜 중 수신된 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 고유 클라이언트 키(409)에 기초한 적어도 하나의 크리덴셜, 및 다수의 크리덴셜 중 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 공통 키(410)에 기초한 적어도 하나의 크리덴셜을 생성하기 위한 로직(414), 및 네트워크를 통해 다수의 크리덴셜(312)을 전송하도록 구성된 로직(415)이 위치한다. 적어도 하나의 실시예에서, 고유 클라이언트 키(409)는 특정 클라이언트 컴퓨팅 장치(300)와 관련된 고유 키를 나타내며 임의의 다른 장치, 클라이언트, 서버 등에는 관련되지 않는다. 적어도 일 실시예에서, 서버는 특정 클라이언트 컴퓨팅 장치(300)와 관련된 등록시 이 고유 클라이언트 키(409)를 생성한다. 서버(400)와 관련된 클라이언트 컴퓨팅 장치(3000마다, 서버(400)에 저장된 또는 서버(400)에 액세스 가능한 개별 및 고유 클라이언트 키(409)가 있다. 일 실시예에서, 이러한 고유 클라이언트 키(409)는 서버(400) 상에 위치하는 데이터베이스에 저장된다. 일부 실시예에서는, 클라이언트 키(409)를 기초로 크리덴셜이 생성되지 않고, 이와 같이 하나 이상의 공통 키(410)에 기초한 크리덴셜에만 의존한다. 이것은 예를 들어 서버(400)가 다수의 고유 클라이언트 키(409)를 저장하기 위해 데이터베이스에 액세스할 수 없는 경우이다.
적어도 일 실시예에서, 공통 키(410)는 서버와 관련된 서버 키(416)를 포함한다. 서버 키(410)는 특정 서버와 관련된 고유 키를 포함한다. 이러한 서버 키(410)는 클라이언트 컴퓨팅 장치(300)의 특성(310)과 조합하여 서버 기반 크리덴셜을 생성할 수 있다. 다른 실시예에서, 공통 키(410)는 특정 서버 팜과 관련된 서버 팜 키(418)를 포함한다. 이러한 서버 팜 키(418)는 클라이언트 컴퓨팅 장치(300)의 특성(310)과 조합하여 서버 팜 기반 크리덴셜을 생성할 수 있다. 다른 실시예에서, 공통 키(410)는 다수의 서버 팜으로 이루어진 특정 그룹과 관련된 다수의 서버 팜 키(420)를 포함한다. 이러한 다수의 서버 팜 키(420)는 클라이언트 컴퓨팅 장치(300)의 특성(310)과 조합하여 다수의 서버 팜 기반 크리덴셜을 생성할 수 있다.
적어도 일 실시예에서, 시스템은 네트워크를 통해 클라이언트 컴퓨팅 장치(300)의 특성(310)을 수신하기 위한 로직(412)을 포함한다. 적어도 일 실시예에서, 이러한 클라이언트 컴퓨팅 장치(300)의 특성(310)은 전송된 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 고유 클라이언트 키(409)에 기초한 크리덴셜(320)의 생성을 목적으로 수신되어, 이러한 크리덴셜(320)은 이러한 장치로부터 전송된 다음 신호들의 인증에 사용하기 위해 전송한 장치로 반환된다. 일 실시예에서, 이러한 전송 장치는 클라이언트 컴퓨팅 장치(300)이다. 적어도 일 실시예에서, 이러한 클라이언트 컴퓨팅 장치(300)는 도 1에 도시 및 설명한 임의의 무선 장치(102, 108, 110, 112)일 수 있다.
적어도 일 실시예에서, 시스템은 다수의 크리덴셜(312), 다수의 크리덴셜 중 수신된 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 고유 클라이언트 키(409)에 모두 기초한 적어도 하나의 크리덴셜, 및 다수의 크리덴셜 중 수신된 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 공통 키(410)에 모두 기초한 적어도 하나의 크리덴셜을 생성하기 위한 로직(414)을 포함한다. 일 실시예에서, 수신된 클라이언트 컴퓨팅 장치(300)의 특성(310)은 원격 장치로부터 전송된다. 일 실시예에서, 이러한 원격 전송 장치는 서버(106, 120, 122)이다. 일 실시예에서, 생성된 다수의 크리덴셜(312)은 클라이언트 등록 신호와 관련된 서버(400)로부터 전송된 신호에 추후 포함하기 위해 메모리(302)에 저장된다. 적어도 일 실시예에서, 저장된 다수의 크리덴셜(312)은 들어오는 신호 진정성(authenticity)을 결정하기 위해 들어오는 신호에 삽입된 크리덴셜과 비교하는데 사용된다. 일부 실시예에서, 저장된 다수의 크리덴셜(312)이 선택적으로 수정(즉, 새로운 크리덴셜로 대체)되며, 원격 장치가 그 대응하는 크리덴셜을 수정하게 하는 관련 명령들, 예를 들어 삭제, 추가 및 대체를 포함하는 이러한 수정이 원격 장치로 전송된다.
적어도 일 실시예에서, 다수의 크리덴셜(312), 다수의 크리덴셜 중 수신된 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 고유 클라이언트 키(409)에 모두 기초한 적어도 하나의 크리덴셜, 및 다수의 크리덴셜 중 수신된 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 공통 키(410)에 모두 기초한 적어도 하나의 크리덴셜을 생성하기 위한 로직(414)은 서버(400) 관련 상황을 기반으로 더 많은 또는 더 적은 크리덴셜을 생성하도록 동작하는 추가 로직(도시 생략)을 포함한다. 이러한 일 실시예에서, 서버(400)는 크리덴셜의 손실 및/또는 특정 크리덴셜이 손상되었음을 검출하고, 이에 응답하여 추후에 클라이언트 컴퓨팅 장치(300)로 전송될 대체 크리덴셜을 생성하도록 동작한다. 다른 실시예에서, 서버(400)가 이러한 모든 크리덴셜을 검증할 수 없는 경우에 클라이언트 컴퓨팅 장치(300)로부터의 제 1 세트의 크리덴셜(312) 수신에 응답하여, 또한 서버(400)가 현재 제 2 세트의 크리덴셜(312)을 검증할 수 있는 경우에 클라이언트 컴퓨팅 장치(300)로부터의 이러한 제 2 세트의 크리덴셜(312) 수신에 응답하여, 서버(400)는 새로운 크리덴셜(312)을 생성하도록 동작한다. 다른 실시예에서, 서버(400)가 한정된 세트의 크리덴셜(312)만을 검증할 수 있는 경우에 클라이언트 컴퓨팅 장치(300)로부터의 제 1 세트의 (약한) 크리덴셜(312) 수신에 응답하여, 서버(400)는 클라이언트 컴퓨팅 장치(300)로부터 전송된 크리덴셜(312) 세트를 강화하는 방법으로서 클라이언트 컴퓨팅 장치(300)로 전송될 하나 이상의 새로운 크리덴셜(312)을 생성하도록 동작한다.
도 5는 보안 통신을 제공하기 위한 방법(500)의 예시적인 일 실시예를 설명한다. 방법(500)은 시작 단계(502)에서 시작한다. 일 실시예에서, 프로세스는 단계(504)에서 계속하여 클라이언트 컴퓨팅 장치(300)가 자신의 활성화를 검출한다. 다음에, 단계(506)에서 클라이언트 컴퓨팅 장치(300)의 활성화 검출에 응답하여, 클라이언트 컴퓨팅 장치(300)는 클라이언트 컴퓨팅 장치(300)의 특성을 검색하도록 동작한다. 검색되면, 클라이언트 컴퓨팅 장치(300)는 단계(508)에서 네트워크를 통해 클라이언트 컴퓨팅 장치(300)의 특성(310)을 전송하도록 동작한다. 다음에, 단계(510)에서 서버(400)는 전송된 클라이언트 컴퓨팅 장치(300)의 특성(310)을 수신하도록 동작한다. 서버(400)가 전송된 클라이언트 컴퓨팅 장치(300)의 특성(310)을 수신하면, 시스템은 단계(512)에서 서버(400)가 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 고유 클라이언트 키(409)를 기초로 크리덴셜(320) 생성하도록 동작한다. 서버(400)가 전송된 클라이언트 컴퓨팅 장치(300)의 특성(310)을 수신했으면, 시스템은 단계(514)에서 서버(400)가 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 공통 키(410)를 기초로 적어도 하나의 크리덴셜(322)을 생성하도록 동작한다.
크리덴셜(312)이 생성되면, 서버(400)는 단계(516)에서 크리덴셜(312)을 클라이언트 컴퓨팅 장치(300)에 전송하도록 동작한다. 단계(516)에서 크리덴셜을 전송한 뒤, 시스템은 단계(518)에서 클라이언트 컴퓨팅 장치가 크리덴셜(312)을 수신하도록 동작한다. 다음에, 단계(520)에서 시스템은 클라이언트 컴퓨팅 장치(300)가 메모리(302)에 크리덴셜(312)을 저장하도록 동작한다. 방법(500)의 최종 단계는 단계(522)이다. 적어도 일 실시예에서, 방법(500)의 하나 이상의 단계는 보안 모드로 동작한다. 예를 들어, 일 실시예에서 단계(506, 508, 516, 518, 520)는 클라이언트 컴퓨팅 장치에서 보안 모드로 동작한다. 이러한 보안 모드는 허가되지 않은 프로그램 및 허가되지 않은 엔티티에 의한 데이터의 불필요한 도난을 방지하도록 동작한다. 일 실시예에서, 보안 모드는 안전한 파일 시스템의 사용을 포함한다. 이러한 보안 모드 동작은 당업계에 알려진 몇 개의 현재 공지된 기술일 수 있다.
도 6은 보안 통신을 제공하기 위한 방법(600)의 예시적인 일 실시예를 설명한다. 방법(600)은 시작 단계(602)에서 시작하고 단계(604)로 계속되어, 시스템이 서버(400)에서 클라이언트 컴퓨팅 장치(300)로부터의 등록 요청 필요성을 결정하도록 동작한다. 이러한 등록 요청은 서버(400)에 의해 결정된 임의 개수의 팩터에 기초할 수 있다. 예를 들어, 서버(400)는 클라이언트 컴퓨팅 장치(300)와 통신하는 문제점을 검출할 수 있으며, 이에 응답하여 이러한 등록 필요성을 결정할 수 있다. 마찬가지로, 서버(400)는 보안 통신에 영향을 주는 다른 문제들을 검출할 수 있으며, 이에 응답하여 클라이언트 컴퓨팅 장치(300)의 등록 필요성을 결정한다(즉, 서버 키가 손상되는 것으로 결정되며, 이에 따라 모든 클라이언트 컴퓨팅 장치를 재등록하기 위한 프로세스가 시작된다). 클라이언트 컴퓨팅 장치(300)로부터 등록 요청 필요성이 있다고 결정된 후, 서버(400)는 단계(606)에서 클라이언트 컴퓨팅 장치(300)로 등록 요청을 전송한다. 이에 응답하여, 단계(608)에서 클라이언트 컴퓨팅 장치(300)는 클라이언트 컴퓨팅 장치(300)의 등록 요청을 수신한다. 등록 요청을 수신하면, 클라이언트 컴퓨팅 장치(300)는 단계(506, 508, 510, 512, 514, 516, 518, 520, 522)를 포함하여 상술한 단계들을 따라 관련 기능을 수행한다.
도 7은 보안 통신을 제공하기 위한 방법의 예시적인 일 실시예를 설명한다. 보다 구체적으로, 방법(700)은 저장된 크리덴셜(312)을 포함하는 메시지의 전송에 관한 것이다. 방법(700)은 시작 단계(702)에서 시작하며, 단계(704)에서 계속해서 클라이언트 컴퓨팅 장치(300)가 클라이언트 컴퓨팅 장치(300)의 특성 및 고유 클라이언트 키(409)를 기초로 메모리(302)로부터 저장된 크리덴셜(320)을 검색하도록 동작한다. 방법(700)은 또한 클라이언트 컴퓨팅 장치(300)가 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 공통 키(410)를 기초로 메모리(302)로부터 적어도 하나의 저장된 크리덴셜(322)을 검색하는 단계(706)를 포함한다. 저장된 크리덴셜(312)이 검색되면, 클라이언트 컴퓨팅 장치(300)는 단계(708)에서 네트워크를 통해 크리덴셜(312)을 포함하는 신호를 전송하도록 동작한다. 크리덴셜(312)을 포함하는 신호의 전송에 응답하여, 서버(400)는 단계(710)에서 이러한 신호를 수신한다. 다음에, 단계(712)에서, 서버는 신호로부터 크리덴셜(312)을 검색하도록 동작한다. 크리덴셜(312)이 수신되면, 단계(714)에서 서버(400)는 검색된 크리덴셜(312)과 예상 크리덴셜을 비교하도록 동작한다. 일 실시예에서, 예상 크리덴셜은 서버(400)에 저장되며 대응하는 신호 수신시 검색된 크리덴셜(312)과의 비교에 사용된다. 다음에, 클라이언트 컴퓨팅 장치(300)에 대한 예상 크리덴셜과 수신 신호로부터 검색된 크리덴셜 간의 매치를 산출하는 단계(714)의 비교에 응하여, 서버(400)는 단계(716)로 진행하여 관련 신호를 인증된 신호로서 처리한다. 방법(700)은 노드(718)에서 종료한다.
도 8은 클라이언트 컴퓨팅 장치(300)와 서버(400) 간에 보안 통신을 제공하기 위한 프로세스(800)의 예시적인 일 실시예를 설명한다. 도시한 바와 같이, 3개의 스테이지, 스테이지 1(802), 스테이지 2(804) 및 스테이지 n(806)이 무선 네트워크(104)를 통한 보안 전송을 확립하여 시작하는 클라이언트 컴퓨팅 장치(300)와 서버(400) 간의 연속적인 전송을 설명한다. 스테이지 1(802)에서 클라이언트 컴퓨팅 장치(300)는 등록 명령(810) 및 클라이언트 컴퓨팅 장치(300)의 특성(310)을 포함하는 신호(808)를 전송한다. 신호(808)에 응답하여, 크리덴셜(312)의 생성을 포함하는 서버에서의 처리 수행 후, 스테이지 2(804)에서 서버(400)는 생성된 크리덴셜(312)과 함께 저장 명령(814)을 포함하는 대응하는 신호(812)를 전송한다. 적어도 하나의 실시예에서, 이러한 신호는 계층적인 방식으로 신호에 위치한다. 신호(812)에 응답하여, 전송된 크리덴셜(312)이 클라이언트 컴퓨팅 장치(300)의 메모리(302)에 저장되는 클라이언트 컴퓨팅 장치(300)에서의 처리 수행 후, 스테이지 n(806)에서 클라이언트 컴퓨팅 장치(300)는 몇 가지 타입의 명령(818), 클라이언트 컴퓨팅 장치(300)의 특성(310), 수신된 크리덴셜(312) 및 전달 데이터(도시 생략)를 포함하는 신호(816)를 생성한다. 적어도 일 실시예에서, 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 수신된 크리덴셜(312)은 항상 신호(816)에 있다. 신호(816)는 적어도 크리덴셜(312)을 이용하여 서버에서 각각 허가된, 클라이언트 컴퓨팅 장치(300)로부터 서버(400)로 전송된 표준 보안 신호를 나타낸다.
도 9는 클라이언트 컴퓨팅 장치(300)와 서버(400) 간에 보안 통신을 제공하기 위한 프로세스(900)의 예시적인 일 실시예를 설명한다. 도시한 바와 같이, 3개의 스테이지, 스테이지 m(902), 스테이지 m+1(904) 및 스테이지 m+2(906)가 이미 시작된 보안 전송 상호 작용 동안 무선 네트워크(104)를 통해 보안 전송을 재확립하는(재등록) 클라이언트 컴퓨팅 장치(300)와 서버(400) 간의 연속적인 전송을 설명한다. 일 실시예는 보안 중단 및/또는 클라이언트 크리덴셜이 원격적으로 업데이트되고자 하는 다른 상황에 응답하여 재등록을 시작한다. 스테이지 m(902)에서 서버(400)는 등록 명령(810)을 포함하는 신호(908)를 전송한다. 신호(908)에 응답하여, 클라이언트 컴퓨팅 장치(300)의 특성(310) 검색을 포함하는 클라이언트 컴퓨팅 장치(300)에서의 처리 수행 후, 스테이지 m+1(904)에서 클라이언트 컴퓨팅 장치(300)는 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 생성된 크리덴셜(312)과 함께 등록 명령(810)을 포함하는 대응하는 신호(910)를 전송한다. 신호(910)에 응답하여, 적어도 클라이언트 컴퓨팅 장치(300)의 전송된 특성(310)에 기초하여 새로운 크리덴셜(312)이 생성되는 서버에서의 처리 수행 후, 스테이지 n(906)에서 서버(400)는 어떤 저장 명령(814) 및 생성된 크리덴셜(912)을 포함하는 신호(914)를 전송한다. 신호(914)는 도 8에서 신호(812)가 새로운 보안 전송 구성을 확립하기 위해 서버(400)로부터 클라이언트 컴퓨팅 장치(300)로의 생성된 크리덴셜 전송을 나타내는 스테이지 2에 나타낸 것과 비슷한 신호를 나타낸다. 어떤 실시예에서는, 단지 크리덴셜 세트의 수신이 이러한 크리덴셜(912)의 저장을 시작하기에 충분하기 때문에 저장 명령(814)이 포함될 필요가 없다.
도 10은 클라이언트 컴퓨팅 장치(300)와 서버(400) 간의 보안 통신을 제공하는 방법(1000)의 예시적인 일 실시예를 설명한다. 방법(1000)은 시작 단계(1002)에서 시작한다. 일 실시예에서, 프로세스는 방법이 클라이언트 컴퓨팅 장치(300)의 활성화 검출을 포함하는 경우에 선택적인 단계(1004)에서 계속한다. 또한, 일 실시예에는, 단계가 네트워크를 통해 클라이언트 컴퓨팅 장치(300)의 등록을 요청하는 신호의 전송을 포함하는 선택적인 단계(1006)가 포함된다. 적어도 일 실시예에는 방법이 네트워크를 통한 클라이언트 컴퓨팅 장치(300)의 특성(310) 수신을 포함하는 단계(1008)가 포함된다. 프로세스가 다수의 크리덴셜(312), 다수의 크리덴셜(320) 중 수신된 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 고유 클라이언트 키에 기초한 적어도 하나의 크리덴셜, 및 다수의 크리덴셜(322) 중 수신된 클라이언트 장치(300)의 특성(310) 및 공통 키(410)에 기초한 적어도 하나의 크리덴셜 생성을 포함하는 단계(1010)가 단계(1008)에 이어진다. 다음에, 단계(1012)는 네트워크를 통한 다수의 크리덴셜(312) 전송을 포함한다. 종료 단계(1014)가 단계(1012)에 이어진다.
상기 단계들에 추가로, 방법(1000)은 선택적인 단계(1016, 1018, 1020, 1022) 또한 포함하며, 이들은 각각 기존 단계들에 관련하여 선택적으로 사용된다. 선택적인 단계(1016)는 클라이언트 컴퓨팅 장치(300)의 특성이 클라이언트 컴퓨팅 장치 전화 번호, SID, 클라이언트 컴퓨팅 장치 BREW 버전, 클라이언트 컴퓨팅 장치 하드웨어 ID, 클라이언트 컴퓨팅 장치 펌웨어 버전, 캐리어 ID, RUIM 카드 ID, MDN, MIN, 장치 네트워크 어드레스, 서비스 가입자 과금 계정 번호, 클라이언트 컴퓨팅 장치 비밀 키, 사용자 ID 및 PIN 중 적어도 하나를 포함하는 점에서 방법이 추가 동작하는 경우에 단계(1008)를 수정한다. 선택적인 단계(1018)는 공통 키(410)가 서버에 고유하다는 점에서 방법이 추가 동작하는 경우에 단계(1020)를 수정한다. 다음에, 선택적인 단계(1020)는 공통 키(410)가 서버 팜에 고유하다는 점에서 방법이 추가 동작하는 경우에 단계(1010)를 수정한다. 다음에, 선택적인 단계(1022)는 공통 키(410)가 다수의 서버 팜에 고유하다는 점에서 방법이 추가 동작하는 경우에 단계(1010)를 수정한다.
도 11은 클라이언트 컴퓨팅 장치(300)와 서버(400) 간의 보안 통신을 제공하는 방법(1100)의 예시적인 일 실시예를 설명한다. 방법(1100)은 시작 단계(1102)에서 시작한다. 일 실시예에서, 방법이 클라이언트 컴퓨팅 장치(300)의 활성화 검출을 포함하는 경우에 프로세스는 선택적인 단계(1104)를 계속한다. 또한, 일 실시예에는 네트워크를 통한 클라이언트 컴퓨팅 장치(300)의 등록을 요청하는 신호 수신을 포함하는 선택적인 단계(1106)가 포함된다. 적어도 일 실시예에는 네트워크를 통한 클라이언트 컴퓨팅 장치(300)의 특성(310) 전송을 포함하는 단계(1108)가 포함된다. 방법이 네트워크를 통해 다수의 크리덴셜(322), 다수의 크리덴셜 중 클라이언트 컴퓨팅 장치의 특성(310) 및 고유 클라이언트 키(409)에 기초한 적어도 하나의 크리덴셜, 및 다수의 크리덴셜 중 클라이언트 장치의 특성(310) 및 공통 키(410)에 기초한 적어도 하나의 크리덴셜을 수신하도록 동작하는 단계(1110)가 단계(1108)에 이어진다. 단계(1110)에 종료 단계(1112)가 이어진다.
상기 단계들에 추가로, 방법(1100)은 선택적인 단계(1114, 1116, 1118, 1120) 또한 포함하며, 이들은 각각 기존 단계들에 관련하여 선택적으로 사용된다. 선택적인 단계(1114)는 클라이언트 컴퓨팅 장치(300)의 특성이 클라이언트 컴퓨팅 장치 전화 번호, SID, 클라이언트 컴퓨팅 장치 BREW 버전, 클라이언트 컴퓨팅 장치 하드웨어 ID, 클라이언트 컴퓨팅 장치 펌웨어 버전, 캐리어 ID, RUIM 카드 ID, MDN, MIN, 장치 네트워크 어드레스, 서비스 가입자 과금 계정 번호, 클라이언트 컴퓨팅 장치 비밀 키, 사용자 ID 및 PIN 중 적어도 하나를 포함하는 점에서 방법이 추가 동작하는 경우에 단계(1108)를 수정한다. 선택적인 단계(1116)는 공통 키(410)가 서버에 고유하다는 점에서 방법이 추가 동작하는 경우에 단계(1110)를 수정한다. 다음에, 선택적인 단계(1118)는 공통 키(410)가 서버 팜에 고유하다는 점에서 방법이 추가 동작하는 경우에 단계(1110)를 수정한다. 다음에, 선택적인 단계(1120)는 공통 키(410)가 다수의 서버 팜에 고유하다는 점에서 방법이 추가 동작하는 경우에 단계(1120)를 수정한다.
도 12는 클라이언트 컴퓨팅 장치(300)와 서버(400) 간의 보안 통신을 제공하는 방법의 예시적인 일 실시예를 설명한다. 방법(1200)은 시작 단계(1202)에서 시작한다. 일 실시예에서, 방법이 클라이언트 컴퓨팅 장치(300)의 활성화 검출을 포함하는 경우에 프로세스는 선택적인 단계(1204)를 계속한다. 일 실시예에는 상기 방법이 네트워크를 통해 클라이언트 컴퓨팅 장치(300)의 등록을 요청하는 신호를 전송하는 선택적인 단계(1206)가 포함된다. 일 실시예에는 상기 방법이 네트워크를 통해 클라이언트 컴퓨팅 장치(300)의 등록을 요청하는 신호를 수신하도록 동작하는 다른 선택적 단계(1208)가 포함된다. 일 실시예는 상기 방법이 네트워크를 통해 클라이언트 컴퓨팅 장치(300)의 특성(310)을 전송하도록 동작하는 단계(1210)를 포함한다. 단계(1210)에는 상기 방법이 네트워크를 통해 클라이언트 컴퓨팅 장치(300)의 특성(310)을 수신하도록 동작하는 단계(1212)가 이어진다. 단계(1212)에는 상기 방법이 다수의 크리덴셜(322), 다수의 크리덴셜 중 수신된 클라이언트 컴퓨팅 장치(300)의 특성(310) 및 고유 클라이언트 키(409)에 기초한 적어도 하나의 크리덴셜, 및 다수의 크리덴셜 중 수신된 클라이언트 장치(300)의 특성(310) (및 클라이언트별 고유 키) 및 공통 키(410)에 기초한 적어도 하나의 크리덴셜을 생성하도록 동작하는 단계(1214)가 이어진다. 단계(1214)에는 상기 방법이 네트워크를 통해 다수의 크리덴셜(312)을 전송하도록 동작하는 단계(1216)가 이어진다. 단계(1216)에는 상기 방법이 네트워크를 통해 다수의 크리덴셜(312)을 수신하도록 동작하는 단계(1218)가 이어진다. 단계(1218)에 종료 단계(1220)가 이어진다.
상기 단계들에 추가로, 방법(1200)은 선택적인 단계(1222, 1224, 1226, 1228) 또한 포함하며, 이들은 각각 기존 단계들에 관련하여 선택적으로 사용된다. 선택적인 단계(1222)는 클라이언트 컴퓨팅 장치(300)의 특성이 클라이언트 컴퓨팅 장치 전화 번호, SID, 클라이언트 컴퓨팅 장치 BREW 버전, 클라이언트 컴퓨팅 장치 하드웨어 ID, 클라이언트 컴퓨팅 장치 펌웨어 버전, 캐리어 ID, RUIM 카드 ID, MDN, MIN, 장치 네트워크 어드레스, 서비스 가입자 과금 계정 번호, 클라이언트 컴퓨팅 장치 비밀 키, 사용자 ID 및 PIN 중 적어도 하나를 포함하는 점에서 상기 방법이 추가 동작하는 경우에 단계(1210)를 수정한다. 선택적인 단계(1224)는 공통 키(410)가 서버에 고유하다는 점에서 상기 방법이 추가 동작하는 경우에 단계(1214)를 수정한다. 다음에, 선택적인 단계(1226)는 공통 키(410)가 서버 팜에 고유하다는 점에서 상기 방법이 추가 동작하는 경우에 단계(1214)를 수정한다. 다음에, 선택적인 단계(1228)는 공통 키(410)가 다수의 서버 팜에 고유하다는 점에서 상기 방법이 추가 동작하는 경우에 단계(1214)를 수정한다.
당업자들은 본원에 개시된 실시예들과 관련하여 설명된 각종 예시적 논리 블록, 구성, 모듈, 회로 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어 또는 이 둘의 결합으로서 구현될 수 있음을 인지한다. 이러한 하드웨어와 소프트웨어의 호환성을 명확히 설명하기 위해, 상기에는 각종 예시적인 컴포넌트, 블록, 구성, 모듈, 회로 및 단계들이 일반적으로 그 기능에 관하여 설명되었다. 이러한 기능이 하드웨어로 구현되는지 소프트웨어로 구현되는지는 전체 시스템에 부과된 특별한 응용 및 설계 압박에 좌우된다. 당업자들은 특정 애플리케이션마다 다양한 방식으로 상술한 기능을 구현할 수 있지만, 이러한 구현 결정은 본 발명의 범위를 벗어나게 하는 것으로 해석되지 않아야 한다.
본원에 개시된 실시예들과 관련하여 방법 또는 알고리즘의 단계들은 하드웨어에, 프로세서에 의해 실행되는 소프트웨어 모듈에 또는 그 조합에 직접 구현될 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, PROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터, 하드디스크, 착탈 가능 디스크, CD-ROM, 또는 당업계에 공지된 임의의 다른 형태의 저장 매체에 상주할 수 있다. 예시적인 저장 매체는 프로세서가 저장 매체로부터 정보를 판독하고 저장 매체에 정보를 기록할 수 있도록 프로세서에 연결된다. 대안으로, 저장 매체는 프로세서에 통합될 수도 있다. 프로세서 및 저장 매체는 ASIC에 상주할 수도 있다. ASIC은 컴퓨팅 장치 또는 사용자 단말에 상주할 수 있다. 대안으로, 프로세서 및 저장 매체는 컴퓨팅 장치 또는 사용자 단말에 이산 컴포넌트로서 상주할 수도 있다.
개시된 실시예들의 상기 설명은 임의의 당업자가 본 발명을 제조 또는 사용할 수 있도록 제공된다. 이들 실시예에 대한 다양한 변형이 당업자들에게 쉽게 명백하며, 본원에 정의된 일반 원리는 본 발명의 진의나 범위를 벗어나지 않으면서 다른 실시예들에 적용될 수 있다. 따라서 본 발명은 본원에 나타낸 실시예들로 한정되는 것이 아니라 본원에 개시된 원리 및 신규 특징에 부합하는 가장 넓은 범위에 따르는 것이다.

Claims (87)

  1. 네트워크에 연결된 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하는 방법으로서,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 수신하는 단계;
    다수의 크리덴셜(credential)들을 생성하는 단계 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유(unique) 클라이언트 키 모두에 기초하며, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통(generic) 키 모두에 기초함 -; 및
    상기 네트워크를 통해 상기 다수의 크리덴션들을 전송하는 단계를 포함하는, 보안 통신 제공 방법.
  2. 제 1 항에 있어서,
    상기 공통 키는 서버에 고유한 것을 특징으로 하는 보안 통신 제공 방법.
  3. 제 1 항에 있어서,
    상기 공통 키는 서버 팜(farm)에 고유한 것을 특징으로 하는 보안 통신 제공 방법.
  4. 제 1 항에 있어서,
    상기 공통 키는 다수의 서버 팜에 고유한 것을 특징으로 하는 보안 통신 제공 방법.
  5. 제 1 항에 있어서,
    상기 클라이언트 컴퓨팅 장치의 특성은 클라이언트 컴퓨팅 장치 전화 번호, SID, 클라이언트 컴퓨팅 장치 BREW 버전, 클라이언트 컴퓨팅 장치 하드웨어 ID, 클라이언트 컴퓨팅 장치 펌웨어 버전, 캐리어 ID, RUIM 카드 ID, MDN, MIN, 장치 네트워크 어드레스, 서비스 가입자 과금 계정 번호, 클라이언트 컴퓨팅 장치 비밀 키, 사용자 ID 및 PIN 중 적어도 하나를 포함하는 것을 특징으로 하는 보안 통신 제공 방법.
  6. 제 1 항에 있어서,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 등록을 요청하는 신호를 전송하는 단계를 더 포함하며,
    상기 클라이언트 컴퓨팅 장치의 특성을 수신하는 단계는 상기 클라이언트 컴퓨팅 장치의 등록 요청 신호 전송에 응답하여 동작하는 것을 특징으로 하는 보안 통신 제공 방법.
  7. 제 1 항에 있어서,
    상기 클라이언트 컴퓨팅 장치의 특성을 수신하는 단계는 상기 클라이언트 컴퓨팅 장치의 활성화에 응답하여 동작하는 것을 특징으로 하는 보안 통신 제공 방법.
  8. 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하는 방법으로서, 상기 클라이언트 컴퓨팅 장치와 서버는 네트워크에 연결되며, 상기 방법은,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 전송하는 단계; 및
    상기 네트워크를 통해 다수의 크리덴셜들을 수신하는 단계 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초함 - 를 포함하는, 보안 통신 제공 방법.
  9. 제 8 항에 있어서,
    상기 공통 키는 서버에 고유한 것을 특징으로 하는 보안 통신 제공 방법.
  10. 제 8 항에 있어서,
    상기 공통 키는 서버 팜에 고유한 것을 특징으로 하는 보안 통신 제공 방법.
  11. 제 8 항에 있어서,
    상기 공통 키는 다수의 서버 팜에 고유한 것을 특징으로 하는 보안 통신 제공 방법.
  12. 제 8 항에 있어서,
    상기 클라이언트 컴퓨팅 장치의 특성은 클라이언트 컴퓨팅 장치 전화 번호, SID, 클라이언트 컴퓨팅 장치 BREW 버전, 클라이언트 컴퓨팅 장치 하드웨어 ID, 클라이언트 컴퓨팅 장치 펌웨어 버전, 캐리어 ID, RUIM 카드 ID, MDN, MIN, 장치 네트워크 어드레스, 서비스 가입자 과금 계정 번호, 클라이언트 컴퓨팅 장치 비밀 키, 사용자 ID 및 PIN 중 적어도 하나를 포함하는 것을 특징으로 하는 보안 통신 제공 방법.
  13. 제 8 항에 있어서,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 등록을 요청하는 신호를 수신하는 단계를 더 포함하며,
    상기 클라이언트 컴퓨팅 장치의 특성을 전송하는 단계는 상기 클라이언트 컴퓨팅 장치의 등록 요청 신호 수신에 응답하여 동작하는 것을 특징으로 하는 보안 통신 제공 방법.
  14. 제 8 항에 있어서,
    상기 클라이언트 컴퓨팅 장치의 활성화를 검출하는 단계를 더 포함하며,
    상기 클라이언트 컴퓨팅 장치의 특성을 전송하는 단계는 상기 클라이언트 컴퓨팅 장치의 활성화 검출에 응답하여 동작하는 것을 특징으로 하는 보안 통신 제공 방법.
  15. 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하는 방법으로서, 상기 클라이언트 컴퓨팅 장치와 서버는 네트워크에 연결되며, 상기 방법은,
    상기 클라이언트 컴퓨팅 장치로부터 상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 전송하는 단계;
    상기 서버에서 상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 수신하는 단계;
    다수의 크리덴셜들을 생성하는 단계 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 - ;
    상기 서버로부터 상기 네트워크를 통해 상기 다수의 크리덴셜들을 전송하는 단계; 및
    상기 클라이언트 컴퓨팅 장치에서 상기 네트워크를 통해 상기 다수의 크리덴셜들을 수신하는 단계를 포함하는, 보안 통신 제공 방법.
  16. 제 15 항에 있어서,
    상기 공통 키는 서버, 서버 팜 및 다수의 서버 팜 중 적어도 하나에 고유한 것을 특징으로 하는 보안 통신 제공 방법.
  17. 제 15 항에 있어서,
    상기 클라이언트 컴퓨팅 장치의 특성은 클라이언트 컴퓨팅 장치 전화 번호, SID, 클라이언트 컴퓨팅 장치 BREW 버전, 클라이언트 컴퓨팅 장치 하드웨어 ID, 클라이언트 컴퓨팅 장치 펌웨어 버전, 캐리어 ID, RUIM 카드 ID, MDN, MIN, 장치 네트워크 어드레스, 서비스 가입자 과금 계정 번호, 클라이언트 컴퓨팅 장치 비밀 키, 사용자 ID 및 PIN 중 적어도 하나를 포함하는 것을 특징으로 하는 보안 통신 제공 방법.
  18. 네트워크를 통한 클라이언트 컴퓨팅 장치와의 보안 통신들을 처리하는 서버로서,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 수신하도록 구성된 로직;
    다수의 크리덴셜들을 생성하도록 구성된 로직 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 - ; 및
    상기 네트워크를 통해 상기 다수의 크리덴셜들을 전송하도록 구성된 로직을 포함하는, 서버.
  19. 제 18 항에 있어서,
    상기 공통 키는 서버에 고유한 것을 특징으로 하는 서버.
  20. 제 18 항에 있어서,
    상기 공통 키는 서버 팜에 고유한 것을 특징으로 하는 서버.
  21. 제 18 항에 있어서,
    상기 공통 키는 다수의 서버 팜에 고유한 것을 특징으로 하는 서버.
  22. 제 18 항에 있어서,
    상기 클라이언트 컴퓨팅 장치의 특성은 클라이언트 컴퓨팅 장치 전화 번호, SID, 클라이언트 컴퓨팅 장치 BREW 버전, 클라이언트 컴퓨팅 장치 하드웨어 ID, 클라이언트 컴퓨팅 장치 펌웨어 버전, 캐리어 ID, RUIM 카드 ID, MDN, MIN, 장치 네트워크 어드레스, 서비스 가입자 과금 계정 번호, 클라이언트 컴퓨팅 장치 비밀 키, 사용자 ID 및 PIN 중 적어도 하나를 포함하는 것을 특징으로 하는 서버.
  23. 네트워크를 통한 서버와의 보안 통신들을 처리하는 클라이언트 컴퓨팅 장치로서,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 전송하도록 구성된 로직; 및
    상기 네트워크를 통해 다수의 크리덴셜들을 수신하도록 구성된 로직 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초함 - 을 포함하는, 클라이언트 컴퓨팅 장치.
  24. 제 23 항에 있어서,
    상기 공통 키는 서버에 고유한 것을 특징으로 하는 클라이언트 컴퓨팅 장치.
  25. 제 23 항에 있어서,
    상기 공통 키는 서버 팜에 고유한 것을 특징으로 하는 클라이언트 컴퓨팅 장치.
  26. 제 23 항에 있어서,
    상기 공통 키는 다수의 서버 팜에 고유한 것을 특징으로 하는 클라이언트 컴퓨팅 장치.
  27. 제 23 항에 있어서,
    상기 클라이언트 컴퓨팅 장치의 특성은 클라이언트 컴퓨팅 장치 전화 번호, SID, 클라이언트 컴퓨팅 장치 BREW 버전, 클라이언트 컴퓨팅 장치 하드웨어 ID, 클라이언트 컴퓨팅 장치 펌웨어 버전, 캐리어 ID, RUIM 카드 ID, MDN, MIN, 장치 네트워크 어드레스, 서비스 가입자 과금 계정 번호, 클라이언트 컴퓨팅 장치 비밀 키, 사용자 ID 및 PIN 중 적어도 하나를 포함하는 것을 특징으로 하는 클라이언트 컴퓨팅 장치.
  28. 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하는 시스템으로서, 상기 클라이언트 컴퓨팅 장치와 서버는 네트워크에 연결되며, 상기 시스템은,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 전송하고; 상기 네트워크를 통해 다수의 크리덴셜들을 수신하도록 구성된 로직을 포함하는 클라이언트 컴퓨팅 장치; 및
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 수신하고; 다수의 크리덴셜들을 생성하고 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 -; 상기 네트워크를 통해 상기 다수의 크리덴셜들을 전송하도록 구성된 로직을 포함하는 서버를 포함하는, 보안 통신 제공 시스템.
  29. 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하도록 하나 이상의 프로세서들에 의해 실행가능한 컴퓨터 프로그램을 구현하는 컴퓨터 판독 가능 매체로서, 상기 클라이언트 컴퓨팅 장치와 서버는 네트워크에 연결되며, 상기 컴퓨터 판독 가능 매체는,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 수신하도록 동작가능한 코드;
    다수의 크리덴셜들을 생성하도록 동작가능한 코드 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 - ; 및
    상기 네트워크를 통해 상기 다수의 크리덴셜들을 전송하도록 동작가능한 코드를 포함하는, 컴퓨터 판독 가능 매체.
  30. 제 29 항에 있어서,
    상기 공통 키는 서버, 서버 팜 및 다수의 서버 팜 중 적어도 하나에 고유한 것을 특징으로 하는 컴퓨터 판독 가능 매체.
  31. 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하도록 하나 이상의 프로세서들에 의해 실행가능한 컴퓨터 프로그램을 구현하는 컴퓨터 판독 가능 매체로서, 상기 클라이언트 컴퓨팅 장치와 서버는 네트워크에 연결되며, 상기 컴퓨터 판독 가능 매체는,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 전송하도록 동작가능한 코드; 및
    상기 네트워크를 통해 다수의 크리덴셜들을 수신하도록 동작가능한 코드 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초함 - 를 포함하는, 컴퓨터 판독 가능 매체.
  32. 제 31 항에 있어서,
    상기 공통 키는 서버, 서버 팜 및 다수의 서버 팜 중 적어도 하나에 고유한 것을 특징으로 하는 컴퓨터 판독 가능 매체.
  33. 네트워크를 통한 클라이언트 컴퓨팅 장치와의 보안 통신들을 처리하는 서버로서,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 수신하는 수단;
    다수의 크리덴셜들을 생성하는 수단 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 -; 및
    상기 네트워크를 통해 상기 다수의 크리덴셜들을 전송하는 수단을 포함하는, 서버.
  34. 제 33 항에 있어서,
    상기 공통 키는 서버, 서버 팜 및 다수의 서버 팜 중 적어도 하나에 고유한 것을 특징으로 하는 서버.
  35. 네트워크를 통한 서버와의 보안 통신들을 처리하는 클라이언트 컴퓨팅 장치로서,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 전송하는 수단; 및
    상기 네트워크를 통해 다수의 크리덴셜들을 수신하는 수단 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초함 - 을 포함하는, 클라이언트 컴퓨팅 장치.
  36. 제 35 항에 있어서,
    상기 공통 키는 서버, 서버 팜 및 다수의 서버 팜 중 적어도 하나에 고유한 것을 특징으로 하는 클라이언트 컴퓨팅 장치.
  37. 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하는 방법으로서, 상기 클라이언트 컴퓨팅 장치와 서버는 네트워크에 연결되며, 상기 방법은,
    상기 네트워크를 통해, 다수의 크리덴셜들을 포함하는 신호를 수신하는 단계 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 - ; 및
    상기 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 신호의 진정성(authenticity)을 결정하는 단계를 포함하는, 보안 통신 제공 방법.
  38. 제 37 항에 있어서,
    상기 신호의 진정성은 상기 다수의 크리덴셜 중 상기 수신된 클라이언트 컴퓨팅 장치의 특성 및 고유 클라이언트 키에 모두 기초한 적어도 하나의 크리덴셜을 이용하여 결정되는 것을 특징으로 하는 보안 통신 제공 방법.
  39. 제 37 항에 있어서,
    상기 공통 키는 서버에 고유한 것을 특징으로 하는 보안 통신 제공 방법.
  40. 제 39 항에 있어서,
    상기 신호의 진정성은 상기 다수의 크리덴셜 중 상기 수신된 클라이언트 컴퓨팅 장치의 특성 및 상기 서버에 고유한 공통 키에 모두 기초한 적어도 하나의 크리덴셜을 이용하여 결정되는 것을 특징으로 하는 보안 통신 제공 방법.
  41. 제 37 항에 있어서,
    상기 공통 키는 서버 팜에 고유한 것을 특징으로 하는 보안 통신 제공 방법.
  42. 제 41 항에 있어서,
    상기 신호의 진정성은 상기 다수의 크리덴셜 중 상기 수신된 클라이언트 컴퓨팅 장치의 특성 및 상기 서버 팜에 고유한 공통 키에 모두 기초한 적어도 하나의 크리덴셜을 이용하여 결정되는 것을 특징으로 하는 보안 통신 제공 방법.
  43. 제 37 항에 있어서,
    상기 공통 키는 다수의 서버 팜에 고유한 것을 특징으로 하는 보안 통신 제공 방법.
  44. 제 43 항에 있어서,
    상기 신호의 진정성은 상기 다수의 크리덴셜 중 상기 수신된 클라이언트 컴퓨팅 장치의 특성 및 상기 다수의 서버 팜에 고유한 공통 키에 모두 기초한 적어도 하나의 크리덴셜을 이용하여 결정되는 것을 특징으로 하는 보안 통신 제공 방법.
  45. 제 37 항에 있어서,
    상기 클라이언트 컴퓨팅 장치의 특성은 클라이언트 컴퓨팅 장치 전화 번호, SID, 클라이언트 컴퓨팅 장치 BREW 버전, 클라이언트 컴퓨팅 장치 하드웨어 ID, 클라이언트 컴퓨팅 장치 펌웨어 버전, 캐리어 ID, RUIM 카드 ID, MDN, MIN, 장치 네트워크 어드레스, 서비스 가입자 과금 계정 번호, 클라이언트 컴퓨팅 장치 비밀 키, 사용자 ID 및 PIN 중 적어도 하나를 포함하는 것을 특징으로 하는 보안 통신 제공 방법.
  46. 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하는 방법으로서, 상기 클라이언트 컴퓨팅 장치와 서버는 네트워크에 연결되며, 상기 방법은,
    상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 전송하는 단계 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초함 - 를 포함하는, 보안 통신 제공 방법.
  47. 제 46 항에 있어서,
    상기 공통 키는 서버, 서버 팜 및 다수의 서버 팜 중 적어도 하나에 고유한 것을 특징으로 하는 보안 통신 제공 방법.
  48. 제 46 항에 있어서,
    상기 클라이언트 컴퓨팅 장치의 특성은 클라이언트 컴퓨팅 장치 전화 번호, SID, 클라이언트 컴퓨팅 장치 BREW 버전, 클라이언트 컴퓨팅 장치 하드웨어 ID, 클라이언트 컴퓨팅 장치 펌웨어 버전, 캐리어 ID, RUIM 카드 ID, MDN, MIN, 장치 네트워크 어드레스, 서비스 가입자 과금 계정 번호, 클라이언트 컴퓨팅 장치 비밀 키, 사용자 ID 및 PIN 중 적어도 하나를 포함하는 것을 특징으로 하는 보안 통신 제공 방법.
  49. 제 46 항에 있어서,
    상기 신호에 포함된 다수의 크리덴셜은 상기 네트워크를 통해 미리 수신된 것을 특징으로 하는 보안 통신 제공 방법.
  50. 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하는 방법으로서, 상기 클라이언트 컴퓨팅 장치와 서버는 네트워크에 연결되며, 상기 방법은,
    상기 클라이언트 컴퓨팅 장치로부터 상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 전송하는 단계 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 -
    상기 서버에서 상기 네트워크를 통해 상기 신호를 수신하는 단계; 및
    상기 서버에서 상기 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 신호의 진정성을 결정하는 단계를 포함하는, 보안 통신 제공 방법.
  51. 제 50 항에 있어서,
    상기 수신된 신호의 진정성은 상기 다수의 크리덴셜 중 상기 수신된 클라이언트 컴퓨팅 장치의 특성 및 고유 클라이언트 키에 모두 기초한 적어도 하나의 크리덴셜을 이용하여 결정되는 것을 특징으로 하는 보안 통신 제공 방법.
  52. 제 50 항에 있어서,
    상기 공통 키는 서버에 고유하며, 상기 신호의 진정성은 상기 다수의 크리덴셜 중 상기 수신된 클라이언트 컴퓨팅 장치의 특성 및 상기 서버에 고유한 공통 키에 모두 기초한 적어도 하나의 크리덴셜을 이용하여 결정되는 것을 특징으로 하는 보안 통신 제공 방법.
  53. 제 50 항에 있어서,
    상기 공통 키는 서버 팜에 고유하며, 상기 신호의 진정성은 상기 다수의 크리덴셜 중 상기 수신된 클라이언트 컴퓨팅 장치의 특성 및 상기 서버 팜에 고유한 공통 키에 모두 기초한 적어도 하나의 크리덴셜을 이용하여 결정되는 것을 특징으로 하는 보안 통신 제공 방법.
  54. 제 50 항에 있어서,
    상기 공통 키는 다수의 서버 팜에 고유하며, 상기 신호의 진정성은 상기 다수의 크리덴셜 중 상기 수신된 클라이언트 컴퓨팅 장치의 특성 및 상기 다수의 서버 팜에 고유한 공통 키에 모두 기초한 적어도 하나의 크리덴셜을 이용하여 결정되는 것을 특징으로 하는 보안 통신 제공 방법.
  55. 제 50 항에 있어서,
    상기 클라이언트 컴퓨팅 장치의 특성은 클라이언트 컴퓨팅 장치 전화 번호, SID, 클라이언트 컴퓨팅 장치 BREW 버전, 클라이언트 컴퓨팅 장치 하드웨어 ID, 클라이언트 컴퓨팅 장치 펌웨어 버전, 캐리어 ID, RUIM 카드 ID, MDN, MIN, 장치 네트워크 어드레스, 서비스 가입자 과금 계정 번호, 클라이언트 컴퓨팅 장치 비밀 키, 사용자 ID 및 PIN 중 적어도 하나를 포함하는 것을 특징으로 하는 보안 통신 제공 방법.
  56. 네트워크를 통한 클라이언트 컴퓨팅 장치와의 보안 통신들을 처리하는 서버로서,
    상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 수신하도록 구성된 로직 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 - ; 및
    상기 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 신호의 진정성을 결정하도록 구성된 로직을 포함하는, 서버.
  57. 제 56 항에 있어서,
    상기 신호의 진정성을 결정하도록 구성된 로직은 상기 다수의 크리덴셜 중 상기 수신된 클라이언트 컴퓨팅 장치의 특성 및 고유 클라이언트 키에 모두 기초한 적어도 하나의 크리덴셜을 이용하도록 구성되는 것을 특징으로 하는 서버.
  58. 제 56 항에 있어서,
    상기 공통 키는 서버에 고유한 것을 특징으로 하는 서버.
  59. 제 58 항에 있어서,
    상기 신호의 진정성을 결정하도록 구성된 로직은 상기 다수의 크리덴셜 중 상기 수신된 클라이언트 컴퓨팅 장치의 특성 및 상기 서버에 고유한 공통 키에 모두 기초한 적어도 하나의 크리덴셜을 이용하도록 구성되는 것을 특징으로 하는 서버.
  60. 제 56 항에 있어서,
    상기 공통 키는 서버 팜에 고유한 것을 특징으로 하는 서버.
  61. 제 60 항에 있어서,
    상기 신호의 진정성을 결정하도록 구성된 로직은 상기 다수의 크리덴셜 중 상기 수신된 클라이언트 컴퓨팅 장치의 특성 및 상기 서버 팜에 고유한 공통 키에 모두 기초한 적어도 하나의 크리덴셜을 이용하도록 구성되는 것을 특징으로 하는 서버.
  62. 제 56 항에 있어서,
    상기 공통 키는 다수의 서버 팜에 고유한 것을 특징으로 하는 서버.
  63. 제 62 항에 있어서,
    상기 신호의 진정성을 결정하도록 구성된 로직은 상기 다수의 크리덴셜 중 상기 수신된 클라이언트 컴퓨팅 장치의 특성 및 상기 다수의 서버 팜에 고유한 공통 키에 모두 기초한 적어도 하나의 크리덴셜을 이용하도록 구성되는 것을 특징으로 하는 서버.
  64. 제 56 항에 있어서,
    상기 클라이언트 컴퓨팅 장치의 특성은 클라이언트 컴퓨팅 장치 전화 번호, SID, 클라이언트 컴퓨팅 장치 BREW 버전, 클라이언트 컴퓨팅 장치 하드웨어 ID, 클라이언트 컴퓨팅 장치 펌웨어 버전, 캐리어 ID, RUIM 카드 ID, MDN, MIN, 장치 네트워크 어드레스, 서비스 가입자 과금 계정 번호, 클라이언트 컴퓨팅 장치 비밀 키, 사용자 ID 및 PIN 중 적어도 하나를 포함하는 것을 특징으로 하는 서버.
  65. 네트워크를 통한 서버와의 보안 통신들을 처리하는 클라이언트 컴퓨팅 장치로서,
    상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 전송하도록 구성된 로직 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초함 - 을 포함하는, 클라이언트 컴퓨팅 장치.
  66. 제 65 항에 있어서,
    상기 공통 키는 서버, 서버 팜 및 다수의 서버 팜 중 적어도 하나에 고유한 것을 특징으로 하는 클라이언트 컴퓨팅 장치.
  67. 제 65 항에 있어서,
    상기 클라이언트 컴퓨팅 장치의 특성은 클라이언트 컴퓨팅 장치 전화 번호, SID, 클라이언트 컴퓨팅 장치 BREW 버전, 클라이언트 컴퓨팅 장치 하드웨어 ID, 클라이언트 컴퓨팅 장치 펌웨어 버전, 캐리어 ID, RUIM 카드 ID, MDN, MIN, 장치 네트워크 어드레스, 서비스 가입자 과금 계정 번호, 클라이언트 컴퓨팅 장치 비밀 키, 사용자 ID 및 PIN 중 적어도 하나를 포함하는 것을 특징으로 하는 클라이언트 컴퓨팅 장치.
  68. 제 65 항에 있어서,
    상기 신호에 포함된 다수의 크리덴셜은 상기 네트워크를 통해 미리 수신된 것을 특징으로 하는 클라이언트 컴퓨팅 장치.
  69. 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하는 시스템으로서, 상기 클라이언트 컴퓨팅 장치와 서버는 네트워크에 연결되며, 상기 시스템은,
    상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 전송하도록 구성된 로직 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 - 을 포함하는 클라이언트 컴퓨팅 장치; 및
    상기 네트워크를 통해 상기 신호를 수신하고, 상기 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 신호의 진정성을 결정하도록 구성된 로직을 포함하는 서버를 포함하는, 보안 통신 제공 시스템.
  70. 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하도록 하나 이상의 프로세서들에 의해 실행가능한 컴퓨터 프로그램을 구현하는 컴퓨터 판독 가능 매체로서, 상기 클라이언트 컴퓨팅 장치와 서버는 네트워크에 연결되며, 상기 컴퓨터 판독 가능 매체는,
    상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 수신하도록 동작가능한 코드 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 - ; 및
    상기 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 신호의 진정성을 결정하도록 동작가능한 코드를 포함하는, 컴퓨터 판독 가능 매체.
  71. 제 70 항에 있어서,
    상기 신호의 진정성은 상기 다수의 크리덴셜 중 상기 수신된 클라이언트 컴퓨팅 장치의 특성 및 고유 클라이언트 키에 모두 기초한 적어도 하나의 크리덴셜을 이용하여 결정되는 것을 특징으로 하는 컴퓨터 판독 가능 매체.
  72. 제 70 항에 있어서,
    상기 공통 키는 서버에 고유한 것을 특징으로 하는 컴퓨터 판독 가능 매체.
  73. 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하도록 하나 이상의 프로세서들에 의해 실행가능한 컴퓨터 프로그램을 구현하는 컴퓨터 판독 가능 매체로서, 상기 클라이언트 컴퓨팅 장치와 서버는 네트워크에 연결되며, 상기 컴퓨터 판독 가능 매체는,
    상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 전송하도록 동작가능한 코드 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초함 - 를 포함하는, 컴퓨터 판독 가능 매체.
  74. 제 73 항에 있어서,
    상기 공통 키는 서버, 서버 팜 및 다수의 서버 팜 중 적어도 하나에 고유한 것을 특징으로 하는 컴퓨터 판독 가능 매체.
  75. 네트워크를 통한 클라이언트 컴퓨팅 장치와의 보안 통신들을 처리하는 서버로서,
    상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 수신하는 수단 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 -; 및
    상기 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 신호의 진정성을 결정하는 수단을 포함하는, 서버.
  76. 제 75 항에 있어서,
    상기 신호의 진정성을 결정하는 수단은 상기 다수의 크리덴셜 중 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초한 적어도 하나의 크리덴셜을 이용하도록 구성되는 것을 특징으로 하는 서버.
  77. 제 75 항에 있어서,
    상기 공통 키는 서버 팜에 고유한 것을 특징으로 하는 서버.
  78. 네트워크를 통한 서버와의 보안 통신들을 처리하는 클라이언트 컴퓨팅 장치로서,
    상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 전송하는 수단 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초함 - 을 포함하는, 클라이언트 컴퓨팅 장치.
  79. 제 78 항에 있어서,
    상기 공통 키는 서버, 서버 팜 및 다수의 서버 팜 중 적어도 하나에 고유한 것을 특징으로 하는 클라이언트 컴퓨팅 장치.
  80. 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하는 방법으로서, 상기 클라이언트 컴퓨팅 장치와 서버는 네트워크에 연결되며, 상기 방법은,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 수신하는 단계;
    다수의 크리덴셜들을 생성하는 단계 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 -;
    상기 네트워크를 통해 상기 다수의 크리덴셜들을 포함하는 신호를 전송하는 단계;
    상기 네트워크를 통해 상기 다수의 크리덴셜들을 포함하는 신호를 수신하는 단계; 및
    상기 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 수신된 신호의 진정성을 결정하는 단계를 포함하는, 보안 통신 제공 방법.
  81. 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하는 방법으로서, 상기 클라이언트 컴퓨팅 장치와 서버는 네트워크에 연결되며, 상기 방법은,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 전송하는 단계;
    상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 수신하는 단계 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초함 -; 및
    상기 네트워크를 통해 상기 수신된 다수의 크리덴셜들을 포함하는 신호를 전송하는 단계를 포함하는, 보안 통신 제공 방법.
  82. 네트워크를 통한 클라이언트 컴퓨팅 장치와의 보안 통신들을 처리하는 서버로서,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 수신하도록 구성된 로직;
    다수의 크리덴셜들을 생성하도록 구성된 로직 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 -;
    상기 네트워크를 통해 상기 다수의 크리덴셜들을 포함하는 신호를 전송하도록 구성된 로직;
    상기 네트워크를 통해 상기 다수의 크리덴셜들을 포함하는 신호를 수신하도록 구성된 로직; 및
    상기 수신된 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 다수의 크리덴셜을 포함하는 상기 수신된 신호의 진정성을 결정하도록 구성된 로직을 포함하는, 서버.
  83. 네트워크를 통한 서버와의 보안 통신들을 처리하는 클라이언트 컴퓨팅 장치로서,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 전송하도록 구성된 로직;
    상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 수신하도록 구성된 로직 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초함 -; 및
    상기 네트워크를 통해 상기 수신된 다수의 크리덴셜들을 포함하는 신호를 전송하도록 구성된 로직을 포함하는, 클라이언트 컴퓨팅 장치.
  84. 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하도록 하나 이상의 프로세서들에 의해 실행가능한 컴퓨터 프로그램을 구현하는 컴퓨터 판독 가능 매체로서, 상기 클라이언트 컴퓨팅 장치와 서버는 네트워크에 연결되며, 상기 컴퓨터 판독 가능 매체는,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 수신하도록 동작가능한 코드;
    다수의 크리덴셜들을 생성하도록 동작가능한 코드 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 -;
    상기 네트워크를 통해 상기 다수의 크리덴셜들을 포함하는 신호를 전송하도록 동작가능한 코드;
    상기 네트워크를 통해 상기 전송된 다수의 크리덴셜들을 포함하는 신호를 수신하도록 동작가능한 코드; 및
    상기 수신된 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 수신된 다수의 크리덴셜들을 포함하는 상기 수신된 신호의 진정성을 결정하도록 동작가능한 코드를 포함하는, 컴퓨터 판독 가능 매체.
  85. 클라이언트 컴퓨팅 장치와 서버 간에 보안 통신들을 제공하도록 하나 이상의 프로세서들에 의해 실행가능한 컴퓨터 프로그램을 구현하는 컴퓨터 판독 가능 매체로서, 상기 클라이언트 컴퓨팅 장치와 서버는 네트워크에 연결되며, 상기 컴퓨터 판독 가능 매체는,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 전송하도록 동작가능한 코드;
    상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 수신하도록 동작가능한 코드 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초함 -; 및
    상기 네트워크를 통해 상기 수신된 다수의 크리덴셜들을 포함하는 신호를 전송하도록 동작가능한 코드를 포함하는, 컴퓨터 판독 가능 매체.
  86. 네트워크를 통한 클라이언트 컴퓨팅 장치와의 보안 통신들을 처리하는 서버로서,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 수신하는 수단;
    다수의 크리덴셜들을 포함하는 신호를 생성하는 수단 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 수신된 특성들 및 공통 키 모두에 기초함 -;
    상기 네트워크를 통해 상기 다수의 크리덴셜들을 포함하는 신호를 전송하는 수단;
    상기 네트워크를 통해 상기 전송된 다수의 크리덴셜들을 포함하는 신호를 수신하는 수단; 및
    상기 수신된 다수의 크리덴셜들 중 임의의 크리덴셜의 선택적인 인증을 기초로 상기 수신된 다수의 크리덴셜들을 포함하는 상기 수신된 신호의 진정성을 결정하는 수단을 포함하는, 서버.
  87. 네트워크를 통한 서버와의 보안 통신들을 처리하는 클라이언트 컴퓨팅 장치로서,
    상기 네트워크를 통해 상기 클라이언트 컴퓨팅 장치의 특성들을 포함하는 신호를 전송하는 수단;
    상기 네트워크를 통해 다수의 크리덴셜들을 포함하는 신호를 수신하는 수단 - 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 고유 클라이언트 키 모두에 기초하고, 상기 다수의 크리덴셜들 중 적어도 하나는 상기 클라이언트 컴퓨팅 장치의 특성들 및 공통 키 모두에 기초함 -; 및
    상기 네트워크를 통해 상기 수신된 다수의 크리덴셜들을 포함하는 신호를 전송하는 수단을 포함하는, 클라이언트 컴퓨팅 장치.
KR1020077012003A 2004-10-29 2005-10-27 다중 크리덴셜 인증 프로토콜을 제공하는 시스템 및 방법 KR100944065B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/976,391 2004-10-29
US10/976,391 US7784089B2 (en) 2004-10-29 2004-10-29 System and method for providing a multi-credential authentication protocol

Publications (2)

Publication Number Publication Date
KR20070073943A KR20070073943A (ko) 2007-07-10
KR100944065B1 true KR100944065B1 (ko) 2010-02-24

Family

ID=36263672

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020077012003A KR100944065B1 (ko) 2004-10-29 2005-10-27 다중 크리덴셜 인증 프로토콜을 제공하는 시스템 및 방법

Country Status (10)

Country Link
US (2) US7784089B2 (ko)
EP (1) EP1805932B1 (ko)
JP (1) JP4685876B2 (ko)
KR (1) KR100944065B1 (ko)
CN (1) CN101091156B (ko)
AR (1) AR051943A1 (ko)
BR (1) BRPI0517261A (ko)
PE (1) PE20060898A1 (ko)
TW (1) TW200640220A (ko)
WO (1) WO2006050074A2 (ko)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7784089B2 (en) * 2004-10-29 2010-08-24 Qualcomm Incorporated System and method for providing a multi-credential authentication protocol
US8117452B2 (en) * 2004-11-03 2012-02-14 Cisco Technology, Inc. System and method for establishing a secure association between a dedicated appliance and a computing platform
US8700729B2 (en) 2005-01-21 2014-04-15 Robin Dua Method and apparatus for managing credentials through a wireless network
CN100385983C (zh) * 2005-01-30 2008-04-30 华为技术有限公司 一种密钥设置方法
KR100753281B1 (ko) * 2005-02-28 2007-08-29 주식회사 팬택앤큐리텔 Ruim 카드 인증 방법
US20070067303A1 (en) * 2005-09-21 2007-03-22 Jukka Linjama System and method for user interaction
CN101102180B (zh) * 2006-07-03 2010-08-25 联想(北京)有限公司 基于硬件安全单元的系统间绑定及平台完整性验证方法
US8327456B2 (en) * 2007-04-13 2012-12-04 Microsoft Corporation Multiple entity authorization model
US7992198B2 (en) * 2007-04-13 2011-08-02 Microsoft Corporation Unified authentication for web method platforms
US20110191843A1 (en) * 2007-11-20 2011-08-04 Kantan Inc. Universal device id registry, back-end, and self-verification architecture
US8353026B2 (en) 2008-10-23 2013-01-08 Dell Products L.P. Credential security system
EP2228746A1 (en) * 2009-03-13 2010-09-15 Assa Abloy Ab Realization of access control conditions as boolean expressions in credential authentications
WO2010105259A1 (en) * 2009-03-13 2010-09-16 Assa Abloy Ab Secure card access module for integrated circuit card applications
WO2010105260A1 (en) * 2009-03-13 2010-09-16 Assa Abloy Ab Transfer device for sensitive material such as a cryptographic key
US9032058B2 (en) 2009-03-13 2015-05-12 Assa Abloy Ab Use of SNMP for management of small footprint devices
US20100235900A1 (en) * 2009-03-13 2010-09-16 Assa Abloy Ab Efficient two-factor authentication
US8332498B2 (en) * 2009-03-13 2012-12-11 Assa Abloy Ab Synchronized relay messaging and coordinated network processing using SNMP
US20100241850A1 (en) * 2009-03-17 2010-09-23 Chuyu Xiong Handheld multiple role electronic authenticator and its service system
JP5519773B2 (ja) 2009-04-15 2014-06-11 インターデイジタル パテント ホールディングス インコーポレイテッド ネットワークとの通信のためのデバイスの正当化および/または認証
US8433296B2 (en) 2009-05-01 2013-04-30 Ryan Hardin Exclusive delivery of content within geographic areas
US8656473B2 (en) * 2009-05-14 2014-02-18 Microsoft Corporation Linking web identity and access to devices
US9667423B2 (en) 2010-09-27 2017-05-30 Nokia Technologies Oy Method and apparatus for accelerated authentication
US9300494B2 (en) 2011-07-26 2016-03-29 Microsoft Technology Licensing, Llc Matching client device to appropriate data package
US8640210B2 (en) 2011-09-01 2014-01-28 Microsoft Corporation Distributed computer systems with time-dependent credentials
US9058467B2 (en) 2011-09-01 2015-06-16 Microsoft Corporation Distributed computer systems with time-dependent credentials
US9032492B2 (en) 2011-09-01 2015-05-12 Microsoft Corporation Distributed computer systems with time-dependent credentials
US9100277B2 (en) * 2012-08-28 2015-08-04 Alcatel Lucent Client credentials data structure and method of employing the same
JP5880401B2 (ja) * 2012-11-15 2016-03-09 富士ゼロックス株式会社 通信装置及びプログラム
CN103034789B (zh) * 2012-12-10 2015-07-08 山东中创软件商用中间件股份有限公司 一种组件部署方法、装置及安全框架
US11907496B2 (en) * 2013-02-08 2024-02-20 cloudRIA, Inc. Browser-based application management
CN105592014B (zh) * 2014-10-24 2019-02-15 阿里巴巴集团控股有限公司 一种可信终端验证方法、装置
EP3043284A1 (en) 2015-01-12 2016-07-13 Huawei Technologies Co., Ltd. Software handling device, server system and methods thereof
US10785219B1 (en) * 2015-11-16 2020-09-22 EMC IP Holding Company LLC Methods, systems, and computer readable mediums for securely establishing credential data for a computing device
US11030609B2 (en) * 2017-02-17 2021-06-08 Apple Inc. Preventing duplicate wireless transactions
CN109150844B (zh) * 2018-07-26 2021-07-27 网易(杭州)网络有限公司 确定数字证书的方法、装置和系统
GB2578864B (en) * 2018-09-24 2022-09-21 Metrarc Ltd Trusted ring

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6256733B1 (en) * 1998-10-08 2001-07-03 Entrust Technologies Limited Access and storage of secure group communication cryptographic keys
US20040049697A1 (en) * 2002-03-28 2004-03-11 International Business Machines Corporation Methods and systems authenticating a user's credentials against multiple sets of credentials
US20040054899A1 (en) * 2002-08-30 2004-03-18 Xerox Corporation Apparatus and methods for providing secured communication

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3362780B2 (ja) * 1999-12-15 2003-01-07 日本電信電話株式会社 通信システムにおける認証方法、センタ装置、認証プログラムを記録した記録媒体
CN1249972C (zh) * 2000-06-05 2006-04-05 凤凰技术有限公司 使用多个服务器的远程密码验证的系统和方法
EP1168750A1 (de) * 2000-06-30 2002-01-02 Schnakenberg, Dieter Verfahren zum anonymen Zusichern von Eigenschaften eines Benutzers in einem Computernetzwerk
US7107248B1 (en) * 2000-09-11 2006-09-12 Nokia Corporation System and method of bootstrapping a temporary public-key infrastructure from a cellular telecommunication authentication and billing infrastructure
GB2384331A (en) 2002-01-19 2003-07-23 Hewlett Packard Co Access control using credentials
JP2003233590A (ja) * 2002-02-08 2003-08-22 Hitachi Ltd 移動追従型サービス提供方法、システム及びプログラム
US20030188193A1 (en) * 2002-03-28 2003-10-02 International Business Machines Corporation Single sign on for kerberos authentication
JP3924502B2 (ja) 2002-07-04 2007-06-06 富士通株式会社 モバイル通信方法およびモバイル通信システム
JP2004094539A (ja) * 2002-08-30 2004-03-25 Ntt Docomo Inc 携帯通信端末及び情報送受信方法
CN1447269A (zh) * 2003-04-10 2003-10-08 深圳市深信服电子科技有限公司 基于硬件特征的证书认证系统和方法
US20050039016A1 (en) * 2003-08-12 2005-02-17 Selim Aissi Method for using trusted, hardware-based identity credentials in runtime package signature to secure mobile communications and high-value transaction execution
US7373502B2 (en) * 2004-01-12 2008-05-13 Cisco Technology, Inc. Avoiding server storage of client state
US7784089B2 (en) * 2004-10-29 2010-08-24 Qualcomm Incorporated System and method for providing a multi-credential authentication protocol
EP1926278B1 (en) * 2006-11-22 2009-04-01 Research In Motion Limited System and method for secure record protocol using shared knowledge of mobile user credentials

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6256733B1 (en) * 1998-10-08 2001-07-03 Entrust Technologies Limited Access and storage of secure group communication cryptographic keys
US20040049697A1 (en) * 2002-03-28 2004-03-11 International Business Machines Corporation Methods and systems authenticating a user's credentials against multiple sets of credentials
US20040054899A1 (en) * 2002-08-30 2004-03-18 Xerox Corporation Apparatus and methods for providing secured communication

Also Published As

Publication number Publication date
US7784089B2 (en) 2010-08-24
EP1805932A2 (en) 2007-07-11
EP1805932B1 (en) 2018-08-08
CN101091156B (zh) 2010-09-29
EP1805932A4 (en) 2016-11-30
WO2006050074A3 (en) 2007-05-31
JP2008519488A (ja) 2008-06-05
WO2006050074A2 (en) 2006-05-11
CN101091156A (zh) 2007-12-19
US9231763B2 (en) 2016-01-05
KR20070073943A (ko) 2007-07-10
AR051943A1 (es) 2007-02-21
US20060095957A1 (en) 2006-05-04
PE20060898A1 (es) 2006-09-23
TW200640220A (en) 2006-11-16
US20100325708A1 (en) 2010-12-23
BRPI0517261A (pt) 2008-10-07
JP4685876B2 (ja) 2011-05-18
WO2006050074B1 (en) 2007-07-12

Similar Documents

Publication Publication Date Title
KR100944065B1 (ko) 다중 크리덴셜 인증 프로토콜을 제공하는 시스템 및 방법
KR101089353B1 (ko) 클라이언트 구동 서버측 설치를 위한 장치 및 방법
KR100919536B1 (ko) 복제된 디바이스를 식별하기 위해 동적 자격 증명을사용하는 시스템 및 방법
RU2322763C2 (ru) Способы и аппарат для обеспечения верительных данных прикладных программ
JP2000059440A (ja) 特定idコ―ドに基づくデ―タ転送検証
MX2014009822A (es) Metodos y aparato para distribucion a gran escala de clientes de acceso electronico.
US11564094B1 (en) Secondary device authentication proxied from authenticated primary device
US11665532B2 (en) Securing private wireless gateways
KR101041761B1 (ko) 디바이스 무결성을 판정하는 방법 및 장치
JP2009512928A (ja) 移動体端末のセキュア認証レスポンスの装置、コンピュータプログラムプロダクト及び方法
KR20040058595A (ko) 인증키를 통해 통신객체를 인증할 수 있는 이동통신단말기, 그리고 상기 인증키의 관리 방법 및 장치

Legal Events

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

Payment date: 20130130

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140129

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150129

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20151230

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170704

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee