Method and apparatus for managing events of an intelligent security platform
Through the remote control of the bundle of discovery services of the event management server and the smart security platform terminal, the problem of low bundle management efficiency in the smart security platform is solved, and higher security and management efficiency are achieved.
Patent Information
- Application Number
- CN202180025739.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-08-25
- Filing Date
- 2021-04-02
- Publication Date
- 2025-03-07
- Estimated Expiration
- 2041-04-02
AI Technical Summary
The existing technology is difficult to effectively manage bundles in smart security platforms, resulting in security and management efficiency issues.
Through the discovery service between the event management server and the intelligent security platform terminal, the bundles installed in the intelligent security platform are remotely controlled to realize the management and update of the bundles.
Improve the security and management efficiency of the intelligent security platform, ensuring timely updates and security management of bundles.
Smart Images

Figure CN115362700B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to a method and apparatus for remotely controlling a bundle installed in a smart security platform by using a discovery service provided by an event management server and a terminal including the smart security platform; and installing the bundle in the smart security platform; and particularly to operations of a terminal and an event management server and configurations related to a method in which the terminal obtains predetermined information required for remotely controlling a bundle installed in a smart security platform or installing a bundle in the smart security platform from the event management server. Background Art
[0002] In order to meet the increased demand for wireless data services since the deployment of 4G communication systems, efforts have been made to develop improved 5G or pre-5G communication systems. Therefore, 5G or pre-5G communication systems are also referred to as "beyond 4G networks" or "post-Long Term Evolution (LTE) systems". 5G communication systems are considered to be implemented in higher frequency (millimeter wave (mmWave)) bands (e.g., 60GHz bands) in order to achieve higher data rates. In order to reduce the propagation loss of radio waves and increase the transmission distance, beamforming, massive multiple-input multiple-output (MIMO), full-dimensional MIMO (FD-MIMO), array antennas, analog beamforming, and massive antenna technology are discussed in 5G communication systems. In addition, in 5G communication systems, development of system network improvements is underway based on advanced small cells, cloud radio access networks (RANs), ultra-dense networks, device-to-device (D2D) communications, wireless backhaul, mobile networks, collaborative communications, collaborative multi-point (CoMP), receiving-end interference elimination, etc. In the 5G system, hybrid FSK (Frequency Shift Keying) and QAM (Quadrature Amplitude Modulation) modulation (FQAM) and sliding window superposition coding (SWSC) as advanced coding modulation (ACM) have been developed, and filter bank multi-carrier (FBMC), non-orthogonal multiple access (NOMA), and sparse code multiple access (SCMA) as advanced access technologies have been developed.
[0003] The Internet is a human-centered connected network in which humans generate and consume information, and is now developing towards the Internet of Things (IoT) in which distributed entities (such as things) exchange and process information without human intervention. The Internet of Everything (IoE) has emerged through the combination of IoT technology and big data processing technology connected to cloud servers. As technical elements required for the realization of IoT, such as "sensing technology", "wired / wireless communication and network infrastructure", "service interface technology" and "security technology", sensor networks, machine-to-machine (M2M) communication, machine type communication (MTC), etc. have been studied recently. Such an IoT environment can provide intelligent Internet technology services to create new value for human life by collecting and analyzing data generated between connected things. Through the integration and combination between existing information technology (IT) and various industrial applications, IoT can be applied to various fields, including smart homes, smart buildings, smart cities, smart cars or connected cars, smart grids, healthcare, smart appliances, and advanced medical services.
[0004] In line with this, various attempts have been made to apply 5G communication systems to IoT networks. For example, technologies such as sensor networks, machine type communications (MTC), and machine-to-machine (M2M) communications can be implemented through beamforming, MIMO, and array antennas. Cloud radio access networks (RANs) as an application of the above-mentioned big data processing technologies can also be considered as an example of the convergence between 5G technologies and IoT technologies.
[0005] At the same time, discussions are ongoing on the introduction of secure elements to further improve endpoint security. Specifically, methods for effective incident management using secure elements and bundles installed therein are being studied.
[0006] The above information is presented as background information only to assist in understanding the present disclosure. No determination has been made, and no assertion has been made, as to whether any of the above might be applicable as prior art to the present disclosure. Summary of the invention
[0007] Technical issues
[0008] The present disclosure provides a method and apparatus for effective event management using a secure element and a bundle installed therein.
[0009] Technical Solution
[0010] One aspect of the present disclosure is to provide, in one embodiment, a method performed by a terminal in a wireless communication system, wherein the terminal includes a secure element (SE) and an assistant application associated with the SE, the method comprising: sending, by the assistant application, a first message for discovering an event associated with the terminal to a server associated with a discovery service of the terminal, the first message including an identifier associated with the SE; receiving, in response to the first message, from the server a second message including information about whether the event is stored in the server; in the case where the event is stored in the server, sending, by the assistant application, a third message for retrieving the event to the server; and in the case where the terminal is authenticated by the server, receiving, in response to the third message, a fourth message including information about the event from the server.
[0011] According to another embodiment of the present disclosure, the assistant application is configured with a server address, wherein the server address is configured by a family identifier or a custodian identifier, and a primary platform identifier (PPID) of the terminal is displayed together with the server address based on a user request.
[0012] Furthermore, according to another embodiment of the present disclosure, an identifier is generated based on a primary platform identifier (PPID) of a terminal and a server address, and the identifier is used to discover an event stored in the server.
[0013] According to another embodiment of the present disclosure, the method also includes sending, by the assistant application, a fifth message including a request for a push-based event notification to the server; receiving, in response to the fifth message, a sixth message from the server including an indication of whether the server accepts the request; and receiving a notification of event registration from the server if the indication indicates that the server accepts the request and an event associated with the push-based event notification is registered.
[0014] According to another embodiment of the present disclosure, the SE includes a smart secure platform (SSP) or a universal integrated circuit card (UICC), the assistant application includes a local bundle assistant (LBA) or a local profile assistant (LPA), and the server includes an SSP service discovery (SSPDS) or a subscription manager discovery server (SM-DS).
[0015] Another embodiment of the present disclosure provides a method performed by a server associated with a discovery service of a terminal in a wireless communication system, wherein the terminal includes a security element (SE) and an assistant application associated with the SE, the method including: receiving a first message from the terminal for discovering an event associated with the terminal, the first message including an identifier associated with the SE; in response to the first message, sending a second message to the terminal including information about whether the event is stored in the server; in a case where the event is stored in the server, receiving a third message from the terminal for retrieving the event; authenticating the terminal based on the first message and the third message; and in a case where the terminal is authenticated by the server, sending a fourth message to the terminal including information about the event in response to the third message.
[0016] Another embodiment of the present disclosure provides a terminal in a wireless communication system, wherein the terminal includes a security element (SE) and an assistant application associated with the SE, and the terminal includes: a transceiver configured to send and receive signals; and a controller coupled to the transceiver and configured to: send a first message for discovering an event associated with the terminal to a server associated with a discovery service of the terminal by the assistant application, the first message including an identifier associated with the SE, receive a second message including information about whether the event is stored in the server from the server in response to the first message, send a third message for retrieving the event to the server by the assistant application in the case where the event is stored in the server, and receive a fourth message including information about the event from the server in response to the third message in the case where the terminal is authenticated by the server.
[0017] Another embodiment of the present disclosure provides a server associated with a discovery service of a terminal in a wireless communication system, wherein the terminal includes a security element (SE) and an assistant application associated with the SE, and the server includes: a transceiver configured to send and receive signals; and a controller coupled to the transceiver and configured to: receive a first message from the terminal for discovering an event associated with the terminal, the first message including an identifier associated with the SE; in response to the first message, send to the terminal a second message including information about whether the event is stored in the server; in the case where the event is stored in the server, receive a third message from the terminal for retrieving the event; authenticate the terminal based on the first message and the third message; and in the case where the terminal is authenticated by the server, send to the terminal a fourth message including information about the event in response to the third message.
[0018] Beneficial Effects
[0019] According to an embodiment of the present disclosure, the SSP terminal can receive information about whether an event exists from the event management server without the intervention of the SSP. Due to the non-interference of the SSP, during the communication between the SSP terminal and the event management server, the server using the SSP will not be interrupted, and during the communication between the SSP terminal and the event management server, the processing load of the SSP can be minimized.
[0020] According to an embodiment of the present disclosure, in a temporary SSP terminal identifier generation method, the SSP terminal may generate a temporary SSP terminal identifier based on a character string obtained by combining a unique identifier of the SSP and information about an event management server to which the temporary SSP terminal identifier is to be transmitted. The temporary SSP terminal identifier may be generated using a hash function that is difficult to inverse transform. It may be difficult to extract the unique identifier of the SSP by inverse transforming the temporary SSP terminal identifier generated as described above. Therefore, the temporary SSP terminal identifier may make it difficult to track the use of the unique identifier of the SSP, thereby enabling services to meet the General Data Protection Regulation (GDPR) promulgated in the European Union (EU).
[0021] Furthermore, according to some embodiments, the event management server may securely identify the SSP through digital certificate-based mutual authentication with the SSP, and then transmit an event package regarding an operation to be performed by the SSP to the SSP, thereby preventing the event package from being intercepted and leaked. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] For a more complete understanding of the present disclosure and its advantages, reference is now made to the following description taken in conjunction with the accompanying drawings, wherein like reference numerals represent like parts:
[0023] Figure 1 An example of an interface between elements inside an SSP terminal according to an embodiment of the present disclosure is shown;
[0024] Figure 2 An example of elements arranged inside and outside an SSP terminal according to an embodiment of the present disclosure is shown, so that the SSP terminal can download a bundle;
[0025] Figure 3 The invention shows a process performed between entities when an SSP terminal receives an event generated by a service provider according to an embodiment of the present disclosure;
[0026] Figure 4 A process is shown in which an event to be processed by an SSP terminal occurs, the event is registered in an event management server, and the SSP terminal acquires and processes the registered event according to an embodiment of the present disclosure.
[0027] Figure 5 It shows an SSP terminal requesting an event management server to search for events and obtain events according to an embodiment of the present disclosure;
[0028] Figure 6 It shows other SSP terminals requesting an event management server (SSPDS) to search for events and obtain events according to an embodiment of the present disclosure;
[0029] Figure 7 It shows other processes of the SSP terminal requesting the event management server (SSPDS) to search for events and obtain events according to an embodiment of the present disclosure;
[0030] Figure 8 An event discovery configuration in a terminal according to an embodiment of the present disclosure is shown;
[0031] Fig. 9 A process for transmitting an event discovery configuration of a terminal to a service provider according to an embodiment of the present disclosure is shown;
[0032] Fig.10 It shows that an event registered in an event management server is transmitted to an SSP terminal through a push message according to an embodiment of the present disclosure;
[0033] Fig.11 An SSP terminal and an event management server for registering a push service according to an embodiment of the present disclosure are shown;
[0034] Fig.12 The process of registering a push service for an eUICC terminal and an SM-DS according to an embodiment of the present disclosure is shown;
[0035] Fig.13Other processes of registering push services for the eUICC terminal and the SM-DS according to an embodiment of the present disclosure are shown;
[0036] Fig.14 A terminal device according to an embodiment of the present disclosure is shown; and
[0037] Fig.15 A server device according to an embodiment of the present disclosure is shown. DETAILED DESCRIPTION
[0038] Discussed below Figures 1 to 15 The various embodiments used to describe the principles of the present disclosure in this patent document are exemplary only and should not be interpreted in any way as limiting the scope of the present disclosure. Those skilled in the art will understand that the principles of the present disclosure can be implemented in any appropriately arranged system or device.
[0039] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.
[0040] When describing the embodiments of the present disclosure, descriptions related to technical contents known in the art and not directly related to the present disclosure will be omitted. Omission of unnecessary descriptions is to prevent blurring the main concept of the present disclosure and to convey the main concept more clearly.
[0041] For the same reason, in the accompanying drawings, some elements may be exaggerated, omitted or schematically shown. In addition, the size of each element does not fully reflect the actual size. In the accompanying drawings, the same or corresponding elements have the same reference numerals.
[0042] By referring to the embodiments described in detail below in conjunction with the accompanying drawings, the advantages and features of the present disclosure and the ways to achieve them will become apparent. However, the present disclosure is not limited to the embodiments set forth below, but can be implemented in various different forms. The following embodiments are provided only to fully disclose the present disclosure and inform those skilled in the art of the scope of the present disclosure, and the present disclosure is limited only by the scope of the attached claims. Throughout the specification, the same or similar reference numerals represent the same or similar elements.
[0043] Here, it will be understood that each box of the flowchart diagram and the combination of boxes in the flowchart diagram can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device create a device for implementing the function specified in one or more boxes of the flowchart. These computer program instructions can also be stored in a computer-available or computer-readable memory, which can instruct the computer or other programmable data processing device to operate in a particular manner, so that the instructions stored in the computer-available or computer-readable memory produce a manufactured product including an instruction device that implements the function specified in the flowchart box or multiple boxes. The computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are performed on a computer or other programmable device, thereby generating a computer-implemented process, so that the instructions executed on the computer or other programmable device provide steps for implementing the function specified in one or more boxes of the flowchart.
[0044] In addition, each box of the flow chart may represent a module, a code segment or a code portion, which includes one or more executable instructions for implementing (multiple) specified logical functions. It should also be noted that in some alternative implementations, the functions mentioned in the box may not appear in order. For example, depending on the functions involved, two boxes shown in succession may actually be executed substantially simultaneously, or the boxes may sometimes be executed in reverse order.
[0045] As used herein, the term "unit" refers to a software element or a hardware element that performs a predetermined function, such as a field programmable gate array (FPGA) or an application specific integrated circuit (ASIC). However, a "unit" does not always have a meaning that is limited to software or hardware. A "unit" can be constructed to be stored in an addressable storage medium or to execute one or more processors. Therefore, a "unit" includes, for example, software elements, object-oriented software elements, class elements or task elements, processes, functions, attributes, procedures, subroutines, program code segments, drivers, firmware, microcodes, circuits, data, databases, data structures, tables, arrays, and parameters. The elements and functions provided by a "unit" can be combined into a smaller number of elements or "units", or divided into a larger number of elements or "units". In addition, elements and "units" can be implemented as duplicating one or more CPUs in a device or a secure multimedia card.
[0046] In addition, the various functions described below can be implemented or supported by one or more computer programs, each of which is formed by a computer-readable program code and contained in a computer-readable medium. The terms "application" and "program" refer to one or more computer programs, software components, instruction sets, processes, functions, objects, classes, instances, related data or a part thereof suitable for implementation with a suitable computer-readable program code. The phrase "computer-readable program code" includes any type of computer code, including source code, object code and executable code. The phrase "computer-readable medium" includes any type of medium that can be accessed by a computer, such as a read-only memory (ROM), a random access memory (RAM), a hard drive, a compact disc (CD), a digital video disc (DVD) or any other type of memory. "Non-temporary" computer-readable media does not include wired, wireless, optical or other communication links that transmit temporary electrical signals or other signals. Non-temporary computer-readable media include media that can permanently store data and media that can store data and rewrite it later, such as rewritable optical discs or erasable storage devices.
[0047] Definitions for certain words and phrases are provided in this patent document, those of ordinary skill in the art should understand that in many, if not most instances, such definitions apply to prior, as well as future uses of such defined words and phrases.
[0048] Specific terms used in the following description are provided to help understanding of the present disclosure, and the use of these specific terms may be changed into other forms without departing from the technical spirit of the present disclosure.
[0049] 1. Security platform (SE, eSE, UICC, eUICC and SSP)
[0050] In the present disclosure, a security element (SE) refers to a security module formed as a single chip, which stores security information (e.g., user identification information such as mobile communication network access keys and ID / passports, credit card information, encryption keys, etc.) and a control module (e.g., a network access control module such as a USIM, an encryption module, a key generation module, etc.) in which the stored security information is used. SE can be used in various electronic devices (e.g., smart phones, tablets, wearable devices, cars, IoT devices, etc.), and can provide security services (e.g., access to mobile communication networks, payments, user authentication, etc.) through security information and control modules. SE can be used as a term generally indicating a universal integrated circuit card (UICC), an embedded security element (eSE), and a smart security platform (SSP) in which a UICC and an eSE are integrated, and can be divided into a removable type and an embedded type according to the type of electronic device to which the SE is connected or installed, and an integrated type in which the SE is integrated with a specific element or a system on a chip (SoC).
[0051] In the present disclosure, an embedded security element (eSE) is an embedded SE used when embedded in an electronic device. The eSE can be manufactured to be typically dedicated to a terminal manufacturer at the request of the terminal manufacturer, and can be manufactured to include an operating system and a framework. The eSE can remotely download and install a service control module of a small program type, and can be used for various security services, such as electronic wallets, ticketing, electronic passports, and digital keys. In the present disclosure, a single-chip type SE attached to an electronic device and capable of remotely downloading and installing a service control module is generally referred to as an eSE.
[0052] In the present disclosure, a universal integrated circuit card (UICC) is a smart card inserted into a mobile communication terminal, etc., and is also referred to as a UICC. The UICC may include an access control module for accessing a mobile operator network. Examples of access control modules include a universal subscriber identity module (USIM), a subscriber identity module (SIM), and an IP multimedia service subscriber identity module (ISIM). A UICC including a USIM is also commonly referred to as a USIM card. Similarly, a UICC including a SIM module is also commonly referred to as a SIM card. The SIM module may be loaded when the UICC is manufactured, or a SIM module for a mobile communication service that a user desires to use may be downloaded to the UICC at a desired time by the user. The UICC may also download and install multiple SIM modules, and may select and use at least one SIM module from among multiple SIM modules. Depending on the chip form factor, the UICC may be used when it is fixed to the terminal, or may be used when it is attached to / detached from the terminal.
[0053] A UICC embedded and used in a terminal in the form of a chip is called an embedded UICC (eUICC). Specifically, a UICC embedded in a system-on-chip (SoC) including a communication processor of the terminal, its application processor, or a single integrated processor structure in which two processors are integrated is also called an integrated UICC (iUICC). Typically, eUICC and iUICC can be fixedly embedded and used in the terminal, and a SIM module can be remotely downloaded into the eUICC or iUICC, and can make it possible to connect to network services in a mobile communication provider's network. An eUICC or iUICC with a specific SIM module loaded at the time of manufacturing can be started and installed in the terminal. The software obtained by packaging the SIM module information downloaded and used in the eUICC, the information included in the USIM application, and the authentication information for receiving network services is generally referred to as an eUICC profile. The eUICC profile may be referred to as an eSIM profile, an iUICC profile, a USIM profile, or more simply a profile.
[0054] In the present disclosure, a smart security platform (SSP) is a security module capable of integrating the functions of supporting UICC and eSE in a single chip, and may be referred to as SSP for short. SSP may be divided into a removable SSP (rSSP), an embedded SSP (eSSP), and an integrated SSP (iSSP) embedded in a system on chip (SoC) of a terminal. The SSP may include a main platform and at least one secondary platform bundle (SPB) running on the main platform. The main platform may include at least one of a hardware platform and a low-level operating system (LLOS), and the secondary platform bundle may include at least one of a high-level operating system (HLOS) and an application driven on the HLOS.
[0055] In the present disclosure, an auxiliary platform bundle (SPB) is driven on the PP of the SSP by using the main platform (PP) resources. For example, a UICC bundle may refer to software stored in and operated in an existing UICC and a high-level operating system (HLOS), obtained by packaging applications, file systems, authentication key values, etc. In the present disclosure, the phrase "auxiliary platform bundle" may be referred to as a "bundle". That is, the auxiliary platform bundle is referred to as a bundle for short. The bundle can access resources such as the central processing unit, memory, etc. of the main platform through the main platform interface (PPI), and can be driven on the main platform through it. Communication applications such as SIM, universal SIM (USIM) and IP multimedia SIM (ISIM) can be loaded into the bundle, and various types of applications such as electronic wallets, tickets, electronic passports and digital keys can also be loaded into the bundle. According to the bundle downloaded and installed remotely, the SSP can be used for the above-mentioned UICC or eSE, and multiple bundles can be installed and operated simultaneously in a single SSP so as to be used for both UICC and eSE. That is, when the bundle operation including the profile is performed, the SSP can be used for the UICC accessing the mobile operator network. The corresponding UICC bundle can remotely download at least one profile into the bundle like an eUICC or iUICC, and at least one profile can be selected and then operated. In addition, when a bundle including a service control module with an application capable of providing services (such as an e-wallet, ticketing, e-passport, or digital key) operates on the SSP, the SSP can be used for eSE. Multiple service control modules can be integrated, installed, and operated in one bundle, or can be installed and operated as independent bundles. The SSP can download, install, and use the bundle to be driven in the SSP from an external bundle management server (auxiliary platform bundle manager or SPB manager) using over-the-air (OTA) technology. A method for downloading a bundle via OTA technology and installing the downloaded bundle in the SSP can be applied equally to a removable SSP (rSSP) that can be inserted into or removed from a terminal, an embedded SSP (eSSP) installed in a terminal, and an integrated SSP (iSSP) included in a SoC installed in a terminal.
[0056] In the present disclosure, a telecom bundle may be a bundle loaded with at least one network access application (NAA), or a bundle having a function capable of remotely downloading and installing at least one NAA. NAA is a module stored in a UICC and configured to access a network, and may be a USIM or an ISIM. The telecom bundle may include a telecom family identifier indicating a telecom family.
[0057] In the present disclosure, the eSIM bundle that drives the eUICC OS can perform the same functions as the eUICC, so a configuration file can be installed in the terminal to drive network services. In the present disclosure, the eSIM bundle can include a telecom family identifier indicating the same. The eSIM bundle can indicate the UICC bundle.
[0058] In the present disclosure, a secondary platform bundle loader (SPBL) may be a management bundle configured to install and manage the enabling, disabling or deleting of another bundle in an SSP. A remote server or a local bundle assistant (LBA) of a terminal may install, enable, disable or delete a specific bundle through a loader. In the present disclosure, a loader may also be referred to as an SSP.
[0059] 2. Terminal and Local Bundle Assistant (LBA)
[0060] In the present disclosure, a terminal (device) may be referred to as a "mobile station (MS)", "user equipment (UE)", "user terminal (UT)", "wireless terminal", "access terminal", "terminal", "subscriber unit", "subscriber station", "wireless device", "wireless communication device", "wireless transmit / receive unit (WTRU)", "mobile node", "mobile" or other terms. Various examples of terminals may include a cellular phone, a smart phone with a wireless communication function, a personal digital assistant (PDA) with a wireless communication function, a wireless modem, a portable computer with a wireless communication function, an imaging device such as a digital camera with a wireless communication function, a gaming device with a wireless communication function, a home appliance that stores and reproduces music and has a wireless communication function, an Internet home appliance that allows wireless Internet connection and browsing, and a portable unit or terminal that integrates a combination of such functions. In addition, examples of terminals may include, but are not limited to, a machine-to-machine (M2M) terminal and a machine type communication (MTC) terminal / device. In the present disclosure, a terminal may also be referred to as an electronic device.
[0061] In the present disclosure, an SSP configured to download and install a bundle may be embedded in a terminal. In addition, an SSP physically separated from a terminal may be inserted into a slot of a terminal, the SSP may be installed in the slot, and may be connected to the terminal. For example, a card-shaped SSP may be inserted into a terminal. A terminal in which an SSP is installed may have an additional SSP embedded therein. A terminal including an SSP may be referred to as an SSP terminal.
[0062] In the present disclosure, a local bundle assistant (LBA) is software or an application installed in a terminal and capable of controlling an SSP in the terminal. The LBA may download a bundle to the SSP, or may transmit a management command to the SSP to enable, disable, or delete a bundle pre-installed in the SSP. The terminal may include a local profile assistant (LPA), which is software or an application installed in the terminal to control the eUICC. The LPA may be implemented as a subcomponent included in the local bundle assistant (LBA), or may be installed as an application separate from the LBA in the terminal. The LPA may be software or an application capable of controlling an eSIM bundle whose function is similar to that of an eUICC among a bundle installed in the SSP of the terminal.
[0063] 3. Service Providers
[0064] In the present disclosure, a service provider may indicate a company that issues a requirement to a bundle management server (auxiliary platform bundle manager) to request the bundle management server to generate a bundle and provide services to a terminal through the bundle. For example, a service provider may indicate a mobile operator that provides communication network access services through a bundle in which a communication application is installed, and may be used as a term that generally indicates a mobile operator's business supporting system (BSS), operational supporting system (OSS), point-of-sale (POS) terminal, and other IT systems. In addition, in the present disclosure, a service provider is not limited to indicating only a specific company, and may be used as a term to indicate an association or consortium of one or more companies or a representative representing the association or consortium.
[0065] Furthermore, in the present disclosure, a service provider may be a company or a terminal manager that is capable of managing a bundle installed in a specific SSP terminal.
[0066] In addition, in the present disclosure, a service provider may be referred to as at least one of an operator, a bundle owner, an image owner, a service subscription manager, and a device subscription manager. Each service provider may be configured or assigned at least one name and / or a unique identifier (object identifier (OID)). If a service provider indicates an association or consortium of one or more companies or their representatives, the name or unique identifier of the predetermined association or consortium or its representative may be a name or unique identifier shared by all companies belonging to the association or consortium or all companies cooperating with the representative.
[0067] 4. Secondary Platform Bundle Manager (SPB Manager)
[0068] In the present disclosure, a bundle management server may have the function of generating a bundle, encrypting a generated bundle, generating a remote bundle management command, or encrypting a generated remote bundle management command at the request of a service provider or other bundle management server. The bundle management server providing this function may be referred to as an auxiliary platform bundle manager (SPB manager), a remote bundle manager (RBM), an image delivery server (IDS), subscription manager data preparation (SM-DP), subscription manager data preparation plus (SM-DP+), a management bundle server, a management subscription manager data preparation plus (managing subscription manager data preparation plus, managing SM-DP+), a bundle encryption server, a bundle generation server, a bundle provider, and at least one of a bundle provisioning credential holder (BPC holder).
[0069] In some embodiments, the bundle management server may play the role of managing the configuration of certificates or keys for: downloading, installing or updating bundles in the SSP; and remotely managing the status of the bundle. The bundle management server that provides this function may be referred to as at least one of an auxiliary platform bundle manager (SPB manager), a remote bundle manager (RBM), an image delivery server (IDS), a subscription manager secure routing (SM-SR), a subscription manager secure routing plus (SM-SR+), an eUICC profile manager or an off-card entity of a profile management credential holder (PMC holder), and an eUICC manager (EM). The bundle management server may be a server for managing an SSP for machine-to-machine (M2M) services or an SSP for IoT services.
[0070] 5. Bundle Management
[0071] In the present disclosure, bundle management may be a term that includes changing (enabling, disabling or deleting) the status of each bundle installed in the SSP, updating the metadata of the bundles installed in the SSP, obtaining a list of bundles installed in the SSP, installing bundles in the SSP, etc.
[0072] Bundle management can be divided into local bundle management (LBM) and remote bundle management.
[0073] Local bundle management (LBM) is an operation performed by directly using an SSP terminal, which is used to manage the SSP and the bundles installed in the SSP through the software in the SSP terminal. Local bundle management (LBM) can be referred to as bundle local management or local management. The terminal software LBA of the SSP terminal can transmit a local bundle management command to the SSP, which includes information about the bundle to be locally managed and the specific operation to be performed. The local bundle management command can be a local management command or a local command. The local bundle management package (LBM package) may include at least one local bundle management command transmitted from the terminal software LBA to the auxiliary platform bundle loader (SPBL, loader). The local bundle management package can be referred to as a bundle local management package, a local management bundle, a local management command package, or a local command package.
[0074] A user of an SSP terminal can perform local bundle management by being authorized to access a local bundle assistant (LBA) installed in the terminal or the software of the SSP. Local bundle management may include changing the (enable, disable, delete) state of a target bundle or updating some information about the target bundle or some values of the target bundle. Updating some information about the target bundle or some values of the target bundle may be updating information in the bundle metadata. Target bundle may be used as a term to indicate a bundle for which local bundle management is to be performed.
[0075] Remote bundle management may be an operation performed by a command transmitted from an external server (i.e., a service provider, a remote management server, or a bundle management server (Assisted Platform Bundle Manager (SPB Manager)) to manage the SSP and the bundles installed in the SSP through software in the SSP terminal. Remote bundle management (RBM) may be referred to as bundle remote management or remote management.
[0076] A service provider or a terminal owner (device owner) may generate a remote bundle management command, which includes information about a bundle to be remotely bundle managed and a specific operation to be performed. A remote bundle management command may be referred to as a remote management command or a remote command. The remote bundle management command may be transmitted from a bundle management server (SPB manager) to a terminal software LBA of an SSP terminal, where the remote bundle management command is executed. The remote bundle management command may be transmitted by the terminal software LBA of the SSP terminal to a secondary platform bundle loader (SPBL or loader), so that bundle management may be performed based on the command.
[0077] A remote bundle management package (RBM package) may include one or more remote bundle management commands, which are generated by an external server, transmitted from the external server to the SSP terminal software LBA, and transmitted from the terminal software LBA to the auxiliary platform bundle loader. A remote bundle management package may be referred to as a bundle remote management package, a remote management bundle, a remote management command package, or a remote command package.
[0078] In the present disclosure, the operation of enabling a bundle by a terminal or an external server may be an operation of changing the state of a corresponding configuration file to an enabled state to allow the terminal to receive services provided by the bundle (e.g., communication services through mobile operators, credit card payment services, user authentication services, etc.). A bundle in an enabled state may be represented as an "enabled bundle". An enabled bundle may be encrypted and stored in a storage space inside or outside the SSP. In the present disclosure, an enabled bundle (enabled auxiliary platform bundle) switches to a drive state (active) according to input from outside the bundle (e.g., user input, push, request from an application in the terminal, authentication request from a mobile operator, PP management message, etc.) or an operation within the bundle (e.g., a timer or polling). A bundle in a drive state may be a bundle in a drive memory in an SSP loaded into a storage space inside or outside the SSP, processes security information using a security control device (security CPU) in the SSP, and provides security services to the terminal.
[0079] In the present disclosure, the operation of disabling a bundle by a terminal or an external server may be an operation of changing the state of the bundle to a disabled state so that the terminal cannot receive the services provided by the bundle. The configuration file in the disabled state may be represented as a "disabled bundle (disabled auxiliary platform bundle)". The bundle in the disabled state may be encrypted and stored in a storage space inside or outside the SSP.
[0080] 6. Identifiers (spbId, F.ID, CID, PPID)
[0081] In the present disclosure, a bundle identifier is a value indicating a specific bundle. The bundle identifier may be referred to as a secondary platform bundle identifier (SPBID, sbpId). When a service provider gives a subscription (bundle subscription) for bundle generation to a bundle management server (SPB manager), the bundle identifier may be generated by the service provider or the bundle management server. The bundle identifier may be used as a value capable of indexing a bundle in a bundle management server. The bundle identifier may be a value that matches a bundle match identifier or an event identifier and is managed in a bundle management server. The bundle identifier may indicate a unique identifier for each bundle.
[0082] In the present disclosure, a bundle family identifier may refer to a service provided by a bundle or an organization, government, or agency that provides and manages the service, or may be a value indicating an ecosystem that manages the bundle. The bundle family identifier may be referred to as an auxiliary platform bundle family identifier or a family identifier (F.ID). Examples of types of bundles that can be distinguished by using a bundle family identifier may include telecommunication bundles for accessing mobile communication networks, banking bundles for cards and financial services, digital key bundles for digital key services, ID card packages such as passports / residence registration cards / driver's licenses, and the like.
[0083] In the present disclosure, a custodian identifier (CID) may indicate an identifier of an organization for managing a specific family identifier. A custodian object identifier may be used as an example of a CID. A custodian object identifier may indicate an object identifier of an organization for managing a specific family identifier. There may be multiple organizations for managing a specific family identifier, and each organization may have a CID. The SSP terminal, the service provider, and the bundle management server may determine through the CID which organization is the management subject of the bundle that is to be managed including the downloaded bundle management. In addition, the SSP terminal, the service provider, and the bundle management server may determine through the CID which management subject manages the services to be provided through the bundle.
[0084] In the present disclosure, the SSP identifier may be a unique identifier of the SSP embedded in the terminal. In addition, when the terminal and the SSP chip are not separated, the SSP identifier may be used when linked with an identifier of the SSP terminal. In addition, in some cases, a bundle identifier of a specific bundle in the SSP may be used as the SSP identifier. The identifier of the specific bundle may be an identifier of a secondary platform bundle loader (SPBL), which is a management bundle configured to manage the installation, enabling, disabling, or deletion of other bundles in the SSP.
[0085] The unique SSP identifier may be an identification code or string assigned by the SSP manufacturer that generates the SSP, and may be a globally unique value for identifying a specific SSP. In addition, once the unique SSP identifier is assigned to a specific SSP, the unique SSP identifier may have an immutable value. A host platform, which is one of the SSP elements, may have a unique SSP identifier, and the unique SSP identifier may be referred to as a primary platform identifier (PPID). The primary platform identifier may also be used as a unique SSP identifier.
[0086] An SSP may have multiple temporary SSP identifiers, and the multiple temporary SSP identifiers may be values derived from the unique SSP identifier. The temporary SSP identifier may be a value generated by combining the unique SSP identifier with other types of information through a mathematical function.
[0087] The unique SSP identifier may be referred to as a first SSP identifier, and the temporary SSP identifier may be referred to as a second SSP identifier. The SSP identifier may be used as a term generally indicating the first SSP identifier and the second SSP identifier.
[0088] The eUICC may have multiple temporary eUICC identifiers, and the multiple temporary eUICC identifiers may be values derived from the unique eUICC identifier. The temporary eUICC identifier may be a value generated by combining the unique eUICC identifier with other types of information through a mathematical function. The temporary eUICC identifier may be referred to as an obfuscated EID (OEID).
[0089] The unique eUICC identifier may be referred to as a first eUICC identifier, and the temporary eUICC identifier may be referred to as a second eUICC identifier. The eUICC identifier may be used as a term generally indicating the first eUICC identifier and the second eUICC identifier.
[0090] 7. Discovery Service
[0091] In the present disclosure, an event may be a term indicating an order or request for a bundle download, remote bundle provisioning, remote bundle management, or other bundle or SSP management / processing. The event may indicate a request by a service provider or SSP device owner to cause a specific SSP terminal to perform at least one bundle management operation (bundle installation, bundle download, remote bundle provisioning, remote bundle deletion, remote bundle enabling, remote bundle disabling, remote bundle metadata updating, remote bundle list management, and other bundle management operations). The event may occur by a series of commands and instructions given by the service provider to the bundle management server (SPB manager) through an interface between the service provider and the bundle management server. The event transmitted to the SSP terminal may be referred to as an SSP discovery service (SSPDS) event.
[0092] In the present disclosure, an event management server is a server for managing events to be processed by an SSP terminal. The event management server may receive an event registration request (register event request, event registration request) from one or more bundle management servers, and may register an event in the server. In addition, one or more event management servers are used in a complex manner. In this case, the first event management server may receive an event registration request not only from the bundle management server, but also from the second event management server. In the present disclosure, the function of the event management server may be operated when integrated with the function of the bundle management server (SPB manager). The event management server may be referred to as a secondary platform bundle manager (SPB manager), a remote bundle manager (RBM), a secondary platform bundle manager discovery server (secondary platform bundle manager-discovery sever, SPBM-DS), a bundle discovery server (bundle discovery sever, BDS), a subscription manager discovery service (SM-DS), a discovery service (DS), a root event management server (root event-managing server, root SM-DS), an alternative event management server (alternative event-managing server, alternative SM-DS), and at least one of an SSP discovery service (SSPDS). In a particular embodiment, the event management server may be primarily referred to as a Secondary Platform Bundle Manager Discovery Server (SPBM-DS) or an SSP Discovery Service (SSPDS), but may be applied to a server that performs the same function with a predetermined name regardless of the naming of the object.
[0093] In the present disclosure, an event identifier (event ID) may be used to identify a specific event and may be generated by a service provider or a bundle management server (SPB manager) when the service provider causes a specific event to occur in the bundle management server. When the service provider or the bundle management server registers an event in the event management server, the event identifier may be generated by the service provider, the bundle management server, or the event management server.
[0094] In the present disclosure, the event list may include the presence or absence of an event package to be processed by the SSP terminal receiving the event list, the number of events, or a brief description of each event.
[0095] In the present disclosure, an event package may include multiple event records. An event package may be configured by packaging event records to be executed by the same SSP terminal.
[0096] In the present disclosure, an event record may be referred to as data that includes at least one of: an event identifier, a matching identifier (matching ID, MatchingID), an address (FQDN, IP address, or URL) of a bundle management server or event management server where the corresponding event is registered, or each server identifier. Bundle download may be used interchangeably with bundle installation. In addition, the term "event type" may be used to indicate whether a particular event is a bundle download, remote bundle management (e.g., delete, enable, disable, replace, update, etc.), or other bundle or SSP management / processing commands, and may be referred to as an operation type (or OperationType), an operation class (or OperationClass), an event request type, an event class, an event request class, and the like.
[0097] In the present disclosure, the discovery service configuration may be a configuration related to the operation of accessing an event management server, requesting an event list or event package, and receiving an event list or event package. The discovery service configuration may be performed in the SPBL or LBA of the SSP terminal. The discovery service configuration may include the address of the event management server from which the SSP terminal requests an event list or event package. In addition, the discovery service configuration may include the addresses of multiple event management servers that will be classified and used according to the family identifier, CID, and bundle identifier.
[0098] 8. Activation Code
[0099] In the present disclosure, the eSIM enablement code is a predetermined type of information for downloading a configuration file to an eSIM terminal or an SSP terminal, and may be referred to as an eSIM activation code. The eSIM activation code may include an SM-DP+ address to be connected for downloading a configuration file or an address of an SM-DS server capable of providing notification of an SM-DP+ address, and may include an activation code token value that can be used as a matching identifier for a specific configuration file relative to SM-DP+. When the eSIM activation code is entered in the form of a QR code, "'LPA:" may be appended as a prefix to the data contained in the QR code.
[0100] In the present disclosure, the SSP enablement code is a predetermined type of information for downloading a bundle to an SSP terminal and may be referred to as an SSP activation code. The terminal user may start the bundle download process by inputting the SSP activation code into the LBA application of the SSP terminal. The SSP activation code may include an eSIM activation code.
[0101] In the present disclosure, the activation code may indicate all of the SSP activation code and the eSIM activation code. Generally, in the present disclosure, the activation code may be a predetermined activation code before being determined as the SSP activation code or the eSIM activation code, and when input into the terminal, may be interpreted by the terminal as one of the SSP activation code or the eSIM activation code. When the SSP activation code includes the eSIM activation code, the terminal may selectively perform a bundle download or a configuration file download.
[0102] 9.Si2, Si3 interface
[0103] In the present disclosure, the function called by the LBA may be a function executed in the Si2 interface and the Si3 interface, the Si2 interface being an interface between the LBA and the SPB manager, and the Si3 interface being an interface between the LBA and the auxiliary platform bundle loader. The LBA may transmit parameters to the SPB manager or the auxiliary platform bundle loader through a specific function. The parameters transmitted from the LBA by calling a specific function may be referred to as function instructions, function commands, or commands of the corresponding functions. The SPB manager or the auxiliary platform bundle loader that receives the function command may perform a specific operation based on the function command, and may then provide a response to the function command. The response may include parameters. The function command transmission through the Si2 interface may be performed using the hypertext transfer protocol (HTTP). Specifically, for the function command transmission through the Si2 interface, an HTTP POST request message of the hypertext transfer protocol (HTTP) may be used, and the command may be sent when it is included in the body of the HTTP POST request message.
[0104] 10. SSP Information
[0105] In the present disclosure, the SSP information may indicate all of the first SSP information and the second SSP information.
[0106] The first SSP information may be information related to the SSP and may be data that has not been encrypted. The first SSP information may include the number of standard documents supported by the SSP. The LBA and SPB manager may analyze the first SSP information without any special decoding process.
[0107] The second SSP information is sensitive information and may be data obtained by encrypting information related to the SSP. The second SSP information of the SSP supporting the telecommunication service may include eUICC information defined in the GSMA SGP.22 standard.
[0108] 11. Bind SPB images and SPB metadata
[0109] In the present disclosure, the first bundle information may be metadata, bundle metadata, or secondary platform bundle metadata (SPB metadata). The first bundle information may include information about a bundle to be downloaded to the SSP by a service provider or a bundle management server (SPB manager), which has not been encrypted and can be read by the LBA of the SSP terminal. The LBA of the SSP terminal may receive consent from the user before receiving the second bundle information about the bundle based on the first bundle information, or may determine whether to request the user's consent or intention regarding operation / management after the bundle is installed. The first bundle information may be used when the LAB displays basic information about the bundle to the user before the bundle is installed. After the bundle is installed, the first bundle information may be managed by a loader (Secondary Platform Bundle Loader (SPBL)) and may be updated by a service provider, a bundle management server (SPB manager), and the like.
[0110] In the present disclosure, the encrypted second bundle information may be a bound auxiliary platform bundle image, a bound bundle (bound auxiliary platform bundle), an encrypted auxiliary platform bundle image, or an encrypted bundle (encrypted auxiliary platform bundle). The second bundle information may include the first bundle information. The second bundle information includes information required for bundle installation, and the SSP may install the bundle in the SSP by using data extracted from the second bundle information. The second bundle information may be partially encrypted as a session key generated by the SSP and the SPB manager.
[0111] In the present disclosure, the bundle information request function may be a function for requesting first bundle information and second bundle information about a bundle that the SSP terminal desires to install. The operation of requesting the first bundle information and the second bundle information about the bundle may be performed by sending a bundle information request function command to the SPB manager. The bundle information request function command may be transmitted by the SSP terminal to the SPB manager through the Si2 interface. The SSP terminal may transmit terminal information and SSP credentials including an SSP certificate, SSP information, and SSP capabilities to the SPB manager to request the first bundle information or the second bundle information.
[0112] In describing the present disclosure, a detailed description of related known configurations or functions incorporated herein will be omitted when it is determined that the detailed description thereof may unnecessarily obscure the subject matter of the present disclosure.
[0113] Hereinafter, the following various embodiments will be described: a process by which a service provider causes an event to be executed in a specific SSP to occur in a bundle management server (SPB manager); a process by which a bundle management server (SPB manager) registers an event in an event management server; a process by which an SSP terminal determines whether there is an event in the event management server; a process by which an SSP terminal requests an event package from an event management server and receives the event package; and detailed operations of the event management server (discovery service) and the SSP terminal in the process.
[0114] Particularly, in the present disclosure, the following embodiments for the above-mentioned aspects are included.
[0115] -A method in which a service provider, a bundle management server (auxiliary platform bundle manager) or an event management server links a first SSP identifier (unique SSP identifier) with an event to be performed in a specific SSP based on the first SSP identifier (unique SSP identifier) and manages the first SSP identifier and the event.
[0116] - A method in which a service provider, a bundle management server (secondary platform bundle manager) or an event management server generates a second SSP identifier (temporary SSP identifier) by using a first SSP identifier (unique SSP identifier), links the generated second SSP identifier with an event, and manages the second SSP identifier and the event.
[0117] - A method in which the SSP terminal software LBA generates a second SSP identifier (temporary SSP identifier) by using a first SSP identifier (unique SSP identifier).
[0118] - In a method of generating a temporary SSP identifier, a method of generating a temporary SSP identifier by combining a unique SSP identifier and information on an event management server.
[0119] - A method in which the SSP terminal software LBA uses the temporary SSP identifier to determine whether there is an event package in the event management server.
[0120] - A method in which an event management server uses a temporary SSP identifier sent by an SSP terminal to determine whether there is an event package to be processed by the SSP terminal.
[0121] - A method in which the SSP terminal software LBA determines the presence of an event package from an event management server and then receives the event package through a mutual authentication process between the SSP installed in the terminal and the event management server.
[0122] Figure 1 An example of interfaces between elements inside the SSP terminal according to an embodiment of the present disclosure is shown.
[0123] according to Figure 1 , the SSP terminal 101 includes a Local Bundle Assistant (LBA) 111 as terminal software and an SSP 131. In addition, the SSP terminal 101 may include: a transceiver configured to send or receive signals to or from other terminals, base stations, servers, etc.; and a controller configured to control the overall operation of the SSP terminal 101. According to various embodiments, the controller may control the operation of the SSP terminal. The controller may include at least one processor. The controller may control the SSP 131 through the LBA 111.
[0124] The SSP 131 includes a main platform 135, a main platform interface 134, and an auxiliary platform bundle 133. The main platform 135 includes a hardware platform and a low-level operating system. The auxiliary platform bundle 133 may be referred to as a bundle. The bundle includes applications and a high-level operating system (HLOS) driven on the main platform 135. The auxiliary platform bundle loader 132 may be referred to as an SPB loader or a loader. The loader 132 is a type of bundle 133 and may be a system bundle with special permissions to manage the bundle 133 installed in the SSP. The terminal software LBA 111 and the loader 132 exchange instructions and information through the first interface 122. The first interface 122 may be referred to as an Si3 interface. The LBA 111 may perform the following operations through the first interface:
[0125] - Obtain the first SSP information from the loader 132 and obtain the SSP certificate;
[0126] -Transfer server credentials;
[0127] - transferring the bundled data to be installed in the SSP to the loader 132; and
[0128] - Manage bundles installed in the SSP (enable, disable, delete, bundle metadata updates, manage list of installed bundles, etc.)
[0129] Figure 2 2 shows an example of elements arranged inside and outside the SSP terminal according to an embodiment of the present disclosure, so that the SSP terminal can download the bundle. The terminal 203 may correspond to Figure 1 The SSP terminal 101 in FIG. LBA 204 may correspond to Figure 1 The SPB loader 206 may correspond to LBA 111 in Figure 1 The auxiliary platform bundle loader 132 in. The bundle 207 can be Figure 1 Auxiliary platform bundle 133 in . Figure 1 The terminal 203, LBA 204 and SPB loader 206 are described with reference to an embodiment of the present invention.
[0130] according to Figure 2 In the service subscription process 210, the user 200 may select and subscribe to a service (e.g., a call or data service through a mobile communication network) provided by the service provider 201. In the service subscription process 210, the user 200 may pay a predetermined amount of money or a fee for subscribing to the service to the service provider 201, and the service provider 201 may provide the user 200 with a predetermined type of information for installing a bundle 207 in the user's terminal 203 from which the service can be received. In the service subscription process 210, in order to use the service provided by the service provider 201, the user 200 may selectively transmit to the service provider 201 an SSP identifier of an SSP 205 in the terminal 203 in which the bundle 207 is to be installed. The SSP identifier transmitted to the service provider 201 in the service subscription process 210 may also allow the bundle 207 purchased by the user 200 to be installed only in the SSP 205 having the SSP identifier.
[0131] According to some embodiments, Figure 2In the service subscription process 210 of the present invention, the user 200 may receive an SSP activation code issued from the service provider 201 as a predetermined type of information required to install the bundle 207 in the terminal 203. The SSP activation code may be issued in the form of a QR code, or may be issued in the form of a string or link in a uniform resource identifier (URI) format via email, text, or an application linked to the service provider. According to some embodiments, the SSP activation code provided to the user 200 after subscribing to the telecommunication service may include information for downloading the telecommunication bundle and an eSIM activation code for downloading the eSIM profile, instead of the telecommunication bundle.
[0132] In the bundle manufacturing requirement transmission process 211, the service provider 201 and the SPB manager 202 may perform a preparation process for a bundle download. In the bundle manufacturing requirement transmission process 211, the service provider 201 may selectively transmit to the SPB manager 202 an identifier (SSP ID) of the SSP 205 on which the bundle is to be installed, and may transmit to the SPB manager 202 at least one of a specific bundle identifier (SPB ID) and a bundle family identifier (SPB family ID), which are capable of providing a service selected by a subscriber. In the package manufacturing requirement transmission process 211, the SPB manager 202 may select one of a package having the transmitted specific bundle identifier or a package having the transmitted bundle family identifier, and may transmit the identifier of the selected package to the service provider 201. In the bundle manufacturing requirement transmission process 211, the service provider 201 or the SPB manager 202 may newly generate a bundle matching ID capable of distinguishing the selected bundle. The bundle matching ID capable of distinguishing the bundle may be referred to as "CODE_M". In addition, the SPB manager 202 can connect the transmitted SSP identifier (SSP ID) and the selected bundle to each other, and can manage them. In the bundle manufacturing requirement transmission process 211, the SPB manager 202 can transmit the bundle management server address (SPB manager address) to the service provider 201, from which the selected bundle can be downloaded. The bundle management server address can be a designated or temporary address of a bundle management server that stores the prepared bundle, and can be an address of another bundle management server that can store and obtain download information (server address, etc.) of the prepared bundle. In the bundle manufacturing requirement transmission process 211, when the service provider 201 requests the SPB manager 202 to prepare a telecommunications bundle, the service provider 201 can provide information about the eSIM profile that matches the telecommunications bundle.
[0133] When a part of the bundle manufacturing requirement transmission process 211 precedes the service subscription process 210, the service provider 201 may transmit the download information of the prepared bundle to 200 in the service subscription process 210. The bundle download information may selectively transmit at least one of a bundle management server address (SPB manager address) for preparing the bundle, a bundle matching ID of the prepared bundle, and a bundle family identifier (family identifier) of the prepared bundle.
[0134] refer to Figure 2 , in the process 231 for inputting information about the bundle to be downloaded, the bundle download information may be transmitted to the LBA 204 of the terminal 203. The bundle download information may be at least one of the following: the bundle management server address (SPB manager address) to which the LBA 204 is to be connected, the identifier of the bundle prepared in the bundle manufacturing requirement transmission process 211, and the bundle family identifier of the prepared bundle. The bundle identifier may include at least one of the bundle event ID or the bundle matching ID generated in the bundle manufacturing requirement transmission process 211. In addition, the bundle identifier may include the bundle family identifier of the prepared bundle. The bundle event ID may include at least one of the bundle matching ID and the bundle management server address of the bundle prepared in the bundle manufacturing requirement transmission process 211. The bundle download information may be input into the LBA 204 by the user 200 inputting the SSP activation code into the LBA 204 (e.g., by performing QR code scanning, direct text input, etc.) or by using push input through an information providing server (not shown). Furthermore, the LBA 204 may access an information providing server (not shown) pre-configured in the terminal 203 to receive the bundle download information.
[0135] The download of the bundle from SPB manager 202 to SSP 205 may be accomplished by functions and operations performed in interface 221 between SPB manager 202 and LBA 204 and in interface 222 between LBA 204 and SPB loader 206. Interface 222 between LBA 204 and SPB loader 206 may correspond to Figure 1 The first interface 122 in. The interface 222 between the LBA 204 and the SPB loader 206 can be referred to as a Si3 interface.
[0136] Figure 3 A process between entities when an SSP terminal receives an event generated by a service provider according to an embodiment of the present disclosure is shown.
[0137] refer to Figure 3, the entire process of the SSP terminal 305 receiving and processing an event occurring from the service provider 302 may be performed in the order of a service subscription process 310, an event occurrence process 311, an event registration process 312, an event presence / absence determination process 313, an event package request process 314, and an event processing process 315. In the above process, when the event to be executed in the event processing process 315 does not correspond to a bundle installation (for example, corresponds to remote bundle management), the service subscription process 310 may be omitted.
[0138] Furthermore, the event occurrence process 311 executed once may cause the SPB manager 303 to execute the event registration process 312 several times, or may cause the SPB manager 303 to execute the event registration process 312 periodically.
[0139] The user 301 may perform a service subscription process 310 with respect to the service provider 302. The service subscription process 310 may include a process in which the user 301 pays a predetermined amount of money to the service provider 302 to obtain services to be provided through a bundle and purchases the bundle.
[0140] In the service subscription process 310, the user 301 may transmit the SSP identifier of the user's own SSP terminal 305 to the service provider 302. In the service subscription process 310, the user 301 may transmit the discovery service configuration performed in the user's own SSP terminal 305 to the service provider 302.
[0141] The service provider 302 may perform an event generation process 311 for the SPB manager (bundle management server) 303. The event generation process 311 may be one of the following operations.
[0142] -Bundle subscription. The bundle subscription may be performed before or after the service subscription process 310. The bundle subscription may request the service provider 302 to perform a preparation process for later transmitting a bundle satisfying a specific condition among a plurality of bundles managed by the SPB manager 303 to the SSP terminal. The SPB manager 303 may prepare a reference value capable of indicating a bundle to be prepared through the bundle subscription.
[0143] The reference value may be referred to as MatchingID, code matchingID, or CodeM.
[0144] -Bundle generation subscription. The bundle generation subscription may be performed before or after the service subscription process 310. The bundle generation subscription may be a process in which the service provider 302 requests the SPB manager 303 to generate a bundle that meets certain conditions. In the bundle generation subscription process, the SPB manager 303 may prepare and manage a bundle so that the bundle may be delivered to a specific SSP terminal. The SPB manager 303 may prepare a reference value that may indicate a bundle to be generated through the bundle generation subscription. The reference value may be referred to as a MatchingID or a code MatchingID.
[0145] - Remote Bundle Management Subscription. The Service Provider 302 can request Remote Bundle Management from the SPB Manager 303 in order to remotely manage the bundles pre-installed in a specific SSP terminal.
[0146] - Remote bundle management command generation subscription. The service provider 302 can request the SPB manager 303 to generate a remote bundle management command in order to remotely manage the bundles pre-installed in a specific SSP terminal.
[0147] Through the event generation process 311, the SPB manager 303 can generate an auxiliary platform bundle image to be transmitted to the SSP terminal, can prepare for auxiliary platform bundle image generation, can generate a remote bundle management package, or can prepare for remote bundle management package generation. When the SSP terminal 305 later requests a bundle download or a remote bundle management bundle from the SPB manager 303, if the event corresponding thereto is managed, the second bundle information can allow the SSP terminal 305 to perform the bundle download or remote bundle management process.
[0148] SPB manager 303 may perform an event registration process 312 for SSPDS 304 .
[0149] In the event registration process 312, the SPB manager 303 may register the events managed by the SPB manager 303 through the event generation process 311 in the SSPDS 304. In the event registration process 312, the information transmitted by the SPB manager 303 to the SSPDS 304 may include some or all of the following items.
[0150] - The first SSP identifier of the SSP that is to execute the event.
[0151] - The second SSP identifier of the SSP that is to execute the event.
[0152] - Event description. The event description may indicate whether the corresponding event is a bundle installation or a remote bundle management. In addition, the event description may also include the name of the service provider 302 that caused the corresponding event to occur, the related family identifier, or the CID. Alternatively, the event description may also include other additional explanations related to the event.
[0153] - Code Match Identifier (CodeM): The Code Match Identifier (CodeM) may be later transmitted by the SSP terminal to the SPB manager 303 and used to execute the event. When the event is a bundle installation, the Code Match Identifier (CodeM) may be an identifier indicating a specific bundle managed by the SPB manager 303. When the event is a remote bundle management, the Code Match Identifier (CodeM) may be an identifier indicating a package including remote bundle management commands managed by the SPB manager 303.
[0154] In the event registration process 312, the SSPDS 304 may manage events in the following manner. The following types of information may be managed for an event. Depending on the type of event, the types of information managed together for an event may include some or all of the following types of information.
[0155] - Event identifier (Event ID).
[0156] - The first SSP identifier of the SSP in which the event is to be processed.
[0157] - A second SSP identifier of the SSP in which the event is to be processed.
[0158] - The address (FQDN etc.) of the SPB Manager that the SSP terminal will access for event handling.
[0159] - The SSP terminal shall transmit to the SPB manager a code matching identifier (CodeM) for event processing.
[0160] - Description of the event.
[0161] - The identifier of the bundle for remote bundle management or the bundle to be installed (Secondary Platform Bundle Identifier).
[0162] - The family identifier of the bundle to be managed remotely or the bundle to be installed.
[0163] - The host object identifier or CID of the bundle for remote bundle management or the bundle to be installed.
[0164] The following table may be referred to as an example in which the SSPD 304 manages events registered in the SSPD 304 through the event registration process 312. The following table may be an example showing events managed based on the above-described embodiment.
[0165]
Table 1
[0166]
[0167] The LBA 306 of the SSP terminal 305 may determine through the event discovery process 313 whether there is an event to be processed.
[0168] In process 313, LBA 306 may request an event list from SSPDS 304. In process 313, LBA 306 and SSPDS 304 may form a secure channel via a TLS connection. LBA 306 may generate a second SSP identifier and may transmit the second SSP identifier to SSPDS. The second SSP identifier may be generated as follows:
[0169] The second SSP identifier may be generated by hashing the first SSP identifier using a SHA-1 or SHA-2 hash function. In the process of generating the second SSP identifier, a function different from the SHA-1 or SHA-2 hash function may also be used to generate the second SSP identifier.
[0170] - The second SSP identifier may be generated by hashing a string using a SHA-1 or SHA-2 hash function, in which the first SSP identifier is combined with the information about the SSPDS 304. In the process of generating the second SSP identifier, a function other than the SHA-1 or SHA-2 hash function may also be used to generate the second SSP identifier. The information about the SSPDS 304 may be one or some of values such as an object identifier of the SSPDS 304, a fully qualified domain name (FQDN), a uniform resource locator (URL), an IP address, etc., or may be information generated by combining values in various methods. In addition to the above information, the information about the SSPDS 304 may be information related to the SSPDS 304. The first SSP identifier and the information about the SSPDS 304 may be combined with each other by various methods, such as concatenation of the strings to be combined (string concatenation) or XOR (exclusive OR gate) calculation.
[0171] - In the process of generating the second SSP identifier, a function different from the SHA-1 or SHA-2 hash function may be used to generate the second SSP identifier. The function input value may be configured by combining information known to both the SSP terminal 305 and the SSPDS 304. The information may be one or some of the values of the first SSP identifier such as the value of the SSP terminal 305 and the object identifier, fully qualified domain name (FQDN), uniform resource locator (URL), IP address, etc. of the SSPDS 304, or may be information generated by combining values in various methods.
[0172] In an example of generating a second SSP identifier, when an SSP terminal (whose primary platform identifier is "ABCD1234") wants to access SSDPS (whose FQDN is "WWW.SPBMDS.COM"), and wants to request SSPDS to determine whether there is an event to be performed by the SSP terminal, the SSP terminal can generate the second SSP identifier as follows.
[0173] - Second SSP identifier = SHA-2(ABCD1234WWW.SPBMDS.COM)
[0174] SHA-2("string") is a value obtained by hashing "string" using the SHA-2 hash function.
[0175] In process 313, LBA 306 may transmit a first SSP identifier.
[0176] In process 313 , LBA 306 may communicate the second SSP identifier to SSPDS 304 .
[0177] In process 313, LBA 306 may transmit both the first SSP identifier and the second SSP identifier.
[0178] In process 313, by means of the second SSP identifier transmitted from LBA 306, SSPDS 304 may determine whether there is an event to be performed by SSP terminal 305 as follows:
[0179] - Determine whether there is an event indexed by the transmitted second SSP identifier among the events managed by the SSPDS 304. If the first SSP identifier is received from the LBA 306, determine whether there is an event indexed by the first SSP identifier.
[0180] - The second SSP identifier, where the event managed by the SSPDS 304 is to be executed.
[0181] - The first SSP identifier where the event managed by the SSPDS 304 is to be executed.
[0182] According to some embodiments, the event discovery process 313 is omitted and the event acquisition process 314 may be performed. In addition, although not shown, the event discovery process 313 may be replaced by a process in which the SSPDS 304 notifies the SSP terminal 305 of the existence of an event by using a push message.
[0183] In the event package request process 314, the SSP terminal 305 may request an event package from the SSPDS 304. The event package request process 314 may start with a process in which the SSP terminal 305 sends an event package request message to the SSPDS 304. The process 314 may include a process of performing mutual authentication with the SSPDS 304 based on the certificate of the SPBL 307 in the SSP terminal 305 and the certificate of the SSPDS 304. In the process 314, when there is an event package to be transmitted to the SSP terminal 305 that has requested the event package, the SSPDS 304 may transmit the event package to the SSP terminal 305. At this time, for the integrity of the event package data, the SSPDS 304 may generate a digital signature in the information including the event package, and may transmit the digital signature. The digital signature may be verified using the certificate of the SSPDS 304. When the SSP terminal 305 receives the signature of the SSPDS 304 in process 314, the LBA 306 may transmit the event package and the certificate, certificate chain, and digital signature of the SSPDS 304 to the SPBL 307, and may verify the signature, thereby verifying the integrity of the event package data.
[0184] In the event handling process 315, the SSP terminal 305 may execute an event based on the information about the event package received in the event package request process 314. In the process 315, the SSP terminal 305 may perform a bundle download process or a remote bundle management package request process with the SPB manager 303 corresponding to the SPB manager information included in the received event package. In the process 315, the SSP terminal 305 may transmit the information included in the event package received in the process 314 to the SPB manager 303, and may request the SPB manager 303 for a bundle to be installed or a remote bundle management command to be executed.
[0185] Figure 4 A process is shown in which an event to be processed by an SSP terminal occurs, the event is registered in an event management server, and the SSP terminal acquires and processes the registered event according to an embodiment of the present disclosure.
[0186] The process of the SSP terminal 401 processing the event generated by the service provider 406 includes five processes. These five processes are an event generation process 411, an event registration process 412, an event discovery process 413, an event acquisition process 414, and an event processing process 415, and some of them may be omitted.
[0187] In this embodiment, SPBL 402, LBA 403, SSPDS 404 and SPB manager 405 may correspond to Figure 3 The SPBL 307, LBA 306, SSPDS 304 and SPB manager 303 in it.
[0188] The user 407 and the service provider 406 may perform a service subscription process 410 before the event occurrence process 411. The service subscription process 410 may refer to Figure 3 The service subscription process 310 is executed.
[0189] The process of event 411 can be referred to Figure 3 The event occurrence process 311 is executed.
[0190] The event registration process 412 can refer to Figure 3 The event registration process 312 is executed.
[0191] The event discovery process 413 can refer to Figure 3 The event discovery process 313 in is executed.
[0192] The event acquisition process 414 can refer to Figure 3 The event acquisition process 314 in is executed.
[0193] Event handling process 415 can refer to Figure 3 The event processing process 315 is executed.
[0194] Figure 5 It shows an SSP terminal requesting an event management server to search for events and obtain events according to an embodiment of the present disclosure.
[0195] Figure 5 The event discovery process 510 in may be Figure 4 In addition, the event discovery process 510 may be Figure 3 An embodiment of the event discovery process 313 in.
[0196] Figure 5 The event acquisition process 520 in may be Figure 4 In addition, the event acquisition process 520 may be Figure 3 An embodiment of the event acquisition process 314 in.
[0197] Event discovery process 510 may include some or all of operations 511 , 512 , 513 , 514 , and 515 .
[0198] In operation 511 , LBA 503 may establish a TLS channel in SSPDS 504 .
[0199] In operation 512, the LBA 503 may generate a second SSP identifier. According to some embodiments, the second SSP identifier may be generated using the first SSP identifier of the SSP terminal 501.
[0200] The second SSP identifier may be generated as follows:
[0201] The second SSP identifier may be generated by hashing the first SSP identifier using a SHA-1 or SHA-2 hash function. In the process of generating the second SSP identifier, a function different from the SHA-1 or SHA-2 hash function may also be used to generate the second SSP identifier.
[0202] - The second SSP identifier may be generated by hashing a string using a SHA-1 or SHA-2 hash function, in which the first SSP identifier is combined with the information about the SSPDS 504. In the process of generating the second SSP identifier, a function different from the SHA-1 or SHA-2 hash function may be used to generate the second SSP identifier. The information about the SSPDS 504 may be one or more values such as an object identifier of the SSPDS 504, a fully qualified domain name (FQDN), a uniform resource locator (URL), an IP address, etc., or may be information generated by combining values in various methods. In addition to the above information, the information about the SSPDS 504 may be information related to the SSPDS 504. The first SSP identifier and the information about the SSPDS 504 may be combined with each other by various methods, such as concatenation of the strings to be combined (string concatenation) or XOR calculation.
[0203] - In the process of generating the second SSP identifier, a function different from the SHA-1 or SHA-2 hash function may be used to generate the second SSP identifier. The function input value may be configured by combining information known to both the SSP terminal 501 and the SSPDS 504. The information may be one or more values such as the first SSP identifier of the SSP terminal 501 and the object identifier, fully qualified domain name (FQDN), uniform resource locator (URL), IP address, etc. of the SSPDS 504, or may be information generated by combining values in various methods.
[0204] In an example of generating a second SSP identifier, when an SSP terminal (whose primary platform identifier is "ABCD1234") wants to access an SSDPS (whose FQDN is "WWW.SPBMDS.COM") and requests the SSPDS to determine whether there is an event to be performed by the SSP terminal, the SSP terminal may generate the second SSP identifier as follows:
[0205] - Second SSP identifier = SHA-2(ABCD1234WWW.SPBMDS.COM).
[0206] SHA-2("string") is a value obtained by hashing "string" using the SHA-2 hash function.
[0207] In operation 513, LBA 503 may transmit an SSP identifier to SSPDS 504 to request SSDPS 504 to discover an event to be processed by LBA 503. According to some embodiments, in operation 513, the SSP identifier transmitted by LBA 503 may be a first SSP identifier. According to some embodiments, in operation 513, the SSP identifier transmitted by LBA 503 may be a second SSP identifier. According to some embodiments, in operation 513, the SSP identifier transmitted by LBA 503 may include a first SSP identifier and a second SSP identifier. In operation 513, LBA 503 may also transmit additional information together with the SSP identifier to SSPDS 504, and the additional information may be used to search for an event or identify SSP terminal 501.
[0208] In operation 514, the SSPDS 504 searches whether there is an event indexed by the SSP identifier among unprocessed events managed by the SSPDS 504, using the SSP identifier transmitted to the LBA 503 in operation 513. The unprocessed event managed by the SSPDS 504 may be an event that has not been transmitted to the SSP terminal 501 among events registered from a server or an SPB manager of a service provider with which the SSPDS 504 has a contract. In addition, the operation of searching for the event indexed by the SSP identifier may be an operation of searching for an event to be processed in an SSP having the SSP identifier among events registered in the SSPDS 504, or a process of searching for an event including the SSP identifier among events managed in the SSPDS 504. In addition, in operation 514, the SSPDS 504 may search for an unprocessed event to be processed by the SSP terminal 501 by using information transmitted from the LBA 503.
[0209] In operation 515, the SSPDS 504 may transmit the event discovery result to the LBA 503. The event discovery result may include the following items.
[0210] - Whether there is an event to be processed by the SPBL 502 of the SSP terminal 501.
[0211] -The number of events to be processed by the SPBL 502 of the SSP terminal 501.
[0212] exist Figure 5 In the embodiment, the SPBL 502 as the system bundle of the SSP is a component configured to basically perform bundle management in conjunction with the LBA 503. Figure 5 In this paper, SSP can be used interchangeably with SPBL.
[0213] The event acquisition process 520 may include some or all of operations 521 to 531 .
[0214] LBA 503 may perform event acquisition process 520 without performing event discovery process 510. Furthermore, after performing event discovery process 510, when the event discovery result received in operation 515 indicates that there is an event to be processed by the SSP of SSP terminal 501, LBA 503 may perform event acquisition process 520.
[0215] In operation 521, the LBA 503 may request the SPBL 502 to generate the first SSP information. Operation 521 may include a process of the LBA 503 requesting the SPBL 502 to generate the first SSP information, a process of the SPBL 502 generating the first SSP information, and a process of transmitting the generated first SSP information to the LBA 503. In operation 521, the LBA 503 may store the first SSP information previously received from the SPBL 502, and may reuse the stored first SSP information.
[0216] In operation 522, the LBA 503 may request the SSPDS credential from the SSPDS 504. In operation 522, the LBA 503 and the SSPDS 504 may establish a TLS session. In operation 522, the LBA 503 may transmit the following type of information to the SSPDS 504 to request the SSPDS credential.
[0217] - In operation 521, first SSP information generated by SPBL 502. The first SSP information may be used to select a key formation certificate to be used by SSPDS 504. The first SSP information indicates a CI public key identifier of a signing certificate to be used by SPBL 502, and may be used to respond to SPBL 502. In operation 525, the first SSP information may be used when SSPDS 504 selects an encryption algorithm used by SPBL 502 to generate SSP encryption information. The first SSP information may include specification version information (specification version number) of an SSP used to implement the SPBL.
[0218] -SSP termination information. The SSP termination information may include LBA configuration values or LBA specification version information (specification version number).
[0219] In operation 523, the SSPDS 504 may generate an SSPDS credential based on the information transmitted by the LBA 503 in operation 522, and may transmit the generated SSPDS credential to the LBA 503. The SSPDS credential may include some or all of the following items.
[0220] - SSPDS key-forming certificate. When the SPBL 502 generates SSP encryption information in operation 525, the SSPDS key-forming certificate may be used to form a session key for encryption.
[0221] - The certificate chain used to verify the SSPDS key formation certificate.
[0222] -SSPDS signing certificate and the certificate chain used to verify the SSPDS signing certificate.
[0223] - A CI public key identifier that can be used to select a signing certificate to be used by the SPBL 502.
[0224] - An algorithm identifier that can be used to select an encryption algorithm for SPBL 502 to use.
[0225] In operation 524, the LBA 503 may request the SPBL 502 for an SSPDS certificate. In operation 524, the LBA 503 may transmit the SSPDS server certificate received in operation 523 to the SPBL 502.
[0226] In operation 525, SPBL 502 may perform some or all of the following processes to generate an SSPDS credential.
[0227] - Verify the certificate by using the certificate chain included in the SSPDS certificate received in operation 524 and the SSPDS key certificate (CERT.SPBMDS.KA).
[0228] - Selecting the SPBL signing certificate (CERT.SPBL.DS). The selection of the SPBL signing certificate may be performed based on the information included in the SSPDS credential.
[0229] - Generate a SPBL temporary key pair. The public key of the generated SPBL temporary key pair can be expressed as "ePK.SPBL.KA", and its private key can be expressed as "eSK.SPBL.KA".
[0230] -Generates ID_TRANSAC which can be used as session ID.
[0231] - Generate a first session key (Session Key 1) by using the public key (PK.SPBMDS.KA) included in the SSPDS key generation certificate and the private key (eSK.SPBL.KA) of the SPBL temporary key.
[0232] - Generates an sspImageSessionToken including the SPBL temporary key and generates an sspImageSessionTokenSignature, where the sspImageSessionToken is signed by the private key (SK.SPBL.DS) corresponding to the SPBL signing certificate (CERT.SPBL.DS).
[0233] - Generate second SSP information. The second SSP information may be information of a configuration value of the SSP including the SSPDS.
[0234] - Generate an sspToken including the generated second SSP information, and generate an sspTokenSignature, wherein the sspToken is signed by a private key corresponding to the SPBL signing certificate (CERT.SPBL.DS).
[0235] -Encrypt the SPBL signing certificate (CERT.SPBL.DS), SspToken and SspTokenSignature by using the generated first session key to generate first encrypted information (M-SSP) and first integrity check information (H-SSP). The generated SspToken and SspTokenSignature can be encrypted separately from the SPBL signing certificate to generate second encrypted information (M-SSP2) and second integrity check information (M-SSP2).
[0236] -SSPDS credential generation: Generate an SSPDS credential, including: a certificate chain used by the SPB manager to verify the SPBL signing certificate; a generated sspImageSessionToken; a generated sspImageSessionTokenSignature; a generated sspToken; a generated sspTokenSignature; a generated first encrypted information (M-SSP); and a generated first integrity check information (H-SSP). The SSPDS credential may include a generated second encrypted information (M-SSP2) and a generated second integrity check information (H-SSP2).
[0237] In operation 526, the SPBL 502 may transmit the SSPDS certificate generated in operation 525 to the LBA 503. Operation 526 may be a response to the LBA 503 requesting the SPBL 502 for the SSPDS certificate in operation 524.
[0238] In operation 527, LBA 503 may request an event packet from SSPDS 504. In operation 527, LBA 503 may transmit to SSPDS 504 some or all of the following items.
[0239] - The SSPDS certificate received from the SPBL 502 in operation 526 .
[0240] -SSP terminal information.
[0241] In operation 528, upon receiving the event package request message from LBA 503, SSPDS 504 may perform some or all of the following operations: 1) Verify the SSPDS credentials conveyed by the event package request message. 2) In response to the event package request, generate a response message to be sent to the identified SSP terminal.
[0242] A method for verifying SSPDS credentials may include some or all of the following operations.
[0243] - Generate a first session key (Session Key 1) by using the private key (SK.SPBMDS.KA) for SSPDS key information and the public key (ePK.SPBL.KA) of the SPBL temporary key included in the SSPDS credential received in operation 527. The private key (SK.SPBMDS.KA) for SSPDS key information is a private key paired with the public key (PK.SPBMDS.KA) of the SSPDS key generation certificate that has been selected and transferred to LBA 503 in operation 523.
[0244] - M-SSP decryption using the first session key.
[0245] - Verify the SPBL signing certificate (CERT.SPBL.DS) obtained by M-SSP decryption. Using the SPBL certificate chain included in the SSP certificate, SPBL signing certificate verification can be performed. In addition, using a CI message of the signing certificate sent in operation 522 and to be used by the SSP, SPBL signing certificate verification can be performed.
[0246] - Use the SPBL certificate to verify the sspToken obtained by M-SSP decryption and the sspTokenSignature corresponding to its signature.
[0247] - Use the SPBL certificate to verify the sspImageSessionToken and the sspImageSessionTokenSignature corresponding to its signature.
[0248] -Stores the ID_TRANSAC value included in the sspImageSessionToken.
[0249] After successfully performing the SSPDS credential verification, the SSPDS 504 may generate a response message in response to the event package request. The response message generated in response to the event package request may be referred to as an event package request response message. In the process of generating the event package request response message, some or all of the following operations may be performed.
[0250] - If the transaction ID (ID_TRANSAC) is included in the SSPDS certificate received in operation 527, a session corresponding to the transaction ID (ID_TRANSAC) is called.
[0251] -Based on the information managed in the session, select the SSPDS signing certificate (CERT.SPBMDS.DS) and the certificate chain that can be used to verify it.
[0252] - Extracting the SSP identifier from the information included in the SSPDS certificate received in operation 527 .
[0253] - Extracting an event record including an SSP identifier or indexed by an SSP identifier from among the event records managed by the SSPDS 504. The process of extracting the event record may be a process of classifying the event record to be processed by the SSP identified by the SSP identifier.
[0254] -Generate an event package by packaging the extracted event records.
[0255] -Sign the generated event package by the private key corresponding to the public key of the SSPDS signing certificate to generate an event package signature.
[0256] - Include the generated event package in the event package request response message.
[0257] - Include the generated event package signature in the event package request response message.
[0258] - Include the selected SSPDS signing certificate (CERT.SPBMDS.DS) and certificate chain in the Event Package Request Response message.
[0259] - Include the transaction ID (ID_TRANSAC) included in the SSPDS voucher received in operation 527 in the event package request response message.
[0260] In operation 528, when there is no event record including or indexed by the SSP identifier, an event package request response message may be generated as a message that only notifies the LBA 503 of the lack of an event to be performed.
[0261] In operation 529 , the SSPDS 504 may transmit the event packet request response message generated in operation 528 to the LBA 503 .
[0262] In operation 530 , the LBA 503 may transfer the event package request response message received in operation 529 to the SPBL 502 , and may request the SPBL 502 to verify the response message.
[0263] In operation 531, the SPBL 502 may verify the event packet request response message received from the LBA 503 in operation 530. The response message verification in operation 531 may include some or all of the following operations.
[0264] - Verify the signing certificate of the SSPDS 504 included in the response message. This operation may be the process of verifying the SSPDS signing certificate (CERT.SPBMDS.DS) and the certificate chain.
[0265] - Verify the signature included in the response message. This verification can be performed by the public key in the verified SSPDS certificate.
[0266] - Verify whether the SSP identifier in each event record of the event package included in the response message is one of the SSP identifiers configured in the SPBL. The SSP identifier configured in the SPBL may be the first SSP identifier or the second SSP identifier.
[0267] In operation 532, the SPBL 502 may transmit the result of the event packet verification performed in operation 531 to the LBA 503. The result of the event packet verification may be transmitted in the form of one of error codes distinguishing the reason for success or failure of the verification.
[0268] In operation 533, the LBA 503 may process the event by using the information in the event packet received in operation 529. The event processing may be one of the following operations.
[0269] - Request bundle download and remote package management commands from the bundle management server (SPB manager) by using the bundle management server address included in the event packet.
[0270] - Request bundle download from the bundle management server (SPB manager) by using the code match identifier (CodeM) included in the event package or the bundle management server address and the event identifier.
[0271] - Request a remote management command or remote management package from the bundle management server (SPB manager) by using the code matching identifier (CodeM) or the bundle management server address and event identifier included in the event package.
[0272] - Requesting a remote management command or remote management package for a specific bundle identified by the bundle identifier from the bundle management server (SPB manager) by using the code matching identifier (CodeM) and the bundle identifier or the bundle management server address and the event identifier included in the event package.
[0273] Figure 5 The embodiments in may be similarly applied to an eSIM terminal including an eUICC. In this case, the SSP terminal 501 may correspond to the eSIM terminal, the SPBL 502 may correspond to the eUICC or the ISD-R, the LBA 503 may correspond to the LPA, and the event management server 504 may correspond to the SM-DS. In addition, the process of generating the second SSP identifier in operation 512 may be a process of generating the second SSP identifier by using the eID as the identifier of the eUICC instead of the first SSP identifier. In addition, operations 521 to 532 corresponding to the event acquisition process 520 may correspond to a process in which the eUICC and the SM-DS mutually authenticate and acquire an event based on a digital certificate in the GSMA SGP.22 standard process.
[0274] Figure 6 It shows other processes of the SSP terminal requesting the event management server (SSPDS) to search for events and obtain events according to an embodiment of the present disclosure.
[0275] Figure 6 It is possible to execute the event acquisition process 414 without executing Figure 4 A specific implementation of the event discovery process 413 in FIG.
[0276] Figure 6Operations 621 to 633 in the above example can be performed with Figure 5 Operations 521 to 533 are performed in the same manner.
[0277] When the event packet request response message transmitted from the SSPDS 604 in operation 629 indicates that there is no event to be performed, the LBA 603 may end the process without performing operations after operation 630.
[0278] Figure 7 It shows other processes of the SSP terminal requesting the event management server (SSPDS) to search for events and obtain events according to an embodiment of the present disclosure.
[0279] Figure 7 The SSP terminal 701 responds to Figure 4 An embodiment of the event discovery process 413 in which a response including an event package is received and processed from a server.
[0280] Figure 7 Operations 711, 712, and 713 in FIG. Figure 5 Operation 713 may be a process in which LBA 703 requests an event package by transmitting an SSP identifier to event management server 704.
[0281] exist Figure 7 In operation 714, the event management server 704 identifies the SSP terminal through the SSP identifier received in operation 713, and searches for an event that matches the received SSP identifier or is indexed by the received SSP identifier. When there is an event that matches the received SSP identifier or is indexed by the received SSP identifier, the event management server 704 generates an event package. Regarding the process of generating an event package, reference may be made to a part of the event package request response message generation process in operation 528.
[0282] In operation 715 , the event management server 704 may transmit an event package request response to the LBA 703 .
[0283] Operations 730, 731, 732, and 733 may refer to Figure 5 The operations 530, 531, 532 and 533 in are performed.
[0284] Figure 7The embodiments in may also be similarly applied to an eSIM terminal including an eUICC. In this case, the SSP terminal 701 may correspond to the eSIM terminal, the SPBL 702 may correspond to the eUICC or the ISD-R, the LBA 703 may correspond to the LPA, and the event management server 704 may correspond to the SM-DS. In addition, the process of generating the second SSP identifier in operation 712 may be a process of generating the second SSP identifier by using the SM-DS address and the eID as the identifier of the eUICC instead of the first SSP identifier. In addition, operations 730, 731, 732, and 733 may correspond to a process in which the eUICC verifies an event, a certificate, and a signature sent by the server as defined in the GSMA SGP.22 standard.
[0285] Figure 8 An event discovery configuration in a terminal according to an embodiment of the present disclosure is shown.
[0286] The terminal may be an SSP terminal. Reference numeral 801 is an example of values related to event discovery configuration in a terminal shown in a tabular form. The event discovery configuration may be a configuration related to information about an event management server to be accessed by the terminal in order to perform an event discovery process and an event acquisition process. The information about the event management server may be classified and configured based on various elements. The value shown in reference numeral 801 may be configured and stored in the LBA or SPBL of the terminal. According to some embodiments, reference numeral 801 may be configured in the SPBL of a system bundle as an SSP, and the terminal software LBA may read and use the value corresponding to reference numeral 801 from the SPBL.
[0287] Each value in column 802 may be an address of an event management server. Each value in column 802 may be information including a value (eg, FQDN, IP address, or port number) associated with a server address that the LBA will use to access the event management server.
[0288] In addition, each value in column 802 can be related to a corresponding value in each of columns 803, 804, 805, 806, and 807 that appear in the same row. In a specific example, the value of reference numeral 822 (www.spbmDs-example1.com) can indicate the address of the event management server, which the LAB will use when the family identifier is telecom ID 823, the CID is GSMA_ID 824, and the event acquisition method is polling 826. According to the example of reference numeral 801, each value in column 803 can indicate a family identifier, each value in column 804 can indicate a CID, column 805 can indicate a bundle identifier, and column 806 can indicate an event management method. In addition to the above-mentioned family identifier, CID, bundle identifier, and event acquisition method, the content of the event discovery configuration table 801 can be extended by adding other elements.
[0289] The values included in row 811 may be values configured by the terminal manufacturer when manufacturing the SSP terminal. When manufacturing a terminal for a specific operator, the values of columns 802, 803, 804, 805, 806, and 807 in row 811 may be values based on manufacturer preferences or specific operator preferences.
[0290] Likewise, the values included in row 812 may correspond to values configured by the service provider after the bundle is installed in the SSP. The values configured by the service provider may be the address of an event management server that the LBA will access in order to receive commands for later remote management of the bundle during the process of installing the bundle in the SSP. In a specific example, the value of reference numeral 832 (www.spbmDS-example6.com) may be the address of an event management server that the LBA will access in order to search for and obtain events for processing a specific bundle as BundleID_1 835.
[0291] Fig. 9 A process for transmitting an event discovery configuration of a terminal to a service provider according to an embodiment of the present disclosure is shown.
[0292] Fig. 9 It may correspond to some embodiments in which the user 904 transmits the event discovery configuration of the terminal to the service provider 907 during the service subscription. In addition, Fig. 9 Can be used with Figure 3 The service subscription process 310 or Figure 4 Corresponding to a portion of a specific embodiment of the service subscription process 410 in.
[0293] For event discovery configuration, please refer to Figure 8 .
[0294] A user 904 may visit a store of a service provider 907, and may transmit an event discovery configuration of an SSP terminal to a server of the service provider 907 through a store employee 906. In addition, the user may transmit the event discovery configuration through a web page 906 linked to a server of the service provider 907. For convenience, the service provider 907, the store employee, and the web page 906 may all be referred to as reference numeral 905.
[0295] according to Fig. 9 The SSP terminal 901 may transmit the event discovery configuration according to operations 911 , 912 , and 913 , or may transmit the event discovery configuration according to operation 921 .
[0296] The process of transmitting the event discovery configuration of the terminal to the service provider 907 according to operations 911, 912, and 913 may be a process using the SSP terminal.
[0297] Operation 911 may be a process in which user 904 operates SSP terminal 901 to call event discovery configuration of the SSP terminal through a menu item of LBA 903. Operation 911 may be performed through various applications of SSP terminal 901. In a specific example, operation 911 may be performed through a basic configuration menu of the terminal OS, a manufacturer configuration application menu, a mobile operator application menu, or a configuration menu of an application provided by an SSP.
[0298] Operation 912 is an operation in which the application forms information to be transmitted to the server when the user drives the specific application in operation 911. In operation 912, the event discovery configuration value of the SSP terminal may be encoded and output on the screen in the form of a QR. The result output in operation 912 may depend on the application selected by the user in operation 911. In a specific example, when the event discovery configuration is called from the telecommunication configuration menu of the SSP terminal 901, the event discovery configuration result in which the family identifier is limited to the telecommunication identifier may be encoded in the form of a QR code and may be output on the screen. In addition, the information encoded in the form of a QR code in operation 912 may additionally include the SSP identifier of the terminal. The SSP identifier of the terminal is a main platform identifier, which is a first SSP identifier. The SSP identifier may be used in the process of the service provider 907 binding a bundle that is only installed in a specific SSP.
[0299] In some specific embodiments of operation 912, the QR code may be formed as follows.
[0300] -Forming the main platform identifier of the terminal and the event discovery configuration value of the terminal into a concatenated string. The event discovery configuration value of the terminal may be a string encoded in the form of a tag length value (TLV). Figure 8The configuration values in table 801 may be continuously included in the event discovery configuration values of the terminal encoded in the form of TLV.
[0301] In operation 913, the event discovery configuration information of the terminal, which has been formed in operation 912, may be transmitted to the service provider 907. Operation 913 may be a process of scanning the QR code formed in operation 912.
[0302] Operation 921 may be a process of transmitting the event discovery configuration of the SSP terminal to the service provider 907 through a QR code or a barcode attached to a product box of the SSP terminal. The information included in the QR code or the barcode attached to the product box may be the same as the information generated in operation 912, or may be some filtered information generated in operation 912.
[0303] Fig.10 It is shown that an event registered in an event management server is transmitted to an SSP terminal through a push message according to an embodiment of the present disclosure.
[0304] When an event is registered from a service provider or bundle management server (SPB manager), the event management server can notify the SSP terminal that the event has been registered through a push message. This is called a push-based event notification function.
[0305] refer to Fig.10 , the SSP terminal 1001 may include a push service client software 1004 capable of supporting a push service. The push service client 1004 may be software supported at the framework of the operating system of the terminal (e.g., ANDROID, iOS, WINDOWS, etc.). The push service client 1004 may be used in conjunction with a notification system, such as Google Cloud Messaging (GCM), Firebase Cloud Messaging (FCM), Apple Push Notification Service (APNS), Azure Notification Center (AZURE NOTIFICATIONHUBS), or Windows Notification Service (WNS).
[0306] The push service client 1004 of the terminal may be linked with the push service server 1006 , and a push message may be transmitted from the event management server 1007 to the LBA 1003 .
[0307] First, LBA 1003 should be registered in the push service client 1004 in order to receive the push service. The method for registering LBA 1003 in the push service client 1004 may be a method of issuing a push token to LBA 1003 by using an API provided by the push service client 1004. The push token may be used to uniquely identify a specific application (e.g., LBA 1003 in this embodiment) among multiple applications registered in the push service client 1004.
[0308] LBA 1003 registers the push service with push service client 1004 in terminal 1001. In this process, in operation 1010, LBA can be registered as an instance in the push service client and a push token can be issued. Fig.12 As shown, the push service client 1204 may also transmit application information of LPA 1203 (e.g., a hash value of the application, an application identifier, etc.) to the push service server 1206 so that LPA 1203 registers the push service. In order to register the push service in multiple event management servers 1007, multiple push tokens may be issued from the push service client 1004 to LBA 1003, and the push tokens may be classified according to the event management server to register the push service in each event management server. In addition, LBA 1003 may register the push service in multiple event management servers 1007 using the same push token. In order to register the push service in multiple event management servers 1007 by using the same push token, in the push service registration operation 1011, LBA 1003 may transmit additional information for identifying the event management server 1007 to the event management server 1007. The additional information may be a second SSP identifier.
[0309] When a push token is issued, the SSP terminal 1001 transmits the push token to the event management server 1007 to use the push service by using the push token in operation 1011. When the SSP terminal 1001 transmits the push token, the following types of information may be included so that the event management server 1007 can register the push service on the server side.
[0310] - Information about the push service registered by the SSP terminal (e.g., the name of GCM, FCM, APNS, WNS, or other private push service, or the address or name of the push server)
[0311] - Push token.
[0312] - The first SSP identifier.
[0313] - Second SSP identifier.
[0314] - Second SSP information. The second SSP information may include an encrypted SPBL certificate and a temporary key capable of forming a session key.
[0315] When the SSP identifier is linked to the push token, the event management server 1007 that has received the above information manages the SSP identifier (the first SSP identifier or the second SSP identifier). The event management server 1007 can register the push service together with the push service server 1006. When an event is registered in the event management server 1007 after the push service is registered, the event management server 1007 determines the first SSP identifier or the second SSP identifier of the SSP terminal 1001 to receive the event, generates a push message by using the push token linked to the corresponding SSP identifier, and sends the push message to the push service server.
[0316] When an event is registered in the event management server 1007 by the service provider or the bundle management server in operation 1012, the event management server 1007 may determine whether the SSP terminal 1001 that will receive the event has registered for the push service in operation 1013. Operation 1013 may be a process of determining whether the SSP terminal to which the event registered in the event management server 1007 will be transmitted has registered for the push service according to operation 1011. At the time of event registration, the identifier of the SSP terminal 1001 that is to receive the event is also sent, so the identifier of the SSP terminal may be used to determine whether the SSP terminal 1001 supports the push service.
[0317] When the SSP terminal 1001 that is to receive the event registered in operation 1012 registers for the push service, in operation 1014, the event management server 1007 generates a push message and transmits the message to the push service server 1006. In the push message generation process, the event management server 1007 can generate a push message including a push token corresponding to the SSP terminal 1001 to which the event is to be sent. When the push service server 1006 identifies the push service client 1004 to which the push message is to be sent, the push token can be used. In the push message generation process, a push message further including an SSP identifier can be generated. When the SSP terminal identifies the event management server 1007 that sends the push message, the SSP identifier can be used. Specifically, when the second SSP identifier is generated using information about the event management server 1007, and when the second SSP identifier is included in the push message, the LBA 1003 can identify the event management server 1007 that has sent the push message by the second SSP identifier included in the push message. In addition, when the push message includes the address of the event management server 1007 (e.g., FQDN, IP address, etc.) or the object identifier (OID) of the event management server 1007, LBA 1003 can identify the event management server 1007 that has sent the push message by the address of the event management server 1007 (e.g., FQDN, IP address, etc.) or the object identifier (OID) of the event management server 1007 included in the push message.
[0318] In operation 1015 , the push service server 1006 transmits the generated push message to the push service client 1004 , and the push service client 1004 receives the push message according to the push token included in the push message.
[0319] In operation 1016, the push service client 1004 transmits the push message to the software in the terminal, which is linked to the push token included in the push message. In this embodiment, the software in the terminal is LBA1003.
[0320] In operation 1017, the LBA 1003 that has received the push message searches for an event management server address that matches the push token included in the push message, and in operation 1018, after a mutual authentication process with the event management server 1007 corresponding to the address, makes an event package transmission request. If the push message includes an SSP identifier, the event management server address can also be discovered by using the SSP identifier. Figure 4 Operation 414 in Figure 5 The event acquisition process 520 and Figure 6 and Figure 7One of the embodiments in is used to execute the event packet transmission request.
[0321] Fig.11 An SSP terminal and an event management server for registering a push service according to an embodiment of the present disclosure are shown.
[0322] The address of the event management server 1107 to which the push service is desired to be connected and the information on whether the push service is supported may be stored in the LBA 1103 of the SSP terminal 1101, or may be collected from the SSP metadata, etc., and may be stored in the SPBL 1102. Although not shown, through the information on the event management server 1107 stored in the LBA 1103 or the SPBL 1102, the SSP terminal 1101 may determine whether the connection of the push service with the event management server 1107 is possible.
[0323] In operation 1110, the LBA 1103 of the SSP terminal 1101 requests the push service client 1104 to register for the push service. When requesting the push service registration, the LBA 1103 may transmit its application information to the push service client 1104. The application information of the LBA transmitted by the LBA 1103 to the push service client 1104 may include a hash value of the LBA application, its package name, etc. When requesting the push service registration, the LBA 1103 may additionally transmit an SSP identifier to the push service client 1104. Although not shown, the LBA 1103 may read the first SSP identifier from the SPBL 1102, and may combine the first SSP identifier with the address of the event management server 1107 to generate a second SSP identifier. The address of the event management server 1107 may be a fully qualified domain name (FQDN) or a full uniform resource locator (full URL), or an IP address of the event management server 1107.
[0324] In operation 1111, the push service client 1104 issues a push token to the LBA 1103. The push service client 1104 matches the issued push token with the application information of the LBA.
[0325] Before issuing the push token in operation 1111, the push service client 1104 may also transmit the application information and the push token of the LBA to the push service server 1106 to register the push service. According to some embodiments, the push token may also be generated by the push service server 1106. In this case, the push service client 1104 may generate the push service using the push service server 1106, and the push service server 1106 may generate the push token after generating the push service, and then may transmit the push token to the push service client 1104. The push service client 1104 transmits the push token to the LBA 1103. If the push token is generated by the push service server 1106, operation 1112 may be omitted.
[0326] In operation 1112, the push service client 1104 registers the push service in the push service server 1106 by using the same push token as the push token transmitted to the LBA 1103. In operation 1112, the push service client 1104 may transmit at least one of the application information and the SSP identifier of the LBA to the push service server 1106. For security considerations, it is recommended to use the second SSP identifier as the SSP identifier.
[0327] According to some embodiments, the order of operations 1111 and 1112 may be changed. In this case, the push token may be generated by the push service client 1104 and may be transmitted to the push service server 1106, or may be generated by the push service server 1106 and may be transmitted to the push service client 1104. In operation 1112, the push service server 1106 may match the push token with at least one of the SSP terminal information, the application information of the LBA, and the SSP identifier, and may manage the push token. If the event management server 1107 registers the push service in the push service server 1106 or transmits a push message to it in the future, the information (push token, LBA application information, or SSP identifier) managed by the push service server 1106 in operation 1112 may be used when the push service server 1106 verifies the validity of the information in the transmitted push message or selects the push service client 1104 to which the push service server 1106 is to send a push message.
[0328] In operations 1113 and 1114, the SSP terminal 1101 provides relevant information to allow the event management server 1107 to register the push service. The relevant information may include at least one of: information about the SSP terminal 1101, information about the LBA 1103, an SSP identifier, and a push token.
[0329] The information transmitted by the SSP terminal 1101 may include sensitive SSP information, such as a first SSP identifier, and thus in operation 1113, the SPBL of the SSP and the event management server may be required to perform mutual authentication based on digital certificates between them. Operation 1113 may include a process in which the SPBL 1102 receives sensitive information (including a digital certificate) about the event management server 1107 to verify the server, and generates second SSP information to be transmitted to the server. Figure 5 The digital certificate-based process of mutual authentication between the SPBL 1102 and the event management server 1107 is performed through operations 521 , 522 , 523 , 524 , 525 and 526 .
[0330] After the SPBL 1102 authenticates the event management server and generates the second SSP information in operation 1113, the LBA 1103 may request push service registration from the event management server 1107 in operation 1114. The push service registration request message sent by the LBA to the event management server may include the following items.
[0331] - Information about the push service registered by the SSP terminal (e.g., the name of GCM, FCM, APNS, WNS, or other private push service, or the address or name of the push server).
[0332] - Application information (e.g., application hash, package name).
[0333] - Push token.
[0334] - The first SSP identifier.
[0335] - Second SSP identifier.
[0336] - Second SSP information. The second SSP information may include an encrypted SPBL certificate and a temporary key capable of forming a session key.
[0337] In operation 1115, the event management server 1107 verifies the push service registration request message from the SSP terminal 1101. The verification of the push service registration request message may be an operation of decrypting the encrypted SPBL certificate in the second SSP information sent in operation 1114 to verify the SPBL certificate. If the SPBL certificate includes the first SSP identifier or the second SSP identifier, the event management server 1107 may verify whether the first SSP identifier or the second SSP identifier included in the certificate is the same as the first SSP identifier or the second SSP identifier included in the push service registration request message. When the verification of the SSP terminal 1101 is completed, the event management server 1107 may match at least one of the first SSP identifier and the second SSP identifier with the push token in the push service registration request message, and may manage it.
[0338] In operation 1116, the event management server 1107 may request push service registration from the push service server 1106 based on the push service information included in the push service registration request message transmitted in operation 1114. If the push service does not require a separate push service registration process on the server side, operations 1116 and 1117 may be omitted. The push server registration request message may include the following items.
[0339] - Push token.
[0340] - App messages.
[0341] After receiving the push service registration request, the push service server 1106 verifies the push token and application information included in the push server registration request message that has been transmitted by the event management server 1107. The verification process may be a process of verifying whether the push token and application information have been registered in the push service server 1106 through the push service registration process between the push service client 1104 and the push service server 1106, as in operation 1112. When the push server registration is completed normally, in operation 1117, a completion response is transmitted to the event management server 1107.
[0342] When the push server registration is completed, in operation 1118 , the event management server 1107 sends a push service registration request response to the LBA 1103 .
[0343] Fig.12 The process of registering a push service for an eUICC terminal and an SM-DS according to an embodiment of the present disclosure is shown.
[0344] about Fig.12 For an example of all operations in Fig.10 However, Fig.10 An embodiment involving an SSP terminal, wherein Fig.12 An embodiment related to an eUICC terminal. In view of this, the embodiment may be specified as follows.
[0345] refer to Fig.12 The eUICC terminal 1201 includes a push service client software 1204 that can support push service. For the push service client 1204, please refer to Fig.10 The push service client 1004 in.
[0346] As in operation 1210, LPA 1203 is registered in the push service client 1204 so as to be provided with a push service. The method for registering LPA 1203 in the push service client 1204 may be a method of receiving a push token by using an API provided by the push service client 1204. The push token may be used to uniquely identify a specific application (e.g., LPA in this embodiment) among multiple applications registered in the push service client 1204. LPA 1203 registers for a push service together with the push service client 1204 in the eUICC terminal 1201. In this process, LPA 1203 may be registered as an instance in the push service client 1204, and a push token may be issued. In this process, the push service client 1204 may also transmit application information (e.g., a hash value or an application identifier of the application) of LPA 1203 to the push service server 1206 so that LPA 1203 registers for a push service.
[0347] In order to register the push service with multiple SM-DS 1207, the LPA 1203 may generate multiple push tokens to the push service client 1204, and the push tokens may be classified according to the SM-DS to register the push service in each SM-DS. In addition, the LPA 1203 may register the push service in multiple SM-DS 1207 by using the same push token. In order to register the push service in multiple SM-DS 1207 by using the same push token, in the push service registration operation 1211, the LPA 1203 may transmit additional information for identifying the SM-DS 1207 to the SM-DS 1207. The additional information may be an eUICC identifier generated by combining the EID, which is an identifier of the eUICC 1202, with information about the SM-DS 1207 (e.g., a URL of the SM-DS, an IP address of the SM-DS, or an FQDN of the SM-DS). The eUICC identifier generated by the combination of the EID and the information on the SM-DS 1207 may be referred to as an obfuscated EID (OEID). The OEID may be considered to be a concept similar to a second SSP identifier of an SSP terminal.
[0348] When a push token is issued, the eUICC terminal 1201 transmits the push token to the SM-DS 1207 for the push service to use the push token using the push token in operation 1211. When the eUICC terminal 1201 transmits the push token, the following types of information may be provided so that the SM-DS 1207 can register the push service on the server side.
[0349] - Information about the push service registered by the eUICC terminal (e.g., the name of GCM, FCM, APNS, WNS, or other private push service, or the address or name of the push server).
[0350] - Application information (e.g., application hash, package name).
[0351] - Push token.
[0352] - The first eUICC identifier.
[0353] - Second eUICC identifier.
[0354] - Second eUICC information and a signature value generated using the information.
[0355] When the eUICC identifier is linked to the push token, the SM-DS 1207 that has received the above information manages the eUICC identifier (the first eUICC identifier or the second eUICC identifier). The SM-DS 1207 can register the push service in conjunction with the push service server. When an event is registered in the SM-DS 1207 after registering the push service as described above, the SM-DS 1207 determines the first eUICC identifier or the second eUICC identifier of the eUICC terminal to receive the event, generates a push message by using the push token linked to the eUICC identifier, and sends the push message to the push service server 1206.
[0356] When the service provider or the bundle management server registers an event in the SM-DS 1207 (operation 1212), the SM-DS 1207 may determine whether the eUICC terminal that will receive the event has registered for the push service in operation 1213. Operation 1213 may be a process of determining whether the eUICC terminal to which the event registered in the SM-DS 1207 will be transmitted has registered for the push service according to operation 1211. At the time of event registration, an identifier of the eUICC terminal that will receive the event is also transmitted, and thus it may be determined whether the eUICC terminal supports the push service using the identifier of the eUICC terminal.
[0357] When the eUICC terminal that is to receive the event registered in operation 1212 registers for the push service, in operation 1214, the SM-DS 1207 generates a push message and transmits the message to the push service server. In the push message generation process, the SM-DS 1207 may generate a push message including a push token corresponding to the eUICC terminal to which the event is to be sent. When the push service server 1206 identifies the push service client 1204 to which the push message is to be sent, the push token may be used. In the push message generation process, a push message further including an eUICC identifier may be generated. When the eUICC terminal determines which SM-DS 1207 has sent the push message, the eUICC identifier may be used. Specifically, when the second eUICC identifier is generated using information about the SM-DS 1207, and when the second eUICC identifier is included in the push message, the LPA 1203 may also identify the SM-DS 1207 that has sent the push message through the second eUICC identifier included in the push message. In addition, when the push message includes the address of the SM-DS (e.g., FQDN, IP address, etc.) or the object identifier (OID) of the SM-DS, the LPA 1203 can identify the SM-DS 1207 that has sent the push message by the address of the SM-DS (e.g., FQDN, IP address, etc.) or the object identifier (OID) of the SM-DS included in the push information.
[0358] In operation 1215 , the push service server 1206 transmits the generated push message to the push service client 1204 , and the push service client 1204 receives the push message according to the push token included in the push message.
[0359] In operation 1216, the push service client 1204 transmits the push message to the software in the terminal, which is linked to the push token included in the push message. In this embodiment, the software in the terminal is LPA 1203.
[0360] In operation 1217, the LPA 1203 having received the push message searches for an SM-DS address that matches the push token included in the push message, and makes an event package transfer request after a mutual authentication process with the SM-DS 1207 corresponding to the address in operation 1218. If the push message includes an eUICC identifier, the SM-DS address may also be discovered by using the eUICC identifier.
[0361] The event package transmission process in operation 1218 may be a process in which the eUICC terminal attempts an HTTPS connection to the SM-DS by using the SM-DS address determined in operation 1217 based on the GSMA SGP.22 standard, and receives the event through the ES11 function (ES11.InitiateAuthenticate, ES11.AuthenticateClient) defined in the GSMA SGP.22 standard.
[0362] Fig.13 Other processes of registering the push service for the eUICC terminal and the SM-DS according to an embodiment of the present disclosure are shown.
[0363] The address of the SM-DS 1307 to which the push service is desired to be connected and whether the push service is supported may be stored in the LPA 1303 of the eUICC terminal 1301, or may be stored in the eUICC 1302. Although not shown, the eUICC terminal 1301 may determine whether the connection of the push service with the SM-DS 1307 is possible through the information about the SM-DS 1307 stored in the LPA 1303 or the eUICC 1302. The information about the SM-DS 1307 may be provided to the LPA 1303 by user input or information transmitted from the outside.
[0364] In operation 1310, the LPA 1303 of the eUICC terminal 1301 requests the push service client 1304 to register for the push service. When requesting the push service registration, the LPA 1303 may transmit its application information to the push service client 1304. The application information of the LPA transmitted by the LPA 1303 to the push service client 1304 may include a hash value of the LPA application, its package name, etc. When requesting the push service registration, the LPA 1303 may additionally transmit an eUICC identifier to the push service client 1304. Although not shown, the LPA 1303 may read the first eUICC identifier from the eUICC 1302, and may combine the first eUICC identifier with the address of the SM-DS 1307 to generate a second eUICC identifier. The SM-DS address may be a fully qualified domain name (FQDN), a full uniform resource locator (full URL), or an IP address of the SM-DS 1307.
[0365] In operation 1311, the push service client 1304 issues a push token to the LPA 1303. The push service client 1304 matches the issued push token with the application information of the LPA. Before issuing the push token in operation 1311, the push service client 1304 may also transmit the application information of the LPA and the push token to the push service server 1306 to register the push service. According to some embodiments, the push token may also be generated by the push service server 1306. In this case, the push service client 1304 may generate the push service using the push service server 1306, and the push service server 1306 may generate the push token after generating the push service, and then may transmit the push token to the push service client 1304. The push service client 1304 transmits the push token to the LPA 1303. If the push token is generated by the push service server 1306, operation 1312 may be omitted.
[0366] In operation 1312, the push service client 1304 registers the push service in the push service server 1306 by using the same push token as the push token transmitted to the LPA 1303. The detailed process of operation 1312 may be performed differently depending on the types of the push service client 1304 and the push service server 1306. In operation 1312, the push service client 1304 may transmit at least one of the application information and the eUICC identifier of the LPA to the push service server 1306. For security considerations, it is recommended to use the second eUICC identifier as the eUICC identifier.
[0367] According to some embodiments, the order of operations 1311 and 1312 may be changed. In this case, the push token may be generated by the push service client 1304 and may be transmitted to the push service server 1306, or may be generated by the push service server 1306 and may be transmitted to the push service client 1304. In operation 1312, the push service server 1306 may match the push token with at least one of the eUICC terminal information, the application information of the LPA, and the eUICC identifier, and may manage it. If the SM-DS 1307 performs push server registration in the push service server 1306 or transmits a push message thereto in the future, when the push service server 1306 verifies the validity of the information in the transmitted push message or selects the push service client 1304 to which the push service server 1306 is to send a push message, the information (push token, eUICC termination information, LPA application information, or eUICC identifier) managed by the push service server 1306 in operation 1312 may be used.
[0368] In operations 1313 and 1314, the eUICC terminal 1301 provides relevant information to allow the SM-DS 1307 to register the push service. The relevant information may include at least one of the following: information about the eUICC terminal 1301, information about the LPA 1303, an eUICC identifier, and a push token.
[0369] The information transmitted by the eUICC terminal 1301 may include sensitive eUICC information such as the first eUICC identifier, so in operation 1313, the eUICC 1302 and the SM-DS 1307 may be required to perform mutual authentication based on digital certificates between them. Operation 1313 may be an operation in which the eUICC terminal 1301 performs a mutual authentication process with the SM-DS 1307 according to the GSMA SGP.22 standard.
[0370] In operation 1314, the LPA 1303 may request the SM-DS 1307 to register the push service. The push service registration request message sent by the LPA 1303 to the SM-DS 1307 may include the following contents.
[0371] - Information about the push service registered by the eUICC terminal (e.g., the name of GCM, FCM, APNS, WNS, or other private push service, or the address or name of the push server).
[0372] - Application information (e.g., application hash, package name).
[0373] - Push token.
[0374] - The first eUICC identifier.
[0375] - Second eUICC identifier.
[0376] - Second eUICC information and a signature value generated using the information.
[0377] In operation 1315, SM-DS 1307 verifies the push service registration request message received from eUICC Terminal 1301. Verification of eUICC Terminal 1301 may be an operation of decrypting the encrypted eUICC certificate in the second eUICC information sent in operation 1314 to verify the eUICC certificate. If the eUICC certificate includes the first eUICC identifier or the second eUICC identifier, SM-DS 1307 may verify whether the first eUICC identifier or the second eUICC identifier included in the certificate is the same as the first eUICC identifier or the second eUICC identifier included in the push service registration request message. When verification of eUICC Terminal 1301 is completed, SM-DS 1307 may match at least one of the first eUICC identifier and the second eUICC identifier with a push token in the push service registration request message, and may manage the push token.
[0378] In operation 1316, the SM-DS 1307 may request push service registration from the push service server 1306 based on the push service information included in the push service registration request message transmitted in operation 1314. If the push service does not require a separate push service registration process on the server side, operations 1316 and 1317 may be omitted. The push server registration request message may include the following items.
[0379] - Push token.
[0380] - App messages.
[0381] After receiving the push service registration request, the push service server 1306 verifies the push token and application information included in the push server registration request message that has been transmitted by the SM-DS 1307. The verification process may be a process of verifying whether the push token and application information have been registered in the push service server 1306 through the push service registration process between the push service client 1304 and the push service server 1306, as in operation 1312. When the push server registration is completed normally, in operation 1317, a completion response is transmitted to the SM-DS 1307.
[0382] When the push server registration is completed, in operation 1318, the SM-DS 1307 sends a push service registration request response to the LPA 1303.
[0383] Fig.14 The structure of a terminal according to an embodiment of the present disclosure is shown.
[0384] refer to Fig.14, the terminal may include a transceiver 1410, a terminal controller 1420, and a storage unit 1430. In the present disclosure, the terminal controller 1420 may be defined as a circuit, an application specific integrated circuit, or at least one processor.
[0385] The transceiver 1410 may send or receive signals to or from other network entities such as a server. For example, according to this embodiment, the transceiver may receive system information from a server and may send or receive messages and / or information.
[0386] According to the embodiments presented in the present disclosure, the terminal controller 1420 can control the overall operation of the terminal. For example, the terminal controller 1420 can control the signal flow between the blocks so as to perform operations according to the above-mentioned figures and flowcharts.
[0387] The storage unit 1430 may store at least one of information transmitted or received through the transceiver and information generated by the terminal controller.
[0388] Fig.15 The structure of a server according to an embodiment of the present disclosure is shown. Fig.15 The servers shown may include external servers, such as a bundle management server, a push service server, or an event management server.
[0389] refer to Fig.15 , the server may include a transceiver 1510, a server controller 1520, and a storage unit 1330. In the present disclosure, the server controller 1520 may be defined as a circuit, an application specific integrated circuit, or at least one processor.
[0390] The transceiver 1510 may send signals to other network entities or receive signals from other network entities. For example, according to this embodiment, the transceiver 1510 may send system information to the terminal, and may send or receive messages and / or information.
[0391] According to the embodiments presented in the present disclosure, the server controller 1520 may control the overall operation of the server. For example, the server controller 1520 may control the operations presented in the present disclosure.
[0392] The storage unit 1530 may store at least one of information transmitted or received through the transceiver and information generated by the server controller.
[0393] In the above detailed embodiments of the present disclosure, the elements included in the present disclosure are expressed in the singular or plural, according to the detailed embodiments presented. However, for the convenience of description, the singular form or the plural form is appropriately selected as the presented situation, and the present disclosure is not limited to the elements expressed in the singular or plural. Therefore, the elements expressed in the plural may also include a single element, or the elements expressed in the singular may also include multiple elements.
[0394] Although specific embodiments have been described in the detailed description of the present disclosure, various modifications and changes may be made thereto without departing from the scope of the present disclosure. Therefore, the scope of the present disclosure should not be defined as limited to the embodiments, but should be defined by the appended claims and their equivalents.
[0395] It should be understood that the various embodiments of the present disclosure and the terms used therein are not intended to limit the technical features set forth herein to specific embodiments, but include various variations, equivalents and / or substitutes of the corresponding embodiments. With regard to the description of the accompanying drawings, similar reference numerals may be used to represent similar or related elements. It should be understood that the singular form of the noun corresponding to the project may include one or more things, unless the relevant context clearly indicates otherwise. As used herein, each of the phrases such as "A or B", "at least one of A and B", "at least one of A or B", "A, B or C", "at least one of A, B and C" and "at least one of A, B or C" may include all possible combinations of the items listed together in a corresponding phrase. As used herein, terms such as "1st", "2nd", "first" and "second" may be used to simply distinguish the corresponding element from another element, and do not limit these elements in other aspects (e.g., importance or order). It should be understood that if an element (e.g., a first element) is referred to as being "coupled with," "coupled to," "connected to," or "connected to," regardless of whether the term "operably" or "communicatively" is used, this means that the element can be coupled to the other element directly (e.g., wired), wirelessly, or via other elements (e.g., a third element).
[0396] As used herein, the term "module" may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with other terms, such as "logic," "logic block," "component," or "circuit." A "module" may be the smallest unit of a single integrated component suitable for performing one or more functions, or a portion thereof. For example, according to one embodiment, a "module" may be implemented in the form of an application specific integrated circuit (ASIC).
[0397] The various embodiments described herein may be implemented as software (e.g., program 140) that includes one or more instructions stored in a storage medium (e.g., internal memory 136 or external memory 138) readable by a machine (e.g., electronic device 101). For example, a processor (e.g., processor 120) of a machine (e.g., electronic device 101) may call at least one of the one or more instructions stored in the storage medium and execute the instructions with or without one or more other components under the control of the processor. This allows the machine to be operated to perform at least one function according to at least one instruction called. The one or more instructions may include code generated by a compiler or code executable by an interpreter.
[0398] The machine-readable storage medium may be provided in the form of a non-transitory storage medium, wherein the term "non-transitory" simply means that the storage medium is a tangible device and does not include signals (e.g., electromagnetic waves), but the term does not distinguish between a location where data is semi-permanently stored in the storage medium and a location where data is temporarily stored in the storage medium.
[0399] The method according to various embodiments of the present disclosure may be included in a computer program product and provided therein. The computer program product may be traded between a seller and a buyer as a product. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., a compact disc read-only memory (CD-ROM)), or distributed online (e.g., downloaded or uploaded) via an application store (e.g., an electronic market), or distributed directly between two user devices (e.g., smart phones). If distributed online, at least a portion of the computer program product may be temporarily generated or at least temporarily stored in a machine-readable storage medium, such as a memory of a manufacturer's server, a server of an application store, or a relay server. According to various embodiments, each element (e.g., a module or a program) of the above-mentioned elements may include a single entity or multiple entities. According to various embodiments, one or more of the above-mentioned elements may be omitted, or one or more other elements may be added. Alternatively or additionally, multiple elements (e.g., a module or a program) may be integrated into a single element. In this case, according to various embodiments, the integrated element may still perform one or more functions of each of the multiple elements in the same or similar manner as performed by a corresponding one of the multiple elements before integration. According to various embodiments, operations performed by a module, a program or another element may be performed sequentially, in parallel, repeatedly or heuristically, or one or more operations may be performed in a different order or omitted, or one or more other operations may be added.
[0400] The embodiments of the present disclosure described and shown in the specification and the drawings have been presented to easily explain the technical content of the present disclosure and help understand the present disclosure, and are not intended to limit the scope of the present disclosure. Therefore, in addition to the embodiments disclosed herein, the scope of the present disclosure should be interpreted as including all changes and modifications derived from the technical concept of the present disclosure.
[0401] Furthermore, it is apparent that some or all of the specific embodiments of the various embodiments described above may be implemented in combination with some or all of the other embodiments.
[0402] Although the present disclosure has been described with various embodiments, various changes and modifications may occur to those skilled in the art. The present disclosure is intended to encompass such changes and modifications as fall within the scope of the appended claims.
Claims
1. A method performed by a terminal in a wireless communication system, the method comprising: The local binding assistant LBA of the terminal sends a first message for discovering an SSPDS event associated with a smart security platform SSP of the terminal to the smart security platform discovery service SSPDS; receiving a second message including information on whether the SSPDS event has been registered for the SSP from the SSPDS, wherein the SSPDS event is registered in the SSPDS by the secondary platform bundle manager SPBM; and After the SSP associated with the SSPDS event is authenticated by the SSPDS, the SSPDS event is received from the SSPDS.
2. The method according to claim 1, in, The LBA is configured with a SSPDS address, The SSPDS address is configured according to the family identifier or the custodian identifier. Among them, the primary platform identifier PPID is displayed together with the SSPDS address configured in the LBA. wherein the first message includes an identifier associated with the SSP, Wherein, the identifier is generated based on the PPID and SSPDS address of the terminal, and Among them, the identifier is used to discover SSPDS events registered in SSPDS.
3. The method according to claim 1, further comprising: Sending a request for push-based event notification to SSPDS by LBA; receiving an indication from the SSPDS indicating whether the SSPDS accepts the request; and In a case where the indication indicates that the SSPDS accepts the request and the SSPDS event associated with the push-based event notification is registered, a notification of SSPDS event registration is received from the SSPDS.
4. The method according to claim 1, wherein: The sending of the first message and the receiving of the second message are performed by LBA without mutual authentication between the terminal and the SSPDS.
5. A method performed by a smart secure platform discovery service (SSPDS) in a wireless communication system, the method comprising: registering at least one SSPDS event based on a request from the secondary platform bundle manager SPBM; receiving, from a local binding assistant LBA of a terminal including a smart security platform SSP, a first message for discovering SSPDS events associated with the SSP of the terminal; sending a second message including information about whether the SSPDS event has been registered for the SSP to the LBA of the terminal; and After the SSP associated with the SSPDS event is authenticated by the SSPDS, the SSPDS event is sent to the LBA of the terminal.
6. The method according to claim 5, in, The LBA of the terminal associated with the SSP is configured with the SSPDS address, The SSPDS address is configured according to the family identifier or the custodian identifier. Among them, PPID is displayed together with the SSPDS address configured in LBA. wherein the first message includes an identifier associated with the SSP, Wherein, the identifier is generated based on the PPID and SSPDS address of the terminal, and where the identifier is used to discover SSPDS events registered in SSPDS, and The reception of the first message and the sending of the second message are performed by LBA without the need for mutual authentication between the terminal and the SSPDS.
7. The method according to claim 5, further comprising: receiving a request for a push-based event notification from an LBA of a terminal; determining whether to accept the request based on the request for push-based event notification; Send an indication to the terminal's LBA whether the SSPDS accepts the request; and In case the SSPDS accepts the request and the SSPDS event associated with the push-based event notification is registered, a notification of the SSPDS event registration is sent to the LBA of the terminal.
8. A terminal in a wireless communication system, the terminal comprising: a transceiver configured to transmit and receive signals; and A controller is coupled to the transceiver and is configured to: The local binding assistant LBA of the terminal sends a first message for discovering SSPDS events associated with the smart security platform SSP of the terminal to the smart security platform discovery service SSPDS, receiving a second message from the SSPDS including information on whether the SSPDS event has been registered for the SSP, wherein the SSPDS event is registered in the SSPDS by the secondary platform bundle manager SPBM, and After the SSP associated with the SSPDS event is authenticated by the SSPDS, the SSPDS event is received from the SSPDS.
9. The terminal according to claim 8, in, The LBA Assistant application is configured with the SSPDS address, The SSPDS address is configured according to the family identifier or the custodian identifier. Among them, the primary platform identifier PPID is displayed together with the SSPDS address configured in the LBA. wherein the first message includes an identifier associated with the SSP, Wherein, the identifier is generated based on the PPID and SSPDS address of the terminal, and Among them, the identifier is used to discover SSPDS events registered in SSPDS.
10. The terminal according to claim 8, wherein: The controller is also configured to: Sending a request for push-based event notification to SSPDS by LBA; receiving an indication from the SSPDS indicating whether the SSPDS accepts the request; and In a case where the indication indicates that the SSPDS accepts the request and the SSPDS event associated with the push-based event notification is registered, a notification of SSPDS event registration is received from the SSPDS.
11. The terminal according to claim 8, wherein: The sending of the first message and the receiving of the second message are performed by LBA without mutual authentication between the terminal and the SSPDS.
12. A smart security platform discovery service SSPDS in a wireless communication system, the SSPDS comprising: a transceiver configured to transmit and receive signals; and A controller is coupled to the transceiver and is configured to: registering at least one SSPDS event based on a request from the secondary platform bundle manager SPBM; receiving, from a local binding assistant LBA of a terminal including a smart security platform SSP, a first message for discovering SSPDS events associated with the SSP of the terminal; sending a second message including information about whether the SSPDS event has been registered for the SSP to the LBA of the terminal; and After the SSP associated with the SSPDS event is authenticated by the SSPDS, the SSPDS event is sent to the LBA of the terminal.
13. The SSPDS according to claim 12, in, The LBA of the terminal associated with the SSP is configured with the SSPDS address, The SSPDS address is configured according to the family identifier or the custodian identifier. Among them, PPID is displayed together with the SSPDS address configured in LBA. wherein the first message includes an identifier associated with the SSP, Wherein, the identifier is generated based on the PPID and SSPDS address of the terminal, and Among them, the identifier is used to discover SSPDS events registered in SSPDS.
14. The SSPDS according to claim 12, wherein: The controller is also configured to: receiving a request for a push-based event notification from an LBA of a terminal; determining whether to accept the request based on the request for push-based event notification; Send an indication to the terminal's LBA whether the SSPDS accepts the request; and In case the SSPDS accepts the request and an event associated with push-based event notification is registered, a notification of event registration is sent to the LBA of the terminal.
15. The SSPDS according to claim 12, wherein: The reception of the first message and the transmission of the second message are performed by LBA without mutual authentication between the terminal and the SSPDS.
Citation Information
Patent Citations
Method and apparatus for managing event in communication system
WO2019107876A1