CN111917797B - 应用间委托的认证 - Google Patents

应用间委托的认证 Download PDF

Info

Publication number
CN111917797B
CN111917797B CN202010811584.6A CN202010811584A CN111917797B CN 111917797 B CN111917797 B CN 111917797B CN 202010811584 A CN202010811584 A CN 202010811584A CN 111917797 B CN111917797 B CN 111917797B
Authority
CN
China
Prior art keywords
application
authentication
authentication request
instruction
identifier
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN202010811584.6A
Other languages
English (en)
Other versions
CN111917797A (zh
Inventor
J·塞伯特
M·达克尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Twitter Inc
Original Assignee
Twitter Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Twitter Inc filed Critical Twitter Inc
Publication of CN111917797A publication Critical patent/CN111917797A/zh
Application granted granted Critical
Publication of CN111917797B publication Critical patent/CN111917797B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/40Security arrangements using identity modules
    • H04W12/43Security arrangements using identity modules using shared identity modules, e.g. SIM sharing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)
  • Telephone Function (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请的实施例涉及应用间委托的认证。公开了一种用于委托对执行在客户端设备上的非受信应用的认证的系统。对于委托的认证,非受信应用依赖于执行在相同环境中的用于认证目的的受信应用。委托的认证过程避免要求非受信应用的用户提供认证证书。用于委托认证的所公开的系统使得执行在相同计算环境中的任何受信应用能够对非受信应用进行认证。

Description

应用间委托的认证
分案申请说明
本申请是国际申请日为2015年4月29日、于2016年12月21日进入中国国家阶段、国家申请号为201580033649.6、名称为“应用间委托的认证”的中国发明专利申请的分案申请。
技术领域
本公开内容大体涉及在计算设备上的应用认证的领域。
背景技术
执行在设备上的应用参与认证过程,其中在认证实体与应用之间交换证书以便授权应用采取某些动作。关于常见认证过程的问题是要求设备的用户手动地提供证书以进行认证。这对于用户而言是繁琐且低效的并且要求用户维持针对执行在设备上的每个应用的证书。对该问题的解决方案使得设备上的特定应用可以用作认证看门者,使得其他应用可以依赖于用于认证目的的看门应用。然而,该解决方案要求设备的用户将该看门应用安装并维持在设备上。在一些情景中,安装看门应用对于用户而言不是期望的解决方案。
附图说明
所公开的实施例具有将从具体实施方式、随附权利要求和随附的图(或附图)中变得更加显而易见的优点和特征。下面是对各图的简单介绍。
图1图示了示例计算环境。
图2图示了用于执行在客户端设备上的非受信应用的委托的认证的事件踪迹。
图3图示了用于对执行在客户端设备上的应用进行认证的示例过程图。
图4是图示了可以从机器可读介质读取指令并在处理器(或控制器)中执行它们的示例机器的组件的框图。
具体实施方式
附图和下面的描述涉及仅仅通过说明的方式的实施例。应当指出,从下面的讨论中,本文公开的结构和方法的备选实施例将被容易地认为是在不背离要求保护的内容的原理的情况下可以采用的可行的备选方案。
配置概述
通过示例实施例的方式公开了一种用于委托对执行在客户端设备上的非受信应用的认证的机制。通过示例的方式,非受信应用可以是尚未利用与客户端设备相关联的一个或多个证书而被认证的应用。用于委托认证的机制可以被体现为一种系统、方法和/或计算机程序产品(例如,存储由一个或多个处理单元可执行的指令的计算机可读存储介质)。对于委托的认证,客户端设备上的非受信应用依赖于相同环境中的用于认证目的的先前认证的应用、受信应用。通过示例的方式,环境可以为计算设备,诸如移动设备、或者设备的汇集,诸如移动设备和物联网(IoT)设备。委托的认证过程避免要求非受信应用的用户提供认证证书或客户端设备的用于维持受信应用的列表以及相关联的认证证书的操作系统。与看门应用不同,委托认证机制使得任何受信应用并且不仅仅看门应用能够进行认证以对非受信应用进行认证。
在操作时,执行在客户端设备上的非受信应用请求由具有与客户端设备相关联的证书的身份服务器认证。直到非受信应用被认证,身份服务器才能够确认应用能够利用与客户端设备相关联的证书来被合法地认证。为了发起认证,非受信应用传输认证请求连同应用正在其上执行的客户端设备的唯一参数。唯一参数和与客户端设备相关联的证书相关。唯一参数可以是客户端设备的标识符,诸如电话号码或媒体访问控制(MAC)地址,或者客户端设备的一个或多个属性的表示,一个或多个属性诸如屏幕大小、屏幕分辨率、卷设置、执行在客户端设备上的应用的列表或载体信息。
基于唯一参数,身份服务器从数据存储库访问客户端设备的设备简档,其除了其他信息之外还包括也在客户端设备上的受信应用的列表。身份服务器信任从受信应用接收到的通信,因为通信被加密:在身份服务器与受信应用之间的该信任关系是本文中公开的委托的认证过程的基础。
具体地,身份服务器基于针对受信应用确定的活动的相关水平来选择这些受信应用之一。一旦选择了受信应用,身份服务器就指示该受信应用以经由所选择的受信应用继续认证过程。所选择的受信应用随后协同利用身份服务器对非受信应用的认证。由于受信应用先前已经被认证,所以身份服务器信任从代表非受信应用的受信应用接收到的认证请求。身份服务器由此利用与客户端设备相关联的证书来认证非受信应用认证。
下面的讨论更详细地描述了当对非受信应用进行认证时身份服务器、受信应用以及非受信应用的配置和操作。
示例计算环境
图1图示了示例计算环境100。如所示出的,计算环境100包括客户端设备110(0)-110(N)(统称为客户端设备110,并且单个地称为客户端设备110)、网络120、身份服务器130、设备简档存储库140、应用服务器150以及应用数据存储库160。
网络120可以包括使用有线通信系统和无线通信系统两者的局域网和/或广域网、互联网、一个或多个内联网的任何组合。在一个实施例中,被包括在计算环境100中的组件中的每个组件通过网络120与彼此进行通信。在备选实施例中,组件中的两个或更多个组件通过除了网络120之外的专用通信信道或联网的通信信道(未示出)进行通信。
客户端设备110是包括处理器、存储器、显示器、输入设备以及用于与外部实体进行通信的有线网络设备和/或无线网络设备的计算机。客户端设备110的示例可以为台式计算机、膝上型计算机、平板计算机、智能电话、物联网(IoT)设备以及包括计算功能和数据通信能力的任何其他设备。
每个客户端设备110包括操作系统或内核,诸如操作层116。操作层116是管理客户端设备110的硬件资源和软件资源的软件组件。在实施例中,操作层116还将常见服务提供给执行在客户端设备110上的其他软件应用。这些服务可以包括功率管理、网络管理、应用间通信等。
客户端设备110还包括包含执行在被包括在相应的客户端设备110中的处理器上的指令的软件应用,诸如应用T 111、应用U 112和应用V 113。执行在客户端设备110上的每个应用与唯一应用标识符相关联并且执行各种功能。这样的应用的示例可以为web浏览器、社交联网应用、消息传送应用、游戏应用和媒体消费应用。尽管客户端设备110中的每个客户端设备可以包括相似的应用,但是为了剩余的讨论将仅仅参考执行在客户端设备110(0)上的应用T 111和应用U 112。
每个应用T 111和应用U 112与认证引擎114的不同实例集成。认证引擎114提供使得应用能够执行认证相关的活动的操作的集合。在实施例中,操作身份服务器130的实体将认证引擎114提供给应用T 111和应用U 112的应用开发者。在备选实施例中,认证引擎114被提供为由操作层116提供的常见服务的部分。
认证引擎114提供促进委托的认证过程的至少三个操作。第一,认证引擎114实现与认证引擎114集成的应用与身份服务器130之间的双向通行。第二,认证引擎114使得非受信应用能够启动并且在本地与受信应用进行通信,受信应用即先前被身份服务器130认证的那些应用。第三,认证引擎114使得与认证引擎114集成的应用能够将与应用相关的事件传输到身份服务器130。事件指示由应用的用户采取的动作或与应用相关的任何其他动作以及指示动作何时发生的时间戳。这样的动作的示例包括启动应用、激活应用的特征、(例如,通过滚动或滑动)操纵应用的用户界面以及应用崩溃。
身份服务器130向执行在客户端设备110上的应用提供身份管理和认证服务。身份服务器130包括认证模块131和数据收集模块132。认证模块131从执行在客户端设备110上的非受信应用接收并处理认证请求。总体上,认证模块131通过依赖于执行在与非受信应用相同的设备上的受信应用来促进非受信应用的委托的认证。当非受信应用被认证时,认证模块131生成针对新的受信应用的认证令牌。认证令牌可以由应用用于与身份服务器130或应用服务器150的后续安全通信。
针对执行在客户端设备110上的受信应用中的每个受信应用,数据收集模块132经由相应的认证引擎114接收指示由应用的用户采取的动作或与应用相关的任何其他动作的事件。事件可以标识动作的类型、指示动作何时发生的时间戳、与动作相关联的任何日志(诸如分析或崩溃日志)以及与事件相关联的地理位置。数据收集模块132处理从客户端设备110接收到的事件以生成针对每个客户端设备110的综合设备简档。数据收集模块132将针对客户端设备110生成的设备简档存储在设备简档存储库140中。
针对客户端设备110的设备简档标识先前由认证模块131认证的一个或多个应用。具体地,针对给定客户端设备110,设备简档包括与客户端设备110相关联的唯一标识符以及与被包括在客户端设备110中的应用相关联的一个或多个应用简档。应用简档包括与应用相关联的唯一标识符、针对应用生成的认证令牌以及应用的使用历史。
总体上,应用的使用历史指示应用上的活动的水平。使用历史包括经由认证引擎114从应用接收到的事件中的每个事件。可选地,使用历史还包括根据接收到的事件而导出的度量。例如,数据收集模块132可以基于从应用接收到的事件的频率来生成频率度量。在另一示例中,数据收集模块132可以基于由用户在应用上采取的动作的类型以及那些动作的频率来生成参与度量。根据事件生成的用于确定在应用上的活动的水平的目的的其他类型的度量处于本文的范围内。
可选地,数据收集模块132从第三方源收集关于各种应用的附加的信息,各种应用包括执行在客户端设备110上的那些应用。该附加信息可以包括应用跨各种人口统计和地理区域的流行性的指示。附加信息还包括与开发应用的应用开发者相关的信息。
当对非受信应用进行认证时,认证模块131选择被包括在相同客户端设备110上的非受信应用的认证可以向其委托的受信应用。认证模块131基于与客户端设备110相关联的设备简档来选择受信应用。如果多于一个受信应用被包括在客户端设备110上,则认证模块131基于应用的使用历史以及由数据收集模块132收集的附加的信息来选择受信应用中的一个受信应用。在一个实施例中,认证模块131选择具有如指示受信应用仍然存在于客户端设备110上并且因此可用于继续认证过程的较高可能性的较高活动水平和/或与其他应用相关的较近活动的受信应用。
下面的讨论进一步描述应用T 111、受信应用以及应用U 112、非受信应用如何结合认证模块131进行操作以对应用U 112进行认证。
应用的委托的认证
图2图示了用于执行在客户端设备110上的应用U 112的委托的认证的事件踪迹。当应用U 112被初始化时,认证引擎114将初级认证请求传输201到身份服务器。当应用被首先安装在客户端设备110上或者在稍后时间当客户端设备110的用户启动应用时应用U112可以被启动。由应用U 112传输的初级认证请求包括应用正在其上执行的客户端设备110的唯一参数。唯一参数和与客户端设备110相关联的证书相关,使得唯一参数可以唯一地标识客户端设备110。唯一参数可以为客户端设备的标识符,诸如电话号码或媒体访问控制(MAC)地址,或者客户端设备的诸如屏幕大小和分辨率、卷设置、或载体信息的一个或多个属性的表示。
响应于接收到认证请求,认证模块131选择202执行在相同客户端设备110上的受信应用。具体地,认证模块131访问存储在设备简档存储库140中的客户端设备110的设备简档。如以上所讨论的,客户端设备110的设备简档指定执行在客户端设备110上的受信应用的列表以及针对那些应用中的每个应用确定的活动水平。在一个实施例中,认证模块131选择相对于其他应用具有仍然存在于客户端设备110上的较高可能性的受信应用。认证模块131可以基于相对于被包括在设备简档中的其他应用具有较高或较近活动水平的应用来确定应用仍然存在的可能性。
出于该示例讨论的目的,认证模块131选择客户端设备110上的应用T 111用于应用U 112的委托的认证。一旦选择了应用T 111,认证模块131就向应用U 112传输203(下面进一步描述的)加密随机数,例如随机数A,以及用以经由应用T 111继续进行认证过程的指令。随机数和指令经由认证引擎114被传输到应用U 112。
加密随机数是用于确保在一个或多个实体之间的通信的任意的(并且常常随机生成的)数。认证模块131维持在非受信应用的委托的认证过程期间被传输到受信应用的随机数的历史。当将请求传输到认证模块131时,受信应用和非受信应用基于最近接收到的随机数来生成非受信应用的应用标识符的散列。散列标识符被包括在请求中。在一个实施例中,认证引擎114被配置具有散列函数,该散列函数将应用标识符和随机数当作输入并且使用随机数作为散列键来生成应用标识符的散列作为输出。受信应用和非受信应用使用由认证引擎114提供的散列函数以生成散列标识符。
认证模块131将接收到的散列标识符与应用标识符的本地生成的散列进行比较。认证模块131基于最近传输的随机数来生成本地生成的散列。在一个实施例中,认证模块131被配置有散列函数,该散列函数具有将应用的应用标识符和最近传输的随机数当作输入并且使用随机数作为散列键来生成应用标识符的散列作为输出。这是本地生成的散列。如果接收到的散列标识符与应用标识符的本地生成的散列相匹配,则认证模块131确定接收到的请求有效并且不是重放攻击的结果。在备选实施例中,除了应用标识符的不同的标识符可以使用随机数来被散列。不同的标识符可以是被配置到认证引擎114中的标识符,该标识符也可用于认证模块131。可选地,来自应用的请求可以包括明文中的值以及使用最近接收到的随机数生成的散列值。作为响应,认证模块131使用最近传输的随机数来生成明文值的散列并且将经散列的明文值与被包括在请求中的散列值进行比较。
响应于接收到随机数A和用以经由应用T 111继续进行认证的指令,应用U 112经由认证引擎114将应用间认证请求传输到应用T111。在操作时,应用U 112使用由认证引擎114提供的操作启动204应用T 111。应用U 112还经由认证引擎114将从认证模块131接收到的随机数A传输到应用T 111。
如以上所讨论的,认证引擎114是将不同类型的功能提供给与认证引擎114集成的、诸如应用U 112和应用T 111的应用的SDK。由认证引擎114提供的一个功能是使与认证引擎114集成的应用启动并与也与认证引擎114集成的相同计算环境内的其他应用进行通信的能力。应用U 112使用认证引擎114的该功能来启动应用T 111并将从认证模块131接收到的随机数A传输到应用T 111。
应用T 111转而代表应用U 112将验证请求传输205到认证模块131。再次地,应用T111使用由认证引擎114提供的、允许与认证引擎114集成的应用与认证模块131进行双向通信的功能来传输验证请求。由应用T 111传输的验证请求包括与应用U 112相关联的应用标识符。可选地,为了指示验证请求的源,应用T 111使用随机数A对被包括在验证请求中的应用标识符进行散列并且使用应用T 111的私钥来对该请求进行签名。
在确定验证请求由执行在客户端设备110上的受信应用以及时的方式传输时,认证模块131对验证请求进行授权206。为了确定请求是否要由受信应用传输,认证模块131使用应用T 111的公钥来对所签名的验证请求进行解密。公钥被包括在存储在设备简档存储库140中的应用T 111的应用简档中。认证模块131还通过将被包括在验证请求中的(使用被传输到受信应用的随机数散列的)经散列的应用标识符与应用标识符的本地生成的散列进行比较来确定请求是否是及时的(例如,不是重放攻击)。如果这两个值匹配,则认证模块131确定请求是及时的。当请求从受信源被接收到并且及时时,认证模块131对验证请求进行授权。
一旦验证请求被授权,认证模块131就向应用T 111传输207加密随机数(例如,随机数B)和用以授权应用U 112继续认证过程的指令。经由认证引擎114将随机数和指令传输到应用T 111。应用T111转而将随机数B传输208到应用U 112以利用认证模块131继续进行认证过程。
响应于接收到随机数B,应用U 112将包括随机数B和与应用U112相关联的应用标识符的次级认证请求传输209到认证模块131。在一个实施例中,应用U 112使用随机数B来生成应用标识符的散列并且将经散列的应用标识符传输到认证模块131。
已经经由应用T 111对应用U 112的认证进行授权的认证模块131生成210针对应用U 112的访问令牌、公钥和私钥。认证模块131将访问令牌和密钥传输211到应用U 112,其现在为受信应用。认证模块131还更新与客户端设备110相关联的设备简档以指示应用U112为受信应用。
应用U 112使用认证令牌和密钥用于与身份服务器130以及要求应用被认证的任何第三方服务器的后续通信。在一个示例中,应用U112将认证令牌传输到应用服务器150。应用服务器150基于认证令牌来对应用U 112进行授权以访问存储在应用数据存储库160中的数据,该数据可以仅仅由应用U 112正在其上执行的客户端设备110相关联的证书访问。
在实施例中,以上描述的委托的认证过程实现跨应用的数据共享,因为应用是使用共同身份来被认证的,即与应用被安装在其上的设备相关联的证书。例如,应用服务器150可以允许访问使用共同身份来认证的任何应用的、存储在应用数据存储库160中的数据。结果,一个应用可以经由应用服务器150将数据存储在应用数据存储库160中,并且不同的应用可以经由应用服务器150访问数据。这样的数据包括照片、文档、音乐、配置等。
在一个实施例中,非受信应用和受信应用驻留在不同的客户端设备110上。在这样的实施例中,两个应用通过跨设备通信信道(诸如通过蓝牙或无线网络)进行通信,以继续委托的认证过程。在这样的实施例中为了进一步保护认证过程,受信应用可以在进行非受信应用的认证之前请求来自受信应用执行在其上的客户端设备的用户的确认。
图3图示了用于对执行在客户端设备(例如,客户端设备110)上的应用(例如,应用U 112)进行认证的示例过程图。其他实施例可以以不同的顺序执行图3中图示的过程的步骤,并且可以包括不同的、附加的和/或更少的步骤。过程可以由诸如认证模块131的任何适当的实体执行。
认证模块131从被安装在给定客户端设备110上的非受信应用接收301初级认证请求。认证请求包括客户端设备110的唯一参数以及与应用相关联的应用标识符。唯一参数可以为客户端设备的标识符,诸如电话号码或媒体访问控制(MAC)地址,或者客户端设备的诸如屏幕大小和分辨率、卷设置、或载体信息的两个或多个属性的表示。两个或多个属性的组合可以唯一地标识客户端设备。
响应于接收到认证请求,认证模块131选择302也被安装在相同的客户端设备110上的受信应用,例如应用T 111。具体地,认证模块131从由客户端设备110的设备简档指定的受信应用的列表中选择受信应用。认证模块131指示303非受信应用经由所选择的受信应用继续进行认证过程。具体地,如结合图2所讨论的,认证模块131向非受信应用传输加密随机数(例如,随机数A)以及用以使用所选择的受信应用继续进行认证过程的指令。经由认证引擎114将随机数和指令传输到非受信应用。
如所指示的,非受信应用(例如,应用U 112)经由所选择的受信应用(例如,应用T111)继续进行认证过程。具体地,如结合图2所讨论的,非受信应用使用由认证引擎114提供的功能启动受信应用并且将由认证模块131接收到的随机数传输到受信应用。
受信应用继续验证非受信应用正在请求对认证模块131的指令的认证。相应地,认证模块131从受信应用接收304验证请求。验证请求指示认证模块131非受信应用启动受信应用并且请求经由受信应用继续进行认证。验证请求使用受信应用的私钥来被签名,并且认证模块131通过使用受信应用的公钥对请求进行解密来确定验证请求的有效性。
当请求被确定为有效时,认证模块131将授权传输305到受信应用,该授权指示非受信应用可以利用与应用正在其上执行的客户端设备110相关联的证书被正当地认证。受信应用将授权传输到非受信应用。相应地,认证模块131从非受信应用接收306次级认证。作为响应,认证模块131将与应用相关联的认证令牌和加密密钥传输307到非受信应用,因此完成认证过程。
示例机器架构
图4是图示了能够诸如由客户端设备110的处理器、身份服务器130或应用服务器150从机器可读介质读取指令并且在处理器(或控制器)中执行它们的示例机器(或设备)的组件的框图。具体地,图4示出了以计算机系统400的示例形式的机器的图解表示。计算机系统400可以被用于执行用于使机器执行本文中例如参考图1-3描述的方法(或过程)中的任何一个或多个方法的指令424(例如,程序代码或软件)。在备选实施例中,机器操作为独立设备或连接到其他机器的连接(例如,联网的)设备。在联网的部署中,机器可以在服务器客户端网络环境中的服务器机器或客户端机器的容量中操作,或者操作为对等(或分布式)网络环境中的对等机器。
机器可以为服务器计算机、客户端计算机、个人计算机(PC)、平板PC、机顶盒(STB)、智能电话、物联网(IoT)设备、网络路由器、交换机或桥接器、或者能够执行指定要由该机器进行的动作的(顺序的或以其他方式的)指令424的任何机器。另外,尽管仅仅图示了单个机器,但是术语“机器”还应当被理解为包括单独地或联合地执行用于执行本文中讨论的方法中的任何一个或多个方法的指令424的机器的任何汇集。
示例计算机系统400包括一个或多个处理单元(一般为处理器402)。处理器402例如为中央处理单元(CPU)、图形处理单元(GPU)、数字信号处理器(DSP)、控制器、状态机、一个或多个专用集成电路(ASIC)、一个或多个射频集成电路(RFIC)或这些的任何组合。计算机系统400还包括主存储器404。计算机系统可以包括存储单元416。处理器402、存储器404和存储单元416经由总线408进行通信。
另外,计算机系统406可以包括静态存储器406、显示驱动器440(例如,以驱动等离子显示面板(PDP)、液晶显示器(LCD)或投影仪)。计算机系统400还可以包括字母数字输入设备442(例如,键盘)、光标控制设备414(例如,鼠标、跟踪球、操纵杆、运动传感器或其他指向仪器)、信号生成设备418(例如,扬声器)以及网络接口设备420,其还被配置为经由总线408进行通信。
存储单元416包括机器可读介质422,在其上存储了体现本文中描述的方法或功能中的任何一个或多个方法或功能的指令424(例如,软件)。指令424还可以在由计算机系统400对其的执行期间完全地或至少部分地驻留在主存储器404内或处理器402内(例如,处理器的缓存内),主存储器404和处理器402还包括机器可读介质。指令424可以经由网络接口设备420通过网络426传输或接收。
尽管机器可读介质422在示例实施例中被示出为单个介质,但是术语“机器可读介质”应当被理解为包括能够存储指令424的单个介质或多个介质(例如,集中式或分布式数据库,或相关联的缓存和服务器)。术语“机器可读介质”应被理解为包括能够存储用于由机器执行的指令424并且使机器执行本文中公开的方法中的任何一个或多个方法的任何介质。术语“机器可读介质”包括但不限于以固态存储器、光学介质和磁性介质的形式的数据仓库。
附加考虑
如所公开的委托的认证机制提供包括使得设备上的任何受信应用能够对非受信应用进行认证的益处和优点。因此,不要求客户端设备的用户安装用于认证目的的特定应用,因为任何受信应用被使得能够发挥该作用。另外,委托的认证机制允许不同的应用共享共同证书,其转而允许应用共享对共同证书可访问的数据。具体地,应用服务器可以允许访问使用共同证书认证的任何应用的、存储在应用数据存储库中的数据。结果,一个应用可以经由应用服务器将数据存储在应用数据存储库中,并且不同的应用可以经由应用服务器访问该数据。这样的数据包括照片、文档、音乐、配置等。
在本说明书中,复数实例可以将所描述的组件、操作或结构实现为单个实例。尽管一个或多个方法的个体操作被图示并描述为单独的操作,但是个体操作中的一个或多个操作可以被并发地执行,并且不要求按所图示的顺序来执行操作。在示例配置中被呈现为单独的组件的结构和功能可以被实现为组合的结构或组件。类似地,被呈现为单个组件的结构和功能可以被实现为单独的组件。这些和其他变型、修改、添加和改进落入本文中的主题的范围内。
例如如图1和图4所示,某些实施例在本文中被描述为包括逻辑或许多的组件、模块或机构。模块可以构成软件模块(例如,被体现在机器可读介质上的或传输信号中的代码)或硬件模块。硬件模块是能够执行某些操作的有形单元并且可以以特定方式来配置或布置。在示例实施例中,一个或多个计算机系统(例如,独立的、客户端或服务器计算机系统)或计算机系统的一个或多个硬件模块(例如,处理器或处理器的组)可以由软件(例如,应用或应用部分)配置为操作为执行如本文中所描述的某些操作的硬件模块。
在各种实施例中,硬件模块可以以机械方式或以电子方式来实现。例如,硬件模块可以包括被永久地配置为执行某些操作的专用电路或逻辑(例如,作为专用处理器,诸如现场可编程门阵列(FPGA)或专用集成电路(ASIC))。硬件模块还可以包括由软件临时配置为执行某些操作的可编程逻辑或电路(例如,如包含在通用处理器或其他可编程处理器内)。将认识到,用于以机械方式、在专用的且永久配置的电路中或在(例如,由软件配置的)临时配置的电路中实现硬件的决策可以由成本和时间考虑来驱动。
本文中描述的示例方法的各种操作可以至少部分地由临时配置或永久配置(例如,由软件)为执行相关操作的一个或多个处理器(例如,处理器402)执行。无论是临时配置的还是永久配置的,这样的处理器可以构成操作为执行一个或多个操作或功能的处理器实现的模块。在一些示例实施例中,在本文中引用的模块可以包括处理器实现的模块。
一个或多个处理器还可以操作为支持在“云计算”环境中对相关操作的执行或作为“软件即服务”(SaaS)。例如,操作中的至少一些操作可以由一组计算机(作为包括处理器的机器的示例)执行,这些操作经由网络(例如,互联网)并且经由一个或多个应用接口(例如,应用编程接口(API))可访问。
操作中的某些操作的执行可以被分布在不仅驻留在单个机器内而且跨许多机器而部署的一个或多个处理器之中。在一些示例实施例中,一个或多个处理器或处理器实现的模块可以位于单个地理位置中(例如,家庭环境、办公室环境、或服务器群内)。在其他示例实施例中,一个或多个处理器或处理器实现的模块可以跨许多地理位置而分布。
本说明书的一些部分以关于存储为机器存储器(例如,计算机存储器)内的位或二进制数字信号的数据的算法或操作的符号表示的形式呈现。这些算法或符号表示是由数据处理领域的普通技术人员用于将其工作的实质内容传达给其他领域技术人员的技术的示例。如本文中所使用的,“算法”是操作的自洽序列或导致期望的结果的相似的处理。在该上下文中,算法和操作涉及对物理量的物理操纵。
除非另行具体陈述,否则本文中使用诸如“处理”、“计算”、“运算”、“确定”、“呈现”、“显示”等的词语的讨论可以指代操纵或变换在一个或多个存储器(例如,易失性存储器、非易失性存储器或其组合)、寄存器或接收、存储、传输或显示信息的其他机器组件内被表示为物理的(例如,电子的、磁的或光学的)量的机器(例如,计算机)的动作或过程。
如本文中所使用的,对“一个实施例”或“实施例”的任何引用意味着结合实施例描述的特定元件、特征、结构或特性被包括在至少一个实施例中。在本说明书中的各个地方中出现的短语“在一个实施例中”不一定全部指代同一实施例。
如本文中所使用的,术语“包括”、“包含”、“含有”、“具有”或其任何其他变型旨在覆盖非排他性包含。例如,包括元件的列表的过程、方法、产品或装置不必限于仅仅那些元件而可以包括未明确列出的或这样的过程、方法、产品或装置固有的其他元件。另外,除非明确给出相反的陈述,否则“或者”指代包容性的或者而非排他性的或者。例如,条件A或B由以下的任何一项满足:A为真(或存在)并且B为假(或不存在),A为假(或不存在)并且B为真(或存在),并且A和B两者都为真(或存在)。
另外,对“一”或“一个”的使用被用于描述本文中的实施例的元件和组件。这仅仅出于方便来进行并且给出本发明的一般意义。本说明书应当被理解为包括一个或至少一个,并且单数还包括复数,除非其意指其他情况是明显的。
在阅读本公开内容时,本领域技术人员将通过本文中所公开的原理认识到针对用于委托对执行在客户端设备上的非受信应用的认证的系统和过程的另外的附加的结构和功能设计。因此,尽管已经说明并描述了特定实施例和应用,但是要理解所公开的实施例不限于本文中所公开的精确构造和组件。可以在不背离随附权利要求中限定的精神和范围的情况下在本文中所公开的方法和装置的布置、操作和细节中进行对于本领域技术人员而言将显而易见的各种修改、改变和变型。

Claims (27)

1.一种方法,包括:
在客户端设备处启动第一应用;
由所述第一应用使用认证引擎的第一实例将所述第一应用的初级认证请求传输到认证服务器,所述初级认证请求包括所述第一应用的应用标识符和所述客户端设备的设备标识符;
从所述认证服务器接收使用所述客户端设备上的特定第二应用继续认证的指令,所述指令包括第一加密随机数;
响应于所述指令,使用所述认证引擎的所述第一实例将应用间认证请求传输到所述第二应用;
由所述第二应用使用所述认证引擎的第二实例将验证请求传输到所述认证服务器;
从所述认证服务器接收授权所述第一应用的指令,所述指令包括第二加密随机数;
由所述第一应用使用所述第二加密随机数传输次级认证请求;以及
从所述认证服务器接收针对所述第一应用的访问令牌和密钥。
2.根据权利要求1所述的方法,其中所述初级认证请求包括使用来自所述认证服务器的最后接收到的加密随机数作为散列键的、所述第一应用的散列标识符。
3.根据权利要求2所述的方法,其中响应于基于所述散列标识符的所述初级认证请求的认证服务器验证,启动所述第二应用的指令被接收。
4.根据权利要求1所述的方法,其中所述应用间认证请求包括从所述认证服务器接收到的所述第一加密随机数。
5.根据权利要求1所述的方法,其中所述第二应用是先前由所述认证服务器认证的受信应用。
6.根据权利要求5所述的方法,其中与所述验证请求一起被传输的所述第一应用的所述标识符使用所述第一加密随机数被散列,并且所述验证请求使用所述第二应用的私钥被签名。
7.根据权利要求1所述的方法,其中响应于接收到授权所述第一应用的所述指令,所述第二应用使用由所述认证引擎的所述第二实例提供的应用间通信将所述第二加密随机数传输到所述第一应用。
8.根据权利要求7所述的方法,其中传输所述次级认证请求包括:使用所述第二加密随机数生成所述第一应用的所述应用标识符的散列,并且将所述散列包括在所述次级认证请求中。
9.根据权利要求7所述的方法,其中所述第一应用将所述访问令牌和所述密钥用于要求所述第一应用被认证的后续通信。
10.一种系统,包括具有一个或多个处理器和一个或多个计算机可读存储介质的一个或多个计算机,所述一个或多个计算机可读存储介质存储指令,所述指令在由所述一个或多个处理器执行时使所述一个或多个计算机执行操作,所述操作包括:
在客户端设备处启动第一应用;
由所述第一应用使用认证引擎的第一实例将所述第一应用的初级认证请求传输到认证服务器,所述初级认证请求包括所述第一应用的应用标识符和所述客户端设备的设备标识符;
从所述认证服务器接收使用所述客户端设备上的特定第二应用继续认证的指令,所述指令包括第一加密随机数;
响应于所述指令,使用所述认证引擎的所述第一实例将应用间认证请求传输到所述第二应用;
由所述第二应用使用所述认证引擎的第二实例将验证请求传输到所述认证服务器;
从所述认证服务器接收授权所述第一应用的指令,所述指令包括第二加密随机数;
由所述第一应用使用所述第二加密随机数传输次级认证请求;以及
从所述认证服务器接收针对所述第一应用的访问令牌和密钥。
11.根据权利要求10所述的系统,其中所述初级认证请求包括使用来自所述认证服务器的最后接收到的加密随机数作为散列键的、所述第一应用的散列标识符。
12.根据权利要求11所述的系统,其中响应于基于所述散列标识符的所述初级认证请求的认证服务器验证,启动所述第二应用的指令被接收。
13.根据权利要求10所述的系统,其中所述应用间认证请求包括从所述认证服务器接收到的所述第一加密随机数。
14.根据权利要求10所述的系统,其中所述第二应用是先前由所述认证服务器认证的受信应用。
15.根据权利要求14所述的系统,其中与所述验证请求一起被传输的所述第一应用的所述标识符使用所述第一加密随机数被散列,并且所述验证请求使用所述第二应用的私钥被签名。
16.根据权利要求10所述的系统,其中响应于接收到授权所述第一应用的所述指令,所述第二应用使用由所述认证引擎的所述第二实例提供的应用间通信将所述第二加密随机数传输到所述第一应用。
17.根据权利要求16所述的系统,其中传输所述次级认证请求包括:使用所述第二加密随机数生成所述第一应用的所述应用标识符的散列,并且将所述散列包括在所述次级认证请求中。
18.根据权利要求10所述的系统,其中所述第一应用将所述访问令牌和所述密钥用于要求所述第一应用被认证的后续通信。
19.一个或多个计算机可读存储介质,所述一个或多个计算机可读存储介质存储指令,所述指令在由一个或多个处理器执行时使所述一个或多个处理器执行操作,所述操作包括:
在客户端设备处启动第一应用;
由所述第一应用使用认证引擎的第一实例将所述第一应用的初级认证请求传输到认证服务器,所述初级认证请求包括所述第一应用的应用标识符和所述客户端设备的设备标识符;
从所述认证服务器接收使用所述客户端设备上的特定第二应用继续认证的指令,所述指令包括第一加密随机数;
响应于所述指令,使用所述认证引擎的所述第一实例将应用间认证请求传输到所述第二应用;
由所述第二应用使用所述认证引擎的第二实例将验证请求传输到所述认证服务器;
从所述认证服务器接收授权所述第一应用的指令,所述指令包括第二加密随机数;
由所述第一应用使用所述第二加密随机数传输次级认证请求;以及
从所述认证服务器接收针对所述第一应用的访问令牌和密钥。
20.根据权利要求19所述的计算机可读存储介质,其中所述初级认证请求包括使用来自所述认证服务器的最后接收到的加密随机数作为散列键的、所述第一应用的散列标识符。
21.根据权利要求20所述的计算机可读存储介质,其中响应于基于所述散列标识符的所述初级认证请求的认证服务器验证,启动所述第二应用的指令被接收。
22.根据权利要求19所述的计算机可读存储介质,其中所述应用间认证请求包括从所述认证服务器接收到的所述第一加密随机数。
23.根据权利要求19所述的计算机可读存储介质,其中所述第二应用是先前由所述认证服务器认证的受信应用。
24.根据权利要求23所述的计算机可读存储介质,其中与所述验证请求一起被传输的所述第一应用的所述标识符使用所述第一加密随机数被散列,并且所述验证请求使用所述第二应用的私钥被签名。
25.根据权利要求19所述的计算机可读存储介质,其中响应于接收到授权所述第一应用的所述指令,所述第二应用使用由所述认证引擎的所述第二实例提供的应用间通信将所述第二加密随机数传输到所述第一应用。
26.根据权利要求25所述的计算机可读存储介质,其中传输所述次级认证请求包括:使用所述第二加密随机数生成所述第一应用的所述应用标识符的散列,并且将所述散列包括在所述次级认证请求中。
27.根据权利要求19所述的计算机可读存储介质,其中所述第一应用将所述访问令牌和所述密钥用于要求所述第一应用被认证的后续通信。
CN202010811584.6A 2014-04-29 2015-04-29 应用间委托的认证 Expired - Fee Related CN111917797B (zh)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US201461986094P 2014-04-29 2014-04-29
US61/986,094 2014-04-29
US201461986815P 2014-04-30 2014-04-30
US61/986,815 2014-04-30
US201462067309P 2014-10-22 2014-10-22
US62/067,309 2014-10-22
CN201580033649.6A CN106537357B (zh) 2014-04-29 2015-04-29 应用间委托的认证
PCT/US2015/028319 WO2015168305A1 (en) 2014-04-29 2015-04-29 Inter-application delegated authentication

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201580033649.6A Division CN106537357B (zh) 2014-04-29 2015-04-29 应用间委托的认证

Publications (2)

Publication Number Publication Date
CN111917797A CN111917797A (zh) 2020-11-10
CN111917797B true CN111917797B (zh) 2022-11-25

Family

ID=54335877

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201580033649.6A Expired - Fee Related CN106537357B (zh) 2014-04-29 2015-04-29 应用间委托的认证
CN202010811584.6A Expired - Fee Related CN111917797B (zh) 2014-04-29 2015-04-29 应用间委托的认证

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201580033649.6A Expired - Fee Related CN106537357B (zh) 2014-04-29 2015-04-29 应用间委托的认证

Country Status (5)

Country Link
US (5) US9654461B2 (zh)
EP (1) EP3138011A4 (zh)
CN (2) CN106537357B (zh)
DE (1) DE202015009968U1 (zh)
WO (1) WO2015168305A1 (zh)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE202015009968U1 (de) 2014-04-29 2022-01-27 Twitter, Inc. Anwendungsübergreifende delegierte Authentifizierung
US9942229B2 (en) * 2014-10-03 2018-04-10 Gopro, Inc. Authenticating a limited input device via an authenticated application
CN106209730B (zh) * 2015-04-30 2020-03-10 华为技术有限公司 一种管理应用标识的方法及装置
US10282539B2 (en) * 2015-06-12 2019-05-07 AVAST Software s.r.o. Authentication and secure communication with application extensions
US9648007B1 (en) * 2015-06-17 2017-05-09 Amazon Technologies, Inc. Token-based storage service
US10284532B2 (en) * 2015-07-31 2019-05-07 Blackberry Limited Managing access to resources
US10425414B1 (en) * 2015-08-31 2019-09-24 United Services Automobile Association (Usaa) Security platform
US10263981B1 (en) * 2015-12-02 2019-04-16 United Services Automobile Association (Usaa) Public authentication systems and methods
KR102580301B1 (ko) * 2016-04-21 2023-09-20 삼성전자주식회사 보안 로그인 서비스를 수행하는 전자 장치 및 방법
US20180004931A1 (en) * 2016-07-02 2018-01-04 Intel Corporation Process management
US20180091490A1 (en) * 2016-09-23 2018-03-29 Apple Inc. Authentication framework for a client of a remote database
US10367813B2 (en) * 2016-09-30 2019-07-30 Mcafee, Llc Distributed authentication with thresholds in IoT devices
CN109284102B (zh) * 2017-07-21 2022-05-27 阿里巴巴集团控股有限公司 信息采集方法及装置
US10257232B2 (en) * 2017-09-13 2019-04-09 Malwarebytes Inc. Endpoint agent for enterprise security system
WO2019117889A1 (en) * 2017-12-13 2019-06-20 Google Llc Mechanism for achieving mutual identity verification via one-way application-device channels
US11153309B2 (en) 2018-03-13 2021-10-19 At&T Mobility Ii Llc Multifactor authentication for internet-of-things devices
WO2019178828A1 (zh) * 2018-03-23 2019-09-26 深圳市大疆创新科技有限公司 控制方法、设备及系统
US10897466B2 (en) * 2018-03-30 2021-01-19 Microsoft Technology Licensing, Llc System and method for externally-delegated access control and authorization
US10986169B2 (en) 2018-04-19 2021-04-20 Pinx, Inc. Systems, methods and media for a distributed social media network and system of record
US11481509B1 (en) 2018-07-10 2022-10-25 United Services Automobile Association (Usaa) Device management and security through a distributed ledger system
US11227041B2 (en) * 2018-08-24 2022-01-18 Baskaran Dharmarajan Identification service based authorization
US11329970B2 (en) * 2019-06-21 2022-05-10 Paypal, Inc. Sharing authentication between applications
GB2588107B (en) 2019-10-07 2022-11-02 British Telecomm Secure publish-subscribe communication methods and apparatus
US11770377B1 (en) * 2020-06-29 2023-09-26 Cyral Inc. Non-in line data monitoring and security services
CN114065140A (zh) * 2020-08-04 2022-02-18 富泰华工业(深圳)有限公司 软件程序验证方法、电子装置及存储介质
US11606357B2 (en) * 2020-12-10 2023-03-14 Google Llc Pervasive resource identification
US12021860B2 (en) * 2022-05-23 2024-06-25 Bank Of America Corporation Systems and methods for multi-stage, identity-based, digital authentication

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003081388A2 (en) * 2002-03-16 2003-10-02 Questerra, Llc Method, system, and program for an improved enterprise spatial system
CN103051451A (zh) * 2011-12-12 2013-04-17 微软公司 安全托管执行环境的加密认证
US8613070B1 (en) * 2012-10-12 2013-12-17 Citrix Systems, Inc. Single sign-on access in an orchestration framework for connected devices
US8615794B1 (en) * 2013-01-09 2013-12-24 Ping Identity Corporation Methods and apparatus for increased security in issuing tokens

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7457948B1 (en) * 2000-09-29 2008-11-25 Lucent Technologies Inc. Automated authentication handling system
US8185938B2 (en) * 2001-03-29 2012-05-22 International Business Machines Corporation Method and system for network single-sign-on using a public key certificate and an associated attribute certificate
US20020150253A1 (en) * 2001-04-12 2002-10-17 Brezak John E. Methods and arrangements for protecting information in forwarded authentication messages
DE10241273A1 (de) * 2002-09-06 2004-03-18 Degussa Ag Effiziente Mattierungsmittel basierend auf Fällungskieselsäuren
US7356697B2 (en) * 2003-06-20 2008-04-08 International Business Machines Corporation System and method for authentication to an application
EP1706963A4 (en) * 2003-11-02 2011-06-15 Yossy Sela MOBILE PHONE GATEWAY DEVICE, COMMUNICATION SYSTEM AND GATEWAY OPERATING SYSTEM
US8543814B2 (en) * 2005-01-12 2013-09-24 Rpx Corporation Method and apparatus for using generic authentication architecture procedures in personal computers
US8458775B2 (en) * 2006-08-11 2013-06-04 Microsoft Corporation Multiuser web service sign-in client side components
US8412930B2 (en) * 2008-10-09 2013-04-02 Microsoft Corporation Device authentication within deployable computing environment
US20100125894A1 (en) * 2008-11-19 2010-05-20 At&T Intellectual Property I, L.P. Systems, methods and computer program products that facilitate remote access of devices in a subscriber network
JP5381329B2 (ja) * 2009-05-26 2014-01-08 株式会社リコー 画像形成装置、認証システム、認証制御方法、及び認証制御プログラム
US8850554B2 (en) * 2010-02-17 2014-09-30 Nokia Corporation Method and apparatus for providing an authentication context-based session
US20120102326A1 (en) 2010-05-13 2012-04-26 Nikhil Sanjay Palekar Facilitating Secure Communications
US8949951B2 (en) * 2011-03-04 2015-02-03 Red Hat, Inc. Generating modular security delegates for applications
US9405896B2 (en) * 2011-04-12 2016-08-02 Salesforce.Com, Inc. Inter-application management of user credential data
WO2012140477A1 (en) 2011-04-15 2012-10-18 Nokia Corporation Method and apparatus for providing secret delegation
US9183361B2 (en) * 2011-09-12 2015-11-10 Microsoft Technology Licensing, Llc Resource access authorization
US9325683B2 (en) * 2012-06-18 2016-04-26 Infosys Limited Mobile application management framework
US8856887B2 (en) * 2012-07-09 2014-10-07 Ping Identity Corporation Methods and apparatus for delegated authentication token retrieval
US8745390B1 (en) * 2013-11-13 2014-06-03 Google Inc. Mutual authentication and key exchange for inter-application communication
IN2013CH05960A (zh) * 2013-12-20 2015-06-26 Samsung R & D Inst India Bangalore Private Ltd
US20150242609A1 (en) * 2014-02-24 2015-08-27 Google Inc. Universal Authenticator Across Web and Mobile
DE202015009968U1 (de) 2014-04-29 2022-01-27 Twitter, Inc. Anwendungsübergreifende delegierte Authentifizierung

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003081388A2 (en) * 2002-03-16 2003-10-02 Questerra, Llc Method, system, and program for an improved enterprise spatial system
CN103051451A (zh) * 2011-12-12 2013-04-17 微软公司 安全托管执行环境的加密认证
US8613070B1 (en) * 2012-10-12 2013-12-17 Citrix Systems, Inc. Single sign-on access in an orchestration framework for connected devices
US8615794B1 (en) * 2013-01-09 2013-12-24 Ping Identity Corporation Methods and apparatus for increased security in issuing tokens

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
利用SPKI委托证书实现分布式访问控制;蒋兴浩等;《电讯技术》;20020228(第01期);全文 *

Also Published As

Publication number Publication date
US9888000B2 (en) 2018-02-06
CN106537357A (zh) 2017-03-22
DE202015009968U1 (de) 2022-01-27
US20180375865A1 (en) 2018-12-27
CN106537357B (zh) 2020-09-04
US11025624B2 (en) 2021-06-01
US20200153829A1 (en) 2020-05-14
US10530774B2 (en) 2020-01-07
EP3138011A1 (en) 2017-03-08
US20210258309A1 (en) 2021-08-19
US9654461B2 (en) 2017-05-16
US20170223019A1 (en) 2017-08-03
US20150312256A1 (en) 2015-10-29
EP3138011A4 (en) 2017-10-18
CN111917797A (zh) 2020-11-10
US11539698B2 (en) 2022-12-27
WO2015168305A1 (en) 2015-11-05

Similar Documents

Publication Publication Date Title
US11539698B2 (en) Inter-application delegated authentication
CN112733107B (zh) 一种信息验证的方法、相关装置、设备以及存储介质
KR102451109B1 (ko) 디바이스 익명성을 제공하는 키 증명문 생성
EP3408987B1 (en) Local device authentication
CN109074449B (zh) 在安全飞地中灵活地供应证明密钥
CN109075976B (zh) 取决于密钥认证的证书发布
CN111324895B (zh) 用于客户端设备的信任服务
KR102369647B1 (ko) 두 장치 간의 신뢰 확립 기법
CN111737366B (zh) 区块链的隐私数据处理方法、装置、设备以及存储介质
CN112187803B (zh) 使用服务器的tpm的远程密码服务
US9521125B2 (en) Pseudonymous remote attestation utilizing a chain-of-trust
US11057368B2 (en) Issuing a certificate based on an identification of an application
US9419805B2 (en) Generating a CRL using a sub-system having resources separate from a main certificate authority sub-system
Zhang et al. TEO: Ephemeral ownership for iot devices to provide granular data control
Gu et al. Secure mobile cloud computing and security issues
CN112236772A (zh) 用于管理数据处理加速器的内存的方法和系统
CN111756675B (zh) 数据处理方法、装置、设备和系统
CN111708991A (zh) 服务的授权方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20221125