KR20210020770A - 기기 간 번들 이동 방법 및 장치 - Google Patents

기기 간 번들 이동 방법 및 장치 Download PDF

Info

Publication number
KR20210020770A
KR20210020770A KR1020200086799A KR20200086799A KR20210020770A KR 20210020770 A KR20210020770 A KR 20210020770A KR 1020200086799 A KR1020200086799 A KR 1020200086799A KR 20200086799 A KR20200086799 A KR 20200086799A KR 20210020770 A KR20210020770 A KR 20210020770A
Authority
KR
South Korea
Prior art keywords
bundle
terminal
information
ssp
profile
Prior art date
Application number
KR1020200086799A
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
Priority claimed from KR1020190151238A external-priority patent/KR20210020725A/ko
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to PCT/KR2020/010889 priority Critical patent/WO2021034048A1/ko
Priority to EP20854614.3A priority patent/EP3993343A4/en
Priority to CN202080071810.XA priority patent/CN114556887A/zh
Priority to US17/635,346 priority patent/US20220278985A1/en
Publication of KR20210020770A publication Critical patent/KR20210020770A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

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

Abstract

본 개시는 4G 시스템 이후 보다 높은 데이터 전송률을 지원하기 위한 5G 통신 시스템을 IoT 기술과 융합하는 통신 기법 및 그 시스템에 관한 것이다. 본 개시는 5G 통신 기술 및 IoT 관련 기술을 기반으로 지능형 서비스 (예를 들어, 스마트 홈, 스마트 빌딩, 스마트 시티, 스마트 카 혹은 커넥티드 카, 헬스 케어, 디지털 교육, 소매업, 보안 및 안전 관련 서비스 등)에 적용될 수 있다. 본 개시는 스마트 보안 매체 간 번들 이동에 있어 안전하게 번들을 이동하고 관리하기 위한 방법 및 장치를 개시한다.

Description

기기 간 번들 이동 방법 및 장치 {APPARATUS, AND METHODS FOR SECURE DEVICE TO DEVICE BUNDLE TRANSFER}
본 개시는 스마트 보안 매체에 관한 것으로, 보다 상세하게는, 스마트 보안 매체 간 번들 이동을 위한 방법 및 장치에 관한 것이다.
4G 통신 시스템 상용화 이후 증가 추세에 있는 무선 데이터 트래픽 수요를 충족시키기 위해, 개선된 5G 통신 시스템 또는 pre-5G 통신 시스템을 개발하기 위한 노력이 이루어지고 있다. 이러한 이유로, 5G 통신 시스템 또는 pre-5G 통신 시스템은 4G 네트워크 이후 (Beyond 4G Network) 통신 시스템 또는 LTE 시스템 이후 (Post LTE) 시스템이라 불리어지고 있다. 높은 데이터 전송률을 달성하기 위해, 5G 통신 시스템은 초고주파(mmWave) 대역 (예를 들어, 60기가(60GHz) 대역과 같은)에서의 구현이 고려되고 있다. 초고주파 대역에서의 전파의 경로손실 완화 및 전파의 전달 거리를 증가시키기 위해, 5G 통신 시스템에서는 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO), 전차원 다중입출력(Full Dimensional MIMO: FD-MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 및 대규모 안테나 (large scale antenna) 기술들이 논의되고 있다. 또한 시스템의 네트워크 개선을 위해, 5G 통신 시스템에서는 진화된 소형 셀, 개선된 소형 셀 (advanced small cell), 클라우드 무선 액세스 네트워크 (cloud radio access network: cloud RAN), 초고밀도 네트워크 (ultra-dense network), 기기 간 통신 (Device to Device communication: D2D), 무선 백홀 (wireless backhaul), 이동 네트워크 (moving network), 협력 통신 (cooperative communication), CoMP (Coordinated Multi-Points), 및 수신 간섭제거 (interference cancellation) 등의 기술 개발이 이루어지고 있다. 이 밖에도, 5G 시스템에서는 진보된 코딩 변조(Advanced Coding Modulation: ACM) 방식인 FQAM (Hybrid FSK and QAM Modulation) 및 SWSC (Sliding Window Superposition Coding)과, 진보된 접속 기술인 FBMC(Filter Bank Multi Carrier), NOMA(non orthogonal multiple access), 및SCMA(sparse code multiple access) 등이 개발되고 있다.
한편, 인터넷은 인간이 정보를 생성하고 소비하는 인간 중심의 연결 망에서, 사물 등 분산된 구성 요소들 간에 정보를 주고 받아 처리하는 IoT(Internet of Things, 사물인터넷) 망으로 진화하고 있다. 클라우드 서버 등과의 연결을 통한 빅데이터(Big data) 처리 기술 등이 IoT 기술에 결합된 IoE (Internet of Everything) 기술도 대두되고 있다. IoT를 구현하기 위해서, 센싱 기술, 유무선 통신 및 네트워크 인프라, 서비스 인터페이스 기술, 및 보안 기술과 같은 기술 요소 들이 요구되어, 최근에는 사물간의 연결을 위한 센서 네트워크(sensor network), 사물 통신(Machine to Machine, M2M), MTC(Machine Type Communication)등의 기술이 연구되고 있다. IoT 환경에서는 연결된 사물들에서 생성된 데이터를 수집, 분석하여 인간의 삶에 새로운 가치를 창출하는 지능형 IT(Internet Technology) 서비스가 제공될 수 있다. IoT는 기존의 IT(information technology)기술과 다양한 산업 간의 융합 및 복합을 통하여 스마트홈, 스마트 빌딩, 스마트 시티, 스마트 카 혹은 커넥티드 카, 스마트 그리드, 헬스 케어, 스마트 가전, 첨단의료서비스 등의 분야에 응용될 수 있다.
이에, 5G 통신 시스템을 IoT 망에 적용하기 위한 다양한 시도들이 이루어지고 있다. 예를 들어, 센서 네트워크(sensor network), 사물 통신(Machine to Machine, M2M), MTC(Machine Type Communication)등의 기술이 5G 통신 기술이 빔 포밍, MIMO, 및 어레이 안테나 등의 기법에 의해 구현되고 있는 것이다. 앞서 설명한 빅데이터 처리 기술로써 클라우드 무선 액세스 네트워크(cloud RAN)가 적용되는 것도 5G 기술과 IoT 기술 융합의 일 예라고 할 수 있을 것이다.
개시된 실시 예는 두 전자 장치에 포함된 보안 모듈 사이에 번들을 이동하고자 하는 경우 신뢰성 있는 번들 이동 서비스를 가능하게 하는 장치 및 방법을 제공하는 것이다.
상기에 기술된 과제를 해결하기 위하여 본 개시는 다음과 같은 해결 수단을 가질 수 있다.
본 발명의 일 면(aspect)에 따른 제1 보안 매체의 방법은 제2 보안 매체로 전송될 번들을 식별하는 단계; 상기 번들과 연관된 번들 이동 설정 정보에 기초하여 상기 번들의 전송이 허용되는지 여부를 결정하는 단계; 및 상기 결정에 기초하여 상기 번들을 상기 제2 보안 매체로 전송하는 단계를 포함할 수 있다.
다양한 실시예에 따라, 상기 방법은 상기 번들의 전송을 위해 사용될 번들 이동 코드를 생성할지를 식별하는 단계; 및 상기 식별에 기초하여 상기 번들 이동 코드를 생성하는 단계를 더 포함할 수 있다.
다양한 실시예에 따라, 상기 방법은 상기 번들 이동 코드를 상기 제2 보안 매체로 전송하는 단계를 더 포함할 수 있다.
다양한 실시예에 따라, 상기 번들 이동 코드를 생성하는 단계는: 상기 번들 이동 코드를 생성할 것이 식별되는 경우, 상기 번들 이동 코드를 생성하는 단계를 포함하고, 상기 번들 이동 코드는 미리 설정된 번들의 고유 ID 또는 상기 번들을 식별하기 위한 새로운 ID일 수 있다.
다양한 실시예에 따라, 상기 번들 이동 설정 정보는 번들 이동 정책 정보 또는 번들 이동 내역 정보 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따라, 상기 번들 이동 정책 정보는 상기 번들의 기기 간 전송이 허용되는지를 나타내는 인디케이션을 포함할 수 있다.
다양한 실시예에 따라, 상기 번들 이동 내역 정보는 상기 번들의 이동이 이루어진 날짜와 시간에 대한 정보 또는 상기 번들의 이동이 이루어진 횟수에 대한 정보 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따라, 상기 번들 이동 설정 정보를 업데이트하는 단계를 더 포함할 수 있다.
본 발명의 다른 면에 따른 제1 보안 매체는 트랜시버; 및 상기 트랜시버에 연결된 적어도 하나의 프로세서를 포함하며, 상기 적어도 하나의 프로세서는: 제2 보안 매체로 전송될 번들을 식별하고, 상기 번들과 연관된 번들 이동 설정 정보에 기초하여 상기 번들의 전송이 허용되는지 여부를 결정하고, 그리고 상기 결정에 기초하여 상기 번들을 상기 제2 보안 매체로 전송할 수 있다.
다양한 실시예에 따라, 상기 적어도 하나의 프로세서는: 상기 번들의 전송을 위해 사용될 번들 이동 코드를 생성할지를 식별하고, 상기 식별에 기초하여 상기 번들 이동 코드를 생성할 수 있다.
다양한 실시예에 따라, 상기 적어도 하나의 프로세서는: 상기 번들 이동 코드를 상기 제2 보안 매체로 전송할 수 있다.
다양한 실시예에 따라, 상기 번들 이동 코드를 생성하는 것은: 상기 번들 이동 코드를 생성할 것이 식별되는 경우, 상기 번들 이동 코드를 생성하는 것을 포함하고, 상기 번들 이동 코드는 미리 설정된 번들의 고유 ID 또는 상기 번들을 식별하기 위한 새로운 ID일 수 있다.
다양한 실시예에 따라, 상기 번들 이동 설정 정보는 번들 이동 정책 정보 또는 번들 이동 내역 정보 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따라, 상기 번들 이동 정책 정보는 상기 번들의 기기 간 전송이 허용되는지를 나타내는 인디케이션을 포함할 수 있다.
다양한 실시예에 따라, 상기 번들 이동 내역 정보는 상기 번들의 이동이 이루어진 날짜와 시간에 대한 정보 또는 상기 번들의 이동이 이루어진 횟수에 대한 정보 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따라, 상기 적어도 하나의 프로세서는: 상기 번들 이동 설정 정보를 업데이트할 수 있다.
본 발명의 일 면에 따른 제2 보안 매체의 방법은 제1 보안 매체로부터 번들의 전송을 위해 사용될 번들 이동 코드를 수신하는 단계; 상기 제1 보안 매체로 제2 보안 매체에 대한 정보를 전송하는 단계; 상기 제1 보안 매체로부터 상기 제1 보안 매체를 인증하기 위한 제1 인증 정보를 수신하는 단계; 상기 제1 인증 정보를 검증하는 단계; 상기 검증의 결과에 기초하여 상기 제1 보안 매체로 상기 제2 보안 매체를 인증하기 위한 제2 인증 정보 및 상기 번들 이동 코드를 전송하는 단계; 및 상기 제1 보안 매체로부터 상기 번들을 수신하는 단계를 포함할 수 있다.
다양한 실시예에 따라, 상기 번들을 수신하는 단계는: 상기 번들과 연관된 번들 이동 설정을 수신하는 단계를 더 포함할 수 있다.
본 발명의 다른 면에 따른 제2 보안 매체는 트랜시버; 및 상기 트랜시버에 연결된 적어도 하나의 프로세서를 포함하며, 상기 적어도 하나의 프로세서는: 제1 보안 매체로부터 번들의 전송을 위해 사용될 번들 이동 코드를 수신하고, 상기 제1 보안 매체로 제2 보안 매체에 대한 정보를 전송하고, 상기 제1 보안 매체로부터 상기 제1 보안 매체를 인증하기 위한 제1 인증 정보를 수신하고, 상기 제1 인증 정보를 검증하고, 상기 검증의 결과에 기초하여 상기 제1 보안 매체로 상기 제2 보안 매체를 인증하기 위한 제2 인증 정보 및 상기 번들 이동 코드를 전송하고, 상기 제1 보안 매체로부터 상기 번들을 수신할 수 있다.
다양한 실시예에 따라, 상기 번들을 수신하는 것은: 상기 번들과 연관된 번들 이동 설정을 수신하는 것을 더 포함할 수 있다.
본 개시의 일부 실시 예에 따르면, 번들을 전송하고자 하는 전자 장치는, 사용자 혹은 외부 입력에 의해 전송할 번들을 선택하는 단계, 선택된 번들이 전송 가능한지 여부를 '번들 이동 설정'을 통해 검사하는 단계, '번들 이동 설정'을 번들을 전송 받고자 하는 전자 장치로 전송하는 단계, 필요 시 '번들 이동 설정'을 업데이트하는 단계를 포함할 수 있다.
또한 본 개시의 일부 실시 예에 따르면, 번들을 전송 받고자 하는 전자 장치는, '번들 이동 설정'을 전송 받는 단계, 필요 시 '번들 이동 설정'을 업데이트하는 단계를 포함할 수 있다.
본 개시의 일부 실시 예에 따르면, 번들을 전송하고자 하는 전자 장치는, 사용자 혹은 외부 입력에 의해 전송할 번들을 선택하는 단계, '번들 이동 코드'를 마련해 전송할 번들과 바인딩을 시키는 단계, '번들 이동 코드'를 번들을 전송 받고자 하는 전자 장치로 전송하는 단계, 번들을 전송 받고자 하는 전자 장치로부터 번들 전송이 요청되었을 때 '번들 이동 코드'가 동봉되었다면 이 '번들 이동 코드'가 유효한지를 검사하거나 이 '번들 이동 코드'를 이용해 전송할 번들을 식별하는 단계를 포함할 수 있다.
또한 본 개시의 일부 실시 예에 따르면, 번들을 전송 받고자 하는 전자 장치는, '번들 이동 코드'를 전송 받는 단계, 번들을 전송하고자 하는 전자 장치에 번들을 요청 시 '번들 이동 코드'를 동봉하는 단계를 포함할 수 있다.
본 개시의 일부 실시 예에 따르면, 두 전자 장치는 서로를 인증할 수 있는 정보를 확인하기 위하여 추후에 기술될 인증서 협상 과정을 거칠 수 있고, 자신을 검증할 수 있는 인증 정보를 생성해 상대 전자 장치에 전송할 수 있으며, 수신 받은 인증 정보를 검증해 상대 전자 장치를 검증할 수 있다.
본 개시의 일부 실시 예에 따르면, 번들을 전송하고자 하는 전자 장치는 번들을 전송 받고자 하는 전자 장치에게 번들을 전송할 수 있고, 번들을 전송 받고자 하는 전자 장치는 전송 받은 번들을 설치할 수 있다.
본 개시의 다양한 실시 예에 따르면, 한 기기에 설치되었던 번들은 안전하고 효율적인 방법으로 다른 기기로 전송 및 설치될 수 있다.
도 1은 본 개시의 실시 예에 따른 SSP의 개념도를 나타낸다.
도 2는 본 개시의 실시 예에 따른 SSP의 내부 구조에 대한 개념도를 나타낸다.
도 3은 본 개시의 실시 예에 따른 단말이 SSP로 번들을 다운로드하고 설치하기 위해 사용되는 단말 내 구성 요소의 예를 도시하는 도면이다.
도 4는 본 개시의 실시 예에 따른 두 단말 사이에서 번들의 전송이 이루어지기 위해 두 단말이 상호 동작하는 방법의 예를 도시하는 도면이다.
도 5는 본 개시의 실시 예에 따른 하나의 단말에서 다른 단말로 번들이 전송되는 절차를 개념적으로 도시하는 도면이다.
도 6는 도 5에서 제시된 절차 중 번들 전송을 위해 준비하는 절차에 대한 세부 절차를 도시하는 도면이다.
도 7은 도 5에서 제시된 절차 중 번들의 전송이 이루어지는 절차에 대한 세부 절차를 도시하는 도면이다.
도 8은 도 5에서 제시된 절차 중 번들이 전송된 후 전송 과정이 마무리되는 절차에 대한 세부 절차를 도시하는 도면이다.
도 9는 본 개시의 일부 실시 예에 따른 단말의 구성을 도시하는 도면이다.
도 10은 본 개시의 실시 예에 따른 제1 보안 매체의 번들 전송 방법을 나타내는 순서도이다.
도 11은 본 개시의 실시 예에 따른 제2 보안 매체의 번들 수신 방법을 나타내는 순서도이다.
도 12는 본 개시의 실시 예에 따른 두 단말 사이에서 프로파일의 전송이 이루어지기 위해 두 단말이 상호 작용하는 방법의 예를 도시하는 도면이다.
도 13은 본 개시의 실시 예에 따른 하나의 단말에서 다른 단말로 프로파일이 전송되는 절차를 도시하는 도면이다.
도 14는 도 13에 제시된 절차를 수행하던 중 단말이 프로파일 전송을 위해 RSP 서버의 승인을 요청하는 절차를 도시하는 도면이다.
도 15는 본 개시의 실시 예에 따른 하나의 단말에서 다른 단말로 프로파일이 전송되는 절차를 개념적으로 도시하는 도면이다.
도 16은 도 15에서 제시된 절차 중 프로파일 전송을 위해 준비하는 절차에 대한 세부 절차를 도시하는 도면이다.
도 17은 도 15에서 제시된 절차 중 두 단말 간 상호 인증이 수행되는 세부 절차를 도시하는 도면이다.
도 18은 도 15에서 제시된 절차 중, 하나의 단말에서 다른 단말로 프로파일이 전송되고, 전송된 프로파일이 설치되는 세부 절차를 도시하는 도면이다.
이하에서는 본 개시의 실시 예를 첨부된 도면을 참조하여 상세하게 설명한다.
실시 예를 설명함에 있어서 본 개시가 속하는 기술 분야에 익히 알려져 있고 본 개시와 직접적으로 관련이 없는 기술 내용에 대해서는 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 개시의 요지를 흐리지 않고 더욱 명확히 전달하기 위함이다.
마찬가지 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 개략적으로 도시되었다. 또한, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. 각 도면에서 동일한 또는 대응하는 구성요소에는 동일한 참조 번호를 부여하였다.
본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 개시는 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 개시가 완전하도록 하고, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 개시의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시는 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
이 때, 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성한다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
이 때, 본 실시 예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.
한편, 보안 정보를 안전하게 저장하고, 저장된 보안 정보를 이용해 안전한 보안 서비스를 제공하기 위하여, 보안 매체의 중요성이 점차 강조되고 있다.
특히 Secure Element라 일컬어지는 보안 매체는 높은 보안 수준으로 인해 다양한 전자 장치(스마트폰, 태블릿, 웨어러블 장치, 자동차, IoT 장치 등)에 탑재되어, 이동통신 망 접속, 결제, 사용자 인증 등을 포함한 다양한 서비스에 활용되고 있다. Secure Element는 UICC(Universal Integrated Circuit Card), eSE(Embedded Secure Element), SD Card 등 다양한 폼 팩터(Form factor)를 가질 수 있다.
특히, UICC와 eSE가 통합된 형태인 SSP(Smart Secure Platform)는 구현 공간의 효율성, 연산 능력의 강화, 저장 공간의 확장 등의 많은 장점으로 인해 차세대 보안 매체로 각광을 받고 있다. 또한, SSP는 5G 단말 및 IoT 단말에서 요구되는 보안 기능을 구현하기에 적합한 보안 매체이기에, SSP의 중요성은 점차 강조되고 있는 추세이다.
다양한 어플리케이션은 번들이라는 형태로 SSP에 탑재되어 구동된다. 따라서, SSP에 번들을 안전하게 탑재하는 방법과 장치의 중요성이 강조되고 있다. SSP에 번들을 탑재하는 방법은 크게 외부 서버로부터 번들을 전송 받는 방법과 다른 전자 장치로부터 번들을 전송 받는 방법으로 나뉠 수 있다.
특히 다른 전자 장치로부터 번들을 전송 받는 방법, 즉 하나의 보안 매체로부터 또 하나의 보안 매체로 번들이 전송되는 방법은, 하나의 보안 매체에 저장되어 있는 혹은 설정되어 있는 사용자 정보를 새로운 보안 매체로 전송해 그대로 사용할 수 있다는 장점, 또한 번들을 전송하는 과정에서 외부 개체의 도움이 필요하지 않을 수도 있다는 장점으로 인해 차세대 번들 전송 기술로 주목 받고 있다.
따라서 하나의 보안 매체에서 또 다른 보안 매체로 안전하게 번들을 이동할 수 있는 방안이 요구되고 있으며, 이를 위한 방법과 장치를 개발할 필요가 부각되고 있다.
이하에서는 이를 위한, 다양한 실시예들을 각 도면을 참고하여 설명한다. 한편, 이하에서는, SSP를 보안 매체의 일 예로 들어 각 실시예들을 설명하지만, 본 발명의 권리범위가 SSP에 의한 것으로 제한되지는 않는다. 예를 들면, SSP와 실질적으로 동일 또는 유사한 기능을 수행하는 다른 보안 매체에도, 이하 설명할 다양한 실시예들이 실질적으로 동일 또는 유사하게 적용될 수 있음은 해당 기술분야의 통상의 기술자들에게 자명하다.
이하의 설명에서 사용되는 특정 용어들은 본 개시의 이해를 돕기 위해서 제공된 것이며, 이러한 특정 용어의 사용은 본 개시의 기술적 사상을 벗어나지 않는 범위에서 다른 형태로 변경될 수 있다.
"SE(Secure Element)"는 보안 정보(예: 이동통신망 접속 키, 신분증/여권 등의 사용자 신원확인 정보, 신용카드 정보, 암호화 키 등)를 저장하고, 저장된 보안 정보를 이용하는 제어 모듈(예: USIM 등의 망 접속 제어 모듈, 암호화 모듈, 키 생성 모듈 등)을 탑재하고 운영할 수 있는 단일 칩으로 구성된 보안 모듈을 의미한다. SE는 다양한 전자 장치(예: 스마트폰, 태블릿, 웨어러블 장치, 자동차, IoT 장치 등)에 사용될 수 있으며, 보안 정보와 제어 모듈을 통해 보안 서비스(예: 이통통신 망 접속, 결제, 사용자 인증 등)를 제공할 수 있다.
SE는 UICC(Universal Integrated Circuit Card), eSE (Embedded Secure Element), UICC와 eSE가 통합된 형태인 SSP(Smart Secure Platform)등으로 나뉠 수 있으며, 전자 장치에 연결 또는 설치되는 형태에 따라 탈착식(Removable), 고정식(Embedded), 그리고 특정 소자 또는 SoC(system on chip)에 통합되는 통합식(Integrated)으로 세분화 될 수 있다.
"UICC(Universal Integrated Circuit Card)"는 이동 통신 단말기 등에 삽입하여 사용하는 스마트카드(smart card)이고 UICC 카드라고도 부른다. UICC에는 이동통신사업자의 망에 접속하기 위한 접속 제어 모듈이 포함될 수 있다. 접속 제어 모듈의 예로는 USIM(Universal Subscriber Identity Module), SIM(Subscriber Identity Module), ISIM(IP Multimedia Service Identity Module) 등이 있다. USIM이 포함된 UICC를 통상 USIM 카드라고 부르기도 한다. 마찬가지로 SIM 모듈이 포함된 UICC를 통상적으로 SIM카드라고 부르기도 한다. 한편, SIM 모듈은 UICC 제조시 탑재되거나 사용자가 원하는 시점에 사용하고자 하는 이동통신 서비스의 SIM 모듈을 UICC 카드에 다운로드 받을 수 있다. UICC 카드는 또한 복수개의 SIM 모듈을 다운로드 받아서 설치하고 그 중의 적어도 한 개의 SIM 모듈을 선택하여 사용할 수 있다. 이러한 UICC 카드는 단말에 고정하거나 고정하지 않을 수 있다. 단말에 고정하여 사용하는 UICC를 eUICC(embedded UICC)라고 하며, 특히 단말의 통신 프로세서(Communication Processor), 어플리케이션 프로세서(Application Processor) 또는 이 두 프로세서가 통합된 단일 프로세서 구조를 포함하는 System-On-Chip(SoC)에 내장된 UICC를 iUICC(Integrated UICC)라고 칭하기도 한다. 통상적으로 eUICC와 iUICC는 단말에 고정하여 사용하고, 원격으로 SIM 모듈을 다운로드 받아서 선택할 수 있는 UICC 카드를 의미할 수 있다. 본 개시에서는 원격으로 SIM 모듈을 다운로드 받아 선택할 수 있는 UICC 카드를 eUICC 또는 iUICC로 통칭한다. 즉 원격으로 SIM 모듈을 다운로드 받아 선택할 수 있는 UICC 카드 중 단말에 고정하거나 고정하지 않는 UICC 카드를 통칭하여 eUICC 또는 iUICC로 사용한다.
본 개시에서 용어 UICC는 SIM과 혼용될 수 있고, 용어 eUICC는 eSIM과 혼용될 수 있다.
"eUICC 식별자(eUICC ID)"는, 단말에 내장된 eUICC의 고유 식별자일 수 있고, EID로 지칭될 수 있다. 또한 eUICC에 프로비저닝 프로파일 (Provisioning Profile)이 미리 탑재되어 있는 경우, eUICC 식별자(eUICC ID)는 해당 프로비저닝 프로파일의 식별자 (Provisioning Profile의 Profile ID)일 수 있다. 또한 본 개시의 일 실시예에서, 단말과 eUICC 칩이 분리되지 않을 경우, eUICC 식별자(eUICC ID)는 단말 ID일 수 있다. 또한, eUICC 식별자(eUICC ID)는 eUICC칩의 특정 보안 도메인 (Secure Domain)을 지칭할 수도 있다.
"eSE(Embedded Secure Element)"는 전자 장치에 고정하여 사용하는 고정식 SE를 의미한다. eSE는 통상적으로 단말 제조사의 요청에 의해 제조사 전용으로 제조되며, 운영체제와 프레임워크를 포함하여 제조 될 수 있다. eSE는 원격으로 애플릿 형태의 서비스 제어 모듈을 다운받아 설치하고 전자지갑, 티켓팅, 전자여권, 디지털키 등과 같은 다양한 보안 서비스 용도로 사용될 수 있다. 본 개시에서는 원격으로 서비스 제어 모듈을 다운로드 받아 설치할 수 있는 전자 장치에 부착된 단일 칩 형태의 SE를 eSE로 통칭한다.
"SSP(Smart Secure Platform)"은 UICC와 eSE의 기능을 단일 칩에서 통합 지원이 가능한 것으로, 탈착식(rSSP, Removable SSP), 고정식(eSSP, Embedded SSP) 그리고 SoC에 내장된 통합식(iSSP, Integrated SSP)로 구분 될 수 있다. SSP는 하나의 프라이머리 플랫폼(PP, Primary Platform)과 PP상에서 동작하는 적어도 하나의 세컨더리 플랫폼 번들(SPB, Secondary Platform Bundle)을 포함할 수 있으며, 프라이머리 플랫폼은 하드웨어 플랫폼과 low level Operating System(LLOS)을 중 적어도 하나를 포함할 수 있고, 세컨더리 플랫폼 번들은 High-level Operating System(HLOS) 및 HLOS 위에서 구동되는 애플리케이션 중 적어도 하나를 포함할 수 있다. 세컨더리 플랫폼 번들은 SPB 또는 번들이라고 불리기도 한다. 번들은 PP가 제공하는 Primary Platform Interface (PPI)를 통해 PP의 중앙처리장치, 메모리 등의 자원에 접근하고 이를 통해 PP상에서 구동될 수 있다. 번들에는 SIM(Subscriber Identification Module), USIM(Universal SIM), ISIM(IP Multimedia SIM)등의 통신 어플리케이션이 탑재될 수 있으며, 또한 전자지갑, 티켓팅, 전자여권, 디지털 키 등과 같은 다양한 응용 어플리케이션이 탑재될 수 있다. 본 개시에서 SSP는 스마트 보안 매체로 명명될 수도 있다.
SSP는 다운로드 되고 설치되는 번들에 따라서 상기 기술된 UICC 또는 eSE 용도로 사용될 수 있으며, 복수개의 번들을 단일 SSP에 설치하고 동시에 운영하여 UICC와 eSE의 용도를 혼용할 수 있다. 즉, 프로파일을 포함하는 번들이 동작하는 경우 SSP는 이동통신사업자의 망에 접속하기 위한 UICC 용도로 사용 될 수 있다. 해당 UICC 번들은 상기 eUICC 또는 iUICC와 같이 적어도 하나 이상의 프로파일을 원격에서 번들 내로 다운로드 받아 선택하여 동작할 수 있다. 또한, SSP상에서 전자지갑, 티켓팅, 전자여권 또는 디지털키 등의 서비스를 제공할 수 있는 응용 어플리케이션을 탑재한 서비스 제어 모듈을 포함하는 번들이 동작하는 경우 SSP는 상기 eSE의 용도로 사용될 수 있다. 다수의 서비스 제어 모듈은 하나의 번들에 통합되어 설치되고 동작하거나, 각기 독립적인 번들로 설치되고 동작할 수 있다.
SSP는 OTA(Over The Air)기술을 이용하여 외부의 번들 관리 서버(Secondary Platform Bundle Manager, SPB Manager)로부터 번들을 다운 받아 설치할 수 있고, 또 다른 단말로부터 번들을 전송 받아 설치할 수도 있다. 본 개시에서 다운 혹은 전송 받은 번들을 설치하는 방법은 단말에 삽입 및 탈거가 가능한 착탈식 SSP(rSSP), 단말에 설치되는 고정식 SSP(eSSP), 단말에 설치되는 SoC내부에 포함되는 통합식 SSP(iSSP)에 동일하게 적용될 수 있다.
"SSP 식별자(SSP ID)"는, 단말에 내장된 SSP의 고유 식별자일 수 있고, sspID로 지칭될 수 있다. 또한 본 개시의 실시 예에서와 같이 단말과 SSP 칩이 분리되지 않을 경우에는 단말 ID일 수 있다. 또한, SSP 내의 특정한 번들 식별자(SPB ID)를 지칭할 수도 있다. 좀더 자세히는 SSP에서 다른 번들을 설치하고 활성화, 비활성화, 삭제를 관리하는 관리 번들 또는 로더(SPBL, Secondary Platform Bundle Loader)의 번들 식별자를 지칭 할 수도 있다. SSP는 복수개의 SSP 식별자를 가질 수 도 있으며, 복수개의 SSP 식별자는 고유한 단일의 SSP 식별자로부터 유도된 값일 수 있다.
"SPB(Secondary Platform Bundle)"은 SSP의 프라이머리 플랫폼(PP, Primary Plaform) 상에서 PP의 리소스를 사용하여 구동되는 것으로 예를 들면 UICC 번들은 기존 UICC 내에 저장되는 어플리케이션, 파일시스템, 인증키 값 등과 이들이 동작하는 운영체체(HLOS)를 소프트웨어 형태로 패키징 한 것을 의미할 수 있다. 본 개시에서, SPB는 번들로 지칭될 수 있다.
본 개시에서 번들의 "상태"는 다음과 같을 수 있다.
[활성화(enable)]
본 개시에서 단말 또는 외부 서버가 번들을 활성화(enable)하는 동작은, 해당 SPB의 상태를 활성화 상태(enabled)로 변경하여 단말이 해당 번들이 제공하는 서비스(예: 통신사업자를 통해 통신서비스, 신용카드 결제 서비스, 사용자 인증 서비스 등)를 받을 수 있도록 설정하는 동작을 의미할 수 있다. 활성화 상태의 번들은 "활성화된 번들 (enabled Bundle)"로 표현될 수 있다. 활성화 상태의 번들은 SSP 내부 또는 외부의 저장공간에 암호화된 상태로 저장되어 있을 수 있다.
[구동 상태(Active)]
본 개시에서 활성화된 번들은 번들 외부 입력(예: 사용자 입력, 푸쉬, 단말 내 어플리케이션의 요청, 통신 사업자의 인증 요청, PP 관리 메시지 등) 또는 번들 내부의 동작(예: 타이머, Polling)에 따라 구동 상태(Active)로 변경될 수 있다. 구동 상태의 번들은 SSP 내부 또는 외부의 저장공간에서 SSP 내부의 구동 메모리에 로딩되고 SSP 내부의 보안 제어 장치 (Secure CPU)를 이용하여 보안 정보를 처리하고 단말에 보안 서비스를 제공하는 것을 의미할 수 있다.
[비활성화(Disabled)]
본 개시에서 단말 또는 외부 서버가 번들을 비활성화(disable)하는 동작은, 해당 번들의 상태를 비활성화 상태(disabled)로 변경하여 단말이 해당 번들이 제공하는 서비스를 받을 수 없도록 설정하는 동작을 의미할 수 있다. 비활성화 상태의 SPB는 "비활성화된 번들(disabled Bundle)"로 표현될 수 있다. 비활성화 상태의 번들은 SSP 내부 또는 외부의 저장공간에 암호화된 상태로 저장되어 있을 수 있다.
[삭제(Deleted)]
본 개시에서 단말 또는 외부 서버가 번들을 삭제(delete)하는 동작은, 해당 번들의 상태를 삭제 상태(deleted)로 변경하거나 해당 번들을 포함한 해당 번들의 관련 데이터를 삭제하여 단말 또는 외부 서버가 더 이상 해당 번들을 구동, 활성화 또는 비활성화할 수 없도록 설정하는 동작을 의미할 수 있다. 삭제 상태의 번들은 "삭제된 번들(deleted Bundle)"로 표현될 수 있다.
"번들 이미지(Bundle Image, 또는 Image)"는 번들과 혼용되거나 특정 번들의 데이터 객체(data object)를 나타내는 용어로 사용될 수 있으며, 번들 TLV (Tag, Length, Value) 또는 번들 이미지 TLV(Bundle Image TLV)로 명명될 수 있다. 번들 이미지가 암호화 파라미터를 이용해 암호화된 경우 보호된 번들 이미지 (Protected Bundle Image(PBI)) 또는 보호된 번들 이미지 TLV (PBI TLV)로 명명될 수 있다. 번들 이미지가 특정 SSP에 의해서만 복호화 가능한 암호화 파라미터를 이용해 암호화된 경우 묶인 번들 이미지(Bound Bundle Image(BBI)) 또는 묶인 번들 이미지 TLV(BBI TLV)로 명명될 수 있다. 번들 이미지 TLV는 TLV(Tag, Length, Value) 형식으로 번들을 구성하는 정보를 표현하는 데이터 세트(set) 일 수 있다.
"번들 구분자"는 번들 식별자(SPB ID), 번들 패밀리 식별자(SPB Family ID), 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID), 번들 Matching ID, 이벤트 식별자(Event ID)와 매칭되는 인자로 지칭될 수 있다. 번들 식별자(SPB ID)는 각 번들의 고유 식별자를 나타낼 수 있다. 번들 패밀리 식별자는 번들 (예를 들어, 이동통신사 망 접속을 위한 텔레콤 번들)의 종류를 구분하는 식별자를 나타낼 수 있다. 본 개시에서 번들 패밀리 식별자는 spbFamilyId로 지칭될 수 있다. 번들 패밀리 관리자 식별자는 번들 패밀리 식별자를 관리하는 주체 (예를 들어, 통신사업자, 단말제조사, 특정 단체 등)를 구분하는 식별자를 나타낼 수 있다. 본 개시에서 번들 패밀리 관리자 식별자는 Oid로 지칭될 수 있다. 번들 구분자는 번들 관리 서버 혹은 단말에서 번들을 색인할 수 있는 값으로 사용될 수 있다.
"번들 메타데이터"는 번들을 지칭 혹은 기술할 수 있는 정보의 집합을 나타내는 용어이다. 번들 메타데이터는 상기에 기술한 번들 구분자를 포함할 수 있다. 또한 번들 메타데이터는 번들의 속성이나 특성, 혹은 설정에 대한 정보를 더 포함할 수 있다. 번들 메타데이터는 "메타데이터"라 표현될 수 있다.
"프로파일(Profile)"은 UICC내에 저장되는 어플리케이션, 파일시스템, 인증키 값 등의 데이터 객체(data object)를 의미할 수 있다.
본 개시에서 "프로파일 패키지"란 "프로파일"의 내용이 UICC 내에 설치될 수 있는 소프트웨어 형태로 패키징된 것을 의미할 수 있다. “프로파일 패키지”는 프로파일 패키지 TLV (Profile Package TLV)로 명명될 수 있다. 프로파일 패키지가 암호화 파라미터를 이용해 암호화된 경우 보호된 프로파일 패키지(Protected Profile Package (PPP)) 또는 보호된 프로파일 패키지 TLV (PPP TLV)로 명명될 수 있다. 프로파일 패키지가 특정 eUICC에 의해서만 복호화 가능한 암호화 파라미터를 이용해 암호화된 경우 묶인 프로파일 패키지(Bound Profile Package (BPP)) 또는 묶인 프로파일 패키지 TLV (BPP TLV)로 명명될 수 있다. 프로파일 패키지 TLV는 TLV (Tag, Length, Value) 형식으로 프로파일을 구성하는 정보를 표현하는 데이터 세트 (set) 일 수 있다.본 개시에서 '프로파일 이미지'란 프로파일 패키지가 UICC 내에 설치되어 있는 바이너리(Binary) 데이터를 의미할 수 있다. '프로파일 이미지'는 Profile TLV 또는 프로파일 이미지 TLV로 명명될 수 있다. 프로파일 이미지가 암호화 파라미터를 이용해 암호화된 경우 보호된 프로파일 이미지(Protected Profile Image, PPI) 또는 보호된 프로파일 이미지 TLV (PPI TLV)로 명명될 수 있다. 프로파일 이미지가 특정 eUICC에 의해서만 복호화 가능한 암호화 파라미터를 이용해 암호화된 경우 묶인 프로파일 이미지(Bound Profile Image , BPI) 또는 묶인 프로파일 이미지 TLV (BPI TLV)로 명명될 수 있다. 프로파일 이미지 TLV는 TLV (Tag, Length, Value) 형식으로 프로파일을 구성하는 정보를 표현하는 데이터 세트 (set) 일 수 있다.본 개시에서 프로파일의 "상태"는 다음과 같을 수 있다.
[활성화(enable)]
본 개시에서 단말이 프로파일을 활성화(enable)하는 동작은, 해당 프로파일의 상태를 활성화 상태(enabled)로 변경하여 단말이 해당 프로파일을 제공한 통신사업자를 통해 통신서비스를 받을 수 있도록 설정하는 동작을 의미할 수 있다. 활성화 상태의 프로파일은 "활성화된 프로파일(enabled Profile)"로 표현될 수 있다.
[비활성화(disable)]
본 개시에서 단말이 프로파일을 비활성화(disable)하는 동작은, 해당 프로파일의 상태를 비활성화 상태(disabled)로 변경하여 단말이 해당 프로파일을 제공한 통신사업자를 통해 통신서비스를 받을 수 없도록 설정하는 동작을 의미할 수 있다. 비활성화 상태의 프로파일은 "비활성화된 프로파일(disabled Profile)"로 표현될 수 있다.
[삭제(delete)]
본 개시에서 단말이 프로파일을 삭제(delete)하는 동작은, 해당 프로파일의 상태를 삭제 상태(deleted)로 변경하여 단말이 더 이상 해당 프로파일을 활성화 또는 비활성화할 수 없도록 설정하는 동작을 의미할 수 있다. 삭제 상태의 프로파일은 "삭제된 프로파일(deleted Profile)"로 표현될 수 있다.
본 개시에서 단말이 프로파일을 활성화(enable), 비활성화(disable), 또는 삭제(delete)하는 동작은, 각 프로파일의 상태를 활성화 상태(enabled), 비활성화 상태(disabled), 또는 삭제 상태(deleted)로 즉시 변경하지 않고, 각 프로파일을 활성화 예정 상태(to be enabled), 비활성화 예정 상태(to be disabled), 또는 삭제 예정 상태(to be deleted)로 우선 표시(marking)만 하고, 단말 내지 단말의 UICC가 특정 동작(예를 들면, 새로 고침(REFRESH) 또는 초기화(RESET) 명령의 수행)을 수행한 이후에 각 프로파일을 활성화 상태(enabled), 비활성화 상태(disabled), 또는 삭제 상태(deleted)로 변경하는 동작을 의미할 수도 있다. 특정 프로파일을 예정 상태(즉 활성화 예정 상태(to be enabled), 비활성화 예정 상태(to be disabled), 또는 삭제 예정 상태(to be deleted))로 표시(marking)하는 동작은 반드시 하나의 프로파일에 대해서 하나의 예정 상태를 표시하는 것으로 제한되지 않으며, 하나 이상의 프로파일을 각각 서로 같거나 다른 예정 상태로 표시하거나, 하나의 프로파일을 하나 이상의 예정 상태로 표시하거나, 하나 이상의 프로파일을 각각 서로 같거나 다른 하나 이상의 예정 상태로 표시하는 것도 가능하다.
또한 단말이 임의의 프로파일에 대해 하나 이상의 예정 상태를 표시하는 경우, 두 개의 예정 상태 표시는 하나로 통합될 수도 있다. 예를 들어 임의의 프로파일이 비활성화 예정 상태(to be disabled) 및 삭제 예정 상태(to be deleted)로 표시된 경우, 해당 프로파일은 비활성화 및 삭제 예정 상태(to be disabled and deleted)로 통합 표시될 수도 있다.
또한, 단말이 하나 이상의 프로파일에 대해 예정 상태를 표시하는 동작은 순차적으로 혹은 동시에 수행될 수도 있다. 또한 단말이 하나 이상의 프로파일에 대해 예정 상태를 표시하고 이후 실제 프로파일의 상태를 변경하는 동작은 순차적으로 혹은 동시에 수행될 수도 있다.
"프로파일 구분자"는 프로파일 식별자 (Profile ID), ICCID (Integrated Circuit Card ID), Matching ID, 이벤트 식별자 (Event ID), 활성화 코드(Activation Code), 활성화 코드 토큰(Activation Code Token), 명령 코드(Command Code), 명령 코드 토큰(Command Code Token), 서명된 명령 코드(Signed Command Code), 서명되지 않은 명령 코드(Unsigned Command Code), ISD-P 또는 프로파일 도메인(Profile Domain, PD)과 매칭되는 인자로 지칭될 수 있다. 프로파일 식별자(Profile ID)는 각 프로파일의 고유 식별자를 나타낼 수 있다. 프로파일 구분자는 프로파일을 색인할 수 있는 프로파일 제공서버(SM-DP+)의 주소를 더 포함할 수 있다. 또한 프로파일 구분자는 프로파일 제공서버(SM-DP+)의 서명을 더 포함할 수 있다.
"번들 관리서버"는 서비스 제공자(Service Provider) 또는 다른 번들 관리서버의 요청에 의해 번들을 생성하거나, 생성된 번들을 암호화 하거나, 번들 원격관리 명령어를 생성하거나, 생성된 번들 원격관리 명령어를 암호화하는 기능을 포함할 수 있다. 상기 기능을 제공하는 번들 관리서버는 SPBM (Secondary Platform Bundle Manager), RBM(Remote Bundle Manager), IDS(Image Delivery Server), SM-DP(Subscription Manager Data Preparation), SM-DP+(Subscription Manager Data Preparation plus), 관리자 번들 서버, Managing SM-DP+(Managing Subscription Manager Data Preparation plus), 번들 암호화 서버, 번들 생성서버, 번들 제공자(Bundle Provisioner, BP), 번들 공급자(Bundle Provider), BPC holder(Bundle Provisioning Credentials holder) 중 적어도 하나로 표현될 수 있다.
본 개시에서 번들 관리서버는 SSP에서 번들을 다운로드, 설치 또는 업데이트하고 번들의 상태를 원격 관리하기 위한 키 및 인증서를 설정을 관리하는 역할을 수행할 수 있다. 상기 기능을 제공하는 번들 관리 서버는 SPBM(Secondary Platform Bundle Manager), RBM(Remote Bundle Manager), IDS(Image Delivery Server), SM-SR(Subscription Manager Secure Routing), SM-SR+(Subscription Manager Secure Routing Plus), off-card entity of eUICC Profile Manager 또는 PMC holder(Profile Management Credentials holder), EM(eUICC Manager) 중 적어도 하나로 표현될 수 있다.
본 개시에서 개통중개서버는 하나 이상의 번들 관리서버 내지 개통중개서버로부터 이벤트 등록 요청(Register Event Request, Event Register Request)을 수신할 수 있다. 또한 하나 이상의 개통중개서버가 복합적으로 사용될 수 있으며, 이 경우 제1 개통중개서버는 번들 관리서버뿐만 아니라 제2 개통중개서버로부터 이벤트 등록 요청을 수신할 수도 있다. 본 개시에서 개통중개서버의 기능은 번들 관리서버에 통합될 수 있다. 상기 기능을 제공하는 개통중개서버는 SPBM(Secondary Platform Bundle Manager), RBM(Remote Bundle Manager), SPBDS(Secondary Platform Bundle Discovery Sever), BDS(Bundle Discovery Sever), SM-DS(Subscription Manager Discovery Service), DS(Discovery Service), 근원개통중개서버(Root SM-DS), 대체개통중개서버(Alternative SM-DS) 중 적어도 하나로 표현될 수 있다.
본 개시에서 번들 관리서버는 번들 또는 번들 원격 관리 명령어를 생성하고 암호화 하여 전달하는 기능과 SSP의 설정 및 설치된 번들을 관리하는 기능을 합친 것을 통칭하는 것일 수도 있다. 또한 개통중개서버 기능을 합친 것을 통칭하는 것 일 수도 있다. 따라서 이하 본 개시의 다양한 실시 예에서 번들 관리서버 및 개통 중개서버의 동작은 하나의 번들 관리서버에서 이루어질 수도 있다. 또한 각 기능은 서로 분리된 다수의 번들 관리 서버에서 나누어 수행될 수도 있다. 또한, 본 개시의 명세서에서 번들 관리서버 또는 개통중개서버는 번들 서버로 표현될 수 있다. 번들 서버는 번들 관리서버, 개통중개서버 중 하나 일 수 있고 번들 관리서버와 개통중개서버 모두 포함하는 장치일 수도 있다.
“RSP 서버(Remote SIM Provisioning Server)”는 후술될 프로파일 제공서버 및/또는 프로파일 관리 서버 및/또는 개통중개서버를 지칭하는 명칭으로 사용될 수 있다. RSP 서버는 SM-XX (Subscription Manager XX)로 표현될 수 있다.
본 개시에서 "프로파일 제공서버"는 프로파일을 생성하거나, 생성된 프로파일을 암호화 하거나, 프로파일 원격관리 명령어를 생성하거나, 생성된 프로파일 원격관리 명령어를 암호화하는 기능을 포함할 수 있다. 프로파일 제공서버는, SM-DP (Subscription Manager Data Preparation), SM-DP+ (Subscription Manager Data Preparation plus), off-card entity of Profile Domain, 프로파일 암호화 서버, 프로파일 생성서버, 프로파일 제공자 (Profile Provisioner, PP), 프로파일 공급자 (Profile Provider), PPC holder (Profile Provisioning Credentials holder) 로 표현될 수 있다.
본 개시에서 “프로파일 관리서버"는 프로파일을 관리하는 기능을 포함할 수 있다. 프로파일 관리 서버는 SM-SR (Subscription Manager Secure Routing), SM-SR+ (Subscription Manager Secure Routing Plus), off-card entity of eUICC Profile Manager 또는 PMC holder (Profile Management Credentials holder), EM (eUICC Manager), PP (Profile Manager) 등으로 표현될 수 있다.
본 개시에서 프로파일 제공서버는 프로파일 관리서버의 기능을 합친 것을 의미할 수도 있다. 따라서, 본 개시의 다양한 일 실시예에서, 프로파일 제공서버의 동작은 프로파일 관리서버에서 수행될 수도 있다. 마찬가지로, 프로파일 관리서버 또는 SM-SR의 동작은 프로파일 제공서버에서 수행될 수도 있다.
본 개시에서 "개통중개서버"는 SM-DS (Subscription Manager Discovery Service), DS (Discovery Service), 근원개통중개서버(Root SM-DS), 대체개통중개서버(Alternative SM-DS)로 표현될 수 있다. 개통중개서버는 하나 이상의 프로파일 제공서버 내지 개통중개서버로부터 이벤트 등록 요청(Register Event Request, Event Register Request)을 수신할 수 있다. 또한, 하나 이상의 개통중개서버가 복합적으로 사용될 수 있으며, 이 경우, 제1 개통중개서버는 프로파일 제공서버뿐만 아니라 제2 개통중개서버로부터 이벤트 등록 요청을 수신할 수도 있다.
"서비스 제공자(Service Provider)"는 번들 관리서버에 요구사항을 발행하여 번들 생성을 요청하고, 해당 번들을 통해 단말에 서비스를 제공하는 사업체를 나타낼 수 있다. 예를 들면, 통신 어플리케이션이 탑재된 번들을 통해 통신망 접속 서비스를 제공하는 통신사업자(Mobile Operator)를 나타낼 수 있으며, 통신사업자의 사업지원시스템(Business Supporting System, BSS), 운영지원시스템(Operational Supporting System, OSS), POS 단말(Point of Sale Terminal), 그리고 기타 IT 시스템을 모두 통칭할 수 있다. 또한 본 개시에서 서비스 제공자는 특정 사업체를 하나만 표현하는데 한정되지 않고, 하나 이상의 사업체의 그룹 또는 연합체(association 또는 consortium) 내지 해당 그룹 또는 연합체를 대표하는 대행사(representative)를 지칭하는 용어로 사용될 수도 있다. 또한 본 개시에서 서비스 제공자는 사업자(Operator 또는 OP 또는 Op.), 번들 소유자(Bundle Owner, BO), 이미지 소유자(Image Owner, IO) 등으로 명명될 수 있으며, 각 서비스 제공자는 이름 그리고/또는 고유 식별자(Object Identifier, OID)를 적어도 하나 이상 설정하거나 할당 받을 수 있다. 만일 서비스 제공자가 하나 이상의 사업체의 그룹 또는 연합체 또는 대행사를 지칭하는 경우, 임의의 그룹 또는 연합체 또는 대행사의 이름 또는 고유 식별자는 해당 그룹 또는 연합체에 소속한 모든 사업체 내지 해당 대행사와 협력하는 모든 사업체가 공유하는 이름 또는 고유 식별자일 수 있다.
"통신사업자 (mobile operator)"는 단말에 통신서비스를 제공하는 사업체를 나타낼 수 있으며, 통신사업자의 사업지원시스템 (business supporting system: BSS), 운영지원시스템 (operational supporting system: OSS), POS 단말 (point of sale terminal), 그리고 기타 IT 시스템을 모두 통칭할 수 있다. 또한 본 개시에서 통신사업자는 통신서비스를 제공하는 특정 사업체를 하나만 표현하는데 한정되지 않고, 하나 이상의 사업체의 그룹 또는 연합체 (association 또는 consortium) 내지 해당 그룹 또는 연합체를 대표하는 대행사 (representative)를 지칭하는 용어로 사용될 수도 있다. 또한 본 개시에서 통신사업자는 사업자 (operator 또는 OP 또는 Op.), 모바일 네트워크 운영자 (mobile network operator: MNO), 모바일 가상 네트워크 운영자 (mobile virtual network operator: MVNO), 서비스 제공자 (service provider 또는 SP), 프로파일 소유자 (profile owner: PO) 등으로 명명될 수 있으며, 각 통신사업자는 통신사업자의 이름 그리고/또는 고유 식별자 (object identifier: OID)를 적어도 하나 이상 설정하거나 할당 받을 수 있다. 만일 통신사업자가 하나 이상의 사업체의 그룹 또는 연합체 또는 대행사를 지칭하는 경우, 임의의 그룹 또는 연합체 또는 대행사의 이름 또는 고유 식별자는 해당 그룹 또는 연합체에 소속한 모든 사업체 내지 해당 대행사와 협력하는 모든 사업체가 공유하는 이름 또는 고유 식별자일 수 있다.
"가입자(Subscriber)"는 단말에 대한 소유권을 지닌 서비스 공급자(Service Provider)를 지칭하거나, 단말에 대한 소유권을 가지고 있는 사용자(End User)를 지칭하는 용어로 사용될 수 있다. 일반적으로 전자는 M2M 단말(M2M Device)로, 후자는 사용자 단말(Consumer Device)로 명명될 수 있다. M2M 단말의 경우 단말에 대한 소유권을 지니지는 않았으나 서비스 공급자(Service Provider)로 부터 단말을 양도 또는 임대 받아 사용하는 사용자(End User)가 존재할 수 있고, 이 경우 사용자는 서비스 공급자와 다르거나 같을 수도 있다.
"가입자 의도(Subscriber intent)"는 가입자가 번들을 로컬관리 또는 원격관리하고자 하는 의도를 통칭하는 용어로 사용될 수 있다. 또한 로컬관리의 경우 가입자 의도는 사용자 의도(End User intent)를 지칭하고, 원격관리의 경우 가입자 의도는 서비스 공급자 의도(Service Provider intent)를 지칭하는 용어로 사용될 수도 있다.
"사용자 동의(End User consent)"는 사용자가 로컬관리 내지 원격관리의 수행에 동의하는지를 지칭하는 용어로 사용될 수 있다.
'단말'은 이동국(MS), 사용자 장비(UE; User 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) 단말/디바이스를 포함할 수 있으나, 이에 한정되는 것은 아니다. 본 개시에서 단말은 전자장치라 지칭할 수도 있다.
본 개시에서 전자장치에는 번들을 다운로드 하여 설치 가능한 SSP가 내장될 수 있다. SSP가 전자장치에 내장되지 않은 경우, 물리적으로 전자장치와 분리된 SSP는 전자장치에 삽입되어 전자장치와 연결될 수 있다. 예를 들어, SSP는 카드 형태로 전자장치에 삽입될 수 있다. 전자 장치는 단말을 포함할 수 있고, 이때, 단말은 번들을 다운로드하여 설치 가능한 SSP를 포함하는 단말일 수 있다. 단말에 SSP는 내장될 수 있을 뿐만 아니라, 단말과 SSP가 분리된 경우 SSP는 단말에 삽입될 수 있고, 단말에 삽입되어 단말과 연결될 수 있다.
본 개시에서 전자장치에는 프로파일을 다운로드 하여 설치 가능한 UICC가 내장될 수 있다. UICC가 전자장치에 내장되지 않은 경우, 물리적으로 전자장치와 분리된 UICC는 전자장치에 삽입되어 전자장치와 연결될 수 있다. 예를 들어, 카드 형태로 UICC는 전자장치에 삽입될 수 있다. 전자 장치는 단말을 포함할 수 있고, 이때, 단말은 프로파일을 다운로드하여 설치 가능한 UICC를 포함하는 단말일 수 있다. 단말에 UICC는 내장될 수 있을 뿐만 아니라, 단말과 UICC가 분리된 경우 UICC는 단말에 삽입될 수 있고, 단말에 삽입되어 단말과 연결될 수 있다. 프로파일을 다운로드하여 설치 가능한 UICC는 예를 들어 eUICC라 지칭할 수 있다.
"LBA(Local Bundle Assistant)"는 SSP를 제어하도록 단말 또는 전자장치 내에 설치된 소프트웨어 또는 애플리케이션을 지칭할 수 있다. 이 소프트웨어 또는 애플리케이션은 Local Bundle Manager(LBM)라 지칭할 수 있다.
"로더(SPBL, Secondary Platform Bundle Loader)"는 SSP에서 다른 번들을 설치하고 활성화, 비활성화, 삭제를 관리하는 관리 번들을 지칭할 수 있다. 단말의 LBA 또는 원격의 서버는 로더를 통해 특정 번들을 설치, 활성화, 비활성화, 삭제할 수 있다. 본 개시에서 로더의 동작은 로더를 포함하는 SSP의 동작으로도 기술될 수 있다.
“LPA(Local Profile Assistant)”는 단말 또는 전자장치에서 UICC 또는 eUICC를 제어하도록 단말 또는 전자장치 내에 설치된 소프트웨어 또는 애플리케이션을 지칭할 수 있다.
"이벤트(Event)"는 본 개시에서 다음과 같은 용도로 사용될 수 있다.
[번들과 관련되어 사용될 경우]
"이벤트(Event)"는 번들 다운로드(Bundle Download), 또는 원격 번들 관리(Remote Bundle Management), 또는 기타 번들이나 SSP의 관리/처리 명령어를 통칭하는 용어일 수 있다. 이벤트(Event)는 원격 Bundle 제공 동작(Remote Bundle Provisioning Operation, 또는 RBP 동작, 또는 RBP Operation) 또는 이벤트 기록(Event Record)으로 명명될 수 있으며, 각 이벤트(Event)는 그에 대응하는 이벤트 식별자(Event Identifier, Event ID, EventID) 또는 매칭 식별자(Matching Identifier, Matching ID, MatchingID)와, 해당 이벤트가 저장된 번들 관리서버 또는 개통중개서버의 주소(FQDN, IP Address, 또는 URL) 또는 각 서버 식별자를 적어도 하나 이상 포함하는 데이터로 지칭될 수 있다. 번들 다운로드(Bundle Download)는 번들 설치(Bundle Installation)와 혼용될 수 있다. 또한 이벤트 종류(Event Type)는 특정 이벤트가 번들 다운로드인지 원격 번들 관리(예를 들어, 삭제, 활성화, 비활성화, 교체, 업데이트 등)인지 또는 기타 번들이나 SSP 관리/처리 명령인지를 나타내는 용어로 사용될 수 있으며, 동작 종류(Operation Type 또는 OperationType), 동작 분류(Operation Class 또는 OperationClass), 이벤트 요청 종류(Event Request Type), 이벤트 분류(Event Class), 이벤트 요청 분류(Event Request Class) 등으로 명명될 수 있다.
"로컬 번들 관리(Local Bundle Management, LBM)"는 번들 로컬관리(Bundle Local Management), 로컬관리(Local Management), 로컬관리 명령(Local Management Command), 로컬 명령(Local Command), 로컬 번들 관리 패키지(LBM Package), 번들 로컬 관리 패키지(Bundle Local Management Package), 로컬관리 패키지(Local Management Package), 로컬관리 명령 패키지(Local Management Command Package), 로컬명령 패키지(Local Command Package)로 명명될 수 있다. LBM은 단말에 설치된 소프트웨어 등을 통해 임의의 번들을 설치(Install)하거나, 특정 번들의 상태(Enabled, Disabled, Deleted)를 변경하거나, 특정 번들의 내용(예를 들면, 번들의 별칭(Bundle Nickname), 또는 번들 요약 정보(Bundle Metadata) 등)을 변경(update)하는 용도로 사용될 수 있다. LBM은 하나 이상의 로컬관리명령을 포함할 수도 있으며, 이 경우 각 로컬관리명령의 대상이 되는 번들은 로컬관리명령마다 서로 같거나 다를 수 있다.
"원격 번들 관리(Remote Bundle Management, RBM)"는 번들 원격관리(Bundle Remote Management), 원격관리(Remote Management), 원격관리 명령(Remote Management Command), 원격 명령(Remote Command), 원격 번들 관리 패키지(RBM Package), 번들 원격 관리 패키지(Bundle Remote Management Package), 원격관리 패키지(Remote Management Package), 원격관리 명령 패키지(Remote Management Command Package), 원격명령 패키지(Remote Command Package)로 명명될 수 있다. RBM은 임의의 번들을 설치(Install)하거나, 특정 번들의 상태(Enabled, Disabled, Deleted)를 변경하거나, 특정 번들의 내용(예를 들면, 번들의 별칭(Bundle Nickname), 또는 번들 요약 정보(Bundle Metadata) 등)을 변경(update)하는 용도로 사용될 수 있다. RBM은 하나 이상의 원격관리명령을 포함할 수도 있으며, 각 원격관리명령의 대상이 되는 번들은 원격관리명령마다 서로 같거나 다를 수 있다.
"목표 번들(target Bundle)"은 로컬관리명령 내지 원격관리명령의 대상이 되는 번들을 지칭하는 용어로 사용될 수 있다.
"번들 규칙(Bundle Rule)"은 목표 번들에 대해 로컬관리 내지 원격관리를 수행할 때 단말이 확인해야 할 정보를 지칭하는 용어로 사용될 수 있다. 또한 번들 규칙은 번들 정책(Bundle Policy), 규칙(Rule), 정책(Policy) 등의 용어와 혼용될 수 있다.
[프로파일과 관련되어 사용될 경우]
"이벤트(Event)"는 프로파일 다운로드(Profile Download), 또는 원격 프로파일 관리(Remote Profile Management), 또는 기타 프로파일이나 eUICC의 관리/처리 명령어를 통칭하는 용어일 수 있다. 이벤트(Event)는 원격 SIM 제공 동작(Remote SIM Provisioning Operation, 또는 RSP 동작, 또는 RSP Operation) 또는 이벤트 기록(Event Record)으로 명명될 수 있으며, 각 이벤트(Event)는 그에 대응하는 이벤트 식별자(Event Identifier, Event ID, EventID) 또는 매칭 식별자(Matching Identifier, Matching ID, MatchingID)와, 해당 이벤트가 저장된 프로파일 제공서버(SM-DP+) 또는 개통중개서버(SM-DS)의 주소(FQDN, IP Address, 또는 URL)와, 프로파일 제공서버(SM-DP+) 또는 개통중개서버(SM-DS)의 서명과, 프로파일 제공서버(SM-DP+) 또는 개통중개서버(SM-DS)의 디지털 인증서를 적어도 하나 이상 포함하는 데이터로 지칭될 수 있다.
이벤트(Event)에 대응하는 데이터는 "명령코드(Command Code)"로 지칭될 수 있다. 명령코드를 이용하는 절차의 일부 또는 전체를 "명령코드 처리 절차" 또는 "명령코드 절차" 또는 "LPA API(Local Profile Assistant Application Programming Interface)"라 지칭할 수 있다. 프로파일 다운로드(Profile Download)는 프로파일 설치(Profile Installation)와 혼용될 수 있다.
또한, "이벤트 종류(Event Type)"는 특정 이벤트가 프로파일 다운로드인지 원격 프로파일 관리(예를 들어, 삭제, 활성화, 비활성화, 교체, 업데이트 등)인지 또는 기타 프로파일이나 eUICC 관리/처리 명령인지를 나타내는 용어로 사용될 수 있으며, 동작 종류(Operation Type 또는 OperationType), 동작 분류(Operation Class 또는 OperationClass), 이벤트 요청 종류(Event Request Type), 이벤트 분류(Event Class), 이벤트 요청 분류(Event Request Class) 등으로 명명될 수 있다. 임의의 이벤트 식별자(EventID 또는 MatchingID)는 단말이 해당 이벤트 식별자(EventID 또는 MatchingID)를 획득한 경로 또는 사용 용도(EventID Source 또는 MatchingID Source)가 지정되어 있을 수 있다.
"로컬 프로파일 관리(Local Profile Management, LPM)"는 프로파일 로컬관리(Profile Local Management), 로컬관리(Local Management), 로컬관리 명령 (Local Management Command), 로컬 명령(Local Command), 로컬 프로파일 관리 패키지 (LPM Package), 프로파일 로컬 관리 패키지(Profile Local Management Package), 로컬관리 패키지(LOCAL MANAGEMENT PACKAGE), 로컬관리 명령 패키지(Local Management Command Package), 로컬명령 패키지(Local Command Package)로 명명될 수 있다. LPM은 단말에 설치된 소프트웨어 등을 통해 특정 프로파일의 상태(Enabled, Disabled, Deleted)를 변경하거나, 특정 프로파일의 내용 (예를 들면, 프로파일의 별칭(Profile Nickname), 또는 프로파일 요약 정보(Profile Metadata) 등)을 변경(update)하는 용도로 사용될 수 있다. LPM은 하나 이상의 로컬관리명령을 포함할 수도 있으며, 이 경우 각 로컬관리명령의 대상이 되는 프로파일은 로컬관리명령마다 서로 같거나 다를 수 있다.
"원격 프로파일 관리(Remote Profile Management, RPM)"는 프로파일 원격관리(Profile Remote Management), 원격관리(Remote Management), 원격관리 명령(Remote Management Command), 원격 명령(Remote Command), 원격 프로파일 관리 패키지(RPM Package), 프로파일 원격 관리 패키지(Profile Remote Management Package), 원격관리 패키지(Remote Management Package), 원격관리 명령 패키지(Remote Management Command Package), 원격명령 패키지(Remote Command Package)로 명명될 수 있다. RPM은 특정 프로파일의 상태(Enabled, Disabled, Deleted)를 변경하거나, 특정 프로파일의 내용(예를 들면, 프로파일의 별칭(Profile Nickname), 또는 프로파일 요약 정보(Profile Metadata) 등)을 변경(update)하는 용도로 사용될 수 있다. RPM은 하나 이상의 원격관리명령을 포함할 수도 있으며, 이 경우 각 원격관리명령의 대상이 되는 프로파일은 원격관리명령마다 서로 같거나 다를 수 있다.
"인증서(Certificate)" 또는 디지털 인증서(Digital Certificate)는 공개 키(Public Key, PK)와 비밀 키(Secret Key, SK)의 쌍으로 구성되는 비대칭 키(Asymmetric Key) 기반의 상호 인증(Mutual Authentication)에 사용되는 디지털 인증서(Digital Certificate)를 나타낼 수 있다. 각 인증서는 하나 또는 하나 이상의 공개 키(Public Key, PK)와, 각 공개 키에 대응하는 공개 키 식별자(Public Key Identifier, PKID)와, 해당 인증서를 발급한 인증서 발급자(Certificate Issuer, CI)의 식별자(Certificate Issuer ID) 및 디지털 서명(Digital Signature)을 포함할 수 있다. 또한 인증서 발급자(Certificate Issuer)는 인증 발급자(Certification Issuer), 인증서 발급기관(Certificate Authority, CA), 인증 발급기관(Certification Authority) 등으로 명명될 수 있다. 본 개시에서 공개 키(Public Key, PK)와 공개 키 식별자(Public Key ID, PKID)는 특정 공개 키 내지 해당 공개 키가 포함된 인증서, 또는 특정 공개 키의 일부분 내지 해당 공개 키가 포함된 인증서의 일부분, 또는 특정 공개 키의 연산 결과(예를 들면, 해시(Hash))값 내지 해당 공개 키가 포함된 인증서의 연산 결과(예를 들면, 해시(Hash))값, 또는 특정 공개 키의 일부분의 연산 결과(예를 들면, 해시(Hash))값 내지 해당 공개 키가 포함된 인증서의 일부분의 연산 결과(예를 들면, 해시(Hash))값, 또는 데이터들이 저장된 저장 공간을 지칭하는 동일한 의미로 혼용될 수 있다.
"인증서 연쇄(Certificate Chain)" 또는 인증서 계층구조(Certificate Hierarchy)는 "인증서 발급자(Certificate Issuer)"가 발급한 인증서들(1차 인증서)이 다른 인증서(2차 인증서)를 발급하는데 사용되거나, 2차 인증서들이 3차 이상의 인증서들을 연계적으로 발급하는데 사용되는 경우, 해당 인증서들의 상관관계를 나타낼 수 있다. 이 때 최초 인증서 발급에 사용된 CI 인증서는 인증서 근원(Root of Certificate), 최상위 인증서, 근원 CI(Root CI), 근원 CI 인증서(Root CI Certificate), 근원 CA(Root CA) 근원 CA 인증서(Root CA Certificate)등으로 명명될 수 있다.
그리고, 본 개시를 설명함에 있어서, 관련된 공지기능 또는 구성에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단된 경우, 그 상세한 설명은 생략한다.
이하에서는 단말 간 번들을 이동하고 설치하는 방법 및 장치에 관한 다양한 실시 예들을 설명한다.
도 1은 본 개시의 실시 예에 따른 SSP의 개념도를 나타낸다.
다양한 실시예에 따르면, 도 1의 예에서와 같이, 단말(110)은 SSP(120)를 포함할 수 있다. 예를 들면, SSP(120)는 단말(110)의 SoC(130)에 내장될 수 있다. 이때, SoC(130)는 통신 프로세서(Communication Processor), 어플리케이션 프로세서(Application Processor) 또는 이 두 프로세서가 통합된 프로세서일 수 있다. 다른 예를 들면, SSP(120)는 SoC에 통합되지 않고 독립된 칩 형태로 착탈형(122)일 수도 있고, 단말(110)에 미리 내장된 내장형(124)일 수도 있다.
다양한 실시예에 따르면, 단말에 포함된 SSP(120)는 하나 이상의 텔레콤 번들, 하나 이상의 페이먼트 번들 또는 하나 이상의 전자신분증 번들 중 적어도 하나를 포함할 수 있다. 예를 들면, 도 1에 도시된 바와 같이, SSP(120)에 복수의 텔레콤 번들(140, 150)이 포함된 경우, 단말(110)은 설정에 따라 복수의 텔레콤 번들(140, 150)을 동시 또는 시분할로 동작하게 하여 이동통신 네크워크를 이용할 수 있다. 또한, SSP(120)에 페이먼트 번들(170) 및 전자신분증 번들(180)이 포함된 경우, 단말(110)은 페이먼트 번들(170)을 이용하여 단말 앱을 통한 온라인 결제 또는 외부 신용카드 PoS (Point of Sale) 기기를 통한 오프라인 결제를 이용할 수 있으며, 전자신분증 번들(180)을 이용하여 단말 소유자의 신분을 인증할 수 있다.
도 2는 본 개시의 실시 예에 따른 SSP(Smart Secure Platform)의 내부 구조에 대한 개념도를 나타낸다.
다양한 실시예에 따르면, 도 2의 예에서와 같이, SSP(210)는 하나의 프라이머리 플랫폼(Primary Platform, PP)(220)과 그 위에서 동작하는 적어도 하나의 세컨더리 플랫폼 번들(Secondary Platform Bundle, SPB)(230, 240)을 포함할 수 있다.
다양한 실시예에 따르면, 프라이머리 플랫폼(220)은 하드웨어(개시되지 않음)와 적어도 하나의 하위계층 운영체제(low level Operating System, LLOS)(222)를 포함할 수 있다.
다양한 실시예에 따르면, 세컨더리 플랫폼 번들(230)은 상위계층 운영체제(High-level Operating System, HLOS)(232)와 그 위에서 동작하는 적어도 하나의 애플리케이션(234)을 포함할 수 있다.
다양한 실시예에 따르면, 각 세컨더리 플랫폼 번들(230, 240)은 프라이머리 플랫폼 인터페이스(Primary Platform Interface, PPI)(250)를 이용하여 프라머리 플랫폼(220)의 중앙처리장치, 메모리 등의 자원에 접근하고 이를 통해 SSP(210)에서 구동될 수 있다.
도 3은 본 개시의 실시 예에 따른 단말이 SSP로 번들을 다운로드하고 설치하기 위한 단말 내부 구성요소의 예를 도시하는 도면이다.
다양한 실시예에 따르면, 도 3의 예에서와 같이, 단말(310)은 SSP(330) 및/또는 SSP(330)를 제어하기 위한 LBA(312)를 포함할 수 있다. 예를 들면, 단말(310) 은 SSP(330)가 장착되고 SSP(330)을 제어하기 위한 LBA(312)가 설치된 단말일 수 있다. 일 예로, SSP(330)은 단말(310)에 내장되거나 착탈형 일 수도 있다.
다양한 실시예에 따르면, SSP(330)는 프라이머리 플랫폼(331), 세컨더리 플랫폼 번들 로더(Secondary Platform Bundle Loader, SPBL)(333), 및 하나 이상의 세컨더리 플랫폼 번들(335, 337, 또는 339) 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따르면, 세컨더리 플랫폼 번들(335, 337, 또는 339)은 단말 출하 시점에는 SSP(330)내부에 설치되지 않고, 출하 후 원격으로 다운로드 및 설치될 수 있다.
다양한 실시예에 따르면, 도 3의 예에서와 같이, 각 번들은 서로 다른 번들 패밀리 식별자 및/또는 번들 패밀리 관리자 식별자(341, 342, 또는 343)를 가질 수 있다. 이러한 번들 패밀리 식별자와 번들 패밀리 관리자 식별자는 번들의 다운로드 및 설치에 필요한 정보로써 이용될 수 있다. 즉, SSP(330) 또는 SPBL(333)은 번들 패밀리 식별자와 번들 패밀리 관리자 식별자에 따라 특정 번들의 다운로드와 설치를 허용하거나 거부할 수 있다.
도 4는 본 개시의 실시 예에 따른 두 단말 사이에서 번들의 전송이 이루어지기 위해 두 단말이 상호 동작하는 방법의 예를 도시하는 도면이다.
다양한 실시예에 따르면, 단말은 적어도 하나의 LBA 및 적어도 하나의 SSP를 포함할 수 있다. 예를 들면, 도 4의 예에서와 같이, 제1 단말(400)은 LBA(410)과 SSP(420)을 포함하고, 제2 단말(450)은 LBA(460)과 SSP(470)을 포함할 수 있다.
다양한 실시예에 따르면, 사용자는 단말에 명령을 보내거나, 혹은 사용자가 제공받아야 할 정보를 단말로부터 수신할 수 있다. 예를 들면, 4010 내지 4060 동작에서와 같이, 제1/제2 사용자(440, 490)는 제1/제2 단말(400, 450)의 LBA(410, 460) 에 명령을 보내거나, 혹은 LBA(410, 460)로부터 사용자가 제공받아야 할 정보를 수신할 수 있다.
다양한 실시예에 따르면, 상기의 동작은 사용자가 전송하고자 하는 번들을 선택하는 과정을 포함할 수 있다. 또한, 상기의 동작은 사용자가 전송 받고자 하는 번들의 정보를 확인하는 과정을 더 포함할 수도 있다. 또한, 상기의 동작은 사용자가 전송하고자 하는 번들의 전송 여부를 승인하는 동작을 더 포함할 수도 있다. 또한, 상기의 동작은 사용자가 전송 받고자 하는 번들의 전송 여부를 승인하는 동작을 더 포함할 수도 있다. 상기에 기술된 선택과 승인의 동작들은 서로가 독립적인 동작들로서 모두 동작되지 않을 수도 있고, 하나 이상의 동작이 서로 독립적으로 선택되어 동작될 수도 있다.
또한, 4020 내지 4070 동작에서 LBA(410, 460)는 SSP(420, 470)에 명령을 내리거나 혹은 SSP(420, 470)와 데이터를 송수신할 수 있다.
일 예에 따르면, 상기의 동작에서 LBA는 전술한 사용자의 명령을 수신하여 이 명령을 SSP에 전달할 수 있다. 상기의 동작에서 LBA가 사용자의 명령을 수신하여 이 명령을 SSP에 전달했을 경우, LBA는 그 결과로서 SSP가 송신하는 결과를 수신할 수 있다.
다른 예에 따르면, 상기의 동작에서 LBA는 다른 단말 혹은 외부 서버로부터 수신한 명령이나 데이터를 SSP에 전달할 수 있다. 상기의 동작에서 LBA가 다른 단말 혹은 외부 서버로부터 받은 명령이나 데이터를 SSP에 전달했을 경우, LBA는 그 결과로서 SSP가 송신하는 결과를 수신할 수 있다.
다양한 실시예에 따르면, 상기의 동작에서 LBA는 사용자의 명령 혹은 다른 단말 혹은 외부 서버로부터 받은 명령이나 데이터를 기반으로 하여 새로운 명령과 데이터를 정의해 이것을 SSP에 전달할 수 있다. 상기의 동작에서 LBA는 사용자의 명령 혹은 다른 단말 혹은 외부 서버로부터 받은 명령이나 데이터를 기반으로 하여 새로운 명령과 데이터를 정의해 이것을 SSP에 전달했을 경우, LBA는 그 결과로서 SSP가 송신하는 결과를 수신할 수 있다.
다양한 실시예에 따르면, 상기의 동작에서 LBA와 SSP는 서로 데이터를 송수신하며 번들을 설치할 수 있다.
다양한 실시예에 따르면, 4050 동작에서 두 LBA(410, 460)는 서로 연결되어 상대에게 명령을 내리거나 상대와 데이터를 송수신할 수 있다. 이 때, 4050의 연결은 단말과 단말의 직접적인 기기 간 연결일 수도 있고, 비록 도시되지는 않았으나 양 LBA의 연결 사이에 외부 개체(예컨대, 외부 서버)가 연결되어 있는 간접적인 기기 간 연결일 수도 있다.
상기에 기술된 두 LBA 간의 연결 방법에 대한 보다 상세한 기술은 후술한 도면들을 참조하기로 한다.
다양한 실시예에 따르면, 4030 내지 4080 동작에서 SSP(420, 470)는 SSP 내부에서 필요한 데이터를 생성하거나 처리, 혹은 검증할 수 있다.
다양한 실시 예에 따르면, 상기의 동작에서 SSP는 번들 이동 설정을 확인하거나 업데이트할 수 있다. 또한, 상기의 동작에서 SSP는 번들 이동 코드를 생성하고 활용할 수 있다. 상기에 기술된 번들 이동 설정 관련 동작과 번들 이동 코드 관련 동작은 서로 독립적인 기능으로서, 두 기능 모두 실행되지 않거나, 또는, 두 기능 중 어느 하나만 실행되거나, 또는, 두 기능 모두가 실행될 수도 있다. 두 기능 모두가 실행되는 경우에도 두 기능은 완전히 독립된 기능으로서 수행될 수 있다.
상기에 기술된 번들 이동 설정을 확인하거나 업데이트하는 보다 상세한 방법, 번들 이동 코드를 생성하고 활용하는 보다 상세한 방법은 후술한 도면들을 참조하기로 한다.
다양한 실시예에 따르면, 상기의 동작에서 SSP는 자신의 SSP 정보를 생성하거나 상대 단말로부터 받은 SSP 정보를 검증할 수 있다. 또한 상기의 동작에서 SSP는 자신을 검증할 수 있는 인증 데이터를 생성할 수도 있고 상대 단말로부터 받은 인증 데이터를 검증할 수도 있다.
다양한 실시예에 따르면, 상기의 동작에서 SSP는 번들을 생성할 수 있다.
도 5는 본 개시의 실시 예에 따른 하나의 단말에서 다른 단말로 번들이 전송되는 절차를 개념적으로 도시하는 도면이다.
다양한 실시예에 따르면, 단말은 적어도 하나의 LBA 및 적어도 하나의 SSP를 포함할 수 있다. 예를 들면, 도 5의 예에서와 같이, 제1 단말(500)은 제1 LBA(510)과 제1 SSP(520)을 포함하고, 제2 단말(550)은 제2 LBA(560)과 제2 SSP(570)을 포함할 수 있다. 일 예로, 제1 단말(500)은 제1 SSP(510)가 장착되고 제1 SSP(510)을 제어하기 위한 제1 LBA(520)이 설치된 단말일 수 있고, 제2 단말(550)은 제2 SSP(560)가 장착되고 제2 SSP(560)을 제어하기 위한 제2 LBA(570)이 설치된 단말일 수 있다.
도 5를 참조하면, 5000 단계에서 제1 단말(500)의 제1 SSP(510), 제1 LBA(520)과 제2 단말(550)의 제2 LBA(570) 는 번들 전송을 위해 필요한 준비 절차(번들 전송 준비 절차)를 수행할 수 있다. 상기 절차에 대한 보다 자세한 설명은 후술될 도 6의 상세 설명을 참조하기로 한다.
도 5를 참조하면, 5005 단계에서 제1 단말(500)으로부터 제2 단말(550)으로 번들이 전송되는 절차(번들 전송 절차)가 수행될 수 있다. 상기 절차에 대한 보다 자세한 설명은 후술될 도 7의 상세 설명을 참조하기로 한다.
도 5를 참조하면, 5010 단계에서 제2 단말(550)로 전송된 번들이 제2 단말(550)에 설치되는 절차(번들 설치 절차)가 수행될 수 있다. 상기 절차에 대한 보다 자세한 설명은 후술될 도 8의 상세 설명을 참조하기로 한다.
도 6는 도 5에서 제시된 절차 중 번들 전송을 위해 준비하는 절차에 대한 세부 절차를 도시하는 도면이다. 보다 상세하게는, 도 6은 본 개시의 실시 예에 따른 하나의 단말이 다른 단말로 번들을 전송하기 위하여 필요한 준비 과정을 거치는 절차를 예시적으로 도시하는 도면이다. 본 명세서에서, 도 6의 절차는 번들 전송 준비 절차로 지칭될 수 있다.
다양한 실시예에 따르면, 단말은 적어도 하나의 LBA 및 적어도 하나의 SSP를 포함할 수 있다. 예를 들면, 도 6의 예에서와 같이, 제1 단말(600)은 제1 LBA(610)과 제1 SSP(620)을 포함하고, 제2 단말(650)은 제2 LBA(660)과 제2 SSP(670)을 포함할 수 있다. 일 예로, 제1 단말(600)은 제1 SSP(610)가 장착되고 제1 SSP(610)을 제어하기 위한 제1 LBA(620)이 설치된 단말일 수 있고, 제2 단말(650)은 제2 SSP(660)가 장착되고 제2 SSP(660)을 제어하기 위한 제2 LBA(670)이 설치된 단말일 수 있다.
다양한 실시예에 따르면, 제1 단말(600)은 기 설치된 번들을 보유하고 있을 수 있다. 이 번들은 제1 SSP(610)에 저장되어 있을 수도 있고, 제1 LBA(620)에 저장되어 있을 수도 있고, 도 6에 도시되지는 않았지만 제1 SSP(610)과 제1 LBA(620) 외의 메모리에 저장되어 있을 수도 있으며, 혹은 제1 SSP(610), 제1 LBA(620), 외부 메모리 중 적어도 하나의 공간에 중복되어 저장되어 있을 수도 있다. 또한, 번들은 제1 SSP(610), 제2 LBA(620), 외부 메모리 중 적어도 두 개의 조합에 분할된 채 저장되어 있을 수도 있고, 이 때 분할된 번들 사이에는 겹쳐지는 정보가 존재할 수도 있다. 또한, 저장된 번들의 전체 혹은 일부는 암호화되어 있을 수 있으며, 추가로 서명 정보를 더 포함하고 있을 수 있다.
다양한 실시예에 따르면, 제1 단말(600)은 상기에 언급된 번들과 연계된 메타데이터를 더 보유하고 있을 수 있다. 이 메타데이터는 제1 SSP(610)에 저장되어 있을 수도 있고, 제1 LBA(620)에 저장되어 있을 수도 있고, 도 6에 도시되지는 않았지만 제1 SSP(610)과 제1 LBA(620) 외의 메모리에 저장되어 있을 수도 있으며, 혹은 제1 SSP(610), 제1 LBA(620), 외부 메모리 중 적어도 하나의 공간에 중복되어 저장되어 있을 수도 있다. 또한, 메타데이터는 제1 SSP(610), 제2 LBA(620), 외부 메모리 중 적어도 두 개의 조합에 분할된 채 저장되어 있을 수도 있고, 이 때 분할된 정보 사이에는 겹쳐지는 정보가 존재할 수도 있다. 또한, 저장된 메타데이터의 전체 혹은 일부는 암호화되어 있을 수도 있으며, 추가로 서명 정보를 더 포함하고 있을 수 있다.
다양한 실시예에 따르면, 제1 단말(600)은 해당 번들과 연계되어 번들 식별자(SPB ID), 번들 패밀리 식별자(SPB Family ID), 또는 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID) 중 적어도 하나를 보유하고 있을 수 있다. 상기 식별자 정보는 번들 내부에 존재하고 있을 수도 있고, 메타 데이터 내부에 존재하고 있을 수도 있고, 번들과 메타 데이터가 아닌 독립된 영역에 존재하고 있을 수도 있으며, 또는 번들, 메타데이터, 독립된 영역에 중복되거나 분할되어 저장되어 있을 수도 있다. 또한, 상기 식별자 정보는 암호화되어 있을 수도 있으며 혹은 이에 대한 서명 정보를 더 포함하고 있을 수 있다.
다양한 실시예에 따르면, 제1 단말(600)은 해당 번들과 연계되어 '번들 이동 설정'을 보유하고 있을 수 있다. 상기 번들 이동 설정은 '번들 이동 정책'을 포함할 수 있다. 또한, 상기 번들 이동 설정은 '번들 이동 내역'을 더 포함할 수 있다. '번들 이동 설정'은 번들 내부에 존재하고 있을 수도 있고, 메타 데이터 내부에 존재하고 있을 수도 있고, 번들과 메타 데이터가 아닌 독립된 영역에 존재하고 있을 수도 있으며, 또는 번들, 메타데이터, 독립된 영역에 중복되거나 분할되어 저장되어 있을 수도 있다. 또한, 상기 번들 이동 설정은 암호화되어 있을 수도 있으며 혹은 이에 대한 서명 정보를 더 포함하고 있을 수 있다.
다양한 실시예에 따르면, '번들 이동 설정'은 단말 내부에 미리 보유되어 있지 않은 상태에서 필요 시점에서 획득될 수도 있다. 이 때, '번들 이동 설정'은 단말의 요청에 의해 서비스 제공자, 번들 관리 서버, 혹은 서비스 제공자와 번들 관리 서버의 협업에 의해 생성되어 단말로 전송될 수 있다. 또는, 서비스 제공자, 번들 관리 서버 중 적어도 하나의 주체와 단말이 서로 협업해 '번들 이동 설정'을 생성할 수도 있다.
다양한 실시예에 따르면, 단말 내부의 '번들 이동 설정'은 서비스 제공자, 번들 관리 서버, 혹은 서비스 제공자와 번들 관리 서버의 협업에 의해 업데이트 될 수 있다. 또는, 서비스 제공자, 번들 관리 서버 중 적어도 하나의 주체와 단말이 서로 협업해 '번들 이동 설정'을 업데이트할 수도 있다. 업데이트가 되는 시점과 방법은 서비스 제공자, 번들 관리 서버, 단말 제조 업체 등의 정책에 의해 결정될 수 있다.
다양한 실시예에 따르면,'번들 이동 정책'은 번들의 기기 간 이동 가능 여부에 대한 정책으로서 번들의 최초 제공자인 서비스 제공자에 의해 생성되었을 수도 있고, 번들 관리 서버에 의해 생성되었을 수도 있으며, 혹은 앞서 언급한 서비스 제공자와 번들 관리 서버의 협업에 의하여 생성되었을 수도 있다. 이 '번들 이동 정책'에는 해당 번들의 기기 간 전송이 허용되는지 여부를 나타내는 인자(또는, 인디케이션)가 선택적으로 포함되어 있을 수 있다.
또한, 이 '번들 이동 정책'에는 해당 번들의 기기 간 전송이 허용되는 경우 어떠한 조건 하에서 전송이 허용되는지를 명시하는 인자가 선택적으로 더 포함되어 있을 수 있다.
상기에 언급된 어떠한 조건 하에서 전송이 허용되는지를 명시하는 인자의 예로는, 해당 번들의 기기 간 전송 최대 허용 횟수, 해당 번들의 기기 간 전송이 허용되는 기간, 혹은 해당 번들의 특정 기간 내 허용되는 최대 전송 횟수 등이 가능할 것이다.
또한, 앞서 언급한 인자의 다른 예로서 번들의 기기 간 전송이 이루어지기 전 서비스 제공자 및/또는 번들 관리 서버의 승인(Permission)이 필요한지의 여부가 설정된 인자가 포함될 수 있다. 만약 번들의 기기 간 전송이 이루어지기 전 서비스 제공자 및/또는 번들 관리 서버의 승인이 필요할 경우, 승인을 받는 과정은 6000 단계 및/또는 6010 단계 및/또는 7015 단계 및/또는 7040 단계의 일부로서 수행될 수 있다. 이 과정에 대한 상세한 절차는 후술할 도면을 참조하기로 한다. 하지만 서비스 제공자 및/또는 번들 관리 서버의 허락을 받는 과정은 반드시 6000 단계 및/또는 6010 단계 및/또는 7015 단계 및/또는 7040 단계의 일부로서 수행되어야 하는 것이 아니며, 도 6 및/또는 도 7에 제시된 절차 중 임의의 순간에 수행될 수 있다. 어떠한 순간에 서비스 제공자 및/또는 번들 관리 서버의 허락을 받아야 하는지의 정보 역시 '번들 이동 정책'의 일부로서 포함되어 있을 수 있다.
또한, 앞서 언급한 인자의 다른 예로서 허용된 번들의 기기 간 이동 방법을 기술하는 인자가 포함될 수 있다. 가령 번들의 기기 간 이동 방법으로써 온라인 이동 및/또는 오프라인 이동의 허용 여부를 지칭하는 인자가 포함될 수 있다. 만일 온라인 이동과 오프라인 이동이 모두 허용되었을 경우 어떠한 기기 간 이동 방법이 선호되는지의 여부 또한 포함될 수 있다. 또한, 온라인 이동과 오프라인 이동이 모두 허용되었을 경우 하나의 방법이 실패하였을 때 다른 방법이 자동으로 실행될 수 있는지의 여부 또한 포함될 수 있다. 또한, 온라인 이동과 오프라인 이동이 모두 허용되었을 경우 하나의 방법이 실패하였을 때 다른 방법을 수행하기 위하여 사용자의 동의를 구해야 하는지의 여부 또한 포함될 수 있다. 또한, 기기 간 번들 이동이 실패하였을 때 리프로비저닝(re-provisioing)의 가능 여부도 포함될 수 있다. 가령 온라인 또는 오프라인 기기 간 이동이 실패 시 리프로비저닝이 가능한지의 여부가 포함될 수 있다. 이때 리프로비저닝이 자동으로 실행될 수 있는지의 여부 또한 포함될 수 있다. 또한, 리프로비저닝을 실행하기 위하여 사용자의 동의를 구해야 하는지의 여부 또한 포함될 수 있다. 또한, 온라인 이동과 오프라인 이동, 리프로비저닝이 모두 허용되었을 때 각각의 방법이 실행되는 순서에 대한 설정 역시 포함될 수 있다. 가령, 먼저 오프라인 이동을 시도한 뒤 이것이 실패 시 온라인 이동을 시도하고 이마저도 실패 시 리프로비저닝을 시도하도록 설정될 수 있다. 하지만 이것은 하나의 예로써, 온라인 이동과 오프라인 이동, 그리고 리프로비저닝이 실행되는 순서는 다양한 방식으로 설정될 수 있다. 또한 온라인 이동과 오프라인 이동, 그리고 리프로비저닝이 임의의 순서로 실행 시 이 연계가 자동으로 실행될 수 있는지의 여부 또한 포함될 수 있다. 혹은 온라인 이동과 오프라인 이동, 그리고 리프로비저닝이 임의의 순서로 실행 시 연계가 일어날 때마다 사용자의 동의를 받아야 하는지의 여부 또한 포함될 수 있다.
또한, 앞서 언급한 인자의 다른 예로서 다음의 사항들이 더 포함될 수 있다. 번들 이동과 관련된 공지(notification)이 서비스 제공자 및/또는 번들 관리 서버로 전송되어야 하는지의 여부가 포함될 수 있다. 또한 해당 번들이 복수 개의 단말에서 사용 가능한지의 여부가 포함될 수 있다. 또한, 번들을 전송할 단말이 번들을 수신할 단말을 인증할 경우 서비스 제공자 및/또는 번들 관리 서버로부터 전송 받은 정보를 이용해 추가 인증을 해야 하는지의 여부 또한 포함될 수 있다. 즉, 서비스 제공자 및/또는 번들 관리 서버가 신뢰할 수 있는 단말 및/또는 SSP와 관련된 인증 정보를 제공하고, 번들을 전송할 단말은 이 정보를 사용하여 번들을 수신할 단말이 서비스 제공자 및/또는 번들 관리 서버가 신뢰할 수 있는 단말인지를 인증할 수 있다.
또한, 앞서 언급한 인자의 다른 예로서 다음의 사항들이 더 포함될 수 있다. 번들을 전송할 단말이 번들을 전송하기 전 번들을 수신 받을 단말의 정보를 추가적으로 입력 받아야 하는지의 여부가 포함될 수 있다. 이때 추가적으로 입력 받을 '번들을 수신 받을 단말의 정보'는 사용자로부터 직접 입력될 수도 있고, 외부 서버로부터 입력될 수도 있으며, 두 단말 간의 통신을 통해 번들을 수신 받을 단말로부터 입력되었을 수도 있다. 또한, 전송될 번들이 번들을 수신한 단말에서 사용 가능한 상태로 설정되기 위하여 사용자의 추가적인 KYC(Know Your Customer) 인증이 필요한지의 여부 또한 포함될 수 있다. 이 때 추가적인 KYC 인증은 다양한 방법으로 수행될 수 있다. 가령, 전화 및/또는 ARS 인증 및/또는 문자 메시지 등의 방법을 통해 수행될 수 있다. 또는, 사용자가 단말을 조작해 서비스 제공자 및/또는 번들 관리 서버와 통신함으로써 수행될 수 있다. 혹은, 사용자의 개입 없이 번들을 수신한 단말이 서비스 제공자 및/또는 번들 관리 서버와 통신함으로써 인증이 수행될 수 있다.
다양한 실시예에 따르면, '번들 이동 내역'은 과거 이루어졌던 번들의 기기 간 전송 내역이 기록되어 있는 정보이다. 예컨대, 이 '번들 이동 내역'에는 번들 이동이 이루어진 일자(date)와 시간(time)이 선택적으로 포함될 수 있다. 또한, 이 '번들 이동 내역'에는 번들 이동이 이루어졌던 횟수 정보가 선택적으로 더 포함될 수 있다. 또한, 이 '번들 이동 내역'에는 번들을 전송한 단말의 정보 혹은 번들을 수신한 단말의 정보 중 적어도 하나를 선택적으로 더 포함될 수 있다. 만일 이 번들이 과거 기기 간 전송이 되었던 적이 없이 제1 단말(600)에 최초 설치된 경우, 이 번들 이동 내역은 제1 단말에 의해 설정되었을 수도 있고, 번들의 제공자인 서비스 제공자에 의해 설정되었을 수도 있고, 번들 관리 서버에 의해 설정되었을 수도 있으며, 혹은 앞서 언급한 제1 단말, 서비스 제공자, 번들 관리 서버 중 적어도 두 개의 협업에 의하여 설정되었을 수도 있다. 만일 이 번들이 과거 기기 간 전송이 되었던 적이 있다면, 이 번들 이동 내역은 제1 단말에 의해 설정되었을 수도 있고, 과거 제1 단말로 번들을 전송했던 구 단말에 의해 설정되었을 수도 있으며, 번들의 최초 제공자인 서비스 제공자에 의해 설정되었을 수도 있고, 번들 관리 서버에 의해 설정되었을 수도 있으며, 혹은 앞서 언급한 제1 단말, 구 단말, 서비스 제공자, 번들 관리 서버 중 적어도 두 개 이상의 협업에 의하여 설정되었을 수도 있다.
도 6를 참조하면, 6000 단계에서 기기 간 전송될 번들의 정보가 제1 LBA(620)에 전달될 수 있다. 이 전달 과정은 예컨대, 도 6에 도시된 바와 같이, 제1 단말(600)이 제공하는 UI를 통해 사용자가 직접 번들을 선택하는 과정을 통해 이루어질 수도 있고, 원격 서버로부터 푸쉬 입력을 통해 제1 LBA(620)에게 입력될 수도 있으며, 또는 제1 LBA(620)이 원격 서버에 접속하여 해당 정보를 읽어올 수도 있다. 제1 단말(600)이 사용자에게 UI를 제공하는 경우, 이 UI를 통해 단말에 설치된 모든 번들의 목록이 제공될 수도 있고, 또는 현재 이동이 가능한 번들의 목록만이 제공될 수도 있다. 현재 이동이 가능하지 않은 번들의 목록이 제공되는 경우, 목록에 도시된 번들의 이동 가능성을 나타내는 정보가 추가적으로 더 제공될 수 있다. 또한, UI를 통해 상기에 기술한 번들의 목록 외에도 번들의 정보 혹은 번들의 이동 정책 등의 정보가 선택적으로 더 제공될 수도 있다.
6000 단계에서 제1 LBA(620)은 '번들 이동 설정'을 사용해 해당 번들의 기기 간 전송 가능 여부를 확인할 수 있다. 또한, 제1 LBA(620)는 '번들 이동 설정'을 통해 허용된 번들의 기기 간 전송 방법을 확인할 수 있다. 예를 들어, 번들 전송을 위해 기기 간에 이루어질 수 있는 연결의 종류를 확인할 수 있다.
또한, 제1 LBA(620)는 '번들 이동 설정'에 번들을 전송하기 전 서비스 제공자 및/또는 번들 관리 서버의 승인이 필요하다고 설정되어 있는지의 여부를 확인할 수 있다. 만일 이 설정이 되어 있다면, 제1 단말(600)은 '서비스 제공자가 운영하는 서버 및/또는 번들 관리 서버 및/또는 서비스 제공자와 번들 관리 서버가 협업하여 운영하는 서버' (향후 '서버'라 칭하기로 함)에 접속하여 기기 간 번들 전송의 승인을 요청할 수 있다. 이때, 제1 단말(600)은 번들과 관련된 정보 (예를 들어, 번들 식별자(SPB ID), 번들 패밀리 식별자(SPB Family ID), 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID)와 같은 번들 구분자, 혹은 번들의 속성을 나타내는 기타 정보들(가령, 번들의 메타데이터 혹은 메타데이터의 일부)) 를 '서버'에 제공할 수 있다. 이 과정에서 제 1단말과 서버 사이에 상호 인증 과정이 더 포함될 수 있다. 만일 서버가 해당 번들의 기기 간 전송을 승인하지 않을 시 번들 전송 절차는 중단될 수 있다.
또한, 제1 LBA(620)는 '번들 이동 설정'을 확인해 번들을 전송할 단말이 번들을 전송하기 전 번들을 수신 받을 단말의 정보를 추가적으로 입력 받아야 하는지의 여부를 확인할 수 있다. 만일 이 설정이 되어 있다면, 제1 LBA(620)는 번들을 수신할 단말의 정보 ssp2.info를 입력 받을 수 있다. Ssp2.info는 제 2 단말을 지칭할 수 있는 정보일 수 있다. Ssp2.info는 제2 SSP(660)의 SSP 식별자일 수 있다. Ssp2.info는 제2 SSP(660)의 SSP 식별자와 바인딩 된 일련의 정보일 수 있다. 가령, Ssp2.info는 제2 SSP(660)의 SSP 식별자와 바인딩 된 일련의 문자열 및/또는 코드일 수 있다. 사용자는 제1 LBA(620)를 통해 직접 ssp2.info를 입력할 수 있다. ssp2.info의 가능한 다른 입력 방법으로는 서버를 통해 이 정보가 입력되거나, 제2 단말(650)과 제1 단말(600)의 통신을 통해 입력될 수 있다.
또한, 제1 LBA(620)는 '번들 전송 정보'를 생성할 수 있다. 번들 전송 정보에는 전송하고자 하는 번들의 번들 식별자(SPB ID), 번들 패밀리 식별자(SPB Family ID), 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID)와 같은 번들 구분자가 포함될 수 있다. 또한, 번들 전송 정보에는 번들의 속성을 나타내는 기타 정보들(가령, 번들의 메타데이터 혹은 메타데이터의 일부)이 더 포함될 수 있다. 또한 번들 전송 정보에는 전송하고자 하는 번들과 연계되어 있는 번들 관리 서버의 주소(SPBM Addr)이 포함될 수 있다. 번들 전송 정보에는 6025 단계에서 이루어질 두 단말 간의 연결을 위해 필요한 정보가 포함될 수 있다. 가령, 두 단말의 wi-fi 연결을 위해 필요한 정보 (예컨대, 제2 단말(650)의 SSID 및/또는 BSSID, 두 단말의 연결 인증에 사용될 Pre Shared Key, 제2 단말(650)의 IP address, 두 단말의 통신에 사용될 포트 넘버)가 포함될 수 있다.
도 6를 참조하면, 6005 단계에서 6000 단계를 통해 선택된 번들에 관련된 정보가 제1 LBA(620)로부터 제1 SSP(610)으로 전달될 수 있다. 예컨대, 도 6에 도시된 바와 같이, 상기 선택된 번들에 관련된 정보가 Select SPB command를 통해 제1 LBA(620)로부터 제1 SSP(610)으로 전달될 수 있다. 이 때, 제1 LBA(620)로부터 제1 SSP(610)으로 전달되는 정보는 6000 단계에서 선택되었던 번들을 식별(identify)하기 위한 정보를 포함할 수 있다. 번들을 식별하기 위한 정보는 번들 식별자(SPB ID), 혹은 이 번들 식별자를 식별할 수 있는 또 다른 식별자가 될 수 있다. 또한, 제1 LBA(620)으로부터 제2 SSP(610)으로 전달되는 정보는 번들 패밀리 식별자(SPB Family ID)나 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID)와 같은 번들 구분자, 혹은 번들의 속성을 나타내는 기타 정보들(예컨대, 번들의 메타데이터 혹은 메타데이터의 일부)을 선택적으로 더 포함할 수 있다.
도 6를 참조하면, 6010 단계에서 제1 SSP(610)은 전송을 요청 받은 번들의 기기 간 전송 가능 여부를 확인할 수 있다. 이 과정은 우선 6005 단계에서 수신한 정보에 기초하여 전송을 요청 받은 번들을 식별하고, 해당 번들과 연관된(associated with) '번들 이동 설정'을 확인함으로써 수행될 수 있다. 이 과정에서 제1 SSP(610)은 '번들 이동 정책'을 사용하여 번들의 기기 간 전송이 어떠한 조건 하에서 가능한지를 확인하고, 필요 시 '번들 이동 내역'과 '번들 이동 정책'을 비교하여 번들의 기기 간 전송이 현재 가능한지 여부를 확정 지을 수 있다.
상기의 단계에서 '번들 이동 설정'을 사용해 번들의 기기 간 전송이 현재 가능한지의 여부를 판단하는 절차의 몇 가지 예는 다음과 같다. 예를 들면, 만일 '번들 이동 정책'에 해당 번들의 기기 간 전송이 허용되는지 여부를 나타내는 인자가 포함되어 있다면 SSP 1(610)은 이 인자의 값을 확인할 수 있다. 이때, 만일 이 인자에 적힌 값이 해당 번들의 기기 간 전송을 금지함을 나타낸다면, 제1 SSP(610)은 해당 번들의 기기 간 전송 절차를 중단할 수 있고, 이 결과를 제1 LBA(620)에게 전달할 수 있다. 다른 예를 들면, 만일 '번들 이동 정책'에 해당 번들의 기기 간 전송이 어떠한 조건 하에서 전송이 허용되는지를 명시하는 정보가 포함되어 있다면, 제1 SSP(610)은 조건을 확인한 뒤, 이 조건과 '번들 이동 내역'에 기록되어 있는 정보를 비교할 수 있다. 예컨대, '번들 이동 정책'에 해당 번들의 기기 간 전송 최대 허용 횟수, 해당 번들의 기기 간 전송이 허용되는 기간, 혹은 해당 번들의 특정 기간 내 허용되는 최대 전송 횟수 등이 적혀 있다면, 제1 SSP(610)은 '번들 이동 내역'을 확인해 현재 전송하려는 번들이 '번들 이동 정책'을 위반하지 않은 채 현재 전송될 수 있는지 여부를 확인할 수 있다. 이때, 만일 현재 번들을 전송하는 것이 '번들 이동 정책'을 위반하는 것으로 판단된다면 제1 SSP(610)은 해당 번들의 기기 간 전송 절차를 중단할 수 있고, 이 결과를 제1 LBA(620)에게 전달할 수 있다. 또한, '번들 이동 설정'에 번들을 전송하기 전 서비스 제공자 및/또는 번들 관리 서버의 승인이 필요하다고 설정되어 있을 경우, 승인을 받기 위한 절차가 수행될 수 있다. 즉, 제1 단말(600)은 '서비스 제공자가 운영하는 서버 및/또는 번들 관리 서버 및/또는 서비스 제공자와 번들 관리 서버가 협업하여 운영하는 서버' (향후 '서버'라 칭하기로 함)에 접속하여 기기 간 번들 전송의 승인을 요청할 수 있다. 이때, 제1 단말(600)은 번들과 관련된 정보 (예를 들어, 번들 식별자(SPB ID), 번들 패밀리 식별자(SPB Family ID), 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID)와 같은 번들 구분자, 혹은 번들의 속성을 나타내는 기타 정보들(가령, 번들의 메타데이터 혹은 메타데이터의 일부)) 를 '서버'에 제공할 수 있다. 이 과정에서 제 1단말과 서버 사이에 상호 인증 과정이 더 포함될 수 있다. 만일 서버가 해당 번들의 기기 간 전송을 승인하지 않을 시 번들 전송 절차는 중단될 수 있다.
또한, 6010 단계에서 제1 SSP(610)은 선택적으로 '번들 이동 코드'를 생성할 수 있다. 이처럼, 도 6010 단계의 이 번들 이동 코드 생성 절차는 선택적으로(optionally) 수행되는 절차일 수 있다. 이 경우, 이 번들 이동 코드 생성 절차는 필요에 의해 수행되거나, 생략될 수 있다. 예를 들면, 번들의 이동을 위해 번들 이동 코드가 사용되지 않는 경우, 또는 번들의 이동을 위해 번들 이동 코드가 사용되지만, 기존에 정의된 값(예컨대, 번들 식별자)을 번들 이동 코드로 사용하는 경우, 도 6010 단계의 번들 이동 코드 생성 절차는 생략될 수 있다. 또는, 번들의 이동을 위해 번들 이동 코드가 사용되고, 새로운 번들 이동 코드가 정의될 필요가 있는 경우, 도 6010 단계의 번들 이동 코드 생성 절차가 수행될 수 있다.
앞서 기술하였듯 '번들 이동 코드'는 사용되지 않을 수도 있고, 사용되는 경우 새로이 생성되거나 기존에 정의된 값 중 하나를 선택해 사용될 수도 있다. 이를 좀 더 자세히 설명하기 위해 아래에 '번들 이동 코드'에 대한 보다 상세한 설명을 제공한다.
다양한 실시예에 따르면, '번들 이동 코드'는 해당 번들의 기기 간 전송 과정에서 해당 번들을 지칭하기 위해 사용되는 코드로서 해당 번들을 식별할 수 있는 값이어야 한다. 이 '번들 이동 코드'는 이미 정의되어 있는 번들을 식별할 수 있는 값 (예를 들어, 번들 식별자(SPB ID) 혹은 이 번들 식별자를 식별할 수 있는 기 정의된 값) 일 수도 있고, 혹은 번들 전송을 요청 받은 뒤 제1 SSP(610)에 의해 생성된 새로운 값일 수도 있으며, 혹은 기 정의된 값과 새로이 생성된 값이 조합된 값일 수도 있다. 또한, '번들 이동 코드'는 하나의 값일 수 있으며, 혹은 하나 이상의 값을 포함하고 있는 값들의 집합일 수도 있다. '번들 이동 코드'가 하나 이상의 값들의 조합일 경우, 이 값 들에는 기 정의되어 있는 번들의 식별자, 번들의 식별자를 식별할 수 있는 기 정의된 값, 혹은 요청을 받은 뒤 제1 SSP(610)에 의해 새로이 생성된 값들 중 적어도 하나가 포함될 수 있다. 이와 같이, 본 개시에서는 번들의 기기 간 전송을 위해 사용되는 번들 이동 코드를 전송하려는 해당 번들의 고유의 식별자(번들 식별자(SPB ID)) 이외의 값으로 설정할 수도 있다. 이를 통해, 번들의 고유의 식별자의 외부 노출 없이, 번들의 기기 간 전송을 위한 절차를 수행할 수 있게 된다.
번들 전송을 위하여 '번들 이동 코드'가 사용될 시 6010 단계에서 제1 SSP(610)은 앞서 기술한 '번들 이동 코드'와 전송하려는 번들의 정보를 바인딩(binding)할 수 있다.
도 6를 참조하면, 6015 단계에서 6005 단계에 대한 응답 결과가 제1 SSP(610)으로부터 제1 LBA(620)으로 전송될 수 있다. 예컨대, 도 6에 도시된 바와 같이, Select SPB command에 대한 응답이 Select SPB response를 통해 제1 SPB(610)로부터 제1 LBA(620)으로 전달될 수 있다. 이 응답 값은 6010 단계에서 기술된 '번들 이동 코드'를 포함할 수 있다. 또한, 제1 SSP(610)으로부터 제1 LBA(620)으로 전달되는 정보는 번들 식별자(SPB ID), 번들 패밀리 식별자(SPB Family ID), 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID)와 같은 번들 구분자, 혹은 번들의 속성을 나타내는 기타 정보들(가령, 번들의 메타데이터 혹은 메타데이터의 일부)을 선택적으로 더 포함할 수 있다. 또한, 제1 SSP(610)으로부터 제1 LBA(620)으로 전달되는 정보는 전송하고자 하는 번들과 연계되어 있는 번들 관리 서버의 주소(SPBM Addr)을 선택적으로 더 포함할 수 있다.
6005 단계 내지 6015 단계는 생략될 수 있다.
도 6를 참조하면, 6020 단계에서 기기 간 번들 전송을 위해 필요한 정보가 제1 단말 (600)의 제1 LBA(620)으로부터 제2 단말(650)의 제2 LBA(670)으로 전달될 수 있다. 이 때 제 1 LBA(620)로부터 제2 LBA(670)으로 전달되는 정보에는 '번들 전송 정보'가 포함될 수 있다. 또는, 제1 LBA(620)으로부터 제2 LBA(670)으로 전달되는 정보에는 '번들 이동 코드'가 포함될 수 있다. 또한, 제1 LBA(620)으로부터 제1 LBA(670)으로 전달되는 정보는 번들 식별자(SPB ID), 번들 패밀리 식별자(SPB Family ID), 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID)와 같은 번들 구분자, 혹은 번들의 속성을 나타내는 기타 정보들(가령, 번들의 메타데이터 혹은 메타데이터의 일부)을 선택적으로 더 포함할 수 있다. 또한, 제1 LBA(620)으로부터 제2 LBA(670)으로 전달되는 정보는 향후 6025 단계에서 제1 LBA(620)과 제2 LBA(670) 사이에 수립될(established) 연결을 위해 필요한 정보들을 선택적으로 더 포함할 수 있다. 또한, 제1 LBA(620)으로부터 제2 LBA(670)으로 전달되는 정보는 제1 LBA(620)과 제2 LBA(670)이 공유하게 될 공유된 비밀값 (Shared Secrete)을 선택적으로 더 포함할 수 있다. 또한, 제1 LBA(620)으로부터 제2 LBA(670)으로 전달되는 정보는 전송하고자 하는 번들과 연계되어 있는 번들 관리 서버의 주소(SPBM Addr)을 선택적으로 더 포함할 수 있다. 또한, 제1 LBA(620)으로부터 제2 LBA(670)으로 전달되는 정보에는 기기 간 번들 이동이 수행될 것임을 알려주는 정보가 선택적으로 더 포함될 수 있다.
상술한 6020 단계를 통해 제1 LBA(620)으로부터 제2 LBA (670)으로 전달되는 정보들은 다양한 방법으로 전달될 수 있다. 예를 들면, 제1 LBA은 제2 LBA로 전달해야 할 정보를 제1 단말(600)의 UI를 통해 사용자에게 제공할 수 있으며, 사용자는 제공받은 정보를 제2 단말(650)의 UI를 이용해 제2 LBA에 입력할 수 있다. 혹은, 제1 LBA은 제2 LBA로 전달해야 할 정보를 이미지 (예를 들어 QR 코드)의 형태로 만들어 제1 단말의 화면에 표시하고, 사용자는 제2 단말(650)를 이용해 이 이미지를 스캔함으로써 제2 LBA(670)에 정보를 전달할 수 있다. 하지만 제1 LBA(620)으로부터 제2 LBA(670)으로 정보를 전달하는 방법은 상기의 방법들에 국한되지 않는다.
도 6를 참조하면, 6025 단계에서 제1 LBA(620)과 제2 LBA(670) 사이에 연결이 수립(또는, 설정)될 수 있다. 만일 6020 단계에서 연결을 위해 필요한 정보들이 전송되었다면, 제1 LBA(620)과 제2 LBA(670)는 이 정보를 이용해 연결을 수립할 수도 있다. 제1 LBA(620)과 제2 LBA(670)의 연결은 직접적인 기기 간 연결일 수도 있고 (예컨대, NFC, 블루투스, UWB, WiFi-Direct, LTE D2D(device-to-device), 5G D2D와 같은 무선 연결이나 케이블을 통한 유선 연결) 혹은 제1 LBA(620)과 제2 LBA(670) 사이에 원격 서버(가령, 릴레이 서버) 가 위치한 원거리 연결일 수도 있다.
도 6를 참조하면, 6025 단계는 마지막 단계로서 도시되었지만 이 단계는 전술한 다른 단계, 즉 단계 6000, 6005, 6010, 6015, 6020과는 독립적인 단계로서 다른 단계들과 순서에 구애되지 않고 수행될 수 있다. 예컨대, 6025 단계는 6015 단계와 6020 단계의 사이에서 수행될 수도 있으며, 이 경우 6020 단계에서 제1 LBA(620)으로부터 제2 LBA 2(670)으로 전송되는 정보는 6025에서 수립된 연결을 통해 전송될 수도 있다.
도 7은 도 5에서 제시된 절차 중 번들의 전송이 이루어지는 절차에 대한 세부 절차를 도시하는 도면이다. 보다 상세하게는, 도 7은 본 개시의 실시 예에 따른 하나의 단말이 다른 단말로 번들을 전송하는 절차를 예시적으로 도시하는 도면이다. 본 개시에서 도 7의 절차는 번들 전송 절차로 지칭될 수 있다.
다양한 실시예에 따르면, 단말은 적어도 하나의 LBA 및 적어도 하나의 SSP를 포함할 수 있다. 예를 들면, 도 7의 예에서와 같이, 제1 단말(700)은 제1 LBA(710)과 제1 SSP(720)을 포함하고, 제2 단말(750)은 제2 LBA(760)과 제2 SSP(770)을 포함할 수 있다. 일 예로, 제1 단말(700)은 제1 SSP(710)가 장착되고 제1 SSP(710)을 제어하기 위한 제1 LBA(720)이 설치된 단말일 수 있고, 제2 단말(750)은 제2 SSP(760)가 장착되고 제2 SSP(760)을 제어하기 위한 제2 LBA(770)이 설치된 단말일 수 있다.
도 7을 참조하면, 7000 단계에서 제2 LBA(770)은 제2 SSP 2(760)에게 "SSP 정보 (SspInfo)"를 요청할 수 있다. 7000 단계에서 제2 LBA(770)가 제2 SSP(760)에게 "SSP 정보 (SspInfo)"를 요청할 때, 제2 LBA(770)는 제2 SSP(760)에게 기기 간 번들 이동이 수행될 것임을 알려줄 수 있다. 또한, 제2 LBA(770)는 제2 SSP(760)에게 전송될 번들에 대한 정보를 선택적으로 제공할 수 있다. 이 정보에는 번들 식별자(SPB ID), 번들 패밀리 식별자(SPB Family ID), 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID) 중 적어도 하나가 선택적으로 포함될 수 있다.
또한, 7000 단계는 도 6에서 도시했던 과정에 바로 이어서 자동으로 수행될 수도 있고, 외부의 입력을 받은 후 수행될 수도 있다. 이 때, '외부의 입력'은 제2 단말(750)이 제공하는 UI를 통해 사용자가 직접 전송 받을 번들을 선택하는 과정을 통해 이루어질 수도 있고, 원격 서버로부터 푸쉬 입력을 통해 제2 LBA(720)에게 입력될 수도 있으며, 또는 제2 LBA(720)이 원격 서버에 접속하여 해당 정보를 읽어올 수도 있다.
도 7을 참조하면, 7005 단계에서 제2 SSP(760)는 자신의 "SSP 정보"를 생성할 수 있다. "SSP 정보"에는 번들 전송을 위해 제공되어야 하는 제2 SSP의 정보가 포함될 수 있다. 예를 들면, "SSP 정보"에는 제2 SSP(760)가 번들을 수신하기 전 거쳐야 할 인증서 협상 과정을 위한 정보(인증서 협상 정보)가 포함될 수 있다. 이 "인증서 협상 정보"는 제2 SSP(760)가 다른 SSP를 검증하는데 이용할 수 있는 인증서 정보들(SenderSpblVerification)과 다른 SSP가 자신을 검증하는데 이용될 수 있는 인증서 정보들(ReceiverSpblVerification)를 포함할 수 있다. 또한, "인증서 협상 정보"는 제2 SSP(760)가 지원하는 키 합의 알고리즘의 리스트를 선택적으로 더 포함할 수 있으며, 제2 SSP (760)가 지원하는 암호화 알고리즘의 리스트를 선택적으로 더 포함할 수 있다. 또한, "인증서 협상 정보"는, 만일 7000 단계에서 번들 패밀리 식별자(SPB Family ID)와 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID)를 제공받았다면, 번들 패밀리 식별자 혹은 번들 패밀리 관리자 식별자의 값에 의존적으로 선택될 수 있으며, 이 경우 "SSP 정보"에는 인증서 협상 정보와 함께 번들 패밀리 식별자와 번들 패밀리 관리자 식별자가 선택적으로 더 포함될 수 있다. 또한 "SSP 정보"에는 제2 SSP(760)이 포함하는 프라이머리 플랫폼 및 로더가 지원하는 표준 규격의 버전 정보 중 적어도 하나를 포함하는 SSP 버전 정보가 선택적으로 더 포함될 수 있다.
도 7을 참조하면, 7010 단계에서 제2 SSP(760)는 제2 LBA(770)와 제1 LBA(720)을 거쳐 제1 SSP(710)에게 7005 단계에서 생성했던 "SSP 정보"를 전달할 수 있다.
이상에 기술된 7000에서 7010 단계에 따르면 제2 LBA(770)가 제2 SSP(760)에게 "SSP 정보 (SspInfo)" 를 요청하고, 제2 SSP(760)가 자신의 "SSP 정보"를 생성한 뒤, 제2 SSP(760)가 제2 LBA(770)와 제1 LBA(720)을 거쳐 제1 SSP(710)에게 "SSP 정보"를 전달할 수 있다. 하지만, 실시예에 따라서는, 제 2 단말(750)에서 제 1 단말(700)로 "SSP 정보"가 전달되는 과정은 다음과 같을 수도 있다. 예컨대, 제2 LBA(770)가 스스로 "SSP 정보"를 생성한 뒤 제1 LBA(720)을 거쳐 제1 SSP(710)에게 "SSP 정보"를 전달할 수 있다. 상기의 동작은 도 6에서 도시했던 과정에 바로 이어서 자동으로 수행될 수도 있고, 외부의 입력을 받은 후 수행될 수도 있다. 이 때, '외부의 입력'은 제2 단말(750)이 제공하는 UI를 통해 사용자가 직접 전송 받을 번들을 선택하는 과정을 통해 이루어질 수도 있고, 원격 서버로부터 푸쉬 입력을 통해 제2 LBA(720)에게 입력될 수도 있으며, 또는 제2 LBA(720)이 원격 서버에 접속하여 해당 정보를 읽어올 수도 있다. 상기에 기술된 "SSP 정보"에 대한 내용은 앞서 7005 단계에서 기술되었던 내용을 참조하기로 한다.
도 7을 참조하면, 7015 단계에서 제1 SSP(710)은 수신된 "SSP 정보"를 확인할 수 있다.
또한, '번들 이동 정책'에 번들을 전송하기 전 서비스 제공자 및/또는 번들 관리 서버의 승인이 필요하다고 설정되어 있을 경우, 승인을 받기 위한 절차가 수행될 수 있다. 즉, 제1 단말(700)은 '서비스 제공자가 운영하는 서버 및/또는 번들 관리 서버 및/또는 서비스 제공자와 번들 관리 서버가 협업하여 운영하는 서버' (향후 '서버'라 칭하기로 함)에 접속하여 기기 간 번들 전송의 승인을 요청할 수 있다. 이때, 제1 단말(700)은 번들과 관련된 정보 (예를 들어, 번들 식별자(SPB ID), 번들 패밀리 식별자(SPB Family ID), 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID)와 같은 번들 구분자, 혹은 번들의 속성을 나타내는 기타 정보들(가령, 번들의 메타데이터 혹은 메타데이터의 일부)) 혹은 이전 단계에서 수신한 제2 단말의 SSP 정보의 일부 및/또는 전체 를 '서버'에 제공할 수 있다. 이 과정에서 제1 단말과 서버 사이에 상호 인증 과정이 더 포함될 수 있다. 하지만 제1 단말과 서버 사이의 상호 인증 과정은 반드시 이 단계에서 수행될 필요가 없으며 7015 단계 이전에 기 수행되었을 수도 있다. 만일 서버가 해당 번들의 기기 간 전송을 승인하지 않을 시 번들 전송 절차는 중단될 수 있다.
또한 7015 단계에서 제 1 SSP(710)은 자신을 인증할 수 있는 "제1 단말 인증 정보(Device1.Auth)"를 생성할 수 있다.
이 과정에 대한 보다 구체적인 절차는 다음과 같다. 제1 SSP(710)은 수신된 "SenderSpblVerification"과 "제2 SSP(760)가 지원하는 키 합의 알고리즘의 리스트"를 이용해 자신을 검증할 수 있는 인증서 정보를 확인하고 적어도 하나 이상의 키 합의용 인증서(ssp1.Cert.KA)를 선택할 수 있다. 혹은, 제1 SSP(710)은 수신된 "제2 SSP(760)가 지원하는 키 합의 알고리즘의 리스트"를 이용해 키 합의에 사용될 비대칭 암호화용 키 쌍(key pair) 공개키 "ssp1.ePK.KA"와 비밀키 "ssp1.eSK.KA"를 을 생성한 뒤, 이 키 쌍 중 공개키(ssp1.ePK.KA)를 선택할 수 있다. 또한, 제1 SSP(710)은 수신된 "SenderSpblVerification"를 이용해 자신을 검증할 수 있는 인증서 정보를 확인하고 적어도 하나 이상의 서명용 인증서(ssp1.Cert.DS)를 더 선택할 수 있다. 또한, 제1 SSP(710)은 수신된 "ReceiverSpblVerification"을 이용해 자신이 검증할 수 있는 제2 SSP(760)의 인증서를 적어도 하나 이상 선택한 뒤 이에 해당하는 정보를 "CiPkIdToBeUsed"로 설정할 수 있다. 또한, 제1 SSP(710)은 수신된 "제2 SSP(760)가 지원하는 암호화 알고리즘의 리스트"를 이용해 향후 사용될 암호화 알고리즘을 적어도 하나 이상 선택한 뒤 이에 해당하는 정보를 "CryptoToBeUsed"로 설정할 수 있다. 또한, 제1 SSP(710)은 수신된 "제2 SSP(760)이 포함하는 프라이머리 플랫폼 및 로더가 지원하는 표준 규격의 버전 정보"의 리스트를 확인하여 그 중 자신 역시 지원하는 표준 규격의 버전이 존재하는지를 확인할 수 있다.
상술한 "제1 단말 인증 정보(Device1.Auth)"는 상기에 설명된 "ssp1.Cert.KA", "ssp1.ePK.KA" "CiPkIdToBeUsed", "CryptoToBeUsed" 중 적어도 하나를 포함할 수 있다. 또한, "제1 단말 인증 정보(Device1.Auth)"는 상기에 설명된 "ssp1.Cert.DS"를 선택적으로 더 포함할 수 있다. 또한, "제1 단말 인증 정보(Device1.Auth)"는 향후 전송될 번들에 연관된 번들 식별자(SPB ID), 번들 패밀리 식별자(SPB Family ID), 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID) 중 적어도 하나를 선택적으로 더 포함할 수 있다.
이때, 상기에 언급한 "제1 단말 인증 정보(Device1.Auth)"의 일부 혹은 전체는 정보의 무결성을 보장하기 위하여 ssp1.Cert.DS를 이용해 검증 가능하도록 디지털 서명이 될 수 있으며, 이 디지털 서명 데이터는 "제1 단말 인증 정보"의 일부로서 추가될 수 있다.
도 7을 참조하면, 7020 단계에서 제1 SSP(710)은 제1 LBA(720)을 거쳐 제2 LBA(770)에게 7015 단계에서 생성했던 "제1 단말 인증 정보(Device1.Auth)"를 전달할 수 있다.
도 7을 참조하면, 7025단계에서 제2 LBA(770)은 제2 SSP(760)에게 "제1 단말 인증 정보(Device1.Auth)"를 전달할 수 있다. 또한, 제2 LBA(770)은 제2 SSP(760)에게 "번들 이동 코드"를 더 전달할 수 있다. 특히, 제2 LBA(770)은 제2 SSP(760)에게 "번들 구분자" (예컨대, 번들 식별자(SPB ID))를 전달할 수 있다. 실시예에 따라서는, 제2 LBA(770)은 7025 단계 이외의 단계에서 “번들 이동 코드”를 제2 SSP(760)에게 전달 할 수 있다. 예를 들면, 제2 LBA(770)은 7000 단계에서 “번들 이동 코드”를 제2 SSP(760)에게 전달 할 수 있다.
도 7을 참조하면, 7030 단계에서 제2 SSP(760)은 수신된 "제1 단말 인증 정보(Device1.Auth)"를 검증할 수 있다. 만일, 제2 SSP(760)이 "ssp1.Cert.KA"를 수신한 경우, 해당 인증서의 서명을 확인하여 인증서의 유효성을 확인할 수 있다. 또한, 제2 SSP(760)이 "ssp1.ePK.KA"와 이에 대한 디지털 서명을 전송 받은 경우, 먼저 ssp1.Cert.DS의 유효성을 검사한 뒤 이 인증서를 이용하여 디지털 서명을 확인해 수신된 공개키 ssp1.ePK.KA 의 무결성을 확인할 수 있다. 또한, 제2 SSP(760)은 수신된 "CiPkIdToBeUsed"를 확인해 자신을 검증할 수 있는 적어도 하나 이상의 서명용 인증서(ssp2.Cert.DS)를 선택할 수 있다.
또한, 도면에는 도시되어 있지 않지만, 7030 단계에서 제2 SSP(760)은 키 합의에 사용될 비대칭 암호화용 키 쌍(key pair)으로 공개키 "ssp2.ePK.KA"와 비밀키 "ssp2.eSK.KA"를 생성한 뒤, 이 키 쌍 중 공개키(ssp2.ePK.KA)를 선택할 수 있다. 또한, 제2 SSP(760)은 ssp1.Cert.KA에 포함되어 있는 키 합의용 공개키나 ssp1.ePK.KA 중 하나를 선택한 뒤, 이 값과 ssp2.eSK.KA를 이용하여 향후 단말 1과의 통신 중 암호화에 사용될 세션 키 ShKey01을 생성할 수 있다. ShKey01은 수신된 "CryptoToBeUsed"에 포함되어 있는 암호화 알고리즘용 세션 키여야 한다.
또한, 7030 단계에서 제2 SSP(760)은 자신을 인증할 수 있는 "제2 단말 인증 정보(Device2.Auth)"를 생성할 수 있다. 이때, "제2 단말 인증 정보(Device2.Auth)"는 "ssp2.Cert.DS"를 포함할 수 있다. 또한, "제2 단말 인증 정보(Device2.Auth)"는 "ssp2.ePK.KA"를 더 포함할 수 있다. 또한, "제2 단말 인증 정보(Device2.Auth)"는 SSP 2(760)에 의해 생성된 현재 세션을 지칭하는 트랜잭션 아이디(transaction ID)를 더 포함할 수 있다. 또한, "제2 단말 인증 정보(Device2.Auth)"는 "번들 이동 코드"를 더 포함할 수 있다. 또한, "제2 단말 인증 정보(Device2.Auth)"는 제2 SSP(760)에 탑재된 프라이머리 플랫폼의 아이디(Primary Platform Identifier)를 더 포함할 수 있다. 또한, "제2 단말 인증 정보(Device2.Auth)"는 제2 SSP(760)의 파트 넘버 아이디(Part Number ID)를 더 포함할 수 있다. '파트 넘버 아이디'는, 이 아이디를 이용해 '제2 SSP(760)에 탑재된 프라이머리 플랫폼의 제조사(manufacturer)와 프라이머리 플랫폼의 모델 정보'를 유추해낼 수 있는 정보일 수 있다. 또한, "제2 단말 인증 정보(Device2.Auth)"는 향후 전송될 번들에 연관된 번들 식별자(SPB ID), 번들 패밀리 식별자(SPB Family ID), 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID) 중 적어도 하나를 선택적으로 더 포함할 수 있다. 또한, "제2 단말 인증 정보(Device2.Auth)"는 ssp2.info를 포함할 수 있다. Ssp2.info는 제 2 단말을 지칭할 수 있는 정보일 수 있다. Ssp2.info는 제2 SSP(660)의 SSP 식별자일 수 있다. Ssp2.info는 제2 SSP(660)의 SSP 식별자와 바인딩 된 일련의 정보일 수 있다. 가령, Ssp2.info는 제2 SSP(660)의 SSP 식별자와 바인딩 된 일련의 문자열 및/또는 코드일 수 있다.
이때, 상기에 언급한 "제2 단말 인증 정보(Device2.Auth)"의 일부 혹은 전체는 정보의 무결성을 보장하기 위하여 ssp2.Cert.DS를 이용해 검증 가능하도록 디지털 서명이 될 수 있으며, 이 디지털 서명 데이터는 "제2 단말 인증 정보"의 일부로서 추가될 수 있다. 또한, "제2 단말 인증 정보(Device2.Auth)"의 일부 혹은 전체는 앞서 생성된 세션 키 ShKey01를 이용해 암호화될 수 있다.
도 7을 참조하면, 7035 단계에서 제2 SSP(760)는 제2 LBA(770)와 제1 LBA(720)을 거쳐 제1 SSP(710)에게 7030 단계에서 생성했던 "제2 단말 인증 정보(Device2.Auth)"를 전달할 수 있다. 이때, "번들 이동 코드"가 선택적으로 더 전송될 수 있다. 또한 제1 LBA(720)는 제1 SSP(710)에게 6000 단계에서 입력 받았던 ssp2.Info 를 추가적으로 전송할 수 있다.
도 7을 참조하면, 7040 단계에서 제1 SSP(710)은 수신된 "제2 단말 인증 정보(Device2.Auth)"를 검증할 수 있다. 제1 SSP(710)은 수신된 "ssp2.Cert.DS"의 서명을 검증하여 해당 인증서의 유효성을 검증할 수 있다. 또한, 제1 SSP(710)은 수신된 번들 식별자(SPB ID), 번들 패밀리 식별자(SPB Family ID), 혹은 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID)가 자신이 전송하고자 하는 번들과 연관되어 올바르게 설정된 값인지를 검사할 수 있다. 특히, 수신된 번들 식별자와 연관된 번들 이동 설정을 확인하여 해당 번들이 제2 단말로 전송이 가능한 번들인지를 확인할 수 있다. 또한, 제1 SSP(710)은 수신된 트랜잭션 아이디(transaction ID)나 제2 SSP(760)에 탑재된 프라이머리 플랫폼의 아이디(Primary Platform Identifier)를 저장할 수 있다. 또한, 제1 SSP(710)는 수신한 프라이머리 플랫폼의 아이디 및/또는 파트 넘버 아이디를 이용해 제 2 SSP(760)가 해당 번들을 설치할 수 있는 SSP인지를 확인할 수 있다 (Eligibility Check). 또한, 제1 SSP(710)은 수신된 트랜잭션 아이디(transaction ID)나 제2 SSP(760)에 탑재된 프라이머리 플랫폼의 아이디(Primary Platform Identifier)를, 현재 진행되고 있는 세션 혹은 전송하고자 하는 번들과 바인딩(binding)시킬 수 있다. 또한, 제1 SSP(710)은 7035 단계에서 제1 LBA(720)로부터 수신 받은 ssp2.Info 와 "제2 단말 인증 정보(Device2.Auth)"에 포함되어 있는 ssp2.Info의 값이 동일한지 여부를 검증할 수 있다.
상기에 기술된 과정에서, 만일 "제2 단말 인증 정보(Device2.Auth)"에 암호화된 데이터가 포함되어 있을 경우, 제1 SSP(710)은 전송 받은 ssp2.ePK.KA와 자신의 ssp1.Cert.KA에 포함되어 있는 키 합의용 공개키에 대응되는 비밀키나 ssp1.eSK.KA를 이용하여 세션 키 ShKey01를 생성하고, 이 세션 키를 이용하여 암호화된 데이터를 복호화한 뒤 검증 과정을 수행할 수 있다. 또한 이 과정에서, 만일 "제2 단말 인증 정보(Device2.Auth)"에 디지털 서명이 포함되어 있을 경우, 제1 SSP(710)은 "ssp2.Cert.DS"를 이용하여 수신된 디지털 서명의 유효성을 검증할 수 있다.
또한, '번들 이동 정책'에 번들을 전송하기 전 서비스 제공자 및/또는 번들 관리 서버의 승인이 필요하다고 설정되어 있을 경우, 승인을 받기 위한 절차가 수행될 수 있다. 즉, 제 1 단말(700)은 '서비스 제공자가 운영하는 서버 및/또는 번들 관리 서버 및/또는 서비스 제공자와 번들 관리 서버가 협업하여 운영하는 서버' (향후 '서버'라 칭하기로 함)에 접속하여 기기 간 번들 전송의 승인을 요청할 수 있다. 이때, 제 1단말(700)은 번들과 관련된 정보 (예를 들어, 번들 식별자(SPB ID), 번들 패밀리 식별자(SPB Family ID), 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID)와 같은 번들 구분자, 혹은 번들의 속성을 나타내는 기타 정보들(가령, 번들의 메타데이터 혹은 메타데이터의 일부)), 혹은 제 2단말로부터 수신한 SSP 정보의 일부 및/또는 전체, 혹은 제 2단말로부터 수신한 '제 2 단말 인증 정보'의 일부 및/또는 전체 (예를 들어, 제 2 SSP의 프라이머리 플랫폼 아이디 및/또는 파트 넘버 아이디)를 '서버'에 제공할 수 있다. 이 과정에서 제 1단말과 서버 사이에 상호 인증 과정이 더 포함될 수 있다. 하지만 제 1단말과 서버 사이의 상호 인증 과정은 반드시 이 단계에서 수행될 필요가 없으며 7040 단계 이전에 기 수행되었을 수도 있다. 만일 서버가 해당 번들의 기기 간 전송을 승인하지 않을 시 번들 전송 절차는 중단될 수 있다.
또한 7040 단계에서, 도 7에 도시되어 있지는 않지만, 제1 SSP(710)은 키 합의에 사용될 비대칭 암호화용 키 쌍(key pair) 공개키 "ssp1.bundle.ePK.KA"와 비밀키 "ssp1.bundle.eSK.KA"를 을 생성할 수 있다. 이때, 키 쌍 "ssp1.bundle.ePK.KA 와 ssp1.bundle.eSK.KA"는 앞서 생성되었던 "ssp1.ePK.KA 와 ssp1.eSK.KA"와 동일한 값으로 설정될 수도 있다. 또는, 키 쌍 "ssp1.bundle.ePK.KA 와 ssp1.bundle.eSK.KA"는 앞서 사용되었던 "ssp1.Cert.KA에 포함되어 있는 공개키와 이에 대응되는 비밀키"와 동일한 값으로 설정될 수도 있다. 또한, 제1 SSP(710)은 ssp1.bundle.eSK.KA와 ssp2.ePK.KA를 이용하여 세션 키 ShKey02를 생성할 수 있다. 만일 ssp1.bundle.eSK.KA를 위해 ssp1.eSK.KA 혹은' ssp1.Cert.Ka에 포함되어 있는 공개키에 대응되는 비밀키'가 재사용되었다면, 세션 키 ShKey02의 값 역시 이전에 생성되었던 ShKey01의 값으로 설정될 수 있다.
또한 7040 단계에서 제1 SSP(710)은 제2 단말(750)으로 전송할 번들 및/또는 번들과 연관된 메타데이터를 구성할 수 있다. 이때, 제1 SSP(710)은 수신된 "번들 이동 코드"를 이용하여 자신이 전송하고자 하는 번들을 식별할 수 있다. 또한, 구성될 번들에는 "ssp1.Cert.DS"가 포함될 수 있다. 또한, 구성될 번들에는 "ssp1.bundle.ePK.KA"가 더 포함될 수 있다. 또한, 구성될 번들은 해당 세션을 식별하는 트랜잭션 아이디(transaction ID)를 더 포함할 수 있다. 또한, 구성될 번들에는 "번들 이동 코드"가 선택적으로 더 포함될 수 있다. 또한, 구성될 번들에는 전송될 번들과 연관된 번들 식별자(SPB ID), 번들 패밀리 식별자(SPB Family ID), 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID) 중 적어도 하나가 선택적으로 더 포함될 수 있다. 또한, 구성될 번들은 해당 번들의 메타데이터를 선택적으로 더 포함할 수 있다. 또한, 구성될 번들에는 번들 관리 서버의 주소(SPBM Addr)가 선택적으로 더 포함될 수 있다.
다양한 실시예에 따르면, 7040 단계에서 구성되는 번들(또는, 번들과 연관된 메타데이터) 안에는 "번들 이동 설정"이 포함될 수 있다. 이때, 제1 SSP(710)은 번들 안에 포함될 번들 이동 설정 중 "번들 이동 내역"을 현재 이루어질 전송을 고려해 업데이트 한 뒤 이 내용을 번들에 포함시킬 수 있다. 이때 이루어지는 "번들 이동 내역" 업데이트의 가능한 예는 다음과 같다. 예컨대, 제1 SSP(710)은 번들 이동 내역에 현재 이루어지고 있는 번들 이동이 수행되는 일자와 시간 정보를 추가할 수 있다. 또한, 제1 SSP(710)은 번들 이동 내역에 적힌 번들 이동이 이루어진 횟수 정보를 1만큼 증가시킬 수 있다. 또한, 제1 SSP(710)은 번들 이동 내역에 번들을 전송한 단말의 정보로서 제1 단말(700), 제1 SSP(710), 제1 LBA(720) 중 적어도 하나의 정보를 추가시키거나, 번들을 수신한 단말의 정보로서 제2 단말(750), 제2 SSP(760), 제2 LBA(770) 중 적어도 하나의 정보를 추가할 수 있다. 또한, 제1 SSP(710)은 상기에 적힌 업데이트 내역의 무결성을 보장하기 위해 자신의 디지털 서명을 추가할 수 있다.
다양한 실시예에 따르면, 7040 단계에서 구성될 번들에는 ssp1.Cert.DS를 이용하여 생성된 디지털 서명 데이터가 추가될 수 있다. 즉, 상기에 명시된 번들의 구성 요소 일부 혹은 전체에 대하여 생성된 디지털 서명 데이터가 번들의 일부로서 추가될 수 있다. 또한, 구성될 번들의 일부 혹은 전체는 ShKey02를 이용해 암호화될 수 있다.
도 7을 참조하면, 7045 단계에서 제1 SSP(710)은 제1 LBA(720)을 거쳐 제2 LBA(770)에게 7040 단계에서 생성했던(구성된) 번들을 전달할 수 있다. 이때, 전송되는 번들과 연관된 메타데이터가 선택적으로 더 전송될 수 있다. 또한, 전송되는 번들과 연관된 "번들 이동 코드"가 선택적으로 더 전송될 수 있다. 또한, 전송되는 번들과 연관된 "번들 이동 설정"이 더 전송될 수 있다. 예를 들면, “번들 이동 설정”가 번들 또는 메타데이터에 포함되지 않고, 별도의 포맷(예컨대, 메시지)으로 전송될 수 있다. 또 이때, 제1 SSP(710)은 자신이 보유했던 번들 이동 설정을 업데이트하지 않고 전송할 수 있다. 혹은, 제1 SSP(710)은 번들 이동 설정을 전송하기 전 번들 이동 설정을 업데이트할 수 있다. 예컨대, SSP 1(710)은 번들 이동 내역에 현재 이루어지고 있는 번들 이동이 수행되는 일자와 시간 정보를 추가할 수 있다. 또한, 제1 SSP(710)은 번들 이동 내역에 적힌 번들 이동이 이루어진 횟수 정보를 1만큼 증가시킬 수 있다. 또한, 제1 SSP(710)은 번들 이동 내역에 번들을 전송한 단말의 정보로서 제1 단말(700), 제1 SSP(710), 제1 LBA(720) 중 적어도 하나의 정보를 추가시키거나, 번들을 수신한 단말의 정보로서 제2 단말(750), 제2 SSP(760), 제2 LBA(770) 중 적어도 하나의 정보를 추가할 수 있다. 마지막으로, 제1 SSP(710)이 번들 이동 설정을 업데이트해서 보내든 업데이트하지 않고 보내든 자신이 전송하는 내역의 무결성을 보장하기 위해 자신의 디지털 서명을 추가할 수 있다. 한편, 실시 예에 따라서는, 7040 단계에서 상술한 것처럼, 번들 이동 설정이 구성된 번들 내에 포함될 수 있고, 이 경우, 7045 단계의 번들 이동 설정의 전송은 생략될 수 있다.
제2 SSP(710)는 전송한 번들을 삭제할 수 있다. 또는, 전송한 번들을 사용 불가능한 상태로 설정할 수 있다.
도 8은 도 5에서 제시된 절차 중 번들이 전송된 후 전송 과정이 마무리되는 절차에 대한 세부 절차를 도시하는 도면이다. 보다 상세하게는, 도 8은 본 개시의 실시 예에 따른, 단말이 수신된 번들을 설치하고 관련된 설정을 업데이트하는 절차의 예를 도시하는 도면이다. 본 개시에서 도 8의 절차는 번들 설치 절차로 지칭될 수 있다.
다양한 실시 예에 따르면, 단말은 적어도 하나의 적어도 하나의 LBA 및 적어도 하나의 SSP를 포함할 수 있다. 예를 들면, 도 8의 예에서와 같이, 제1 단말(800)은 제1 LBA(810)과 제1 SSP(820)을 포함하고, 제2 단말(850)은 제2 LBA(860)과 제2 SSP(870)을 포함할 수 있다. 일 예로, 제1 단말(800)은 제1 SSP(810)가 장착되고 제1 SSP(810)을 제어하기 위한 제1 LBA(820)이 설치된 단말일 수 있고, 제2 단말(850)은 제2 SSP(860)가 장착되고 제2 SSP(860)을 제어하기 위한 제2 LBA(870)이 설치된 단말일 수 있다.
도 8을 참조하면, 8000 단계에서 제2 LBA(870)과 제2 SSP(860)은 서로 협업하여 제2 단말(850)에 번들을 설치할 수 있다. 만일 메타데이터가 전송된 경우, 제2 LBA(870) 혹은 제2 SSP(860)은 메타데이터에 포함된 내용을 검증할 수 있다. 만일 "번들 이동 코드"가 전송된 경우, 제2 LBA(870) 혹은 제2 SSP(860)은 수신된 번들 이동 코드가 과거 같은 세션에서 사용되었던 번들 이동 코드(예컨대, 도 7의 7025 단계)와 동일한지 여부를 검사할 수 있다. 만일 "번들 이동 설정"이 전송되었다면, 제2 LBA(870)은 이 정보를 제2 SSP(860)으로 전달할 수 있다. 만일 트랜잭션 아이디(transaction ID)가 전송되었다면, 제2 LBA(870) 혹은 제2 SSP(860)은 이 트랜잭션 아이디가 현재 세션에서 사용되었던 트랜잭션 아이디와 동일한지 여부를 검사할 수 있다. 만일 번들 식별자(SPB ID), 번들 패밀리 식별자(SPB Family ID), 번들 패밀리 관리자 식별자(SPB Family Custodian Object ID) 중 적어도 하나가 전송되었다면, 제2 LBA(870) 혹은 제2 SSP(860)은 이 정보가 현재 수신하려는 번들의 정보와 일치하는지 여부를 확인할 수 있다. 만일 ssp1.Cert.DS이 전송되었다면, 제2 SSP(860)은 이 인증서의 유효성을 검증해 제1 SSP(810)을 인증할 수 있다. 만일 전송 받은 데이터에 암호화된 데이터가 포함되어 있다면, 제2 SSP(860)은 전송 받은 ssp1.bundle.ePK.KA 와 자신의 ssp2.eSK.KA를 이용하여 세션 키 ShKey02를 생성하고, 이 세션 키를 이용해 암호화된 데이터를 복호한 뒤 검증을 수행할 수 있다. 만일 수신된 데이터에 디지털 서명이 포함되어 있다면, 제2 SSP(860)은 ssp1.Cer.DS를 검증한 뒤, 이 인증서를 이용해 디지털 서명의 유효성을 검증할 수 있다.
또한, 8000 단계에서, 만일 “번들 이동 설정”에 수신된 번들이 사용 가능한 상태로 설정되기 위하여 사용자의 추가적인 KYC(Know Your Customer) 인증이 필요하다고 설정되어 있는 경우 다음의 과정 중 일부 혹은 전체가 수행될 수 있다. 제2 단말(850)은 현재 번들이 자신의 제2 SSP(860)에 설치가 되었음을 서비스 제공자 및/또는 번들 관리 서버에 통보(notification)할 수 있다. 이 통보에는 설치된 번들의 구분자와 제2 SSP(860)의 식별자가 포함될 수 있다. 제2 단말(850)은 사용자에게 번들이 활성화되기 위하여 추가적인 KYC 인증이 필요함을 고지할 수 있다. 사용자는 서비스 제공자 및/또는 번들 관리 서버와 접촉하여 KYC 인증을 수행할 수 있다. 서비스 제공자 및/또는 번들 관리 서버는 원격 관리 명령을 통해 제2 단말(850)에 설치된 번들을 활성화시킬 수 있다.
도 8을 참조하면, 8005 단계에서 제2 SSP(860)은 수신된 번들 이동 설정을 선택적으로 업데이트할 수 있다. 이처럼, 도 8 의 8005 단계의 이 번들 이동 설정 업데이트 절차는 선택적으로(optionally) 수행되는 절차일 수 있다. 이 경우, 이 번들 이동 설정 업데이트 절차는 필요에 의해 수행되거나, 생략될 수 있다. 예를 들면, 번들 이동 설정의 업데이트 자체가 필요 없는 경우, 또는 번들 이동 설정의 업데이트는 필요하지만, 제1 단말에 의해 이미 업데이트 되었고, 이 업데이트된 설정이 제2 단말에 전달되었기 때문에, 제2 단말에 의해 다시 업데이트할 필요가 없는 경우, 도 8 의 8005 단계의 번들 이동 설정 업데이트 절차는 생략될 수 있다. 또는, 번들 이동 설정의 업데이트가 필요하고, 제2 단말에 의해 수행될 필요가 있는 경우, 도 8 의 8005 단계의 번들 이동 설정 업데이트 절차가 수행될 수 있다.
다양한 실시예에 따라, 제2 SSP(860)은 번들 이동 내역에 방금 수행된 번들 이동의 일자와 시간 정보를 추가할 수 있다. 또한, 제2 SSP(860)은 번들 이동 내역에 적힌 번들 이동이 이루어진 횟수 정보를 1만큼 증가시킬 수 있다. 또한, 제2 SSP(860)은 번들 이동 내역에 번들을 전송한 단말의 정보로서 제1 단말(800), 제1 SSP(810), 제1 LBA(820) 중 적어도 하나의 정보를 추가시키거나, 번들을 수신한 단말의 정보로서 제2 단말(850), 제2 SSP(860), 제2 LBA(870) 중 적어도 하나의 정보를 추가할 수 있다. 이를 통해, 추후 제2 SSP(860)은 업데이트 된 번들 이동 설정(번들 이동 내역)에 기초하여 해당 번들의 이동이 가능한지 여부를 확인하고, 번들 이동을 위한 요청 절차를 수행할지 여부를 결정할 수 있다.
도 9는 본 개시의 실시 예에 따른 단말의 구성을 도시하는 도면이다.
도 9 에서 도시된 바와 같이, 단말은 송수신부(Transceiver)(910) 및 적어도 하나의 프로세서(920)를 포함할 수 있다. 또한, 단말은 SSP(930)를 더 포함할 수 있다. 예를 들면, SSP(930)는 단말에 삽입될 수 있고, 단말에 내장될 수도 있다. 상기 적어도 하나 이상의 프로세서(920)는 제어부로 명명할 수도 있다. 다만, 단말의 구성은 도 9에 제한되지 않으며, 도 9에 도시된 구성 요소들보다 더 많은 구성 요소를 포함하거나, 더 적은 구성 요소를 포함할 수도 있다. 일부 실시예에 따르면, 송수신부(910), 적어도 하나의 프로세서(920) 및 메모리(미도시)는 하나의 칩(Chip) 형태로 구현될 수 있다. 또한, SSP(930)가 내장되는 경우, SSP(930)를 포함하여, 하나의 칩 형태로 구현될 수 있다.
다양한 실시예에 따르면, 송수신부(910)는 다른 단말의 송수신부 혹은 외부 서버와 본 개시의 다양한 실시 예에 따른 신호, 정보, 데이터 등을 송신 및 수신할 수 있다. 송수신부(910)는 송신되는 신호의 주파수를 상승 변환(up converting) 및 증폭하는 RF 송신기와, 수신되는 신호를 저 잡음 증폭하고 주파수를 하강 변환(down converting)하는 RF 수신기 등으로 구성될 수 있다. 다만, 이는 송수신부(910)의 일 실시예일뿐이며, 송수신부(910)의 구성요소가 RF 송신기 및 RF 수신기에 한정되는 것은 아니다. 또한, 송수신부(910)는 무선 채널을 통해 신호를 수신하여 적어도 하나의 프로세서(920)로 출력하고, 적어도 하나의 프로세서(920)로부터 출력된 신호를 무선 채널을 통해 전송할 수 있다.
다양한 실시예에 따르면, 송수신부(910)는 다른 단말의 송수신부 혹은 외부 서버로부터 다른 단말에 포함된 SSP의 정보, 다른 단말을 인증할 수 있는 인증 정보, 번들 이동 코드, 번들 이동 설정, 번들 등을 송신하거나 수신할 수 있다.
한편, 적어도 하나의 프로세서(920)는 단말을 전반적으로 제어하기 위한 구성요소이다. 적어도 하나의 프로세서(920)는 전술한 바와 같은 본 개시의 다양한 실시 예에 따라, 단말의 전반적인 동작을 제어할 수 있다.
한편, SSP(930)는 번들을 설치하고 제어하기 위한 프로세서 또는 컨트롤러를 포함하거나, 어플리케이션이 설치되어 있을 수 있다.
다양한 실시예에 따르면, SSP(930) 내의 적어도 하나의 프로세서 또는 컨트롤러는 번들 이동 설정을 확인하여 특정 번들의 전송 여부를 결정할 수 있다. 또한, 이 프로세서 또는 컨트롤러는 필요할 경우 번들 이동 설정을 업데이트할 수 있다.
또한, 다양한 실시예에 따르면 SSP 내의 적어도 하나 이상의 프로세서 또는 컨트롤러는 번들 이동 코드를 생성하여 특정 번들의 전송 과정을 제어할 수 있다. 또한, 이 번들 이동 코드는 특정한 번들과 매핑되어 제어 과정에 사용될 수 있다.
또한, 다양한 실시예에 따르면 SSP 내의 적어도 하나 이상의 프로세서 또는 컨트롤러는 자신의 SSP 정보를 생성할 수 있고, 외부로부터 전송 받은 다른 SSP의 SSP 정보를 확인하고 검증할 수 있다.
또한, 다양한 실시예에 따르면 SSP 내의 적어도 하나 이상의 프로세서 또는 컨트롤러는 자신을 검증할 수 있는 인증 정보를 생성할 수 있고, 외부로부터 전송 받은 다른 SSP의 인증 정보를 검증할 수도 있다.
또한, 다양한 실시예에 따르면 SSP(930)는 번들을 생성할 수 있고, 단독 혹은 하나 이상의 프로세서 (920)와 협력하여 번들을 설치할 수 있다. 또한, SSP(930)는 번들을 관리할 수 있다.
또한, 다양한 실시예에 따르면, SSP(930)는 프로세서(920)의 제어에 따라 동작할 수도 있다. 또는 SSP(930)는 번들을 설치하고 제어하기 위한 프로세서 또는 컨트롤러를 포함하거나, 어플리케이션이 설치되어 있을 수 있다. 어플리케이션의 일부 또는 전부는 SSP(930) 또는 메모리(미도시)에 설치되어 있을 수도 있다.
한편, 단말은 메모리(미도시)를 더 포함할 수 있으며, 단말의 동작을 위한 기본 프로그램, 응용 프로그램, 설정 정보 등의 데이터를 저장할 수 있다. 또한, 메모리는 플래시 메모리 타입(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) 중 적어도 하나의 저장매체를 포함할 수 있다. 또한, 프로세서(920)는 메모리에 저장된 각종 프로그램, 컨텐츠, 데이터 등을 이용하여 다양한 동작을 수행할 수 있다.
도 10은 본 개시의 실시 예에 따른 제1 보안 매체의 번들 전송 방법을 나타내는 순서도이다. 도 10에서는 도 1 내지 9를 참조하여 상술한 설명과 중복된 설명은 생략한다.
도 10을 참조하면, 제1 보안 매체는 제2 보안 매체로 전송될 번들을 식별할 수 있다(S1010). 이에 대하여는 도 6의 6010 단계를 참조하여 상술한 바와 같다.
제1 보안 매체는 상기 번들과 연관된 번들 이동 설정 정보에 기초하여 상기 번들의 전송이 허용되는지 여부를 결정할 수 있다(S1020). 이에 대하여는 도 6의 6010 단계를 참조하여 상술한 바와 같다.
제1 보안 매체는 상기 결정에 기초하여 상기 번들을 상기 제2 보안 매체로 전송할 수 있다(S1030). 이에 대하여는 도 5 내지 7을 참조하여 상술한 바와 같다.
다양한 실시예에 따라, 제1 보안 매체는 상기 번들의 전송을 위해 사용될 번들 이동 코드를 생성할지를 식별하고, 상기 식별에 기초하여 상기 번들 이동 코드를 생성할 수 있다.
다양한 실시예에 따라, 상기 번들 이동 코드를 상기 제2 보안 매체로 전송하는 단계를 더 포함할 수 있다.
다양한 실시예에 따라, 상기 번들 이동 코드를 생성하는 것은 상기 번들 이동 코드를 생성할 것이 식별되는 경우, 상기 번들 이동 코드를 생성하는 것을 포함할 수 있다. 이때, 상기 번들 이동 코드는 미리 설정된 번들의 고유 ID 또는 상기 번들을 식별하기 위한 새로운 ID일 수 있다.
다양한 실시예에 따라, 상기 번들 이동 설정 정보는 번들 이동 정책 정보 또는 번들 이동 내역 정보 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따라, 상기 번들 이동 정책 정보는 상기 번들의 기기 간 전송이 허용되는지를 나타내는 인디케이션을 포함할 수 있다.
다양한 실시예에 따라, 상기 번들 이동 내역 정보는 상기 번들의 이동이 이루어진 날짜와 시간에 대한 정보 또는 상기 번들의 이동이 이루어진 횟수에 대한 정보 중 적어도 하나를 포함할 수 있다.
다양한 실시예에 따라, 상기 번들 이동 설정 정보를 업데이트하는 단계를 더 포함할 수 있다.
도 11은 본 개시의 실시 예에 따른 제2 보안 매체의 번들 수신 방법을 나타내는 순서도이다. 도 11에서는 도 1 내지 10을 참조하여 상술한 설명과 중복된 설명은 생략한다.
도 11을 참조하면, 제2 보안 매체는 제1 보안 매체로부터 번들의 전송을 위해 사용될 번들 이동 코드를 수신할 수 있다(S1110). 이에 대하여는 도 7의 7010 단계를 참조하여 상술한 바와 같다.
제2 보안 매체는 상기 제1 보안 매체로 제2 보안 매체에 대한 정보를 전송할 수 있다(S1120). 이에 대하여는 도 7의 7020 단계를 참조하여 상술한 바와 같다.
제2 보안 매체는 상기 제1 보안 매체로부터 상기 제1 보안 매체를 인증하기 위한 제1 인증 정보를 수신할 수 있다(S1130). 이에 대하여는 도 7의 7020 단계를 참조하여 상술한 바와 같다.
제2 보안 매체는 상기 제1 인증 정보를 검증할 수 있다(S1140). 이에 대하여는 도 7의 7030 단계를 참조하여 상술한 바와 같다.
제2 보안 매체는 상기 검증의 결과에 기초하여 상기 제1 보안 매체로 상기 제2 보안 매체를 인증하기 위한 제2 인증 정보 및 상기 번들 이동 코드를 전송할 수 있다(S1150). 이에 대하여는 도 7의 7035 단계를 참조하여 상술한 바와 같다.
제2 보안 매체는 상기 제1 보안 매체로부터 상기 번들을 수신하는 단계를 포함할 수 있다(S1160). 이에 대하여는 도 7의 7045 단계를 참조하여 상술한 바와 같다.
도 12는 본 개시의 실시 예에 따른 두 단말 사이에서 프로파일의 전송이 이루어지기 위해 두 단말이 상호 작용하는 방법의 예를 도시하는 도면이다.
도 12에 도시된 바와 같이, 단말(1200, 1220)에는 eSIM(1203, 1223)이 장착될 수 있고, eSIM(1203, 1223)에는 프로파일(미도시)이 설치되어 있을 수 있다. 또한 단말(1200, 1220)에는 LPA(1201, 1221)가 설치되어 있을 수 있다. eSIM(1203, 1223)은 LPA(1201, 1221)의 제어될 수 있다. 사용자(1205, 1225)는 LPA(1201, 1221)를 통해 각 단말의 eSIM(1203, 1223)에 설치된 프로파일을 제어할 수 있다. 이때, 제1 사용자(1205)와 제2 사용자(1225)는 서로 동일할 수 있다. 또한 제1 LPA(1201)와 제2 LPA(1221)은 서로 연결되어 통신할 수 있다. 이때 LPA 간의 가능한 연결 방법은 후술될 도면의 설명을 참조하기로 한다.
통신사업자(1260)는 제1 RSP 서버(1240) 및 제2 RSP 서버(1280)와 연결되어 있고, 제1 단말(1200)의 LPA(1201)는 제1 RSP 서버(1240)와 연결되어 있고, 제2 단말(1220)의 LPA(1221)는 제2 RSP 서버(1280)와 연결되어 있을 수 있다. 이 때 제1 RSP 서버(1240)와 제2 RSP 서버(1280)는 서로 동일할 수도 있고, 상이할 수도 있다. 또한 하나 이상의 사업자 서버가 구성에 포함되는 경우, 각 사업자 서버는 별도의 각 RSP 서버와 연결되어 있을 수도 있고, 적어도 하나 이상의 사업자 서버가 동일한 RSP 서버에 연결되어 있을 수도 있다. 또한 도 12에는 편의상 RSP 서버(1240, 1280) 각각이 단일 서버로 구성되는 경우를 도시하였으나, 구현 및 실시예에 따라 하나 이상의 프로파일 제공서버(SM-DP+)가 서버 구성에 포함될 수 있고, 특정 프로파일 제공서버와 단말의 연결 생성을 보조하는 하나 이상의 개통중개서버(SM-DS)가 서버 구성에 포함될 수도 있다. 이와 같이 다양한 서버의 구성을 이하 도면에는 간략하게 단일 RSP 서버로 표기할 수도 있음에 유의해야 한다.
도 13은 본 개시의 실시 예에 따른 하나의 단말에서 다른 단말로 프로파일이 전송되는 절차를 도시하는 도면이다.
도 13에는 도시되지 않았으나, 단말(1300, 1350)은 도 12에 도시된 것처럼 eUICC 및 LPA를 내부에 포함할 수 있다.
도 13에는 도시되지 않았으나, 제1 단말(1300)은 '프로파일 이동 설정'을 보유하고 있을 수 있다. '프로파일 이동 설정'은 프로파일에 포함되어 있을 수도 있고, 프로파일 메타데이터에 포함되어 있을 수도 있고, 프로파일과 프로파일 메타데이터가 아닌 독립된 영역에 존재하고 있을 수도 있으며, 또는 프로파일, 프로파일 메타데이터, 독립된 영역에 중복되거나 분할되어 저장되어 있을 수도 있다. 또한, 상기 '프로파일 이동 설정'은, 해당 정보를 바탕으로 생성된 서명 정보를 적어도 하나 이상 더 포함할 수 있다. 적어도 하나 이상의 각 서명 정보는, 예를 들면, RSP 서버, 통신 사업자, 단말 제조사, eUICC, eUICC 제조사 등이 생성한 정보일 수 있다. 또한 적어도 하나 이상의 서명 정보는, 예를 들면, RSP 서버, 통신 사업자, 단말 제조사, eUICC, eUICC 제조사에 대한 인증 정보를 더 포함할 수 있다.
다양한 실시예에 따르면, '프로파일 이동 설정'은 단말 내부에 미리 보유되어 있지 않은 상태에서 필요 시점에서 획득될 수도 있다. 이 때, '프로파일 이동 설정'은 단말의 요청에 의해 통신 사업자, RSP 서버, 혹은 통신사업자와 RSP 서버의 협업에 의해 생성되어 단말로 전송될 수 있다. 또는, 통신 사업자, RSP 서버 중 적어도 하나의 주체와 단말이 서로 협업해 '프로파일 이동 설정'을 생성할 수도 있다.
다양한 실시예에 따르면, 단말 내부의 '프로파일 이동 설정'은 통신 사업자, RSP 서버, 혹은 통신 사업자와 RSP 서버의 협업에 의해 업데이트 될 수 있다. 또는, 통신 사업자, RSP 서버 중 적어도 하나의 주체와 단말이 서로 협업해 '프로파일 이동 설정'을 업데이트할 수도 있다. 업데이트가 되는 시점과 방법은 통신사업자, RSP 서버, 단말 제조 업체 등의 정책에 의해 결정될 수 있다.
다양한 실시예에 따르면,'프로파일 이동 설정'은 프로파일의 기기 간 이동 가능 여부에 대한 정책으로서, 통신사업자에 의해 생성되었을 수도 있고, RSP 서버에 의해 생성되었을 수도 있으며, 혹은 앞서 언급한 통신사업자와 RSP 서버의 협업에 의하여 생성되었을 수도 있다.
상기 언급한 '프로파일 이동 설정'에는 해당 프로파일의 기기 간 전송이 허용되는지 여부를 나타내는 인자(또는, 인디케이션)가 포함되어 있을 수 있다.
또한, 상기 '프로파일 이동 설정'에는 해당 프로파일의 기기 간 전송이 허용되는 경우 어떠한 조건 하에서 전송이 허용되는지를 명시하는 인자가 선택적으로 더 포함되어 있을 수 있다.
앞서 언급한 인자의 예로서 허용된 프로파일의 기기 간 이동 방법을 기술하는 인자가 포함될 수 있다. 가령 프로파일의 기기 간 이동 방법으로써 온라인 이동 및/또는 오프라인 이동의 허용 여부를 지칭하는 인자가 포함될 수 있다. 만일 온라인 이동과 오프라인 이동이 모두 허용되었을 경우 어떠한 기기 간 이동 방법이 선호되는지의 여부를 지칭하는 인자가 포함될 수 있다. 또한, 온라인 이동과 오프라인 이동이 모두 허용되었을 경우 하나의 방법이 실패하였을 때 다른 방법이 자동으로 실행될 수 있는지의 여부를 지칭하는 인자가 포함될 수 있다. 또한, 온라인 이동과 오프라인 이동이 모두 허용되었을 경우 하나의 방법이 실패하였을 때 다른 방법을 수행하기 위하여 사용자의 동의를 구해야 하는지의 여부를 지칭하는 인자가 포함될 수 있다. 또한, 기기 간 프로파일 이동이 실패하였을 때 리프로비저닝 (re-provisioing)의 가능 여부를 지칭하는 인자도 포함될 수 있다. 가령 온라인 또는 오프라인 기기 간 이동이 실패 시 리프로비저닝이 가능한지의 여부를 지칭하는 인자가 포함될 수 있다. 이때 리프로비저닝이 자동으로 실행될 수 있는지의 여부를 지칭하는 인자가 포함될 수 있다. 또한, 리프로비저닝을 실행하기 위하여 사용자의 동의를 구해야 하는지의 여부를 지칭하는 인자가 포함될 수 있다. 또한, 온라인 이동과 오프라인 이동, 리프로비저닝이 모두 허용되었을 때 각각의 방법이 실행되는 순서에 대한 설정이 포함될 수 있다. 가령, 먼저 오프라인 이동을 시도한 뒤 이것이 실패 시 온라인 이동을 시도하고 이마저도 실패 시 리프로비저닝을 시도하도록 설정될 수 있다. 하지만 이것은 하나의 예로써, 온라인 이동과 오프라인 이동, 그리고 리프로비저닝이 실행되는 순서는 다양한 방식으로 설정될 수 있다. 또한 온라인 이동과 오프라인 이동, 그리고 리프로비저닝이 임의의 순서로 실행 시 이 연계가 자동으로 실행될 수 있는지의 여부를 포함하는 인자가 포함될 수 있다. 혹은 온라인 이동과 오프라인 이동, 그리고 리프로비저닝이 임의의 순서로 실행 시 연계가 일어날 때마다 사용자의 동의를 받아야 하는지의 여부를 포함하는 인자가 포함될 수 있다.
또한, 앞서 언급한 인자의 다른 예로서, 프로파일을 전송할 단말이 프로파일을 수신할 단말을 인증할 경우 통신사업자 및/또는 RSP 서버로부터 전송 받은 정보를 이용해 인증을 해야 하는지의 여부를 포함하는 인자가 포함될 수 있다. 즉, 통신사업자 및/또는 RSP 서버가 자신(들)이 신뢰 및/또는 검증을 할 수 있는 단말 및/또는 eUICC와 관련된 인증 정보를 제공하고, 프로파일을 전송할 단말은 상기 정보를 사용하여 프로파일을 수신할 단말 및/또는 eUICC 가 통신사업자 및/또는 RSP 서버가 신뢰할 수 있는 단말 및/또는 eUICC 인지를 인증할 수 있다.
도 13을 참조하면, 13000 단계에서 전송될 프로파일이 선택될 수 있다. 이 선택 과정은 제1 단말(1300)이 제공하는 UI(User Interface)를 통해 사용자가 직접 프로파일을 선택하는 과정을 통해 이루어질 수도 있고, 원격 서버로부터 푸쉬 입력을 통해 제1 단말(1300)에게 입력될 수도 있으며, 또는 제1 단말(1300)이 원격 서버에 접속하여 해당 정보를 읽어올 수도 있다. 제1 단말(1300)이 사용자에게 UI를 제공하는 경우, 이 UI를 통해 단말에 설치된 모든 프로파일의 목록이 제공될 수도 있고, 또는 현재 이동이 가능한 프로파일의 목록만이 제공될 수도 있다. 현재 이동이 가능하지 않은 프로파일의 목록이 제공되는 경우, 목록에 도시된 프로파일의 이동 가능성을 나타내는 정보가 추가적으로 더 제공될 수 있다. 또한, UI를 통해 상기에 기술한 프로파일의 목록 외에도 프로파일의 정보 혹은 프로파일의 이동 정책 등의 정보가 선택적으로 더 제공될 수도 있다.
13000 단계에서, 제1 단말(1300)은 '프로파일 이동 설정'을 확인해 프로파일의 이동 가능 여부를 확인할 수 있다. 또한, 제1 단말(1300)은 '프로파일 이동 설정'을 확인해 프로파일의 이동 방법을 선택할 수 있다. 예컨대, 제1 단말(1300)은 프로파일의 이동 방법으로서 제1 단말(1300)과 제2 단말(1350)의 직접 연결(Direct connection)을 선택할 수 있다. 이 때 가능한 직접 연결의 예로는 블루투스, 와이파이, NFC 등이 있을 것이다. 또한, 제1 단말(1300)은 프로파일의 이동 방법으로서 제1 단말(1300)과 제2 단말(1350)의 원격 연결(Remote connection)을 선택할 수 있다. 예컨대, 제1 단말(1300)과 제2 단말(1350)의 사이에는 릴레이 서버가 존재할 수 있다. 이 때, 릴레이 서버는 단일 및/또는 복수 개의 RSP 서버일 수 있다. 혹은, 릴레이 서버는 단일 및/또는 복수 개의 메시지 전달을 위해 사용되는 임의의 서버일 수 있다. 혹은, 릴레이 서버는 단일 및/또는 복수 개의 RSP 서버와 단일 및/또는 복수 개의 메시지 전달을 위해 사용되는 임의의 서버의 조합일 수 있다.
도 13을 참조하면, 13005 단계에서 제1 단말(1300)과 제2 단말(1350) 사이에 연결이 생성될 수 있다. 제1 단말(1300)과 제2 단말(1350)의 연결은 직접적인 기기 간 연결일 수도 있고 (예컨대, NFC, 블루투스, UWB, WiFi-Direct, LTE D2D(device-to-device), 5G D2D) 혹은 제1 단말(1300)과 제2 단말(1350) 사이에 원격 서버(가령, 릴레이 서버) 가 위치한 원거리 연결일 수도 있다.
도 13을 참조하면, 13010 단계에서 제2 단말(1350)은 자신의 eUICC 정보(eUICC2.Info1)을 전송할 수 있다. eUICC2.Info1 은 제2 단말의 eUICC가 생성한 임의의 문자열(eUICC2.Challenge)를 포함할 수 있다. eUICC2.Info1 은 제2 단말의 eUICC가 지원하는 버전의 정보(들)을 포함할 수 있다. eUICC2.Info1 은 '제2 단말의 eUICC를 검증하는데 이용될 수 있는 인증서 정보'(들)을 포함할 수 있다. eUICC2.Info1 은 '다른 단말의 eUICC를 검증하는데 이용할 수 있는 인증서 정보'(들)을 포함할 수 있다.
도 13을 참조하면, 13015 단계에서 제1 단말(1300)은 수신한 eUICC2.Info1 을 확인할 수 있다. 제1 단말(1300)는 수신한 eUICC2.Info1을 이용해 제2 단말이 지원하는 eUICC 버전 중 자신이 지원하는 버전이 존재하는지의 여부를 확인할 수 있다. 제1 단말(1300)는 수신한 eUICC2.Info1을 이용해 자신을 검증할 수 있는 인증서 eUICC1.Cert를 선택할 수 있다. 제1 단말(1300)은 수신한 eUICC2.Info1을 이용해 제2 단말(1350)이 사용할 인증서 정보를 선택할 수 있다.
13015 단계에서 제1 단말(1300)은 “제1 단말 인증 정보(Device1.Auth)”를 생성할 수 있다. “제1 단말 인증 정보(Device1.Auth)”는 적어도 eUICC2.Info1의 일부 또는 전체를 포함할 수 있다. 예를 들면, 수신했던 eUICC2.Challenge를 포함할 수 있다. 제1 단말 인증 정보(Device1.Auth)는 제1 단말의 eUICC가 생성한 임의의 문자열(eUICC1.Challenge)를 포함할 수 있다.
“제1 단말 인증 정보(Device1.Auth)”는 제2 단말을 검증하는데 사용할 인증서 정보를 포함할 수 있다. “제1 단말 인증 정보(Device1.Auth)”는 자신을 검증할 수 있는 인증서 eUICC1.Cert와 관련 인증서 체인 정보를 포함할 수 있다.
앞서 기술한 “제1 단말 인증 정보(Device1.Auth)”의 일부 및/또는 전체는 제1 단말의 인증서 eUICC1.Cert를 사용해 전자 서명될 수 있으며, 이 전자 서명된 데이터는 “제1 단말 인증 정보(Device1.Auth)”의 일부로 포함될 수 있다.
도 13을 참조하면, 13020 단계에서 제1 단말(1300)은 제2 단말(1350)로 “제1 단말 인증 정보(Device1.Auth)”를 전송할 수 있다.
도 13을 참조하면, 13025 단계에서 제2 단말(1350)은 수신한 “제1 단말 인증 정보(Device1.Auth)”를 검증할 수 있다. 제2 단말(1350)은 “제1 단말 인증 정보(Device1.Auth)”에 포함된 eUICC1.Cert의 유효성을 검사할 수 있고, eUICC1.Cert를 이용해 “제1 단말 인증 정보(Device1.Auth)”에 포함된 서명의 유효성을 더 검사할 수 있다. 제2 단말(1350)은 “제1 단말 인증 정보(Device1.Auth)”에 포함된 eUICC2.Challege의 값이 13010 단계에서 자신이 전송한 eUICC2.Challenge의 값과 동일한지 여부를 검사할 수 있다.
제2 단말(1350)은 “제2 단말 인증 정보(Device2.Auth)”를 생성할 수 있다. “제2 단말 인증 정보(Device2.Auth)”는 적어도 Device1.Auth의 일부 또는 전체를 포함할 수 있다. 예를 들면, 수신했던 eUICC1.Challenge를 포함할 수 있다. “제2 단말 인증 정보(Device2.Auth)”는 제2 단말에 설치된 eUICC의 적합성 확인(eligibility check)을 위한 정보 eUICC2.Info2 를 포함할 수 있다. eUICC2.Info2는 추후 제1 단말로부터 수신하게 될 프로파일이 제2 단말의 eUICC에 정상적으로 설치되어 동작할 수 있는지를 판단하기 위해 사용되는 정보일 수 있다. 예컨대, eUICC2.Info2는 제2 단말에 장착된 eUICC의 하드웨어 및/또는 소프트웨어 정보를 포함할 수 있다.
“제2 단말 인증 정보(Device2.Auth)”는 자신을 검증할 수 있는 인증서 eUICC2.Cert와 관련 인증서 체인 정보를 포함할 수 있다.
앞서 기술한 “제2 단말 인증 정보(Device2.Auth)”의 일부 및/또는 전체는 제2 단말의 인증서 eUICC2.Cert를 사용해 전자 서명될 수 있으며, 이 전자 서명된 데이터는 “제2 단말 인증 정보(Device2.Auth)”의 일부로 포함될 수 있다.
도 13을 참조하면, 13030 단계에서 제2 단말(1350)은 제1 단말(1300)로 “제2 단말 인증 정보(Device2.Auth)”를 전송할 수 있다.
도 13을 참조하면, 13035 단계에서 제1 단말(1300)은 수신한 “제2 단말 인증 정보(Device2.Auth)”를 검증할 수 있다. 제1 단말(1300)은 “제2 단말 인증 정보(Device2.Auth)”에 포함된 eUICC2.Cert의 유효성을 검사할 수 있고, eUICC2.Cert를 이용해 “제2 단말 인증 정보(Device2.Auth)”에 포함된 서명의 유효성을 검사할 수 있다. 제1 단말(1300)은 “제2 단말 인증 정보 (Device2.Auth)”에 포함된 eUICC1.Challege의 값이 13020 단계에서 자신이 전송한 eUICC1.Challenge의 값과 동일한지 여부를 검사할 수 있다.
제1 단말(1300)은 “제2 단말 인증 정보 (Device2.Auth)”에 포함된 eUICC의 적합성 확인(eligibility check)을 위한 정보 eUICC2.Info2 를 확인해 자신이 전송할 프로파일이 제2 단말의 eUICC에 정상적으로 설치되어 동작할 수 있는지를 판단할 수 있다.
도 13을 참조하면, 13040 단계에서 제1 단말(1300)은 제2 단말(1350)로 프로파일 패키지를 전송할 수 있다. 제2 단말(1350)은 수신한 프로파일 패키지를 설치할 수 있다.
도 14는 도 13에 제시된 절차를 수행하던 중 단말이 프로파일 전송을 위해 RSP 서버의 승인을 요청하는 절차를 도시하는 도면이다.
본 도면에 기술된 단말(1450)은 도 13에서 기술했던 제1 단말(1300)일 수 있다.
도 13에서 설명했던 “프로파일 이동 설정”에는 프로파일의 기기 간 전송이 이루어질 시 통신사업자 및/또는 RSP 서버의 승인(Permission)이 필요한지 여부가 설정된 인자가 포함될 수 있다. 만약 프로파일의 기기 간 전송이 이루어지기 위하여 통신사업자 및/또는 RSP 서버의 승인이 필요할 경우, 승인을 받는 과정은 도 13의 13015 단계 및/또는 13035 단계의 일부로서 수행될 수 있다. 하지만 통신사업자 및/또는 RSP 서버의 허락을 받는 과정은 반드시 13015 단계 및/또는 13035 단계의 일부로서 수행되어야 하는 것이 아니며, 도 13 에 제시된 절차 중 임의의 순간에 수행될 수 있다. 어떠한 순간에 통신사업자 및/또는 RSP 서버의 허락을 받아야 하는지의 정보 역시 '프로파일 이동 설정'의 일부로서 포함되어 있을 수 있다.
만일 프로파일의 기기 간 전송이 이루어질 시 통신사업자 및/또는 RSP 서버의 승인이 필요하다면 도 13의 13000 단계 및/또는 13015 단계 및/또는 13035 단계의 일부로서 다음의 과정이 수행될 수 있다.
도 14를 참조하면, 14000 단계에서 RSP 서버(1400)과 단말(1450) 사이에 연결이 생성될 수 있다.
도 14를 참조하면, 14005 단계에서 단말(1450)이 RSP 서버(1400)로 프로파일을 수신할 제2 단말(1350)의 정보 eUICC2.Info를 보낼 수 있다.
만일 도 14의 과정이 도 13의 13015 단계에서 이루어진다면, eUICC2.Info 는 도 13에 서술된 eUICC2.Info1의 일부 및/또는 전체 정보를 포함할 수 있다.
만일 도 14의 과정이 도 13의 13035 단계에서 이루어진다면, eUICC2.Info 도 13에 서술된 eUICC2.Info1의 일부 및/또는 전체 정보를 포함할 수 있다. 또한, 도 13에 서술된 eUICC2.Info2의 일부 및/또는 전체 정보를 더 포함할 수 있다.
14005 단계에서 단말(1450)은 RSP 서버(1400)로 자신이 제2 단말(1350)로 전송하고자 하는 프로파일의 정보를 선택적으로 더 전송할 수 있다. 프로파일의 정보는, 예를 들면, 프로파일의 식별자(ICCID) 및/또는 프로파일 요약 정보(Profile Metadata)를 포함할 수 있다.
도 14를 참조하면, 14010 단계에서 RSP 서버(1400)는 수신한 eUICC2.Info를 확인해 다음의 과정을 수행할 수 있다.
RSP 서버(1400)는 수신한 eUICC2.Info를 사용해 제2 단말(1350)이 자신과 상호 검증이 가능한 대상인지를 판별할 수 있다. 예컨대, RSP 서버(1400)는 eUICC2.Info에 포함된 eUICC2.Info1의 정보를 이용하여 제2 단말(1350)과 상호 인증(mutual authentication)이 가능한지 여부를 판단할 수 있다.
RSP 서버(1400)은 수신한 eUICC2.Info를 사용해 제2 단말(1350)에 프로파일이 제대로 설치되어 동작될 수 있는지의 여부를 판단할 수 있다. 예컨대, RSP 서버(1400)는 eUICC2.Info에 포함된 eUICC2.Info2의 정보와, 수신한 프로파일의 정보를 사용해 해당 프로파일이 제2 단말(1350)에 정상적으로 설치 및 동작될 수 있는지의 여부를 결정할 수 있다.
도 14를 참조하면, 14015 단계에서 RSP 서버(1400)는 단말(1450)에게 승인 판단 결과를 전송할 수 있다. 예컨대, RSP 서버(1400)는 프로파일 전송이 승인되었음을 의미하는 메시지를 단말(1450)에게 전송할 수 있다. 또 다른 예로, RSP 서버(1400)는 프로파일 전송이 승인되지 않았음을 의미하는 메시지를 단말(1450)에게 전송할 수 있다. 이 때 RSP 서버(1400)로부터 단말(1450)에게 보내지는 메시지는 RSP 서버의 인증서를 사용해 전자 서명될 수 있으며, 이 전자 서명된 값이 함께 단말(1450)로 전송될 수 있다.
도 15는 본 개시의 실시 예에 따른 하나의 단말에서 다른 단말로 프로파일이 전송되는 절차를 개념적으로 도시하는 도면이다.
다양한 실시 예에 따르면, 단말은 적어도 하나의 LPA 및 적어도 하나의 eSIM을 포함할 수 있다. 예를 들면, 도 15의 예에서와 같이, 제1 단말(1510)은 제1 LBA(1530)과 제1 eSIM(1520)을 포함하고, 제2 단말(1560)은 제2 LPA(1580)과 제2 eSIM(1570)을 포함할 수 있다.
도 15를 참조하면, 15000 단계에서 제1 단말(1510)의 제1 LPA(1530)과 제2 단말(1560)의 제2 LPA(1570) 는 프로파일 전송을 위해 필요한 준비 절차(프로파일 전송 준비 절차)를 수행할 수 있다. 상기 절차에 대한 보다 자세한 설명은 후술될 도 16의 상세 설명을 참조하기로 한다.
도 15를 참조하면, 15005 단계에서 제1 단말(1510)과 제2 단말(1560) 사이에 상호 인증 과정이 수행될 수 있다. 상기 절차에 대한 보다 자세한 설명은 후술될 도 17의 상세 설명을 참조하기로 한다.
도 15를 참조하면, 15010 단계에서 제1 단말(1510)으로부터 제2 단말(1560)로 프로파일이 전송되고, 전송된 프로파일이 제2 단말에 설치되는 절차가 수행될 수 있다. 상기 절차에 대한 보다 자세한 설명은 후술될 도 18의 상세 설명을 참조하기로 한다.
도 16은 본 개시의 실시 예에 따른 도 15에서 제시된 절차 중 프로파일 전송을 위해 준비하는 절차에 대한 세부 절차를 도시하는 도면이다.
도 16을 참조하면, 단말은 적어도 하나의 LPA 및 적어도 하나의 eSIM을 포함할 수 있다. 예를 들면, 제1 단말(1610)은 제1 LPA(1630)과 제1 eSIM(1620)을 포함하고, 제2 단말(1660)은 제2 LPA(1680)과 제2 eSIM(1670)을 포함할 수 있다.
다양한 실시 예에 따르면, 제1 단말(1610)은 기 설치된 프로파일을 보유하고 있을 수 있으며, 기 설치된 프로파일과 연계된 메타데이터를 추가적으로 보유하고 있을 수 있다. 다양한 실시 예에 따르면, 제1 단말(1610)은 기 설치된 프로파일과 관련된 '프로파일 구분자'를 보유하고 있을 수 있다.
다양한 실시 예에 따르면, 제1 단말(1610)은 기 설치된 프로파일과 관련된 '프로파일 이동 설정'을 보유하고 있을 수 있다. 다양한 실시 예에 따르면, '프로파일 이동 설정'은 해당 프로파일의 기기 간 이동과 관련된 일련의 정책으로서, 통신사업자에 의해 생성되었을 수도 있고, RSP 서버에 의해 생성되었을 수도 있으며, 혹은 앞서 언급한 통신사업자와 RSP 서버의 협업에 의하여 생성되었을 수도 있다. 다양한 실시 예에 따르면, 단말 내부의 '프로파일 이동 설정'은 통신 사업자, RSP 서버, 혹은 통신 사업자와 RSP 서버의 협업에 의해 업데이트 될 수 있다. 또는, 통신 사업자, RSP 서버 중 적어도 하나의 주체와 단말이 서로 협업해 '프로파일 이동 설정'을 업데이트할 수도 있다. '프로파일 이동 설정'이 업데이트되는 시점 및/또는 방법은 통신사업자, RSP 서버, 단말 제조 업체 등의 정책에 의해 결정될 수 있다.
'프로파일 이동 설정'에는 해당 프로파일의 기기 간 전송이 허용되는지 여부를 나타내는 인자(또는, 인디케이션)가 포함되어 있을 수 있다. 또한, '프로파일 이동 설정'에는 해당 프로파일의 기기 간 전송이 허용되는 경우 어떠한 조건 하에서 전송이 허용되는지를 명시하는 인자가 선택적으로 더 포함되어 있을 수 있다.
예컨대, 기기 간 전송을 위해 가능한 연결의 형태가 포함되어 있을 수 있다. 이때, 기기 간 전송을 위해 허용된 연결은, 직접적인 기기 간 연결일 수도 있고 (예컨대, NFC, 블루투스, UWB, WiFi-Direct, LTE D2D(device-to-device), 5G D2D와 같은 무선 연결이나 케이블을 통한 유선 연결) 혹은 제1 LPA(1630)과 제2 LPA(1690) 사이에 원격 서버(가령, 릴레이 서버) 가 위치한 원거리 연결일 수도 있다.
또 다른 예로, 해당 프로파일이 어떠한 형태로 전송될 수 있는지가 설정되어 있을 수도 있다. 가령 프로파일은 프로파일 패키지 형태로 전송될 수도 있고, 프로파일 이미지 형태로 전송될 수도 있다. 프로파일 이동 설정에는 전술한 프로파일의 가능한 전송 형태 중 어떠한 방식(들)이 허용되는지에 대한 정보가 포함되어 있을 수 있다.
상술한 인자들은 RSP 서버, 통신 사업자, 단말 제조사, eUICC, eUICC 제조사 중 적어도 하나의 주체에 의해 전자 서명될 수 있다. 해당 전자 서명 값은 '프로파일 이동 설정'의 일부로서 혹은 '프로파일 이동 설정'과 함께 제1 단말에 저장되어 있을 수 있다
도 16을 참조하면, 16000 단계에서, 제1 LPA(1630)는 전송될 프로파일의 정보를 획득할 수 있다. 또는, 전송될 프로파일의 정보가 제1 LPA(1630)에 전달될 수 있다. 예를 들면, 제1 LPA(1630)는 전송될 프로파일의 정보를 사용자가 제1 단말(1610)이 제공하는 UI를 통해 프로파일을 선택하는 사용자 입력을 수신함으로써 획득할 수도 있고, 원격 서버로부터 푸쉬(push) 입력을 통해 전송될 프로파일의 정보가 제1 LPA(1630)에게 입력될 수도 있으며, 또는 제1 LPA(1630)가 원격 서버에 접속하여 전송될 프로파일의 정보를 읽어올 수도 있다.
도 16을 참조하면, 16005 단계에서 제1 LPA(1630)는 '프로파일 이동 설정'을 사용해 해당 프로파일의 전송 가능 여부를 확인할 수 있다. 또한, 제1 LPA(1630)는 '프로파일 이동 설정'을 확인해 해당 프로파일의 기기 간 전송을 위해 가능한 연결의 종류를 확인할 수 있다. 또한, 제1 LPA(1630)는 '프로파일 이동 설정'을 확인하여 해당 프로파일이 어떠한 형태(프로파일 이미지, 프로파일 패키지)로 전송될 수 있는지를 확인할 수 있다.
도 16을 참조하면, 16010단계에서 제1 LPA(1630)는 '프로파일 전송 코드'를 생성할 수 있다. 프로파일 전송 코드에는 전송하고자 하는 프로파일의 '프로파일 구분자'가 포함되어 있을 수 있다. 또한, 프로파일 전송 코드에는 전송하고자 하는 프로파일과 관련된 RSP 서버의 주소가 포함되어 있을 수 있다. 또한, 프로파일 전송 코드에는 프로파일의 속성을 나타내는 기타 정보들(가령, 프로파일의 메타데이터 혹은 메타데이터의 일부)이 더 포함될 수 있다. 또한, 프로파일 전송 코드에는 16020 단계에서 이루어질 두 단말 간의 연결을 위해 필요한 정보가 포함될 수 있다. 가령, 두 단말의 wi-fi 연결을 위해 필요한 정보 (예컨대, 제2 단말(1660)의 SSID 및/또는 BSSID, 두 단말의 연결 인증에 사용될 Pre Shared Key, 제2 단말(1660)의 IP address, 두 단말의 통신에 사용될 포트 넘버)가 포함될 수 있다.
도 16을 참조하면, 16015 단계에서, 16010 단계에서 생성된 프로파일 전송 코드가 제1 LPA (1630) 로부터 제2 LPA(1680)으로 전송될 수 있다. 프로파일 전송 코드는 다양한 방법으로 전송될 수 있다.
예를 들어, 제1 LPA(1630)는 제2 LPA(1680)로 전송해야 할 정보를 제1 단말(1610)의 UI를 통해 제1 단말(1610)의 제1 사용자에게 제공할 수 있다. 제1 사용자는 제공받은 정보를 제2 단말(1660)의 제2 사용자에게 제공할 수 있다. 제2 사용자는 제공받은 정보를 제2 단말(1660)의 UI를 이용해 제2 LPA(1680)에 입력할 수 있다.
혹은, 제1 LPA(1630)는 제2 LPA(1680)로 전달해야 할 정보를 이미지(예를 들어, QR 코드)의 형태로 만들어 제1 단말(1610)의 화면에 표시하고, 제2 사용자는 제1 단말(1610)의 화면에 표시된 이미지를 제2 단말(1660)을 이용해 스캔함으로써 제2 LPA(1680)에 정보를 전송할 수 있다.
혹은, 제1 LPA(1630)는 제1 LPA(1630)와 제2 LPA(1680) 사이에 연결을 수립하고 이 수립된 연결을 이용해 전송해야 할 정보를 전달할 수 있다. 이때, 제1 LPA(1630)과 제2 LPA(1680) 사이에 수립되는 연결은 직접적인 기기 간 연결(예컨대, NFC, 블루투스, UWB, WiFi-Direct, LTE D2D(device-to-device), 5G D2D 와 같은 무선 연결 및 케이블 연결과 같은 유선 연결)일 수도 있고 혹은 제1 LPA(1630)과 제2 LPA(1680) 사이에 원격 서버(가령, 릴레이 서버)가 위치한 원거리 연결일 수도 있다.
도 16를 참조하면, 16020 단계에서 제1 LPA(1630)과 제2 LPA(1680) 사이에 연결이 수립(또는, 설정)될 수 있다. 만일 16015 단계에서 연결을 위해 필요한 정보들이 전송되었다면, 제1 LPA(1630)과 제2 LPA(1680)는 이 정보를 이용해 연결을 수립할 수도 있다. 제1 LPA(1630)과 제2 LPA(1680)의 연결은 직접적인 기기 간 연결일 수도 있고 (예컨대, NFC, 블루투스, UWB, WiFi-Direct, LTE D2D(device-to-device), 5G D2D와 같은 무선 연결이나 케이블을 통한 유선 연결) 혹은 제1 LPA(1630)과 제2 LPA(1680) 사이에 원격 서버(가령, 릴레이 서버) 가 위치한 원거리 연결일 수도 있다.
도 17은 본 개시의 실시 예에 따른 도 15에서 제시된 절차 중 제1 단말(1510)과 제2 단말(1560) 간 상호 인증이 수행되는 세부 절차를 도시하는 도면이다.
도 17을 참조하면, 단말은 적어도 하나의 LPA 및 적어도 하나의 eSIM을 포함할 수 있다. 예를 들면, 제1 단말(1710)은 제1 LPA(1730)과 제1 eSIM(1720)을 포함하고, 제2 단말(1760)은 제2 LPA(1780)과 제2 eSIM(1770)을 포함할 수 있다.
도 17을 참조하면, 17000 단계에서 제2 LPA(1780)은 제2 eSIM(1770)에 Euicc2.Info1을 요청할 수 있다.
도 17을 참조하면, 17005 단계에서 제2 eSIM(1770)은 Euicc2.Info1를 형성할 수 있다. Euicc2.Info1은 다음의 정보들을 포함할 수 있다.
- 제1 eSIM이 제2 eSIM을 검증하기 위해 사용할 수 있는 인증서 정보들
- 제2 eSIM이 제1 eSIM을 검증하기 위해 사용할 수 있는 인증서 정보들
- 제2 단말이 지원하는 버전 정보들
또한, 제2 eSIM은 제2 LPA(1780)에게 Euicc2.Info1를 제공할 수 있다.
도 17을 참조하면, 17010 단계에서 제2 LPA(1780)은 제2 eSIM(1770)에게 Euicc2.Challenge를 요청할 수 있다.
도 17을 참조하면, 17015 단계에서 제2 eSIM(1770)은 Euicc2.Challenge를 생성할 수 있다. Euicc2.Challenge는 제2 eSIM(1770)이 생성한 임의의 난수일 수 있다. 제2 eSIM(1770)은 제2 LPA(1780)에게 Euicc2.Challenge를 제공할 수 있다.
도 17을 참조하면, 17020 단계에서 제2 LPA(1780)은 제1 LPA(1730)을 거쳐 제1 eSIM(1720)에게 Euicc2.Info1을 제공할 수 있다. 또한, 제2 LPA(1780)은 제1 LPA(1730)을 거쳐 제1 eSIM(1720)에게 Euicc2.Challenge를 제공할 수 있다. 이때, 제1 LPA(1730)는 제1 eSIM(1720)에게 전송하고자 하는 프로파일의 '프로파일 구분자'를 더 제공할 수 있다.
도 17을 참조하면, 17025 단계에서 다음의 과정이 수행될 수 있다.
제1 eSIM(1720)은 Euicc2.Info1에 포함된 '제2 eSIM이 제1 eSIM을 검증하기 위해 사용할 수 있는 인증서 정보들'을 이용하여 자신이 사용할 인증서 Euicc1.Certificate를 선택할 수 있다.
제1 eSIM(1720)은 Euicc2.Info1에 포함된 '제1 eSIM이 제2 eSIM을 검증하기 위해 사용할 수 있는 인증서 정보들'을 이용하여 제2 eSIM(1770)이 사용할 인증서를 선택할 수 있다. 이때 선택된 인증서 정보 혹은 선택된 인증서를 지칭할 수 있는 정보는 euiccCiPKIdToBeUsed라 불릴 수 있다.
제1 eSIM(1720)은 수신한 프로파일 구분자와 연관된 프로파일의 '프로파일 이동 설정'을 확인할 수 있다. 제1 eSIM(1720)은 해당 프로파일이 기기 간 전송을 통해 전송될 수 있는지 여부를 검사할 수 있다.
제1 eSIM(1720)은 Euicc2.Info1에 포함된 제2 단말이 지원하는 버전 정보들을 확인하여 그 중 자신이 지원하는 버전이 존재하는지 여부를 확인할 수 있다.
제1 eSIM(1720)은 향후 제2 eSIM과의 통신을 지칭하기 위해 사용되는 세션 아이디(Transaction ID)를 생성할 수 있다.
제1 eSIM(1720)은 Euicc1.Challenge를 생성할 수 있다. Euicc1.Challenge는 제1 eSIM(1720)이 생성한 임의의 난수일 수 있다.
제1 eSIM(1720)은 아래의 값들 중 전체 및/또는 일부에 전자 서명을 할 수 있다. 이때 전자 서명은 Euicc1.Certificate를 이용해 수행될 수 있다.
- Transaction ID
- Euicc1.Challenge
- Euicc2.Challenge
제1 eSIM(1720)은 제1 LPA(1730)을 거쳐 제2 LPA(1780)에게 다음의 데이터 전체 및/또는 일부를 전송할 수 있다.
- Transaction ID 및/또는 Euicc1.Challenge 및/또는 Euicc2.Challenge 와 이들의 전자 서명 값
- euiccCiPKIdToBeUsed
- Euicc1.Certificate
상기의 제공되는 데이터는 Device1.Auth1이라 지칭될 수 있다.
도 17을 참조하면, 17030 단계에서 제2 LPA(1780)은 제2 eSIM(1770)에게 다음의 데이터 전체 및/또는 일부를 전송할 수 있다.
- Device1.Auth1
- 제1 단말이 제2 단말로 전송하려는 프로파일의 프로파일 구분자
도 17을 참조하면, 17035 단계에서 다음의 과정이 수행될 수 있다.
제2 eSIM(1770)은 Euicc1.Certificate의 유효성을 검증할 수 있다.
제2 eSIM(1770)은 Device1.Auth1에 포함된 전자 서명 값을 검증할 수 있다.
제2 eSIM(1770)은 Device1.Auth1에 포함된 Euicc2.Challenege가 17020 단계에서 자신이 전송하였던 Euicc2.Challenge와 동일한 값인지 검사할 수 있다.
제2 eSIM(1770)은 euiccCiPKIdToBeUsed를 이용해 자신이 사용할 인증서 Euicc2.Certificate를 선택할 수 있다.
제2 eSIM(1770)은 아래의 값들 중 전체 및/또는 이룹에 전자 서명을 할 수 있다. 이때 전자 서명은 Euicc2.Certificate를 이용해 수행될 수 있다.
- Transaction ID
- Euicc1.Challenge
- Euicc2.Info2. 여기서 Euicc2.Info2는, '제1 단말이 제2 단말로 전송하는 프로파일'이 제2 단말에 설치되어 작동될 수 있는지 적합성 확인(eligibility check)을 하는데 이용될 수 있는 정보일 수 있다. 예컨대, Euicc2.Info2는 제2 eSIM의 하드웨어 및/또는 소프트웨어 정보를 포함할 수 있다.
- 제1 단말이 제2 단말로 전송하려는 프로파일의 프로파일 구분자
제2 eSIM(1770)은 제2 LPA(1780)와 제1 LPA(1730)을 거쳐 제1 eSIM(1720)에게 다음의 데이터 전체 및/또는 일부를 전송할 수 있다.
- Transaction ID 및/또는 Euicc1.Challenge 및/또는 Euicc2.Info2 및/또는 '제1 단말이 제2 단말로 전송하려는 프로파일의 프로파일 구분자'와 이들의 전자 서명 값
- Euicc2.Certificate
상기의 데이터는 Device2.Auth1이라 지칭될 수 있다.
도 18은 본 개시의 실시 예에 따른 도 15에서 제시된 절차 중, 제1 단말(1810)으로부터 제2 단말(1860)로 프로파일이 전송되고, 전송된 프로파일이 제2 단말에 설치되는 세부 절차를 도시하는 도면이다.
도 18을 참조하면, 단말은 적어도 하나의 LPA 및 적어도 하나의 eSIM을 포함할 수 있다. 예를 들면, 제1 단말(1810)은 제1 LPA(1830)과 제1 eSIM(1820)을 포함하고, 제2 단말(1860)은 제2 LPA(1880)과 제2 eSIM(1870)을 포함할 수 있다.
도 18을 참조하면, 18000 단계에서 다음의 과정이 수행될 수 있다.
제1 eSIM(1820)은 Euicc2.Certificate의 유효성을 검증할 수 있다.
제1 eSIM(1820)은 Device2.Auth1에 포함된 전자 서명 값을 검증할 수 있다.
제1 eSIM(1820)은 Device2.Auth1에 포함된 Euicc1.Challenege가 17025 단계에서 자신이 전송하였던 Euicc1.Challenge와 동일한 값인지 검사할 수 있다.
제1 eSIM(1820)은 Device2.Auth1에 포함된 프로파일 구분자를 확인하여 자신이 전송하려는 프로파일을 특정 지을 수 있다. 혹은, Device2.Auth1에 포함된 프로파일 구분자가 17020 단계에서 수신한 프로파일 구분자와 일치하는지 여부를 검사할 수 있다.
제1 eSIM(1820)은 수신한 프로파일 구분자와 연관된 프로파일의 '프로파일 이동 설정'을 확인할 수 있다. 제1 eSIM(1820)은 해당 프로파일이 기기 간 전송을 통해 전송될 수 있는지 여부를 검사할 수 있다. 제1 eSIM(1820)은 해당 프로파일이 어떠한 방식으로 연결된 기기 간 전송을 통해 전송될 수 있는지 확인할 수 있다. 제1 eSIM(1820)은 해당 프로파일이 어떠한 형태(가령, 프로파일 이미지 및/또는 프로파일 패키지)로 전송될 수 있는지 여부를 확인할 수 있다.
제1 eSIM(1820)은 해당 프로파일이 제2 단말 (예컨대, 제2 eSIM)에 정상적으로 설치되어 동작할 수 있는지 적합성 확인(eligibility check)을 할 수 있다. 이때, 적합성 확인을 위해 프로파일 구분자와 Euicc2.Info2가 사용될 수 있다.
전술한 과정들을 통해, 제1 eSIM(1820)은 해당 프로파일이 어떠한 형태로 전송될 수 있는지를 정한 후 이 값을 이용해 transferOption을 생성할 수 있다. transferOption은 다음의 방법 중 어떠한 형태(들)로 해당 프로파일이 전송될 수 있는지에 대한 정보를 포함할 수 있다.
- 프로파일 이미지
- 프로파일 패키지
제1 eSIM(1820)은 아래의 값들 중 전체 및/또는 일부에 전자 서명을 할 수 있다. 이때 전자 서명은 Euicc1.Certificate를 이용해 수행될 수 있다.
- Transaction ID
- transferOption
제1 eSIM(1820)은 제1 LPA(1830)과 제2 LPA(1880)을 거쳐 제2 eSIM(1870)에게 Tranction ID 및/또는 transferOption과 이들의 전자 서명 값을 전송할 수 있다. 이때 전송되는 값은 Device1.Auth2라 불릴 수 있다.
제1 단말(1810)은 수신한 transferOption을 확인하고 해당 형태로 프로파일이 전송되는 것에 대하여 사용자 동의를 받을 수 있다.
도 18을 참조하면, 18005 단계에서 다음의 과정이 수행될 수 있다.
제2 eSIM(1870)은 Device1.Auth2에 포함된 전자 서명 값을 검증할 수 있다.
제2 eSIM(1870)은 transferOption을 확인하여 자신이 어떠한 형태로 프로파일을 전송 받게 될지 확인할 수 있다.
제2 eSIM(1870)은 제1 eSIM(1820)과 암호화 통신을 위해 사용될 세션 키 생성을 위해 필요한 자신의 암호화 키 쌍(예컨대, 공개키 otPK.EUICC2.KA와 이에 대응되는 비밀키 otSK.EUICC2.KA)을 생성할 수 있다.
제2 eSIM(1870)은 아래의 값들 중 전체 및/또는 일부에 전자 서명을 할 수 있다. 이때 전자 서명은 Euicc2.Certificate를 이용해 수행될 수 있다.
- Transaction ID
- otPK.EUICC2.KA
제2 eSIM(1870)은 제2 LPA(1880)과 제1 LPA(1830)을 거쳐 제1 eSIM(1820)에게 Transaction ID 및/또는 otPK.EUICC2.KA 와 이들의 전자 서명 값을 전송할 수 있다. 이때 전송되는 값은 Device2.Auth2라 불릴 수 있다.
도 18을 참조하면, 18010 단계에서 다음의 과정이 수행될 수 있다.
제1 eSIM(1820)은 Device2.Auth2에 포함된 전자 서명 값을 검증할 수 있다.
제1 eSIM(1820)은 제2 eSIM(1870)과 암호화 통신을 위해 사용될 세션 키 생성을 위해 필요한 자신의 암호화 키 쌍(예컨대, 공개키 otPK.EUICC1.KA와 이에 대응되는 비밀키 otSK.EUICC1.KA)을 생성할 수 있다.
제1 eSIM(1820)은 자신이 생성한 otSK.EUICC1.KA 와 수신한 otPK.EUICC2.KA를 사용해 제2 단말(1860)과의 암호화 통신을 위한 세션 키를 생성할 수 있다.
제1 eSIM(1820)은 제2 단말(1860)로 전송할 프로파일 이미지 및/또는 프로파일 패키지를 준비할 수 있다. 이때 준비된 프로파일 이미지 또는 프로파일 패키지는 묶인 프로파일 패키지(Bound Profile Package) 또는 묶인 프로파일 이미지(Bound Profile Image)라 불릴 수 있다. 또한, 묶인 프로파일 패키지와 묶인 프로파일 이미지는 Bound Profile이라 통칭될 수 있다.
이 준비 과정에서, '전송할 프로파일 이미지 및/또는 프로파일 패키지'의 전체 및/또는 일부는 앞서 생성한 세션 키에 의해 암호화될 수 있다. 또한, '전송할 프로파일 이미지 및/또는 프로파일 패키지'의 전체 및/또는 일부는 Euicc1.Certificate를 이용해 전자 서명될 수 있으며 이 값은 Bound Profile의 일부로 포함될 수 있다. 또한, otPK.EUICC1.KA가 Bound Profile의 일부로 포함될 수 있다.
제1 eSIM(1820)은 제1 LPA(1830)를 거쳐 제2 LPA(1880) 에게 Bound Profile을 전송할 수 있다. 이때 해당 프로파일과 연관된 메타데이터가 함께 전송될 수 있다. 이때 메타데이터는 Bound Profile의 일부로 포함되어 있을 수도 있고, Bound Profile과 별개의 데이터로 전송될 수도 있다.
제1 eSIM(1820)은 해당 프로파일을 삭제할 수 있다.
도 18을 참조하면, 18015 단계에서 다음의 과정이 수행될 수 있다.
제2 단말(1860)은 전송한 메타데이터를 확인할 수 있다.
제2 단말(1860)은 수신한 Bound Profile의 설치와 관련되어 사용자 동의를 받을 수 있다.
제2 단말(1860)은 수신한 Bound Profile을 제2 eSIM(1870)에 설치할 수 있다. 이 과정은 제2 LPA(1880)와 제2 eSIM(1870)의 협업에 의해 이루어질 수 있다. 이 과정에서 Bound Profile에 암호화된 데이터가 있다면, 제2 eSIM(1870)은 otSK.EUICC2.KA 와 otPK.EUICC1.KA를 사용해 세션 키를 생성한 뒤, 이 키를 이용해 데이터를 복호할 수 있다. 또한, Bound Profile에 전자 서명 값이 포함되어 있다면, 제2 eSIM(1870)은 Euicc1.Certificate를 이용해 전자 서명 값의 유효성을 검증할 수 있다.
상술한 본 개시의 구체적인 실시 예들에서, 개시에 포함되는 구성 요소는 제시된 구체적인 실시 예에 따라 단수 또는 복수로 표현되었다. 그러나, 단수 또는 복수의 표현은 설명의 편의를 위해 제시한 상황에 적합하게 선택된 것으로서, 본 개시가 단수 또는 복수의 구성 요소에 제한되는 것은 아니며, 복수로 표현된 구성 요소라 하더라도 단수로 구성되거나, 단수로 표현된 구성 요소라 하더라도 복수로 구성될 수 있다.
한편 본 개시의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 개시의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 개시의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.
본 개시의 다양한 실시 예들 및 이에 사용된 용어들은 본 개시에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 개시에서, "A 또는 B", "A 및/또는 B 중 적어도 하나", "A, B 또는 C" 또는 "A, B 및/또는 C 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제1", "제2", "첫째" 또는 "둘째" 등의 표현들은 해당 구성요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 어떤(예: 제1) 구성요소가 다른(예: 제2) 구성요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다.
본 개시에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 모듈은 ASIC(application-specific integrated circuit)으로 구성될 수 있다.
본 개시의 다양한 실시 예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media)(예: 내장 메모리 또는 외장 메모리에 저장된 명령어를 포함하는 소프트웨어(예: 프로그램)로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 다양한 실시 예들에 따른 단말을 포함할 수 있다. 상기 명령이 프로세서(예: 도 9의 프로세서(920))에 의해 실행될 경우, 프로세서가 직접, 또는 상기 프로세서의 제어 하에 다른 구성요소들을 이용하여 상기 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다.
기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
본 개시에 개시된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.다양한 실시 예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시 예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.

Claims (20)

  1. 제1 보안 매체의 방법에 있어서,
    제2 보안 매체로 전송될 번들을 식별하는 단계;
    상기 번들과 연관된 번들 이동 설정 정보에 기초하여 상기 번들의 전송이 허용되는지 여부를 결정하는 단계; 및
    상기 결정에 기초하여 상기 번들을 상기 제2 보안 매체로 전송하는 단계를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 번들의 전송을 위해 사용될 번들 이동 코드를 생성할지를 식별하는 단계; 및
    상기 식별에 기초하여 상기 번들 이동 코드를 생성하는 단계를 더 포함하는, 방법.
  3. 제1항에 있어서,
    상기 번들 이동 코드를 상기 제2 보안 매체로 전송하는 단계를 더 포함하는, 방법.
  4. 제2항에 있어서,
    상기 번들 이동 코드를 생성하는 단계는:
    상기 번들 이동 코드를 생성할 것이 식별되는 경우, 상기 번들 이동 코드를 생성하는 단계를 포함하고,
    상기 번들 이동 코드는 미리 설정된 번들의 고유 ID 또는 상기 번들을 식별하기 위한 새로운 ID인, 방법.
  5. 제1항에 있어서,
    상기 번들 이동 설정 정보는 번들 이동 정책 정보 또는 번들 이동 내역 정보 중 적어도 하나를 포함하는, 방법.
  6. 제5항에 있어서,
    상기 번들 이동 정책 정보는 상기 번들의 기기 간 전송이 허용되는지를 나타내는 인디케이션을 포함하는, 방법.
  7. 제5항에 있어서,
    상기 번들 이동 내역 정보는 상기 번들의 이동이 이루어진 날짜와 시간에 대한 정보 또는 상기 번들의 이동이 이루어진 횟수에 대한 정보 중 적어도 하나를 포함하는, 방법.
  8. 제1항에 있어서,
    상기 번들 이동 설정 정보를 업데이트하는 단계를 더 포함하는, 방법.
  9. 제1 보안 매체에 있어서,
    트랜시버; 및
    상기 트랜시버에 연결된 적어도 하나의 프로세서를 포함하며,
    상기 적어도 하나의 프로세서는:
    제2 보안 매체로 전송될 번들을 식별하고,
    상기 번들과 연관된 번들 이동 설정 정보에 기초하여 상기 번들의 전송이 허용되는지 여부를 결정하고, 그리고
    상기 결정에 기초하여 상기 번들을 상기 제2 보안 매체로 전송하는, 제1 보안 매체.
  10. 제9항에 있어서,
    상기 적어도 하나의 프로세서는:
    상기 번들의 전송을 위해 사용될 번들 이동 코드를 생성할지를 식별하고,
    상기 식별에 기초하여 상기 번들 이동 코드를 생성하는, 제1 보안 매체.
  11. 제9항에 있어서,
    상기 적어도 하나의 프로세서는:
    상기 번들 이동 코드를 상기 제2 보안 매체로 전송하는, 제1 보안 매체.
  12. 제11항에 있어서,
    상기 번들 이동 코드를 생성하는 것은:
    상기 번들 이동 코드를 생성할 것이 식별되는 경우, 상기 번들 이동 코드를 생성하는 것을 포함하고,
    상기 번들 이동 코드는 미리 설정된 번들의 고유 ID 또는 상기 번들을 식별하기 위한 새로운 ID인, 제1 보안 매체.
  13. 제9항에 있어서,
    상기 번들 이동 설정 정보는 번들 이동 정책 정보 또는 번들 이동 내역 정보 중 적어도 하나를 포함하는, 제1 보안 매체.
  14. 제13항에 있어서,
    상기 번들 이동 정책 정보는 상기 번들의 기기 간 전송이 허용되는지를 나타내는 인디케이션을 포함하는, 제1 보안 매체.
  15. 제14항에 있어서,
    상기 번들 이동 내역 정보는 상기 번들의 이동이 이루어진 날짜와 시간에 대한 정보 또는 상기 번들의 이동이 이루어진 횟수에 대한 정보 중 적어도 하나를 포함하는, 제1 보안 매체.
  16. 제9항에 있어서,
    상기 적어도 하나의 프로세서는:
    상기 번들 이동 설정 정보를 업데이트하는, 제1 보안 매체.
  17. 제2 보안 매체의 방법에 있어서,
    제1 보안 매체로부터 번들의 전송을 위해 사용될 번들 이동 코드를 수신하는 단계;
    상기 제1 보안 매체로 제2 보안 매체에 대한 정보를 전송하는 단계;
    상기 제1 보안 매체로부터 상기 제1 보안 매체를 인증하기 위한 제1 인증 정보를 수신하는 단계;
    상기 제1 인증 정보를 검증하는 단계;
    상기 검증의 결과에 기초하여 상기 제1 보안 매체로 상기 제2 보안 매체를 인증하기 위한 제2 인증 정보 및 상기 번들 이동 코드를 전송하는 단계; 및
    상기 제1 보안 매체로부터 상기 번들을 수신하는 단계를 포함하는, 방법.
  18. 제17항에 있어서,
    상기 번들을 수신하는 단계는:
    상기 번들과 연관된 번들 이동 설정을 수신하는 단계를 더 포함하는, 방법.
  19. 제2 보안 매체에 있어서,
    트랜시버; 및
    상기 트랜시버에 연결된 적어도 하나의 프로세서를 포함하며,
    상기 적어도 하나의 프로세서는:
    제1 보안 매체로부터 번들의 전송을 위해 사용될 번들 이동 코드를 수신하고,
    상기 제1 보안 매체로 제2 보안 매체에 대한 정보를 전송하고,
    상기 제1 보안 매체로부터 상기 제1 보안 매체를 인증하기 위한 제1 인증 정보를 수신하고,
    상기 제1 인증 정보를 검증하고,
    상기 검증의 결과에 기초하여 상기 제1 보안 매체로 상기 제2 보안 매체를 인증하기 위한 제2 인증 정보 및 상기 번들 이동 코드를 전송하고,
    상기 제1 보안 매체로부터 상기 번들을 수신하는, 제2 보안 매체.
  20. 제19항에 있어서,
    상기 번들을 수신하는 것은:
    상기 번들과 연관된 번들 이동 설정을 수신하는 것을 더 포함하는, 제2 보안 매체.
KR1020200086799A 2019-08-16 2020-07-14 기기 간 번들 이동 방법 및 장치 KR20210020770A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
PCT/KR2020/010889 WO2021034048A1 (ko) 2019-08-16 2020-08-14 기기 간 번들 이동 방법 및 장치
EP20854614.3A EP3993343A4 (en) 2019-08-16 2020-08-14 METHOD AND DEVICE FOR MOVING A BEAM BETWEEN DEVICES
CN202080071810.XA CN114556887A (zh) 2019-08-16 2020-08-14 用于在设备之间传送捆绑包的方法和设备
US17/635,346 US20220278985A1 (en) 2019-08-16 2020-08-14 Method and device for transferring bundle between devices

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
KR1020190100350 2019-08-16
KR20190100350 2019-08-16
KR1020190151238A KR20210020725A (ko) 2019-08-16 2019-11-22 기기 간 번들 이동 방법 및 장치
KR1020190151238 2019-11-22
KR1020200021608 2020-02-21
KR1020200021608A KR20210020744A (ko) 2019-08-16 2020-02-21 기기 간 번들 이동 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20210020770A true KR20210020770A (ko) 2021-02-24

Family

ID=74689307

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020200021608A KR20210020744A (ko) 2019-08-16 2020-02-21 기기 간 번들 이동 방법 및 장치
KR1020200086799A KR20210020770A (ko) 2019-08-16 2020-07-14 기기 간 번들 이동 방법 및 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020200021608A KR20210020744A (ko) 2019-08-16 2020-02-21 기기 간 번들 이동 방법 및 장치

Country Status (1)

Country Link
KR (2) KR20210020744A (ko)

Also Published As

Publication number Publication date
KR20210020744A (ko) 2021-02-24

Similar Documents

Publication Publication Date Title
KR102536948B1 (ko) Ssp의 번들을 관리하는 방법 및 장치
CN112956155B (zh) Ssp设备和服务器协商数字证书的装置和方法
KR102546972B1 (ko) 프로파일 원격관리 예외 처리 방법 및 장치
US20240171981A1 (en) Method and device for changing euicc terminal
US20240015508A1 (en) Method and device for remote management and verification of remote management authority
US11950320B2 (en) Apparatus and methods for linkage of or profile transfer between devices
KR20220039417A (ko) 기기 변경 시 서로 다른 버전의 프로파일 이동을 위한 방법 및 장치
KR20210020770A (ko) 기기 간 번들 이동 방법 및 장치
KR20200102902A (ko) SSP 단말의 번들 다운로드 과정과 eSIM 프로파일 다운로드 과정 호환 연동 방법
US20220278985A1 (en) Method and device for transferring bundle between devices
US20220385670A1 (en) Method and device for setting state of bundle after transfer of bundle between apparatuses
KR20210034475A (ko) 기기 간 번들 또는 프로파일 이동 시 기기 간 상호 인증 방법 및 장치
KR20210020725A (ko) 기기 간 번들 이동 방법 및 장치
KR102180481B1 (ko) 번들 정보를 제공하는 방법 및 장치
KR20210116169A (ko) 기기 간 번들 또는 프로파일 온라인 이동 방법 및 장치
KR102637120B1 (ko) eUICC 프로파일 설치 권한을 관리하는 방법 및 장치
JP7383693B2 (ja) プロファイル遠隔管理権限設定方法、その装置及びそのシステム
US20220377081A1 (en) Mutual device-to-device authentication method and device during device-to-device bundle or profile transfer
KR20210034522A (ko) 기기 간 번들 이동 후 번들의 상태를 설정하는 방법 및 장치
KR20210110145A (ko) 원격 관리 및 원격 관리 권한 검증 방법 및 장치
KR20200130044A (ko) 인증서 관리 및 검증 방법 및 장치
KR20220027002A (ko) 기기 변경 실패 시 프로파일 복구 방법 및 장치
KR20220153456A (ko) eUICC 단말을 변경시 프로파일 삭제를 확인하는 방법 및 장치
KR20210123191A (ko) 스마트 보안 매체를 위한 이벤트 관리 방법 및 장치

Legal Events

Date Code Title Description
A201 Request for examination