KR20220132532A - 단말기의 보안 프로세서에 저장된 제네릭 애플리케이션을 안전하게 다양화하는 방법 - Google Patents

단말기의 보안 프로세서에 저장된 제네릭 애플리케이션을 안전하게 다양화하는 방법 Download PDF

Info

Publication number
KR20220132532A
KR20220132532A KR1020227023530A KR20227023530A KR20220132532A KR 20220132532 A KR20220132532 A KR 20220132532A KR 1020227023530 A KR1020227023530 A KR 1020227023530A KR 20227023530 A KR20227023530 A KR 20227023530A KR 20220132532 A KR20220132532 A KR 20220132532A
Authority
KR
South Korea
Prior art keywords
message
application
app
challenge
msg1
Prior art date
Application number
KR1020227023530A
Other languages
English (en)
Inventor
기욤 팡
엠마뉴엘 레파벡
니꼴라 비엔느
올리비에 퐁스레
에방겔로스 스피로풀로
Original Assignee
탈레스 Dis 프랑스 Sas
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 탈레스 Dis 프랑스 Sas filed Critical 탈레스 Dis 프랑스 Sas
Publication of KR20220132532A publication Critical patent/KR20220132532A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • 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/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3265Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate chains, trees or paths; Hierarchical trust model
    • 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

Landscapes

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

Abstract

- 본 발명은 단말기의 보안 프로세서(10)에 저장된 제네릭 애플리케이션(11)을 안전하게 다양화하기 위한 방법으로서, 상기 방법이:
- - 원격 서버(13) 레벨에서, 상기 단말기의 애플리케이션 프로세서 내에 호스팅된 매니저 애플리케이션(12)의 요청에 따라 서버 챌린지(SERVER.CHALLENGE)를 생성하는 단계;
- - 상기 서버 챌린지를 상기 애플리케이션(11)으로 전송하는 단계;
- - 상기 애플리케이션(11)에서 제1 메시지(MSG1)를 생성하는 단계 - 상기 제1 메시지(MSG1)는 상기 서버 챌린지, 애플리케이션 챌린지 및 상기 애플리케이션(11)의 고유 식별자(APP.ID)의 기능을 가짐-;
- - 상기 제1 메시지(MSG1)를 상기 단말기의 보안 프로세서(10)에서 호스팅되는 신뢰 루트 서비스(ROT service)(112)로 전송하는 단계 - 상기 신뢰 루트 서비스(112)는 상기 제1 메시지의 증명을 생성하고, 상기 증명이 상기 제1 메시지(MSG1)가 수정되지 않았으며 상기 보안 프로세서(10)로부터 유래되었음을 보증함-;
- - 인에이블먼트 요청 메시지에서 상기 제1 메시지(MSG1)의 상기 증명을 상기 원격 서버(13)로 전송하는 단계;
- - 상기 원격 서버(13)의 레벨에서:
- o 상기 제1 메시지(MSG1)의 상기 증명이 상기 루트 오브 트러스트 서비스(112)에 의해 제공되었는지 확인하는 단계;
- o 상기 제1 메시지(MSG1)가 상기 서버 챌린지를 포함하는지 확인하는 단계;
- o 상기 애플리케이션(11)으로 제2 메시지(MSG2)를 포함하는 인에이블먼트 페이로드(11) 및 상기 제2 메시지(MSG2)의 서명을 확인하는 데 사용될 공개 키를 보유하는 공개 키 인증서를 되돌려 보내는 단계 - 상기 제2 메시지(MSG2)는 상기 애플리케이션 챌린지로 구성됨-;
- - 상기 애플리케이션(11)의 레벨에서, 상기 인에이블먼트 페이로드를 수신할 때:
- o 상기 공개 키 인증서를 확인하는 단계;
- o 상기 제2 메시지의 상기 서명을 확인하는 단계;
- o 상기 제2 메시지(MSG2)가 상기 애플리케이션 챌린지를 포함하는지 확인하는 단계를 포함하는 제네릭 애플리케이션(11)을 안전하게 다양화하기 위한 방법을 제안한다.

Description

단말기의 보안 프로세서에 저장된 제네릭 애플리케이션을 안전하게 다양화하는 방법
본 발명은 통신, 특히 연결된 디바이스(예: 네트워크 액세스와의)의 SoC(System-on-Chip) 부분 중 보안 프로세서(Secure Processor)(SP) 부분에서 로드되고 실행되는 일반(다양화되지 않은) 애플리케이션(예: 통합 UICC, iUICC라고도 하는 통합 UICC 또는 임베디드 UICC용 eUICC)의 원격 및 보안 인에이블먼트에 관한 것이다. 디바이스(또는 단말기)는 예를 들어, 셀룰러 네트워크(2G, 3G, 4G 또는 5G)에 연결되는 스마트폰, PDA, IoT 디바이스이다. 따라서 애플리케이션은 보안 요소가 필요한 모든 자격 증명을 사용하여 MNO(모바일 네트워크 사업자)의 네트워크에 연결할 수 있도록 하는 애플리케이션이 될 수 있다.
우리는 주요 애플리케이션 프로세서(AP)와 보안 프로세서(SP)를 포함하는 SoC를 고려한다. AP와 SP는 서로 격리되어 있으며 특정 하드웨어 및 보안 프로토콜을 통해서만 서로 통신할 뿐이다. 이러한 격리는 SP내에서 로드되고 실행되는 민감한 애플리케이션에 더 높은 보안을 제공한다. SP에 로드된 애플리케이션을 SP 애플리케이션이라고 한다.
이러한 구성에서 SP 애플리케이션(이하 SP.APP)은 여러 디바이스/SP에서 배포되어야 하며, 이 같은 SP.APP는 초기에 다양하지 않은 일반 형식으로 로드된다. 즉, 동일한 소프트웨어 및 데이터(다양한 식별자 또는 자격 증명을 포함하지 않음)가 초기에 모든 디바이스/SP에 로드된다.
해결해야 할 문제는 이후에 안전한 방식으로 각 다양한 SP.APP 인스턴스와 통신할 수 있도록 특정 디바이스/SP에 로드된 이 같은 일반(다각화되지 않은) 형태의 SP.APP에 대한 식별자 및 자격 증명의 안전한 다양화이다.
대표적인 예가 휴대폰/기기의 SP에 있는 iUICC의 안전한 다양화이다.
본 발명에 필요한 환경은 다음과 같이 더욱 개선된다.
- AP는 높은 레벨의 애플리케이션을 실행하고 네트워크 액세스와 같은 높은 레벨의 서비스에 대한 액세스를 제공할 수 있다. 특히 SoC에는 AP가 네트워크에 액세스할 수 있도록 하는 모뎀이 포함되어 있다. 반면 SP에서 실행되는 SP 애플리케이션은 네트워크에 직접 액세스할 수 없다.
- SP는 SP 애플리케이션에 ROT(Root-Of-Trust) 서비스, 즉 임의의 메시지(SP.APP에서 제공)에 대한 암호화 증명을 생성할 수 있는 서명 서비스를 제공한다. 이러한 증명은 메시지가 특정 SP/디바이스로부터 수정되고 생성됨을 보증한다.
- SP는 또한 SP 애플리케이션에 ID 서비스를 제공하며, 이 같은 서비스는 SP.ID, 즉 SP에 바인딩된 고유 식별자(즉, SP 자체의 고유 식별자 또는 다른 SP가 아닌 이 SP에 의해서만 제공될 수 있는 일부 데이터) 또는 이러한 식별자(SP에 바인딩됨) 또는 범용 고유 식별자(즉, SP와 무관한)를 생성할 수 있도록 하는 일부 데이터를 검색하도록 사용될 수 있다. 보편적으로 고유하지 않은 경우 SP.ID는 지정된 SP 제조업체가 제조한 SP 범위 내에서 고유한 식별자를 생성하거나 생성하도록 허용할 수 있다. ID 서비스는 명확성을 위해 별도로 설명되지만 실제로 ROT 서비스에 의해 구현될 수 있다(예: SP.ID는 ROT 서비스에 의해 생성된 증명으로부터 검색될 수 있음).
- SP 애플리케이션은 안전한 방식으로 SP에 로드되었다. 즉, 로딩 작업이 승인되었으며 SP 애플리케이션의 무결성과 출처를 보장하고 SP 애플리케이션(SP.APP)은 정품 인증된 소프트웨어이다.
본 발명은 단말기의 보안 프로세서 내에 저장된 제네릭 애플리케이션을 안전하게 다양화하기 위한 방법을 제안하며, 이 방법은:
- - 원격 서버 레벨에서, 상기 단말기의 애플리케이션 프로세서 내에 호스팅된 매니저 애플리케이션의 요청에 따라 서버 챌린지를 생성하는 단계;
- - 상기 서버 챌린지를 상기 애플리케이션으로 전송하는 단계;
- - 상기 애플리케이션에서 제1 메시지를 생성하는 단계 - 상기 제1 메시지는 상기 서버 챌린지, 애플리케이션 챌린지 및 상기 애플리케이션의 고유 식별자의 기능을 가짐-;
- - 상기 제1 메시지를 상기 단말기의 보안 프로세서에서 호스팅되는 신뢰 루트 서비스로 전송하는 단계 - 상기 신뢰 루트 서비스는 상기 제1 메시지의 증명을 생성하고, 상기 증명이 상기 제1 메시지가 수정되지 않았으며 상기 보안 프로세서로부터 유래되었음을 보증함-;
- - 인에이블먼트 요청 메시지에서 상기 제1 메시지의 상기 증명을 상기 원격 서버로 전송하는 단계;
- - 상기 원격 서버의 레벨에서:
- o 상기 제1 메시지의 상기 증명이 상기 루트 오브 트러스트 서비스에 의해 제공되었는지 확인하는 단계;
- o 상기 제1 메시지가 상기 서버 챌린지를 포함하는지 확인하는 단계;
- o 상기 애플리케이션으로 제2 메시지를 포함하는 인에이블먼트 페이로드 및 상기 제2 메시지의 서명을 확인하는 데 사용될 공개 키를 보유하는 공개 키 인증서를 되돌려 보내는 단계 - 상기 제2 메시지는 상기 애플리케이션 챌린지로 구성됨-;
- 상기 애플리케이션의 레벨에서, 상기 인에이블먼트 페이로드를 수신할 때:
- o 상기 공개 키 인증서를 확인하는 단계;
- o 상기 제2 메시지의 상기 서명을 확인하는 단계;
- o 상기 제2 메시지가 상기 애플리케이션 챌린지를 포함하는지 확인하는 단계를 포함한다.
바람직하게, 상기 인에이블먼트 페이로드는 또한 상기 원격 서버로부터의 적절하게 다양화된 추가 데이터를 포함한다.
바람직하게, 상기 애플리케이션은 iUICC의 애플리케이션이다.
바람직한 실시 예에서, 상기 제1 메시지는 또한 상기 애플리케이션의 공개 키를 포함하고, 상기 제2 메시지는 또한 상기 애플리케이션의 인증서를 포함한다.
도 1, 2A 및 2B는 본 발명에 따른 방법의 여러 단계를 나타내는 도면이다.
본 발명은 도 1, 2A 및 2B에 도시된 바와 같이, 본 발명에 따른 방법의 여러 단계를 나타내는 다음 요소로 구성된다.
- - 칩 제조사에서 제공하는 보안 프로세서 SP(10);
- - SP(10) 내에 저장된 제네릭 애플리케이션(다양화되지 않음) SP.APP(11);
- - 애플리케이션 프로세서 AP에서 실행되고 다음을 수행할 수 있는 매니저 애플리케이션(MGR 12):
- - SP.APP(11)와 통신,
- - SP.APP(11)와 원격 인에이블먼트 서비스/웹 서버(RES 13) 간의 릴레이 메시지;
- - 원격 서버인 서버 RES(13).
SP(10), SP.APP(11) 및 MGR(12)는 단말기/디바이스의 일부이다. RES(13)은 SP.APP(11) 제공자에 의해 소유 및 관리된다고 가정한다.
본 발명에 따른 방법은 메시지를 안전하게 전송하고 무결성을 제공하기 위해 PKI(공개 키 기반구조)를 사용함으로써 이하에서 설명될 상이한 단계들을 포함한다.
도 1과 같이 예비 단계로서, SP.APP는 고유 식별자(APP.ID)를 생성해야 한다. 그렇게 하려면 SP.APP(11)는 먼저 SP(10)에 의해 관리되는 ID 서비스(101)에게로 요청을 전송하여 수행되는 SP의 고유 식별자를 가져와야 한다(단계 100). 상기 ID 서비스는 SP.APP(11)에 의해 단계(102)에서 사용되는 SP.ID를 반환하며, 고유 식별자( APP.ID)를 생성하도록 한다.
단계(102)는 APP.ID의 단일성을 보장하기 위해 다양한 방식으로 구현될 수 있다. 예를 들어 SP.ID가 이미 고유 식별자인 경우, APP.ID는 단순히 SP.ID와 같을 수 있다. 그러나 다음과 같은 이유로 일반적으로 그렇지 않다:
- - 적용상의 이유로, APP.ID는 특정 형식/인코딩을 사용 할 필요가 있다.
- - SP.ID가 특정 SP 메이커의 컨텍스트에서만 고유한 경우, APP.ID는 SP 메이커에 관계없이 고유하게 되는 SP 메이커의 식별자(이후 SP.MK.ID라고 함)가 추가로 포함될 수 있다. SP(10)로부터 어떻게든 검색되지 않은 경우, 이 같은 SP.MK.ID는 SP.APP(11) 자체에 의해 제공될 수 있다. 그러나 본 발명은 그와 같은 SP.MK.ID가 필요하지 않은 경우, 예를 들어, ID 서비스(101)에 의해 제공되는 SP.ID가 이미 보편적으로 고유하거나 일반적으로 적용 솔루션이 특정 SP 메이커에 바인딩되고 제한되는 경우, 그와 같은 사례를 배제하지 않는다는 점에 유의하여야 한다.
그런 다음 SP.APP는 나중에 RES(13)에 의해 생성될 서버 챌린지를 기다린다((단계 103). 단계(100 내지 103)는 SP.APP(11)이 처음 실행될 때 수행될 수 있다.
단계(100 내지 103)에 이어서 또는 동시에, MGR(12)은 RES(13)로부터 서버 챌린지를 요청할 수 있으며, 이는 도 2a에 도시된 단계(104)에 대응한다. 단계(105)에서 RES(13)는 무작위 챌린지 SERVER.CHALLENGE를 생성하고 이를 MGR(12)로 반환합니다. 단계(106)에서 MGR(13)은 단순히 SERVER.CHALLENGE를 SP.APP(11)로 전달한다. 단계(107)에서, 이전에 대기 중인 SP.APP(11)는 SERVER.CHALLENGE를 수신하고, 단계(108)로 이동할 수 있으며, 여기서 무작위 챌린지 APP.CHALLENGE를 생성한다. 단계(110)에서, SP.APP(11)는 다음 정보를 포함하는 메시지(MSG1)을 생성한다:
- SERVER.CHALLENGE;
- APP.CHALLENGE;
- APP.ID;
- - 선택적으로, MSG1.DATA: 인에이블먼트 페이로드를 생성하기 위해 RES(13)에 의해 사용될 수 있는 애플리케이션 종속 데이터.
- - 선택적으로, 인에이블먼트 수락 정책을 시행하기 위해 RES(13)에 의해 사용될 수 있는 보완 정보(예: SP.MK.ID).
단계(111)에서, SP.APP(11)는 다음에 도 2B에 도시된 SP(10)에 의해 관리되는 ROT(Root-Of-Trust) 서비스(112)에 요청을 전송함으로써 수행되는, MSG1에 대한 증명을 얻는다.
ROT 서비스(112)는 MSG1을 포함하는 증명을 생성하고 반환하며 MSG1이 수정되지 않았으며 SP(10)로부터 시작되었음을 보장한다.
단계(113)에서 SP.APP(11)는 단순히 증명을 MGR(12)로 전달한다. 단계(114)에서 MGR(12)은 증명을 인에이블먼트 요청으로 래핑하고 이를 RES(13)로 보낸다. 상기 인에이블먼트 요청은 증명 형식을 검출하기 위해 RES(13)에 의해 필요한 경우 SP.MK.ID를 포함할 수 있다(이는 SP 10에만 해당).
인에이블먼트 요청을 수신하면 RES(13)은 다음을 수행한다.
- 단계(115)에서 상기 증명이 ROT 서비스(112)에 의해 생성되었는지 확인하고 상기 증명에서 MSG1을 추출한다.
o RES(13)이 상기 증명을 확인하는 데 필요한 공개 키를 알고 있다고 가정한다(예: SP 10 제작자가 미리 전달).
o 선택적으로 RES(13)은 MSG1내에 있는 보완 정보를 기반으로 인에이블먼트 수락 정책을 시행한다.
- 단계(116)에서 MSG1(상기 증명으로부터 추출)이 단계(105)에서 이전에 생성된 SERVER.CHALLENGE를 포함하는지를 확인한다;
- 단계(117)에서 SP.APP(11)로 반환되고 다음 정보를 포함하는 메시지(MSG2)를 준비한다:
- o APP.CHALLENGE(MSG1로부터 추출);
- o 선택적으로, MSG2.DATA: MSG1.DATA에 종속될 수 있는 애플리케이션 종속 데이터
- 단계(118)에서 MSG2를 포함하는 인에이블먼트 페이로드를 생성하고, MSG2가 수정되지 않았으며 RES(13)로부터 시작되었음을 보장한다. 상기 인에이블먼트 페이로드는 다음 정보를 포함한다:
o MSG2.SIG를 확인하는 데 사용되는 공개 키(PK.RES)를 보유한 공개 키 인증서(CERT.RES)(아래 참조);
o MSG2;
o MSG2.SIG: SK.RES(PK.RES의 개인 키 대응)를 사용하여 생성된 MSG2의 서명.
- RES(13)은 단계(119)에서MGR(12)에 의해 전달된 인에이블먼트 페이로드를 SP.APP(11)로 되돌려 보낸다.
- 인에이블먼트 페이로드를 수신하면 SP.APP(11)는 다음을 수행한다:
- 단계(120)에서 인에이블먼트 페이로드가 RES(13)에 의해 생성되었는지 확인한다. 이를 위해 SP.APP(11)가:
- o 인에이블먼트 페이로드에 있는 인증서 CERT.RES를 확인한다. SP.APP(11)는 CERT.RES를 확인하는 데 필요한 공개 키를 알고 있다고 가정한다(SP.APP(11)의 제너릭, 비다양화 형식에 포함됨);
- o 인증서 CERT.RES로부터 공개 키 PK.RES를 추출한다;
- o 공개 키 PK.RES를 사용하여 서명 MSG2.SIG를 확인한다.
- 단계(121)에서 MSG2가 단계(108)에서 이전에 생성된 APP.CHALLENGE를 포함하는지 확인한다.
마지막으로, 단계(122)에서, 인에이블먼트 페이로드가 성공적으로 검증된 것으로 간주되고, SP.APP(11)는 초기화를 완료하기 위해 필요에 따라 MSG2.DATA를 추가로 사용하거나 저장할 수 있다.
단계(122) 이후, SP.APP(11)는 고유한 아이덴티티 ID APP.ID를 가지며, RES(13)에게 자신의 존재 및 아이덴티티ID(APP.ID)를 통지했으며, 그리고 적절하게 다양화되거나 SP.APP(11)에 의해 사용된 RES(13)(MSG2.DATA)로부터 추가의 데이터를 수신하여, 내부 데이터의 다양화를 마무리하도록 한다. 본원 발명의 제1 변형에서, 우리는 MSG1.DATA 및 MSG2.DATA의 내용과 목적을 다음과 같이 추가로 설명한다:
- SP.APP(11)는 공개 키(PK.APP)와 개인 키(SK.APP)로 구성된 공개 키 쌍을 생성한다. 본원 명세서에서 SP.APP(11)이 공개 키 암호화 작업을 수행할 수 있다고 가정한다. SP.APP(11)는 MSG1.DATA 내에 다음 정보를 포함한다:
- o PK.APP
- RES(13)가 인에이블먼트 요청 메시지(117)를 수락하면 MSG2.DATA내에 다음 정보가 포함된다.
- o CERT.APP(이전에 MSG1.DATA로부터 추출한 PK.APP 보유) 및 SK.APP.PROVIDER(PK.APP.PROVIDER의 개인 키 대응)를 사용하여 RES에 의해 서명되었다. 이 인증서는 APP.ID에 바인딩 된다(즉, APP.ID가 인증서에 나타남).
- o CERT.APP를 확인하는 데 사용되는 공개 키(PK.APP.PROVIDER)를 보유하는 CERT.APP.PROVIDER. 이 인증서는 해당 솔루션과 관련된 독립 기관(ROOT.APP)에 의해 이전에 서명한 것으로 가정한다.
- o 선택 사항: SP.APP(11)과 관련된 보완 애플리케이션 종속 정보.
CERT.APP.PROVIDER 및 CERT.RES는 독립적이다. CERT.RES는 인에이블먼트 절차를 보호하는 데 사용되는 반면 CERT.APP.PROVIDER는 SP.APP(11)에 의해 사용된 인증서 체인에 속하며, 이 적용 솔루션 내의 다른 당사자에게 자신을 인증하도록 한다.
인에이블먼트 페이로드가 성공적으로 확인되면, SP.APP(11)는 CERT.APP.PROVIDER, CERT.APP 및 필요에 따라 MSG2.DATA로부터 추출한 제공된 보완 정보를 저장할 수 있다.
인에이블먼트 절차가 끝나면(이 같은 제1 변형에 따라), SP.APP(11)눈 또한 ROOT.APP(즉, 적용 솔루션에 대한 관련 기관)에 의해 인증된 공개 키 쌍(PK.APP, SK.APP)을 가지며, 다음과 같은 작업을 수행할 수 있다:
- 적용 솔루션에서의 다른 당사자에게 자신의 ID를 전달한다.
- SK.APP, CERT.APP(APP.ID에 바인딩됨) 및 CERT.APP.PROVIDER를 사용하여, 적용 솔루션에서의 다른 당사자에게 전송된 메시지에 대한 ID를 증명 및/또는 서명한다. 즉 SP.APP(11)는 SK.APP를 갖는 메시지를 서명할 수 있으며, 다른 당사자가 인증서 체인(CERT.APP.PROVIDER
Figure pct00001
CERT.APP)을 사용하여 이러한 서명을 확인할 수 있다.
따라서 이 같은 제1 변형에서, SP.APP(11)는 키 쌍(공개/비공개)도 생성한다. 공개 키와 APP.ID가 모두 MSG1내에 포함되어 있으며, 다음에 RES(13)이 공개 키에 대한 인증서를 생성하여 MSG2내의 SP.APP(11)로 되돌려 보낸다.
제1변형을 기반으로 구축된 본 발명의 제2변형에서는, 여러 ROOT.APP가 존재하고 적용 솔루션에 포함될 수 있으며, 이 경우 SP.APP(11)는 여러 공개 키 쌍(PK.APP, SK.APP)을 생성할 수 있으며, 각각 다른 ROOT.APP에 의해 인증될 수 있다. 이 경우 MSG1.DATA는 여러 PK.APP를 포함하고, 각각에 대해 이를 인증할 ROOT.APP의 식별자(ROOT.ID)를 포함한다.
이 경우 MSG2.DATA에는 RES(13)이 MSG1 데이터에 표시된 ROOT.APP각각에 대한 CERT.APP.PROVIDER도 소유한다고 가정하고, PK.APP각각에 대해 하나씩 여러 인증서 체인(CERT.APP.PROVIDER CERT.APP)을 포함할 수 있다.
인에이블먼트 절차가 끝나는 때(이 같은 제2 변형에 따라), SP.APP(11)는 임의의 공개 키 쌍(PK.APP, SK.APP) 및 관련 인증서 체인을 사용하여 적용 솔루션에서 다른 당사자와 안전하게 통신할 수 있다.
따라서, 이 같은 제2 변형에서, SP.APP는 하나가 아닌 여러 키 쌍을 생성한다.
제1 또는 제2 변형 에 기반하여 구축된 본 발명의 제3변형에서, CERT.APP로부터 ROOT.APP까지의 인증서 체인은 두 개 이상의 인증서를 포함할 수 있다(즉, CERT.APP.PROVIDER <- CERT.APP뿐만 아니라). 이 경우 MSG2.DATA에 있는 인증서 체인 각각에는 다양한 수의 인증서가 포함된다(즉, CERT.ROOT.APP <- ..<- CERT.APP.PROVIDER <- CERT.APP).
따라서 이 같은 제 3 변형에서, RES(13)은 공개 키(즉, 다중 레벨 계층) 각각에 대하여 가변 길이의 증명서 체인(2 개 보다 큰 또는 2개와 동일한, 단지 2 개의 증명서, CERT.APP.PROVIDER 및 CERT.APP 대신)을 되돌려 보낸다.
본 발명의 제4 변형에서, MSG2.DATA는 SP.APP에 대해 다른 APP.ID를 제안하거나 강제하기 위한 적절한 정보를 포함한다. 이는 RES(13)가 단계(102)에서 생성된 것 대신 SP.APP(11)이 저장하고 사용할 대체 APP.ID를 반환함을 의미한다.
본 발명은 이동 전화 상의 SP에서 통합 UICC(iUICC)의 다양화를 위한 솔루션을 제공한다.
UICC 또는 eUICC에 사용되는 것과 같은 기존의 다양화 절차에는 일반적으로 생산된 카드에 로드해야 하는 비밀 및 스크립트를 저장하는 데이터베이스 및 KMS(키 관리 시스템)가 포함된다.
UICC는 SP에 적재되어야 하고, 자신은SoC내에 탑재되어야 하고, OEM 공장에서 조립되는 단말기에 탑재되어야 하기 때문에 동일한 방식으로 생산 현장에서 개인화할 수 없다. 따라서 본 발명은 iUICC를 원격으로 개인화/다양화하기 위한 솔루션을 제안한다.
본 발명의 장점은 (iUICC 애플리케이션이 SP.APP(11)인 경우) iUICC가 자체 비밀 및 자격 증명을 생성하므로 RES(13)가 다중 iUICC 인스턴스에 대한 비밀을 저장할 필요가 없다는 것이다. 상기 RES(13)은 iUICC의 공개 키를 인증하기 위해서만 요청된다.
상기 iUICC(SP.APP)는 SP.ID를 기반으로 고유한 ID(APP.ID)를 생성한다. 초기(인에이블먼트 이전)에, 상기 iUICC(SP.APP(11))가 ID를 증명할 수 없더라도, 이는 여전히 조기 식별의 기회를 제공한다.
본 발명은 모바일 폰의 SP(10) 내에서 한 iUICC의 다양화를 위한 솔루션을 제공할 뿐만 아니라, 모든 종류의 SP.APP 및 SP(10)를 포함하는 모든 종류의 IoT 디바이스에 일반화할 수 있다. 일정한 경우, eUICC 또는 칩의 다양화에도 적용될 수 있다.

Claims (4)

  1. - 단말기의 보안 프로세서(10)에 저장된 제네릭 애플리케이션(11)을 안전하게 다양화하기 위한 방법으로서, 상기 방법이:
    - - 원격 서버(13) 레벨에서, 상기 단말기의 애플리케이션 프로세서 내에 호스팅된 매니저 애플리케이션(12)의 요청에 따라 서버 챌린지(SERVER.CHALLENGE)를 생성하는 단계;
    - - 상기 서버 챌린지를 상기 애플리케이션(11)으로 전송하는 단계;
    - - 상기 애플리케이션(11)에서 제1 메시지(MSG1)를 생성하는 단계 - 상기 제1 메시지(MSG1)는 상기 서버 챌린지, 애플리케이션 챌린지 및 상기 애플리케이션(11)의 고유 식별자(APP.ID)의 기능을 가짐-;
    - - 상기 제1 메시지(MSG1)를 상기 단말기의 보안 프로세서(10)에서 호스팅되는 신뢰 루트 서비스(ROT service)(112)로 전송하는 단계 - 상기 신뢰 루트 서비스(112)는 상기 제1 메시지의 증명을 생성하고, 상기 증명이 상기 제1 메시지(MSG1)가 수정되지 않았으며 상기 보안 프로세서(10)로부터 유래되었음을 보증함-;
    - - 인에이블먼트 요청 메시지에서 상기 제1 메시지(MSG1)의 상기 증명을 상기 원격 서버(13)로 전송하는 단계;
    - - 상기 원격 서버(13)의 레벨에서:
    - o 상기 제1 메시지(MSG1)의 상기 증명이 상기 루트 오브 트러스트 서비스(112)에 의해 제공되었는지 확인하는 단계;
    - o 상기 제1 메시지(MSG1)가 상기 서버 챌린지를 포함하는지 확인하는 단계;
    - o 상기 애플리케이션(11)으로 제2 메시지(MSG2)를 포함하는 인에이블먼트 페이로드(11) 및 상기 제2 메시지(MSG2)의 서명을 확인하는 데 사용될 공개 키를 보유하는 공개 키 인증서를 되돌려 보내는 단계 - 상기 제2 메시지(MSG2)는 상기 애플리케이션 챌린지로 구성됨-;
    - - 상기 애플리케이션(11)의 레벨에서, 상기 인에이블먼트 페이로드를 수신할 때:
    - o 상기 공개 키 인증서를 확인하는 단계;
    - o 상기 제2 메시지의 상기 서명을 확인하는 단계;
    - o 상기 제2 메시지(MSG2)가 상기 애플리케이션 챌린지를 포함하는지 확인하는 단계를 포함하는 제네릭 애플리케이션(11)을 안전하게 다양화하기 위한 방법.
  2. 제1항에 있어서, 상기 인에이블먼트 페이로드는 또한 상기 원격 서버(13)로부터의 적절하게 다양화된 추가 데이터를 포함하는, 제네릭 애플리케이션(11)을 안전하게 다양화하기 위한 방법.
  3. 제1항 또는 제2항에 있어서, 상기 애플리케이션(11)은 iUICC의 애플리케이션인, 제네릭 애플리케이션(11)을 안전하게 다양화하기 위한 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 제1 메시지(MSG1)는 또한 상기 애플리케이션의 공개 키(PK.APP)를 포함하고, 상기 제2 메시지(MSG2)는 또한 상기 애플리케이션의 인증서를 포함하는, 제네릭 애플리케이션(11)을 안전하게 다양화하기 위한 방법.
KR1020227023530A 2020-01-24 2020-12-23 단말기의 보안 프로세서에 저장된 제네릭 애플리케이션을 안전하게 다양화하는 방법 KR20220132532A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP20305059.6 2020-01-24
EP20305059.6A EP3855328A1 (en) 2020-01-24 2020-01-24 A method for securely diversifying a generic application stored in a secure processor of a terminal
PCT/EP2020/087805 WO2021148223A1 (en) 2020-01-24 2020-12-23 A method for securely diversifying a generic application stored in a secure processor of a terminal

Publications (1)

Publication Number Publication Date
KR20220132532A true KR20220132532A (ko) 2022-09-30

Family

ID=70613725

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227023530A KR20220132532A (ko) 2020-01-24 2020-12-23 단말기의 보안 프로세서에 저장된 제네릭 애플리케이션을 안전하게 다양화하는 방법

Country Status (6)

Country Link
US (1) US12034870B2 (ko)
EP (2) EP3855328A1 (ko)
KR (1) KR20220132532A (ko)
CN (1) CN114930325A (ko)
ES (1) ES2976046T3 (ko)
WO (1) WO2021148223A1 (ko)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8700893B2 (en) * 2009-10-28 2014-04-15 Microsoft Corporation Key certification in one round trip
US8661257B2 (en) * 2010-05-18 2014-02-25 Nokia Corporation Generic bootstrapping architecture usage with Web applications and Web pages
JP6260540B2 (ja) * 2012-12-21 2018-01-17 日本電気株式会社 無線通信システム、無線アクセスネットワークノード、及び通信デバイス
US9363087B2 (en) * 2014-10-02 2016-06-07 Microsoft Technology Licensing, Inc. End-to-end security for hardware running verified software
US10164953B2 (en) * 2014-10-06 2018-12-25 Stmicroelectronics, Inc. Client accessible secure area in a mobile device security module
WO2017082966A1 (en) * 2015-11-09 2017-05-18 Intel IP Corporation Integrated universal integrated circuit card on mobile computing environments
KR102293683B1 (ko) * 2017-02-13 2021-08-26 삼성전자 주식회사 eSIM 접근 제어 방법 및 장치
US11671265B2 (en) * 2019-10-25 2023-06-06 John A. Nix Secure configuration of a secondary platform bundle within a primary platform
US20220166620A1 (en) * 2020-11-20 2022-05-26 At&T Intellectual Property I, L.P. Access Network Facilitated Per Application Instance Secure Communication

Also Published As

Publication number Publication date
WO2021148223A1 (en) 2021-07-29
US12034870B2 (en) 2024-07-09
EP3855328A1 (en) 2021-07-28
CN114930325A (zh) 2022-08-19
EP4094174B1 (en) 2024-02-07
US20230037536A1 (en) 2023-02-09
EP4094174A1 (en) 2022-11-30
ES2976046T3 (es) 2024-07-22

Similar Documents

Publication Publication Date Title
JP6262278B2 (ja) アクセス制御クライアントの記憶及び演算に関する方法及び装置
EP3800909B1 (en) Remote management method, and device
JP5740008B2 (ja) 第1の端末に格納されたsimアプリケーションを第2の端末に送信する方法
KR20070114839A (ko) 이동국 특징으로의 제한된 접근 권한 제공
CN111434087A (zh) 用于提供通信服务的方法和电子设备
KR101716067B1 (ko) 제3자 포탈을 이용한 단말과 원격 서버 사이의 상호 인증을 위한 방법
US12041452B2 (en) Non-3GPP device access to core network
US11917416B2 (en) Non-3GPP device access to core network
CN112632573B (zh) 智能合约执行方法、装置、***、存储介质及电子设备
US10700854B2 (en) Resource management in a cellular network
JP2022525370A (ja) Sm‐srプラットフォームを介してセキュアエレメントのオペレーティングシステムに透過的にパッチを適用する方法
KR20220132532A (ko) 단말기의 보안 프로세서에 저장된 제네릭 애플리케이션을 안전하게 다양화하는 방법
JP5492988B2 (ja) 保全された電子トークン中に埋込まれたアプリケーションを管理する方法
US20220256349A1 (en) Provision of Application Level Identity
KR20100015238A (ko) 스마트 카드 인증 시스템 및 그 방법
KR20190037306A (ko) 단말 애플리케이션을 보안 요소에 결합하기 위한 방법 및 대응하는 보안 요소, 단말 애플리케이션 및 서버
Ραπτοδήμος Design and implementation of an android application for extraction of security related data from SIM/USIM
EP2273758A1 (en) Method of sending messages to an application embedded in a secured electronic token