# Patent

## Title
Method and apparatus for single sign-on collaboraton among mobile devices

## Abstract

An apparatus for, and method of, single sign-on collaboration among a plurality of mobile devices, includes a server for issuing a first identity token to subsequently authenticate a user of a first of the mobile devices to a service provider, and for generating and sending a collaboration key to the first device based on the first identity token or user authentication. The first device generates and sends a collaboration credential based on the collaboration key to a second device paired with the first device. The server also issues a second identity token to subsequently authenticate to the service provider the user of the second device based on the collaboration credential received from the first device, to support single sign-on collaboration for the user across the plurality of mobile devices.

## Background
REFERENCE TO RELATED APPLICATIONS
The present application is related to U.S. patent application Ser. No. 13/728,598, entitled “Method of and System for Authenticating and Operating Personal Communication Devices over Public Safety Networks”; U.S. patent application Ser. No. 13/728,521, entitled “Method and Apparatus for Single Sign-On Collaboration Among Mobile Devices”; U.S. patent application Ser. No. 13/728,711, entitled “Method and Apparatus for Ensuring Collaboration Between a Narrowband Device and a Broadband Device”; U.S. patent application Ser. No. 13/728,752, entitled “System and Method for Scoping a User Identity Assertion to Collaborative Devices”; and U.S. patent application Ser. No. 13/728,797, entitled “Apparatus for and Method of Multi-Factor Authentication Among Collaborating Mobile Devices”; which applications are commonly owned and filed on the same date as this application and the contents of which applications are incorporated herein in their entirety by reference thereto.
FIELD OF THE DISCLOSURE
The present disclosure relates generally to an apparatus for, and a method of, single sign-on (SSO) collaboration among a plurality of mobile devices.
BACKGROUND
Single sign-on (SSO) technology is a session/user authentication process that permits an on-line user to enter identity information, for example, a user name and a password, in response to prompts in order to access multiple applications, e.g. email, banking services, shopping services, etc., at various web sites or internet domains hosted by a service provider, on a single mobile device. The SSO process authenticates the user for all the applications that he or she has been given rights to, and eliminates further prompts when the user switches applications during a particular on-line session. Security Assertion Markup Language (SAML) and Web Authorization Protocol (OAuth) are examples of open standards for exchanging authentication and authorization data between such multiple applications on a single mobile device.
As advantageous as the known SSO processes have been, they do not support SSO when a user of one mobile device changes or switches to another mobile device. By way of example, a user may be checking his or her email on a personal digital assistant or a smartphone, and then, for whatever reason, may subsequently wish to check his or her email, or even run a different application, on his or her laptop computer or a desktop computer. Thereafter, the user may wish to check his or her email, or even run a different application, on his or her tablet. The user may, in case of emergency, subsequently wish to run an application, on his or her land mobile radio (LMR). At present, whenever the user changes mobile devices, he or she must enter re-enter the identity information, for example, the user name and password, in response to prompts made by each new mobile device. At present, there is no SSO process that supports the user among a plurality of mobile devices.
Accordingly, there is a need to enable SSO across a plurality of mobile devices to reduce the amount of time and the annoyance of having to log in and enter the identity information each and every time that the user changes devices, to reduce administrative overhead in resetting forgotten identity information, and to enable the user to select stronger passwords since only one password, rather than multiple passwords, needs to be remembered.



BRIEF DESCRIPTION OF THE FIGURES
The accompanying figures, where like reference numerals refer to identical or functionally similar elements throughout the separate views, together with the detailed description below, are incorporated in and form part of the specification, and serve to further illustrate embodiments of concepts that include the claimed invention, and explain various principles and advantages of those embodiments.
FIG. 1 is a schematic view of an apparatus for single sign-on (SSO) collaboration among a plurality of mobile devices in accordance with the present disclosure.
FIG. 2 is a message sequence chart depicting steps performed in a method of single sign-on (SSO) collaboration among a plurality of mobile devices in accordance with one embodiment of the present disclosure.
FIG. 3 is a message sequence chart depicting steps performed in a method of single sign-on (SSO) collaboration among a plurality of mobile devices in accordance with another embodiment of the present disclosure.



Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions and locations of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of embodiments of the present invention.
The apparatus and method components have been represented where appropriate by conventional symbols in the drawings, showing only those specific details that are pertinent to understanding the embodiments of the present invention so as not to obscure the disclosure with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein.
DETAILED DESCRIPTION
One aspect of this disclosure relates to an apparatus for single sign-on collaboration among a plurality of mobile devices. The term “collaboration” or “SSO collaboration” refers to a type of working cooperation among mobile devices, whereby a user can sign-on, or login, to a first service from a first mobile device, and leverage a set of enhanced identity management procedures to securely access the first service, as well as other services, from the first mobile device, as well as from other mobile devices, without needing to perform additional manual sign-on procedures.
The apparatus includes a server operative for issuing a first identity token (as defined below) to subsequently authenticate a user of a first of the mobile devices to a service provider, and for generating and sending a collaboration key (as defined below) to the first mobile device based on the first identity token and/or user authentication. The first mobile device is operative for generating and sending a collaboration credential based on the collaboration key to a second mobile device paired with the first mobile device. The server is further operative for issuing a second identity token (as defined below) to subsequently authenticate the user of the second mobile device to the service provider based on the collaboration credential received from the first mobile device, to support single sign-on collaboration for the user across the plurality of mobile devices.
Advantageously, the first mobile device configures the collaboration credential as a data structure that comprises at least one of an identification of the user, an identification of the first mobile device, an identification of which of the plurality of mobile devices are permitted to collaborate with the first mobile device, and an identification of the conditions under which the collaboration is permitted to be conducted. In one embodiment, the collaboration credential is concatenated with a message authentication data structure, such as a keyed hash, also known as a message authentication code (MAC), or a digital signature.
The server also configures each identity token as a data structure that comprises at least one of an identification of the user and an identification of the mobile device to which the respective identity token is sent. As used herein, the term “data structure” includes a list, string, array, or any complex data structure that includes files or data sets. When the data structure of the collaboration credential is a file, then the file format may be JavaScript Object Notation (JSON), XML, HTML, ASCII, Binary, or any other file format, and the file may be compressed or encrypted, in part or in whole. Computing and concatenating a MAC to a data structure is herein referred to as “MACing”.
The server can constitute a single identity management server for issuing each identity token, for establishing the collaboration key, and for verifying the collaboration credential. In a variant construction, the server can constitute an identity management server for issuing each identity token, and a collaboration manager server for establishing the collaboration key, and for verifying the collaboration credential.
A method, in accordance with another aspect of this disclosure, of single sign-on collaboration among a plurality of mobile devices, is performed by issuing and sending a first identity token to a first of the mobile devices to subsequently authenticate a user of the first mobile device to a service provider, establishing a collaboration key with the first mobile device based on the first identity token and/or user authentication, pairing the first mobile device with a second mobile device, generating and sending a collaboration credential based on the collaboration key to the second mobile device, requesting a second identity token based on the collaboration credential, and issuing and sending a second identity token to the second mobile device to subsequently authenticate the user of the second mobile device to the service provider, for supporting single sign-on collaboration for the user across the plurality of mobile devices.
Turning now to the drawings, reference numeral 10 in FIG. 1 generally identifies a system 10 for single sign-on collaboration for a user 50 among a plurality of his or her mobile devices, such as, by way of non-limiting example, a personal digital assistant 12, a smartphone 14, a desktop computer 16, a tablet 18, a land mobile radio (LMR) 20, and a laptop computer 22. Other mobile devices, and other device types, that are different from those illustrated are also contemplated by the present disclosure. Each of these mobile devices has one or more network interfaces, which may include one or more radio frequency (RF) transceivers operatively connected to a network 24, for example, the Internet, preferably over a bi-directional wireless link, such as Wi-Fi, which is an open wireless standard for transmission of digital voice and data. The network 24 need not be a single network as illustrated, but could comprise a plurality of networks interconnected by forwarding equipment. The mobile devices 12, 14, 16, 18, 20 and 22 not only communicate over the network 24 with a service provider (SP) 52, but can also wirelessly communicate with one another, for example, via Bluetooth®, which is another open wireless standard for transmission of digital voice and data between devices.
In one embodiment, all of the user's mobile devices 12, 14, 16, 18, 20 and 22 can communicate directly with each other. In another embodiment, some of the user's mobile devices may have to communicate with each other via one or more of the user's other mobile devices. In one embodiment, all of the user's mobile devices have the same wireless interface, such as Bluetooth®. In another embodiment, some of the user's mobile devices have one wireless interface, such as Bluetooth®; others of the mobile devices have another wireless interface, such as Wi-Fi; and still others of the mobile devices have both, or other interfaces.
The system 10 includes a server 30, which comprises either a single identity management server (IdM) 26, as described below in connection with FIG. 2, or the IdM 26 in combination with a collaboration manager server (CM) 28, as described below in connection with FIG. 3. The server 30 is operatively connected to the network 24 over a bi-directional link, which may be wired or wireless, and interacts with one or more of the devices 12, 14, 16, 18, 20 and 22, as described in detail below. Each server comprises one or more processes running on one or more computers. More particularly, each of the server 30 and the mobile devices 12, 14, 16, 18, 20 and 22 includes a processor, such as one or more microprocessors, microcontrollers, digital signal processors (DSPs), combinations thereof or such other devices known to those having ordinary skill in the art. The particular operations/functions of the processor, and respectively thus of the server and communication devices, is determined by an execution of software instructions and routines that are stored in a respective at least one memory device associated with the processor, such as random access memory (RAM), dynamic random access memory (DRAM), and/or read only memory (ROM) or equivalents thereof, that store data and programs that may be executed by the corresponding processor. Further, in the event that the server 30 is implement as both the IdM 26 and the CM 28, each of the IdM and the CM includes a processor whose particular operations/functions, and respectively thus of the server, is determined by an execution of software instructions and routines that are stored in a respective at least one memory device associated with the processor. Unless otherwise specified herein, the functionality described herein as being performed by the server(s) and mobile devices is implemented with or in software programs and instructions stored in the respective at least one memory device of the server(s) and mobile devices and executed by the associated processor of the server(s) and mobile devices.
Turning now to the message sequence chart of FIG. 2, across the top of the chart, any one of the aforementioned mobile devices 12, 14, 16, 18, 20 and 22 is depicted, and hereinafter referred to, as device 1, and any other of the aforementioned mobile devices 12, 14, 16, 18, 20 and 22 is depicted, and hereinafter referred to, as device 2. It will be appreciated that the devices 1 and 2 may be of different types, or may be of the same type, e.g., both devices 1 and 2 may be smartphones. Also shown, across the top of the chart, is the IdM 26 and the SP 52, e.g., a host for hosting services and applications that are provided over the network 24. The timed sequence in which various actions are performed is shown as one proceeds down away from the top of the chart.
Initially, the user 50 of device 1 is not logged into the SP 52 (box 100), and the user 50 of device 2 is not logged into the SP 52 (box 102). Thereupon, the user 50 of the device 1 first establishes a secure connection or “tunnel” between the device 1 and the IdM 26 (see message 104), and then authenticates himself or herself to the IdM 26. The user 50 inputs into the device 1, and the device conveys to IdM 26, identity information, for example, a user name and a user password, and, optionally, some other data, such as what other devices or types of devices to which the user 50 wants to gain access, or the conditions under which such access is to be permitted or denied.
In one embodiment, rather than explicitly entering the other devices or device types, or the conditions under which access is to be permitted, the user 50 could instead input to the device 1, and the device conveys to IdM 26, an indication of what actions the user 50 intends to perform, or what services/applications the user 50 intends to use. In another embodiment, data, such as the devices, the types of devices, the actions or the services/applications, is not entered by the user 50, but instead, is automatically generated by the device 1 and is sent to the server 30. In response to receiving the identity information from device 1, the IdM 26 issues a first data structure (see box 106) or first identity token 1 (as defined below) and sends the first identity token 1 to the device 1 to subsequently authenticate the user 50 of the device 1 to the SP 52 (see message 108).
In one embodiment, the device 1 next requests from the IdM 26 a collaboration key that is based on the first identity token 1 and/or user authentication (see message 110). For example, in response to receiving the first identity token 1, device 1 may convey, to the IdM 26, a request for a collaboration key, which request is associated with the first identity token 1, for example, that includes the first identity token 1 or a value associated with the first identity token 1, such as a value derived from the first identity token 1, or which request is secured by the first identity token, or transmitted over a link secured with the first identity token, or transited by a device which uses the first identity token to establish a secure communications session. This request can be performed automatically or manually. In response, the IdM 26 establishes the collaboration key by, for example, generating the collaboration key (see box 112) as a data structure and sending the collaboration key to the device 1 (see message 114). In another embodiment, rather than sending the first identity token 1 and the collaboration key as independent actions, the IdM 26 can send the collaboration key to device 1 simultaneously with the first identity token 1, for example, in a same message, in response to authenticating the user of device 1.
The collaboration key is established between the server 30 and the device 1 by any key agreement or key establishment method. In various embodiments, establishing the collaboration key may include the server 30 one or more of: receiving at least one of a public key and a digital certificate from the device 1, generating at least one of a symmetric key and a public key as a collaboration credential and sending the collaboration credential to the device 1, and/or mutually generating the collaboration key with the device 1. For example and not intending to limit the invention in any way, in a first such embodiment, the device 1 sends a symmetric key to the server 30; in a second such embodiment, the device 1 generates a public key pair and sends the corresponding public key to the server 30; in a third such embodiment, the server 30 sends a symmetric key to the device 1; in a fourth such embodiment, the server 30 generates and sends a public key pair to the device 1; and, in a fifth such embodiment, the device 1 and the server 30 each derives a symmetric key through well-known key agreement methods, such as the Diffie-Hellman key agreement method.
In the first, third and fifth embodiments, the collaboration key is a symmetric key known to both the server 30 and the device 1. In the second embodiment, the collaboration key consists of two parts: a public key and a private key (referred to collectively as a public key pair) both generated by the device 1. The private key is known only to the device 1, and the public key is shared with the server 30. In the fourth embodiment, the collaboration key also consists of a public key and a private key, both of which are generated by the server 30 and sent to the device 1. In one variant, the collaboration key establishment also includes the establishment of collaboration constraints, i.e., rules applied to the ability of the device 1 to collaborate with other devices, and enforced by the server 30. The server 30 will send any such collaboration constraints to the device 1 during the collaboration key establishment. In some circumstances, the device 1 may request that collaboration constraints be applied to the collaboration key that it is requesting.
Next, a transport layer security (TLS) session is established between the device 1 and the SP 52 (see message 116). Cryptographic protocols, other than TLS, such as Internet Protocol Security (IPsec), Secure Sockets Layer (SSL), Secure Shell (SSH), and like cryptographic protocols that provide communication security over the Internet, could also be employed. Alternatively, no cryptographic protocol between the device 1 and the SP 52 could be used. The device 1 requests service based on the first identity token 1 (see message 118). In response, the SP 52 activates the service and/or associated application and allows device 1 access to the service/application (see message 120). The user 50 is now authenticated and logged into the SP 52 (see box 122).
When collaboration with another device, that is, device 2, is desired, the devices 1 and 2 must establish a security association between each other. When such collaborating devices form such a security association, they are said to be paired. If Bluetooth® is employed, then pairing occurs when two Bluetooth® devices agree to communicate with each other and establish a secure connection. In some cases, Bluetooth® can provide the needed security association, and, in other cases, a higher communication layer can provide the needed security association. In some cases, a shared secret, also sometimes referred to as a passkey or a personal identification number (PIN), is exchanged between the two devices 1 and 2. Alternatively, the devices 1 and 2 can each derive a shared secret without directly exchanging the value of the shared secret between each other, such as is provided by the well known Diffie-Hellman algorithm.
A passkey is a code shared by both devices 1 and 2, which proves that both devices have agreed to pair with each other. Once paired (see message 124), the device 1 is operative for generating a collaboration credential (see box 126) based on the collaboration key, and sending the collaboration credential to the device 2 (see message 128). The pairing need not be performed immediately prior to the sharing of the collaboration credential, but could be performed beforehand. It will be appreciated by those skilled in the art that once a security association exists between devices, data can be sent securely between the devices using the security association.
In one embodiment the security association used for collaborative pairing is established through the use of certificate-based authentication. Where the collaborating devices exchange digital certificates, such as standard X.509 certificates, public key cryptographic methods, such as those described by the TLS standard, are used to establish the necessary security association. In one embodiment, attributes in the exchanged certificates can be used to determine the applicability of SSO collaboration for the device presenting the certificate.
In one embodiment, the device 1 sends a collaboration notification (see message 125) to the server 30 to indicate that it has sent, or will send, the collaboration credential to the device 2. The collaboration notification is a message, file or data structure, which identifies the device 1 as the source of the collaboration credential, and identifies the device 2 as the recipient of the collaboration credential. The collaboration notification may further contain scoping assertions about the intended use of the collaboration credential. For example, the scoping assertions may indicate that the collaboration credential may only be used for services specifically identified in the collaboration notification. In one embodiment, the collaboration notification may be sent to the device 2 by the device 1, after which the device 2 forwards the collaboration notification to the server 30.
In one embodiment, the collaboration credential is a data structure or ticket containing, by way of non-limiting example, one or more of a user identification, a session identification, a collaboration device identification(s), other collaboration device description(s), an expiration time, and other usage constraints. In another embodiment, the collaboration credential is an OAuth token, a SAML token, a JSON Web Token (JWT), or another type of identity token. In one embodiment, the collaboration credential is a data structure that contains information used to bind multiple devices to a single user 50, or to bind multiple devices to a single purpose, or to bind the user 50 to a device, or to bind a device to one or more other devices, or to bind at least one device to a user group.
Next, a TLS session is established between the device 2 and the IdM 26 (see message 130). The device 2 next requests a second data structure or second identity token 2 (as defined below) based on the collaboration credential (see message 132). In response, the IdM 26 verifies the collaboration credential (see box 134), and issues and sends to device 2 the second identity token 2 (see message 136), which second identity token subsequently is used to authenticate the user of the device 2 to the SP 52. In one embodiment, when the IdM 26 verifies the collaboration credential, the IdM 26 will compare the identity of the device from which it received the collaboration credential (i.e., the device 2) with any collaboration notification received from the device 1. In one embodiment, the second identity token 2 identifies the same user 50 as the first identity token 1.
Next, a TLS session is established between the device 2 and the SP 52 (see message 138). The device 2 requests service based on the second identity token 2 and/or user authentication (see message 140). In response, the SP 52 activates the service/application and allows device 2 access to the service/application (see message 142), thereby enabling single sign-on collaboration for the user 50 across the devices 1 and 2. The user 50 is now authenticated and logged into the SP 52 (see box 144). If additional collaboration is required for an additional one of the aforementioned devices 12, 14, 16, 18, 20 and 22, then the above-described process is repeated. It will be noted that the identity tokens 1 and 2 are not shared; only the collaboration credential is passed between the devices 1 and 2.
FIG. 3 is analogous to FIG. 2, except that the SP 52 has been omitted for ease of illustration, and, instead of the server 30 just constituting the IdM 26, the server 30 now comprises the IdM 26 and the CM 28. This embodiment allows the potential re-use of a commercial-off-the-shelf (COTS) IdM 26. In brief, the IdM 26 still issues identity tokens, as described above, but now, the CM 28 generates the collaboration key and verifies the collaboration credential.
As shown in FIG. 3, the user 50 of device 1 is not logged into the SP 52 (box 200), and the user 50 of device 2 is not logged into the SP 52 (box 202). The user 50 then logs into the device 1 (box 204), and establishes a secure connection or “tunnel” between the device 1 and the IdM 26 as described with respect to FIG. 2. The user 50 then enters the identification data into device 1 and the device conveys the identification data as described with respect to FIG. 2 to the IdM 26 (see message 206). In response to receiving the identification data, the IdM 26 issues the first identity token 1 (see box 208) and sends the first identity token 1 to the device 1 (see message 210) for use in subsequently authenticating the user 50 of the device 1 to the SP 52.
The device 1 next requests, from the CM 28, a collaboration key based on the first identity token 1 and/or user authentication (see message 212). The CM 28 verifies the first identity token 1 (see message 214) after which the CM 28 establishes a collaboration key with device 1, for example, by generating the collaboration key (see box 214), and sending the collaboration key to the device 1 (see message 218) and/or by another method as described herein, such as by one or more of receiving at least one of a public key and a digital certificate from the device 1, by generating at least one of a symmetric key and a public key as a collaboration credential and sending the collaboration credential to the device 1, and/or by mutually generating the collaboration key with the device 1. Verifying the first identity token 1 by the CM 28 may involve performing MAC or signature verification, or may require an explicit request to the IdM 26. The user 50 is now able to log into, and be authenticated to, the SP 52 via the device 1 (see box 220).
The devices 1 and 2 are paired (see message 222), as described with respect to FIG. 2, after which the device 1 generates a collaboration credential based on the collaboration key (see box 224), and sends the collaboration credential to the device 2 (see message 226). Next, a secure tunnel is established between the device 2 and the CM 28 (see message 228). The device 2 next requests, from the CM 28, the second identity token 2 based on the collaboration credential (see message 230). In response, the CM 28 verifies the collaboration credential (see box 232), and sends the request for the second identity token 2 to the IdM 26 (see message 234). In response to receiving the request from the CM, the IdM 26 issues the second identity token 2 (see box 236) and sends the second identity token 2 to the CM 28 (see message 238), which, in turn, sends the second identity token 2 to the device 2 (see message 240) for use in subsequently authenticating the user 50 of the device 2 to the SP 52. The same user 50 is now able to be logged into, and be authenticated to, the SP 52 via the device 2 (see box 242).
In a preferred embodiment, rather than having the device 2 request the second identity token 2 from the CM 28, the device 2 can directly request the identity token 2 from the IdM 26. Also, rather than having the IdM 26 send the second identity token 2 to the CM 28, the IdM 26 can directly send the second identity token 2 to the device 2. Further, in the preferred embodiment, the identity token is an OAuth token, and the collaboration credential is an OAuth Request with a grant type equal to a SAML assertion or a JWT assertion.
As described so far, the collaboration credential is the same for all the devices. It is also contemplated that different collaboration credentials could be used for different sets of the devices. For example, one collaboration credential can be used by the device 1 to enable SSO collaboration with other devices, and a separate collaboration credential can be used by device 2 to collaborate with other devices. Alternatively, one collaboration credential may be constrained to a specific application, a set of applications, a device type, a device assurance level, a collaborative network type (personal area network, vehicular area network, etc.), or to any other device, user, or network attribute.
Throughout this specification, the term “identity token” is used to refer to a syntactical structure that communicates information about the user 50. Types of information often communicated within an identity token include: a unique identifier for the user 50, a unique identifier of the server 30 which issued the identity token, an expiration time after which the identity token may no longer be used, the time at which the identity token was issued, and a primary authentication context reference specifying the time at which the user authenticated themselves in order to obtain the identity token and the method of authentication they used (passwords and RSA keys are two examples).
Identity tokens may also contain other relevant attributes about the user 50, such as his or her agency of employment, roles within his or her agency, special skills, or identifying facial attributes. This list is meant to be exemplary of a typical identity token, and non-binding, as many other attributes might be included as well. Identity tokens may be either digitally signed by the token issuer, or may alternatively require a secure connection between the consumer of the identity token (often referred to as the relying party, service provider, or resource server) and the identity token issuer.
Identity tokens are also known by other names within industry and standards. In the SAML 2.0 protocol, identity tokens may be referred to as SAML assertions, or simply, identity assertions. In OAuth, identity tokens are referred to as access tokens, and in OpenID Connect, identity tokens may be referred to as id_tokens. Other identity tokens are intended for usage strictly between the user and the token issuing server, and these are often referred to as session tokens. In OAuth, a refresh token could be thought of as but one example of a session token.
In the foregoing specification, specific embodiments have been described. However, one of ordinary skill in the art appreciates that various modifications and changes can be made without departing from the scope of the invention as set forth in the claims below. For example, although the TLS protocol has been described and illustrated herein, other cryptographic protocols, such as Internet Protocol Security (IPsec), Secure Sockets Layer (SSL), Secure Shell (SSH), and like cryptographic protocols that provide communication security over the Internet, could be employed. Accordingly, the specification and figures are to be regarded in an illustrative rather than a restrictive sense, and all such modifications are intended to be included within the scope of present teachings.
The benefits, advantages, solutions to problems, and any element(s) that may cause any benefit, advantage, or solution to occur or become more pronounced are not to be construed as a critical, required, or essential features or elements of any or all the claims. The invention is defined solely by the appended claims including any amendments made during the pendency of this application and all equivalents of those claims as issued.
Moreover in this document, relational terms such as first and second, top and bottom, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. The terms “comprises,” “comprising,” “has,” “having,” “includes,” “including,” “contains,” “containing,” or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises, has, includes, contains a list of elements does not include only those elements, but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. An element proceeded by “comprises . . . a,” “has . . . a,” “includes . . . a,” or “contains . . . a,” does not, without more constraints, preclude the existence of additional identical elements in the process, method, article, or apparatus that comprises, has, includes, or contains the element. The terms “a” and “an” are defined as one or more unless explicitly stated otherwise herein. The terms “substantially,” “essentially,” “approximately,” “about,” or any other version thereof, are defined as being close to as understood by one of ordinary skill in the art, and in one non-limiting embodiment the term is defined to be within 10%, in another embodiment within 5%, in another embodiment within 1%, and in another embodiment within 0.5%. The term “coupled” as used herein is defined as connected, although not necessarily directly and not necessarily mechanically. A device or structure that is “configured” in a certain way is configured in at least that way, but may also be configured in ways that are not listed.
It will be appreciated that some embodiments may be comprised of one or more generic or specialized processors (or “processing devices”) such as microprocessors, digital signal processors, customized processors, and field programmable gate arrays (FPGAs), and unique stored program instructions (including both software and firmware) that control the one or more processors to implement, in conjunction with certain non-processor circuits, some, most, or all of the functions of the method and/or apparatus described herein. Alternatively, some or all functions could be implemented by a state machine that has no stored program instructions, or in one or more application specific integrated circuits (ASICs), in which each function or some combinations of certain of the functions are implemented as custom logic. Of course, a combination of the two approaches could be used.
Moreover, an embodiment can be implemented as a computer-readable storage medium having computer readable code stored thereon for programming a computer (e.g., comprising a processor) to perform a method as described and claimed herein. Examples of such computer-readable storage mediums include, but are not limited to, a hard disk, a CD-ROM, an optical storage device, a magnetic storage device, a ROM (Read Only Memory), a PROM (Programmable Read Only Memory), an EPROM (Erasable Programmable Read Only Memory), an EEPROM (Electrically Erasable Programmable Read Only Memory) and a Flash memory. Further, it is expected that one of ordinary skill, notwithstanding possibly significant effort and many design choices motivated by, for example, available time, current technology, and economic considerations, when guided by the concepts and principles disclosed herein, will be readily capable of generating such software instructions and programs and ICs with minimal experimentation.
The Abstract of the Disclosure is provided to allow the reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in various embodiments for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus, the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separately claimed subject matter.

## Claims

1. An apparatus for enabling a user of a first mobile device to extend user authentication credentials to a second mobile device, the apparatus comprising:
a server having a processor that is configured to:
issue and send a first identity token to the first mobile device, wherein the first identity token can be utilized to authenticate the user of the first mobile device to a service provider;
establish a collaboration key with the first mobile device, wherein generation of the collaboration key is based on one or more of user authentication and receipt of a request, associated with the first identity token, for a collaboration key;
receive a collaboration credential from the second mobile device, wherein the collaboration credential is based on, the collaboration key;
verify the collaboration credential received from the second mobile device; and
in response to verifying the collaboration credential received from the second mobile device, issue and send a second identity token to the second mobile device, wherein the second identity token can be utilized to authenticate the user at second mobile device to the service provider;
the processor further is configured to receive, from the first mobile device a collaboration notification that identifies the first mobile device as a source of the collaboration credential and identifies the second mobile device as a recipient of the collaboration credential.

2. The apparatus of claim 1, wherein the processor is configured to establish a collaboration key by one or more of:
receiving at least one of a public key and a digital certificate from the first mobile device;
generating at least one of a symmetric key and a public key pair as the collaboration credential and sending the collaboration credential to the first mobile device; and
mutually generating the collaboration key with the first mobile device.

3. The apparatus of claim 1, wherein the collaboration key is configured as one of a symmetric key and a key pair.

4. The apparatus of claim 1, wherein the processor is configured to receive the request for a collaboration key from the first mobile device and wherein the processor is configured to generate the collaboration key in response to receiving the request.

5. The apparatus of claim 1, further comprising the first mobile device, wherein the first mobile device is configured to:
receive the first identity token and the collaboration key from the server;
generate the collaboration credential based on the collaboration key; and
send the collaboration credential to the second mobile device.

6. The apparatus of claim 5, wherein the first mobile device further is configured to configure the collaboration credential as a data structure comprising at least one of an identification of the user, an identification of the first mobile device, an identification of which of a plurality of mobile devices are permitted to collaborate with the first mobile device, and an identification of the conditions under which the collaboration is permitted to be conducted.

7. The apparatus of claim 5, further comprising the second mobile device, wherein the second mobile device is configured to:
receive the collaboration credential from the first mobile device;
send the collaboration credential to the server; and
in response to sending the collaboration credential, receive the second identity token.

8. The apparatus of claim 1, wherein the processor further is configured to receive the collaboration credential from a third mobile device and, in response to receiving the collaboration credential from the third mobile device, issue and send a third identity token to the third mobile device, wherein the third identity token can be utilized to authenticate the user of the third mobile device to the service provider.

9. The apparatus of claim 1, wherein the processor further is configured to configure each identity token as a data structure comprising at least one of an identification of the user and an identification of the mobile device to which the respective identity token is sent.

10. The apparatus of claim 1, wherein the server comprises an identity management server that is configured to issue each identity token, generate the collaboration key, and verify the collaboration credential.

11. The apparatus of claim 1, wherein the server comprises:
an identity management server that is configured to issue each identity token; and
a collaboration manager server that is configured to generate the collaboration key and verify the collaboration credential.

12. A method for enabling a user of a first mobile device to extend user authentication credentials to a second mobile device, the method comprising:
issuing and sending a first identity token to the first mobile device, wherein the first identity token can be utilized to authenticate the user of the first mobile device to a service provider;
establishing a collaboration key with the first mobile device, wherein generation of the collaboration key is based on one or more of user authentication and receipt of a request, associated with the first identity token, for a collaboration key and wherein the collaboration credential is sharable among a plurality of mobile devices;
receiving a collaboration credential from the second mobile device wherein the collaboration credential is different from, and is based on, the collaboration key;
verifying the collaboration credential received from the second mobile device; and
in response to verifying the collaboration credential received from the second mobile device, issuing and sending a second identity token to the second mobile device, wherein the second identity token can be utilized to authenticate the second mobile device to the service provider;
receiving a collaboration notification that identifies the first mobile device as a source of the collaboration credential and identifies the second mobile device as a recipient of the collaboration credential.

13. The method of claim 12, wherein establishing a collaboration key comprises one or more of:
receiving at least one of a public key and a digital certificate from the first mobile device;
generating at least one of a symmetric key and a public key pair as the collaboration credential and sending the collaboration credential to the first mobile device; and
mutually generating the collaboration key with the first mobile device.

14. The method of claim 12, wherein the collaboration key is configured as one of a symmetric key and a key pair.

15. The method of claim 12, wherein the method further comprises receiving a request for a collaboration key from the first mobile device and wherein generating the collaboration credential comprises generating the collaboration key in response to receiving the request.

16. The method of claim 12, further comprising:
receiving, by the first mobile device, the first identity token and the collaboration key from the server;
generating, by the first mobile device, the collaboration credential based on the collaboration key; and
sending, by the first mobile device, the collaboration credential to the second mobile device.

17. The method of claim 16, further comprising:
receiving, by the second mobile device, the collaboration credential from the first mobile device;
sending, by the second mobile device to the server, the collaboration credential; and
in response to sending the collaboration credential, receiving, by the second mobile device, the second identity token.

18. The method of claim 12, further comprising:
receiving the collaboration credential from a third mobile device; and
in response to receiving the collaboration credential from the third mobile device, issuing and sending a third identity token to the third mobile device, wherein the third identity token can be utilized to authenticate the user of the third mobile device to the service provider.

19. The method of claim 12, further comprising configuring the collaboration credential as a data structure comprising at least one of an identification of the user, an identification of the first mobile device, an identification of which of a plurality of mobile devices are permitted to collaborate with the first mobile device, and an identification of the conditions under which the collaboration is permitted to be conducted.

20. The method of claim 12, further comprising configuring each identity token as a data structure comprising at least one of an identification of the user and an identification of the mobile device to which the respective identity token is sent.

21. An apparatus for enabling single sign-on collaboration among a plurality of mobile devices, the apparatus comprising:
a mobile device comprising a processor that is configured to:
receive each of a first identity token and a collaboration key from a server, wherein the first identity token can be utilized to authenticate a user of the mobile device to a service provider;
generate a collaboration credential based on the collaboration key, wherein the collaboration credential is different from the collaboration key, is sharable among the plurality of mobile devices, and is configured to enable each mobile device of the plurality of mobile devices to obtain an identity token; and
send the collaboration credential to another mobile device;
wherein the processor further is configured to send a collaboration notification to the server, wherein the collaboration notification identifies the mobile device as a source of the collaboration credential and identifies the another mobile device as a recipient of the collaboration credential.

22. The apparatus of claim 21, wherein the collaboration key is configured as one of a symmetric key and a key pair.

23. The apparatus of claim 21, wherein the processor is configured to receive the collaboration key by sending a request for a collaboration key to the server, wherein the request is associated with the first identity token, and, in response to sending the request, receive the collaboration key.

24. The apparatus of claim 21, wherein the mobile device is a first mobile device and wherein the apparatus further comprises a second mobile device that is configured to:
receive the collaboration credential from the first mobile device;
send the collaboration credential to the server; and
in response to sending the collaboration credential, receive a second identity token from the server, wherein the second identity token can be utilized to authenticate the user of the second mobile device to the service provider.

25. A method for enabling single sign-on collaboration among a plurality of mobile devices, the method comprising:
receiving, by a mobile device of the plurality of mobile devices, each of a first identity token and a collaboration key from a server, wherein the first identity token can be utilized to authenticate a user of a mobile device to a service provider;
generating a collaboration credential based on the collaboration key, wherein the collaboration credential is different from the collaboration key, is sharable among the plurality of mobile devices, and is configured to enable each mobile device of the plurality of mobile devices to obtain an identity token; and
send the collaboration credential to another mobile device of the plurality of mobile devices;
sending a collaboration notification to the server, wherein the collaboration notification-identifies the mobile device as a source of the collaboration credential and identifies the another mobile device as a recipient of the collaboration credential.

26. The method of claim 25, wherein the collaboration key is configured as one of a symmetric key and a key pair.

27. The method of claim 25, wherein receiving the collaboration key comprises:
sending a request for a collaboration key to the server, wherein the request is associated with the first identity token; and
in response to sending the request, receiving the collaboration key.