KR20240043441A - 무선 통신 시스템에서 프로파일 프로비저닝을 위한 eUICC의 암호화 키 관리 방법 및 장치 - Google Patents

무선 통신 시스템에서 프로파일 프로비저닝을 위한 eUICC의 암호화 키 관리 방법 및 장치 Download PDF

Info

Publication number
KR20240043441A
KR20240043441A KR1020220122539A KR20220122539A KR20240043441A KR 20240043441 A KR20240043441 A KR 20240043441A KR 1020220122539 A KR1020220122539 A KR 1020220122539A KR 20220122539 A KR20220122539 A KR 20220122539A KR 20240043441 A KR20240043441 A KR 20240043441A
Authority
KR
South Korea
Prior art keywords
profile
euicc
server
factory
index
Prior art date
Application number
KR1020220122539A
Other languages
English (en)
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 삼성전자주식회사
Priority to KR1020220122539A priority Critical patent/KR20240043441A/ko
Priority to PCT/KR2023/015057 priority patent/WO2024072114A1/ko
Publication of KR20240043441A publication Critical patent/KR20240043441A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/30Security of mobile devices; Security of mobile applications
    • H04W12/35Protecting application or service provisioning, e.g. securing SIM application provisioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/30Security of mobile devices; Security of mobile applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/40Security arrangements using identity modules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/18Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
    • H04W8/20Transfer of user or subscriber data

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 개시는 보다 높은 데이터 전송률을 지원하기 위한 5G 또는 6G 통신 시스템에 관련된 것이다. 본 개시는 대량의 프로파일들을 단말 제조사 공장 환경에서 단말들에 프로비저닝 하기 위한 방법에 있어서, 프로파일 설치를 위한 키 정보 및 Index 정보를 획득하고, Factory 주입용 프로파일 요청을 프로파일 서버에 Index ID를 포함해 전달하고, 프로파일 서버로부터 Bound Profile Package(BPP)와 프로파일 설치 키 정보를 Index 정보를 포함해 수신하고, 수신된 BPP 및 프로파일 설치 키 정보를 단말에게 전달하고, 단말의 eUICC에서 상기 Index ID를 참조하여 사용할 암호화 키를 선택하여 BPP를 복호화하는 방법을 개시한다.

Description

무선 통신 시스템에서 프로파일 프로비저닝을 위한 eUICC의 암호화 키 관리 방법 및 장치 {METHOD AND APPARATUS OF EUICC ENCRPTION KEY MANAGEMENT FOR PROVISIONING PROFILE IN A WIRELESS COMMUNICATION SYSTEM}
본 개시는 무선 통신 시스템에서, 프로파일을 프로비저닝(provisioning)하기 위한 방법 및 장치에 관한 것으로, 구체적으로, 본 개시는 무선 통신 시스템에서 복수의 프로파일들을 단말에 프로비저닝하기 위한 방법 및 장치에 관한 것이다.
5G 이동통신 기술은 빠른 전송 속도와 새로운 서비스가 가능하도록 넓은 주파수 대역을 정의하고 있으며, 3.5 기가헤르츠(3.5GHz) 등 6GHz 이하 주파수('Sub 6GHz') 대역은 물론 28GHz와 39GHz 등 밀리미터파(㎜Wave)로 불리는 초고주파 대역('Above 6GHz')에서도 구현이 가능하다. 또한, 5G 통신 이후(Beyond 5G)의 시스템이라 불리어지는 6G 이동통신 기술의 경우, 5G 이동통신 기술 대비 50배 빨라진 전송 속도와 10분의 1로 줄어든 초저(Ultra Low) 지연시간을 달성하기 위해 테라헤르츠(Terahertz) 대역(예를 들어, 95GHz에서 3 테라헤르츠(3THz) 대역과 같은)에서의 구현이 고려되고 있다.
5G 이동통신 기술의 초기에는, 초광대역 서비스(enhanced Mobile BroadBand, eMBB), 고신뢰/초저지연 통신(Ultra-Reliable Low-Latency Communications, URLLC), 대규모 기계식 통신 (massive Machine-Type Communications, mMTC)에 대한 서비스 지원과 성능 요구사항 만족을 목표로, 초고주파 대역에서의 전파의 경로손실 완화 및 전파의 전달 거리를 증가시키기 위한 빔포밍(Beamforming) 및 거대 배열 다중 입출력(Massive MIMO), 초고주파수 자원의 효율적 활용을 위한 다양한 뉴머롤로지 지원(복수 개의 서브캐리어 간격 운용 등)와 슬롯 포맷에 대한 동적 운영, 다중 빔 전송 및 광대역을 지원하기 위한 초기 접속 기술, BWP(Band-Width Part)의 정의 및 운영, 대용량 데이터 전송을 위한 LDPC(Low Density Parity Check) 부호와 제어 정보의 신뢰성 높은 전송을 위한 폴라 코드(Polar Code)와 같은 새로운 채널 코딩 방법, L2 선-처리(L2 pre-processing), 특정 서비스에 특화된 전용 네트워크를 제공하는 네트워크 슬라이싱(Network Slicing) 등에 대한 표준화가 진행되었다.
현재, 5G 이동통신 기술이 지원하고자 했던 서비스들을 고려하여 초기의 5G 이동통신 기술 개선(improvement) 및 성능 향상(enhancement)을 위한 논의가 진행 중에 있으며, 차량이 전송하는 자신의 위치 및 상태 정보에 기반하여 자율주행 차량의 주행 판단을 돕고 사용자의 편의를 증대하기 위한 V2X(Vehicle-to-Everything), 비면허 대역에서 각종 규제 상 요구사항들에 부합하는 시스템 동작을 목적으로 하는 NR-U(New Radio Unlicensed), NR 단말 저전력 소모 기술(UE Power Saving), 지상 망과의 통신이 불가능한 지역에서 커버리지 확보를 위한 단말-위성 직접 통신인 비 지상 네트워크(Non-Terrestrial Network, NTN), 위치 측위(Positioning) 등의 기술에 대한 물리계층 표준화가 진행 중이다.
뿐만 아니라, 타 산업과의 연계 및 융합을 통한 새로운 서비스 지원을 위한 지능형 공장 (Industrial Internet of Things, IIoT), 무선 백홀 링크와 액세스 링크를 통합 지원하여 네트워크 서비스 지역 확장을 위한 노드를 제공하는 IAB(Integrated Access and Backhaul), 조건부 핸드오버(Conditional Handover) 및 DAPS(Dual Active Protocol Stack) 핸드오버를 포함하는 이동성 향상 기술(Mobility Enhancement), 랜덤액세스 절차를 간소화하는 2 단계 랜덤액세스(2-step RACH for NR) 등의 기술에 대한 무선 인터페이스 아키텍쳐/프로토콜 분야의 표준화 역시 진행 중에 있으며, 네트워크 기능 가상화(Network Functions Virtualization, NFV) 및 소프트웨어 정의 네트워킹(Software-Defined Networking, SDN) 기술의 접목을 위한 5G 베이스라인 아키텍쳐(예를 들어, Service based Architecture, Service based Interface), 단말의 위치에 기반하여 서비스를 제공받는 모바일 엣지 컴퓨팅(Mobile Edge Computing, MEC) 등에 대한 시스템 아키텍쳐/서비스 분야의 표준화도 진행 중이다.
이와 같은 5G 이동통신 시스템이 상용화되면, 폭발적인 증가 추세에 있는 커넥티드 기기들이 통신 네트워크에 연결될 것이며, 이에 따라 5G 이동통신 시스템의 기능 및 성능 강화와 커넥티드 기기들의 통합 운용이 필요할 것으로 예상된다. 이를 위해, 증강현실(Augmented Reality, AR), 가상현실(Virtual Reality, VR), 혼합 현실(Mixed Reality, MR) 등을 효율적으로 지원하기 위한 확장 현실(eXtended Reality, XR), 인공지능(Artificial Intelligence, AI) 및 머신러닝(Machine Learning, ML)을 활용한 5G 성능 개선 및 복잡도 감소, AI 서비스 지원, 메타버스 서비스 지원, 드론 통신 등에 대한 새로운 연구가 진행될 예정이다.
또한, 이러한 5G 이동통신 시스템의 발전은 6G 이동통신 기술의 테라헤르츠 대역에서의 커버리지 보장을 위한 신규 파형(Waveform), 전차원 다중입출력(Full Dimensional MIMO, FD-MIMO), 어레이 안테나(Array Antenna), 대규모 안테나(Large Scale Antenna)와 같은 다중 안테나 전송 기술, 테라헤르츠 대역 신호의 커버리지를 개선하기 위해 메타물질(Metamaterial) 기반 렌즈 및 안테나, OAM(Orbital Angular Momentum)을 이용한 고차원 공간 다중화 기술, RIS(Reconfigurable Intelligent Surface) 기술 뿐만 아니라, 6G 이동통신 기술의 주파수 효율 향상 및 시스템 네트워크 개선을 위한 전이중화(Full Duplex) 기술, 위성(Satellite), AI(Artificial Intelligence)를 설계 단계에서부터 활용하고 종단간(End-to-End) AI 지원 기능을 내재화하여 시스템 최적화를 실현하는 AI 기반 통신 기술, 단말 연산 능력의 한계를 넘어서는 복잡도의 서비스를 초고성능 통신과 컴퓨팅 자원을 활용하여 실현하는 차세대 분산 컴퓨팅 기술 등의 개발에 기반이 될 수 있을 것이다.
상술한 바와 같은 논의를 바탕으로, 본 개시(disclosure)는, 무선 통신 시스템에서 대량의 프로파일들을 제조사 단말의 공장 환경에서 설치하기 위한 방법 및 장치를 제공하고자 한다.
본 개시의 다양한 실시예에 따르면, 대량의 프로파일들을 단말들에 프로비저닝 하기 위한 방법에 있어서, 상기 방법은, 프로파일 설치를 위한 키 정보와 Index ID를 획득하는 단계; Factory 주입용 프로파일 요청을 프로파일 서버에 전달하는 단계; 상기 프로파일 서버로부터 Bound Profile Package(BPP)와 BPP 복호화를 위한 암호화키 선택 정보로써 Index ID를 수신하는 단계; 상기 수신된 BPP 및 Index ID를 단말에게 전달하는 단계를 포함하는 단계; 및 상기 Index ID를 참조하여 BPP를 복호화하는 단계를 포함할 수 있다.
본 개시는 무선 통신 시스템에서 프로파일들을 단말 제조사 공장 환경에서 효과적으로 설치할 수 있는 방법 및 장치를 제공할 수 있다.
본 개시에서 얻을 수 있는 효과는 다양한 실시 예들에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 개시의 일 실시 예들에 따른 프로파일을 프로비저닝하기 위한 구성 요소 간의 관계를 나타낸 도면이다.
도 2는 본 개시의 일 실시 예에 따른 otPK Index ID를 사용하고 Factory IT가 사용 순서를 지정하여 사용하는 방식을 설명하기 위한 도면이다.
도 3은 본 개시의 일 실시 예에 따른 otPK Index ID를 사용하고 eUICC가 사용 순서를 지정하여 사용하는 방식을 설명하기 위한 도면이다.
도 4은 본 개시의 일 실시 예에 따른 otPK Index ID를 사용하고 eUICC가 사용 순서를 지정하여 사용하는 경우의 다른 실시 예시 도면이다.
도 5는 본 개시의 일 실시 예에 따른 EUM이 Key Material을 1개 전달하고 eUICC가 다음에 사용한 Key Material을 지정하여 Factory IT에게 회신해 주는 방식을 설명하기 위한 도면이다.
도 6는 본 개시의 일 실시 예에 따른 otPK 재 사용 방식으로 사용 횟수 또는 무제한으로 otPK를 사용하는 동작을 설명하는 도면이다.
도 7은 본 개시의 일 실시 예에 따른 무선 통신 시스템에서 프로파일 서버, Factory IT, 단말의 구조를 나타낸 블록도이다.
이하 첨부된 도면을 참조하여 본 개시의 동작 원리를 상세히 설명한다. 하기에서 본 개시를 설명하기에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 개시에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 개시는 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 개시의 개시가 완전하도록 하고, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시는 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
이하, 기지국은 단말의 자원할당을 수행하는 주체로서, gNode B, eNode B, Node B, BS (Base Station), 무선 접속 유닛, 기지국 제어기, 또는 네트워크 상의 노드 중 적어도 하나일 수 있다. 단말은 UE (User Equipment), MS (Mobile Station), 셀룰러폰, 스마트폰, 컴퓨터, 또는 통신 기능을 수행할 수 있는 멀티미디어 시스템을 포함할 수 있다. 본 개시에서 하향링크(Downlink; DL)는 기지국이 단말에게 전송하는 신호의 무선 전송 경로이고, 상향링크는(Uplink; UL)는 단말이 기국에게 전송하는 신호의 무선 전송경로를 의미한다. 또한, 이하에서 LTE 혹은 LTE-A 시스템을 일 예로서 설명할 수도 있지만, 유사한 기술적 배경 또는 채널 형태를 갖는 다른 통신시스템에도 본 개시의 실시예가 적용될 수 있다. 예를 들어 LTE-A 이후에 개발되는 5세대 이동통신 기술(5G, new radio, NR)이 본 개시의 실시예가 적용될 수 있는 시스템에 포함될 수 있으며, 이하의 5G는 기존의 LTE, LTE-A 및 유사한 다른 서비스를 포함하는 개념일 수도 있다. 또한, 본 개시는 숙련된 기술적 지식을 가진 자의 판단으로써 본 개시의 범위를 크게 벗어나지 아니하는 범위에서 일부 변형을 통해 다른 통신시스템에도 적용될 수 있다. 이 때, 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다.
이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예를 들면, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다. 이때, 본 실시 예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(Field Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행할 수 있다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다. 또한 실시예에서 '~부'는 하나 이상의 프로세서를 포함할 수 있다.
이하 설명의 편의를 위하여, 본 개시는 현재 존재하는 통신표준 가운데 3GPP (The 3rd Generation Partnership Project) 단체에서 정의하는 표준인 5GS 및 NR 규격에서 정의하고 있는 용어 및 명칭들을 사용한다. 하지만, 본 개시가 상기 용어 및 명칭들에 의해 한정되는 것은 아니며, 다른 규격에 따르는 무선통신망에도 동일하게 적용될 수 있다. 예를 들면, 본 개시는 3GPP 5GS/NR (5세대 이동통신 표준)에 적용할 수 있다.
이하 설명의 편의를 위하여, 본 개시는 현재 존재하는 eSIM 표준 가운데 GSMA (GSM Association) 단체에서 정의하는 표준인 RSP 규격들(SGP.XX 시리즈)에서 정의하고 있는 용어 및 명칭들을 사용한다. 하지만, 본 개시가 상기 용어 및 명칭들에 의해 한정되는 것은 아니며, 다른 규격에 따르는 eSIM에도 동일하게 적용될 수 있다. 범용 통합 회로 카드(UICC: Universal Integrated Circuit Card)는 단말, 일 예로 이동 통신 단말기 등에 삽입되어 사용되는 스마트카드(smart card)이고 UICC 카드라고도 칭해진다. 상기 UICC에 이동 통신 사업자의 네트워크에 접속하기 위한 접속 제어 모듈이 포함될 수 있다. 이러한 접속 제어 모듈의 예제들은 범용 가입자 식별 모듈(USIM: Universal Subscriber Identity Module), 가입자 식별 모듈(SIM: Subscriber Identity Module), 인터넷 프로토콜 멀티미디어 서비스 식별 모듈(ISIM: IP (Internet Protocol) Multimedia Service Identity Module) 등을 포함한다.
USIM이 포함된 UICC를 통상 USIM 카드라고 부르기도 한다. 마찬가지로 SIM 모듈이 포함된 UICC를 통상적으로 SIM카드라고 부르기도 한다. 하기의 설명에서 SIM 카드라 함은 UICC 카드, USIM 카드, ISIM이 포함된 UICC 등을 포함하는 통상의 의미로 사용될 수 있음에 유의하여야만 할 것이다. SIM 카드라 하여도 그 기술적 적용이 USIM 카드 또는 ISIM 카드 또는 일반적인 UICC 카드에도 동일하게 적용될 수 있음은 물론이다.
SIM 카드는 이동 통신 가입자의 개인 정보를 저장하고, 이동 통신 네트워크에 접속 시 가입자 인증 및 트래픽 (traffic) 보안 키(key) 생성을 수행하여 안전한 이동통신 이용을 가능하게 한다.
SIM 카드는 일반적으로 상기 SIM 카드를 제조할 때 특정 이동 통신 사업자의 요청에 의해 해당 이동 통신 사업자를 위한 전용 카드로 제조되며, 해당 사업자의 네트워크 접속을 위한 인증 정보, 예를 들어, USIM (Universal Subscriber Identity Module) 어플리케이션 및 IMSI (International Mobile Subscriber Identity), K 값, OPc 값 등이 사전에 카드에 탑재되어 출고된다. 따라서 제조된 상기 SIM 카드는 해당 이동 통신 사업자가 납품 받아 가입자에게 제공되며, 이후 필요 시에는 OTA (Over The Air) 등의 기술을 활용하여 상기 UICC 내 어플리케이션의 설치, 수정, 삭제 등의 관리도 수행할 수 있다.
가입자는 소유한 이동 통신 단말기에 UICC 카드를 삽입하여 해당 이동 통신 사업자의 네트워크 및 응용 서비스의 이용이 가능하다. 그리고 가입자는 이동 통신 단말기 교체 시 UICC 카드를 기존 이동 통신 단말기에서 새로운 이동 통신 단말기로 이동 삽입함으로써 UICC 카드에 저장된 인증 정보, 이동통신 전화번호, 개인 전화번호부 등을 새로운 이동 통신 단말기에서 그대로 사용이 가능하다.
그러나, SIM 카드는 이동 통신 단말기 사용자가 다른 이동 통신사의 서비스를 제공받는데 있어 불편한 점이 있다. 이동 통신 단말기 사용자는 이동 통신 사업자로부터 서비스를 받기 위해 SIM 카드를 물리적으로 획득해야 되는 불편함이 있다. 예를 들면, 다른 나라로 여행을 했을 때 현지 이동통신 서비스를 받기 위해서는 현지 SIM 카드를 구해야 하는 불편함이 있다. 로밍 서비스의 경우 불편함을 어느 정도 해결해 주지만, 비싼 요금 및 통신사간 계약이 되어 있지 않은 경우 서비스를 받을 수 없는 문제도 있다.
한편, UICC 카드에 SIM 모듈을 원격으로 다운로드 받아서 설치할 경우, 이러한 불편함을 상당 부분 해결할 수 있다. 예를 들면, 사용자가 원하는 시점에 사용하고자 하는 이동통신 서비스의 SIM 모듈을 UICC 카드에 다운로드 받을 수 있다. 이러한 UICC 카드는 또한 복수 개의 SIM 모듈을 다운로드 받아서 설치하고 그 중의 적어도 한 개의 SIM 모듈만을 선택하여 사용할 수 있다. 이러한 UICC 카드는 단말기에 고정하거나 고정하지 않을 수 있다. 단말에 고정하여 사용하는 UICC를 통상적으로 eUICC라고 하는데, 본 개시에서는 원격으로 SIM 모듈을 다운로드 받아 선택할 수 있는 UICC 카드를 eUICC로 통칭한다. 즉, 원격으로 SIM 모듈을 다운로드 받아 선택할 수 있는 UICC 카드 중 단말에 고정하는 UICC 카드 및 고정하지 않는 UICC 카드를 통칭하여 eUICC로 사용한다. 또한 다운로드 받는 SIM 모듈정보를 통칭하여 프로파일(Profile) 이라는 용어로 사용한다. 프로파일의 예는 초기 설정을 위한 Connectivity를 위해서만 용도 제한된 프로파일인 프로비저닝 프로파일 (provisioning Profile), 그리고 이런 용도 제한이 없는 프로파일인 오퍼레이셔널 프로파일 (operational Profile), 테스트용으로 한정된 테스트 프로파일(test Profile)등으로 용도에 따라 더 구분될 수도 있다.
eUICC내에 프로파일을 설치하기 위해서는 통상 단말의 출고 이후에 단말 사용자가 프로파일 다운로드 서버와 실시간 네트워크 연결을 통해서 프로파일을 다운로드하는 것을 가정하고 있다. 현재, GSMA에서 정의된 eSIM 표준화 규격인 Remote Profile Provisioning 표준 규격들, 일 예로 Consumer 단말향 Remote SIM Provisioning 표준인 SGP.21/22, IoT 단말향 Remote SIM Provisioning 표준인 SGP.31/32, M2M 단말향 Remote SIM Provisioning 표준인 SGP.01/02에 따르면, 단말은 프로파일 다운로드 서버와 실시간으로 네트워크로 연결되어, 단말과 프로파일 서버간에 여러 차례 메시지를 주고받는 과정 및 이 과정에서 상호 인증(Common Mutual Authentication)을 거친 다음에 프로파일을 다운로드하는 과정으로 정의하고 있다. 하지만, 단말은 프로파일 다운로드 서버와 프로파일을 다운로드하는 시점에서 항상 네트워크가 연결된 상황을 가정할 수 없다. 따라서, 이를 해소하기 위해서 단말에 초기 설정을 위한 connectivity만을 제공하는 용도로, 용도가 제한된 프로파일인 provisioning Profile(프로비저닝 프로파일)이 SGP.21/22에 도입되었다. 이에 따라, 단말 제조사는 provisioning Profile이 탑재된 eUICC를 출고할 수도 있다. 또한, 서비스 사업자와 계약에 의거하여 제조사에서 상기 eUICC내에 위와 같은 용도 제한이 없는 통신 사업자의 Operational Profile을 선 탑재하여 출고하는 경우도 가능할 수 있다.
또한, 공장에서 사업자 프로파일을 eSIM 단말에 최초 설치 후에 사업자 주문 변경, 리퍼 단말 등의 이유로 설치한 프로파일을 변경 및 재 주입해 출고할 수 있도록 지원이 필요한 경우가 발생할 수 있다. 현재의 SGP.XX는 프로파일 설치를 위해 사용하는 eUICC의 1회성 암호화 키(otPK.EUICC.KA)는 1개만 생성하여 사용하고, 프로파일 설치 후 eUICC가 폐기하므로, 공장에서 단말의 eUICC에 프로파일을 재 주입 또는 추가 주입 출고를 지원할 수가 없어, 본 발명에서는 아 문제를 해결하고자 한다.
한편, 공장에서 프로파일을 단말에 프로비저닝 하는 신규 Work Item이 최근 GSMA(GSM Association, 통신사업자 연합)에서 승인되어 SGP.41 (기술 요구사항 규격), SGP.42(기술 규격(예정))으로 공장에서 프로파일을 단말에 프로비저닝하기 위한 장치 및 방법들에 대한 표준화 논의가 이루어질 예정이다.
본 개시에서 공장에서 프로파일을 프로비저닝하기 위한 기능은 IFPP (In Factory Profile Provisioning) 기능이라고 지칭하고 해당 기능을 지원하는 상태로 진입하는 경우 IFPP 모드로 진입 또는 IFPP 상태로 표기할 수 있다. 또는 각 Entity의 이름 끝에 "f"를 추가로 붙여서 해당 모드로 동작하는 상태임을 표기할 수도 있다. 예를 들어, 특정 Entity로서 단말, LPA, eUICC, 프로파일 서버, 팩토리 IT, SP(Service Provider) 서버, EUM(eUICC Manufacturer) 서버는 IFPP 모드를 더 지원하는 Entity일 수 있으며, 또는 해당 기능만을 지원하는 Entity일 수 있다. 예를 들어, 프로파일 서버의 하나인 SM-DP+는 SGP.21/22에서 정의한 Consumer향 Remote SIM Provisioning 기능을 지원하지만, SGP.41/42에서 정의하는 IFPP 기능의 일부를 추가적으로 더 지원하는 서버일 수 있다. 또는 프로파일 서버인 SM-DP+는 IFPP 기능 만을 지원하는 프로파일 서버일 수도 있다. IFPP 상태로 동작하고 있는 프로파일 서버는 일 예로 프로파일서버f와 같이 본 발명에서 혼용하여 표기할 수도 있다.
본 개시에서 UICC(Universal Integrated Circuit Card)는 이동통신 단말기에 삽입하여 사용하는 스마트카드로서 이동통신 가입자의 네트워크 접속 인증 정보, 전화번호부, SMS와 같은 개인정보가 저장되어 GSM, WCDMA, LTE, 5G 등과 같은 이동통신 시스템에 접속 시 가입자 인증 및 트래픽 보안 키 생성을 수행하여 안전한 이동통신 이용을 가능케 하는 칩을 의미할 수 있다. UICC에는 가입자가 접속하는 이동통신 네트워크의 종류에 따라 SIM(Subscriber Identification Module), USIM(Universal SIM), ISIM(IP Multimedia SIM)등의 통신 어플리케이션이 탑재되며, 또한 전자지갑, 티켓팅, 전자여권 등과 같은 다양한 응용 어플리케이션의 탑재를 위한 상위 레벨의 보안 기능을 제공할 수 있다.
본 개시에서 eUICC(embedded UICC)는 단말에 내장된 보안 모듈로 한정하지 않으며 단말에 삽입 및 탈거가 가능한 착탈식 보안 모듈을 포함한다. eUICC는 OTA(Over The Air)기술을 이용하여 프로파일을 저장한 서버로부터 다운받아 설치할 수 있다. eUICC는 프로파일 다운로드 및 설치가 가능한 UICC로 명명할 수 있다.
본 개시에서 eUICC에 OTA 기술을 이용하여 프로파일을 다운받아 설치하는 방법은 전술한 바와 같이 단말에 삽입 및 탈거가 가능한 착탈식 UICC에도 적용될 수 있다. 예를 들면, 본 개시의 실시 예는 OTA 기술을 이용하여 프로파일을 다운 받아 설치 가능한 착탈식 UICC에 적용될 수 있다. 본 개시에서 eUICC 고유 식별 번호로(eUICC ID)는 EID로 지칭될 수 있다. 본 개시에서 지칭하는 UICC는 SIM과 혼용될 수 있고, 용어 eUICC는 eSIM과 혼용될 수 있다.
본 개시에서 프로파일(Profile)은 UICC 내에 저장되는 어플리케이션, 파일시스템, 인증키 값 등을 소프트웨어 형태로 패키징 한 것을 의미할 수 있다. 또한, 프로파일을 접속정보로 명명할 수 있다. 또한, 본 개시에서 USIM 프로파일은 프로파일과 동일한 의미 또는 프로파일 내 USIM 어플리케이션에 포함된 정보를 소프트웨어 형태로 패키징 한 것을 의미할 수 있다. 본 개시에서 프로파일 패키지(Profile Package) 내지 암호화된 프로파일 패키지 (Bound Profile Package, BPP)는 프로파일과 혼용되거나 특정 프로파일의 데이터 객체(data object)를 나타내는 용어로 사용될 수 있으며, 프로파일 TLV 또는 프로파일 패키지 TLV (Profile Package TLV)로 명명될 수 있다. 프로파일 식별자는, 프로파일의 고유 식별 번호를 나타내는 ICCID (Integrated Circuit Card Identifier)로 지칭될 수 있다. 프로파일 패키지가 암호화 파라미터를 이용해 암호화된 경우 보호된 프로파일 패키지(Protected Profile Package (PPP)) 또는 보호된 프로파일 패키지 TLV (PPP TLV)로 명명될 수 있다. 프로파일 패키지가 특정 eUICC에 의해서만 복호화 가능한 암호화 파라미터를 이용해 암호화된 경우 묶인 프로파일 패키지(Bound Profile Package (BPP)) 또는 묶인 프로파일 패키지 TLV (BPP TLV)로 명명될 수 있다. 프로파일 패키지 TLV는 TLV (Tag, Length, Value) 형식으로 프로파일을 구성하는 정보를 표현하는 데이터 세트 (set) 일 수 있다.
본 개시에서 프로파일 서버는 프로파일을 생성하거나, 생성된 프로파일을 암호화하거나, 프로파일 원격관리 명령어를 생성하거나, 생성된 프로파일 원격관리 명령어를 암호화하는 기능을 제공하거나, IFPP 모드를 제공하거나, 또는 단말의 복수 프로파일 활성화 지원 기능을 포함할 수 있는 서버로, SM-DP(Subscription Manager Data Preparation), SM-DP+(Subscription Manager Data Preparation plus), SM-SR (Subscription Manager Secure Routing)으로 표현될 수 있다.
본 개시에서 사용하는 용어 '단말' 또는 '기기'는 이동국(MS), 사용자 장비(UE; User Equipment), 모바일 장비(ME: Mobile Equipment), 사용자 터미널(UT; User Terminal), 무선 터미널, 액세스 터미널(AT), 터미널, 가입자 유닛(Subscriber Unit), 가입자 스테이션(SS; Subscriber Station), 무선 기기(wireless device), 무선 통신 디바이스, 무선 송수신 유닛(WTRU; Wireless Transmit/Receive Unit), 이동 노드, 모바일 또는 다른 용어들로서 지칭될 수 있다. 단말의 다양한 실시 예들은 셀룰러 전화기, 무선 통신 기능을 가지는 스마트 폰, 무선 통신 기능을 가지는 개인 휴대용 단말기(PDA), 무선 모뎀, 무선 통신 기능을 가지는 휴대용 컴퓨터, 무선 통신 기능을 가지는 디지털 카메라와 같은 촬영장치, 무선 통신 기능을 가지는 게이밍 장치, 무선 통신 기능을 가지는 음악저장 및 재생 가전제품, 무선 인터넷 접속 및 브라우징이 가능한 인터넷 가전제품뿐만 아니라 그러한 기능들의 조합들을 통합하고 있는 휴대형 유닛 또는 단말기들을 포함할 수 있다. 또한, 단말은 지원하는 성능 특성에 따라 M2M(Machine to Machine) 단말, MTC(Machine Type Communication) 단말/디바이스, IoT 단말/디바이스를 포함할 수도 있다. 본 개시에서 상기 단말은 전자장치 또는 단순히 디바이스라 지칭할 수도 있다. eUICC로 프로파일 설치하는 기능을 제공하는 단말(120)은 eSIM 단말로 부를 수도 있다.
본 개시에서 EUM은 eUICC Manufacturer로 eUICC를 생산하고 eUICC를 personalization하여 제공하는 제조 업체를 의미하며 EUM에서 전달하는 정보들은 EUM 서버 또는 별도 구성 요소 간의 채널을 통해서 온 오프라인으로 전달될 수 있다. 본 개시의 실시 예에 따르면 EUM은 EUM 서버 또는 EUM에서 수행하는 역할을 의미할 수 있다.
본 개시에서 상기 단말 또는 기기는 UICC 또는 eUICC를 제어하도록 단말 또는 기기 내에 설치된 소프트웨어 또는 애플리케이션을 포함할 수 있다. 상기 소프트웨어 또는 애플리케이션은, 일 예로 Local Profile Assistant(LPA), SIM Manager, IoT Profile Assistant(IPA)와 같은 애플리케이션일 수 있다. 해당 소프트웨어 또는 기능들은 통합되어 제공될 수도 있다. 예를 들어 LPA와 IPA는 하나의 통합 앱으로 제공될 수도 있다. 본 개시에서 UICC 또는 eUICC를 제어하도록 단말 또는 기기 내에 설치된 소프트웨어 또는 애플리케이션을 통칭하여 LPA로 표기할 수 있다.
본 개시에서 APDU(Application Protocol Data Unit)는 단말 또는 기기 내의 제어부(Controller)가 eUICC와 주고받는 메시지 형태 또는 메시지일 수 있다. APDU는 Command와 Response의 한 쌍이며, APDU Command와 APDU Response는 ISO 7816을 참조하여 ETSI 102.221에 정의되어 있다. ETSI 102.221에 정의된 바와 같이 APDU Command는 APDU의 헤더로 CLA(Class of Instruction), INS(Instruction), P1(Instruction Parameter 1), P2(Instruction Parameter 2), Body로 Lc(Number of bytes in the command data field), Data, Le(Number of bytes expected in response of the command)의 구조를 가지며, APDU Response는 Optional Data field와, SW1(Status byte 1), SW2 (Status byte 2)의 구조를 가지며 이에 대한 상세한 설명은 ETSI 102.221 규격을 참조한다. LPA 또는 단말에서 전송하는 애플리케이션 메시지는 eUICC에 APDU 형태로 전송될 수 있으며 이 때 전송하는 정보는 APDU의 Data에 포함되어 전송될 수 있다.
본 개시에서 AKA는 인증 및 키 합의 (Authentication and Key agreement)를 나타낼 수 있으며, 3GPP 및 3GPP2망에 접속하기 위한 인증 알고리즘을 나타낼 수 있다. K는 AKA 인증 알고리즘에 사용되는 eUICC에 저장되는 암호키 값이며, 본 개시에서 OPc는 AKA 인증 알고리즘에 사용되는 eUICC에 저장될 수 있는 파라미터 값이다.
본 개시에서 NAA는 네트워크 접속 어플리케이션 (Network Access Application) 응용프로그램으로, UICC에 저장되어 망에 접속하기 위한 USIM 또는 ISIM과 같은 응용프로그램일 수 있다. NAA는 망접속 모듈일 수 있다.
본 개시에서 End user, 사용자, 가입자, 서비스 가입자, user는 해당 단말의 사용자로 혼용되어 사용될 수 있다.
본 개시에서 Factory IT는 제조 공정에서 단말에 특정 데이터 또는 설정을 프로비저닝하도록 처리하는 역할을 담당하는 장치로 단말에 프로파일을 다운로드 해 주는 기능을 포함하는 모듈을 지칭할 수 있고, 프로파일 서버로부터 프로파일들을 획득하여 저장할 수 있는 기능을 더 포함할 수도 있다. Factory IT는 팩토리 IT 장비,팩토리 IT 서버, 팩토리 프로비저닝 장비, 공장 서버와 혼용되어 사용될 수 있고, 이하 서버로 표현하였더라도 본 발명에서 Factory IT는 1개 이상의 모듈, 일 예로 데이터를 저장하는 서버와 설정 또는 데이터를 eSIM 단말에 주입해 주는 역할을 하는 단말로 구성되는 것도 가능할 수 있다.
본 개시에서 OEM은 단말 제조사, 제조사와 혼용되어 사용될 수 있다.
본 개시에서 Service provider(SP)는 통신 서비스 사업자, MNO, 모바일 네트워크 사업자, 사업자, 통신사, SP 서버로 혼용되어 사용할 수 있으며 실시 예에 따라 Service provider는 Service Provider의 서버 또는 Service Provider에서 수행하는 역할을 의미할 수 있다.
본 개시에서 서버 벤더는 프로파일 서버를 운용하는 벤더를 의미하며, 프로파일 서버 벤더에서 수행하는 역할을 의미할 수 있다.
본 개시에서 암호화 키는 암복호화키를 모두 포괄하는 의미로 사용하였다. 예를 들어 데이터를 암호화하는 데 사용하는 개인키 또는 이를 복호화하는 공개키가 포함될 수 있으며, 공개 키는 인증서 형태로 공유될 수도 있다.
본 개시는 eUICC를 포함하는 단말에 프로파일을 삽입하여 출고할 수 있도록 하는 방법 및 장치를 제공하고자 하는 것이다.
특히, 본 개시는 공장에서 사업자 프로파일을 eSIM 단말에 최초 설치 후에
사업자 주문 변경 등으로 설치한 프로파일을 변경 및 재 주입해 출고할 수 있도록 지원하도록 하는 방법 및 장치를 제공하고자 하는 것이다. 현재 프로파일 설치를 위해 사용하는 eUICC의 1회성 암호화 키(otPK.EUICC.KA)는 1개만 생성하여 사용하고 폐기하므로, 프로파일 설치 후 eUICC가 폐기하므로 프로파일 변경 및 재 주입 출고를 지원할 수가 없다.
또한, 본 개시는 공장 환경의 특성상 대량의 단말들에 빠르게 프로파일 주입이 필요하여, 프로파일 서버와 개별 단말 간 실시간 네트워크 연결 및 상호 인증하는 절차를 포함하여 여러 차례 왕복으로 메시지를 주고받는 과정을 수행하기 어려우므로 이를 극복하여 대량의 단말들에 프로파일들을 신속하게 다운로드하여 설치해 줄 수 있는 방법 및 장치를 제공하고자 하는 것이다. 또한, 프로파일 서버와 단말 간 실시간 연결을 고려하지 않고 Factory IT 장비에서 프로파일(들)을 단말에 프로비저닝하는 방법이 필요할 수 있으며, 특히 프로파일 서버 (일 예로 SM-DP+) - eUICC간 "비 실시간성"을 고려한 프로파일 암호화 키 전달 및 검증, 설치하는 방법이 필요할 수 있다. 또한, 공장에서 대량으로 프로파일을 프로비저닝하는 환경을 고려한 방식이 필요하며, 특히 이를 위해 프로파일들을 주문 및 준비하는 과정에서 Entity간에 대량의 프로파일(들)의 정보를 전송할 수 있도록 제공하는 방법 및 장치가 필요할 수 있다.
본 개시의 다양한 실시 예에 따르면, 단말 제조사는 대량의 프로파일들을 프로파일 서버와의 실시간 연결이 없이도 eSIM 단말에 미리 설치하여 출고할 수 있다. 또한, 단말 제조사는 반품, 사업자의 주문 변경 등으로 설치한 프로파일 변경 재 주입하여 출고를 지원하여 재고를 효율적으로 관리할 수 있다.
또한, 본 개시의 다양한 실시 예에 따르면, 사용자는 프로파일이 이미 설치된 단말을 구입함으로써 네트워크에 바로 접속할 수 있어 사용자가 프로파일 다운로드를 위해 와이파이 또는 이동통신 망을 찾아가야 하는 불편함을 해소할 수 있으므로 사용자의 편의성을 증대시킬 수 있다.
또한, 본 개시의 다양한 실시 예에 따르면, 통신 사업자는 자사 프로파일 다운로드를 위한 Provisioning Profile 또는 자사의 네트워크 서비스를 바로 이용할 수 있는 operational Profile이 설치된 상태로 단말을 사용자에게 제공할 수 있으므로 사용자의 eSIM 사용 편리성을 재고할 수 있다.
아래 실시 예들은 공장에서 프로파일을 주입하여 출고하는 절차들에 대한 기술하였으며, 아래 공장에서 프로파일들을 주입하여 출고한 이후의 특정 시점에 단말 사용자는 공장 외부의 일반 사용자 환경에서 SGP.21/22에 정의된 절차에 의거하여 프로파일을 프로비저닝하여 설치할 수도 있음에 유념해야 한다. 즉, 아래 실시 예들은 공장에서 설치하는 환경에서의 프로비저닝을 설명하고자 하며, 이는 공장 출고 후의 일반 환경에서의 프로파일 설치를 불가함을 의미하는 것이 아님을 분명히 한다.
도 1은 본 개시의 일 실시 예들에 따른 프로파일을 프로비저닝하기 위한 구성 요소 간의 관계를 나타낸 도면이다.
도 1을 참조하면, 프로파일 서버/서버 벤더(이하, 프로파일 서버 또는 서버 벤더로 칭할 수 있다.)(100)는 프로파일을 생성하거나, 생성된 프로파일을 저장하거나, 생성된 프로파일을 암호화하거나, 원격 프로파일 관리 명령어(RPM: Remote Profile Management)를 생성하거나, 생성된 프로파일 원격 관리 명령어를 암호화하는 기능을 포함하거나, 생성된 프로파일을 eSIM 단말 또는 다른 프로파일 저장 서버에 전송하는 기능을 지원하거나 IFPP를 위한 프로파일을 생성하거나, IFPP를 위해 생성된 프로파일 저장하거나, 또는 IFPP를 위해 생성된 프로파일을 암호화하는 기능을 지원하는 서버 중 적어도 하나를 나타낼 수 있다. 원격 프로파일 관리(RPM: Remote Profile Management)는 프로파일 서버(100)에서 단말(120)로 전송하는 명령어에 의해 프로파일 설치, 활성화, 비활성화, 삭제 및 기타 기능이 수행되는 일련의 절차를 통칭할 수 있다. RPM은 통신 사업자, 서비스 제공자, 또는 단말의 소유자에 의해 요청되어 프로파일 서버(100)에 의해 명령어가 생성될 수 있다. 상기 프로파일 서버/서버 벤더(100)는 SP(Service Provider)/SP 서버(이하, SP 또는 SP 서버로 칭할 수 있다.)(150)로부터 프로파일 주문 요청을 수신하여 IFPP를 위한 프로파일 생성을 위한 요청인지를 판별하거나, Factory IT 서버/OEM(이하, Factory IT, Factory 서버, 또는 OEM으로 칭할 수 있다.)(110) 내지 SP/SP서버(150)로부터 수신된 프로파일 주문 정보를 주문한 EID 정보와 조합하여 프로파일과 EID를 맵핑하여 프로파일 서버(100)에 준비해 둘 수도 있다. SP/SP서버(150)는 Factory IT서버/OEM(110)으로부터 수신된 프로파일 주문 요청을 수신하여 IFPP를 위한 프로파일들에 대한 제공 주문 요청인지를 판별하여 SP/SP서버(150)에서 프로파일 서버/서버 벤더(100)로 주문을 넣음으로써, 프로파일 서버(100)에서 1개 이상의 BPP(Bound Profile Package)를 Factory IT/OEM(110)에 제공하도록 할 수 있다.
단말(120)은 eUICC(140)와 통신 모뎀(미도시)을 포함할 수 있다. 통신 모뎀은 무선 통신을 위한 기저대역 프로세서(Baseband Processor) (이하 기저대역(Baseband))가 1개 이상 탑재될 수도 있다. 단말(120)은 Factory IT/OEM(110)로부터 IFPP를 위해 생성된 BPP(들)을 제공받아 eUICC(140)로 BPP(들)을 설치하는 기능을 제공할 수 있다. 단말(120)은 BPP를 eUICC(140)로 전달할 수 있는데, LPAf로 동작하는 LPA(130)를 거쳐서 eUICC(140)에 전달하거나 또는 LPA(130)를 거치지 않고 eUICC(140)로 전달할 수도 있다. 해당 전송 되는 메시지들에는 BPP와 함께 BPP의 포함 또는 BPP에 추가 파라미터들이 전송될 수 있는데 이는 이하 도 2 내지 도 6에서 기술하는 (275 단계) 내지 (375 단계) 내지 (475단계) 내지 (575단계) 내지 (675 단계)에서 상세 기술하기로 한다.
LPAf로 동작하는 LPA(130)를 사용하여 eUICC(140)로 전달되는 BPP의 설치 및 암호화 키 정보들에 대한 메시지를 전송하는 방법들에 대한 일 예로는 ES10x로 시작하는 하나 이상의 메시지에 포함되어 전송되는 방법일 수 있다. 또는 LPA를 거치지 않고 전송하는 경우에, STORE DATA와 같은 APDU의 데이터로 전송될 수도 있다.
한편, 프로파일 서버(100)를 1개로 표현하였으나 프로파일 서버(100)는 복수 개일 수 있고 이에 따라 Factory IT(110)는 복수 개의 프로파일 서버(100)로부터 BPP들을 수신하여 저장해 둘 수도 있다.
전술한 바와 같이 LPA(130)는 eUICC 제어 소프트웨어 또는 애플리케이션으로 IFPP 기능을 지원할 수 있다. LPA(130)는 단말(120) 내지 eUICC(140)의 논리적인 기능으로 구현될 수도 있다. LPAf로 동작하는 LPA(130)는 Factory IT(110)로부터 프로파일과 프로파일 서버(100)를 인증하기 위한 추가적인 인증 정보들을 수신 받아 이를 eUICC(140)로 제공해 줄 수 있고, eUICC(140)로부터 프로파일 설치 결과를 획득하여 Factory IT(110)에 전달해 주는 역할을 수행할 수도 있다.
eUICC(140)은 LPAf로 동작하는 LPA(130)로부터 수신한 ES10x의 하나 이상의 메시지 또는 Factory IT(110) 또는 단말의 공장 설정에 대한 애플리케이션이나 소프트웨어를 통해서 수신한 프로파일 설치 메시지를 통해 공장에서의 프로파일 설치를 위한 요청임을 판별하여 IFPP모드로 진입을 결정할 수 있다. 만약 eUICC(140)가 IFPP 기능을 지원하지 않는 경우, eUICC(140)은 에러를 리턴하고 IFPP 처리를 종료할 수도 있다.
eUICC(140)는 프로파일과 프로파일 서버(100) 인증을 위한 정보들을 단말(120)로부터 획득하여 해당 정보를 가지고 프로파일의 복호화를 수행하여 설치를 처리하고, 설치된 결과를 해당 요청을 전송한 구성 요소, 즉 단말의 특정 애플리케이션 또는 단말의 LPAf로 동작하는 LPA(130)에 회신할 수도 있다. 또한, eUICC(140)는 수신된 메시지를 서명한 구성 요소의 서명 검증을 통해서 프로파일을 암호화한 프로파일 서버(100)를 검증하거나 또는 메시지를 전송한 프로파일 서버(100)의 인증을 수행할 수도 있다. eUICC(140)에는 eUICC(140)의 보안 도메인들에서 요구하는 인증서들(Credentials), 예를 들어 프로파일 서버(100)인 SM-DP+ 인증서를 검증하기 위한 증명서 발급자의 루트 공개 키(Certificate Issuer's Root public Key), eUICC 제조사의 키 셋(keyset) 등을 저장하는 공간인 ECASD(Embedded UICC Controlling Authority Security Domain), eSIM 운영 플랫폼 등이 포함될 수 있다. 또한, LPA의 기능의 일부가 구현되어 있을 수도 있다.
Factory IT/OEM(110)는 공장에서 단말에 프로파일을 프로비저닝하는 역할을 담당하는 장치로 1개 이상의 서버나 PC등과 같은 단말들로 구성될 수 있다. Factory IT/OEM(110)는 EUM/EUM 서버(이하, EUM 또는 EUM 서버로 칭할 수 있다.)(160)로부터 일회용 암호화 키를 포함한 해당 eUICC(140)들에 대한 소정의 정보들을 획득하거나, 프로파일 서버/서버 벤더(100)에 상기 획득한 정보의 전체 또는 일부를 전달하거나, SP/SP 서버(150)에 주문할 EID와 프로파일에 대한 맵핑(mapping)을 위한 정보를 전달하거나, 수신된 암호화 키 정보와 BPP를 저장하거나 하는 서버 일 수 있다. Factory IT 서버/OEM(110)은 프로파일 서버/서버 벤더(100)에 공장에서 주입을 위한 BPP(S)를 요청하거나, 해당 요청의 결과로써 프로파일 서버/서버 벤더(100)로부터 eUICC(140)에 설치를 위한 BPP와 프로파일 서버(100)에서 서명한 데이터들을 획득하거나 수신된 BPP들와 서명된 데이터들 Factory IT 서버(110)에 저장하고 있거나, 또는 수신 또는 저장된 BPP들 중에서 프로파일을 설치할 대상 단말의 EID에 맵핑되는 BPP를 골라서 공장 설정 과정에서 맵핑되는 단말로 BPP를 전달 중 적어도 하나를 수행할 수 있다. Factory IT 서버(110)에서 프로파일 서버(100), SP 서버(150), EUM(160)과 주고받는 정보들의 일부는 서버 간 인터페이스를 통한 메시지 송수신이 아닌 다른 온 오프라인 채널 (예, 이메일 전송 등) 다른 형태로 해당 역할을 수행하는 주체 간(즉, 단말 제조사, 프로파일 서버 운영 벤더, 서비스 사업자, eUICC 제조사)에 공유될 수도 있다.
Factory IT/OEM(110)은 위에 설명한 바와 같이 단말 제조사 또는 단말 제조사의 Factory IT에서 수행하는 동작을 의미하므로, 이하 도면들에서도 하나의 Entity로 표현하였으나, 여러 개의 장치(예. 서버 또는 PC등의 단말)로 구성될 수 있음에 유의해야 한다. 이에 따라 예를 들어, BPP들을 프로파일 서버/서버 벤더(100)에 요청하거나 BPP들을 획득하는 인터페이스를 제공하는 Factory IT/OEM(110)내 장치와 Factory IT/OEM(110)에서 단말(120)에 프로파일을 주입하거나 주입한 설치 결과를 획득하는 접점에 있는 Factory IT/OEM(110)의 장치는 서로 같거나 다른 장치일 수도 있음에 유의해야 한다.
EUM(eUICC Manufacturer)(160)은 eUICC 제조 업체로 eUICC 인증을 위한 자격 증명을 위한 키 정보들을 eUICC(140)에 주입하여 개인화(personalization)한 eUICC(140)들을 단말 제조사에 제공하거나, EUM(eUICC Manufacturer)/EUM 서버(160)에서 일회용 암호화 키를 포함한 해당 eUICC(140)들에 대한 소정의 정보들을 OEM/Factory IT 서버(110)에 제공할 수도 있다. 또한, 본 개시도면에는 도시되지 않았으나, 일회용 암호화 키를 포함한 해당 eUICC(140)들에 대한 소정의 정보들은 OEM(110)의 요청에 따라 EUM(eUICC Manufacturer)/EUM 서버(160)에서 프로파일 서버/서버 벤더(100)로 전송될 수도 있다.
SP(Service Provider)(150)는 전술한 바와 같이 프로파일을 사용하여 네트워크 서비스를 제공하는 사업자로, SP/SP 서버(150)에서 IFPP 기능을 위한 프로파일(들)을 프로파일 서버/서버 벤더(100)에 주문하여 프로파일 서버(100)에서 주문받은 프로파일들을 생성 및 준비하도록 할 수 있다.
이하, 전술한 구성 모듈들에 대한 설명을 후술할 도면들에서 표기된 모듈들의 역할 및 관계에서도 적용할 수 있다. 또한, 전술한 구성 모듈 중에서 프로파일 서버/서버 벤더(100), Factory IT 서버/OEM(110), EUM/EUM 서버(160), SP/SP 서버(150)간에 주고받는 정보로써 주문 정보들은, 각 Entity의 서버 간 인터페이스 연동 또는 이메일 등 다른 형태로 전달될 수도 있다.
도 2는 본 개시의 일 실시 예에 따른 otPK Index ID를 사용하고 Factory IT가 사용 순서를 지정하여 사용하는 방식을 설명하기 위한 도면이다.
도 2를 참조하면, 단말을 출고하기에 앞서 단말 제조사는 공장에서 프로파일을 eUICC에 선 탑재하여 출고할 수 있으며 이 경우 1개 이상의 단말들, 특히 대량의 단말들에 프로파일들을 프로비저닝 할 수도 있다. 이 단계는 프로파일들을 준비하여 Factory IT/OEM(215)에 전달하는 단계(227), 및 Factory IT에서 이를 N개의 서로 다른 eUICC(225)에 설치하는 단계(270)로 나누어질 수 있다.
227 단계에서, IFPP용 프로파일들을 준비하여 Factory IT/OEM에 전달할 수 있다. eUICC를 탑재한 단말을 제조하고자 하는 단말 제조사는 EUM/EUM 서버(200)를 통해 M개의 eUICC들을 주문할 수 있고, EUM(200)은 주문받은 M개의 eUICC들에 대한 암호화 키 정보들을 포함한 소정의 정보들(Key Materials)을 Factory IT/OEM(215)에 제공(230 단계)할 수 있다. EUM(200)이 제공하는 Key Material 정보로 EUM(200)은 eUICC별 otPK.EUICC.KA를 포함할 수 있고, otPK.EUICC.KA는 eUICC 서명된 값으로 전송될 수 있다. 또한, EUM(200)이 제공하는 Key Material 정보로 EUM(200)은 otPK. EUICC.KA를 식별하기 위한 식별 정보로 Index ID를 더 포함할 수 있다. Index ID는 eUICC 서명 또는 서명 되지 않은 값으로 전달될 수 있다. otPK.EUICC.KA 내지 Index ID가 eUICC 서명된 값으로 전송되는 경우에 EUM은 eUICC의 공개키를 더 포함하여 Factory IT/OEM(215)전송할 수 있으며, 이는 eUICC 인증서에 포함되어 전송될 수도 있다. EUM(200)이 eUICC에서 N회의 프로파일 설치를 지원하는 경우, N개의 otPK.EUICC.KA, 그리고 이를 구분하기 위한 Index ID가 Factory IT/OEM(215)에게 전달될 수 있다.
Index ID는 otPK.EUICC.KA와 맵핑되는 정보로, 이를 수신받는 eUICC(225)가 해당 Index ID를 가지고 세션키 생성에 사용할 otSK.EUICC.KA를 판단하는 정보로 전달될 수 있다. Index ID otPK.EUICC.KA를 구분할 수 있는 값으로 구성될 수 있으며, 이는 일 예로 otPK.EUICC.KA의 일부 또는 전체 값, 또는 일부 또는 전체를 포함하여 생성한 값, 또는 일부 또는 전체 내지 일부 또는 전체를 포함하여 생성한 값을 해쉬한 값 또는 해쉬한 값의 일부 또는 otPK.EUICC.KA로 파생(derivate)해서 생성한 값으로 구성될 수도 있다. 또는 otPK.EUICC.KA를 특정할 수 있는 번호 또는 특정할 수 있는 번호를 포함하여 생성한 값일 수도 있다. Index ID는 Integer, String, Binary와 같은 데이터 포맷으로 정의될 수도 있다. Index ID에 대한 설명은 본 발명에서 다른 도면에 설명하지 않더라도 동일하게 적용될 수 있다.
EUM/EUM 서버(200)는 IFPP용 프로파일들에 대한 주문을 받은 경우, eUICC별로 BPP 복호화에 필요한 eUICC 암호화 키 정보들을 포함하여 Factory IT/OEM(215)에 제공할 수 있다. 이를 수신한 Factory IT/OEM(215)는 주문받은 M개의 eUICC들에 대한 암호화 키 정보들을 Factory IT 서버(215)에 저장(235 단계)할 수 있다.
이후 특정 시점에, Factory IT/OEM(215)는 EUM(200)으로부터 주문한 M개의 eUICC들의 일부 N개 또는 전체 eUICC에 프로파일 탑재를 결정할 수 있다. 이는, SP(Service Provider)/SP 서버(205)로부터의 프로파일의 선 탑재 출고 요청에 따른 것일 수 있다.
Factory IT/OEM(215)는 추가적인 선택적인(optional) 절차로 SP/SP 서버(205)에게 EID에 Linked된 프로파일을 사전에 준비할 수 있도록 Profile(들) 개수, EID(들)의 리스트 중 적어도 하나의 정보를 SP/SP서버(205)에게 전달(240 단계)할 수 있다. SP/SP 서버(205)는 프로파일을 프로파일 서버/서버 벤더(210)에 주문(245 단계)할 수 있다. 앞서 240 단계를 수행하여 EID 리스트를 가지고 있거나 또는 이전 특정 시점에서 EID 리스트를 획득한 경우, SP/SP 서버(205)는 Profile을 주문 시 EID 정보를 포함하여 프로파일 서버/서버 벤더(210)에 요청할 수 있다. SP/SP 서버(205), 프로파일 서버/서버 벤더(210), 및 Factory IT/OEM(215)는 해당 주문을 특정할 수 있는 정보를 서로 공유(250 단계)할 수 있다. 상기 해당 주문을 특정할 수 있는 정보는 SP/SP 서버(205) 또는 프로파일 서버/서버 벤더(210)가 Factory IT/OEM(215)에게 제공하는 식별 정보로 공유될 수도 있다. 일 예로 상기 식별 정보는, Batch ID, 주문 ID 같은 정보, 주문한 프로파일 리스트 또는 EID 리스트, 프로파일 리스트 또는 EID 리스트들의 시작과 끝 번호에 관한 정보, 공장 일련 번호, 또는 생산자 식별 번호에 관한 정보 중 적어도 하나일 수 있다.
Factory IT/OEM(215)는 BPP를 프로파일 서버/서버 벤더(210)에 요청할 수 있다. Factory IT/OEM(215)는 BPP를 요청하면서 230 단계에서 획득한 eUICC들의 키 정보 중에서 SP/SP 서버(205)가 프로파일을 탑재할 단말들의 숫자인 N개 만큼 해당 대상 단말들의 eUICC에 해당하는 키 정보들을 프로파일 서버/서버 벤더(210)에 전달(255 단계)해 줄 수 있다. 이는 앞서 (230 단계)에서 수신한 키 정보들의 일부 또는 전체일 수 있다. Factory IT/OEM(215)가 EUM/EUM서버(230)로부터 eUICC별로 복수 개의 otPK.EUICC.KA 를 수신한 경우에 있어서 Factory IT/OEM(215)는 미 사용 otPK.EUICC.KA 중 하나를 골라 전송할 수 있다. 그리고, 앞서 (230 단계)에서 Index ID 포함하여 수신 여부에 따라서 다음과 같이 전송(255 단계) 할 수 있다.
· Index ID가 서명된 데이터로 수신된 경우 이를 포함해 전송
· Index ID 포함하여 수신하였으나 서명되지 않은 데이터로 수신 시 이를 포함 또는 포함하지 않고 전송
· Index ID를 수신하지 않은 경우, Factory IT/OEM(215)은 Index ID 미 포함
프로파일 서버/서버 벤더(210)은 수신한 프로파일 주문 정보(245 단계),
프로파일-EID의 링크 정보(240 단계), 상호 공유한 주문 정보(250 단계), 수신한 프로파일을 설치할 대상 eUICC들의 암호화 키 정보(255 단계)들을 수집하는 단계의 적어도 하나 이상의 단계에서 수집한 정보들을 조합하여 프로파일 서버(210)에서 암호화된 프로파일 패키지를 생성한 후 (260 단계) 해당 생성한 프로파일 패키지들과 eUICC binding에 대한 정보를 Factory IT/OEM(215)에 제공(265 단계)해 줄 수 있다. 프로파일 서버(210)는 (255 단계)의 메시지를 수신하여 Index ID가 있으면 BPP 생성을 위한 검증 및 회신 메시지를 구성할 때(260 단계) 다음의 동작을 더 수행할 수 있다.
· Index ID가 eUICC 서명된 데이터로 수신된 경우, 이를 포함하여 eUICC 서명 검증
· index ID가 eUICC 서명 또는 서명되지 않은 데이터로 수신 시, Index ID를 포함해 프로파일 서버의 서명 생성
· Index ID를 transaction ID의 값 또는 신규 파라미터로 포함하여 프로파일 서버의 서명의 생성
상기 생성한 암호화된 프로파일 패키지들과 각 BPP 암호화 키 정보들은 하나 이상의 메시지로 Factory IT/OEM(215)에 전송(265 단계)될 수 있고 해당 메시지로 전송되는 데이터의 일부 또는 전부는 서명된 데이터로 제공될 수도 있다.
(255단계)에서 Index ID가 포함되어 전송된 경우, (265 단계)에서 Index ID 가 서명된 데이터에 포함되어 전송될 수 있다. 만약 Index ID가 포함 또는 포함되지 않고 전송된 경우, (265 단계)에서 otPK.EUICC.KA가 서명된 데이터에 포함되어 전송될 수도 있다.
270 단계에서, Factory IT(215)에서 IFPP를 위한 프로파일들을 eUICC에 설치하는 동작에 대해서 설명할 수 있다. 이 단계는 N개의 eUICC에 대해서 수행될 수 있다.
Factory IT/OEM(215)는 공장에서 단말을 출고하기 전에 단말에 프로파일을 주입하여 출고할 수 있다. 이를 위해 Factory IT/OEM(215)에서 BPP와 eUICC에서 프로파일 복호화에 필요한 일련의 암호화 키 정보들을 획득하여 저장해 둘 수 있다. 해당 일련의 암호화 키 정보들은 EUICC의 일회용 공개 키(이하 otPK.EUICC.KA로 표기)가 포함될 수 있다. 해당 일련의 암호화 키 정보들에는 otPK.EUICC.KA에 맵핑되는 Index ID를 더 포함할 수도 있다.
Factory IT(215)에 BPP와 eUICC에서 프로파일 복호화에 필요한 일련의 암호화 키 정보들을 공장 내부의 유무선 네트워크를 통해 공장에서 개별 단말(220)들에 전송될 수 있다. BPP와 일련의 암호화 키 정보들은 하나이상의 메시지에 포함되어 단말(220)에 전송될 수 있다. otPK.eUICC.KA가 포함되어 전송되는 경우, otPK.eUICC.KA는 프로파일 서버로부터 서명된 데이터에 포함되어 단말(220)이 수신할 수 있다. 일 예로, 다음 중 하나로 서명된 데이터에 포함되어 수신될 수 있다. 물론 하기의 예시에 제한되지 않는다.
-SK.DPauth.SIG: 프로파일 서버에서 프로파일 서버의 인증을 사용하는 프로파일 서버의 개인키
- SK.DPpb.SIG: 프로파일 서버에서 프로파일 서버의 프로파일 바인딩을 위해 사용한 개인키
- SK.DPxx.SIG: xx가 IFFP 용도를 의미하도록 정의된 프로파일 서버의 개인키
전술한 바와 같이, SK.DPpb.SIG는 프로파일 서버에서 프로파일 바인딩을 위해 사용하는 프로파일 서버의 개인키 또는 프로파일 서버가 IFPP 용도를 위해 사용한 프로파일 서버의 개인키 일수 있다. DPxx.SIG에서 용도를 나타내는 xx에서 xx가 IFPPP 용도 임을 나타내는 특정 정보로 표기될 수 있다.
단말(220)은 Factory IT(215)로부터 BPP(들)을 제공받아 eUICC(225)로 IFPP모드에서 BPP(들)을 주입하는 기능을 제공할 수 있다. 예를 들어, 해당 단말(220)이 BPP를 수신하는 시점에 Factory Provisioning 모드인 상태로 동작하거나 단말(220)은 BPP 수신 시점에서 IFPP로 진입해야 함으로 인지하여 동작을 개시할 수도 있다. 또는, 단말(220)은 공장 직원의 단말에 입력되는 이벤트, 또는 설정 값, 또는 특정 VPN(Virtual Private Network) 임으로 인지 등을 통해서 해당 모드로 진입할 수도 있다. 한편, UI 또는 설정 값으로 IFPP 모드 진입은 일반 환경에서는 사용자에게 표시되지 않도록 제한되는 UI로 제공될 수 있다. 단말(220)은 BPP를 eUICC(225)으로 전달할 수 있는데, 전술한 바와 같이 LPAf(미도시)를 거쳐서 eUICC(225)에 전달하거나 또는 LPAf(미도시)를 거치지 않고 eUICC(225)로 전달할 수 있다 (275 단계).
LPAf(미도시)를 사용하여 eUICC로 전달되는 메시지의 한 예로 ES10x의 하나 이상의 메시지에 포함되어 전송될 수 있다. 이하, 이에 대한 실시 예는 도 4 내지 도 6에서 후술하기로 한다.
eUICC(225)가 단말(220)로부터 수신된 메시지에 IFPP을 위한 동작임을 인지할 수 있는 정보가 수신될 수 있다. eUICC(225)가 단말(220)로부터 수신된 메시지를 통해서 IFPP용으로 프로파일 설치 동작 수행으로 판단하여 진입할 수 있다.
이는 IFPP용으로 정의되는 신규 function 이거나 또는 기존 SGP.21/22 내지 SGP. 31/32에서 정의한 ES10x 메시지에 IFPP 구분자 파라미터가 추가되거나, 또는 단말 출고 후 일반 환경에서 (Consumer향, 또는 M2M향 또는 IoT향) 프로파일 프로비저닝을 위해서는 포함되는 않는, 공장 출고용 식별 정보일 수 있다. 일 예로 공장 일련 번호, Batch ID, 생산자 식별 정보와 같은 값 중의 하나일 수 있다. 물론 이에 한정되지 않는다.
전술한 바와 같이 단말(220)은 프로파일 서버로부터 otPK.EUICC.KA 또는 Index ID가 포함된 데이터를 수신할 수 있고 해당 otPK.EUICC.KA 또는 Index ID 포함된 데이터는 다음 중 하나로 서명된 데이터에 포함되어 수신될 수도 있다. 물론 하기의 예시에 제한되지 않는다.
- SK.DPauth.SIG: 프로파일 서버가 프로파일 서버의 인증을 위해 사용한 프로파일 서버의 개인키
- SK.DPpb.SIG: 프로파일 서버가 프로파일 바인딩을 위해 사용하는 프로파일 서버의 개인키
- SP.DPifpp.SIG: 프로파일 서버가 IFPP용으로 특정하여 사용한 프로파일 서버의 개인키
단말(220)은 상기 서명된 데이터를 다시 eUICC(225)에 LPAf 또는 LPAf를 거치지 않고 eUICC(225)에 전달할 수 있다. eUICC(225)는 eUICC(225)가 수신된 데이터에 대한 프로파일 서버(210)의 서명을 검증하고, 사전에 저장해 둔 eUICC의 일회성 개인키(otSK.EUICC.KA)를 이용하여 세션 키를 생성하여 BPP를 복호화하여 설치를 처리할 수 있다. (280 단계)
(280 단계)의 프로파일 서버(210)의 서명을 검증 하는 절차에 있어서, Index ID가 서명된 데이터로 수신된 경우 eUICC(225)는 이를 포함해 서명을 검증한다. 만약 Index ID가 서명되지 않은 데이터로 수신된 경우, eUICC(225)는 프로파일 서버의 서명을 검증할 때 Index ID를 포함하지 않고 서명을 검증해야 한다.
(280 단계)의 세션키를 생성하는 절차에 있어서, eUICC(225)는 Index ID 또는 otPK.EUICC.KA 수신 여부에 따라서 다음의 절차를 수행할 수 있다.
· Index ID 수신 시: Index ID에 맵핑되는 otSK.EUCC.KA로 세션 키 생성
· Index ID 미 수신하고 otPK.EUICC.KA를 수신 시: otPK.EUICC.KA에 맵핑되는 otSK.EUICC.KA로 세션 키 생성
· Index ID 미 수신하고 otPK.EUICC.KA도 미 수신 시: eUICC가 미 사용한 otSK.EUICC.KA중 1개를 순차적으로 선택해 사용 또는 에러 리턴
(280 단계)의 BPP를 복호화하여 프로파일을 설치를 성공하면, eUICC(225)는 BPP 설치를 위해 사용한 해당 otPK/SK.EUICC.KA를 폐기한다. 만약, 프로파일 설치 실패 시, eUICC(225)는 otPK/SK.EUICC.KA를 다음에 사용하도록 유지 보관해 둘 수 있다.
eUICC(225)는 프로파일의 설치 결과를 LPAf 또는 LPAf를 거치지 않고 단말에 전송하여 단말에서 Factory IT 서버(215)에 회신해 줄 수 있다. (285 단계) eUICC(225)는 Factory IT(215)에 회신하는 설치 결과 메시지로, Factory IT(215)가 확인할 설치 결과 데이터에 추가적으로 프로파일 서버/서버 벤더(210)에서 확인하도록 하는 eUICC가 서명한 설치 결과 데이터를 포함해 전송할 수 있다.
Factory IT(215)는 프로파일 설치 결과가 성공되었다는 응답을 수신하면 사용한 Key Material를 삭제하거나 해당 Key Material을 사용 완료로 상태를 변경하여 둘 수 있다. Factory IT(215)는 프로파일 설치 결과로 에러를 수신하면 Factory IT(215)는 사용한 Key Material를 유지 보관하고 해당 Key Material 상태를 변경(예. 에러, 설치 오류 등)과 같이 해 둘 수도 있다.
Factory IT(215)는 프로파일 설치 결과를 다시 프로파일 서버/서버 벤더(210)에 회신해 줄 수 있다. Factory IT/OEM(215)은 설치 결과들을 개별적으로 프로파일 서버/서버 벤더(210)에 회신할 수도 있고, 결과들을 수집했다가 특정 시점에 일괄로 프로파일 서버/서버 벤더(210)에 제공해 줄 수도 있다. 프로파일 서버/서버 벤더(210)는 처리 결과가 eUICC 서명된 설치 결과 데이터로 수신된 경우, eUICC의 서명을 검증하여 처리 결과를 확인할 수 있다. 처리 결과로 성공 결과 수신 시, 프로파일 서버/서버 벤더(210)는 해당 BPP 설치를 위한 otPK.EUICC.KA (+index ID)를 사용을 완료하여, (255단계)에서 수신한 otPK.EUICC.KA (+index ID) 폐기하거나 사용 완료로 상태 변경 처리해서 관리할 수 수 있다. 프로파일 서버/서버 벤더(210) 또는 Factory IT/OEM(215)은 또한 해당 설치 결과(들)을 SP/SP 서버(205)에 선택적으로 제공해 줄 수 있다.
도 3은 본 개시의 일 실시 예에 따른 otPK Index ID를 사용하고 eUICC가 사용 순서를 지정하여 사용하는 방식을 설명하기 위한 도면이다.
도 3은 앞서 도 2와 동일하게 otPK Index ID를 사용하는 경우로, 앞서 도 2 에서 Index ID 사용 순서를 Factory IT가 지정하였다면, 도 3 내지 도 4는 eUICC가 otPK Index ID를 사용 순서를 지정하는 방법에서 차이가 있다.
도 3은 eUICC에 프로파일이 없고 공장에서 처음으로 프로파일을 설치하는 동작을 설명하고 도 4는 eUICC에 프로파일을 설치하는 이전 시점에 eUICC가 Index ID를 전닳한 경우에 있어서 설치를 처리하는 동작에 대해서 설명한다. 도 3과 도 4는 독립적인 절차로 처리될 수도 있고, 도 3이 발생한 이후 특정 시점에 도 4가 연결된 동작으로 처리될 수도 있다.
도 3은 앞서 설명한 절차를 사용하되 일부 동작에 차이가 있으므로 해당 동작을 중심으로 기술한다. 도 3에서 명시적으로 언급하지 않은 경우 도 2의 절차를 참조하여 해석할 수 있음에 유의해야 한다.
도 3의 337 단계에서, IFPP용 프로파일들을 준비하여 Factory IT/OEM에 전달할 수 있다. eUICC를 탑재한 단말을 제조하고자 하는 단말 제조사는 EUM/EUM 서버(300)를 통해 M개의 eUICC들을 주문할 수 있고, EUM(300)은 주문받은 M개의 eUICC들에 대한 암호화 키 정보들을 포함한 소정의 정보들(Key Materials)을 Factory IT/OEM(315)에 제공(330 단계)할 수 있다. EUM(300)이 제공하는 Key Material 정보로 EUM(300)은 eUICC별 otPK.EUICC.KA를 포함할 수 있고, otPK.EUICC.KA는 eUICC의 서명된 값으로 전송될 수 있다. 또한, EUM(300)이 제공하는 Key Material 정보로 EUM(300)은 otPK. EUICC.KA를 식별하기 위한 식별 정보로 Index ID를 더 포함할 수 있다. Index ID는 eUICC 서명 또는 서명 되지 않은 값으로 전달될 수 있다. otPK.EUICC.KA 내지 Index ID가 eUICC 서명된 값으로 전송되는 경우에 EUM은 eUICC의 공개키를 더 포함하여 Factory IT/OEM(315)전송할 수 있으며, 이는 eUICC 인증서에 포함되어 전송될 수도 있다. 또한 EUM은 최초 사용할 Index ID 지시자를 명시적으로 더 포함하여 전송할 수도 있다. 처음 사용할 Index ID에 대한 지시자는 Factory IT가 확인할 수 있는 정보로 eUICC 서명되지 않은 값으로 전송될 수 있다.
EUM(300)이 eUICC에서 N회의 프로파일 설치를 지원하는 경우, eUICC별로 N개의 otPK.EUICC.KA, 그리고 이를 구분하기 위한 Index ID가 Factory IT/OEM(315)에게 전달될 수 있다. 그리고 해당 eUICC에서 최초 프로파일 설치를 위해 사용할 Index ID가 함께 전달될 수 있다.
Index ID는 otPK.EUICC.KA와 맵핑되는 정보로, 이를 수신받는 eUICC(335)가 해당 Index ID를 가지고 세션키 생성에 사용할 otSK.EUICC.KA를 판단하는 정보로 전달될 수 있다. Index ID otPK.EUICC.KA를 구분할 수 있는 값으로 구성될 수 있으며, 이는 일 예로 otPK.EUICC.KA의 일부 또는 전체 값, 또는 일부 또는 전체를 포함하여 생성한 값, 또는 일부 또는 전체 내지 일부 또는 전체를 포함하여 생성한 값을 해쉬한 값 또는 해쉬한 값의 일부 또는 otPK.EUICC.KA로 파생(derivate)해서 생성한 값으로 구성될 수도 있다. 또는 otPK.EUICC.KA를 특정할 수 있는 번호 또는 특정할 수 있는 번호를 포함하여 생성한 값일 수도 있다. Index ID는 Integer, String, Binary와 같은 데이터 포맷으로 정의될 수도 있다. Index ID에 대한 설명은 본 발명에서 다른 도면에 설명하지 않더라도 동일하게 적용될 수 있다.
Factory IT/OEM(315)는 eUICC의 EID - otPK.EUICC.KA - Index ID - 처음 사용할 Index ID인 경우 추가 표기하여 저장해 둘 수 있다.
이후 특정 시점에, Factory IT/OEM(315)는 EUM(300)으로부터 주문한 M개의 eUICC들의 일부인 N개의 eUICC들 또는 주문한 전체 M개의 eUICC들에 프로파일 탑재를 결정할 수 있다. 이는, SP(Service Provider)/SP 서버(305)로부터의 프로파일의 선 탑재 출고 요청에 따른 것일 수 있다.
Factory IT/OEM(315)는 추가적인 선택적인(optional) 절차로 SP/SP 서버(305)에게 EID에 Linked된 프로파일을 사전에 준비할 수 있도록 Profile(들) 개수, EID(들)의 리스트 중 적어도 하나의 정보를 SP/SP서버(305)에게 전달(340 단계)할 수 있다. SP/SP 서버(305)는 프로파일을 프로파일 서버/서버 벤더(310)에 주문(345 단계)할 수 있다. 앞서 340 단계를 수행하여 EID 리스트를 가지고 있거나 또는 이전 특정 시점에서 EID 리스트를 획득한 경우, SP/SP 서버(305)는 Profile을 주문 시 EID 정보를 포함하여 프로파일 서버/서버 벤더(310)에 요청할 수 있다. SP/SP 서버(305), 프로파일 서버/서버 벤더(310), 및 Factory IT/OEM(315)는 해당 주문을 특정할 수 있는 정보를 서로 공유(350 단계)할 수 있다. 상기 해당 주문을 특정할 수 있는 정보는 SP/SP 서버(305) 또는 프로파일 서버/서버 벤더(310)가 Factory IT/OEM(315)에게 제공하는 식별 정보로 공유될 수도 있다. 일 예로 상기 식별 정보는, Batch ID, 주문 ID 같은 정보, 주문한 프로파일 리스트 또는 EID 리스트, 프로파일 리스트 또는 EID 리스트들의 시작과 끝 번호에 관한 정보, 공장 일련 번호, 또는 생산자 식별 번호에 관한 정보 중 적어도 하나일 수 있다.
Factory IT/OEM(315)는 BPP를 프로파일 서버/서버 벤더(310)에 요청할 수 있다. Factory IT/OEM(315)는 BPP를 요청하면서 330 단계에서 획득한 eUICC들의 키 정보 중에서 SP/SP 서버(305)가 프로파일을 탑재할 단말들의 숫자인 N개 만큼 해당 대상 단말들의 eUICC에 해당하는 키 정보들을 프로파일 서버/서버 벤더(310)에 전달(355 단계)해 줄 수 있다. 이는 앞서 (330 단계)에서 수신한 키 정보들의 일부 또는 전체일 수 있다. Factory IT/OEM(315)가 EUM/EUM서버(330)로부터 eUICC별로 복수 개의 otPK.EUICC.KA 를 수신한 경우에 있어서 Factory IT/OEM(315)는 앞서 EUM/EUM 서버(300)으로부터 수신한 처음 사용하기로 한 Index ID를 확인하여 Index ID에 해당하는 otPK.EUICC.KA를 선택하여 전달할 수 있다. 그리고, 앞서 (330 단계)에서 Index ID 포함 여부에 따라 다음과 같이 전송(355 단계) 할 수 있다.
· Index ID가 서명된 데이터로 수신된 경우 이를 포함해 전송
· Index ID 포함하여 수신하였으나 서명되지 않은 데이터로 수신 시 이를 포함 또는 포함하지 않고 전송
· Index ID를 수신하지 않은 경우, Factory IT/OEM(315)은 Index ID 미 포함
프로파일 서버/서버 벤더(310)은 수신한 프로파일 주문 정보(345 단계), 프로파일-EID의 링크 정보(340 단계), 상호 공유한 주문 정보(350 단계), 수신한 프로파일을 설치할 대상 eUICC들의 암호화 키 정보(355 단계)들을 수집하는 단계의 적어도 하나 이상의 단계에서 수집한 정보들을 조합하여 프로파일 서버(310)에서 암호화된 프로파일 패키지를 생성한 후 (360 단계) 해당 생성한 프로파일 패키지들과 eUICC binding에 대한 정보를 Factory IT/OEM(315)에 제공(365 단계)해 줄 수 있다. 프로파일 서버(310)는 (355 단계)의 메시지를 수신하여, Index ID가 있으면 BPP 생성을 위한 검증 및 회신 메시지를 구성할 때(360 단계) 다음의 동작을 더 수행할 수 있다.
· Index ID가 eUICC 서명된 데이터로 수신된 경우, 이를 포함하여 eUICC 서명 검증하여, 서명 검증에 실패 시 에러를 리턴하고 서명 검증에 성공 시에,
index ID를 포함해 프로파일 서버의 서명을 생성
· Index ID가 서명되지 않은 데이터로 수신 시, Index ID는 eUICC 서명 검증에 포함하지 않음. Index ID를 포함해 프로파일 서버의 서명 생성
· Index ID를 transaction ID의 값 또는 신규 파라미터로 정의하여 사용 가능.
상기 생성한 암호화된 프로파일 패키지들과 맵핑되는 BPP 암호화 키 정보들은 하나 이상의 메시지로 Factory IT/OEM(315)에 전송(365 단계)될 수 있고 해당 메시지로 전송되는 데이터의 일부 또는 전부는 프로파일 서버의 서명된 데이터로 제공될 수도 있다.
앞서 (355 단계)에서 Index ID가 포함되어 전송된 경우, 해당 전송되는 메시지(365 단계)에는 Index ID가 서명된 데이터에 포함되어 회신될 수 있다.
370 단계에서, Factory IT(315)에서 IFPP를 위한 프로파일들을 eUICC에 설치하는 동작에 대해서 설명할 수 있다. 이 단계는 N개의 eUICC에 대해서 수행될 수 있다.
Factory IT/OEM(315)는 공장에서 단말을 출고하기 전에 단말에 프로파일을 주입하여 출고할 수 있다. 이를 위해 Factory IT/OEM(315)에서 BPP와 eUICC에서 프로파일 복호화에 필요한 일련의 암호화 키 정보들을 획득하여 저장해 둘 수 있다. 해당 일련의 암호화 키 정보들은 EUICC의 일회용 공개 키(이하 otPK.EUICC.KA로 표기)가 포함될 수 있다. 해당 일련의 암호화 키 정보들에는 otPK.EUICC.KA에 맵핑되는 Index ID를 더 포함할 수도 있다.
Factory IT(315)에 BPP와 eUICC에서 프로파일 복호화에 필요한 일련의 암호화 키 정보들을 공장 내부의 유무선 네트워크를 통해 공장에서 개별 단말(330)들에 전송될 수 있다. BPP와 일련의 암호화 키 정보들은 하나 이상의 메시지에 포함되어 단말(330)에 전송될 수 있다. otPK.eUICC.KA가 포함되어 전송되는 경우, otPK.eUICC.KA는 프로파일 서버로부터 서명된 데이터에 포함되어 단말(330)이 수신할 수 있다. Index ID가 포함되어 전송되는 경우, Index ID는 프로파일 서버로부터 서명된 데이터에 포함되어 단말(330)이 수신할 수 있다. otPK.EUICC.KA이나 Index ID가 프로파일 서버의 서명된 데이터로 수신되는 경우,
일 예로, 다음 중 하나로 서명된 데이터에 포함되어 수신될 수 있다. 물론 하기의 예시에 제한되지 않는다.
-SK.DPauth.SIG: 프로파일 서버에서 프로파일 서버의 인증을 사용하는 프로파일 서버의 개인키
- SK.DPpb.SIG: 프로파일 서버에서 프로파일 서버의 프로파일 바인딩을 위해 사용한 개인키
- SK.DPxx.SIG: xx가 IFFP 용도를 의미하도록 정의된 프로파일 서버의 개인키
전술한 바와 같이, SK.DPpb.SIG는 프로파일 서버에서 프로파일 바인딩을 위해 사용하는 프로파일 서버의 개인키 또는 프로파일 서버가 IFPP 용도를 위해 사용한 프로파일 서버의 개인키 일수 있다. DPxx.SIG에서 용도를 나타내는 xx에서 xx가 IFPPP 용도 임을 나타내는 특정 정보로 표기될 수 있다.
단말(330)은 Factory IT(315)로부터 BPP(들)을 제공받아 eUICC(335)로 IFPP모드에서 BPP(들)을 주입하는 기능을 제공할 수 있다. 예를 들어, 해당 단말(330)이 BPP를 수신하는 시점에 Factory Provisioning 모드인 상태로 동작하거나 단말(330)은 BPP 수신 시점에서 IFPP로 진입해야 함으로 인지하여 동작을 개시할 수도 있다. 또는, 단말(330)은 공장 직원의 단말에 입력되는 이벤트, 또는 설정 값, 또는 특정 VPN(Virtual Private Network) 임으로 인지 등을 통해서 해당 모드로 진입할 수도 있다. 한편, UI 또는 설정 값으로 IFPP 모드 진입은 일반 환경에서는 사용자에게 표시되지 않도록 제한되는 UI로 제공될 수 있다. 단말(330)은 BPP를 eUICC(335)로 전달할 수 있다 (375 단계).
이 때, Factory IT가 (355 단계)에서 index ID을 프로파일 서버에 전송하지 않은 경우, Factory IT는 해당 단말에 설치할 BPP와 맵핑 되는 index ID를 더 포함해 단말(320)에 전송할 수 있다. 이는 전술한 바와 같이 LPAf(미도시)를 거쳐서 eUICC(335)에 전달하거나 또는 LPAf(미도시)를 거치지 않고 eUICC(335)로 전달할 수 있다 (375 단계). LPAf(미도시)를 사용하여 eUICC로 전달되는 메시지의 한 예로 ES10x의 하나 이상의 메시지에 포함되어 전송될 수 있다.
eUICC(335)가 단말(330)로부터 수신된 메시지에 IFPP을 위한 동작 임을 인지할 수 있는 정보가 수신될 수 있다. eUICC(335)가 단말(330)로부터 수신된 메시지를 통해서 IFPP용으로 프로파일 설치 동작 수행으로 판단하여 진입할 수 있다.
이는 IFPP용으로 정의되는 신규 function 이거나 또는 기존 SGP.31/33 내지 SGP. 31/33에서 정의한 ES10x 메시지에 IFPP 구분자 파라미터가 추가되거나, 또는 단말 출고 후 일반 환경에서 (Consumer향, 또는 M3M향 또는 IoT향) 프로파일 프로비저닝을 위해서는 포함되는 않는, 공장 출고용 식별 정보일 수 있다. 일 예로 공장 일련 번호, Batch ID, 생산자 식별 정보와 같은 값 중의 하나일 수 있다. 물론 이에 한정되지 않는다.
전술한 바와 같이 단말(330)은 프로파일 서버로부터 otPK.EUICC.KA 또는 Index ID가 포함된 데이터를 수신할 수 있고 해당 otPK.EUICC.KA 또는 Index ID 포함된 데이터는 다음 중 하나로 서명된 데이터에 포함되어 수신될 수도 있다. 물론 하기의 예시에 제한되지 않는다.
- SK.DPauth.SIG: 프로파일 서버가 프로파일 서버의 인증을 위해 사용한 프로파일 서버의 개인키
- SK.DPpb.SIG: 프로파일 서버가 프로파일 바인딩을 위해 사용하는 프로파일 서버의 개인키
- SP.DPifpp.SIG: 프로파일 서버가 IFPP용으로 특정하여 사용한 프로파일 서버의 개인키
단말(330)은 상기 서명된 데이터를 다시 eUICC(335)에 LPAf 또는 LPAf를 거치지 않고 eUICC(335)에 전달할 수 있다. eUICC(335)는 eUICC(335)가 수신된 데이터에 대한 프로파일 서버(310)의 서명을 검증하고, 사전에 저장해 둔 eUICC의 일회성 개인키(otSK.EUICC.KA)를 이용하여 세션 키를 생성하여 BPP를 복호화하여 설치를 처리할 수 있다. (380 단계)
(380 단계)의 프로파일 서버(310)의 서명을 검증 하는 절차에 있어서, Index ID가 서명된 데이터로 수신된 경우 eUICC(335)는 이를 포함해 서명을 검증한다. 만약 Index ID가 서명되지 않은 데이터로 수신된 경우, eUICC(335)는 프로파일 서버의 서명을 검증할 때 Index ID를 포함하지 않고 서명을 검증해야 한다.
(380 단계)의 세션키를 생성하는 절차에 있어서, eUICC(335)는 Index ID 또는 otPK.EUICC.KA 수신 여부에 따라서 다음의 절차를 수행할 수 있다.
· Index ID 수신 시: Index ID 수신 시, eUICC는 Index ID에 맵핑되는 otSK.EUICC.KA를 선택하기에 앞서 eUICC에 초기 설정된 사용 순서가 있는지 추가로 확인할 수 있다.
사용 순서가 같은 경우에, Index ID에 맵핑되는 otSK.EUCC.KA로 세션 키 생성하고, 사용 순서가 다르거나 수신된 Index ID에 매칭되는 Index ID가 없으면,에러를 리턴할 수도 있다.
· Index ID 미 수신하고 otPK.EUICC.KA를 수신 시: otPK.EUICC.KA에 맵핑되는 otSK.EUICC.KA로 세션 키 생성
· Index ID 미 수신하고 otPK.EUICC.KA도 미 수신 시: eUICC가 미 사용한 otSK.EUICC.KA중 1개를 순차적으로 선택해 사용 또는 에러 리턴
(380 단계)의 BPP를 복호화하여 프로파일을 설치를 성공하면, eUICC(335)는 BPP 설치를 위해 사용한 해당 otPK/SK.EUICC.KA를 폐기한다. 만약, 프로파일 설치 실패 시, eUICC(335)는 otPK/SK.EUICC.KA를 다음에 사용하도록 유지 보관해 둘 수 있다.
eUICC(335)는 프로파일의 설치 결과를 LPAf 또는 LPAf를 거치지 않고 단말에 전송하여 단말에서 Factory IT 서버(315)에 회신해 줄 수 있다. (375 단계)
eUICC(335)는 Factory IT(315)에 회신하는 설치 결과 메시지로, Factory IT(315)가 확인할 설치 결과 데이터에 추가적으로 프로파일 서버/서버 벤더(310)에서 확인하도록 하는 eUICC가 서명한 설치 결과 데이터를 포함해 전송할 수 있다.
프로파일 설치 성공 시, (385단계)에서 회신되는 메시지에는 Index ID를 포함하여
다음 사용 순서를 제공해 줄 수 있다.
Factory IT(315)는 프로파일 설치 결과가 성공되었다는 응답을 수신하면 사용한 Key Material를 삭제하거나 해당 Key Material을 사용 완료로 상태를 변경하여 둘 수 있다. Factory IT(315)는 프로파일 설치 결과로 에러를 수신하면 Factory IT(315)는 사용한 Key Material를 유지 보관하고 해당 Key Material 상태를 변경(예. 에러, 설치 오류 등)과 같이 해 둘 수도 있다. 또한, Factory IT/OEM(315)는 Index ID 포함 수신 시 해당 Index ID에 맵핑 되는 BPP를 다음 순서로 표기 저장해 둘 수 있다.
Factory IT(315)는 프로파일 설치 결과를 다시 프로파일 서버/서버 벤더(310)에 회신해 줄 수 있다. Factory IT/OEM(315)은 설치 결과들을 개별적으로 프로파일 서버/서버 벤더(310)에 회신할 수도 있고, 결과들을 수집했다가 특정 시점에 일괄로 프로파일 서버/서버 벤더(310)에 제공해 줄 수도 있다. 프로파일 서버/서버 벤더(310)는 처리 결과가 eUICC 서명된 설치 결과 데이터로 수신된 경우, eUICC의 서명을 검증하여 처리 결과를 확인할 수 있다. 처리 결과로 성공 결과 수신 시, 프로파일 서버/서버 벤더(310)는 해당 BPP 설치를 위한 otPK.EUICC.KA (+index ID)를 사용을 완료하여, (355단계)에서 수신한 otPK.EUICC.KA (+index ID) 폐기하거나 사용 완료로 상태 변경 처리해서 관리할 수 수 있다. 프로파일 서버/서버 벤더(310) 또는 Factory IT/OEM(315)은 또한 해당 설치 결과(들)을 SP/SP 서버(305)에 선택적으로 제공해 줄 수 있다.
도 4은 본 개시의 일 실시 예에 따른 otPK Index ID를 사용하고 eUICC가 사용 순서를 지정하여 사용하는 경우의 다른 실시 예시 도면이다.
도 3과 도 4는 독립적인 절차로 처리될 수도 있고, 도 3이 발생한 이후 특정 시점에 도 4가 연결된 동작으로 처리될 수도 있다.
Factory IT/OEM(415)는 eUICC의 EID - otPK.EUICC.KA를 포함하는 Key materials-[Index ID] -사용 순서를 저장해 둘 수 있다. 사용 순서는 도 4를 수행하기 전의 특정 시점에 Factory IT/OEM(415)가 BPP 설치 결과로 eUICC(425)로부터 수신되는 정보, 일 예로 다음 순서로 사용할 Index ID 일 수 있다.
이후 특정 시점에, Factory IT/OEM(415)는 BPP를 프로파일 서버/서버 벤더(410)에 요청(455단계)할 수 있다. Factory IT/OEM(415)는 (435 단계)의 이전 특정 시점에서 획득한 eUICC들의 키 정보 중에서 SP/SP 서버(405)가 프로파일을 탑재할 단말들의 숫자인 N개 만큼, 프로파일 서버/서버 벤더(410)에게 해당 대상 단말들의 eUICC로 키 정보들을 전달(455 단계)해 줄 수 있다. 이는 앞서 (430 단계)에서 수신한 키 정보들의 일부 또는 전체일 수 있다. Factory IT/OEM(415)가 EUM/EUM서버(430)로부터 eUICC별로 복수 개의 otPK.EUICC.KA 를 수신한 경우, Factory IT/OEM(415)는 이전 BPPP 설치 시 eUICC로부터 수신 받은 Index ID를 확인하여 Index ID에 맵핑되는 otPK.EUICC.KA를 선택하여 프로파일 서버/서버 벤더(410)에게 전달할 수 있다. Factory IT는 Index ID 포함 여부를 결정하여
전송(455 단계) 할 수 있다. 이는 앞서 도 3의 (330 단계)에서 설명한 바와 같이 Index ID가 eUICC의 서명된 데이터로 수신되었는지 여부에 따라서 다음 중 하나의 방법으로 처리할 수 있다.
· Index ID를 eUICC 서명된 데이터로 수신한 경우 이를 포함해 전송
· Index ID를 포함하여 수신하였으나, eUICC 서명되지 않은 데이터로 수신 시 이를 포함 또는 포함하지 않고 전송
· Index ID를 수신하지 않은 경우, Factory IT/OEM(415)은 Index ID 미 포함
프로파일 서버/서버 벤더(410)은 도 3에서 언급한 바와 같이, 수신한 프로파일 주문 정보(345 단계), 프로파일-EID의 링크 정보(340 단계), 상호 공유한 주문 정보(350 단계), 수신한 프로파일을 설치할 대상 eUICC들의 암호화 키 정보(355 단계)들을 수집하는 단계의 적어도 하나 이상의 단계에서 수집한 정보들을 조합하여, 프로파일 서버(410)에서 암호화된 프로파일 패키지를 생성한 후 (460 단계) 해당 생성한 프로파일 패키지들과 eUICC binding에 대한 정보를 Factory IT/OEM(415)에 제공(465 단계)해 줄 수 있다. 프로파일 서버(410)는 (455 단계)의 메시지를 수신하여, Index ID가 있으면 BPP 생성을 위한 검증 및 회신 메시지를 구성할 때(460 단계) 다음의 동작을 더 수행할 수 있다.
· Index ID가 eUICC 서명된 데이터로 수신된 경우, 이를 포함하여 eUICC 서명 검증하여, 서명 검증에 실패 시 에러를 리턴하고 서명 검증에 성공 시에,
index ID를 포함해 프로파일 서버의 서명을 생성
· Index ID가 서명되지 않은 데이터로 수신 시, Index ID는 eUICC 서명 검증에 포함하지 않음. Index ID를 포함해 프로파일 서버의 서명 생성
· Index ID를 transaction ID의 값 또는 신규 파라미터로 정의하여 사용 가능.
상기 생성한 암호화된 프로파일 패키지들과 맵핑되는 BPP 암호화 키 정보들은 하나 이상의 메시지로 Factory IT/OEM(415)에 전송(465 단계)될 수 있고 해당 메시지로 전송되는 데이터의 일부 또는 전부는 프로파일 서버의 서명된 데이터로 제공될 수도 있다.
앞서 (455 단계)에서 Index ID가 포함되어 전송된 경우, 해당 전송되는 메시지(465 단계)에는 Index ID가 서명된 데이터에 포함되어 회신될 수 있다.
이후 470 단계 (475 단계)~(490 단계)는 앞서 도 3에서 언급한 (375 단계)~(490 단계)에 각 대응되는 설명을 참조하여 이해될 수 있다.
한편, eUICC는 프로파일 설치 성공하고 해당 프로파일 설치를 위해 사용한 Index ID가 마지막 Index ID인 경우에, (385)단계에서 Index ID를 포함하지 않고 전송할 수도 있다. Factory IT/OEM(415)가 수신되는 회신 메시지에 Index ID가 없이 전송되는 경우, Factory IT/OEM(415)는 해당 eUICC에 맵핑된 Index ID가 모두 소진 되었는지 추가적으로 확인 또는 확인하고 처리를 완료할 수 있다.
도 5는 본 개시의 일 실시 예에 따른 EUM이 Key Material을 1개 전달하고 eUICC가 다음에 사용한 Key Material을 지정하여 Factory IT에게 회신해 주는 방식을 설명하기 위한 도면이다.
앞서 도 5는 EUM이 eUICC별로 복수 개의 eUICC 암호화 키인 otPK.EUICC.KA 또는/그리고 이에 대응되는 Index ID의 리스트들을 생성하고 해당 복수 개의 Key 정보들을 eUICC별로 저장해 두고 또한 해당 리스트들을 Factory IT/OEM(515)에 전달(550 단계)하여 사용하는 절차 및 동작을 중심으로 설명하였다. 도 2에 대비하여, 도 5은 EUM이 eUICC별로 Key Material 1개만 Factory IT/OEM(515)에 최초에 전달(550 단계)하여 사용하는 절차 및 동작을 설명한다.
Key Material은 eUICC 암호화 키인 otPK.EUICC.KA를 적어도 포함하고, 이에 대응되는 Index ID가 포함될 수 있다.
단말을 출고하기에 앞서 단말 제조사는 공장에서 프로파일을 eUICC에 선 탑재하여 출고할 수 있으며 이 경우 1개 이상의 단말들, 특히 대량의 단말들에 프로파일들을 프로비저닝 할 수도 있다. 이 단계는 프로파일들을 준비하여 Factory IT/OEM(515)에 전달하는 단계(527), 및 Factory IT에서 이를 N개의 서로 다른 eUICC(525)에 설치하는 단계(570)로 나누어질 수 있다.
527 단계에서, IFPP용 프로파일들을 준비하여 Factory IT/OEM에 전달할 수 있다. eUICC를 탑재한 단말을 제조하고자 하는 단말 제조사는 EUM/EUM 서버(500)를 통해 M개의 eUICC들을 주문할 수 있고, EUM(500)은 주문받은 M개의 eUICC들에 대한 암호화 키 정보들을 포함한 소정의 정보(Key Material)를 Factory IT/OEM(515)에 제공(550 단계)할 수 있다. EUM(500)이 제공하는 Key Material 정보로 EUM(500)은 eUICC별 otPK.EUICC.KA를 포함할 수 있고, otPK.EUICC.KA는 eUICC 서명된 값으로 전송될 수 있다. 또한, EUM(500)이 제공하는 Key Material 정보로 EUM(500)은 otPK. EUICC.KA를 식별하기 위한 식별 정보로 Index ID를 더 포함할 수 있다. Index ID는 eUICC 서명 또는 서명 되지 않은 값으로 전달될 수 있다. otPK.EUICC.KA 내지 Index ID가 EUM 서명된 값으로 전송되는 경우에 EUM은 eUICC의 공개키를 더 포함하여 Factory IT/OEM(515)전송할 수 있으며, 이는 eUICC 인증서에 포함되어 전송될 수도 있다. EUM(500)이 eUICC에서 N회의 프로파일 설치를 지원하는 경우, N개의 otPK.EUICC.KA, 그리고 이를 구분하기 위한 Index ID가 Factory IT/OEM(515)에게 전달될 수 있다. Index ID는 otPK.EUICC.KA와 맵핑되는 정보로, 이를 수신받는 eUICC(525)가 해당 Index ID를 가지고 세션키 생성을 위해 사용할 otSK.EUICC.KA를 판단하는 정보로 전달될 수 있다.
Index ID는 otPK.EUICC.KA와 맵핑되는 정보로, 이를 수신받는 eUICC(225)가 해당 Index ID를 가지고 세션키 생성에 사용할 otSK.EUICC.KA를 판단하는 정보로 전달될 수 있다. Index ID otPK.EUICC.KA를 구분할 수 있는 값으로 구성될 수 있으며, 이는 일 예로 otPK.EUICC.KA의 일부 또는 전체 값, 또는 일부 또는 전체를 포함하여 생성한 값, 또는 일부 또는 전체 내지 일부 또는 전체를 포함하여 생성한 값을 해쉬한 값 또는 해쉬한 값의 일부 또는 otPK.EUICC.KA로 파생(derivate)해서 생성한 값으로 구성될 수도 있다. 또는 otPK.EUICC.KA를 특정할 수 있는 번호 또는 특정할 수 있는 번호를 포함하여 생성한 값일 수도 있다. Index ID는 Integer, String, Binary와 같은 데이터 포맷으로 정의될 수도 있다.
EUM/EUM 서버(500)는 IFPP용 프로파일들에 대한 주문을 받은 경우, eUICC별로 BPP 복호화에 필요한 eUICC 암호화 키 정보들을 포함하여 Factory IT/OEM(515)에 제공할 수 있다. 이를 수신한 Factory IT/OEM(515)는 주문받은 M개의 eUICC들에 대한 암호화 키 정보들을 Factory IT 서버(515)에 저장(555 단계)할 수 있다. 앞서 도 2 대비, Factory IT/OEM(515)는 eUICC별 1개의 otPK.EUICC.KA, 그리고 선택 사항으로 맵핑 되는 Index ID를 더 수신하여 관리할 수 있다. EUM/EUM 서버(500)는 는 eUICC별 1개의 otPK.EUICC.KA-[Index ID]만 (550단계)에서 제공할 수 있다. 이는, EUM/EUM 서버(500)가 복수 개의 otPK.EUICC.KA-[Index ID]를 생성하여 복수 개의 키 정보를 eUICC에 주입했거나 또는 EUM/EUM 서버(500)가 1개의 otPK.EUICC.KA-[Index ID]를 생성하여 1개의 키 정보를 eUICC에 주입한 경우에 모두 해당할 수 있다.
이후 특정 시점에, Factory IT/OEM(515)는 EUM(500)으로부터 주문한 M개의 eUICC들의 일부 N개 또는 전체 eUICC에 프로파일 탑재를 결정할 수 있다. 이는, SP(Service Provider)/SP 서버(505)로부터의 프로파일의 선 탑재 출고 요청에 따른 것일 수 있다.
Factory IT/OEM(515)는 추가적인 선택적인(optional) 절차로 SP/SP 서버(505)에게 EID에 Linked된 프로파일을 사전에 준비할 수 있도록 Profile(들) 개수, EID(들)의 리스트 중 적어도 하나의 정보를 SP/SP서버(505)에게 전달(540 단계)할 수 있다. SP/SP 서버(505)는 프로파일을 프로파일 서버/서버 벤더(510)에 주문(545 단계)할 수 있다. 앞서 540 단계를 수행하여 EID 리스트를 가지고 있거나 또는 이전 특정 시점에서 EID 리스트를 획득한 경우, SP/SP 서버(505)는 Profile을 주문 시 EID 정보를 포함하여 프로파일 서버/서버 벤더(510)에 요청할 수 있다. SP/SP 서버(505), 프로파일 서버/서버 벤더(510), 및 Factory IT/OEM(515)는 해당 주문을 특정할 수 있는 정보를 서로 공유(550 단계)할 수 있다. 상기 해당 주문을 특정할 수 있는 정보는 SP/SP 서버(505) 또는 프로파일 서버/서버 벤더(510)가 Factory IT/OEM(515)에게 제공하는 식별 정보로 공유될 수도 있다. 일 예로 상기 식별 정보는, Batch ID, 주문 ID 같은 정보, 주문한 프로파일 리스트 또는 EID 리스트, 프로파일 리스트 또는 EID 리스트들의 시작과 끝 번호에 관한 정보, 공장 일련 번호, 또는 생산자 식별 번호에 관한 정보 중 적어도 하나일 수 있다.
Factory IT/OEM(515)는 BPP를 프로파일 서버/서버 벤더(510)에 요청할 수 있다. Factory IT/OEM(515)는 BPP를 요청하면서 550 단계에서 획득한 eUICC들의 키 정보 중에서 SP/SP 서버(505)가 프로파일을 탑재할 단말들의 숫자인 N개 만큼 해당 대상 단말들의 eUICC에 해당하는 키 정보들을 프로파일 서버/서버 벤더(510)에 전달(555 단계)해 줄 수 있다. 이는 앞서 (550 단계)에서 수신한 키 정보들의 일부 또는 전체일 수 있다. Factory IT/OEM(515)는 EUM/EUM서버(550)로부터 eUICC별로 수신한 otPK.EUICC.KA 를 Factory IT/OEM(515)에 이를 전송할 수 있다. 그리고, 앞서 (550 단계)에서 Index ID 포함하여 수신 여부에 따라서 다음과 같이 전송(555 단계) 할 수 있다.
· Index ID가 서명된 데이터로 수신된 경우 이를 포함해 전송
· Index ID 포함하여 수신하였으나 서명되지 않은 데이터로 수신 시 이를 포함 또는 포함하지 않고 전송
· Index ID를 수신하지 않은 경우, Factory IT/OEM(515)은 Index ID 미 포함
프로파일 서버/서버 벤더(510)은 수신한 프로파일 주문 정보(545 단계), 프로파일-EID의 링크 정보(540 단계), 상호 공유한 주문 정보(550 단계), 수신한 프로파일을 설치할 대상 eUICC들의 암호화 키 정보(555 단계)들을 수집하는 단계의 적어도 하나 이상의 단계에서 수집한 정보들을 조합하여 프로파일 서버(510)에서 암호화된 프로파일 패키지를 생성한 후 (560 단계) 해당 생성한 프로파일 패키지들과 eUICC binding에 대한 정보를 Factory IT/OEM(515)에 제공(565 단계)해 줄 수 있다. 프로파일 서버(510)는 (555 단계)의 메시지를 수신하여 Index ID가 있으면 BPP 생성을 위한 검증 및 회신 메시지를 구성할 때(560 단계) 다음의 동작을 더 수행할 수 있다.
· Index ID가 eUICC 서명된 데이터로 수신된 경우, 이를 포함하여 eUICC 서명 검증
· index ID가 eUICC 서명 또는 서명되지 않은 데이터로 수신 시, Index ID를 포함해 프로파일 서버의 서명 생성
· Index ID를 transaction ID의 값 또는 신규 파라미터로 포함하여 프로파일 서버의 서명의 생성
상기 생성한 암호화된 프로파일 패키지들과 각 BPP 암호화 키 정보들은 하나 이상의 메시지로 Factory IT/OEM(515)에 전송(565 단계)될 수 있고 해당 메시지로 전송되는 데이터의 일부 또는 전부는 서명된 데이터로 제공될 수도 있다.
(565단계)에서 BPP가 수신될 수 있으며, 앞서 Index ID를 수신한 경우에 해당 전송되는 메시지(565 단계)에는 Index ID가 서명된 데이터에 포함되어 전송될 수 있다. 만약 Index ID가 포함 또는 포함되지 않고 전송된 경우, (565 단계)에서 otPK.EUICC.KA가 서명된 데이터에 포함되어 전송될 수도 있다.
570 단계에서, Factory IT(515)에서 IFPP를 위한 프로파일들을 eUICC에 설치하는 동작에 대해서 설명할 수 있다. 이 단계는 N개의 eUICC에 대해서 수행될 수 있다.
Factory IT/OEM(515)는 공장에서 단말을 출고하기 전에 단말에 프로파일을 주입하여 출고할 수 있다. 이를 위해 Factory IT/OEM(515)에서 BPP와 eUICC에서 프로파일 복호화에 필요한 일련의 암호화 키 정보들을 획득하여 저장해 둘 수 있다. 해당 일련의 암호화 키 정보들은 EUICC의 일회용 공개 키(이하 otPK.EUICC.KA로 표기)가 포함될 수 있다. 해당 일련의 암호화 키 정보들에는 otPK.EUICC.KA에 맵핑되는 Index ID를 더 포함할 수도 있다.
Factory IT(515)에 BPP와 eUICC에서 프로파일 복호화에 필요한 일련의 암호화 키 정보들을 공장 내부의 유무선 네트워크를 통해 공장에서 개별 단말(520)들에 전송될 수 있다. BPP와 일련의 암호화 키 정보들은 하나이상의 메시지에 포함되어 단말(520)에 전송될 수 있다. otPK.eUICC.KA 또는 Index ID가 포함되어 전송되는 경우, otPK.eUICC.KA 또는 Index ID는 프로파일 서버로부터 서명된 데이터에 포함되어 단말(520)이 수신할 수 있다. 일 예로, 다음 중 하나로 서명된 데이터에 포함되어 수신될 수 있다. 물론 하기의 예시에 제한되지 않는다.
-SK.DPauth.SIG: 프로파일 서버에서 프로파일 서버의 인증을 사용하는 프로파일 서버의 개인키
- SK.DPpb.SIG: 프로파일 서버에서 프로파일 서버의 프로파일 바인딩을 위해 사용한 개인키
- SK.DPxx.SIG: xx가 IFFP 용도를 의미하도록 정의된 프로파일 서버의 개인키
전술한 바와 같이, SK.DPpb.SIG는 프로파일 서버에서 프로파일 바인딩을 위해 사용하는 프로파일 서버의 개인키 또는 프로파일 서버가 IFPP 용도를 위해 사용한 프로파일 서버의 개인키 일수 있다. DPxx.SIG에서 용도를 나타내는 xx에서 xx가 IFPPP 용도 임을 나타내는 특정 정보로 표기될 수 있다.
단말(520)은 Factory IT(515)로부터 BPP(들)을 제공받아 eUICC(525)로 IFPP모드에서 BPP(들)을 주입하는 기능을 제공할 수 있다. 예를 들어, 해당 단말(520)이 BPP를 수신하는 시점에 Factory Provisioning 모드인 상태로 동작하거나 단말(520)은 BPP 수신 시점에서 IFPP로 진입해야 함으로 인지하여 동작을 개시할 수도 있다. 또는, 단말(520)은 공장 직원의 단말에 입력되는 이벤트, 또는 설정 값, 또는 특정 VPN(Virtual Private Network) 임으로 인지 등을 통해서 해당 모드로 진입할 수도 있다. 한편, UI 또는 설정 값으로 IFPP 모드 진입은 일반 환경에서는 사용자에게 표시되지 않도록 제한되는 UI로 제공될 수 있다. 단말(520)은 BPP를 eUICC(525)으로 전달할 수 있는데, 전술한 바와 같이 LPAf(미도시)를 거쳐서 eUICC(525)에 전달하거나 또는 LPAf(미도시)를 거치지 않고 eUICC(525)로 전달할 수 있다 (575 단계).
LPAf(미도시)를 사용하여 eUICC로 전달되는 메시지의 한 예로 ES10x의 하나 이상의 메시지에 포함되어 전송될 수 있다. 이하, 이에 대한 실시 예는 도 4 내지 도 6에서 후술하기로 한다.
eUICC(525)가 단말(520)로부터 수신된 메시지에 IFPP을 위한 동작임을 인지할 수 있는 정보가 수신될 수 있다. eUICC(525)가 단말(520)로부터 수신된 메시지를 통해서 IFPP용으로 프로파일 설치 동작 수행으로 판단하여 진입할 수 있다.
이는 IFPP용으로 정의되는 신규 function 이거나 또는 기존 SGP.51/52 내지 SGP. 51/52에서 정의한 ES10x 메시지에 IFPP 구분자 파라미터가 추가되거나, 또는 단말 출고 후 일반 환경에서 (Consumer향, 또는 M2M향 또는 IoT향) 프로파일 프로비저닝을 위해서는 포함되는 않는, 공장 출고용 식별 정보일 수 있다. 일 예로 공장 일련 번호, Batch ID, 생산자 식별 정보와 같은 값 중의 하나일 수 있다. 물론 이에 한정되지 않는다.
전술한 바와 같이 단말(520)은 프로파일 서버로부터 otPK.EUICC.KA 또는 Index ID가 포함된 데이터를 수신할 수 있고 해당 otPK.EUICC.KA 또는 Index ID 포함된 데이터는 다음 중 하나로 서명된 데이터에 포함되어 수신될 수도 있다. 물론 하기의 예시에 제한되지 않는다.
- SK.DPauth.SIG: 프로파일 서버가 프로파일 서버의 인증을 위해 사용한 프로파일 서버의 개인키
- SK.DPpb.SIG: 프로파일 서버가 프로파일 바인딩을 위해 사용하는 프로파일 서버의 개인키
- SP.DPifpp.SIG: 프로파일 서버가 IFPP용으로 특정하여 사용한 프로파일 서버의 개인키
단말(520)은 상기 서명된 데이터를 다시 eUICC(525)에 LPAf 또는 LPAf를 거치지 않고 eUICC(525)에 전달할 수 있다. eUICC(525)는 eUICC(525)가 수신된 데이터에 대한 프로파일 서버(510)의 서명을 검증하고, 사전에 저장해 둔 eUICC의 일회성 개인키(otSK.EUICC.KA)를 이용하여 세션 키를 생성하여 BPP를 복호화하여 설치를 처리할 수 있다. (580 단계)
(580 단계)의 프로파일 서버(510)의 서명을 검증 하는 절차에 있어서, Index ID가 서명된 데이터로 수신된 경우 eUICC(525)는 이를 포함해 서명을 검증한다. 만약 Index ID가 서명되지 않은 데이터로 수신된 경우, eUICC(525)는 프로파일 서버의 서명을 검증할 때 Index ID를 포함하지 않고 서명을 검증해야 한다.
(580 단계)의 세션키를 생성하는 절차에 있어서, eUICC(525)는 Index ID 또는 otPK.EUICC.KA 수신 여부에 따라서 다음의 절차를 수행할 수 있다.
· Index ID 수신 시: Index ID에 맵핑되는 otSK.EUCC.KA로 세션 키 생성
· Index ID 미 수신하고 otPK.EUICC.KA를 수신 시: otPK.EUICC.KA에 맵핑되는 otSK.EUICC.KA로 세션 키 생성
· Index ID 미 수신하고 otPK.EUICC.KA도 미 수신 시: eUICC가 미 사용한 otSK.EUICC.KA중 1개를 선택(예. 순차에 따라)해 사용 또는 에러 리턴
(580 단계)의 BPP를 복호화하여 프로파일을 설치를 성공하면, eUICC(525)는 BPP 설치를 위해 사용한 해당 otPK/SK.EUICC.KA를 폐기한다. 또한, eUICC(525)는 프로파일 설치 성공 시에 다음 1과 2 중 하나의 동작을 추가로 수행할 수 있다.
1. otPK/otSK.EUICC.KA 그리고 선택적으로 대응되는 Index ID를 생성하고,otSK.EUICC.KA와 맵핑되는 Index ID 또는 otPK.EUICC.KA를 저장. otPK.EUICC.KA 포함한 데이터를 eUICC의 개인키로 서명해서 Key Material을 전달. index ID(생성 시)는 서명된 데이터에 포함 또는 포함하지 않음.
2. 사용하지 않은 otSK.EUICC.KA를 하나 골라, 대응되는 otPK.EUICC.KA 포함한 데이터를 eUICC의 개인키로 서명한 Key Material을 전달. index ID(저장 시)는 서명된 데이터에 포함 또는 포함하지 않고 전달.
만약, 프로파일 설치 실패 시, eUICC(525)는 otPK/SK.EUICC.KA를 다음에 사용하도록 유지 보관해 둘 수 있다.
eUICC(525)는 프로파일의 설치 결과를 LPAf 또는 LPAf를 거치지 않고 단말에 전송하여 단말에서 Factory IT 서버(515)에 회신해 줄 수 있다. (585 단계) eUICC(525)는 Factory IT(515)에 회신하는 설치 결과 메시지로, Factory IT(515)가 확인할 설치 결과 데이터에 추가적으로 프로파일 서버/서버 벤더(510)에서 확인하도록 하는 eUICC가 서명한 설치 결과 데이터를 포함해 전송할 수 있다.
전송되는 데이터의 일 예시는 다음과 같은 형태의 구성일 수 있다.
Profile Installation Result ([Signed(Key Material), Key Material], Result1, [Index ID], [Signed(Result2),Result2])
· Signed(Key Material)은 eUICC가 서명한 Key Material 데이터. 프로파일 설치 성공 시에 포함하여 전송 가능. 해당 eUICC에 BPP 생성을 위해 사용할 수 있는 Key Material로 otPK.EUICC.KA를 반드시 포함하고, Index ID를 선택적으로 포함.
· Key Material: 프로파일 서버가 서명 검증 비교를 위해 사용할 값으로 해쉬된 값으로 전송될 수 있음.
· Result1: Factory IT가 확인할 설치 결과 정보로 Factory IT가 해석할 수 있는 암호화 키로 암호화되어 전송될 수 있음.
· Index ID: Index ID가 있으나 Index ID를 포함해 Signed Data1을 생성하지 않는 경우, Factory IT가 확인할 수 있도록 선택적으로 포함 가능.
Factory IT가 해석할 수 있는 암호화 키로 암호화되어 전송될 수 있음.
· Signed(Result2): eUICC가 서명한 프로파일 서버에 전달될 설치 결과.
· Result2: 프로파일 서버가 SignedResult2의 서명 검증 비교를 위해 사용할 값으로 해쉬된 값으로 전송될 수 있음.
Factory IT(515)는 프로파일 설치 결과로 성공되었다는 응답을 수신하면 사용한 Key Material를 삭제하거나 해당 Key Material을 사용 완료로 상태를 변경하여 둘 수 있다. 그리고 Factory IT(515)는 Signed(Key Material), Key Material을 다음에 프로파일 서버에 BPP 설치 요청을 위해 사용할 정보로 저장해 둘 수 있다. Factory IT(515)는 프로파일 설치 결과로 에러를 수신하면 Factory IT(515)는 사용한 Key Material를 유지 보관하고 해당 Key Material 상태를 변경(예. 에러, 설치 오류 등)과 같이 해 둘 수도 있다.
Factory IT(515)는 프로파일 설치 결과를 다시 프로파일 서버/서버 벤더(510)에 회신해 줄 수 있다. 이 때, 앞서 예시를 참조하면 Signed(Key Material), Key Material, Index ID는 제외하고 전송할 수 있다. Factory IT/OEM(515)은 설치 결과들을 개별적으로 프로파일 서버/서버 벤더(510)에 회신할 수도 있고, 결과들을 수집했다가 특정 시점에 일괄로 프로파일 서버/서버 벤더(510)에 제공해 줄 수도 있다. 프로파일 서버/서버 벤더(510)는 처리 결과가 eUICC 서명된 설치 결과 데이터로 수신된 경우, 즉 앞서 예시를 참조하면 Signed(Result2)로 수신 시, eUICC의 서명을 검증하여 처리 결과를 확인할 수 있다. 처리 결과로 성공 결과 수신 시, 프로파일 서버/서버 벤더(510)는 해당 BPP 설치를 위한 otPK.EUICC.KA (+index ID)를 사용을 완료하여, (555단계)에서 수신한 otPK.EUICC.KA (+index ID) 폐기하거나 사용 완료로 상태 변경 처리해서 관리할 수 수 있다. 프로파일 서버/서버 벤더(510) 또는 Factory IT/OEM(515)은 또한 해당 설치 결과(들)을 SP/SP 서버(505)에 선택적으로 제공해 줄 수 있다.
도 6는 본 개시의 일 실시 예에 따른 otPK 재 사용 방식으로 사용 횟수 또는 무제한으로 otPK를 사용하는 동작을 설명하는 도면이다.
앞서 도 2와 도 3은 eUICC 암호화 키를 재 사용하지 않는 방식으로, 일 예를 들어 Index ID를 사용하는 방식을 설명하였다면, 도 6는 eUICC 암호화 키를 재사용하여 프로파일 프로비저닝을 처리하는 방법을 설명한다. 도 6를 참조하면, 단말을 출고하기에 앞서 단말 제조사는 공장에서 프로파일을 eUICC에 선 탑재하여 출고할 수 있으며 이 경우 1개 이상의 단말들, 특히 대량의 단말들에 프로파일들을 프로비저닝 할 수도 있다. 이 단계는 프로파일들을 준비하여 Factory IT/OEM(615)에 전달하는 단계(627), 및 Factory IT에서 이를 N개의 서로 다른 eUICC(625)에 설치하는 단계(670)로 나누어질 수 있다.
627 단계에서, IFPP용 프로파일들을 준비하여 Factory IT/OEM에 전달할 수 있다. eUICC를 탑재한 단말을 제조하고자 하는 단말 제조사는 EUM/EUM 서버(600)를 통해 M개의 eUICC들을 주문할 수 있고, EUM(600)은 주문받은 M개의 eUICC들에 대한 암호화 키 정보들을 포함한 소정의 정보들(Key Materials)을 Factory IT/OEM(615)에 제공(630 단계)할 수 있다. EUM(600)이 제공하는 Key Material 정보로 EUM(600)은 eUICC별 otPK.EUICC.KA를 포함할 수 있고, otPK.EUICC.KA는 EUM 서명된 값으로 전송될 수 있다. 또한, EUM(600)이 제공하는 Key Material 정보로 EUM(600)은 otPK. EUICC.KA에 대한 사용 정책(Policy Rule)을 더 포함할 수 있다. Policy Rule은 EUM서명 되지 않은 값으로 전달될 수 있다. otPK.EUICC.KA가 EUM 서명된 값으로 전송되는 경우에 EUM은 eUICC의 공개키를 더 포함하여 Factory IT/OEM(615)전송할 수 있으며, 이는 eUICC 인증서에 포함되어 전송될 수도 있다. EUM(600)이 eUICC에서 N회의 프로파일 설치를 지원하는 경우, N개의 otPK.EUICC.KA가 Factory IT/OEM(615)에게 전달될 수 있고 또한 otPK.EUICC.KA에 대한 Policy Rule (otPK 사용 정책)이 포함되어 전달될 수 있다. otPK 사용 정책은 재사용 가능 여부, 재사용 방식=횟수, 무제한, 사용 횟수=허용 횟수와 같은 정보 중의 적어도 하나를 포함할 수 있다. otPK 사용 정책을 적용하는 경우에 EUM/EUM 서버(600)는 otPK 사용 정책을 eUICC에 설정해 두고 해당 otPK 사용 정책을 Factory IT에 제공할 수 있다.
EUM/EUM 서버(600)로부터 eUICC별로 BPP 복호화에 필요한 eUICC 암호화 키 정보들을 수신(616단계)한 Factory IT/OEM(615)는 주문 받은 M개의 eUICC들에 대한 암호화 키 정보들과 otPK 사용 정책을 맵핑하여 Factory IT 서버(615)에 저장(635 단계)할 수 있다.
이후 특정 시점에, Factory IT/OEM(615)는 EUM(600)으로부터 주문한 M개의 eUICC들의 일부 N개 또는 전체 eUICC에 프로파일 탑재를 결정할 수 있다. 이는, SP(Service Provider)/SP 서버(605)로부터의 프로파일의 선 탑재 출고 요청에 따른 것일 수 있다.
Factory IT/OEM(615)는 추가적인 선택적인(optional) 절차로 SP/SP 서버(605)에게 EID에 Linked된 프로파일을 사전에 준비할 수 있도록 Profile(들) 개수, EID(들)의 리스트 중 적어도 하나의 정보를 SP/SP서버(605)에게 전달(660 단계)할 수 있다. SP/SP 서버(605)는 프로파일을 프로파일 서버/서버 벤더(610)에 주문(665 단계)할 수 있다. 앞서 660 단계를 수행하여 EID 리스트를 가지고 있거나 또는 이전 특정 시점에서 EID 리스트를 획득한 경우, SP/SP 서버(605)는 Profile을 주문 시 EID 정보를 포함하여 프로파일 서버/서버 벤더(610)에 요청할 수 있다. SP/SP 서버(605), 프로파일 서버/서버 벤더(610), 및 Factory IT/OEM(615)는 해당 주문을 특정할 수 있는 정보를 서로 공유(650 단계)할 수 있다. 상기 해당 주문을 특정할 수 있는 정보는 SP/SP 서버(605) 또는 프로파일 서버/서버 벤더(610)가 Factory IT/OEM(615)에게 제공하는 식별 정보로 공유될 수도 있다. 일 예로 상기 식별 정보는, Batch ID, 주문 ID 같은 정보, 주문한 프로파일 리스트 또는 EID 리스트, 프로파일 리스트 또는 EID 리스트들의 시작과 끝 번호에 관한 정보, 공장 일련 번호, 또는 생산자 식별 번호에 관한 정보 중 적어도 하나일 수 있다.
Factory IT/OEM(615)는 BPP를 프로파일 서버/서버 벤더(610)에 요청할 수 있다. Factory IT/OEM(615)는 BPP를 요청하면서 630 단계에서 획득한 eUICC들의 키 정보 중에서 SP/SP 서버(605)가 프로파일을 탑재할 단말들의 숫자인 N개 만큼 해당 대상 단말들의 eUICC에 해당하는 키 정보들을 프로파일 서버/서버 벤더(610)에 전달(655 단계)해 줄 수 있다. 이는 앞서 (630 단계)에서 수신한 키 정보들의 일부 또는 전체일 수 있다. Factory IT/OEM(615)가 EUM/EUM서버(630)로부터 otPK 사용 정책에 대한 정보를 수신한 경우에 있어서 Factory IT/OEM(615)는 otPK 재사용이 가능하도록 설정된 경우 이를 표기하여 전송할 수 있다. 이는 일 예로 resuseFlag와 같은 값일 수 있다.
프로파일 서버(610)가 otPK 재시용 미 지원 정책을 운영하는 경우, 프로파일 서버는 이전에 수신해 사용 처리한 otPK인지를 확인하여, 동일 otPK 수신 시 에러 리턴하여 종료할 수 있다. 또는 이전에 수신해 사용 처리한 otPK인지 여부를 확인하지 않고 이와 상관없이 reuseFlag가 set되어 수신 시에 지원하지 않음으로 에러를 리턴하여 절차를 종료할 수도 있다.
프로파일-EID의 링크 정보(660 단계), 상호 공유한 주문 정보(650 단계), 수신한 프로파일을 설치할 대상 eUICC들의 암호화 키 정보(655 단계)들을 수집하는 단계의 적어도 하나 이상의 단계에서 수집한 정보들을 조합하여 프로파일 서버(610)에서 암호화된 프로파일 패키지를 생성한 후 (660 단계) 해당 생성한 프로파일 패키지들과 eUICC binding에 대한 정보를 Factory IT/OEM(615)에 제공(665 단계)해 줄 수 있다.
상기 생성한 암호화된 프로파일 패키지들과 각 BPP 암호화 키 정보들은 하나 이상의 메시지로 Factory IT/OEM(615)에 전송(665 단계)될 수 있고 해당 메시지로 전송되는 데이터의 일부 또는 전부는 서명된 데이터로 제공될 수도 있다.
해당 전송되는 메시지(665 단계)에는 otPK.EUICC.KA가 서명된 데이터에 포함되어 전송될 수도 있다.
670 단계에서, Factory IT(615)에서 IFPP를 위한 프로파일들을 eUICC에 설치하는 동작에 대해서 설명할 수 있다. 이 단계는 N개의 eUICC에 대해서 수행될 수 있다.
Factory IT/OEM(615)는 공장에서 단말을 출고하기 전에 단말에 프로파일을 주입하여 출고할 수 있다. 이를 위해 Factory IT/OEM(615)에서 BPP와 eUICC에서 프로파일 복호화에 필요한 일련의 암호화 키 정보들을 획득하여 저장해 둘 수 있다. 해당 일련의 암호화 키 정보들은 EUICC의 일회용 공개 키(이하 otPK.EUICC.KA로 표기)가 포함될 수 있다. 해당 일련의 암호화 키 정보들에는 otPK.EUICC.KA에 맵핑되는 Index ID를 더 포함할 수도 있다.
Factory IT(615)에 BPP와 eUICC에서 프로파일 복호화에 필요한 일련의 암호화 키 정보들을 공장 내부의 유무선 네트워크를 통해 공장에서 개별 단말(620)들에 전송될 수 있다. BPP와 일련의 암호화 키 정보들은 하나이상의 메시지에 포함되어 단말(620)에 전송될 수 있다. otPK.eUICC.KA가 포함되어 전송되는 경우, otPK.eUICC.KA는 프로파일 서버로부터 서명된 데이터에 포함되어 단말(620)이 수신할 수 있다. 일 예로, 다음 중 하나로 서명된 데이터에 포함되어 수신될 수 있다. 물론 하기의 예시에 제한되지 않는다.
-SK.DPauth.SIG: 프로파일 서버에서 프로파일 서버의 인증을 사용하는 프로파일 서버의 개인키
- SK.DPpb.SIG: 프로파일 서버에서 프로파일 서버의 프로파일 바인딩을 위해 사용한 개인키
- SK.DPxx.SIG: xx가 IFFP 용도를 의미하도록 정의된 프로파일 서버의 개인키
전술한 바와 같이, SK.DPpb.SIG는 프로파일 서버에서 프로파일 바인딩을 위해 사용하는 프로파일 서버의 개인키 또는 프로파일 서버가 IFPP 용도를 위해 사용한 프로파일 서버의 개인키 일수 있다. DPxx.SIG에서 용도를 나타내는 xx에서 xx가 IFPPP 용도 임을 나타내는 특정 정보로 표기될 수 있다.
단말(620)은 Factory IT(615)로부터 BPP(들)을 제공받아 eUICC(625)로 IFPP모드에서 BPP(들)을 주입하는 기능을 제공할 수 있다. 예를 들어, 해당 단말(620)이 BPP를 수신하는 시점에 Factory Provisioning 모드인 상태로 동작하거나 단말(620)은 BPP 수신 시점에서 IFPP로 진입해야 함으로 인지하여 동작을 개시할 수도 있다. 또는, 단말(620)은 공장 직원의 단말에 입력되는 이벤트, 또는 설정 값, 또는 특정 VPN(Virtual Private Network) 임으로 인지 등을 통해서 해당 모드로 진입할 수도 있다. 한편, UI 또는 설정 값으로 IFPP 모드 진입은 일반 환경에서는 사용자에게 표시되지 않도록 제한되는 UI로 제공될 수 있다. 단말(620)은 BPP를 eUICC(625)으로 전달할 수 있는데, 전술한 바와 같이 LPAf(미도시)를 거쳐서 eUICC(625)에 전달하거나 또는 LPAf(미도시)를 거치지 않고 eUICC(625)로 전달할 수 있다 (675 단계).
LPAf(미도시)를 사용하여 eUICC로 전달되는 메시지의 한 예로 ES10x의 하나 이상의 메시지에 포함되어 전송될 수 있다. 이하, 이에 대한 실시 예는 도 6 내지 도 6에서 후술하기로 한다.
eUICC(625)가 단말(620)로부터 수신된 메시지에 IFPP을 위한 동작임을 인지할 수 있는 정보가 수신될 수 있다. eUICC(625)가 단말(620)로부터 수신된 메시지를 통해서 IFPP용으로 프로파일 설치 동작 수행으로 판단하여 진입할 수 있다.
이는 IFPP용으로 정의되는 신규 function 이거나 또는 기존 SGP.61/62 내지 SGP. 31/32에서 정의한 ES10x 메시지에 IFPP 구분자 파라미터가 추가되거나, 또는 단말 출고 후 일반 환경에서 (Consumer향, 또는 M2M향 또는 IoT향) 프로파일 프로비저닝을 위해서는 포함되는 않는, 공장 출고용 식별 정보일 수 있다. 일 예로 공장 일련 번호, Batch ID, 생산자 식별 정보와 같은 값 중의 하나일 수 있다. 물론 이에 한정되지 않는다.
전술한 바와 같이 단말(620)은 프로파일 서버로부터 otPK.EUICC.KA 또는 Index ID가 포함된 데이터를 수신할 수 있고 해당 otPK.EUICC.KA 또는 Index ID 포함된 데이터는 다음 중 하나로 서명된 데이터에 포함되어 수신될 수도 있다. 물론 하기의 예시에 제한되지 않는다.
- SK.DPauth.SIG: 프로파일 서버가 프로파일 서버의 인증을 위해 사용한 프로파일 서버의 개인키
- SK.DPpb.SIG: 프로파일 서버가 프로파일 바인딩을 위해 사용하는 프로파일 서버의 개인키
- SP.DPifpp.SIG: 프로파일 서버가 IFPP용으로 특정하여 사용한 프로파일 서버의 개인키
단말(620)은 상기 서명된 데이터를 다시 eUICC(625)에 LPAf 또는 LPAf를 거치지 않고 eUICC(625)에 전달할 수 있다. eUICC(625)는 eUICC(625)가 수신된 데이터에 대한 프로파일 서버(610)의 서명을 검증하고, 사전에 저장해 둔 eUICC의 일회성 개인키(otSK.EUICC.KA)를 이용하여 세션 키를 생성하여 BPP를 복호화하여 설치를 처리할 수 있다. (680 단계)
(680 단계)에서 eUICC(625)가 저장된 otPK 재사용 정책 또는 그리고 사용 횟수를 확인할 수 있다. 만약, 재사용 정책/횟수 사용 시, eUICC(625)는 사용 횟수 초과 시 에러 리턴하여 절차를 종료할 수 있다. otPK 재사용 정책을 허용 또는/그리고 재사용 사용 횟수 내인 경우에, eUICC(625)는 otPK.EUICC.KA에 맵핑되는 otSK.EUICC.KA 사용를 사용하여 세션키 생성할 수 있다. eUICC(625)는 otPK.EUICC.KA가 수신(675 단계) 시 맵핑되는 otSK.EUICC.KA를 사용할 수 잇다. 재 사용을 허용하므로, eUICC내에 1개의 otSK.EUICC.KA만 존재할 수 있다. 이 경우, otPK.EUICC.KA 미 수신(675 단계)시 1개의 otSK.EUICC.KA만 있으므로, 해당 otSK.EUICC.KA를 사용하여 세션키를 생성할 수 있다. 만약, otSK.EUICC.KA가 2개 이상 존재하고, otPK.EUICC.KA가 수신되지 않은 경우, eUICC(625)는 에러를 리턴 할 수 있다.
프로파일 설치 성공 후, eUICC(625)는 다음 중 하나로 처리할 수 있다.
- otPK/SK 재사용 불가 정책:사용한 otSK.EUICC.KA 폐기
- otPK/SK 재사용 정책:사용한 otSK.EUICC.KA 보관
만약 재사용 가능하고, otPK/SK 사용 횟수 정책을 사용하는 경우,
- 사용 횟수를 차감해 저장. 사용 횟수 도달 시,사용한 otSK.EUICC.KA 폐기
프로파일 설치 실패 시, eUICC(625)는 다음 중 하나로 처리할 수 있다.
- otPK/SK 재사용 불가 정책: 기존 otSK.EUICC.KA 유지
- otPK/SK 재사용 정책: otSK.EUICC.KA 보관 (성공/실패와 무관)
만약 재사용 가능하고, otPK/SK 사용 횟수 정책을 사용하는 경우,
- 실패 시, 기존 사용 횟수 유지
한편, (680 단계)에서 eUICC(625)가 otSK.EUICC.KA와 맵핑되는 otPK.EUICC.KA를 함께 저장하고 있는 경우 eUICC(625)는 위 otSK.EUICC.KA를 폐기/보관/유지하는 경우 맵핑되는 otPK.EUICC.KA도 동일하게 폐기/보관/유지하여 두는 것도 가능하다.
eUICC(625)는 프로파일의 설치 결과를 LPAf 또는 LPAf를 거치지 않고 단말에 전송하여 단말에서 Factory IT 서버(615)에 회신해 줄 수 있다. (685 단계) eUICC(625)는 Factory IT(615)에 회신하는 설치 결과 메시지로, Factory IT(615)가 확인할 설치 결과 데이터에 추가적으로 프로파일 서버/서버 벤더(610)에서 확인하도록 하는 eUICC가 서명한 설치 결과 데이터를 포함해 전송할 수 있다.
Factory IT(615)는 프로파일 설치 결과가 성공되었다는 응답을 수신하면 재사용 정책을 사용하고 재사용 횟수가 있는 경우, 사용한 otPK 횟수 +1 저장하고, 만약 사용 횟수 도달 시, 사용한 Key Material를 삭제하거나 해당 Key Material을 사용 완료로 상태를 변경하여 둘 수 있다. 만약, 재사용 정책을 사용하고 무제한 사용인 경우, 추가 동작 없이 처리할 수도 있다. Factory IT(615)는 프로파일 설치 결과로 에러를 수신하면 Factory IT(615)는 사용한 Key Material를 유지 보관하고 해당 Key Material 상태를 변경(예. 에러, 설치 오류 등)과 같이 해 둘 수도 있다. 또한, 사용 횟수를 차감하지 않고 저장하여 둘 수 있다.
Factory IT(615)는 프로파일 설치 결과를 다시 프로파일 서버/서버 벤더(610)에 회신해 줄 수 있다. Factory IT/OEM(615)은 설치 결과들을 개별적으로 프로파일 서버/서버 벤더(610)에 회신할 수도 있고, 결과들을 수집했다가 특정 시점에 일괄로 프로파일 서버/서버 벤더(610)에 제공해 줄 수도 있다. 프로파일 서버/서버 벤더(610)는 처리 결과가 eUICC 서명된 설치 결과 데이터로 수신된 경우, eUICC의 서명을 검증하여 처리 결과를 확인할 수 있다. 처리 결과로 성공 결과 수신 시, 프로파일 서버/서버 벤더(610)는 해당 BPP 설치를 위한 otPK.EUICC.KA를 사용을 완료하여, (655단계)에서 수신한 otPK.EUICC.KA 폐기하거나 사용 완료로 상태 변경 처리해서 관리할 수 있다.
프로파일 서버/서버 벤더(610) 또는 Factory IT/OEM(615)은 또한 해당 설치 결과(들)을 SP/SP 서버(605)에 선택적으로 제공해 줄 수 있다.
도 7은 본 개시의 일 실시 예에 따른 무선 통신 시스템에서 프로파일 서버(700), Factory IT(720) 및 단말(740)의 구조를 나타내는 블록도이다.
도 7을 참조하면, 본 개시의 일 실시 예에 따른 프로파일 서버(700)는 통신부(705), 제어부(710) 및 암호화부(715)를 포함할 수 있다.
통신부(705)는 다른 장치들로 데이터를 송신하거나 다른 장치로부터 데이터를 수신할 수 있다. 통신부(705)는 암호화된 키, 암호화된 프로파일 등을 송신하거나 수신할 수 있다. 이를 위하여 통신부(705)는 적어도 하나의 통신 모듈과 안테나 등을 구비할 수 있다.
제어부(710)는 본 발명에 따른 프로파일 설치를 위하여 프로파일 서버(700)의 각 구성 요소를 제어할 수 있다. 제어부(710)의 구체적인 동작을 상술한 바와 같다. 일 실시 예에 따르면, 프로파일 서버(700)는 서비스 사업자 서버 또는 제조사의 서버 또는 서비스 사업자와 제조사로부터 수신된 정보를 참조하여 동일한 주문 건인지를 판단하고, 동일한 주문 건에 대해서 프로파일과 eUICC 제공 정보를 맵핑하여 저장부(미도시)에 저장해 두도록 처리할 수 있다. 또한, 서비스 사업자로부터 수신된 EID 정보를 참조하여 프로파일을 특정 EID와 맵핑하여 미리 준비하도록 동작을 제어할 수 있다. 또 다른 일 실시 예에 따르면, 제어부(710)는 통신부(705)을 통해서 수신된 메시지로부터 수신된 정보를 가지고 IFPP용으로 프로파일을 준비해야 하는지를 판단하여 프로파일을 준비하는 동작으로 진입을 처리하여 동작을 수행할 수 있다.
또 다른 일 실시 예에 따르면, 제어부(710)는 통신부(705)을 통해서 수신된 메시지로부터 수신된 정보에서 Index ID가 있는지를 판단하여 Index ID가 있는 경우, 이를 포함하여 eUICC의 서명을 검증할 지 여부를 판단하고, Index ID를 포함하여 프로파일 서버의 서명 값을 생성할 수 있도록 제어할 수 있다.
또 다른 일 실시 예에 따르면, 제어부(710)는 통신부(705)을 통해서 수신된 메시지로부터 수신된 정보에서 otPK.EUICC.KA에 대한 reuse 지시자, 일 예로 reuse flag가 있는지를 판단하여 프로파일 서버의 otPK 재시용 미 지원 여부를 판단하여 통신부(705)를 통해 처리할 수 있다.
프로파일 서버(700)는 Factory IT로부터 수신된 메시지를 통신부(705)를 통해 수신하여 해당 수신 메시지로부터 IFPP용 프로파일의 다운로드 요청임으로 판단하고 공장용으로 프로파일들을 준비하도록 동작을 처리하여 해당 처리 결과를 통신부(705)를 통해 Factory IT로 송신해 줄 수 있다. 암호화부(715)는 제어부(710)의 제어에 따라 키 또는 프로파일의 암호화 또는 복호화를 수행한다.
암호화부(715)는 HSM을 포함하거나 HSM 그 자체로 명명될 수 있으며, 암호 키를 노출시키지 않고 프로파일의 암호화 및 복호화를 수행할 수 있다. 구현하기에 따라, 암호화부(715)는 제어부(710)에 내장되거나, 제어부(710)에 의하여 구동되는 소프트웨어 코드 형식으로 구현될 수 있다.
도 7을 참조하면, 본 개시의 일 실시 예에 따른 Factory IT(720)는 통신 장치(725), 제어 장치(730), 및 저장 장치(735)를 포함할 수 있다. 통신 장치(725)는 다른 장치들로 데이터를 송신하거나 다른 장치로부터 데이터를 수신할 수 있다. Factory IT(720)가 저장 장치(735)를 포함하는 하나의 장치로써 동작하는 경우, Factory IT(720)는 통신 장치(725)와 저장 장치(735)를 중앙에서 통제하는 별도의 제어 장치(730) 및 저장 장치(735)를 구비할 수도 있다. Factory IT(720)는 전술한 바와 같이 1개 이상의 장치로도 구성될 수도 있다.
통신 장치(725)는 암호화된 키, 암호화된 프로파일 등을 송신하거나 수신할 수 있다. 이를 위하여 통신 장치(725)는 적어도 하나의 통신 모듈과 안테나 등을 구비할 수 있다. 본 개시의 일 실시 예에 따르면, Factory IT(720)가 저장 장치(735)를 포함하는 하나의 장치로써 동작하는 경우, 통신 장치(725)는 Factory IT(720) 자체를 위하여 구비될 수 있다. Factory IT(720)는 통신 장치(725)을 통해서 암호화된 키 정보와 암호화된 프로파일 등을 송신하거나 수신할 수 있다. 또한, 암호화된 index ID를 포함해 송신하거나 수신할 수 있다. 수신된 프로파일 또는 암호화된 키 등은 Factory IT(720)의 제어 장치(730)에 의해서 해당 정보와 맵핑되는 단말과의 맵핑을 판단하여 통신 장치(725)를 통해 단말(740)에 송신될 수 있다.
Factory IT(720)의 저장 장치(735)는 적어도 하나의 암호화된 프로파일을 저장할 수 있다. 또한, 적어도 하나의 암호화된 프로파일에 대한 암호화된 키 정보를 저장할 수 있다. 또한, 적어도 하나의 암호화된 프로파일에 대한 암호화된 키 정보에 맵핑되는 Index ID를 더 저장할 수도 있다. 하나의 암호화된 프로파일에 대한 암호화된 키 정보에 맵핑되는 otPK 재사용 정책을 더 저장할 수도 있다. Factory IT(720)의 통신 장치(725)는 프로파일 설치 결과를 수신하면 제어 장치(730)가 이를 판단하여 맵핑된 프로파일의 설치 결과 정보를 업데이트하여 결과 정보를 저장 장치(735)에 업데이트했다가, 특정 시점에 프로파일 서버(700)에 일괄로 제공해 줄 수 있다. 저장 장치(735)는 하드디스크 타입(hard disk type), 램 (Random Access Memory, RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory, ROM), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다. Factory IT(720)는 서버 등의 형태로 구현될 수 있다.
도 7을 참조하면, 단말(740)은 통신부(745), 제어부(750), 저장부(755) 및 eUICC(760)를 포함할 수 있다. 통신부(745)는 다른 장치들로 데이터를 송신하거나 다른 장치로부터 데이터를 수신할 수 있다. 통신부(745)는 암호화된 키, 암호화된 프로파일 등을 수신할 수 있다. 이를 위하여 통신부(745)는 적어도 하나의 통신 모듈과 안테나 등을 구비할 수 있다. 제어부(750)는 본 발명에 따른 프로파일 설치를 위하여 단말(740)의 각 구성 요소를 제어할 수 있다. 제어부(750)는 단말(740)의 전반적인 동작들을 제어할 수 있다. 예를 들어, 제어부(750)는 통신부(745)를 통해 신호를 송수신할 수 있다. 또한, 제어부(750)는 저장부(755)에 데이터를 기록하고 읽을 수 있다. 제어부(750)는 적어도 하나일 수 있다. 예를 들어, 제어부(750)는 통신을 위한 제어를 수행하는 CP(communication processor) 및 응용 프로그램 등 상위 계층을 제어하는 AP(application processor)를 포함할 수 있다. 일 실시 예에 따르면, 저장부(755)에 단말 저장된 Configuration 정보가 있는 경우에 제어부(750)는 해당 정보를 저장부(755)에 요청하여 화면 표시부(미도시)가 표시하거나 해당 정보를 받아서 추가적인 동작을 처리할 수 있다. 또다른 일 실시예에 따르면, 제어부(750)는 저장부(755)를 통해서 읽은 데이터 기록, 또는 제어부(750) 및 통신부(745)를 통해 수집된 정보를 매칭하여 공장에서의 프로파일 설치 선택에 참조할 수 있는 정보를 단말이 추론하는 처리 과정을 수행할 수 있다. 또한, 제어부(750)는 단말(740)에 저장된 특정 정보에 대한 사용자 동의가 필요한지 여부를 판단하고, 화면 표시부(미도시)에 표시할 수 있다.
제어부(750)는 이에 대응하는 동작을 수행하도록 단말(740)을 제어할 수 있다. 일 실시 예에 따르면, 제어부(750)는 eUICC(760)의 구동 및 제어를 담당하는 LPA, LPA가 통합 구현된 애플리케이션, 공장 설치를 관장하는 애플리케이션을 포함할 수 있다. 또한, 제어부(750)는 LPA로 또는 애플리케이션에 수신된 정보를 해석하여 CP(communication processor)에 특정 Command APDU 요청을 처리하거나 요청된 정보의 일부 또는 전체를 저장부(755)로부터 수집하여 LPA 또는 애플리케이션에 회신하는 단말 프레임워크를 포함할 수 있다.
제어부(755)는 단말(740)과 통신부(745)을 통해 eUICC(760)로부터 획득한 소정의 정보를 종합하여 IFPP 모드로 진입하는 동작을 판단하여 eUICC(760)에 IFPP로 진입할 수 있도록 제어할 수 있다. eUICC(760)은 제어부(750)의 제어에 따라 동작할 수 있다, 본 개시의 일 실시 예에 따르면, eUICC(760)는 IFPP모드로 진입하여 프로파일 설치에 대한 절차를 처리하고 해당 처리 결과를 단말(740)에 회신해 줄 수 있다. 본 개시의 일 실시 예에 따른 제어부(750)는 Factory IT(720)로부터 수신 받은 프로파일 패키지의 프로파일 정보 또는 응답 메시지를 수신하고, 수신된 프로파일 정보 또는 응답 메시지로부터 IFPP용 프로파일 설치 요청 정보가 있는지를 판단하고, 수신 시의 단말 설정 또는 사용자 입력 정보를 참조하여 공장 모드에서의 프로파일 설치를 수행할 지를 판단하고, 일반 모드로 진입할 지 IFPP 모드로 진입을 판단하고, IFPP 모드로 진입을 결정하고, IFPP로 프로파일을 설치하기 위해 eUICC(760)에 전달할 메시지를 구성하고, 프로파일 패키지의 프로파일 정보를 하나 이상의 메시지로 구성하고, 해당 메시지를 eUICC(760)에 전달할 수 있도록 제어하고, eUICC(760)로부터 단말(740)에 수신된 처리 결과를 수신하여 프로파일 설치 절차를 종료할 지 여부를 판단하고, 처리 결과를 통신부(745)에 전달하고, 통신부(745)로 하여금 처리 결과를 Factory IT(720)에 전달하도록 단말(740)을 제어할 수 있다.
저장부(755)는 단말(740)의 동작을 위한 기본 프로그램, 응용 프로그램, 설정 정보 등의 데이터를 저장할 수 있다. 본 개시에 따른 일 실시 예에서는 저장부(755)는 플래시 메모리 타입(Flash Memory Type), 하드 디스크 타입(Hard Disk Type), 멀티미디어 카드 마이크로 타입(Multimedia Card Micro Type), 카드 타입의 메모리(예를 들면, SD 또는 XD 메모리 등), 자기 메모리, 자기 디스크, 광디스크, 램(Random Access Memory, RAM), SRAM(Static Random Access Memory), 롬(Read-Only Memory, ROM), PROM(Programmable Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory) 중 적어도 하나의 저장 매체를 포함할 수 있다. 저장부(755)는 제어부(750)와 SoC(System on Chip)으로 통합 구현되어 있을 수 있다. 제어부(750)는 저장부에 저장된 각종 프로그램, 컨텐츠, 데이터 등을 이용하여 다양한 동작을 수행할 수 있다.
도 7에서 eUICC(760)는 단말(740)에 내장된 UICC칩으로, 적어도 하나의 프로파일을 저장, 관리, 삭제하는 기능을 수행할 수 있다. 프로파일은 기존 UICC 카드에 저장되는 하나 또는 복수 개의 어플리케이션 및 가입자 인증정보, 전화번호부 등의 데이터 정보를 총칭할 수 있다. eUICC(760)는 도 1에서 도시한 것과 같이 단말(740)의 일부로 포함될 수 있으며 도 2 내지 도 6에서는 단말(740)과 eUICC(760)간의 동작을 설명하기 위해서 각각 별도 모듈로 표현하였다. eUICC(760)는 프로파일을 설치하기 위한 제어부, 저장부, 통신부를 포함할 수도 있다. eUICC(760)내에 애플리케이션의 일부는 제어부(750)에 설치되어 있을 수 있으며 설치되어 있는 애플리케이션은 LPA의 기능의 일부를 포함할 수도 있다.
본 개시의 일 실시 예에 따르면, eUICC(760)의 제어부는 통신부를 통해서 수신된 단말(720)의 프로파일 설치 요청 정보를 획득한 후, 해당 메시지 정보를 통해서 프로파일 패키지와 암호화 키 정보들에 대한 소정의 정보를 획득하고, eUICC(760)가 IFPP로 진입할 지 여부를 판단하여 동작을 결정하고, 이에 따라 IFPP을 위한 프로파일 설치 절차 및 수신된 정보를 eUICC(760)의 저장부에 있는 정보와 비교 검증하여 처리하고, 수신된 프로파일 패키지를 검증하여 설치에 대한 동작을 수행하고, 메시지를 구성하여 통신부를 통해 단말(740)에 처리 결과를 회신해 줄 수 있다. 본 발명의 상기 실시 예들에 언급한 바와 같이 eUICC(760)의 저장부에 있는 정보와 비교 검증하여 처리하는 정보의 일 예는 Index ID 또는 재사용 정책 또는 otPK.EUICC.KA와 같은 정보일 수 있다.
다만, 도 7에서 언급하는 구성 요소가 전술한 예에 한정되는 것은 아니다. 예를 들어, Factory IT(720)는 전술한 구성 요소보다 더 많은 구성 요소를 포함하거나 더 적은 구성 요소를 포함할 수 있다. 본 문서에 개시된 다양한 실시 예들에 따른 단말(740)은 전자 디바이스가 될 수 있으며, 상기 전자 디바이스는 다양한 형태의 디바이스가 될 수 있다. 상기 전자 디바이스는, 예를 들면, 휴대용 통신 디바이스 (예: 스마트폰), 컴퓨터 디바이스, 휴대용 멀티미디어 디바이스, 휴대용 의료 기기, 카메라, 웨어러블 디바이스, 또는 가전 디바이스를 포함할 수 있다. 본 문서의 일 실시 예에 따른 전자 디바이스는 전술한 기기들에 한정되지 않는다.
본 문서의 다양한 실시 예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시 예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나","A 또는 B 중 적어도 하나,""A, B 또는 C," "A, B 및 C 중 적어도 하나,"및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일 실시 예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.
본 문서의 다양한 실시 예들은 머신(machine)(예: 전자 디바이스) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리 또는 외장 메모리)에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램)로서 구현될 수 있다. 예를 들면, 머신(예: 전자 디바이스)의 프로세서는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장매체가 실재(tangible)하는 디바이스고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일 실시 예에 따르면, 본 문서에 개시된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 디바이스들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시 예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있다. 다양한 실시 예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.
상술한 본 개시의 구체적인 실시 예들에서, 본 개시에 포함되는 구성 요소는 제시된 구체적인 실시 예에 따라 단수 또는 복수로 표현되었다. 그러나, 단수 또는 복수의 표현은 설명의 편의를 위해 제시한 상황에 적합하게 선택된 것으로서, 본 개시가 단수 또는 복수의 구성 요소에 제한되는 것은 아니며, 복수로 표현된 구성 요소라 하더라도 단수로 구성되거나, 단수로 표현된 구성 요소라 하더라도 복수로 구성될 수 있다.
한편 본 개시의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 개시의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 개시의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.

Claims (1)

  1. 대량의 프로파일들을 단말들에 프로비저닝 하기 위한 방법에 있어서, 상기 방법은,
    프로파일 설치를 위한 키 정보와 Index ID를 획득하는 단계;
    Factory 주입용 프로파일 요청을 프로파일 서버에 전달하는 단계;
    상기 프로파일 서버로부터 Bound Profile Package(BPP)와 BPP 복호화를 위한 암호화키 선택 정보로써 Index ID를 수신하는 단계;
    상기 수신된 BPP 및 Index ID를 단말에게 전달하는 단계를 포함하는 단계; 및
    상기 Index ID를 참조하여 BPP를 복호화하는 단계를 포함하는 방법.
KR1020220122539A 2022-09-27 2022-09-27 무선 통신 시스템에서 프로파일 프로비저닝을 위한 eUICC의 암호화 키 관리 방법 및 장치 KR20240043441A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220122539A KR20240043441A (ko) 2022-09-27 2022-09-27 무선 통신 시스템에서 프로파일 프로비저닝을 위한 eUICC의 암호화 키 관리 방법 및 장치
PCT/KR2023/015057 WO2024072114A1 (ko) 2022-09-27 2023-09-27 무선 통신 시스템에서 프로파일 프로비저닝을 위한 euicc의 암호화 키 관리 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220122539A KR20240043441A (ko) 2022-09-27 2022-09-27 무선 통신 시스템에서 프로파일 프로비저닝을 위한 eUICC의 암호화 키 관리 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20240043441A true KR20240043441A (ko) 2024-04-03

Family

ID=90478683

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220122539A KR20240043441A (ko) 2022-09-27 2022-09-27 무선 통신 시스템에서 프로파일 프로비저닝을 위한 eUICC의 암호화 키 관리 방법 및 장치

Country Status (2)

Country Link
KR (1) KR20240043441A (ko)
WO (1) WO2024072114A1 (ko)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101846995B1 (ko) * 2011-07-08 2018-04-09 주식회사 케이티 eUICC를 포함하는 시스템에서 공개키 암호화를 이용한 정보 전송 방법
KR102416623B1 (ko) * 2014-11-17 2022-07-04 삼성전자 주식회사 통신 시스템에서 프로파일 설치 방법 및 장치
KR20160124648A (ko) * 2015-04-20 2016-10-28 삼성전자주식회사 프로파일 다운로드 및 설치 장치
KR102545897B1 (ko) * 2015-12-22 2023-06-22 삼성전자 주식회사 프로파일 제공 방법 및 장치

Also Published As

Publication number Publication date
WO2024072114A1 (ko) 2024-04-04

Similar Documents

Publication Publication Date Title
KR102597224B1 (ko) 통신 시스템에서 프로파일 설치 방법 및 장치
US10638314B2 (en) Method and apparatus for downloading a profile in a wireless communication system
KR102570563B1 (ko) 무선 통신 시스템에서 프로파일을 다운로드 하는 방법 및 장치
US11871227B2 (en) Device changing method and apparatus of wireless communication system
US20220201475A1 (en) Method and apparatus to manage authentication and subscription information in wireless communication system
CN111919458A (zh) 用于协商euicc版本的方法和装置
KR20240043441A (ko) 무선 통신 시스템에서 프로파일 프로비저닝을 위한 eUICC의 암호화 키 관리 방법 및 장치
CN116368825A (zh) 用于管理智能安全平台的通信捆绑包的方法和装置
KR20240022967A (ko) 무선 통신 시스템에서, 프로파일을 프로비저닝하기 위한 방법 및 장치
KR20240022974A (ko) 무선 통신 시스템에서, 프로파일을 프로비저닝하기 위한 방법 및 장치
KR20240022985A (ko) 무선 통신 시스템에서, 프로파일을 프로비저닝하기위한 방법 및 장치
KR20240022979A (ko) 무선 통신 시스템에서, 프로파일을 프로비저닝하기 위한 방법 및 장치
KR20220050731A (ko) 무선 통신 시스템에서 단말 및 범용 통합 회로 카드 간 초기화 방법 및 장치
KR20240068539A (ko) 무선 통신 시스템에서 프로파일 프로비저닝을 위한 eUICC의 암호화 키 생성 방법 및 장치
US20230054892A1 (en) Method and device for providing event in wireless communication system
US20230262450A1 (en) Method and apparatus for transferring and storing activation code for esim device change
US20220338008A1 (en) Method and apparatus for managing events in a wireless communication system
US20230247578A1 (en) Method and apparatus for processing event for device change
KR20220118291A (ko) 단말 및 범용 통합 회로 카드 간 복수 개의 활성화된 프로파일을 위한 프로파일 관리 메시지 전송하고 처리하는 방법 및 장치
KR20230135483A (ko) 닫힌 포트에 활성화된 프로파일을 처리하는 방법 및 장치
KR20230115852A (ko) 기기 변경 시 사용자 인증 방법 및 장치
CN117136570A (zh) 用于在无线通信系统中管理事件的方法和装置
KR20230028129A (ko) 무선 통신 시스템에서 이벤트를 제공하기 위한 방법 및 장치
CN115280815A (zh) 在设备之间在线移动捆绑包或配置文件的方法和设备
KR20220068886A (ko) 복수 프로파일 활성화를 지원하는 탈착식 eUICC를 고려한 프로파일 핸들링 방법 및 장치