Source: https://patents.google.com/patent/KR20120044914A/en
Timestamp: 2019-12-12 08:22:41
Document Index: 734404269

Matched Legal Cases: ['Application No. 61', 'Application No. 13', 'Application No. 12', 'Application No. 12', 'Application No. 12', 'Application No. 61', 'Application No. 61', 'Application No. 13', 'Application No. 61', 'Application No. 61', 'Application No. 13', 'Application No. 61', 'Application No. 13']

KR20120044914A - Methods and apparatus for storage and execution of access control clients - Google Patents
KR20120044914A
KR20120044914A KR1020110111487A KR20110111487A KR20120044914A KR 20120044914 A KR20120044914 A KR 20120044914A KR 1020110111487 A KR1020110111487 A KR 1020110111487A KR 20110111487 A KR20110111487 A KR 20110111487A KR 20120044914 A KR20120044914 A KR 20120044914A
KR1020110111487A
KR101447766B1 (en
2012-05-08 Publication of KR20120044914A publication Critical patent/KR20120044914A/en
2014-10-06 Publication of KR101447766B1 publication Critical patent/KR101447766B1/en
A method and apparatus are provided for providing security of access control entities (eSIM (electronic Subscriber Identity Module) components) after deploying the host device to be used. In one embodiment, the wireless (eg, cellular) user equipment is provided with an authorization certificate and a unique device key that can be used to provide an update or new eSIM in the "field" of the user equipment. The user equipment can trust the eSIM data delivered by unknown third party eSIM vendors based on the security certificate transmission by the device key. In another aspect, an operating system (OS) is partitioned into various parts or “sandboxes”. In operation, the user device may activate and run the OS in a sandbox corresponding to the current wireless network. Personalization packages received while connecting to the network apply only to that sandbox. Likewise, when loading an eSIM, the OS needs to load only the list of software needed for the current runtime environment. Unused software can subsequently be activated.
This application, filed Oct. 28, 2010, claims priority to US Provisional Patent Application No. 61 / 407,866, entitled "METHODS AND APPARATUS FOR STORAGE AND EXECUTION OF ACCESS CONTROL CLIENTS", April 2011. Priority is issued to US patent application Ser. No. 13 / 080,521, filed on May 5 and entitled "METHODS AND APPARATUS FOR STORAGE AND EXECUTION OF ACCESS CONTROL CLIENTS," each of which is incorporated herein by reference in its entirety. It is included as.
The application is also filed on April 5, 2011, co-owned and pending patent applications, US Patent Application No. 13 / 080,558, entitled "APPARATUS AND METHODS FOR CONTROLLING DISTRIBUTION OF ELECTRONIC ACCESS CLIENTS" , US Patent Application No. 12 / 952,082, filed November 22, 2010, entitled "WIRELESS NETWORK AUTHENTICATION APPARATUS AND METHODS," filed November 22, 2010, and entitled "APPARATUS AND METHODS FOR" US Patent Application No. 12 / 952,089, filed December 28, 2010, entitled PROVISIONING SUBSCRIBER IDENTITY DATA IN A WIRELESS NETWORK, US Patent Application No. 12 / 980,232, entitled “VIRTUAL SUBSCRIBER IDENTITY MODULE DISTRIBUTION SYSTEM” US patent application Ser. No. 12 / 353,227, filed Jan. 13, 2009, entitled "POSTPONED CARRIER CONFIGURATION," filed Apr. 5, 2011, and entitled "AP PARATUS AND METHODS FOR STORING ELECTRONIC ACCESS CLIENTS ", U.S. Provisional Patent Application No. 61 / 472,109, filed April 5, 2011, entitled" APPARATUS AND METHODS FOR DISTRIBUTING AND STORING ELECTRONIC ACCESS CLIENTS " 61 / 472,115, filed Oct. 28, 2010, filed U.S. Provisional Application No. 61 / 407,858, filed Oct. 28, 2010, entitled "METHODS AND APPARATUS FOR ACCESS CONTROL CLIENT ASSISTED ROAMING." US Provisional Patent Application 61 / 407,861 entitled "MANAGEMENT SYSTEMS FOR MULTIPLE ACCESS CONTROL ENTITIES" (currently US Patent Application No. 13 / 079,614, filed April 4, 2011, under the same name), 10 2010 Filed on May 28, US Provisional Application No. 61 / 407,862, filed October 29, 2010 entitled “METHODS AND APPARATUS FOR DELIVERING ELECTRONIC IDENTIFICATION COMPONENTS OVER A WIRELESS NETWORK” U.S. Provisional Patent Application No. 61 / 408,504, entitled "ACCESS DATA PROVISIONING SERVICE" (currently filed on April 1, 2011, US Patent Application No. 13 / 078,811, entitled "ACCESS DATA PROVISIONING APPARATUS AND METHODS") United States Provisional Patent Application No. 61 / 409,891, filed November 3, 2010, entitled “METHODS AND APPARATUS FOR ACCESS DATA RECOVERY FROM A MALFUNCTIONING DEVICE,” and filed November 4, 2010. US Provisional Patent Application 61 / 410,298, entitled "SIMULACRUM OF PHYSICAL SECURITY DEVICE AND METHODS", currently US Patent Application No. 13 / 080,533, filed April 5, 2011, under the same name, and 11 2010 No. 61 / 413,317, filed May 12, entitled “APPARATUS AND METHODS FOR RECORDATION OF DEVICE HISTORY ACROSS MULTIPLE SOFTWARE EMULATION,” each of which is incorporated herein in its entirety. It is included by reference.
The present invention relates generally to the field of wireless communication and data networks. More specifically, in one exemplary aspect, the present invention relates to methods and apparatuses for securely changing, storing, and executing access control entities or clients.
Access control is required for secure communication in most prior art wireless radio communication systems. As one example, one simple access control scheme may include (i) verifying the identity of the communicating party, and (ii) granting a level of access that matches the verified identity. Within the context of one exemplary cellular system (e.g., Universal Mobile Telecommunications System (UMTS)), access control is performed on a Universal Universal Circuit Card (UICC). Module (USIM)). The USIM access control client authenticates the subscriber to the UMTS cellular network. After successful authentication, the subscriber is allowed access to the cellular network. As used below, the term "access control client" generally refers to a logical entity implemented in hardware or software suitable for controlling access of a first device to a network. Common examples of access control clients include the USIM, CDMA Subscriber Identity Module (CSIM), IP Multimedia Services Identity Module (ISIM), Subscriber Identity Module (SIM), and Removable User Identity described above. Modules: RUIM).
Conventionally, USIM (or more generally " SIM ") performs a well-known Authentication and Key Agreement (AKA) procedure, which verifies and decrypts applicable data and programs to ensure secure initialization. Specifically, the USIM must (i) successfully respond to a remote challenge to verify its identity to the network operator, and (ii) issue a challenge to verify the identity of the network.
However, existing SIM solutions have a number of drawbacks or drawbacks. First, the SIM software is hard-coded into a physical UICC card medium; The subscriber needs a new UICC to change the SIM behavior. This can be disadvantageous for both MNOs and subscribers; For example, if authentication procedures are "blocked" (eg, via malicious "hacking" behaviors), a new UICC must be issued to the subscriber, which process is time consuming and expensive. In addition, for reasons described in more detail herein, only the physical SIM recognizes a single trusted entity, specifically a mobile network operator (MNO), configured to communicate together. Thus, there is currently no way to integrate post-deployment programming except through existing trust relationships between devices and MNOs. For example, third party SIM developers who wish to provide new or upgraded SIM software may not be able to establish a trust relationship between them and the subscriber's SIM, as well as the inflexibility of the physical SIM card media. Is bothered by). This control "bottleneck" greatly limits the capabilities and number provided for SIM vendors.
Therefore, new solutions are needed to enable SIM deployment and change after deployment. Ideally, these solutions should allow the mobile device to receive and implement changes to SIM operation while the device is in the "field" (after deployment). In addition, the improved methods and apparatuses must support other desirable features, in particular updates, flexible operation, support for multiple SIM profiles, and the like.
More generally, however, there is a need for improved methods and apparatus for securely changing, storing and executing access control clients. Techniques for modifying access control client behavior are needed to support features such as multiple subscriber access profiles, secure device updates, alternative methods for providing subscriber services, and the like. In addition, due to the sensitive nature of access control and the potential for fraudulent use and theft of services, secure methods of making these changes are of primary interest.
The present invention satisfies the aforementioned needs by providing improved apparatus and methods for securely changing, storing and executing access control clients.
In a first aspect of the invention, a wireless device is disclosed. In one embodiment, the apparatus comprises: one or more wireless links adapted to communicate with at least one network via an access control client; A secure element configured to store an access control client; An interface to a secure element, the interface having an encryption key and an associated endorsement certificate; A processor; And a storage device in data communication with the processor, the storage device comprising computer executable instructions. At least a subset of these computer executable instructions are further partitioned into one or more segments.
In one variant, the computer executable instructions, when executed to a processor, send a request for one or more components to an access control client specific to at least one network via an interface, the request being an authorization certificate and an encryption key. Including-; Receive one or more requested components, the one or more components associated with a second authorization certificate; Verify a second approval certificate; In response to successful verification of the second grant certificate, load the access control client.
In a second aspect of the invention, a method of mutual authentication is disclosed. In one embodiment, the method further comprises: requesting one or more components, the request being associated with a first authorization certificate; Receiving one or more components and a second grant certificate; And if the second grant certificate is valid, loading one or more components, wherein the first grant certificate and the second grant certificate are issued by the trusted entity.
In a third aspect of the invention, a method of executing an access control client is disclosed. In one embodiment, the method comprises: executing a first bootstrap operating system, the bootstrap operating system selecting a secure partition, the secure partition being associated with only one access control client; Verifying the secure partition, wherein the secure partition includes one common operating system and one access control client; And executing this common operating system, wherein the common operating system loads one access control client. The access control client is configured to authenticate to a network, such as an external cellular network.
In a fourth aspect of the invention, a mobile device is disclosed. In one embodiment, the mobile device is configured to request, receive, and use a virtual or electronic SIM data structure using a bootstrap OS architecture.
In a fifth aspect of the invention, a computer readable device is disclosed. In one embodiment, the apparatus comprises a storage medium, the storage medium having at least one computer program running thereon, the at least one program using a bootstrap OS for virtual or electronic SIMs. And to receive, process, and serve the request.
In a sixth aspect of the invention, a system for distributing virtual or electronic SIMs to users is disclosed. In one embodiment, the system includes an apparatus for delivery of operating system components that support eSIM delivery over the Internet or a network such as MAN or WLAN.
Other features and advantages of the present invention will be readily appreciated by those skilled in the art with reference to the following detailed description of the exemplary embodiments and the accompanying drawings.
1 is a graphical depiction of an exemplary Authentication and Key Agreement (AKA) procedure utilizing prior art USIM.
2 is a logic flow diagram illustrating one embodiment of a method of assigning a device key pair to a software entity (eg, user equipment (UE), third party software vendor, SIM vendor, etc.) in accordance with the present invention.
3 graphically illustrates an exemplary transaction for secure transmission of runtime components between a UE and a software vendor, in accordance with an embodiment of the present invention.
4 graphically illustrates one embodiment of a method for secure execution of an eSIM in accordance with the present invention.
4A graphically illustrates one embodiment of a bootstrap OS, an eUICC, and an eSIM architecture in accordance with the present invention.
5 is a logic flow diagram illustrating one embodiment of a generalized method for secure modification and storage of components for use with access control clients.
6 is a logic flow diagram illustrating one embodiment of a generalized method for secure execution of components for use with access control clients in accordance with the present invention.
7 is a block diagram of an exemplary apparatus useful for implementing the methods of the present invention.
In particular, the present invention provides secure methods and apparatuses that allow user equipment and any trusted third party entity to mutually verify each other. The present invention also discloses a method and apparatus for enabling any third party entity to be trusted even after user equipment is deployed. For example, a mobile device (eg, a UMTS UE) identifies a third party eSIM (eg, virtual or electronic SIM-hereinafter "eSIM") vendor and purchases, obtains or updates that eSIM. In order to do so, a trust dialog can be initiated. Similarly, a third party eSIM vendor can verify that the UE is a trusted device and can safely encode that eSIM for delivery. The trust dialog is based on a unique device key and an authorization certificate; As described below, in one exemplary embodiment, this device key is based on public / private key encryption.
Various aspects of the present invention relate to secure reception of an access control client (in whole or in part). Due to the sensitive nature of the access control material for network operators, existing solutions have favored the use of physical card form factors. However, the present invention advantageously provides for secure transmission of virtual or electronic access control clients (eg, eSIMs), thereby eliminating the requirements for physical cards and their associated constraints.
In addition, unlike existing solutions, the present invention enables the delivery of access control client elements without an existing access control client, thereby greatly improving user flexibility and user experience.
In another aspect of the invention, a device (eg, mobile user device) may activate and execute one of a number of stored access control clients (eg, eSIMs). In particular, when loading an eSIM, the operating system (OS) only needs to load the list of software required for the current runtime environment. This "sandboxing" effect ensures that multiple eSIMs can be used within the same device without inappropriate access to other eSIMs.
Hereinafter, exemplary embodiments and aspects of the present invention are described in detail. These embodiments and aspects are primarily described in the context of subscriber identification modules (SIMs) of a GSM, GPRS / EDGE or UMTS cellular network, but those skilled in the art will recognize that the invention is not so limited. Indeed, various aspects of the present invention are useful in any wireless network (whether cellular or not) that can benefit from the secure modification, storage and execution of access control entities or clients.
Further, although the term "subscriber identification module" is used herein (e.g., eSIM), the term never (i) implies or requires use by the subscriber itself (i.e., the present invention is a subscriber or non- By particles); (ii) does not mean or require the identity of one individual (ie, the invention may be practiced for a group of individuals, such as a non-typed or fictitious entity such as a family or enterprise); Or (iii) it does not mean or require any tangible "module" equipment or hardware.
Prior art subscriber identification module ( SIM ) Action-
Within the context of prior art UMTS cellular networks, the user equipment (UE) comprises a mobile device and a universal subscriber identity module (USIM). USIM is a logical software entity that is stored and executed from a physical general purpose IC card (UICC). Various information such as subscriber information as well as algorithms and keys used for authentication with a network operator to obtain wireless network services are stored in the USIM. USIM Software Java Based on the Card ™ programming language. Java Card is a subset of the Java ™ programming language modified for embedded "card" type devices (such as the UICC described above).
In general, UICCs are programmed with a USIM prior to distribution to subscribers; Preprogramming or "personalization" is specific to each network operator. For example, prior to deployment, the USIM is associated with an International Mobile Subscriber Identify (IMSI), a unique Integrated Circuit Card Identifier (ICC-ID), and a specific authentication key (K). The network operator stores this association in a registry that is included within the network's authentication center (AuC). After personalization, the UICC can be distributed to subscribers.
Referring now to FIG. 1, an exemplary Authentication and Key Agreement (AKA) procedure using the prior art USIM described above is shown in detail. During normal authentication procedures, the UE obtains an International Mobile Subscriber Identify (IMSI) from the USIM. The UE delivers IMSI to the serving core network (SN) of the visiting core network or network operator. The SN forwards the authentication request to the AuC of the home network (HN). The HN compares the registry of the received IMSI with the AuC and obtains the appropriate K. HN generates a random number (RAND), which is signed by K using an algorithm (sign), producing an expected response (XRES). HN also uses various algorithms to generate not only an authentication token (AUTN) but also an encryption key (CK) and an integrity key (IK) for use in cryptography and integrity protection. The HN sends an authentication vector consisting of RAND, XRES, CK and AUTN to the SN. The SN stores this authentication vector for use only in one authentication process. The SN delivers the RAND and AUTN to the UE.
Once the UE receives the RAND and AUTN, the USIM verifies that this received AUTN is valid. In such a case, the UE uses the received RAND to calculate its own response (RES) using the same K that generated the XRES and the stored K. The UE delivers the RES to the SN. The SN compares the XRES with this received RES, and if they match, the SN authenticates the UE to use the operator's wireless network services.
Hereinafter, various aspects of the present invention are described in connection with one exemplary implementation. In the context of an exemplary embodiment of the present invention, instead of using a physical UICC as in the prior art, the UICC is included, for example, contained within a secure element (eg, a secure microprocessor or a storage device) at the UE. It is emulated as a virtual or electronic entity, such as a software application (hereinafter referred to as an Electronic Universal Integrated Circuit Card (eUICC)). The eUICC may store and manage a number of SIM elements (hereinafter referred to as Electronic Subscriber Identity Modules). Each eSIM is a software emulation of a typical USIM and includes similar programming and associated user data. The eUICC selects the eSIM based on the ICC-ID of the eSIM. Once the eUICC selects the desired eSIM (s), the UE can initiate an authentication procedure to obtain wireless network services from the corresponding network operator of the eSIM. In addition, each eSIM application generally includes access control clients such as USIM, CSIM, ISIM, SIM, RUIM, and the like described above. Each eSIM is associated with a user account, so that "eSIM" can include a wide range of access control clients (eg, a user can have a SIM and USIM associated with the same eSIM account). I understand.
As previously mentioned, the prior art USIM procedure described above uses a pre-shared key to provide a core network (eg, the home network (HN), serving network (SN) and authentication center (AuC), etc., described above). Authenticate Thus, the USIM procedure is of course a "closed" system for network operators because the preshared key must be strictly protected. In contrast, the present invention provides secure methods for the eUICC and any third party entity to mutually trust each other, and allows any third party entity to be trusted even after user equipment is deployed.
Thus, the present invention has considerably more complex security requirements in some cases, but also advantageously provides much greater flexibility. Moreover, those skilled in the art will appreciate that various aspects of the present invention benefit from being used with “virtual” software configurations (eg, eUICC, eSIM), although the benefit is not limited to these virtual embodiments. Will recognize. Indeed, the principles described herein are equally applicable, particularly for secure modification, storage and execution of access control clients implemented in physical card media, dedicated security hardware, and the like.
Establishment of Trusted Communication-
2 illustrates an example method of assigning a device key pair to a software entity (eg, eUICC, third party software vendor, SIM vendor, etc.). In step 202, a cryptographic public / private key pair (e.g., Rivest, Shamir and Adleman (RSA) algorithm) is assigned to the software entity, and a physically protected secure element of the software entity (e.g., eUICC in the UE, Security database within a third party software vendor). For example, the eUICC may generate a public / private key pair internally when programmed by a trusted entity, or alternatively when first manufactured / activated.
In short, the public / private key pair is based on a secret private key and a public key that is public. Public / private key schemes are considered "asymmetric" because the keys used for encryption and decryption are different, and therefore the encryptor and the decryptor do not share the same key. In contrast, “symmetric” key schemes use the same key (or slightly converted keys) for both encryption and decryption. Although the RSA (Rivest, Shamir and Adleman) algorithm is a type of public / private key pair encryption commonly used within the related arts, it will be appreciated that the present invention is in no way limited to the RSA algorithm.
Public / private cryptographic schemes may be used to encrypt the message and / or generate signatures. Specifically, the message can be encrypted with the private key and decrypted with the public key, thus ensuring that the message has not been altered at delivery. Similarly, a signature generated with a private key can be verified with a public key, which ensures that the entity generating the signature is legitimate. In use of both, the private key remains hidden and the public key is freely distributed.
In step 204, an endorsement certificate is issued for the public / private key pair. For example, a trusted entity proves the confidentiality of the private key and the authenticity of the eUICC by issuing a "approved" certificate for the eUICC key pair. This public / private key pair is now a device key pair for the eUICC.
In one embodiment, the authorization certificate may comprise (i) identification information to prove authority, (ii) identification information about the device, (iii) metadata describing the authentication algorithm, and / or (iv) appropriate disclosure. Contains a data set that can include (but is not limited to) keys. These components can be further signed by the approver's private key. In one embodiment, during normal operation, this digital signature is checked by the receiver to verify that the content is secure and not tampered with.
Because device key pairs are asymmetric, public keys can be distributed without compromising the integrity of private keys. Thus, device keys and certificates can be used to secure and authenticate communications between previously known parties (eg, eUICC, and third parties). Consider the following example transaction for secure delivery of runtime components between an eUICC and a software vendor (as shown in FIG. 3).
In step 302 of FIG. 3, the eUICC requests an eSIM from a third party eSIM vendor. The following example describes a secure transport of an eSIM application, but other common examples of runtime environment applications may include patches, a fully functional operating system, and the like.
In step 304, the third-party eSIM vendor retrieves the public device key corresponding to the eUICC from the approval certificate (eg, the approval certificate can be obtained from the database by querying the eUICC, etc.). In particular, note that the counterpart private key of the eUICC is preferably never exposed to third party eSIM vendors during this process.
In step 305, the third party eSIM vendor verifies the approval certificate. In one embodiment, the authorization certificate is uniquely signed by a trusted entity (such as Apple TM 's assignee). If the third-party eSIM vendor verifies the approval certificate, the third-party eSIM vendor can be assured that the eUICC is trusted by a trusted entity (eg, Apple ™ ) and secured by association.
In step 306, the eSIM runtime environment is encrypted and then signed by a third party software vendor for the specific eUICC corresponding to the UE. In an alternative embodiment, the eSIM runtime environment is first signed and then encrypted. In one example case, a vendor signs the eSIM using its vendor asymmetric signing key and RSA public / private key and certificate chain, and encrypts the eSIM using a temporary or temporary symmetric key. Temporary symmetric keys are randomly generated during package preparation for eUICC.
In step 308, the signed and encrypted eSIM runtime environment is partitioned by a third party eSIM vendor into multiple packages for transmission (eg, via a wireless interface, etc.). For example, the signed and encrypted eSIM is partitioned and sized into packets suitable for the quality of the communication link (package transmission supports various preferred error correction schemes known in the art).
In step 310, the temporary symmetric key is securely transmitted to the eUICC by performing encryption or the like using an appropriate eUICC public key. The vendor certificate may be sent as plain text or alternatively encrypted. In general, vendor certificates are not encrypted to reduce the processing burden on the receiver side (but this is not a requirement of the system, and encryption may be used in all cases, or alternatively may optionally be applied).
In step 312, the eUICC verifies the vendor certificate. Note that successful verification of the vendor's certificate using the vendor's public signature key provides the eUICC with proof that the signature was not forged.
In some cases, the vendor certificate may include additional signatures by external trust entities (eg, MNOs, etc.). If the vendor certificate is valid, the UE decrypts the temporary symmetric key using its private key (eUICC). Successful completion of the preceding exchange ensures that the path between the eUICC and the third party entity is secure and encrypted by a common temporary symmetric key for further data transactions.
Thus, in step 314, the bulk encryption package can be securely received, recombined, and decrypted by the eUICC. In this particular example, the eUICC downloads packages for the eSIM.
In one embodiment, the vendor certificate, key and encryption packages are sent together. Alternative embodiments use another paradigm; For example, it transmits a certificate and a key, establishes a secure connection first, and then initiates the transmission of encryption packages over the secure connection.
An exemplary embodiment of the present invention treats the eSIM as a separate entity from the eUICC. Thus, the eUICC can establish a secure connection to a third party entity, even after the user equipment is deployed, without the benefit of the existing eSIM. The example eUICC enables secure delivery of eSIMs, thereby enabling third party eSIM vendors to directly deploy eSIMs to mobile devices regardless of prior dependence on existing SIM AKA procedures.
More directly, the device has a distinct asymmetric device key pair that is separate from the symmetric key associated with any single eSIM (and the MNO that issues the eSIM). This distinction between eSIM and eUICC has a significant impact on the complexity of the device operating system.
security Partition Execution
As mentioned above, existing solutions for physical UICC include a single USIM entity; However, one of ordinary skill in the art will recognize that various aspects of the present invention are suitable for storing and executing multiple access control client profiles. Thus, in another embodiment of the present invention, the eUICC must determine the validity of both the network and the eSIM. Due to the complexity of the prior work, the prior art SIM architecture is no longer sufficient for initialization. Instead, in one embodiment of the present invention, the bootstrap operating system (OS) loads a "common" or "resident" operating system; The common OS loads the appropriate eSIM, and the loaded eSIM executes the Authentication and Key Agreement (AKA) procedure described above.
Specifically, one implementation of the bootstrap OS of the present invention is responsible for encryption verification, decryption, and loading of a common OS, all patches being associated with an activated eSIM. Bootstrap OS runs on virtualization software eUICC; As a result, the eSIM and associated common OS are "sandboxed"; They can only access appropriate patches made available through the eUICC. For example, in one example embodiment, the eUICC only enables as eSIM patches that share the same signer.
Referring now to FIG. 4, one exemplary method for securely performing partitioning of an eSIM is described.
In step 402, the eUICC launches the bootstrap OS at chip reset. In step 404, the bootstrap OS analyzes the list of qualified patches and launches them for the runtime environment. For example, the bootstrap OS can identify the default network and its associated patches. At least one of these patches is a common OS, while other patches include an active eSIM and any additional patches associated with the eSIM.
In step 406, the bootstrap OS verifies the integrity of the patches, for example by analyzing the certificate or by other means. For example, in one embodiment, a trusted entity (eg, the assignee listed) may issue a certificate or otherwise serve as a source of trust for the signature chain. If the patches are properly signed, the bootstrap OS can execute the patches. Only validated patches corresponding to the appropriate eSIM are loaded (other patches can be stored, but do not run in a "sandbox").
In step 408, the bootstrap OS launches a common OS. The common OS provides an interface between the eSIM and the rest of the hardware. Common operating systems typically provide input and output functions that emulate a UICC specific to a particular eSIM. In general, this includes functions such as file input and output (IO).
4A shows a software relationship 450 between bootstrap OS 452, common OS 454, and eSIM 456. Most notably, in the exemplary embodiment (as described in Figures 4 and 4A), different eSIM profiles operate within their common OS. By separating the runtime environments for different eSIM profiles into different sandboxes, the above-described embodiment is preferably compatible with legacy SIM architectures, but to exercise the advantages of the present invention. In general, by ensuring that each eSIM runs in its own environment, existing SIM software can be directly virtualized. In addition, sandboxes ensure that the presence of other eSIMs will not cause adverse interactions, which may include a wide range of third-party eSIM vendors (eg, which may include proprietary protocols, performance, etc.). It is a requirement to support the distribution.
As mentioned above, the foregoing discussion is mainly based on SIM-based network technologies and features. As a result, a description is now given of an exemplary embodiment of methods and apparatus generalized to implement one or more aspects of the present invention.
Referring now to FIG. 5, shown is one embodiment of a method 500 generalized for security changes, and storage for components for use in an access control client.
In step 502, one or more components are requested or provided for use with an access control client. In one exemplary embodiment, the one or more components, in whole or in part, comprise (i) a common operating system, (ii) at least one eSIM, and / or (iii) one or more personalization patches associated with the eSIM. In another technical implementation, packages may be associated with CDMA Subscriber Identification Modules (CSIM), IP Multimedia Services Identity Modules (ISIMs), Subscriber Identity Modules (SIMs), Removable User Identity Modules (RUIMs), and the like. One of ordinary skill in the art will recognize the almost unlimited substitution possibilities for the various similar structures within the techniques provided in this disclosure, and changes to the methods and apparatus presented herein to accommodate such similar structures and substitutions are disclosed herein. It is within the skill of the person skilled in the art provided in the disclosure.
In one embodiment, one or more components are requested or “pulled” by the device, or the subscriber associated with the device, ie by the device / user issuing the communication or request of acceptance. In an alternative embodiment, one or more components are assigned or " pushed " to the device, i. do. The presence of one or more components can be advertised or otherwise stored in a repository that can be broadcast or accessed or retrieved.
In another embodiment, one or more components are queried or otherwise triggered by one or more context related events, such as a device entering a specified area, exceeding a specified usage, and the like.
The request or offer may include a signature or certificate originating from a trusted party. In another alternative implementation, the request or provision includes a cryptographic challenge. In another variation, the request or provision includes means for determining authenticity (eg, user interface based password authentication, etc.).
The request or offer may include a transactional key. In one such variant, the transaction key is a temporary key. Other permanent transaction keys may be implemented; For example, the key may be the same for multiple transaction sections, multiple users, and the like. In another variation, the transaction key is a symmetric key or alternatively an asymmetric key.
In step 504, the request or offer is verified for authenticity. In one embodiment, the signature or certificate originating from a trusted party is checked for validity. In some cases, this may require an external contact for a trusted party. Alternatively, the validity of the signature or certificate can be found by the verifier without relying on self-evident or trusted persons. Another tweak may depend on the subscriber's input, such as entering a username and password, or simple verification schemes.
Successful verification may be configured to require one or more challenge response exchanges. In some variations, the verification may be one way (eg, only one of the transactors is verified), or two way (eg, both of the transactors must succeed). In another approach, verification is performed out-of-band (eg, via another communication path) or through subscriber support or the like.
Successful verification results in agreement on one or more parameters needed for a secure transaction. For example, in one embodiment, one or more transaction keys are established. In some variations, a transaction key is generated after verification. In an alternative variant, the transaction key is proposed or generated before verification and then used depending on the condition.
The device then receives one or more packages associated with the access control client. Packages can be further encrypted by transaction keys to ensure secure transmission. In one variant, the packages are asymmetrically encrypted; That is, the packages are encrypted by the public key. In another variant, the packages are symmetrically encrypted, using a previously agreed upon shared key. Alternatively, the packages are signed by an identifiable signature. Numerous other solutions to verifiable package delivery known in the art can be used to conform to the present invention.
In step 508, the device assembles the packages and decrypts one or more components. In one exemplary embodiment, one or more components are associated with a suitable common operating system. For example, as described above, the patches may include at least one eSIM and / or one or more personalization patches related to the eSIM as described above. At the conclusion of step 508, one or more components have been successfully and securely sent to the target device.
Referring now to FIG. 6, an exemplary embodiment of a method 600 generalized for secure execution of components for use in an access control client is shown.
In step 602, an access control client and one or more related patches are identified. In one exemplary embodiment, the access control client and one or more related patches are selected by the operating system. In one implementation, the operating system is additionally booted from a simple bootstrap operating system.
In one configuration, the bootstrap operating system has a plurality of secure partitions, each partition being distinct from other partitions, and software running from the memory partition cannot or cannot access other unrelated partitions. . For example, one example device executes a simple bootstrap OS; A simple bootstrap OS loads and executes a common OS, and its associated eSIMs, and patches within a single "sandbox" partition.
Various embodiments of the present invention separate the entire manifest of available components and patches, in accordance with one or more categorizations. In one such variant, components and patches are associated according to a common signer or trusted source. For example, in one scenario, a simple bootstrap OS may only allow a common OS, and an eSIM signed by the same eSIM vendor for execution. In other variations, components and patches may be associated according to the user's choice, or various levels of trust. For example, various components may be interspersed from different cooperating entities (eg, trusted eSIM vendors, trusted network personalizations, etc.).
In step 604 of the method 600, the access control client and associated patches are verified for operation. In one embodiment, the access control client and associated patches are integrity; Ie they are not forged or otherwise altered. Common methods for such integrity checking include checksums, cryptographic hashes or residues. Other solutions for verifying the authenticity of a patch may include verifying certificates, verifying status, and the like.
In step 606, a verified access control client is run. Upon successful loading and execution, the access control client will execute initial access control procedures for the associated network. For example, a validated eSIM may execute an Authentication and Key Agreement (AKA) procedure.
Referring now to FIG. 7, an exemplary apparatus 700 useful for implementing the methods of the present invention is shown.
The example UE apparatus of FIG. 7 is a wireless device having a processor subsystem 702, such as a digital signal processor, microprocessor, field-programmable gate array, or a plurality of processing components mounted on one or more substrates. The processing subsystem may include internal cache memory. The processing subsystem is connected to a memory subsystem 704 that includes a memory that can include, for example, SRAM, flash, and SDRAM components. The memory subsystem may implement one or more DMA type hardware to facilitate data access as is known in the art. The memory subsystem includes computer-executable instructions executable by the processor subsystem.
In one exemplary embodiment of the invention, the device may include one or more air interfaces 706 configured to connect to one or more wireless networks. Multiple air interfaces may support different radio technologies such as GSM, CDMA, UMTS, LTE / LTE-A, WiMAX, WLAN, Bluetooth, etc. by implementing the appropriate antenna and modem subsystem.
User interface subsystem 708 can include any number of known I / Os, including but not limited to keypads, touch screens (eg, multi-touch interfaces), LCD displays, backlights, speakers, and / or microphones. It includes. However, recognize that in some applications, one or more of these components may be omitted. For example, embodiments of a PCMCIA card-type client may lack a user interface (since they may be piggybacked to the user interface of a host device that is physically and / or electrically coupled).
In the described embodiment, the device includes a secure element 710 that includes and operates the eUICC application. The eUICC can store and access a plurality of access control clients to be used for authentication by a network operator. This secure element can be accessed by the memory subsystem at the request of the processor subsystem.
One exemplary embodiment for a secure element includes at least partitionable memory, where the partitionable memory is configured to include one or more access control clients and associated patches. Each partition is kept distinct from other partitions, and software running from a memory partition cannot or cannot access other unrelated partitions.
The secure element may comprise a so-called "secure microprocessor" or an SM of the type known in the security arts.
In addition, various implementations of the example embodiments include instructions that, when executed, launch a simple bootstrap operating system (OS). The bootstrap OS is further configured to select at least one partition from the secure element and load the appropriate access control client loaded thereby. In various implementations, the access control client may be further provided with one or more certificates associated with trusted signers. The bootstrap OS may verify the credentials prior to execution of the access control client.
In addition, in one embodiment, the secure element maintains a listing or manifest of stored access control clients. The manifest may include information about the current status of the stored access control client; Such information may include availability, completeness, validity, previously experienced errors, and the like. The manifest may be further linked or coupled to the user interface to enable user selection of the available access control clients.
Referring back to FIG. 7, secure element 710 may receive and store components for use in one or more access control clients for authentication by a network operator. In one exemplary embodiment, the secure element has an associated device key and authorization certificate. This device key is used to protect and verify communication between previously unknown parties (eg, UE, and a third party).
In one such variant, the device key is the private key of an asymmetric public / private key pair. The corresponding public key can be freely distributed without compromising the integrity of the private keys. For example, a device may be assigned (or internally generated) an RSA public / private key; The public key is made available for post deployment communication.
In addition, in some variations, the authorization certificate is a uniquely signed digital signature associated with the trusted entity. In one example scenario, the authorization certificate can be verified by a third party entity, providing proof of integrity of the example device.
Although the foregoing methods and apparatus for programming a secure element have been described in connection with an RSA key pair, those skilled in the art will readily appreciate that other authentication schemes may be substituted as well. For example, in another variation, the device key may be a shared key, and the distribution of the shared key is highly guarded. Still other embodiments may be based on certificates in addition to cryptographic exchanges.
While some aspects of the invention have been described in terms of particular sequences of steps in one method, it will be understood that these descriptions are merely illustrative of the broad method of the invention and may be modified as needed by a particular application. Some steps may be unnecessary or optionally implemented under certain circumstances. In addition, certain steps or functions may be added to the disclosed embodiments or the order of execution of two or more steps may be exchanged. Such modifications should be considered to be all within the scope of the invention disclosed and claimed herein.
While the foregoing detailed description has shown, described, and pointed out novel features of the invention as applied to various embodiments, various omissions, substitutions, and changes in form and detail of the described devices or processes have been shown. It will be understood that one of ordinary skill in the art may make this without departing from the scope of the invention. The foregoing description is the best mode currently contemplated for practicing the present invention. This description is by no means limiting and should be regarded as an illustration of the general theory of the invention. The scope of the invention should be determined with reference to the claims.
An interface to the secure element, the interface having an encryption key and an associated first certificate;
A storage device in data communication with the processor, the storage device comprising computer-executable instructions, wherein at least a subset of the computer-executable instructions are further partitioned into one or more segments and the computer-executable instructions Are executed by the processor,
Send over the interface a request for one or more components of the access control client unique to the at least one network;
Receive the requested one or more components and a second certificate;
Verify the second certificate; And
In response to successful verification of the second certificate, store the access control client for the secure element.
The access control client includes one or more electronic Subscriber Identity Modules (eSIMs),
The secure element comprises an electronic Universal Integrated Circuit Card (eUICC), each of the one or more eSIMs associated with an International Mobile Subscriber Identifier (IMSI);
Each of the eSIMs is further configured to establish a secure connection with the cellular network based at least in part on an Authorization and Key Agreement (AKA).
The at least one network comprises a Global Standard for Mobile Communications (GSM) network.
The at least one network comprises a Universal Mobile Telecommunications System (UMTS) network.
The at least one network comprises a Code Division Multiple Access 2000 (CDMA 2000) network.
Wherein the request comprises a first authorization certificate.
And the encryption key is uniquely associated with a first authorization certificate.
And the encryption key has an asymmetric corresponding key that can be distributed to the public.
And the asymmetric corresponding key enables secure transmission to the wireless device.
Wherein said at least one component comprises an access control client encrypted by a session key, said first certificate and said second certificate comprising a first granting certificate and a second granting certificate, respectively.
And the session key is randomly generated.
A method of requesting a user access control client for use in a wireless network, the method comprising:
Requesting a user access control client from the wireless network, the request being associated with a first grant certificate;
Receiving the user access control client and a second grant certificate, wherein the first grant certificate and the second grant certificate are issued by a trusted entity; And
Storing the user access control client if the second authorization certificate is valid
Access to the wireless network is limited to (i) access through the user access control client, and (ii) requests for user access control clients.
The user access control client includes an electronic subscriber identity module (eSIM).
And the first approval certificate and the second approval certificate are uniquely associated with the first and second encryption key pairs.
And the first and second encryption key pairs comprise asymmetric key pairs.
Wherein the user access control client is further encrypted by a session key.
Storing the user access control client comprises storing the user access control client in a memory partition selected from a plurality of memory partitions.
And the memory partition is unique to the user access control client.
Subsequent changes to the user access control client can only be performed by the second grant certificate.
A wireless device for requesting a user access control client for use in a wireless network, the wireless device comprising:
A storage device in data communication with the processor, the storage device including computer-executable instructions, wherein at least a subset of the computer-executable instructions are further partitioned into one or more segments, the computer-executable instructions comprising: When run by a processor,
Request a user access control client from the wireless network, the request being associated with a first certificate;
Receive the user access control client and a second certificate, the first certificate and the second certificate being issued by a trusted entity; And
Store the user access control client if the second certificate is valid;
KR1020110111487A 2010-10-28 2011-10-28 Methods and apparatus for storage and execution of access control clients KR101447766B1 (en)
KR20120044914A true KR20120044914A (en) 2012-05-08
KR101447766B1 KR101447766B1 (en) 2014-10-06
KR20130131238A (en) * 2012-05-23 2013-12-03 주식회사 케이티 Method and apparatus of constructing secure infra-structure for using embedded universal integrated circuit card
CA2446304C (en) * 2001-05-01 2012-03-20 Vasco Data Security, Inc. Use and generation of a session key in a secure socket layer connection
KR20190050949A (en) * 2012-05-23 2019-05-14 주식회사 케이티 Method and apparatus of constructing secure infra-structure for using embedded universal integrated circuit card
2014-04-09 A107 Divisional application of patent