Inter-application delegated authentication

US9654461B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9654461-B2
Application numberUS-201514699888-A
CountryUS
Kind codeB2
Filing dateApr 29, 2015
Priority dateApr 29, 2014
Publication dateMay 16, 2017
Grant dateMay 16, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Disclosed is a system for delegating authentication of an untrusted application executing on a client device. For delegated authentication, an untrusted application relies on a trusted application executing in the same environment for authentication purposes. The delegated authentication process avoids requiring the user of the untrusted application to provide authentication credentials. The disclosed system for delegating authentication enables any trusted application executing in the same computing environment to authenticate the untrusted application.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for authenticating an application executing on a client device, the method comprising: receiving an authentication request from a first application executing on a client device; identifying, at a server remote from the client device, a second application executing on the client device to which authentication of the first application is delegable, the second application being previously authenticated with credentials associated with the client device; transmitting an instruction to the first application to continue authentication via the second application; and authenticating the first application with the credentials associated with the client device based on the first application continuing authentication via the second application. 2. The method of claim 1 , wherein authenticating the first application comprises: receiving a verification request from the second application for authenticating the first application; and in response to receiving the verification request, transmitting an authentication token to the first application indicating that the first application is authenticated with the credentials associated with the client device. 3. The method of claim 1 , wherein the authentication request includes a unique parameter associated with the client device. 4. The method of claim 3 , wherein the unique parameter is a combination of one or more attributes of the client device selected from a group consisting of a screen size, a screen resolution, a volume setting, a list of applications executing on the client device, and carrier information. 5. The method of claim 3 , wherein identifying the second application comprises: accessing a device profile of the client device from a device profile store based on the unique parameter, the device profile including a list of applications that have previously been authenticated with the credentials associated with the client device; and selecting the second application from the list of applications. 6. The method of claim 5 , further comprising: receiving one or more events from the second application after the second application is authenticated, each event indicates an action associated with the application and a timestamp indicating when the action was taken; and selecting the second application from the list of applications based on the one or more events. 7. The method of claim 6 , wherein selecting the second application from the list of applications comprises determining, based on the timestamps included in the one or more events, that the second application is currently available to continue the authentication of the first application. 8. The method of claim 1 , wherein the instruction transmitted to the first application includes a cryptographic nonce, and further comprising storing the cryptographic nonce as a most-recently transmitted nonce in association with the authentication request. 9. The method of claim 2 , wherein the verification request received from the second application includes a hashed value generated from the cryptographic nonce. 10. The method of claim 9 , further comprising determining, prior to transmitting the authentication token, that the verification request is timely by comparing a locally generated value using the most-recently transmitted nonce matches the hashed value included in the verification request. 11. The method of claim 1 , wherein the verification request received from the second application is signed using a cryptographic key associated with the second application. 12. The method of claim 1 , wherein the second application executes on a second client device that shares the credentials associated with the client device. 13. A non-transitory computer readable storage medium storing instructions for authenticating an application executing on a client device, the instructions when executed by a processor causes the processor to: receive an authentication request from a first application executing on a client device; identify, at a server remote to the client device, a second application executing on the client device to which authentication of the first application is delegable, the second application being previously authenticated with credentials associated with the client device; transmit an instruction to the first application to continue authentication via the second application; and authenticate the first application with the credentials associated with the client device based on the first application continuing authentication via the second application. 14. The non-transitory computer readable storage medium of claim 13 , further comprising instructions that when executed causes the processor to: receive a verification request from the second application for authenticating the first application; and in response to receiving the verification request, transmit an authentication token to the first application indicating that the first application is authenticated with the credentials associated with the client device. 15. The non-transitory computer readable storage medium of claim 13 , wherein the instructions for the authentication request includes a unique parameter associated with the client device. 16. The non-transitory computer readable storage medium of claim 15 , wherein the unique parameter is a combination of one or more attributes of the client device selected from a group consisting of a screen size, a screen resolution, a volume setting, a list of applications executing on the client device, and carrier information. 17. The non-transitory computer readable storage medium of claim 15 , further comprising instructions that when executed causes the processor to: access a device profile of the client device from a device profile store based on the unique parameter, the device profile including a list of applications that have previously been authenticated with the credentials associated with the client device; and select the second application from the list of applications. 18. The non-transitory computer readable storage medium of claim 17 , further comprising instructions that when executed causes the processor to: receive one or more events from the second application after the second application is authenticated, each event indicates an action associated with the application and a timestamp indicating when the action was taken; and select the second application from the list of applications based on the one or more events. 19. The non-transitory computer readable storage medium of claim 18 , further comprising instructions that when executed causes the processor to determine, based on the timestamps included in the one or more events, that the second application is currently available to continue the authentication of the first application. 20. The non-transitory computer readable storage medium of claim 13 , wherein the instruction to transmit to the first application includes a cryptographic nonce, and further comprises instructions that when executed causes the processor to store the cryptographic nonce as a most-recently transmitted nonce in association with the authentication request. 21. A computer system, comprising: a computer processor; and an authentication module operating remotely from a client device and configured to execute on the computer processor to: receive an authentication request from a first application executing on the client device, identify a second application executing on the client device to which authentic

Assignees

Inventors

Classifications

  • providing single-sign-on or federations · CPC title

  • by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity · CPC title

  • G06F21/44Primary

    Program or device authentication · CPC title

  • using tickets, e.g. Kerberos (cryptographic mechanisms or cryptographic arrangements for entity authentication using tickets or tokens H04L9/3213) · CPC title

  • Entity profiles · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9654461B2 cover?
Disclosed is a system for delegating authentication of an untrusted application executing on a client device. For delegated authentication, an untrusted application relies on a trusted application executing in the same environment for authentication purposes. The delegated authentication process avoids requiring the user of the untrusted application to provide authentication credentials. The di…
Who is the assignee on this patent?
Twitter Inc
What technology area does this patent fall under?
Primary CPC classification H04L63/0815. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue May 16 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).