KR20120101523A - 안전한 멀티 uim 인증 및 키 교환 - Google Patents

안전한 멀티 uim 인증 및 키 교환 Download PDF

Info

Publication number
KR20120101523A
KR20120101523A KR1020127017561A KR20127017561A KR20120101523A KR 20120101523 A KR20120101523 A KR 20120101523A KR 1020127017561 A KR1020127017561 A KR 1020127017561A KR 20127017561 A KR20127017561 A KR 20127017561A KR 20120101523 A KR20120101523 A KR 20120101523A
Authority
KR
South Korea
Prior art keywords
key
session keys
randc
random nonce
client
Prior art date
Application number
KR1020127017561A
Other languages
English (en)
Other versions
KR101485230B1 (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 KR20120101523A publication Critical patent/KR20120101523A/ko
Application granted granted Critical
Publication of KR101485230B1 publication Critical patent/KR101485230B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/162Implementing security features at a particular protocol layer at the data link layer
    • 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
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3242Cryptographic 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 using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • 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/3271Cryptographic 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 using challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • 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/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/40Security arrangements using identity modules
    • H04W12/45Security arrangements using identity modules using multiple identity modules

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)
  • Power Engineering (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

일 실시예에서, 장치는 제1 랜덤 넌스(RAND) 및 인증 토큰을 수신하는 것에 의해 인증 키 합의 프로토콜을 수행하는 통신 장치 컴포넌트를 포함하고, 상기 통신 장치 컴포넌트는 공유된 비밀 키를 구비한다. 상기 통신 장치 컴포넌트는 제1 랜덤 넌스(RAND) 및 공유된 비밀 키에 의사 랜덤 함수를 적용함으로써 유도 키(derivation key)를 생성한다. 상기 통신 장치 컴포넌트는 제2 랜덤 넌스(RANDC) 및 유도 키에 기초하여 제1 세트의 세션 키를 생성하며, 상기 제1 세트의 세션 키는 통신들을 암호화하는데 사용된다.

Description

안전한 멀티 UIM 인증 및 키 교환{SECURE MULTI-UIM AUTHENTICATION AND KEY EXCHANGE}
본 발명은 일반적으로는 통신 장치의 인증 시의 인증과 안전한 키 합의(secure key agreement)에 관한 것이며, 더 구체적으로는 확장형 인증 프로토콜(extensible authentication protocol, EAP), 즉, 가입자들이 복수의 사용자 식별 모듈을 사용할 때의 인증 및 키 합의(AKA)에 관한 것이다.
통신 산업에 있어서 안전한 거래를 제공하는 것의 필요성은 널리 인정되고 있다. 만약 서비스 제공자가 안전한 거래를 지원하는 시스템을 제공할 수 없다면, 가입자들은 구매를 위해서나 안전하게 실행되어야 하는 다른 모든 비즈니스를 수행하는데에 있어서 무선 장치를 사용하지 않을 것이다. 따라서, 통신 산업은 가입자들이 개인적 거래 또는 비즈니스 거래를 안전하게 수행할 수 있는 안전한 환경을 제공하려고 지속적으로 시도하고 있다. 예를 들어, 유니버설 모바일 통신 시스템(Universal Mobile Telecommunications System, UMTS) 표준이 인증 키 합의(AKA) 및 확장형 인증 프로토콜(EAP)-AKA를 지원한다는 것은 주지의 사실이다.
AKA 및 EAP에 있어서, 통신 장치는 공유된 비밀 키를 사용하여 인증된다. 공유된 비밀 키는 통신 장치의 일부인 사용자 신원 모듈(User Identity Module, UIM)에 유지될 수 있다. 네트워크에 유지되는 통신 장치 및 서버는, 통신 장치와 액세스 네트워크 사이에 안전한 통신 링크를 보증하기 위해 비밀 키를 이용하여 다른 다양한 키들을 처리할 수 있다. 오직 하나의 UIM만 있는 경우 이러한 패러다임은 원활히 동작한다.
그러나, 가입자들은 전형적으로 둘 이상의 통신 장치를 가지고 있다. 예를 들어, 하나의 가입자가 휴대용 전화기, 개인 휴대 정보 단말기(personal digital assistant), 휴대용 컴퓨터, 및 다른 통신 장치들을 가질 수 있다. 이러한 장비 각각은 액세스 네트워크를 통해 무선 서비스를 수신할 수 있다. 또한, 이러한 장비 각각은 안전한 거래를 제공하도록 인증받을 필요가 있다. 복수의 통신 장치를 갖는 가입자를 지원하기 위한 효율적인 방법은 가입자에게 가입자 소유의 각각의 장치들에 대한 UIM 카드 - 이때, 각각의 UIM 카드는 동일한 공유된 비밀 키를 가짐 - 를 제공하는 것이다. 그러나, 만약 가입자가 복수의 UIM을 가지는 경우, AKA 및 EAP-AKA 프로토콜에는 보안상의 취약점(security hole)이 오픈되게 된다. 만약 서비스 제공자가 안전한 통신 링크를 제공하고 가입자가 동일한 공유된 비밀 키를 갖는 복수의 UIM 카드를 갖는 것을 허용하고 싶다면, 복수의 UIM 카드를 갖는 것과 연관된 보안상의 취약점이 언급되어야 한다.
가입자가 복수의 UIM을 가지는 경우, AKA 및 EAP-AKA 프로토콜에는 보안상의 취약점(security hole)을 해결할 수 있는 장치 및 방법을 제공한다.
일 실시예에서 장치가 제공된다. 상기 장치는 제1 랜덤 넌스(RAND) 및 인증 토큰을 수신하여 인증 키 합의 프로토콜(authentication key agreement protocol)을 실행하는 통신 장치 컴포넌트를 포함하고, 통신 장치 컴포넌트는 공유된 비밀 키(shared secret key)를 구비한다. 통신 장치 컴포넌트는 RAND 및 공유된 비밀 키에 의사 랜덤 함수(pseudo random function)를 적용함으로써 유도 키(derivation key)를 생성한다. 통신 장치 컴포넌트는 제2 랜덤 넌스(RANDC) 및 유도 키에 기초하여 제1 세트의 세션 키(session key)를 생성하고, 이 제1 세트의 세션 키는 통신들을 암호화하는데 사용된다.
다른 실시예에서는 장치가 제공된다. 상기 장치는 응답(response)과 제1 랜덤 넌스(RANDC)를 수신하도록 구성된다. 상기 장치는 또한 클라이언트 식별자(client identifier)에 기초하여 유도 키를 검색하고 유도 키 및 RANDC로부터의 기대 응답(expected response)을 계산하도록 구성된다. 나아가, 상기 장치는 응답과 기대 응답을 비교하여 상기 응답이 상기 기대 응답과 동일한 경우, 제1 세트의 세션 키를 유도하며, 이 제1 세트의 세션 키는 제2 세트의 세션 키와 함께 암호화된 통신을 실행하기 위해 사용된다.
또 다른 실시예에서는 방법이 제공된다. 상기 방법은 제1 랜덤 넌스(RAND), 제1 유도 키 및 인증 토큰을 포함하는 인증 벡터(authentication vector)를 수신하는 단계를 포함한다. 상기 방법은 또한 RAND 및 인증 토큰을 포함하는 인증 요청 메시지를 전송하는 단계와, 제2 랜덤 넌스(RANDC) 및 응답을 수신하는 단계를 포함한다. 상기 방법은 RANDC 및 제1 유도 키에 기초하여 제1 세트의 세션 키를 유도하는 단계를 더 포함하며, 이 제1 세트의 세션 키는 통신들을 암호화하는데에 사용된다.
가입자가 복수의 UIM을 가지는 경우, AKA 및 EAP-AKA 프로토콜에는 보안상의 취약점(security hole)을 극복할 수 있는 장치 및 방법을 제공할 수 있다.
본 발명에 의해 구현되는 실시예들의 특징은 발명의 상세한 설명, 청구항 및 이하의 도면들에 의해 명확해질 것이다.
도 1은 종래의 인증 및 키 합의 프로토콜에 따른 메시지 플로우의 한 구현 예를 나타내는 도면이다.
도 2(a) 및 도 2(b)는 종래의 인증 및 키 합의 프로토콜과 관련된 처리 방법을 나타내는 도면이다.
도 3은 안전한 복수의 UIM 인증 및 키 교환 프로토콜을 위한 메시지 플로우의 한 예를 나타내는 도면이다.
도 4(a) 및 도 4(b)는 안전한 복수의 UIM 인증 및 키 교환 프로토콜의 실시예와 관련되는 처리 방법을 나타내는 도면이다.
도 5는 안전한 복수의 UIM 인증 키 교환 방법의 실시예를 나타내기 위한 예시적인 플로우 차트이다.
도 1을 참조하면, 메시지 플로우(100)은 안전한 액세스 채널을 제공하기 위한 AKA/EAP-AKA 메시지 플로우의 일례를 도시하고 있다. 간결한 설명의 목적으로 AKA만이 설명되지만, AKA에 관한 모든 설명은 AKA/EAP에도 적용된다. AKA 인증 프로토콜은 미리 공유된 또는 공유된 비밀 키(PSK)를 가지는 프로토콜 내의 특정 참가자들에 기초하는 키 교환(key exchange, KE) 프로토콜이다. 프로토콜 내의 주요 참가자들은 전형적으로 서빙 네트워크(S, 110)로의 액세스를 요청하는 통신 장치 또는 클라이언트(C, 105)이다. 서빙 네트워크는 홈 네트워크(home network)이거나 클라이언트가 방문하는 네트워크일 수 있다. 후술하는 바와 같이, 메시지들은 서빙 네트워크(110)로 전송된다. 일 실시예에서 이러한 메시지들은 홈 위치 레지스터(home location register), 방문자 위치 레지스터, 또는 서빙 네트워크의 다른 컴포넌트로 보내질 수 있다. 실시예에서는 이러한 메시지들이 서빙 네트워크의 특정 노드로 보내질 수 있지만, 이후에서는 일반적으로 메시지들이 서빙 네트워크(110)로 보내진다고 설명하도록 한다. 서빙 네트워크(110)은 전형적으로 클라이언트(105) 및 키 서버(KS, 115)와 상호작용한다. 키 서버(115)는 전형적으로 클라이언트(105)의 홈 네트워크에 위치한다.
클라이언트(105)가 네트워크(110)에 액세스할 때, 클라이언트(105)는 서빙 네트워크(110)로 액세스 요청(120)을 전송할 수 있다. 액세스 요청(120)은 클라이언트 장치(모바일 통신 장치)의 파워 업(powering up), 데이터를 버스트(burst)하고자 하는 요청, 또는 클라이언트(105)가 서빙 네트워크(110)와 연결을 설정하고자 하는 다른 이유에 기인할 수 있다. 클라이언트(105)와 키 서버(115)는 네트워크를 통해 데이터를 안전하게 전송하기 위해 사용되는 무결성 키(Integrity key, IK) 및 암호 키(cipher key, CK)를 생성한다. 무결성 키(IK)와 암호 키(CK)는 전형적으로 공유된 비밀 키를 사용하여 생성된다. 공유된 비밀 키는 대기(air)를 통해 서빙 네트워크(110)로 전송되지 않는다. 오히려 공유된 비밀 키는 전형적으로 키 서버(115)에 저장된다. 또한, 공유된 비밀 키는 키 서버(115)로부터 서빙 네트워크로 전송되지 않는다. 오히려 키 서버(115)는 다양한 변수들을 포함하는 인증 벡터(AV)를 서빙 네트워크(110)로 전송한다. 서빙 네트워크(110)는 인증 벡터의 내용(contents)을 사용하여 클라이언트(105)를 인증하고 클라이언트(105)와 서빙 네트워크(110) 사이에 안전한 채널을 설정한다. 따라서, 클라이언트(105)가 서빙 네트워크(110)에 접속할 때, 서빙 네트워크(110)는 키 서버(115)의 위치를 결정하고 인증 데이터 요청 메시지(122)를 키 서버(115)로 전송한다.
인증 데이터 요청(122)을 수신하면 키 서버(115)는 클라이언트(105)의 신원에 기초하여 공유된 비밀 키를 검색(look up)하고 인증 벡터 내에 사용될 값들을 결정한다. 일 실시예에서, 인증 벡터는 랜덤 넌스(RAND), 기대 응답(XRES), 암호 키(CK), 무결성 키(IK) 및 인증 토큰(AUTN)의 연속으로 포함할 수 있다. 이러한 값들에 이르기 위해서, 키 서버(115)는 의사 랜덤 함수(pseudo random functions) f1 내지 f5를 사용할 수 있다. 이러한 함수들은 상이한 의사 랜덤 함수들이거나, AES와 같은 동일한 함수일 수 있다. 함수 호출이 행해질 때 유일 함수 원칙(function-unique argument)은 지켜져야(prepended) 한다. 즉, 예를 들어, fi(x)=AES(i,x)이다. 여기서, 의사 랜덤 함수는 AES, 해쉬 함수, 의사 랜덤 함수, 라인달(Rijndael), 또는 다른 의사 랜덤 함수나 준-의사 랜덤 함수(quasi-pseudo random function)를 가리킨다.
인증 벡터(AV)를 포함하는 값들을 유도하는 데에 있어서, 랜덤 넌스(RAND), 시퀀스 숫자(SQN), 익명성 키(anonymity key, AK) 및 메시지 인증 코드(MAC)가 인증 벡터(AV)의 다른 변수들을 계산하는 데에 사용될 수 있다. 키 서버(115)는 랜덤 넌스(RAND)와 시퀀스 숫자(SQN)을 생성할 수 있다. 랜덤 넌스(RAND)는 예를 들어 시퀀스 숫자(SQN)와 같은 다양한 변수들을 사용하여 생성될 수 있다. 시퀀스 숫자(SQN)는 일시적 인증 벡터(one-time AV)들을 지속적으로 파악하는데 사용되고, 클라이언트(105)가 재현(replay)을 감지할 수 있도록 돕는다. 익명성 키(AK)는 f5k를 사용하여 생성되는 선택적인 파라미터이다. 추후의 설명에 있어서, 익명성 키(AK)가 사용되지 않고 따라서 f5k = 0이라고 가정한다. 인증 관리 필드(AMF)는 메시지 인증 코드(MAC)를 계산하는데에도 관련된다. 본 기술분야의 통상적인 지식을 가진 자라면, 인증 관리 필드(AMF)가 타임아웃 값(timeout value)들과 같은 기술적 파라미터를 선택하기 위해 전형적으로 사용된다는 것을 용이하게 이해할 수 있을 것이다. 시퀀스 숫자(SQN), 랜덤 넌스(RAND) 및 인증 관리 필드(AMF)가 주어지면 메시지 인증 코드(MAC)가 함수 f1k를 통해 유도될 수 있으며, 여기서, MAC = f1k(SQN || RAND || AMF)이고, f1k에서의 k는 공유된 비밀 키(PSK)이다.
나아가, 기대 응답(XRES)은 f2k를 사용하여 유도될 수 있으며, XRES=f2k(RAND)이다. 암호 키(CK)는 f3k를 사용하여 유도될 수 있으며, CK=f3k(RAND)이다. 무결성 키(IK)는 f4k를 사용하여 유도될 수 있으며, IK=f4k(RAND)이다. 선택적인 익명성 키(AK)는 f5k를 사용하여 유도될 수 있으며, AK=f5k(RAND)이다. 또한, AUTN = SQN
Figure pct00001
NAK ∥ AMF ∥ MAC 이다. 인증 벡터(AV)는 랜덤 넌스(RAND), 기대 응답(XRES), 암호 키(CK), 무결성 키(IK) 및 인증 토큰(AUTN)의 연속으로 구성되며, 이에 따라서, AV = RAND || XRES || CK || IK || AUTN 이다. 키 서버(115)에서 사용되는 계산 방법을 설명하기 위해 도 2(a)를 참조한다. 인증 벡터(AV)(125)는 키 서버(115)로부터 서빙 네트워크(110)로 전송된다. 인증 벡터(AV)(125)를 수신한 후, 서빙 네트워크는 암호 키(CK) 및 무결성 키(IK)를 저장할 수 있고, 인증 요청(130)을 클라이언트(105)에게 전송할 수 있다. 인증 요청(130)은 키 서버(115)에 의해 계산된 랜덤 넌스(RAND) 및 인증 토큰(AUTN)을 포함할 수 있다.
인증 요청(130)을 수신한 후, 클라이언트는 무결성 키(IK) 및 암호 키(CK)를 유도하려고 시도할 수 있다. 클라이언트(105)는 인증 요청(130) 내의 랜덤 넌스(RAND) 및 인증 토큰(AUTN)을 수신하였다. 실시예에서는 익명성 키(AK)가 0인 것이 사용되었으므로, AUTN = SQN || AMF || MAC 이다. 클라이언트(105)가 익명성 키(AK)를 유도하는데 사용하는 공유된 비밀 키(k)를 구비하므로, 도 2(b)에 도시된 것처럼, 클라이언트(105)는 응답(RES), 암호 키(CK), 무결성 키(IK), 및 기대 메시지 인증 코드(XMAC)를 유도할 수 있다. 클라이언트(105)는 시퀀스 숫자(SQN)의 유효성을 검사하고 메시지 인증 코드(MAC)가 기대 메시지 인증 코드(XMAC)와 동일한지 확인(verify)한다. 만약 검사가 통과되면, 클라이언트는 AKA가 성공하였다고 가정하고, 클라이언트는 서빙 네트워크(110)와의 안전한 통신에 유도된 암호 키(CK) 및 무결성 키(IK)를 사용한다. 또한, 클라이언트(105)는 응답(RES)을 계산하여 서빙 네트워크(110)에 챌린지(challenge)하기 위해 전송한다. 서빙 네트워크(110)는 RES = XRES 인지를 확인하고, 만약 그렇다면, AKA가 성공하였다고 가정하고, 통신에 암호 키(CK) 및 무결성 키(IK)를 사용한다. 이것이 AKA가 3rd Generation Partnership Project(3GPP) 표준에 따라 어떻게 동작하는지에 대한 개관이다.
앞서 설명한 바와 같이, 가입자가 네트워크에 접속하기 위해 사용하는 장치의 수가 증가함에 따라, 서비스 제공자는 가입자의 각각의 장비들에 대해 사용자 신원 모듈(UIM)을 발행하고 싶어할 수 있으며, 여기서 각각의 사용자 신원 모듈(UIM)은 동일한 공유된 비밀 키를 가진다. 3GPP 표준은 동일한 공유된 비밀 키를 갖는 복수의 사용자 신원 모듈(UIM)을 허용한다는 것을 주목해야 한다. 그러나, 보안의 취약성은, 하나의 가입자가 복수의 장치를 가지는 환경에서 주지의 키 교환 프로토콜이 사용되며, 각각의 장치가 각자 동일한 공유된 비밀 키를 갖는 사용자 신원 모듈(UIM)을 가지는 경우에 발생한다. 이러한 보안의 취약성을 설명하는 두 가지 공격 시나리오(attack scenario)를 이하 설명하겠다.
첫번째 시나리오에서, 제1 클라이언트(C1) 및 제2 클라이언트(C2)가 서빙 네트워크에 접속하기 위해 시도한다. 여기서 제1 클라이언트(C1) 및 제2 클라이언트(C2)는 동일한 가입자에게 소유되는 장치이며 각각의 장치는 각자 사용자 신원 모듈(UIM)을 가진다. 따라서, 제1 클라이언트(C1)는 UIM1을 가지고, 제2 클라이언트(C2)는 UIM2를 가지고, UIM1과 UIM2는 동일한 공유된 비밀 키를 가진다. 키 교환 프로토콜의 일부로서 서빙 네트워크는 랜덤 넌스(RAND) 및 인증 토큰(AUTN)을 제1 클라이언트(C1)에게 전송할 수 있고, 적대자(adversary, A)가 이를 불법적으로 수집(overhear)한다. 제2 클라이언트(C2)는 서빙 네트워크와 연결을 설정하도록 시도할 수 있다. 그러나 적대자(A)는 제2 클라이언트(C2)의 서빙 네트워크와의 통신을 차단할 수 있으며 불법적으로 수집된 랜덤 넌스(RAND) 및 인증 토큰(AUTN)을 제2 클라이언트(C2)에게 반복적으로 전송(repeat)할 수 있다. 제1 클라이언트(C1) 및 제2 클라이언트(C2)는 동일한 세션 키인 암호 키(CK) 및 무결성 키(IK)를 유도할 것이다. 제1 클라이언트(C1) 및 제2 클라이언트(C2)는 그들이 서빙 네트워크와 이제 안전하게 통신하고 있다고 여길 것이지만, 제1 클라이언트(C1) 및 제2 클라이언트(C2)는 동일한 세션 키를 사용하여 연결된다. 이 시나리오에서, 적대자(A)는 클라이언트(C)의 계좌에 의도되지 않은 거래를 생성할 수 있다. 예를 들어, 만약 제1 클라이언트(C1)에 의해 실행된 거래가 제1 클라이언트(C1)의 사용자 신원 모듈(UIM)에 의해 유지되는 계좌의 데빗(debit)과 연관된다면, 적대자(A)는 이 거래를 제2 클라이언트(C2)에게 재현(replay)할 수 있다(이것은 제2 클라이언트(C2)가 제1 클라이언트(C1)와 동일한 세션 키를 가지기 때문에 가능하다). 이러한 재현은 제2 클라이언트(C2)의 사용자 신원 모듈(UIM)의 대응되는 데빗에 영향을 끼칠 수 있으며, 이는 비의도적인 거래이자 성공적인 공격임이 명백하다.
두번째 시나리오는 적대자(A)가 공유된 비밀 키를 포함하는 클라이언트(C)의 장비 중 하나를 빌리는(또는 캡처하거나 불법적으로 접근(compromise)하는) 경우 발생할 수 있다. 비밀 키는 사용자 신원 모듈(UIM)에 안전하게 저장되어 있다. 그러나 사용자 신원 모듈(UIM)에 의해 생성된 세션 키는 제2 클라이언트(C2)의 주 메모리로 전송된다. 제2 클라이언트(C2)가 불법적으로 접근되었다고 가정하면, 적대자(A)는 제1 클라이언트를 목표로 하는 랜덤 넌스(RAND) 및 인증 토큰(AUTN)을 불법적으로 수집하고, 이 랜덤 넌스(RAND) 및 인증 토큰(AUTN)을 제2 클라이언트(C2)의 사용자 신원 모듈(UIM)로 포워딩한다. 제2 클라이언트(C2)의 사용자 신원 모듈(UIM)은 세션 키인 무결성 키(IK) 및 암호 키(CK)를 생성하고, 이들 세션 키를 주 메모리에 위치시킨다. 이들 세션 키가 제1 클라이언트(C1)에 의해 생성된 세션 키와 동일하다는 점에 주목해야 한다. 이제 적대자(A)는 서빙 네트워크와 제1 클라이언트(C1) 사이에 설정된 안전한 세션을 제어할 수 있다.
복수의 UIM을 갖는 AKA를 사용함에 있어서, 상술된 취약성을 극복하기 위한 하나의 방법은, 설정된 세션 키들의 랜덤성을 클라이언트가 생성하고 클라이언트가 이에 기여하도록 하는 것이다. 이것은 이미 설정된 암호 키(CK) 및 무결성 키(IK)를 매개 키(intermediate key)로 사용하고, 사용자 신원 모듈에 의해 샘플된 랜덤성에 기초하여 세션 키를 유도하는 것에 의해 수행될 수 있다. 이러한 방법과 관련한 메시지 플로우는 도 3에 묘사되어 있다.
복수의 UIM AKA 프로토콜의 실시예에 대한 메시지 플로우를 나타내는 도 3을 참조한다. 메시지 플로우에 있어서의 주요 참가자는 클라이언트(305), 서빙 네트워크(310), 및 키 서버(315)이다. 클라이언트(305)는 휴대용 전화기, 개인 휴대 정보 단말기(personal digital assistant), 휴대용 컴퓨터, 및 서빙 네트워크(310)에 연결하려고 시도할 수 있는 다른 어떠한 통신 장치들이 될 수 있다. 서빙 네트워크(310)는 클라이언트(305)가 접속하는 네트워크지만, 클라이언트(305)의 홈 네트워크일 수도 있고 아닐 수도 있다. 키 서버(315)는 클라이언트(305)의 홈 네트워크에 위치할 수 있다.
도 1과 같이, 클라이언트(305)는 최초에, 서빙 네트워크(310)에 액세스 요청(120)을 전송함으로써 서빙 네트워크(310)와 연결을 설정하려고 시도한다. 또한 도 1과 같이, 서빙 네트워크(310)는 인증 데이터 요청(122)을 키 서버(315)에 전송하고 키 서버는 복수의 UIM 키 교환을 위해 필요한 정보를 유도하기 시작한다. UIM AKA 프로토콜과는 달리, 키 서버는 암호 키(CK) 및 무결성 키(IK)를 인증 벡터에 대해 생성하지 않으며, 오히려 키 서버(315)는 공유된 비밀 키 및 랜덤 넌스(RAND)로부터 유도 키(KD)를 계산한다. 도 1과 같이, 클라이언트(305) 및 키 서버(315)는 공유된 키를 구비하며, 클라이언트(305)의 공유된 키는 키 서버(315)의 공유된 키와 동일하다. 암호 키(CK) 및 무결성 키(IK)는 유도 키(KD)로부터 유도될 수 있다. 따라서, 키 서버(315)에 의해 생성된 인증 벡터(AV)는 랜덤 넌스(RAND), 인증 토큰(AUTN) 및 유도 키(KD)의 연속(즉, AV = RAND || AUTN || KD)을 포함한다.
의사 랜덤 함수 생성기(pseudorandom function generators) f1, F, F1 및 F2는 인증 벡터(317)를 생성하기 위해 필요한 변수들을 계산하는데에 사용된다. 상술한 바와 같이, 이 함수들은 상이한 함수들이거나, AES와 같은 동일한 함수일 수 있다. 함수 호출이 행해질 때 유일 함수 원칙(function-unique argument)은 지켜져야(prepended) 한다. 상술한 바와 같이, 복수의 UIM AKA에 있어서, 키 서버(315)는 세션 키인 암호 키(CK) 및 무결성 키(IK)를 서빙 네트워크(310)로 전송하지 않는다. 오히려, 키 서버(315)는 서빙 네트워크(310)로 유도 키(KD)를 전송한다. 유도 키(KD)는 키 서버(315)로부터 생성된 랜덤 넌스(RAND) 및 공유된 비밀 키로부터 유도될 수 있으며, 따라서, KD = Fk(RAND)이다. 키 서버(315)는 AKA 프로토콜 내에서처럼 메시지 인증 코드(MAC)를 계산하며, 따라서, MAC = f1k(SQN || RAND || AMF) 이다. 도 1과 관련하여 설명된 것처럼, 인증 관리 필드(AMF)는 기술적 파라미터를 선택하기 위해서 전형적으로 사용된다. 서빙 네트워크(310)가 유도 키(KD) 및 RANDC에 기초하여 기대 응답(XRES)을 계산할 것이므로, 기대 응답(XRES)은 생략(omitted)된다. 키 서버(315)는 AKA 프로토콜에서와 같이 인증 토큰(AUTN)을 생성하며, 따라서, AUTN = SQN || AMF || MAC 이다. 상술한 바와 같이, AV = RAND || AUTN || KD 이다. 이후에, 키 서버(315)는 인증 벡터(AV, 317)를 서빙 네트워크(310)로 전송한다. 인증 벡터(AV, 317)를 수신한 후, 서빙 네트워크는 인증 벡터(AV, 317), 특히, 유도 키(KD)를 저장한다. 서빙 네트워크는 저장된 유도 키(KD)와 고유 클라이언트 식별자를 연관시킬 수 있으며, 이때의 고유 클라이언트 식별자는 모바일 신분증(mobile identification), 전자 시리얼 번호 또는 통신 장치의 다른 어떤 고유 식별자도 될 수 있다.
서빙 네트워크(310)는 인증 토큰(AUTN) 및 랜덤 넌스(RAND)를 포함하는 인증 요청(320)을 클라이언트(305)에게 전송한다. AKA에서와 같이, 클라이언트(305)는 인증 토큰(AUTN)을 구성하는 메시지 인증 코드(MAC) 및 시퀀스 숫자(SQN)을 확인한다. 즉, 클라이언트(305)는 메시지 인증 코드(MAC)가 기대 메시지 인증 코드(XMAC)와 동일한지를 결정하고, 만약 MAC가 확인되면 클라이언트(305)는 유도 키(KD)를 계산하며, 여기서 KD = Fk(RAND)이다. 다음으로, 클라이언트는 RANDC를 생성하고 응답(RES)을 RES = FKD(RANDC)로서 계산한다. 클라이언트(305)는 암호 키(CK) 및 무결성 키(IK)를 계산하며, 여기서 CK = F1KD(RANDC)이고 IK = F2KD(RANDC)이다. 이들 클라이언트 계산 방법은 도 4(a)에 도시되어 있다. 클라이언트(305)는 이제 서빙 네트워크(310)와 안전한 통신 세션을 수행하기 위해 필요한 세션 키들(암호 키(CK) 및 무결성 키(IK))을 가진다. 클라이언트(305)는 서빙 네트워크(310)에게 인증 응답(330)을 포맷팅(formats)하고 전송한다. 인증 응답(330)은 RANDC와 응답(RES)을 포함할 수 있다. 이러한 클라이언트 계산 방법이 클라이언트의 사용자 신원 모듈(UIM)에서 발생한다는 점에 주목해야 한다. 공유된 비밀 키와 유도 키는 절대 사용자 신원 모듈(UIM)을 벗어나지 않는다. 그러나, 사용자 신원 모듈(UIM)은 사용자 신원 모듈(UIM) 외부의 메모리로 세션 키들(암호 키(CK) 및 무결성 키(IK))을 전송하고, 이들 세션 키들은 클라이언트와 서빙 네트워크(310) 사이의 통신을 암호화하는데에 사용될 수 있다.
인증 응답(330)을 수신한 후, 서빙 네트워크(310)는 유도 키(KD) 및 RANDC로부터 기대 응답(XRES)을 계산하며, 여기서 XRES = FKD(RANDC)이다. 다음으로, 서빙 네트워크는 기대 응답(XRES)이 인증 요청(330)의 응답(RES)과 동일한지 확인할 수 있다. 만약 기대 응답(XRES)이 성공적으로 확인되면, 서빙 네트워크(310)는 유도 키(KD)를 검색하고 세션 키인 암호 키(CK) 및 무결성 키(IK)를 유도하며, 여기서 CK = F1KD(RANDC)이고 IK = F2KD(RANDC)이다. 기대 응답(XRES), 암호 키(CK) 및 무결성 키(IK)의 유도는 도 4(b)에 묘사되어 있다. 이제 서빙 네트워크(310)는 클라이언트(305)와 안전한 통신 세션을 수행하기 위해 사용되는 세션 키들(암호 키(CK) 및 무결성 키(IK))을 가진다.
도 5는 복수의 UIM AKA 프로토콜의 방법(500)을 묘사하는 플로우 차트이다. 도 5를 참조하면, 단계 510에서, 전형적으로 사용자 신원 모듈(UIM)을 포함하는 통신 장치인 클라이언트는 서빙 네트워크에 액세스를 요청한다. 도 1 및 도 3과 관련하여 설명한 것처럼, 이것은 클라이언트가 서빙 네트워크로 액세스 요청 메시지를 전송하고 서빙 네트워크는 키 서버로 인증 데이터 요청을 전송하는 것을 수반할 수 있다. 키 서버는 인증 벡터(AV)를 생성하고 인증 벡터(AV)를 서빙 네트워크로 전송하는 것으로 응답한다. 인증 벡터(AV)의 구성과 인증 벡터(AV)의 필드들이 어떻게 계산되는지는 도 3과 관련된 설명에 기재되어 있다.
클라이언트의 인증에 대한 요청 후에, 서빙 네트워크는 인증 요청을 클라이언트로 전송한다 (단계 530). 인증 요청은 랜덤 넌스(RAND) 및 인증 토큰(AUTN)을 포함할 수 있다. 도 3과 관련하여 설명한 것처럼, 클라이언트는 메시지 인증 코드(MAC)가 기대 메시지 인증 코드(XMAC)와 동일한지를 확인할 수 있다 (단계 540). 만약 메시지 인증 코드(MAC)가 기대 메시지 인증 코드(XMAC)와 동일하지 않다면 상기 방법은 종료한다 (단계 590). 만약 메시지 인증 코드(MAC)가 기대 메시지 인증 코드(XMAC)와 동일하면, 클라이언트는 복수의 USIM AKA에 필요한 변수들을 추가적으로 유도한다 (단계 550). 단계 550은 클라이언트가 RANDC를 생성하고 응답(RES), 암호 키(CK) 및 무결성 키(IK)를 계산하는 것을 더 포함할 수 있다. 클라이언트가 RANDC를 생성하고 응답(RES), 암호 키(CK) 및 무결성 키(IK)를 계산하는 방법은, 도 3과 관련하여 기재되어 있다.
클라이언트는 인증 응답을 서빙 네트워크로 전송한다 (단계 560). 인증 응답은 RANDC 및 응답(RES)을 포함할 수 있다. 도 3과 관련하여 묘사된 것처럼, 서빙 네트워크는 기대 응답(XRES)을 계산할 수 있으며 기대 응답(XRES)이 응답(RES)과 동일한지 결정할 수 있다 (단계 570). 만약 응답(RES)이 기대 응답(XRES)과 동일하지 않으면 상기 방법(500)은 종료한다 (단계 590). 만약 응답(RES)이 기대 응답(XRES)과 동일하면, 복수의 USIM AKA에 필요한 변수들을 추가적으로 유도한다 (단계 580). 단계 580에서, 서빙 네트워크는 도 3과 관련하여 묘사된 것처럼 무결성 키(IK) 및 암호 키(CK)를 계산한다. 이로써, 서빙 네트워크 및 클라이언트는 서빙 네트워크와 클라이언트 사이의 안전한 통신에 사용될 수 있는 무결성 키(IK) 및 암호 키(CK)를 가진다.
일 실시예에서, 메시지 플로우(500)과 관련된 장치는 하나 이상의 전자 컴포넌트, 하드웨어 컴포넌트 및 컴퓨터 소프트웨어 컴포넌트와 같은 복수의 컴포넌트를 포함할 수 있다. 이러한 컴포넌트들 중 몇 개는 장치 내에서 서로 조합되거나 나뉘어질 수 있다. 장치의 예시적인 컴포넌트는, 본 기술분야에서 통상적인 지식을 가진 자에게 용이하게 이해될 수 있듯이, 복수의 프로그램 언어 중 임의의 프로그램 언어로 구현되거나 기재된 프로그램 명령어들의 세트 및/또는 시리즈를 포함 및/또는 사용할 수 있다. 일 실시예에서, 장치는 어떤 방향성(예: 수직, 수평 또는 사선(oblique))을 가질 수 있으며, 본 명세서에서 묘사된 장치는 설명의 목적을 위해 하나의 예시적인 방향성을 묘사하고 있을 뿐이다.
본 명세서에서 설명된 단계들 및 동작들은 예시적일 뿐이다. 이러한 단계들 및 동작들에 대해서는 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양한 변형이 이루어질 수 있다. 예를 들어, 각 단계들은 다른 순서로 실행되거나, 단계들이 추가, 삭제 또는 변형될 수 있다.
비록 본 명세서에서 상세하게 본 발명의 예시적인 구현 방법에 대해 묘사 및 기재하고 있지만, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 다양한 변형, 추가, 제거 등이 가능하다는 것은 관련된 기술 분야의 통상적인 지식을 가진 자에게 명확할 것이며, 이는 후술되는 청구항들에 의해 정의되는 발명의 범위 내에 있다고 할 것이다.
105, 305: 클라이언트 110, 310: 서빙 네트워크
115, 315: 키 서버 120: 액세스 요청
122: 인증 데이터 요청 125, 317: 인증 벡터
130, 320: 인증 요청 330: 인증 응답

Claims (10)

  1. 제1 랜덤 넌스(random nonce, RAND) 및 인증 토큰(authentication token)을 수신하여 인증 키 합의 프로토콜(authentication key agreement protocol)을 실행하는 통신 장치 컴포넌트를 포함하는 장치로서,
    상기 통신 장치 컴포넌트는 공유된 비밀 키를 포함하고,
    상기 통신 장치 컴포넌트는 상기 제1 랜덤 넌스(RAND) 및 상기 공유된 비밀 키에 의사 랜덤 함수(pseudo random function)를 적용함으로써 유도 키(derivation key)를 생성하고,
    상기 통신 장치 컴포넌트는 제2 랜덤 넌스(RANDC) 및 상기 유도 키에 기초하여 제1 세트의 세션 키를 생성하며, 상기 제1 세트의 세션 키는 통신의 암호화에 사용되는
    장치.
  2. 제1항에 있어서,
    상기 통신 장치 컴포넌트는 통신 장치와 연결되어 동작하는 사용자 신원 모듈(user identity module)이고,
    상기 제1 세트의 세션 키는 안전한 통신을 실행하기 위해 제2 세트의 세션 키와 함께 사용되고, 상기 제1 세트의 세션 키 및 상기 제2 세트의 세션 키는 동일하고,
    상기 사용자 신원 모듈은 상기 유도 키, 상기 공유된 비밀 키 및 상기 제1 세트의 세션 키를 포함하고, 상기 사용자 신원 모듈은 상기 제1 세트의 세션 키를 상기 통신 장치로 전송하고,
    상기 공유된 비밀 키 및 상기 유도 키는 상기 통신 장치로 전송되지 않는
    장치.
  3. 제2항에 있어서,
    상기 인증 토큰은 시퀀스 숫자(sequence number), 제1 메시지 인증 코드 및 인증 관리 필드(authentication management field)를 포함하고,
    상기 사용자 신원 모듈은 상기 공유된 비밀 키, 상기 시퀀스 숫자, 상기 인증 관리 필드 및 상기 제1 랜덤 넌스(RAND)에 의사 랜덤 함수를 적용함으로써 제2 메시지 인증 코드를 계산하고,
    상기 사용자 신원 모듈은 상기 제2 메시지 인증 코드를 상기 제1 메시지 인증 코드와 비교하며, 상기 제1 메시지 인증 코드가 상기 제2 메시지 인증 코드와 동일한 경우 상기 사용자 신원 모듈은 상기 제2 랜덤 넌스(RANDC), 상기 세션 키 및 응답을 유도하고,
    상기 사용자 신원 모듈은 상기 제1 세트의 세션 키, 상기 제2 랜덤 넌스(RANDC) 및 상기 응답을 상기 통신 장치에 전송하는
    장치.
  4. 제3항에 있어서,
    상기 제2 랜덤 넌스(RANDC), 상기 제1 세트의 세션 키 및 상기 응답을 유도하는 것은,
    상기 제2 랜덤 넌스(RANDC)를 생성하는 것;
    의사 랜덤 함수를 적용함으로써 상기 제1 세트의 세션 키를 계산하는 것 - 상기 제1 세트의 세션 키는 무결성 키(integrity key)와 암호 키(cipher key)를 포함함 - ;
    상기 제2 랜덤 넌스(RANDC) 및 상기 유도 키에 의사 랜덤 함수를 적용함으로써 상기 응답을 계산하는 것;
    상기 제2 랜덤 넌스(RANDC) 및 상기 유도 키에 의사 랜덤 함수를 적용함으로써 상기 사용자 신원 모듈이 상기 무결성 키를 계산하는 것;
    상기 제2 랜덤 넌스(RANDC) 및 상기 유도 키에 의사 랜덤 함수를 적용함으로써 상기 사용자 신원 모듈이 상기 암호 키를 계산하는 것; 및
    상기 통신 장치가 상기 제2 랜덤 넌스(RANDC) 및 상기 응답을 서빙 네트워크(serving network)로 전송하고, 상기 서빙 네트워크는 상기 제2 세트의 세션 키를 생성하고, 상기 제1 세트의 세션 키 및 상기 제2 세트의 세션 키는 상기 서빙 네트워크와 상기 통신 장치 사이의 통신을 암호화하기 위해 사용되는
    장치.
  5. 응답과 제1 랜덤 넌스(RANDC)를 수신하고,
    클라이언트 식별자에 기초하여 유도 키를 검색하고,
    상기 유도 키 및 상기 제1 랜덤 넌스(RANDC)로부터 기대 응답을 계산하고,
    상기 응답과 상기 기대 응답을 비교하여 상기 응답이 상기 기대 응답과 동일한 경우 제1 세트의 세션 키를 유도하고, 상기 제1 세트의 세션 키는 암호화된 통신을 실행하기 위해 제2 세트의 세션 키와 함께 사용되는
    장치.
  6. 제5항에 있어서,
    상기 장치는 클라이언트와 통신 연결되는 네트워크 노드를 포함하고,
    상기 제1 세트의 세션 키 및 상기 제2 세트의 세션 키는 동일하고,
    상기 클라이언트는 상기 제2 세트의 세션 키를 포함하고,
    상기 제1 세트의 세션 키는 무결성 키(integrity key) 및 암호 키(cipher key)를 포함하고, 상기 무결성 키는 상기 제1 랜덤 넌스(RANDC) 및 상기 유도 키에 의사 랜덤 함수를 적용함으로써 계산되고,
    상기 암호 키는 상기 제1 랜덤 넌스(RANDC) 및 상기 유도 키에 의사 랜덤 함수를 적용함으로써 계산되고,
    상기 클라이언트는 상기 제1 랜덤 넌스(RANDC) 및 상기 응답을 상기 네트워크 노드에 전송하고,
    상기 제1 랜덤 넌스(RANDC) 및 상기 유도 키에 의사 랜덤 함수를 적용함으로써 상기 네트워크 노드는 상기 기대 응답을 계산하고,
    상기 기대 응답이 상기 응답과 동일한 경우, 상기 네트워크 노드는 상기 제1 세트의 세션 키를 유도하는
    장치.
  7. 제6항에 있어서,
    상기 네트워크 노드는 키 서버(key server)와 통신 연결되며,
    상기 네트워크 노드는 상기 키 서버로부터 인증 벡터(authentication vector)를 수신하고, 상기 인증 벡터는 제2 랜덤 넌스(RAND), 인증 토큰 및 상기 유도 키를 포함하고,
    상기 네트워크 노드는 상기 유도 키를 저장하고,
    상기 클라이언트로부터 요청을 받아, 상기 네트워크 노드는 상기 제2 랜덤 넌스(RAND) 및 상기 인증 토큰을 상기 클라이언트에게 전송하고,
    상기 클라이언트는 상기 제2 랜덤 넌스(RAND) 및 상기 인증 토큰을 상기 제2 세트의 세션 키를 계산하기 위해 사용하는
    장치.
  8. 제1 랜덤 넌스(RAND), 제1 유도 키 및 인증 토큰을 포함하는 인증 벡터를 수신하는 단계;
    상기 제1 랜덤 넌스(RAND) 및 상기 인증 토큰을 포함하는 인증 요청 메시지를 전송하는 단계;
    제2 랜덤 넌스(RANDC) 및 응답을 수신하는 단계; 및
    상기 제2 랜덤 넌스(RANDC) 및 상기 제1 유도 키에 기초하여 제1 세트의 세션 키를 유도하는 단계 - 상기 제1 세트의 세션 키는 통신들을 암호화하기 위해 사용됨 -
    를 포함하는 방법.
  9. 제8항에 있어서,
    상기 응답이 기대 응답과 동일한지 여부를 판단하는 단계 - 상기 기대 응답은 상기 제1 유도 키 및 상기 제2 랜덤 넌스(RANDC)에 의사 랜덤 함수를 적용함으로써 계산됨 - ; 및
    상기 기대 응답이 상기 응답과 동일한 경우 상기 제1 세트의 세션 키를 유도하는 단계 - 상기 제1 세트의 세션 키는 암호 키와 무결성 키를 포함하고, 상기 암호 키는 상기 제1 유도 키와 상기 제2 랜덤 넌스(RANDC)에 의사 랜덤 함수를 적용함으로써 계산되고, 상기 무결성 키는 상기 제2 랜덤 넌스(RANDC)와 상기 제1 유도 키에 의사 랜덤 함수를 적용함으로써 계산됨 -
    를 더 포함하고,
    상기 제1 유도 키는 제1 공유된 비밀 키 및 상기 제1 랜덤 넌스(RAND)에 의사 랜덤 함수를 적용함으로써 유도되고,
    제1 메시지 인증 코드는 상기 제1 공유된 비밀 키, 시퀀스 숫자, 상기 제1 랜덤 넌스(RAND) 및 인증 관리 필드에 의사 랜덤 함수를 적용함으로써 계산되고,
    상기 인증 토큰은 상기 시퀀스 숫자, 상기 인증 관리 필드 및 상기 제1 메시지 인증 코드를 더 포함하는
    방법.
  10. 제9항에 있어서,
    상기 제2 랜덤 넌스(RANDC) 및 상기 응답은 클라이언트로부터 수신되고, 상기 클라이언트는 제2 공유된 비밀 키 및 상기 제1 랜덤 넌스(RAND)에 의사 랜덤 함수를 적용함으로써 제2 유도 키를 계산하고,
    상기 클라이언트는 상기 제1 메시지 인증 코드가 제2 메시지 인증 코드와 동일한지를 확인하여 상기 제1 메시지 인증 코드가 상기 제2 메시지 인증 코드와 동일한 경우, 상기 제2 랜덤 넌스(RANDC)를 생성하고, 상기 제2 랜덤 넌스(RANDC) 및 상기 제2 유도 키에 의사 랜덤 함수를 적용함으로써 상기 응답을 계산하고, 제2 세트의 세션 키를 계산하며,
    상기 클라이언트는 사용자 신원 모듈 내에 상기 제2 유도 키를 유지하고 상기 제2 유도 키를 상기 사용자 신원 모듈로부터 전송하지 않으며,
    상기 제2 세트의 세션 키를 계산하는 것은 무결성 키 및 암호 키를 계산하는 것을 더 포함하고, 상기 무결성 키는 상기 제2 유도 키 및 상기 제2 랜덤 넌스(RANDC)에 의사 랜덤 함수를 적용함으로써 계산되고, 상기 암호 키는 상기 제2 유도 키 및 상기 제2 랜덤 넌스(RANDC)에 의사 랜덤 함수를 적용함으로써 계산되고,
    상기 제1 유도 키는 상기 제2 유도 키와 동일한
    방법.
KR1020127017561A 2010-01-06 2010-12-14 안전한 멀티 uim 인증 및 키 교환 KR101485230B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/655,706 2010-01-06
US12/655,706 US8296836B2 (en) 2010-01-06 2010-01-06 Secure multi-user identity module key exchange
PCT/US2010/060283 WO2011084419A1 (en) 2010-01-06 2010-12-14 Secure multi - uim authentication and key exchange

Publications (2)

Publication Number Publication Date
KR20120101523A true KR20120101523A (ko) 2012-09-13
KR101485230B1 KR101485230B1 (ko) 2015-01-22

Family

ID=43590006

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127017561A KR101485230B1 (ko) 2010-01-06 2010-12-14 안전한 멀티 uim 인증 및 키 교환

Country Status (6)

Country Link
US (1) US8296836B2 (ko)
EP (1) EP2522100B1 (ko)
JP (1) JP5579872B2 (ko)
KR (1) KR101485230B1 (ko)
CN (1) CN102783080B (ko)
WO (1) WO2011084419A1 (ko)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110191842A1 (en) * 2008-09-09 2011-08-04 Telefonaktiebolaget L M Ericsson (Publ) Authentication in a Communication Network
US9154527B2 (en) 2011-06-30 2015-10-06 Verizon Patent And Licensing Inc. Security key creation
US8990554B2 (en) 2011-06-30 2015-03-24 Verizon Patent And Licensing Inc. Network optimization for secure connection establishment or secure messaging
US8943318B2 (en) * 2012-05-11 2015-01-27 Verizon Patent And Licensing Inc. Secure messaging by key generation information transfer
US9270453B2 (en) 2011-06-30 2016-02-23 Verizon Patent And Licensing Inc. Local security key generation
KR101986312B1 (ko) * 2011-11-04 2019-06-05 주식회사 케이티 신뢰관계 형성 방법 및 이를 위한 내장 uⅰcc
US9553725B2 (en) * 2011-11-21 2017-01-24 Combined Conditional Access Development And Support, Llc System and method for authenticating data
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
CN103457967B (zh) * 2012-05-30 2015-05-20 腾讯科技(深圳)有限公司 服务节点切换方法及系统
US9106413B2 (en) * 2012-11-02 2015-08-11 Alcatel Lucent Method and apparatus for resilient end-to-end message protection for large-scale cyber-physical system communications
US9350550B2 (en) 2013-09-10 2016-05-24 M2M And Iot Technologies, Llc Power management and security for wireless modules in “machine-to-machine” communications
US9100175B2 (en) 2013-11-19 2015-08-04 M2M And Iot Technologies, Llc Embedded universal integrated circuit card supporting two-factor authentication
US10498530B2 (en) 2013-09-27 2019-12-03 Network-1 Technologies, Inc. Secure PKI communications for “machine-to-machine” modules, including key derivation by modules and authenticating public keys
US11349675B2 (en) * 2013-10-18 2022-05-31 Alcatel-Lucent Usa Inc. Tamper-resistant and scalable mutual authentication for machine-to-machine devices
US10700856B2 (en) 2013-11-19 2020-06-30 Network-1 Technologies, Inc. Key derivation for a module using an embedded universal integrated circuit card
CN103634104A (zh) * 2013-11-26 2014-03-12 常州大学 基于证书的三方认证密钥协商协议产生方法
GB201405705D0 (en) * 2014-03-31 2014-05-14 Irdeto Bv Secured printed electronics device
WO2015166099A1 (en) 2014-05-02 2015-11-05 Koninklijke Kpn N.V. Method and system for providing security from a radio access network
US9491618B2 (en) * 2014-09-26 2016-11-08 Qualcomm Incorporated Serving network authentication
US10384643B2 (en) 2015-01-14 2019-08-20 GM Global Technology Operations LLC Virtual keyfob for vehicle sharing
US9853977B1 (en) 2015-01-26 2017-12-26 Winklevoss Ip, Llc System, method, and program product for processing secure transactions within a cloud computing system
US9813395B2 (en) * 2015-05-19 2017-11-07 Anvaya Solutions, Inc. System and method for authenticating and enabling an electronic device in an electronic system
US10172000B2 (en) * 2016-03-17 2019-01-01 M2MD Technologies, Inc. Method and system for managing security keys for user and M2M devices in a wireless communication network environment
US10158991B2 (en) * 2016-03-17 2018-12-18 M2MD Technologies, Inc. Method and system for managing security keys for user and M2M devices in a wireless communication network environment
US10171235B2 (en) * 2016-05-19 2019-01-01 Nxp B.V. User-initiated migration of encryption keys
EP3285512A1 (en) * 2016-08-17 2018-02-21 Gemalto Sa Authentication server of a cellular telecommunication network and corresponding uicc
JPWO2018169071A1 (ja) * 2017-03-17 2020-04-16 日本電気株式会社 認証装置、ネットワーク装置、及び認証方法
RU2733828C1 (ru) 2017-04-11 2020-10-07 Хуавей Текнолоджиз Ко., Лтд. Способ, устройство и система для сетевой аутентификации
FR3077175A1 (fr) * 2018-01-19 2019-07-26 Orange Technique de determination d'une cle destinee a securiser une communication entre un equipement utilisateur et un serveur applicatif
KR102092394B1 (ko) * 2018-11-06 2020-04-20 (주)드림시큐리티 블록체인을 이용한 암호화 기반 서비스 제공 장치 및 방법
CN110535632B (zh) * 2019-07-02 2023-09-05 如般量子科技有限公司 基于非对称密钥池对和dh协议的量子通信服务站aka密钥协商方法和系统
CN112825498B (zh) * 2019-11-01 2022-08-12 中国移动通信有限公司研究院 一种认证向量的生成方法、获取方法及设备
CN112564894A (zh) * 2020-11-11 2021-03-26 杭州浙程科技有限公司 一种智能钥匙动态秘钥开无源锁的方法
CN115021913B (zh) * 2022-06-14 2024-05-31 中国信息通信研究院 工业互联网标识解析体系密钥生成方法、系统与存储介质

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05347617A (ja) * 1992-06-15 1993-12-27 Toshiba Corp 無線通信システムの通信方法
JP2003143128A (ja) * 2001-11-05 2003-05-16 Open Loop:Kk 通信システム及び通信方法
US7194765B2 (en) * 2002-06-12 2007-03-20 Telefonaktiebolaget Lm Ericsson (Publ) Challenge-response user authentication
DE10307403B4 (de) * 2003-02-20 2008-01-24 Siemens Ag Verfahren zum Bilden und Verteilen kryptographischer Schlüssel in einem Mobilfunksystem und Mobilfunksystem
US8341700B2 (en) * 2003-10-13 2012-12-25 Nokia Corporation Authentication in heterogeneous IP networks
US8229118B2 (en) * 2003-11-07 2012-07-24 Qualcomm Incorporated Method and apparatus for authentication in wireless communications
US20050138355A1 (en) * 2003-12-19 2005-06-23 Lidong Chen System, method and devices for authentication in a wireless local area network (WLAN)
US20060206710A1 (en) * 2005-03-11 2006-09-14 Christian Gehrmann Network assisted terminal to SIM/UICC key establishment
CN101176296A (zh) * 2005-03-11 2008-05-07 艾利森电话股份有限公司 网络辅助终端到simm/uicc密钥建立
US20060291660A1 (en) * 2005-12-21 2006-12-28 Telefonaktiebolaget Lm Ericsson (Publ) SIM UICC based broadcast protection
US7626963B2 (en) * 2005-10-25 2009-12-01 Cisco Technology, Inc. EAP/SIM authentication for mobile IP to leverage GSM/SIM authentication infrastructure
WO2007085175A1 (fr) * 2006-01-24 2007-08-02 Huawei Technologies Co., Ltd. Procédé, système d'authentification et centre d'authentification reposant sur des communications de bout en bout dans le réseau mobile
CN100596084C (zh) * 2006-04-20 2010-03-24 华为技术有限公司 移动电路域用户接入ims网络的系统及其接入的注册方法
EP1973265A1 (en) * 2007-03-21 2008-09-24 Nokia Siemens Networks Gmbh & Co. Kg Key refresh in SAE/LTE system
CN101272251B (zh) * 2007-03-22 2012-04-18 华为技术有限公司 鉴权和密钥协商方法、认证方法、系统及设备
US8265593B2 (en) * 2007-08-27 2012-09-11 Alcatel Lucent Method and system of communication using extended sequence number
US7957533B2 (en) * 2007-10-02 2011-06-07 Alcatel-Lucent Usa Inc. Method of establishing authentication keys and secure wireless communication
US8379854B2 (en) * 2007-10-09 2013-02-19 Alcatel Lucent Secure wireless communication
US9166799B2 (en) * 2007-12-31 2015-10-20 Airvana Lp IMS security for femtocells
NZ589294A (en) * 2008-06-06 2012-07-27 Ericsson Telefon Ab L M Cryptographic key generation using parameters based on a set of generated keys, an incrementing sequence number and an anonymity key
EP2278513A1 (en) * 2009-07-15 2011-01-26 Nagravision SA Method for preventing the use of a cloned user unit communicating with a server
CN101742500B (zh) * 2010-01-21 2016-03-30 中兴通讯股份有限公司 一种派生空口密钥的方法及系统

Also Published As

Publication number Publication date
US20110167272A1 (en) 2011-07-07
CN102783080B (zh) 2016-02-24
JP5579872B2 (ja) 2014-08-27
EP2522100A1 (en) 2012-11-14
CN102783080A (zh) 2012-11-14
KR101485230B1 (ko) 2015-01-22
EP2522100B1 (en) 2016-04-20
US8296836B2 (en) 2012-10-23
WO2011084419A1 (en) 2011-07-14
JP2013516896A (ja) 2013-05-13

Similar Documents

Publication Publication Date Title
KR101485230B1 (ko) 안전한 멀티 uim 인증 및 키 교환
US10638321B2 (en) Wireless network connection method and apparatus, and storage medium
US7707412B2 (en) Linked authentication protocols
EP2005702B1 (en) Authenticating an application
US10411884B2 (en) Secure bootstrapping architecture method based on password-based digest authentication
KR100975685B1 (ko) 무선 통신을 위한 안전한 부트스트래핑
US8122250B2 (en) Authentication in data communication
Tsay et al. A vulnerability in the umts and lte authentication and key agreement protocols
JP4170912B2 (ja) ネットワークプロバイダ及びビジネスパートナーに対する遠隔通信加入者の認証及び許可のための端末における公開鍵ペアの利用
JP2011139457A (ja) 無線通信装置とサーバとの間でデータを安全にトランザクション処理する方法及びシステム
TR201819540T4 (tr) Kullanıcı Ekipmanı Kimlik Bilgisi Sistemi
CN101192927B (zh) 基于身份保密的授权与多重认证方法
Matos et al. Secure hotspot authentication through a near field communication side-channel
US20210256102A1 (en) Remote biometric identification
Ouaissa et al. New security level of authentication and key agreement protocol for the IoT on LTE mobile networks
Hoeper et al. Recommendation for EAP Methods Used in Wireless Network Access Authentication
Li et al. A cloud based dual-root trust model for secure mobile online transactions
Jain et al. SAP: a low-latency protocol for mitigating evil twin attacks and high computation overhead in WI-FI networks
Hart et al. Website credential storage and two-factor web authentication with a Java SIM
RU2779029C1 (ru) Доступ не отвечающего спецификациям 3gpp устройства к базовой сети
Kbar et al. Challenge Token-based Authentication–CTA
Lee Stateless Re-Association in WPA3 Using Paired Token. Electronics 2021, 10, 215
Madhusudhan Design of Robust Authentication Protocols for Roaming Service in Glomonet and Mitigation of XSS Attacks in Web Applications
Ananthanarayanan et al. Space: Secure protocol for address-book based connection establishment
Londe et al. A new lightweight eap-pk authentication method for ieee 802. 11 standard wireless network

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: 20180105

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20181226

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20191217

Year of fee payment: 6