掌桥专利:专业的专利平台
掌桥专利
首页

提供经验证的用户身份声明

文献发布时间:2023-06-19 11:14:36


提供经验证的用户身份声明

本申请要求以下美国临时专利申请的优先权权益:2018年12月28日提交的标题为“Providing Verified Claims of User Identity”的美国临时专利申请No.62/786,309;2019年1月22日提交的标题为“Providing Verified Claims of User Identity”的美国临时专利申请No.62/795,528;2019年3月19日提交的标题为“Providing Verified Claimsof User Identity”的美国临时专利申请No.62/820,820;2019年3月24日提交的标题为“Providing Verified Claims of User Identity”的美国临时专利申请No.62/822,987;以及2019年3月24日提交的标题为“Providing Verified Claims of User Identity”的美国临时专利申请No.62/822,988;这些申请中的每一者的公开内容据此全文并入本文。

技术领域

本说明书整体涉及提供经验证的用户身份声明,包括提供用户可用来诸如向服务提供方确认其身份的经验证的用户身份声明。

背景技术

一些服务提供方可能需要身份和验证来注册用户。验证可由身份验证提供方执行。

附图说明

本主题技术的一些特征在所附权利要求书中被示出。然而,出于解释的目的,在以下附图中阐述了本主题技术的若干实施方案。

图1示出了根据一个或多个具体实施的用于登记和/或共享经验证的身份声明的示例性网络环境。

图2示出了可实现根据一个或多个具体实施的用于登记和/或共享经验证的身份声明的主题系统的示例性电子设备。

图3示出了根据一个或多个具体实施的用于登记和/或共享经验证的身份声明的示例性过程。

图4示出了根据一个或多个具体实施的用于登记经验证的身份声明的示例性用户界面。

图5示出了根据一个或多个具体实施的用于显示经验证的身份声明的信息的示例性用户界面。

图6示出了根据一个或多个具体实施的用于向服务提供方注册的示例性用户界面。

图7示出了根据一个或多个具体实施的在Merkle树中存储经验证声明的用户身份信息的示例。

图8示出了根据一个或多个具体实施的登记和共享经验证的身份声明的示例。

图9A至图9D示出了根据一个或多个具体实施的用于登记和/或共享经验证的身份声明的另一过程。

图10示出了根据一个或多个具体实施的用于使用经验证的声明来从服务提供方接收服务的示例性过程的流程图。

图11示出了根据一个或多个具体实施的用于为经验证的声明提供置信度评估的示例过程的流程图。

图12示出了根据一个或多个具体实施的用于基于包括在经验证的声明中的信息来向用户请求附加信息的示例性过程的流程图。

图13示出了根据一个或多个具体实施的用于基于经验证声明的响应矢量向设备提供服务的示例性过程的流程图。

图14示出了根据一个或多个具体实施的用于撤销经验证的声明的示例过程的流程图。

图15示出了根据一个或多个具体实施的可用以实现本主题技术的各个方面的示例性电子系统。

具体实施方式

下面示出的具体实施方式旨在作为本主题技术的各种配置的描述并且不旨在表示主题技术可被实践的唯一配置。附图被并入本文并且构成具体实施方式的一部分。具体实施方式包括具体的细节旨在提供对本主题技术的透彻理解。

然而,主题技术不限于本文所述的具体细节,并且可使用一个或多个其他具体实施来实践。在一个或多个具体实施中,以框图形式示出了结构和部件,以便避免使本主题技术的概念模糊。

用户可能希望使用其设备来充当用户的一种形式的数字身份。例如,如上所述,一些服务提供方需要身份和验证来注册用户。因此,这些服务提供方可能需要建立其自己的身份和验证过程(例如,基于访问其相应服务所需的验证级别)。此外,向多个服务提供方注册的用户可能必须经过多个冗余的身份和验证过程(例如,每个服务提供方一个),从而导致敏感用户数据的重复共享。

本主题系统允许用户获得充当用户的数字身份的经验证的身份声明,其包括用于识别用户的信息(例如,由用户提供并由一个或多个系统验证的信息),并且可在不同的服务提供方之间重复使用。因此,经验证的身份声明可对应于用户为了识别该用户而提供的信息已被一个或多个系统验证的声明。在一个或多个具体实施中,经验证的声明可被实现为数据结构(例如,JSON数据结构),该数据结构包括用于识别经验证声明的声明标头、以及包括该用户的识别信息的Merkle树。

用户的设备可基于身份验证提供方对包含在声明中的信息的验证来接收由可信身份声明验证系统签名的经验证的声明。可信身份声明验证系统可充当中间人,并且可(例如,在与身份验证提供方验证用户的身份之后)为在经签名的经验证声明中所指示的用户的身份提供置信度评估(例如,可担保)。经验证的声明可通过公私钥对的公钥对应于用户的设备的安全硬件部件而特定于用户的设备。公钥可作为经验证声明的一部分被包括。

在一个或多个具体实施中,当用户向特定服务提供方注册时,该服务提供方可向用户的设备请求经验证的声明(例如,其中该请求可包括将由用户的设备签名的随机数)。例如,用户的设备可用对应于包含在经验证声明中的公钥的私钥对该随机数签名,并且可向服务提供方提供经验证声明(例如,与经签名的随机数一起),以供服务提供方验证经验证的声明中所指示的用户的身份。由于用户的设备已经使用私钥(例如,私公钥对的私钥)对经验证的声明签名,所以服务提供方可使用经验证的声明中所包含的公钥来确认用户的设备持有对应的私钥。经验证声明的这种签名可对应于用户的设备确认经验证的声明特定于该设备。

此外,用户的设备可以已经从身份声明验证系统接收身份状态证明,证明经验证的声明有效并且还未被撤销。例如,身份声明验证系统可以已经对经验证的声明还未被撤销的证书进行了签名,从而进一步确认经验证的声明的有效性。

此外,本主题系统可为服务提供方提供评估数据(例如,结合经验证的声明),所述评估数据可被服务提供方用于确定是否接受用户所提交的经验证的声明,例如,用于向服务提供方注册。在一个示例中,基于本地存储在用户设备上的内容在用户设备上生成评估数据,其中该内容可用于确定设备的用户是否匹配包含在用户的经验证声明中的用户信息。例如,基于选择加入策略(例如,其中用户选择加入以允许在生成评估数据时使用本地存储的数据),用户的设备将经验证的声明中的用户信息字段与从用户设备上本地存储的数据(例如,从电子邮件、消息、社交网络内容等)导出的对应用户数据进行比较以生成评估数据。服务提供方可使用所得的评估数据(例如,置信度评估)来进一步分析用户所提交的经验证的声明,例如,以确定是否接受经验证的声明。

在另一示例中,可基于身份验证提供方所确定的经验证声明的用户信息数据字段的评估(例如,基于用户选择加入)来生成评估数据。身份验证提供方可通过将(例如,经声明验证系统签名的)经验证的声明中的字段与身份验证提供方可访问的值(例如,来自机构数据库、公共记录等)进行比较,来计算经验证的声明中所包括的数据字段(例如,名称、地址、电子邮件等)中每一者的得分。

在一个或多个具体实施中,评估数据的上述示例中的一者或多者可被表示为响应矢量,其中每个数据值指示经验证的声明中对应用户信息数据字段的准确可能性(和/或置信度得分)。因此,服务提供方可接收具有基于本地设备数据比较的得分的第一响应矢量、以及具有基于由身份验证提供方获得的信息的得分的第二响应矢量。这样,为服务提供方提供更离散的信息用于验证用户的识别信息(或服务提供方认为重要的用户识别信息的部分)。

在另一示例中,可基于与用户相关联的总体账户评估来确定评估数据,诸如基于用户已经具有的身份声明验证系统的现有账户(和/或身份声明验证系统可访问的账户)。例如,可确定用户支付(例如,基于过去的支付历史)的可能性和/或与用户的账户相关联的可归因于用户的欺诈活动的指示。该指示可在其确定是否注册用户中被提供给服务提供方。

在一个或多个具体实施中,本主题系统可聚合或三角测量不同的评估数据以生成用户的总体评估,诸如用户的聚合得分(例如,其中用户已选择加入此类提供得分)。聚合得分可连同用户的经验证声明被提供给服务提供方,以供服务提供方进一步分析。

在一些情况下,本主题系统提供撤销经验证的声明。例如,用户可能已登录其用户帐户(例如,经由分开的设备)以报告其设备丢失/被盗(例如,基于“找到我的电话”请求)和/或请求远程擦除其设备。另选地,用户可能已经本地请求移除其设备上的数据(例如,经由“擦除”命令)。在此类情况下,可能期望用户设备上的经验证声明不能够被第三方访问,诸如用于以欺诈方式(例如,被碰巧找到丢失的电话的另一用户)使用。因此,本主题系统提供撤销经验证的声明,使得例如设备(例如丢失的设备)上的经验证的声明可被撤销。撤销可使得经验证的信息(例如,经验证的声明和/或私钥)在用户的设备上被删除。撤销还可导致身份声明验证系统将经验证的声明添加到撤销列表。服务提供方可基于经验证的声明出现在撤销列表上以及客户端设备上经验证的声明和/或私钥的移除(这会使得设备不能用私钥对由服务提供方提供的随机数进行签名)而拒绝对设备的服务。

此外,在一些情况下,服务提供方可能需要附加的识别信息(例如,相对于由经验证的声明和评估数据提供的信息)以用于启用用户(基于服务提供方认为重要的用户的识别信息)。因此,服务提供方可向客户端设备的用户请求附加识别信息,诸如通过提示用户输入附加识别信息。

因此,本主题系统允许用户获得可在多个不同的服务提供方之间重复使用的经验证的身份声明,而不必针对每个服务提供方重复身份验证过程。尽管经验证的身份声明由主题系统(例如,在向身份验证提供方验证用户身份之后为用户身份提供置信度评估的可信身份声明验证系统)签名,但主题系统还可为服务提供方提供多种不同形式的可由服务提供方用来进一步验证用户身份的评估数据。如果服务提供方仍对用户的身份不确信,则服务提供方可提示用户提供附加的识别信息。最后,主题系统提供撤销系统,该撤销系统使得用户能够在任何时间撤销经验证的声明(例如,由用户、服务提供方和/或身份声明验证系统撤销)。

图1示出了根据一个或多个具体实施的用于登记和/或共享经验证的身份声明的示例性网络环境。然而,并非所有所描绘的部件均可在所有具体实施中使用,并且一个或多个具体实施可包括与图中所示的那些相比附加的或不同的部件。可进行这些部件的布置和类型的变化,而不脱离本文所列出的权利要求的实质或范围。可提供附加的部件、不同的部件或更少的部件。

网络环境100包括电子设备102a、102b、102c和102d(下文称为102a-102d)、网络104、身份验证提供方106a-106n、身份声明验证系统108以及服务提供方110a-110n。网络104可通信地(直接或间接地)耦接例如电子设备102a-102d、身份验证提供方106a-106n、身份声明验证系统108和服务提供方110a-110n中的任何两者或更多者。在一个或多个具体实施中,网络104可以是可包括互联网和/或可通信地耦接到互联网的设备的互连网络。出于解释的目的,网络环境100在图1中被图示为包括电子设备102a-102d、身份验证提供方106a-106n、身份声明验证系统108和服务提供方110a-110n;然而,网络环境100可包括任何数量的电子设备、身份验证提供方、身份声明验证系统和/或服务提供方。

电子设备102a-102d中的一者或多者可以是例如便携式计算设备诸如膝上型计算机、智能电话、智能扬声器、外围设备(例如,数字相机、耳机)、平板设备、可穿戴设备诸如智能手表、带、头戴式显示器等,或者包括例如一个或多个无线接口的任何其他适当设备,诸如WLAN无线电设备、蜂窝无线电设备、蓝牙无线电设备、Zigbee无线电设备、近场通信(NFC)无线电设备和/或其他无线无线电设备。在图1中,以举例的方式,电子设备102a被描绘为智能电话,电子设备102b被描绘为智能手表,电子设备102c被描述为膝上型计算机,并且电子设备102d被描绘为智能扬声器。电子设备102a-102d中的每个电子设备都可以是和/或可以包括下文相对于图2所论述的设备和/或下文相对于图15所论述的电子系统的全部或一部分。

身份验证提供方106a-106n、身份声明验证系统108和/或服务提供方110a-110n中的一者或多者可为和/或可包括下文结合图15所述的电子系统的全部或一部分。身份验证提供方106a-106n、身份声明验证系统108和/或服务提供方110a-110n中的一者或多者可包括一个或多个服务器,诸如服务器云。出于解释的目的,相对于各种操作示出并讨论了多个身份验证提供方106a-106n、单个身份声明验证系统108和多个服务提供方110a-110n。然而,本文所论述的这些操作和其他操作可由一个或多个服务器执行,并且每个不同的操作可由相同或不同的服务器来执行。

如本文所述,电子设备102a-102d中的一者或多者可从身份声明验证系统108获取相应的经验证的身份声明(例如,针对相同的用户账户和/或针对不同的用户账户),其具有用于识别用户的信息。经验证的声明可由相应的电子设备重复使用以向服务提供方110a-110n中的一者或多者启用。

基于身份验证提供方106a至106n中的一者或多者对经验证的声明中所包含的信息的验证,以及/或者身份声明验证系统108具有访问权限的附加评估数据,经验证的声明可由身份声明验证系统108签名。在一个或多个具体实施中,身份验证提供方106a-106n中的一者或多者可被配置为生成经验证的声明、对经验证的声明进行签名,以及将经验证的声明发送给身份声明验证系统108。继而,身份声明验证系统108可移除(由身份验证提供方106a至106n中相应一者签名的)签名,并重新签名经验证的声明,以用于发送回电子设备102a至102d中的一者或多者。

另选地或除此之外,身份验证提供方106a-106n中的一者或多者可以不被配置为生成经验证的声明,而是相反可以简单地发送(例如,由用户提供的)识别信息已被验证的指示。身份声明验证系统108可被配置为生成经验证的声明,对经验证的声明进行签名,并将经签名的经验证声明提供给电子设备102a至102n中的一者或多者。

图2示出了可实现根据一个或多个具体实施的用于登记和/或共享经验证的身份声明的主题系统的示例性电子设备。出于解释的目的,本文主要参考电子设备102a来描述图2。然而,图2可对应于图1的电子设备102a-102d中的任一个电子设备。然而,并非所有所描绘的部件均可在所有具体实施中使用,并且一个或多个具体实施可包括与图中所示的那些相比附加的或不同的部件。可进行这些部件的布置和类型的变化,而不脱离本文所列出的权利要求的实质或范围。可提供附加的部件、不同的部件或更少的部件。

电子设备102a可包括处理器202、存储器204、安全硬件部件206和通信接口208。处理器202可包括使得能够处理数据和/或控制电子设备102a的操作的适当逻辑部件、电路和/或代码。就这一点而言,处理器202可被启用以向电子设备102a的各个其他部件提供控制信号。处理器202也可控制电子设备102a的各部分之间的数据传输。另外,处理器202可使得能够实施操作系统或以其他方式执行代码以管理电子设备102a的操作。

存储器204可包括使得能够存储各种类型信息的适当逻辑部件、电路和/或代码,诸如所接收的数据、生成的数据、代码和/或配置信息。存储器204可包括例如随机存取存储器(RAM)、只读存储器(ROM)、闪存和/或磁性存储装置。

安全硬件部件206可被配置为安全地存储数据并且可包括其自己的存储器和/或操作系统。在一个或多个具体实施中,安全硬件部件206可对应于安全元件、安全区域处理器、安全处理器和/或安全执行环境。此外,安全硬件部件206的操作系统和/或执行环境可以是基于JAVA的操作系统和/或基于JAVA的执行环境,并且安全硬件部件206调配的一个或多个小程序实例可以是基于JAVA的小程序。在其他具体实施中,可以实现其他操作系统、语言和/或环境。除了所述一个或多个小程序实例之外,安全硬件部件206还可包括用于执行操作的一个或多个附加小程序,诸如安全小程序、注册表小程序等。

在一个或多个具体实施中,安全硬件部件206可被配置为存储公私钥对中的私钥,其中对应的公钥将经验证的声明绑定到电子设备102a(例如,使得公钥特定于电子设备102a)。另选地或除此之外,安全硬件部件206可具有用于加密存储在电子设备102a的存储器204中的数据的单独密钥(例如,参考密钥或主密钥)。因此,私钥可相反被存储在电子设备102a的存储器204中,其中私钥由安全硬件部件206中的参考密钥签名/备份。经由私钥对经验证的声明进行签名可对应于电子设备102a确认经验证的声明来自电子设备102a。因此,经验证的声明的使用特定于电子设备102a。如本文所述,安全硬件部件206可以是可选的。在一个或多个具体实施中,经验证的声明可通过硬件参考密钥(例如,公私钥对中基于设备硬件部件的公钥)、软件参考密钥(例如,基于设备软件部件的密钥)、硬件设备标识符和/或软件设备标识符中的一者或多者而特定于电子设备102a。

在一个或多个具体实施中,电子设备102a可实施安全邮箱机构,该安全邮箱机构提供安全硬件部件206和其他设备之间的通信。在安全邮箱机制中,其他设备可将消息传输到收件箱。安全硬件部件206可读取和解释消息,从而确定响应于该消息要采取的动作。来自安全硬件部件206的响应消息可通过发件箱传输,这也是安全邮箱机制的一部分。在一个或多个具体实施中,可以不允许从外部设备对安全硬件部件206的其他访问。

通信接口208可包括使得能够实现有线或无线通信的合适的逻辑部件、电路和/或代码,诸如通过网络104与电子设备102b-102d、身份验证提供方106a-106n、身份声明验证系统108和服务提供方110a-110n中任一者的有线或无线通信。通信接口208可包括例如蓝牙通信接口、蜂窝接口、NFC接口、Zigbee通信接口、WLAN通信接口、USB通信接口中的一种或多种,或一般地,任何通信接口。

在一个或多个具体实施中,处理器202、存储器204、安全硬件部件206、通信接口208和/或其一个或多个部分中的一者或多者可在软件(例如,子例程和代码)中实现,可在硬件(例如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、控制器、状态机、门控逻辑部件、分立硬件部件或任何其他合适的设备)中实现,和/或两者的组合。

图3示出了根据一个或多个具体实施的用于登记和/或共享经验证的身份声明的示例性过程。出于解释的目的,本文主要参考图1的电子设备102a、身份验证提供方106a、身份声明验证系统108和服务提供方110a来描述过程300。然而,过程300不限于图1的电子设备102a、身份验证提供方106a、身份声明验证系统108和服务提供方110a,并且过程300的一个或多个操作(或多个操作)可由一个或多个其他部件和其他合适的设备(例如,电子设备102a-102d、身份验证提供方106a-106n和/或服务提供方110a-110n中的任一者)执行。进一步出于说明的目的,过程300的操作在本文中被描述为顺序地或线性地发生。然而,过程300的多个操作可并行发生。此外,过程300的操作不必按所示顺序执行,和/或过程300的一个或多个操作不必被执行和/或可由其他操作替代。

过程300包括登记阶段(例如,操作302-310)和共享阶段(例如,操作312-330)。在登记阶段期间,电子设备102a登记经验证的身份声明,这与使经验证的身份声明生成、被签名并提供给电子设备102a相对应。在共享阶段期间,电子设备102a的用户可相对于向服务提供方110a注册/启用而使用经验证的声明。

对于登记阶段(例如,操作302至310),电子设备102a向身份声明验证系统108发送对经验证的声明的请求(302)。电子设备102a所提供的请求包括用于识别用户的信息(例如,用户已选择加入提供的个人可识别信息),并且特定于电子设备102a。例如,该请求可通过硬件参考密钥(例如,对应于由安全硬件部件206的参考密钥签名的公私钥对中的公钥)、软件参考密钥、硬件设备标识符和/或软件设备标识符中的一者或多者而特定于电子设备102a。在一个或多个具体实施中,包括在请求中的个人可识别信息由用户在电子设备102a处输入。

例如,电子设备102a的用户可通过选择在电子设备102a上显示的用户界面内所呈现的选项(例如,登记数字身份)来请求经验证的身份声明。该选项可由专门涉及登记和/或维护经验证的身份声明的应用程序显示,其中经验证的声明可用于注册和/或使用服务提供方110a(和/或其他服务提供方)提供的服务。另选地或除此之外,该选项可由对应于该服务的应用程序显示,其中用户对该选项的选择可将用户重定向到该应用程序以登记和/或维护经验证的身份声明。

在选择用于登记经验证声明的选项时,可以为用户提供用于提供用户信息以创建经验证声明的界面。就这一点而言,图4示出了根据一个或多个具体实施的用于数字身份验证的示例性用户界面400。如图4所示,用户界面400包括对应于个人可识别信息的多个输入字段402-412。该一个或多个字段可包括但不限于用户的:名称402、地址404、出生日期406、识别号408(例如,社会安全号码)、电话号码410和电子邮件地址412。在一个或多个具体实施中,经验证的声明可包括图像数据,诸如用户的识别图片(例如,从物理身份文档诸如驾照、护照、大学ID、场地通行证、滑雪通行证、工作ID等提取的)。

在填写字段402-412中的一者或多者时,用户可在选项414处选择“是”,并且通过点击提交按钮416来存储数字识别以供将来使用(例如,生成对经验证的身份声明的请求)。在用户点击提交按钮416之后,电子设备102a基于用户在字段402-412内提供的用户信息将对经验证的身份声明的请求发送给身份声明验证系统108。另选地,用户可通过点击取消按钮418来取消登记过程。

如上所述,对经验证的声明的请求也可特定于电子设备102a(例如,通过包括硬件参考密钥、软件参考密钥、硬件设备标识符和/或软件设备标识符)。例如,硬件/软件参考密钥和/或硬件/软件设备标识符可以是由电子设备生成的公私钥对中的公钥(例如,基于安全硬件部件206,并且由安全硬件部件206的参考密钥或主密钥签名)。例如,可至少部分地基于与安全硬件部件206相关联和/或存储在安全硬件部件206上的设备标识符(和/或其他信息)来生成公私钥对。对应的私钥可被安全地存储在电子设备102a上(例如,存储在安全硬件部件206或存储器204中)。此外,私钥可用于对随机数签名,如下文关于操作320所讨论的。

身份声明验证系统108向身份验证提供方106a发送请求,用于身份验证提供方106a验证由电子设备102a提供的用户信息(304)。例如,身份验证提供方106a可对应于可信服务(例如,系统、组织或机构),该可信服务在例如为服务提供方110a-110n提供用户认证服务的同时维护用户的身份信息。

因此,身份验证提供方106a验证由电子设备102a提供的用户信息。例如,身份验证提供方106a可诸如通过检查数据库(例如,组织和/或机构数据库)而确认用户信息(例如,名称402、地址404、出生日期406、识别号408、电话号码410和电子邮件地址412)对应于特定用户。在验证用户信息之后,身份验证提供方106a将验证的指示发送给身份声明验证系统108(306)。

在一个或多个具体实施中,验证的指示可对应于经验证的声明本身,其中识别验证提供方106a生成经验证的声明,对经验证的声明签名并将经验证的声明发送给身份声明验证系统108。另选地或除此之外,验证的指示可简单地对应于从识别提供方106a到身份声明验证系统108的关于识别用户的信息已被身份提供方106a验证(例如,用户输入信息诸如名称、地址、出生日期匹配和/或最近图像诸如自拍匹配存储在机构数据库中的对应用户信息)的消息/确认。

在一个或多个具体实施中,可使用多于一个身份提供方来验证用户信息。因此,身份声明验证系统108可向多个身份验证提供方发送相应的请求。多个身份验证提供方中的每一者可基于对相应数据库(例如,组织和/或机构数据库)的检查来验证用户提供的信息的字段。多个身份验证提供方中的每一者可将验证的指示发送给身份声明验证系统108。

响应于接收到该指示,身份声明验证系统108基于经验证的用户信息并且基于特定于电子设备102a(例如,通过硬件/软件参考密钥和/或硬件/软件设备标识符)而生成经验证的声明。身份声明验证系统108然后对经验证的声明签名(308)。在多个身份验证提供方验证了用户信息的情况下,经验证的声明可对应于复合声明。

因此,经验证的声明对应于用户的身份声明,其已由身份声明验证系统108签名,以指示用户信息已由至少一个身份验证提供方106a验证。经验证的声明进一步针对特定电子设备102a,诸如特定于电子设备102a的安全硬件部件206。身份声明验证系统108然后将经签名的经验证声明提供给电子设备102a(310)。

在一个或多个具体实施中,电子设备102a的用户可创建多个经验证的身份声明。例如,第一类型的经验证声明可对应于物理身份文档的数字版本,诸如驾照、护照等(例如,其可包括图像数据,诸如用户的识别图像)。第二类型的经验证声明可对应于一般数字证书,其存储基于经验证的用户信息识别用户的信息。第三类型的经验证声明可对应于尚未被身份提供方系统验证的用户信息,例如,如果用户希望与某些服务(例如,社交网络、博客)相关联地使用伪名称的话。另一类型的经验证声明可对应于工作(和/或学校)别名(或身份),而不是个人别名(或身份)。

在一个或多个具体实施中,电子设备102a的用户可请求查看经验证的身份声明。例如,用户可选择呈现在电子设备102a上所显示的用户界面内的选项,以查看与经验证的声明相关的信息和/或经验证的声明中所包含的信息。该选项可由涉及登记和/或维护经验证的身份声明的应用程序显示。

在选择该选项时,可向用户提供图5的用户界面500,该用户界面是可相对于数字身份(例如,个人身份、工作身份、社交网络身份等)显示的个人可识别信息的示例。在图5的示例中,用户界面500包括对应于经验证的声明的显示字段502-514。与经验证的声明相关联地显示的一个或多个字段可包括但不限于用户的:名称502、地址504、出生日期506、识别号508(例如,社会安全号码)、电话号码510和电子邮件地址512。

此外,显示字段514是指示身份验证提供方的名称(例如,如果经验证的声明是复合声明,则指示身份验证提供方106a和/或其他身份验证提供方)的字段(例如,可选字段)。显示字段514还显示密钥/标识符(例如,经验证的声明的硬件/软件参考密钥和/或硬件/软件标识符)、签名(例如,身份声明验证系统108提供的签名)和发放给字段(例如,其识别电子设备102a)的指示。

在一个或多个具体实施中,某些显示字段可简单地指示对应的用户信息已被“验证”(例如,由身份验证提供方106a验证),以遮蔽用户的私人信息不被显示和/或防止用户的私人(经验证)信息被传输给服务提供方。在图5的示例中,用户的出生日期508和识别号510被显示为经验证,而不是显示这些字段的实际值。与已“验证”的信息相比,实际信息的显示可至少部分地基于经验证的声明被实施为Merkle树,这将在下文中相对于图7更详细地讨论。通过使用Merkle树,电子设备102a和/或身份声明验证系统可选择性地确定提供经验证的声明的哪些字段供显示和/或将经验证的声明的哪些字段提供给服务提供方。

如上所述,操作312-330可对应于与注册和/或参与由服务提供方110a提供的服务相关联的共享阶段,其中电子设备102a可与服务提供方共享经验证的声明。

在操作312处,电子设备102a通过向身份声明验证系统108发送请求来注册共享(例如,经验证的声明)。例如,请求可包括具有签名的经验证的声明、以及用于与之共享经验证的声明的服务提供方(例如,110a)的指示。身份声明验证系统108将身份状态证明(例如,下文结合图9A至图9D所述)连同用于评估的令牌提供给电子设备102a(314)。例如,身份状态证明(例如,对应于由身份声明验证系统108签名的证书)可证明或以其他方式指示经验证的声明仍然有效(例如,尚未撤销)。此外,用于评估的令牌可与设备评估数据(例如,基于经验证的声明中的多个数据字段与本地存储在设备上的对应数据之间的比较)和/或总体账户评估数据(例如,基于经验证的声明中的多个数据字段的总体账户评估服务)相关。在一个或多个具体实施中,用于评估的令牌可对应于用于从服务提供方110a-110n中唯一地识别特定服务提供方(例如,服务提供方110a)的唯一标识符,如下文相对于操作324进一步所述。通过使用令牌,用户的设备评估数据和/或总体账户评估数据可与服务提供方110a共享(例如,并且不与其他服务提供方110a-110n共享),如下文相对于操作326所述。

电子设备102a发送对服务提供方110a提供的服务的请求(316)。存在多种类型的服务可由服务提供方提供。此类服务的示例包括但不限于:操作系统服务(例如,播客应用、即时消息应用、支付应用、健康应用、开发者应用、钱包应用)、第三方服务(例如,银行应用、旅行应用)、基于机构的服务(例如,旅行法规机构、执法机构)、社交网络服务(例如,博客、媒体、新闻)和/或一般性地任何服务。

因此,电子设备102a的用户可调用(例如,或者如果尚未下载应用,则下载和调用)电子设备102a上对应于相应服务的适当应用。另选地或除此之外,电子设备102a的用户可调用电子设备102a上的web浏览器,并导航到对应于相应服务的网站。

在一个或多个具体实施中,服务提供方110a可能需要身份和验证以注册/启用用户。在向用户提供服务之前,验证过程可要求用户提供识别用户的信息(例如,以经验证的声明的形式)。就这一点而言,图6示出了根据一个或多个具体实施的用于向服务提供方110a注册的示例性用户界面600。

在一个或多个具体实施中,用户界面600包括用于电子设备102a的用户注册服务的两个选项。基于服务提供方110a的要求,选项602通过要求用户用户手动输入用于识别用户的信息(例如,名称、地址、电话号码)来向服务注册用户。该过程可要求服务提供方110a向身份验证提供方106a单独验证所输入的信息,并且还要求用户向服务提供方提供私人/敏感数据(如果服务提供方经历数据泄露,则会随后暴露这些数据)。另一方面,选项604提供通过使用现有的经验证的身份声明来验证用户。

在用户选择选项602并点击提交按钮606的情况下,可为用户提供用于向服务提供方110a注册的界面或用于独立于服务提供方登记数字身份的界面,例如用户界面400。例如,该界面可要求用户输入识别用户的信息(例如,名称、地址、出生日期、电话)。在服务注册界面完成时,可基于用户所输入的识别信息为用户提供用于请求经验证的声明的选项。例如,这可能需要由服务提供方110a验证输入信息(或当向用户呈现数字身份登记用户界面400时由主题系统验证输入信息)。然后,用户可选择加入来作为服务的用户注册的一部分使经验证的身份声明生成。

在用户选择选项604并点击提交按钮606的情况下,可为用户提供列出可供用户使用的经验证的身份声明的界面。因此,用户可选择适当的身份声明以用于向服务提供方110a注册。如上所述,用户可能具有多个身份声明。例如,用户可具有已被验证(例如,被身份验证提供方106a验证)和签名(例如,被身份声明验证系统108签名)的一个或多个身份声明、和/或未被验证(例如,对应于用户的伪名称)的一个或多个身份声明。所列出的身份声明可显示一个或多个信息字段用于识别用户(例如,用户的名称、地址、电话号码),使得用户可为服务选择适当的身份声明。

因此,响应于接收到对服务的请求(316),服务提供方110a将对经验证的声明的请求发送给电子设备102a(318)。对经验证的声明的请求可包括随机数。在一个或多个具体实施中,随机数可对应于安全措施(例如,用于降低重放攻击的可能性)。例如,当使用数字签名来证明资产(例如,经验证的声明)的所有权时,可请求随机数来验证此类所有权。因此,为了证明声明的所有权,电子设备102a可用于请求随机数,并且电子设备102可(例如,使用私钥)对随机数签名,以便证明经验证的声明的所有权。

因此,在一个或多个具体实施中,由服务提供方110a提供给电子设备102a的随机数可用于确认经验证的声明特定于电子设备102a。电子设备102a利用例如由安全硬件部件206的参考密钥签名并存储在电子设备102a的安全硬件部件206或存储器204中的私钥对随机数进行签名(320)。经签名的随机数指示经验证的声明特定于电子设备102a(例如,而不是绑定到另一设备/特定于另一设备),因为与私钥对应的公钥被包括在经验证的声明中。然后,电子设备102a将经验证的声明连同经签名的随机数发送给服务提供方110a(322)。

如上文相对于操作314所述,电子设备102a可能已经接收到来自身份声明验证系统108的身份状态证明(例如,经验证的声明仍然有效并且未被撤销),以及用于评估数据的令牌。在一个或多个具体实施中,操作312-314可在电子设备102a已在操作320处对随机数签名之后发生。

在操作322之前或结合操作322,电子设备102a可将用于评估数据的令牌提供给服务提供方110a(例如,连同身份状态证明的指示)。服务提供方110a可评价与令牌相关联的评估数据和/或身份状态证明,以确定是否启用和/或提供服务给电子设备102a的用户。例如,在身份状态证明指示经验证的声明不再有效(例如,经验证的声明已被撤销)的情况下,服务提供方110a可拒绝服务。

此外,服务提供方110a可至少部分地基于经验证的声明的硬件/软件参考密钥和/或硬件/软件设备标识符(例如,公钥)和经签名的随机数(例如,以私钥签名,对应于经验证的声明特定于电子设备102a的确认)来验证经验证的声明。例如,服务提供方110a可使用包含在经验证的声明中的公钥来确认随机数已用对应的私钥签名(例如,指示经验证的声明特定于电子设备102a)。

操作324-326涉及身份声明验证系统108向服务提供方110a提供评估数据(例如,与由电子设备102a提供的令牌对应)。除了身份状态证明、经验证的声明(例如,如由电子设备102a证明)和经签名的随机数之外,评估数据向服务提供方110a提供进一步的信息以确定是否启用和/或提供服务给电子设备102a的用户。身份声明验证系统108所存储的评估数据可包括电子设备102a所提供的置信度评估、身份验证提供方106a至106n所提供的评估和/或总体账户评估系统所提供的评估(例如,下文参考图8和图9A至图9D所述)。

在一个或多个具体实施中,电子设备102a可被配置为基于经验证的声明中的多个数据字段与本地存储在电子设备102a上的对应数据之间的比较来确定经验证的声明的置信度评估。电子设备102a可具有本地存储并且对应于经验证的声明中的多个数据字段(例如,名称、电子邮件地址、地址、电话号码)的电子邮件内容、消息内容、社交网络内容或第三方应用程序内容。

例如,存储在电子设备102a上的电子邮件可指示用户的名称、电子邮件地址和/或电话号码中的一者或多者(例如,作为电子邮件签名块的一部分)。电子设备102a可被配置为从电子邮件中提取该数据以用于与经验证的身份声明中的多个字段进行比较。可从存储在电子设备102a上的消息内容、社交网络内容或第三方应用程序内容获取类似数据。电子设备102a可基于从本地存储的内容获取的对应数据来确定经验证的声明的数据字段的置信度评估。例如,电子设备102a可确定经验证的声明中的适当数据字段的相应置信度评估得分。

除了基于本地存储的个人可识别信息的置信度评估之外,置信度评估还可基于设备的传感器数据。例如,设备上的一个或多个传感器(例如,基于GPS的传感器、运动传感器、图像传感器)可用于检测设备随时间推移的移动。如果用户正在使用电子设备102a,则可预期移动的预定义阈值。如果设备传感器指示移动降至该阈值以下,则设备可能没有正在被用户使用(例如,而是以欺诈方式请求服务,诸如在数据中心运行的机器人/模拟)。在此类情况下,可能不希望向电子设备102a提供服务。

在一个或多个具体实施中,电子设备102a可在访问本地存储的内容和/或传感器数据以确定经验证的声明的置信度评估之前提示用户授权,并且/或者用户可选择加入参与。电子设备102a可向身份声明验证系统108提供置信度评估以用于发送给服务提供方110a。另选地或除此之外,电子设备102a可将置信度评估直接发送给服务提供方110a。例如,作为操作318的一部分,电子设备102a可将置信度评估与经签名的随机数和经验证的声明一起发送。

基于本地设备数据的评估可存储在第一响应矢量内。对于经验证的声明的一个或多个字段,第一响应矢量可指示置信度得分(例如,由电子设备102a确定),指示对应字段准确的可能性。

如上所述,身份验证提供方106a还可结合验证经验证的声明中的用户信息(例如,以第二响应矢量的形式)提供评估。对于经验证的声明的一个或多个字段,第二响应矢量可指示置信度得分(例如,由身份验证提供方106a确定),该置信度得分指示对应字段准确的可能性。因此,身份验证提供方106a可被配置为计算包括在经验证的声明中的数据字段(例如,名称、地址、电子邮件等)中每一者的得分。例如,身份验证提供方106a可将经验证的声明中的多个数据字段与身份验证提供方106a(例如,从机构数据库)能访问的值进行比较,并且基于比较来确定相应的得分。相应的得分可被包括在第二响应矢量中,该第二响应矢量可由身份验证提供方106a提供给身份声明验证系统108以用于发送给服务提供方110a。另选地或除此之外,身份验证提供方106a可将第二响应矢量直接发送给服务提供方110a。

此外,可基于与电子设备102a和/或用户相关的更大生态系统来确定总体账户评估。例如,总体账户评估可涉及以下各项中的一者或多者:用户支付(例如,基于过去支付历史)的可能性和/或可归因于用户的与用户的账户相关联的欺诈活动。

因此,服务提供方110a接收身份状态证明、具有将经验证的声明绑定到电子设备102a的经签名的随机数的经验证的声明(322)。服务提供方110a还可接收评估数据(326),例如,前提是用于评估数据的令牌对应于服务提供方110a。基于所接收的信息,服务提供方110a可确定是否向电子设备102a提供服务。这样,服务提供方110a可确定指示经验证的声明的多个数据字段准确的可能性的总体置信度得分(例如,基于上述评估中的一者或多者),并且如果总体置信度得分满足预定义阈值,则向电子设备提供服务。

在一个或多个具体实施中,服务提供方110a可能确定经验证的声明和/或评估数据不足以对于所请求的服务识别用户。例如,经验证的声明可包括根据第一响应矢量(例如,基于本地设备数据)、第二响应矢量(例如,来自身份验证提供方的机构数据)和/或总体账户评估不充分识别用户的字段。因此,服务提供方110a可向电子设备102a的用户提示输入附加信息以补充以经验证的声明提供的信息。用户可输入该补充信息并将其提供给服务提供方110a,以重新评价是否将服务提供给电子设备102a。

一旦服务提供方110a确定所提供的信息足够(例如,基于经验证的声明、经签名的随机数、评估和用户所输入的补充数据,如果有的话),服务提供方110a可认证电子设备102a(328)。在被认证之后,电子设备102a可参与由服务提供方110a提供的服务(330)。

在一个或多个具体实施中,在电子设备102a已被认证之后,服务提供方110a可向电子设备102a提供身份证书。电子设备102a可相对于与服务提供方110a的后续认证向服务提供方110a提供该身份证书(例如,从而避免必须向服务提供方110a重新发送经验证的声明和经签名的随机数)。这样,在向服务提供方110a发送身份证书之前,电子设备102a可要求用户经由生物特征识别(例如,设备上面部识别、指纹识别、虹膜识别、签名识别等)和/或用户密码输入进行认证。

在一个或多个具体实施中,经验证的声明可被撤销。例如,电子设备102a可被指示为被用户丢失(例如,使用用于识别丢失设备的单独服务)。另选地或除此之外,电子设备102a可呈现用户界面选项,该用户界面选项允许用户取消/撤销经验证的声明,作为专门涉及登记和/或维护经验证的身份声明的应用程序的一部分。应用程序还可包括用户界面选项用于显示经验证的声明的内容(例如,对应于用户界面500)和/或部分地撤销经验证的声明(例如,在用户选择经验证的声明的哪些数据字段要被撤销/删除的情况下)。

因此,撤销经验证的声明可基于电子设备102a丢失和/或用户明确请求(完全或部分地)撤销经验证的声明。因此,身份声明验证系统108可接收对撤销经验证的声明的请求(例如,来自“丢失的设备”服务和/或来自电子设备102a)。

响应于接收到撤销请求,身份声明验证系统108可向电子设备102a发送用于撤销经验证的声明的指令。用于撤销经验证的声明的指令可包括对电子设备102a删除经验证的声明本身(或经验证的声明的适当字段,如果撤销是部分的)的请求。因此,电子设备102a可能不再能够响应于服务提供方110a请求经验证的声明而提供经验证的声明。

另选地或除此之外,用于撤销经验证的声明的指令可包括对电子设备102a删除存储在电子设备102a上(例如,存储在安全硬件部件206或存储器204中)的私钥的请求。在没有私钥的情况下,电子设备不能将经签名的随机数正确地返回给服务提供方110a。因此,即使经验证的声明被提供给服务提供方110a,服务也将被拒绝,或者服务提供方110a将需要用户输入补充信息以便注册/使用服务。在一个或多个具体实施中,如果用户选择撤销经验证的声明的仅一部分,则可以不发生私钥的删除。相反,可以只是移除经验证的声明中的相应字段。

除了删除电子设备102a上与经验证的声明相关的内容之外,还可从身份声明验证系统108删除内容。该内容可包括但不限于经验证的声明的副本(例如,存储在身份声明验证系统108上的经验证的声明的经加密副本)和/或与经验证的声明相关的评估数据(例如,第一矢量和第二矢量、总体账户评估)。

此外,身份声明验证系统108可维护已被撤销的经验证的声明的列表(例如,跨多个设备和多个用户)。作为撤销过程的一部分,身份声明验证系统108可更新撤销列表,以包括针对其请求了撤销的经验证的声明。例如,响应于来自服务提供方110a的状态请求,可将经验证的声明的撤销中继给服务提供方110a。另选地或除此之外,对撤销列表的更新可从身份声明验证系统108发送给服务提供方110a-110n,使得服务提供方110a-110n可在相对于经验证的声明提供服务之前检查撤销列表。

在一个或多个具体实施中,身份验证提供方106a和/或服务提供方110a可被配置为在成功登记之后以经认证且安全的方式与电子设备102a通信(例如,经由消息收发)。然而,用于提供此类通信的一些方法可能暴露用户与身份验证提供方106a或服务提供方110a的平台身份。为了避免和/或减少显露平台身份,可在AP中生成椭圆曲线密码密钥对。使用Diffie-Hellman密钥交换(DH)和服务提供方110a的公钥,可生成高级加密标准(AES)密钥,消息可用安全硬件部件206中的私钥进行签名。因此,AES和椭圆曲线密码(ECC)密钥对可用于对电子设备102a和服务提供方110a之间的消息加密和签名。可以类似的方式提供电子设备102a与身份验证提供方106a之间的通信。

如上所述,经验证的声明可被实施成用于数据字段的选择性共享的Merkle树。图7示出了根据一个或多个具体实施的被实施成Merkle树的经验证的声明的示例。

如上所述,经验证的身份声明可包括用于识别用户的多个数据字段,诸如名字、姓氏、出生日期、识别号(例如,社会安全号码)等。然而,一些服务提供方可能不需要所有这些数据字段来为服务注册用户。因此,包括在经验证的声明中的信息对于一些服务提供方而言可能过度包容,从而不必要地将用户的私人/敏感数据的部分暴露给服务提供方。

在一个或多个具体实施中,Merkle树700存储经验证的声明的个人可识别信息。Merkle树700被配置成使得电子设备(例如,102a)可选择响应于来自服务提供方(例如,110a)的对用于识别用户的信息的请求发送多个字段中的哪些字段,并且相应地滤选经验证的声明。这样,仅所请求的信息被发送给服务提供方110a。

在图7的示例中,Merkle树700包括根节点702以及其他节点704-774。节点706、740和742表示用于访问相应子节点中的用户信息的组节点。例如,组节点706提供与用户手动输入的用户信息相对应的数据字段的选择。组节点706的可选子节点708-738包括但不限于用户的:名字716、地址的第一行720、州724、姓氏728、ID号730(例如,社会安全号码)、地址的第二行732、城市734、邮政编码736和国家738。

在另一示例中,组节点740可包括响应矢量信息。如上所述,对于经验证的声明的数据字段中的每个数据字段,响应矢量信息可包括指示该字段准确的可能性的置信度得分。Merkle树可基于本地设备数据和/或来自身份验证提供方的机构数据来说明分开的响应矢量。在一个或多个具体实施中,组节点740可具有用于选择相应置信度得分的子节点(未示出)。在一个或多个具体实施中,组节点742提供与从识别用户的文档(例如,驾照、护照、图书馆卡等)获得的用户信息相对应的数据字段的选择。组节点742的可选子节点744-774可包括档案响应752,对应于作为(例如,由身份验证提供方诸如发放识别文档的机构进行的)文档验证流程的输出的文档。此外,可选子节点可包括但不限于用户的:地址的第一行756、州760、名字764、姓氏766、地址的第二行768、城市770、邮政编码772和国家774。

如上所述,身份声明验证系统108可仅共享Merkle树700内数据字段的子集,例如,通过对Merkle树700的适当的分支和/或节点执行截除。另选地或除此之外,(例如,以Merkle树700的形式)存储经验证的声明的电子设备102a的用户可选择与服务提供方110a共享Merkle树700的哪些字段。用户可选择/取消选择共享哪些字段并保留正在共享的字段的密码属性。

图8示出了根据一个或多个具体实施的登记和共享经验证的身份声明的示例。出于解释的目的,本文主要参考电子设备102a、身份声明验证系统108、身份验证提供方106a-106n和总体账户评估服务器834来描述图8。然而,图8可对应于一个或多个其他部件和其他合适的设备。然而,并非所有所描绘的部件均可在所有具体实施中使用,并且一个或多个具体实施可包括与图中所示的那些相比附加的或不同的部件。可进行这些部件的布置和类型的变化,而不脱离本文所列出的权利要求的实质或范围。可提供附加的部件、不同的部件或更少的部件。

如图8所示,电子设备102a可利用经验证的声明注册和/或参与一个或多个服务826-832。机构服务826(例如,政府)的示例包括但不限于:旅行法规机构服务和/或执法机构服务。操作系统服务828(例如,其具有基于服务器的部件)的示例包括但不限于:播客应用、即时消息应用、支付应用、健康应用(例如,供用户在医院提供身份和/或查看个人健康记录)、开发者应用和/或钱包应用(例如,其经由操作系统提供扩展额度)。第三方服务830的示例包括但不限于:银行应用和/或旅行应用。社交网络服务832的示例包括但不限于:博客、媒体和/或新闻应用。

在一个或多个具体实施中,相对于注册不同服务(例如,服务826-832)可使用不同类型的经验证的声明。如上所述,电子设备102a可存储不同类型的经验证的声明。例如,不同类型的经验证的声明可对应于物理身份文档(例如,驾照、护照)的数字版本、存储已经验证的识别信息的一般数字证书和/或存储尚未验证的识别信息的数字证书(例如,对应于伪名称)中的一者或多者。如上所述,经验证的声明是关于用户为了识别该用户而提供的信息已被验证的声明(例如,基于身份验证提供方106a对声明中所包含的信息的验证,由身份声明验证系统108签名)。

在图8的示例中,操作801-804表示对应于物理身份文档的数字版本的经验证声明(例如,“经验证声明A”)。因此,在操作801处,身份声明验证系统108可提供工作流,其具有用户界面(例如,提示、数据字段等)用于用户提供个人信息。工作流还可指定任何生物特征认证要求(例如,设备上面部识别、指纹识别、虹膜识别、签名识别等)。在操作802处,电子设备102a可将物理ID的图像数据连同令牌提供给身份声明验证系统108。身份声明验证系统108可将该数据提供给适当的身份验证提供方106a至106n中的一者或多者,其可验证图像数据。例如,身份验证提供方106a(例如,对应于物理身份文档的发行者)可对印刷在物理身份文档上的信息执行光学字符识别,并将该信息与机构数据库中的信息进行比较。身份验证提供方106a还可基于图像数据认证ID上的已知安全特征(例如,水印、纹理、凹痕、全息图)。

在验证时,身份声明验证系统108可生成经验证的声明A并对其签名,并且在操作804处将经验证的声明A提供给电子设备102a。在操作818处,可将经验证的声明A(例如,对应于物理身份文档的数字版本)提供给一个或多个机构服务826(例如,旅行法规、执法)以证明用户身份。经验证的声明A可被实施成Merkle树,使得仅所请求的信息(例如,相应服务提供方所要求的信息)被发送给服务提供方。

又如,操作806-810表示经验证的声明(例如,“经验证的声明B”)对应于存储已被身份提供方106a-106n中的一者或多者验证的识别信息的一般数字证书。因此,在操作806处,身份声明验证系统108可提供工作流,具有用户界面(例如,提示、数据字段等)以供用户输入个人可识别信息和/或任何生物特征认证要求。用户可在电子设备102a处输入该信息,该电子设备继而在操作808处将用户信息(例如,其可包括图像、最近水电账单和/或其他验证文档的此类图像)发送给身份声明验证系统108。身份声明验证系统108可将该数据提供给适当的身份验证提供方106a-106n中的一者或多者,用于验证信息。

在验证时,身份声明验证系统108可生成经验证的声明B并对其签名,并且在操作810处将经验证的声明B提供给电子设备102a。在操作820处,可例如与注册相应服务(例如,播客、消息收发、支付、健康、开发者、钱包)中的一者或多者相关联地将经验证的声明B提供给操作系统服务828中的一者或多者。另选地或除此之外,在操作822处,可例如与注册相应服务(例如,银行、旅行)中的一者或多者相关联地将经验证的声明B提供给第三方服务830中的一者或多者。经验证的声明B可被实施成Merkle树,使得仅所请求的信息(例如,相应服务提供方所要求的信息)被发送给服务提供方。

在一个或多个具体实施中,经验证的声明B及其对应的工作流可考虑不同地区(例如,国家)之间的开发者关系。就这一点而言,身份提供方可以是国家特定的,使得合法地标别用户所需的信息可在不同国家之间变化。因此,如本文所述的经验证的声明的使用可有益于启用用户用于由不同国家和/或跨不同国家提供的服务,例如,相对于操作系统服务828。

此外,工作流可指定通信协议,通过该通信协议允许在电子设备102a和服务提供方110a之间传输经验证的声明。例如,相对于对应于服务提供方的销售点系统,工作流可指定允许近场通信(NFC)或QR码中的一者或多者用于向服务提供方110a提供经验证的声明。工作流可以是国家特定的,其中一些国家允许NFC并且不允许QR码用于经验证的声明,而其他国家不允许NFC并且允许QR码用于经验证的声明。

在另一示例中,操作812-816表示经验证的声明(例如,“经验证的声明C”)对应于存储尚未被身份提供方106a-106验证的识别信息的数字证书。因此,在操作812处,身份声明验证系统108可提供工作流,其具有用户界面(例如,提示、数据字段等)以供用户输入用户信息(例如,伪名称、电子邮件地址)和/或任何生物特征认证要求。用户可在电子设备102a处输入该信息,该电子设备继而在操作814处将信息发送给身份声明验证系统108。在一个或多个具体实施中,身份声明验证系统108可验证该信息对应于真实人员(例如,而不是机器人),而不使身份提供方106a至106n执行进一步验证。

在验证时,身份声明验证系统108可生成经验证的声明C,并且在操作816处将经验证的声明C提供给电子设备102a。在操作824处,可例如与注册相应服务(例如,博客、媒体、新闻)中的一者或多者相关联地将经验证的声明C提供给社交网络服务832中的一者或多者。经验证的声明C可被实施成Merkle树,使得仅所请求的信息(例如,相应服务提供方所要求的信息)被发送给服务提供方。

如图8所示,身份声明验证系统还可与总体账户评估服务器834通信。例如,总体账户评估服务器834可被配置为提供与对与电子设备102a相关联的用户账户的总体评估相关的评估。此外,总体账户评估可涉及身份验证提供方106a-106n可访问的机构数据。如本文所述,服务提供方(例如,对应于机构服务826、操作系统服务828、第三方服务830和/或社交网络服务832)可使用评估数据(例如,包括作为总体账户评估服务器834所提供的数据的总体账户评估和/或其他评估数据)来确定是否向电子设备102a提供服务。

因此,图8示出了具有多个经验证声明(例如,经验证的声明A至C)的用户的示例,所述经验证声明可存储在电子设备102a上并与不同类型的服务和/或用户账户相关联地使用。另选地或除此之外,多个用户可能在共享设备(例如,电子设备102a)上具有各自的经验证的声明。各自的经验证的声明中的每一者可特定于电子设备102a(例如,经由硬件/软件参考密钥和/或硬件/软件设备标识符)。在一个或多个具体实施中,可要求不同的用户经由生物特征识别(例如,设备上面部识别或指纹识别)和/或用户密码输入进行认证,以便访问和/或共享其各自的经验证声明(例如,其中生物特征识别和/或密码识别用于识别相应的经验证声明)。

图9A至图9D示出了根据一个或多个具体实施的用于登记和/或共享经验证的身份声明的另一过程。出于解释的目的,过程900(例如,跨图9A至图9D)在本文中主要参考应用程序902、身份声明验证客户端904、安全硬件部件206、设备置信度评估客户端906、身份声明验证系统108、设备置信度评估服务器908、总体账户评估服务器834、服务提供方110a和身份验证提供方106a来描述。然而,过程900不限于应用程序902、身份声明验证客户端904、身份声明验证系统108、设备置信度评估服务器908、总体账户评估服务器834、服务提供方110a和身份验证提供方106a,并且过程900的一个或多个操作(或多个操作)可由一个或多个其他部件和其他合适的设备执行。进一步出于解释的目的,过程900的操作在本文中被描述为顺序地或线性地发生。然而,过程900的多个操作可并行发生。此外,过程900的操作不必按所示顺序执行,和/或过程900的一个或多个操作不必被执行和/或可由其他操作替代。

在一个或多个具体实施中,应用程序902、身份声明验证客户端904和设备置信度评估客户端906可驻留在电子设备(例如,电子设备102a)上,例如,作为电子设备102a的操作系统的一部分。身份声明验证系统108可具有对应的客户端部件,例如身份声明验证客户端904。此外,设备置信度评估服务器908和总体账户评估服务器802可对应于分开的服务器。

在示例性过程900中,应用程序902与由服务提供方110a提供的服务一起使用。过程900可能应用于不同类型的服务,例如但不限于支付服务、操作系统服务、第三方服务、机构服务和/或社交网络服务。

如下文参考图9A至图9D所述,过程900可包括关于经验证的声明的一个或多个证明(例如,验证)。例如,第一证明可对应于安全硬件部件206的参考密钥(例如,主密钥)被用于生成私公钥对(例如,下文相对于操作4所述),其中对应的公钥由参考密钥签名并提供给身份声明验证系统108。此外,第二证明可对应于身份声明验证系统108基于公钥生成/签名用于经验证的声明的证书(例如,X-509证书),以证明电子设备102a来自特定制造商(例如,下文相对于操作14所述)。此外,第三证明可对应于身份声明验证系统108验证先前生成并签名的经验证的声明仍然有效(例如,还没有由于设备丢失或由于欺诈活动而被撤销)。就这一点而言,身份声明验证系统108可对另一证书签名,由此指示经验证的声明的当前有效状态(例如,下面关于操作33讨论的)。

转到图9A,操作1可在电子设备102a处的用户启动应用程序902之后发生。在操作1中,服务提供方110a为应用程序902提供对服务的初始访问,使得用户可提供用户信息以识别用户。

在操作2处,应用程序902向身份声明验证客户端904发送请求,以发起经验证的身份声明的生成。在操作3处,身份声明验证客户端904发送对创建公私钥对的请求,例如,其中对应的私钥将被存储在电子设备102a上(例如,在安全硬件部件206上或存储器204中)。如上所述,安全硬件部件206在一个或多个具体实施中可以是可选的。例如,经验证的声明可能以各种方式特定于电子设备102a。例如,可使用标引设备的硬件参考密钥、标引设备的软件参考密钥、硬件设备标识符和/或软件设备标识符。

在图9A的示例中,在操作4处,安全硬件部件206可使用硬件特定的参考密钥来生成私公钥对,用参考密钥对对应的公钥签名并呈现给可发布数字证书的服务器(108或任何其他此类服务)。如上所述,安全硬件部件206所进行的此类签名可对应于第一证明,其证明证书和/或返回的密钥对是在电子设备102a上生成的并且特定于该设备。

在操作5处,身份声明验证客户端904向身份声明验证系统108发送对用于经验证的声明的工作流的请求。如上所述,工作流可为指定供用户提供个人可识别信息的用户界面(例如,提示、数据字段等)以及用于向服务启用用户的任何生物特征认证要求和/或其他指令的服务。

在一个或多个具体实施中,工作流可特定于服务提供方(例如,服务提供方110a),使得不同的服务提供方具有不同的工作流用于启用用户。因此,身份声明验证系统108可被配置为存储来自不同服务提供方的不同工作流,更新所存储的工作流和/或可(例如,向相应的服务提供方)请求工作流。

在操作6处,身份声明验证系统108向设备置信度评估服务器908请求用于评估经验证的声明的评估简档。

设备置信度评估服务器908生成用于评估经验证的声明的评估简档。例如,评估简档可指示将经验证的声明的信息与设备上的信息进行比较(例如,设备置信度评估)。

在一个或多个具体实施中,评估简档可用于估计用户的个人可识别信息相对于提供不同服务提供方的服务是否足够。例如,第一类型的服务提供可仅需要最少的识别信息(例如,名称和电话号码)以便启用用户,而第二类型的服务提供可具有更严格的要求(例如,附加的识别信息,诸如照片、识别号、地址等)。评估简档可用于确定不同服务提供方的不同要求和/或将那些要求与不同用户的识别信息进行比较。

在一个或多个具体实施中,评估简档可被实施成由服务器(例如,身份声明验证系统108)生成并提供给设备(例如,电子设备102a)的模型(例如,机器学习模型、神经网络等)。例如,模型可(例如,在服务器上)已利用用户信息的不同数据集跨不同类型的服务提供方训练过,以便确定特定用户的识别信息是否足以启用用户用于特定服务。因此,模型可被本地存储在设备上(例如,在存储器204中)并且被配置为输出对应于用户的识别信息的不同数据字段的得分(例如,置信度得分)。因此,在操作7处,设备置信度评估服务器908向身份声明验证客户端904提供评估简档。

在操作8处,将工作流和评估简档传送给身份声明验证客户端904和/或应用程序902。用户在操作9处输入与创建经验证的声明相关联的用户信息(例如,通过输入值或预填充值)。例如,用户可为图4的用户界面400中所示的数据字段提供输入。在操作10处,应用程序302请求身份声明验证客户端904执行字段值的验证。

转到图9B,在操作11-12处,身份声明验证客户端904基于与安全硬件部件206相关联的公私钥对请求并接收(例如,从安全硬件部件206)签名。(例如,其中公私钥对是基于安全硬件部件206的参考密钥生成的)。在操作13处,身份声明验证客户端904向身份声明验证系统108请求身份证实(例如,针对工作流数据)。例如,身份证实可对应于上文相对于图3所述的登记阶段。

在操作14处,身份声明验证系统108验证公私钥以及与电子设备102a相关联的其他标识符信息(例如,密钥对)。如上所述,操作14可对应于第二证明,其中身份声明验证系统108对(例如,与第一证明相关联的先前由电子设备102a的安全硬件部件的参考密钥签名的)对应的公钥签名。身份声明验证系统108对公钥的签名可对应于电子设备102a是被配置用于经验证的声明的有效类型的设备(例如,电子设备102是来自特定和/或可信制造商的设备,但不特别识别电子设备102)的证明。身份声明验证系统108可在经签名的身份证书中包括公钥(例如,关于操作17讨论的)。

在操作15处,身份客户端验证系统108向身份验证提供方106a发送对验证用户信息(例如,用户输入的字段值)的请求。在操作16处,身份验证提供方106a提供对用户信息的验证。例如,用户信息的验证可对应于经验证的用户身份声明。

操作17涉及身份声明验证系统108例如基于身份验证提供方106a对信息的验证而生成并签名经验证的声明。如上所述,经验证的声明可包括用于识别经验证的声明的声明标头、以及包括用户的识别信息的Merkle树。经验证的声明可对应于数据blob(例如,包含Merkle树形式的用户的识别信息),并且身份声明验证系统108可进一步签名和返回身份证书(例如,x509证书)。身份证书可包括公钥(例如,相对于操作14签名的公钥)。这样,在电子设备102a的安全硬件部件206内生成的公钥可被包括,作为由身份声明验证系统108发布的证书的一部分。

因此,身份声明验证系统108可向包括用于识别用户的信息的经验证的声明提供关于电子设备是有效类型的设备的证明(例如,第二证明),其中用于识别用户的信息已被身份验证提供方106a验证。

在一个或多个具体实施中,身份声明验证系统108可将经验证的声明存储在加密容器中,并且在操作18处将经验证的声明发送给电子设备102a的身份声明验证客户端904。在操作19-20处,身份声明验证客户端904本地地解密经验证的声明并将其存储在存储器中(例如,存储器204中)。在操作21处,身份声明验证客户端904向应用程序902发送身份验证完成(例如,对应于登记阶段的完成)的指示。

转到图9C,操作22-31涉及注册共享(例如,经验证的声明)、以及计算和存储关于经验证的声明的评估。如上所述,评估可涉及经验证的声明中所包括的用户信息与对应于用户信息的本地设备内容的比较。就这一点而言,设备置信度评估客户端906和设备置信度评估服务器908对应于与存储在设备上的数据相关的置信度评估。此外,评估可涉及对用户账户的总体评估(例如,对应于总体账户评估服务器834)。此外,评估可涉及身份验证提供方106a-106n可访问的机构数据。

在操作22处,应用程序902与身份声明验证客户端904共享验证结果。在操作23处,身份声明验证客户端904向设备置信度评估客户端906请求设备评估数据。例如,身份声明验证客户端904可与设备置信度评估客户端906关于(例如,基于训练信号)可如何将包括在经验证的声明中的用户信息与存储在电子设备102a上的对应信息进行比较进行通信。

如上所述,评估简档(例如,参见操作6)可对应于针对不同服务提供方跨多个用户利用数据集训练的模型。就这一点而言,训练信号可对应于为了更新和/或重新训练服务器生成的模型(例如,对应于评估简档)而由电子设备102a提供给服务器(例如,身份声明验证系统108)的数据。因此,可基于众包以及连续地训练模型。在一个或多个具体实施中,可周期性地和/或在电子设备102a请求评估简档(例如,结合操作6)时将模型提供给电子设备102a。此外,训练信号可由电子设备102a结合用户选择加入提供此类训练信号而提供给服务器。

在操作24处,设备置信度评估客户端906将设备评估数据返回给身份验证客户端904,身份验证客户端904继而在操作25处将设备评估数据发送给设备置信度评估服务器908。设备置信度评估服务器908可在操作26处评价设备评估数据。

在操作27处,身份声明验证客户端904通过向身份声明验证系统108发送请求来注册共享。例如,如上所述,请求可包括具有签名的经验证的声明、以及用于与之共享经验证的声明的服务提供方(例如,110a)的指示。在操作28处,身份声明验证系统108可验证客户端的信息(例如,经签名的密钥对)。

在操作29-30处,身份声明验证系统108从设备置信度评估服务器908请求并获取设备评估数据(例如,对应于与设备数据的比较)。在操作31-32处,身份声明验证系统108从总体账户评估服务器834请求并获取总体账户评估(例如,对应于总体用户账户声誉)。设备评估数据和总体评估数据可由身份声明验证系统108存储,用于提供给服务提供方110a。

如上所述,第三类型的证明可对应于身份状态证明,其中身份声明验证系统108验证经验证的声明仍然有效(例如,还没有由于设备丢失或由于欺诈活动而被撤销)。例如,身份声明验证系统108可对另一证书签名以指示经验证的声明的当前有效状态。因此,在操作33处,身份声明验证系统108可将身份状态证明(例如,第三证明)连同用于评估的令牌提供给电子设备102a(314)。用于评估的令牌可与设备评估数据和/或总体账户评估数据相关。如上所述,令牌可对应于用于从服务提供方110a-110n中唯一地识别特定服务提供方(例如,服务提供方110a)的唯一标识符。

转到图9D,操作34-45涉及与服务提供方110a请求来自电子设备102a的经验证的声明和来自身份声明验证系统108的评估数据相关联地,服务提供方110a提供供电子设备102a签名的随机数。操作34-35涉及服务提供方110a向身份声明验证客户端904提供该随机数。在操作36-37处,身份声明验证客户端904用私钥(例如,存储在安全硬件部件206上)对随机数签名。

身份声明验证客户端904在操作38处将经验证的声明和经签名的随机数发送给服务提供方110a。如上文相对于操作33所述,身份声明验证客户端904可能已经从身份声明验证系统108接收了身份状态证明(例如,经验证的声明仍然有效并且还未被撤销)、以及用于评估数据的令牌。在操作38之前或结合操作38,电子设备102a可将身份状态证明和/或用于评估数据的令牌的指示提供给服务提供方110a。

如上所述,工作流(例如,在操作8处提供给电子设备)可特定于服务提供方110a,并且可指示针对特定服务提供方的任何生物特征认证要求(例如,银行可能需要设备上面部识别、指纹识别、虹膜识别、签名识别等中的一者或多者)。因此,如果工作流需要生物特征认证,则可在用户已成功执行此类生物特征认证之后执行操作38。电子设备102a将在该过程期间执行的特定用户认证嵌入到操作38的数字签名中。这将使得服务提供方110a能够校验认证级别并确定置信度/可信级别。

服务提供方110a可在确定是否启用和/或提供服务给电子设备102a的用户中评价身份状态证明和/或令牌。此外,服务提供方110a可基于经签名的随机数来验证经验证的声明是来自电子设备102a(例如,而不是来自另一设备)(操作39)。

在操作40-41处,服务提供方110a请求并接收由身份声明验证系统108确定并存储的评估数据。如上所述,评估数据可指示经验证的声明中的用户信息与本地存储在设备上的数据的比较(例如,以第一响应矢量的形式)。评估数据还可基于身份验证提供方106a已知的机构数据(例如,以第二响应矢量的形式)。评估数据还可包括总体用户账户评估。评估中的一者或多者(例如,聚合的评估数据)可被服务提供方110a用作附加信息以用于确定是否启用和/或提供服务给电子设备102a。操作43-44涉及服务提供方110a向身份声明验证客户端904和应用程序902提供对应标识符,使得应用程序902可在操作45处参与与服务提供方的服务。在一个或多个具体实施中,操作1-45中的一者或多者可相对于服务(例如,由服务提供方110a-110n中的一者或多者提供)重复和/或用于重新注册服务。

图10示出了根据一个或多个具体实施的用于使用经验证的声明来从服务提供方接收服务的示例性过程的流程图。出于解释的目的,本文主要参考图1的电子设备102a、身份验证提供方106a、身份声明验证系统108和服务提供方110a来描述过程1000。然而,过程1000不限于图1的电子设备102a、身份验证提供方106a、身份声明验证系统108和服务提供方110a,并且过程1000的一个或多个框(或操作)可由一个或多个其他部件和其他合适的设备(例如,电子设备102a-102d、身份验证提供方106a-106n和/或服务提供方110a-110n中的任一者)执行。进一步出于解释的目的,过程1000的框在本文中被描述为顺序地或线性地发生。然而,过程1000的多个框可并行地发生。此外,过程1000的框不必按所示顺序执行,并且/或者过程1000的一个或多个框不必执行和/或可由其他操作替代。

电子设备102a接收包括用于识别电子设备102a的用户的信息的经验证的声明(1002)。经验证的声明由服务器(例如,身份声明验证系统108)基于与身份声明验证系统108分开的身份验证提供方(例如,身份验证提供方106a)对该信息的验证来签名。经验证的声明特定于电子设备102a(例如,经由硬件/软件参考密钥和/或硬件/软件设备标识符)。

身份声明验证系统108可被配置为生成经验证的声明,作为数字身份登记过程的一部分。身份验证提供方106a可以是用于验证用于识别用户的信息的可信服务。

经验证的声明可对应于Merkle树,该Merkle树具有存储数据字段的节点,该数据字段对应于用于识别用户的信息。Merkle树可被配置用于基于这些节点来选择性地共享数据字段。

经验证的声明可以是复合声明。身份声明验证系统108可被配置为基于身份验证提供方106a和至少一个第二身份验证提供方(例如,身份验证提供方106b-106n中的一者或多者)对该信息的验证来生成复合声明。

在接收经验证的声明之前,电子设备102a可至少部分地基于电子设备102a的硬件部件(例如,安全硬件部件206)生成硬件/软件参考密钥和/或硬件/软件设备标识符,并且向身份声明验证系统108传输对经验证的声明的请求,该请求特定于电子设备102a。

电子设备102a向服务提供方110a发送对服务提供方110a所提供的服务的请求(1004)。电子设备102a响应于发送从服务提供方110a接收对经验证的声明的请求(1006)。

电子设备102a响应于接收而将经验证的声明发送给服务提供方110a(1008)。服务提供方110a可被配置为基于经验证的声明向电子设备102a提供服务。

硬件/软件参考密钥和/或硬件/软件设备标识符可以是公私钥对中的公钥,其对应的私钥被安全地存储在电子设备102a上(例如,在硬件安全元件206中)。对经验证的声明的请求可包括随机数,并且电子设备102a可用私钥对随机数进行签名,并且将经签名的随机数与经验证的声明一起发送给服务提供方110a。

电子设备102a可响应于发送从服务提供方110a接收身份证书,以用于相对于与服务提供方110a的后续认证而发送给服务提供方110a。在向服务提供方110a发送身份证书之前,电子设备102a可经由面部识别、指纹识别和/或另一用户认证机制来认证用户。

电子设备102a可向第二服务提供方(例如,服务提供方110b)发送对服务提供方110b所提供的第二服务的请求。电子设备102a可响应于发送对第二服务的请求而从服务提供方110b接收对经验证的声明的第二请求。电子设备102a可响应于接收第二请求而将经验证的声明发送给服务提供方110b。

图11示出了根据一个或多个具体实施的用于为经验证的声明提供置信度评估的示例过程的流程图。出于解释的目的,本文主要参考图1的电子设备102a、身份验证提供方106a、身份声明验证系统108和服务提供方110a来描述过程1100。然而,过程1100不限于图1的电子设备102a、身份验证提供方106a、身份声明验证系统108和服务提供方110a,并且过程1100的一个或多个框(或操作)可由一个或多个其他部件和其他合适的设备(例如,电子设备102a-102d、身份验证提供方106a-106n和/或服务提供方110a-110n中的任一者)执行。进一步出于解释的目的,过程1100的框在本文中被描述为顺序地或线性地发生。然而,过程1100的多个框可并行地发生。此外,过程1100的框不必按所示顺序执行,并且/或者过程1100的一个或多个框不必执行和/或可由其他操作替代。

电子设备102a向服务提供方(例如,服务提供方110a)发送对服务提供方所提供的服务的请求(1102)。电子设备102a响应于发送从服务提供方110a接收对经验证的声明的请求(1104)。经验证的声明包括用于识别电子设备102a的用户的多个数据字段,并且由服务器(例如,身份声明验证系统108)签名。经验证的声明特定于电子设备102a。

电子设备102a可从身份声明验证系统108接收经验证的声明。身份声明验证系统108可基于身份验证提供方(例如,身份验证提供方106a)对多个数据字段的验证来生成经验证的声明。

经验证的声明可对应于具有存储用于识别用户的多个数据字段的节点的Merkle树。Merkle树可被配置用于基于这些节点来选择性地共享多个数据字段。

响应于该接收,电子设备102a基于经验证的声明中的多个数据字段与本地存储在电子设备102a上的对应数据之间的比较来确定经验证的声明的置信度评估(1106)。本地存储的数据可包括对应于经验证的声明中多个数据字段的电子邮件内容、消息内容、社交网络内容或第三方应用程序内容中的至少一者。

在确定之前,电子设备102a可提示用户授权访问本地存储在电子设备102a上的数据,并且可接收授权访问本地存储在电子设备102a上的数据的用户输入。

电子设备102a将置信度评估和经验证的声明发送给服务提供方110a(1108)。服务提供方110a可被配置为基于经验证的声明和置信度评估来针对服务认证用户。服务提供方110a还可被配置为基于身份验证提供方106a或总体账户评估服务中至少一者对多个数据字段的评估来针对服务认证用户。

图12示出了根据一个或多个具体实施的用于基于包括在经验证的声明中的信息来向用户请求附加信息的示例性过程的流程图。出于解释的目的,本文主要参考图1的电子设备102a、身份验证提供方106a、身份声明验证系统108和服务提供方110a来描述过程1200。然而,过程1200不限于图1的电子设备102a、身份验证提供方106a、身份声明验证系统108和服务提供方110a,并且过程1200的一个或多个框(或操作)可由一个或多个其他部件和其他合适的设备(例如,电子设备102a-102d、身份验证提供方106a-106n和/或服务提供方110a-110n中的任一者)执行。进一步出于解释的目的,过程1200的框在本文中被描述为顺序地或线性地发生。然而,过程1200的多个框可并行地发生。此外,过程1200的框不必按所示顺序执行,并且/或者过程1200的一个或多个框不必执行和/或可由其他操作替代。

电子设备102a向服务提供方(例如,服务提供方110a)发送对服务提供方110a所提供的服务的请求(1202)。电子设备102a响应于发送对服务的请求而从服务提供方110a接收对经验证的声明的请求(1204)。

经验证的声明包括用于识别电子设备102a的用户的第一信息。经验证的声明包括特定于电子设备102a。电子设备102a可从身份声明验证系统108接收经验证的声明。身份声明验证系统108可基于身份验证提供方106a对该信息的验证来生成经验证的声明。

经验证的声明可对应于Merkle树,该Merkle树具有存储多个数据字段的节点,该多个数据字段对应于第一信息。Merkle树可被配置用于基于这些节点来选择性地共享多个数据字段。

电子设备102a响应于接收对经验证的声明的请求而将经验证的声明发送给服务提供方110a(1206)。电子设备102a从服务提供方110a接收对用于识别用户的第二信息的请求(1208)。第二信息不同于第一信息,并且对第二信息的请求是基于确定第一信息不足以识别用户。

确定第一信息不足以识别用户可对应于电子设备102a已丢失的指示。身份声明验证系统108可被配置为向服务提供方110a发送确定第一信息不足以识别用户的指示。

电子设备102a可提示用户输入第二信息。响应于该提示,电子设备102a可接收对应于第二信息的用户输入。服务提供方110a可被配置为基于第一信息和第二信息来针对服务认证用户。

图13示出了根据一个或多个具体实施的用于基于经验证声明的响应矢量向设备提供服务的示例性过程的流程图。出于解释的目的,本文主要参考图1的电子设备102a、身份验证提供方106a、身份声明验证系统108和服务提供方110a来描述过程1300。然而,过程1300不限于图1的电子设备102a、身份验证提供方106a、身份声明验证系统108和服务提供方110a,并且过程1300的一个或多个框(或操作)可由一个或多个其他部件和其他合适的设备(例如,电子设备102a-102d、身份验证提供方106a-106n和/或服务提供方110a-110n中的任一者)执行。进一步出于解释的目的,过程1300的框在本文中被描述为顺序地或线性地发生。然而,过程1300的多个框可并行地发生。此外,过程1300的框不必按所示顺序执行,和/或过程1300的一个或多个框不必执行和/或可由其他操作替代。

服务提供方110a接收对应于电子设备102a的用户的经验证声明的响应矢量(1302)。经验证的声明包括用于识别用户的多个数据字段,经验证的声明特定于电子设备102a。对于多个数据字段中的每个字段,响应矢量包括指示字段准确的可能性的置信度得分。

身份声明验证系统108可基于身份验证提供方(例如,身份验证提供方106a)对多个数据字段的验证来生成经验证的声明。服务提供方110a可从电子设备102a接收经验证的声明。

经验证的声明可对应于具有存储用于识别用户的多个数据字段的节点的Merkle树。Merkle树可被配置用于基于这些节点来选择性地共享多个数据字段。

服务提供方110a从电子设备102a接收对服务的请求(1304)。服务提供方110a响应于接收该请求而确定基于响应矢量和/或经验证的声明将向电子设备102a提供服务(1306)。服务提供方110a基于确定向电子设备102a提供服务(1308)。

确定将向电子设备102a提供服务可包括基于响应矢量的置信度得分来确定指示多个数据字段准确的可能性的总体置信度得分。确定总体置信度得分可包括对于多个数据字段中的每个字段为该字段的置信度得分分配相应的加权值,并且基于应用于置信度得分的相应加权值来确定总体置信度得分。

服务提供方110a可接收经验证的声明的第一评估或第二评估中的至少一者。可基于经验证的声明中的多个数据字段与本地存储在电子设备102a上的对应数据之间的比较,从电子设备102a接收第一评估。可基于经验证的声明中的多个数据字段从总体账户评估服务接收第二评估。确定将向电子设备102a提供服务还可基于至少一个第一评估或第二评估。

图14示出了根据一个或多个具体实施的用于撤销经验证的声明的示例过程的流程图。出于解释的目的,本文主要参考图1的电子设备102a、身份验证提供方106a、身份声明验证系统108和服务提供方110a来描述过程1400。然而,过程1400不限于图1的电子设备102a、身份验证提供方106a、身份声明验证系统108和服务提供方110a,并且过程1400的一个或多个框(或操作)可由一个或多个其他部件和其他合适的设备(例如,电子设备102a-102d、身份验证提供方106a-106n和/或服务提供方110a-110n中的任一者)执行。进一步出于解释的目的,过程1400的框在本文中被描述为顺序地或线性地发生。然而,过程1400的多个框可并行地发生。此外,过程1400的框不必按所示顺序执行,和/或过程1400的一个或多个框不必执行和/或可由其他操作替代。

身份声明验证系统108(例如,身份声明验证系统108)接收对撤销经验证的声明的第一请求,经验证的声明包括用于识别电子设备102a的用户的信息(1402)。经验证的声明特定于电子设备102a并且被存储在电子设备102a上。例如,通过与电子设备102a的硬件部件相关联的由电子设备102a生成的硬件/软件参考密钥和/或硬件/软件设备标识符,经验证的声明可特定于电子设备102a。

在接收第一请求之前,身份声明验证系统108可从电子设备102a接收对经验证的声明的请求,该请求特定于电子设备102a。身份声明验证系统108可基于与身份声明验证系统108分开的身份验证提供方(例如,身份验证提供方106a)对该信息的验证而生成并签名经验证的声明。身份声明验证系统108可将经验证的声明传输给电子设备102a。

可基于关于电子设备102a已丢失的指示而从服务(例如,用于定位设备和/或确定设备是否丢失的服务)接收第一请求。另选地或除此之外,可基于在电子设备102a处接收的用于撤销经验证的声明的第一用户输入而从电子设备102a接收第一请求。

电子设备102a可被配置为接收用于显示用于识别用户的信息的第二用户输入,并且响应于接收第二用户输入而显示用于识别用户的信息。电子设备102a还可被配置为接收用于部分撤销经验证的声明的第二用户输入,第二用户输入指示要撤销的信息的部分,并且响应于接收第二用户输入,从经验证的声明中移除信息的该部分。

响应于接收第一请求,身份声明验证系统108向电子设备102a发送对撤销电子设备102a上经验证的声明的第二请求(1404)。第二请求可包括对于删除电子设备102a上经验证的声明的请求。

硬件/软件参考密钥和/或硬件/软件设备标识符可以是公私钥对中的公钥,其对应的私钥被安全地存储在电子设备102a上。第二请求可包括对删除私钥的请求。电子设备102a可被配置为响应于接收第二请求而删除被安全存储在电子设备102a上的私钥。

身份声明验证系统108将经验证的声明添加到撤销列表(1406)。身份声明验证系统108可从服务提供方(例如,服务提供方110a)接收对经验证的声明的状态的请求。服务提供方110a可被配置为基于经验证的声明的状态向电子设备102a提供服务。响应于接收对状态的请求,身份声明验证系统108可确定经验证的声明被包括在撤销列表上,并且向服务提供方110a传输经验证的声明被撤销的指示。

另选地或除此之外,身份声明验证系统108可将撤销列表提供给一个或多个服务提供方(例如,服务提供方110a-110n)。服务提供方110a-110n可被配置为基于撤销列表来向电子设备102a提供服务。

如上所述,本主题技术的一个方面是采集和使用可得自特定和合法来源的数据以用于数字身份登记。本公开设想,在一些实例中,该所采集的数据可包括唯一地识别或可用于识别具体人员的个人信息数据。此类个人信息数据可包括人口统计数据、基于位置的数据、在线标识符、电话号码、电子邮件地址、家庭地址、与用户的健康或健身级别相关的数据或记录(例如,生命特征测量、药物信息、锻炼信息)、出生日期或任何其他个人信息。

本公开认识到在本发明技术中使用此类个人信息数据可用于使用户受益。例如,个人信息数据可用于数字身份登记。因此,使用此类个人信息数据可便于事务处理(例如,在线事务处理)。此外,本公开还预期个人信息数据有益于用户的其他用途。例如,健康和健身数据可根据用户的偏好来使用以提供对其总体健康状况的见解,或者可用作对使用技术来追求健康目标的个体的积极反馈。

本公开设想负责收集、分析、公开、传输、存储或其他使用此类个人信息数据的实体将遵守既定的隐私政策和/或隐私实践。具体地,将期望此类实体实现和一贯地应用一般公认为满足或超过维护用户隐私的行业或政府所要求的隐私实践。关于使用个人数据的此类信息应当被突出地并能够被用户方便地访问,并应当随数据的收集和/或使用变化而被更新。用户的个人信息应被收集仅用于合法使用。另外,此类收集/共享应仅发生在接收到用户同意或在适用法律中所规定的其他合法根据之后。此外,此类实体应考虑采取任何必要步骤,保卫和保障对此类个人信息数据的访问,并确保有权访问个人信息数据的其他人遵守其隐私政策和流程。另外,这种实体可使其本身经受第三方评估以证明其遵守广泛接受的隐私政策和实践。此外,应针对被收集和/或访问的特定类型的个人信息数据调整政策和实践,并使其适用于适用法律和标准,包括可用于施加较高标准的辖区专有的具体考虑因素。例如,在美国,对某些健康数据的收集或获取可能受联邦和/或州法律的管辖,诸如健康保险流通和责任法案(HIPAA);而其他国家的健康数据可能受到其他法规和政策的约束并应相应处理。

不管前述情况如何,本公开还预期用户选择性地阻止使用或访问个人信息数据的实施方案。即本公开预期可提供硬件元件和/或软件元件,以防止或阻止对此类个人信息数据的访问。例如,就登记数字身份而言,本主题技术可被配置为在注册服务期间或随后的任何时间允许用户选择“选择加入”或“选择退出”参与对个人信息数据的收集。除了提供“选择加入”和“选择退出”选项外,本公开设想提供与访问或使用个人信息相关的通知。例如,可在下载应用时向用户通知其个人信息数据将被访问,然后就在个人信息数据被应用访问之前再次提醒用户。

此外,本公开的目的是应管理和处理个人信息数据以最小化无意或未经授权访问或使用的风险。一旦不再需要数据,通过限制数据收集和删除数据可最小化风险。此外,并且当适用时,包括在某些健康相关应用程序中,数据去标识可用于保护用户的隐私。可在适当时通过移除标识符、控制所存储数据的量或特异性(例如,在城市级别而不是在地址级别收集位置数据)、控制数据如何被存储(例如,在用户间汇集数据)和/或其他方法诸如差异化隐私来促进去标识。

因此,虽然本公开广泛地覆盖了使用个人信息数据来实现一个或多个各种所公开的实施方案,但本公开还预期各种实施方案也可在无需访问此类个人信息数据的情况下被实现。即,本发明技术的各种实施方案不会由于缺少此类个人信息数据的全部或一部分而无法正常进行。

图15示出了根据一个或多个具体实施的可用以实现本主题技术的各个方面的示例性电子系统。电子系统1500可以是图1所示的电子设备102a-102d、身份验证提供方106a-106n、身份声明验证系统108和/或服务提供方110a-110n中的一者或多者,和/或可以是其一部分。电子系统1500可包括各种类型的计算机可读介质以及用于各种其他类型的计算机可读介质的接口。电子系统1500包括总线1508、一个或多个处理单元1512、系统存储器1504(和/或缓冲器)、ROM 1510、永久性存储设备1502、输入设备接口1514、输出设备接口1506以及一个或多个网络接口1516,或者其子集及变型形式。

总线1508总体表示通信地连接电子系统1500的许多内部设备的所有系统、外围设备以及芯片组总线。在一个或多个具体实施中,总线1508将该一个或多个处理单元1512与ROM 1510、系统存储器1504和永久性存储设备1502通信地连接。该一个或多个处理单元1512从这些各种存储器单元检索要执行的指令和要处理的数据,以便执行主题公开的过程。在不同的具体实施中,该一个或多个处理单元1512可以是单个处理器或者多核处理器。

ROM 1510存储该一个或多个处理单元1512以及电子系统1500的其他模块需要的静态数据和指令。另一方面,永久性存储设备1502可以是读写存储器设备。永久性存储设备1502可以是即使在电子系统1500关闭时也存储指令和数据的非易失性存储器单元。在一个或多个具体实施中,海量存储设备(诸如,磁盘或光盘及其相应盘驱动器)可被用作永久性存储设备1502。

在一个或多个具体实施中,可移除存储设备(诸如,软盘、闪存驱动器及其相应盘驱动器)可被用作永久性存储设备1502。与永久性存储设备1502一样,系统存储器1504可以是读写存储器设备。然而,与永久性存储设备1502不同,系统存储器1504可以是易失性读写存储器,诸如随机存取存储器。系统存储器1504可存储一个或多个处理单元1512在运行时可能需要的指令和数据中的任何指令和数据。在一个或多个具体实施中,本主题公开的过程被存储在系统存储器1504、永久性存储设备1502和/或ROM 1510中。该一个或多个处理单元1512从这些各种存储器单元检索要执行的指令和要处理的数据,以便执行一个或多个具体实施的过程。

总线1508还连接到输入设备接口1514和输出设备接口1506。输入设备接口1514使得用户能够向电子系统1500传送信息以及选择命令。可与输入设备接口1514一起使用的输入设备可包括例如字母数字混合键盘和指向设备(也称为“光标控制设备”)。输出设备接口1506可使得例如能够显示电子系统1500所生成的图像。可与输出设备接口1506一起使用的输出设备可包括例如打印机和显示设备,诸如液晶显示器(LCD)、发光二极管(LED)显示器、有机发光二极管(OLED)显示器、柔性显示器、平板显示器、固态显示器、投影仪或用于输出信息的任何其他设备。一个或多个具体实施可包括既充当输入设备又充当输出设备的设备,诸如触摸屏。在这些具体实施中,提供给用户的反馈可以是任何形式的感官反馈,诸如视觉反馈、听觉反馈或触觉反馈;并且可以任何形式接收来自用户的输入,包括声学、语音或触觉输入。

最后,如图15所示,总线1508还通过一个或多个网络接口1516将电子系统1500耦接到一个或多个网络和/或耦接到一个或多个网络节点,诸如图1中所示的电子设备102-104。以此方式,电子系统1500可以是计算机网络(诸如LAN、广域网(“WAN”)或内联网)的一部分,或者可以是网络的网络(诸如互联网)的一部分。电子系统1500的任何或所有部件可与本主题公开一起使用。

可以利用编写有一个或多个指令的有形计算机可读存储介质(或一种或多种类型的多个有形计算机可读存储介质)部分地或全部地实现本公开范围之内的具体实施。有形计算机可读存储介质实质上也可以是非暂态的。

计算机可读存储介质可以是任何可以由通用或专用计算设备读、写或以其他方式访问的存储介质,包括任何能够执行指令的处理电子器件和/或处理电路。例如,非限制地,计算机可读介质可包括任何易失性半导体存储器,诸如RAM、DRAM、SRAM、T-RAM、Z-RAM和TTRAM。计算机可读介质也可包括任何非易失性半导体存储器,诸如ROM、PROM、EPROM、EEPROM、NVRAM、闪存、nvSRAM、FeRAM、FeTRAM、MRAM、PRAM、CBRAM、SONOS、RRAM、NRAM、赛道存储器、FJG和Millipede存储器。

此外,计算机可读存储介质可包括任何非半导体存储器,诸如光盘存储装置、磁盘存储装置、磁带、其他磁性存储设备或者能够存储一个或多个指令的任何其他介质。在一个或多个具体实施中,有形计算机可读存储介质可直接耦接到计算设备,而在其他具体实施中,有形计算机可读存储介质可例如经由一个或多个有线连接、一个或多个无线连接、或它们的任意组合而间接地耦接到计算设备。

指令可以是直接能执行的,或者可用于开发可执行指令。例如,指令可被实现为可执行的或不可执行的机器代码,或者可被实现为可被编译以产生可执行的或不可执行的机器代码的高级语言指令。此外,指令也可被实现为数据,或者可包括数据。计算机可执行指令也可以任何格式组织,包括例程、子例程、程序、数据结构、对象、模块、应用、小程序、函数等。如本领域技术人员认识到的那样,包括但不限于指令的数量、结构、序列和组织的细节可明显不同,而不改变底层的逻辑、功能、处理和输出。

虽然以上论述主要涉及执行软件的微处理器或多核处理器,但一个或多个具体实施由一个或多个集成电路诸如ASIC或FPGA执行。在一个或多个具体实施中,此类集成电路执行存储在电路自身上的指令。

本领域的技术人员将会认识到,本文所述的各种例示性的框、模块、元件、部件、方法和算法可被实现为电子硬件、计算机软件或两者的组合。为了说明硬件和软件的这种可互换性,上文已经一般性地按照功能性对各种例示性的框、模块、元件、部件、方法和算法进行了描述。此类功能性是被实现为硬件还是软件取决于具体应用以及对整个系统施加的设计约束。技术人员对于每个具体应用可通过不同方式实现所描述的功能性。各种部件和框可被不同地布置(例如,以不同的顺序排列,或以不同的方式划分),而不脱离本主题技术的范围。

应当理解,本发明所公开的过程中的框的特定顺序或分级结构为示例性方法的例示。基于设计优选要求,应当理解,过程中的框的特定顺序或者分级结构可被重新布置或者所有示出的框都被执行。这些框中的任何框可被同时执行。在一个或多个具体实施中,多任务和并行处理可能是有利的。此外,上述具体实施中各个系统部件的划分不应被理解为在所有具体实施中都要求此类划分,并且应当理解,程序部件和系统可一般性地被一起整合在单个软件产品中或者封装到多个软件产品中。

如本说明书以及本专利申请的任何权利要求中所用,术语“基站”、“接收器”、“计算机”、“服务器”、“处理器”及“存储器”均是指电子设备或其他技术设备。这些术语排除人或者人的群组。出于本说明书的目的,术语“显示”或“正在显示”意指在电子设备上显示。

如本文所用,在用术语“和”或“或”分开项目中任何项目的一系列项目之后的短语“中的至少一者”是将列表作为整体进行修饰,而不是修饰列表中的每个成员(即每个项目)。短语“中的至少一者”不要求选择所列出的每个项目中的至少一个;相反,该短语允许包括任何一个项目中的至少一个和/或项目的任何组合中的至少一个和/或每个项目中的至少一个的含义。举例来说,短语“A、B和C中的至少一者”或“A、B或C中的至少一者”各自是指仅A、仅B或仅C;A、B和C的任意组合;和/或A、B和C中的每一个中的至少一个。

谓词字词“被配置为”、“能够操作以”以及“被编程以”并不意味着对某一主题进行任何特定的有形或无形的修改而是旨在可互换使用。在一个或多个具体实施中,被配置为监视和控制操作或部件的处理器也可以是意指处理器被编程以监视和控制操作或者处理器可操作以监视和控制操作。同样,被配置为执行代码的处理器可解释为被编程以执行代码或能够操作以执行代码的处理器。

短语诸如方面、该方面、另一方面、一些方面、一个或多个方面、具体实施、该具体实施、另一具体实施、一些具体实施、一个或多个具体实施、实施方案、该实施方案、另一实施方案、一些实施方案、一个或多个实施方案、配置、该配置、其他配置、一些配置、一种或多种配置、主题技术、公开、本公开、它们的其他变型等等都是为了方便,并不意味着涉及这样的一个或多个短语的公开对于主题技术是必不可少的,也不意味着这种公开适用于主题技术的所有配置。涉及此类一个或多个短语的公开可适用于所有配置或一个或多个配置。涉及此类一个或多个短语的公开可提供一个或多个示例。短语诸如方面或一些方面可指代一个或多个方面,反之亦然,并且这与其他前述短语类似地应用。

字词“示例性”在本文中被用于意指“用作示例、实例或者例示”。在本文中被描述为“示例性的”或作为“示例”的任何实施方案不必被理解为优选于或优于其他具体实施。此外,在术语“包括”、“具有”等在说明书或权利要求中使用的限度内,这样的术语旨在是包含性的,与术语“包括”当在权利要求中被用作过渡字词时“包括”被解释的方式类似。

本领域的普通技术人员已知或稍后悉知的贯穿本公开描述的各个方面的元素的所有结构和功能等同物通过引用明确地并入本文,并且旨在被权利要求书所涵盖。此外,本文所公开的任何内容并非旨在提供给公众,而与该公开是否明确地被陈述在权利要求中无关。不应根据35U.S.C.§112(f)的规定解释任何权利要求要素,除非使用短语“用于……的装置”明确陈述了该要素,或者就方法权利要求而言,使用短语“用于……的步骤”陈述了该要素。

先前的描述被提供以使得本领域的技术人员能够实践本文所述的各个方面。这些方面的各种修改对本领域的技术人员而言是显而易见的,并且本文所限定的通用原则可应用于其他方面。因此,本权利要求书并非旨在受限于本文所示的方面,而是旨在使得全部范围与语言权利要求书一致,其中对奇异值中的元素的引用并非旨在意味着“仅仅一个”,而是指“一个或多个”,除非被具体指出。除非另外特别说明,否则术语“一些”是指一个或多个。男性的代名词(例如,他的)包括女性和中性(例如,她的和它的),并且反之亦然。标题和子标题(如果有的话)仅为了方便起见而使用并且不限制本主题公开。

其他方面在以下条款中陈述:

条款1.一种方法,包括:

向服务提供方发送对所述服务提供方提供的服务的请求;

响应于所述发送而从所述服务提供方接收对经验证的声明的请求,所述经验证的声明包括用于识别设备的用户的多个数据字段并且由服务器签名,所述经验证的声明特定于所述设备;以及

响应于所述接收,基于所述经验证的声明中的所述多个数据字段与本地存储在所述设备上的对应数据之间的比较来确定所述经验证的声明的置信度评估,以及

将所述置信度评估和所述经验证的声明发送给所述服务提供方。

条款2.根据条款1所述的方法,还包括:

从所述服务器接收所述经验证的声明,其中所述经验证的声明由所述服务器基于身份验证提供方对所述多个数据字段的验证来生成。

条款3.根据条款1所述的方法,其中所述本地存储的数据包括对应于所述经验证的声明中所述多个数据字段的电子邮件内容、消息内容、社交网络内容或第三方应用程序内容中的至少一者。

条款4.根据条款1所述的方法,还包括:

在所述确定之前,提示所述用户授权访问本地存储在所述设备上的所述数据;以及

响应于所述提示,接收授权访问本地存储在所述设备上的所述数据的用户输入。

条款5.根据条款1所述的方法,其中所述服务提供方被配置为基于所述经验证的声明和所述置信度评估来针对服务认证所述用户。

条款6.根据条款5所述的方法,其中所述服务提供方还被配置为基于身份验证提供方或总体账户评估服务中至少一者对所述多个数据字段的评估来针对服务认证所述用户。

条款7.根据条款1所述的方法,其中所述经验证的声明对应于Merkle树,所述Merkle树具有存储用于识别所述用户的所述多个数据字段的节点。

条款8.根据条款7所述的方法,其中所述Merkle树被配置用于基于所述节点来选择性地共享所述多个数据字段。

条款9.一种设备,所述设备包括:

至少一个处理器;以及

存储器,所述存储器包括指令,所述指令当由所述至少一个处理器执行时,使所述至少一个处理器:

向服务提供方发送对所述服务提供方提供的服务的请求;

响应于所述发送而从所述服务提供方接收对经验证的声明的请求,所述经验证的声明包括用于识别设备的用户的多个数据字段并且是由服务器签名的数字证书,所述经验证的声明与所述设备相关联;以及

响应于所述接收,基于所述经验证的声明中的所述多个数据字段与本地存储在设备上的对应数据之间的比较来确定所述经验证的声明的置信度评估,以及

将所述置信度评估和所述经验证的声明发送给所述服务提供方。

条款10.根据条款9所述的设备,其中所述指令还使所述至少一个处理器:

从所述服务器接收所述经验证的声明,其中所述经验证的声明由所述服务器基于身份验证提供方对所述多个数据字段的验证来生成。

条款11.根据条款9所述的设备,其中所述本地存储的数据包括对应于所述经验证的声明中所述多个数据字段的电子邮件内容、消息内容、社交网络内容或第三方应用程序内容中的至少一者。

条款12.根据条款9所述的设备,其中所述指令还使所述至少一个处理器:

在所述确定之前,提示所述用户授权访问本地存储在所述设备上的所述数据;以及

响应于所述提示,接收授权访问本地存储在所述设备上的所述数据的用户输入。

条款13.根据条款9所述的设备,其中所述服务提供方被配置为基于所述经验证的声明和所述置信度评估来针对服务认证所述用户。

条款14.根据条款13所述的设备,其中所述服务提供方还被配置为基于身份验证提供方或总体账户评估服务中至少一者对所述多个数据字段的评估来针对服务认证所述用户。

条款15.根据条款9所述的设备,其中所述经验证的声明对应于Merkle树,所述Merkle树具有存储用于识别所述用户的所述多个数据字段的节点。

条款16.根据条款15所述的设备,其中所述Merkle树被配置用于基于所述节点来选择性地共享所述多个数据字段。

条款17.一种包括存储在有形计算机可读存储介质中的代码的计算机程序产品,所述代码包括:

用于向服务提供方发送对所述服务提供方提供的服务的请求的代码;

用于响应于所述发送而从所述服务提供方接收对经验证的声明的请求的代码,所述经验证的声明包括用于识别设备的用户的多个数据字段并且是由服务器签名的数字证书,所述经验证的声明与所述设备相关联;以及

用于响应于所述接收而基于所述经验证的声明中的所述多个数据字段与本地存储在设备上的对应数据之间的比较来确定所述经验证的声明的置信度评估,以及

将所述置信度评估和所述经验证的声明发送给所述服务提供方。

条款18.根据条款17所述的计算机程序产品,所述代码还包括:

用于从所述服务器接收所述经验证的声明的代码,其中所述经验证的声明由所述服务器基于身份验证提供方对所述多个数据字段的验证来生成。

条款19.根据条款17所述的计算机程序产品,其中所述本地存储的数据包括对应于所述经验证的声明中所述多个数据字段的电子邮件内容、消息内容、社交网络内容或第三方应用程序内容中的至少一者。

条款20.根据条款17所述的计算机程序产品,所述代码还包括:

用于在所述确定之前提示所述用户授权访问本地存储在所述设备上的所述数据的代码;以及

用于响应于所述提示而接收授权访问本地存储的所述数据的用户输入的代码。

条款21.一种方法,包括:

向服务提供方发送对所述服务提供方提供的服务的请求;

响应于发送对所述服务的所述请求而从所述服务提供方接收对经验证的声明的请求,所述经验证的声明包括用于识别设备的用户的第一信息,所述经验证的声明特定于所述设备;

响应于接收对所述经验证的声明的所述请求而将所述经验证的声明发送给所述服务提供方;以及

从所述服务提供方接收对用于识别所述用户的第二信息的请求,所述第二信息不同于所述第一信息,对所述第二信息的所述请求是基于确定所述第一信息不足以识别所述用户。

条款22.根据条款21所述的方法,其中所述确定所述第一信息不足以识别所述用户对应于关于所述设备已丢失的指示。

条款23.根据条款21所述的方法,还包括:

提示所述用户输入所述第二信息;以及

响应于所述提示,接收对应于所述第二信息的用户输入。

条款24.根据条款21所述的方法,其中所述服务提供方被配置为基于所述第一信息和所述第二信息来针对服务认证所述用户。

条款25.根据条款21所述的方法,还包括:

从服务器接收所述经验证的声明,其中所述经验证的声明由所述服务器基于身份验证提供方对所述信息的验证来生成。

条款26.根据条款25所述的方法,其中所述服务器被配置为向所述服务提供方发送所述确定所述第一信息不足以识别所述用户的指示。

条款27.根据条款21所述的方法,其中所述经验证的声明对应于具有存储对应于所述第一信息的多个数据字段的节点的Merkle树。

条款28.根据条款27所述的方法,其中所述Merkle树被配置用于基于所述节点来选择性地共享所述多个数据字段。

条款29.一种设备,所述设备包括:

至少一个处理器;以及

存储器,所述存储器包括指令,所述指令当由所述至少一个处理器执行时,使所述至少一个处理器:

向服务提供方发送对所述服务提供方提供的服务的请求;

响应于发送对所述服务的所述请求而从所述服务提供方接收对经验证的声明的请求,所述经验证的声明包括用于识别设备的用户的第一信息并且是由服务器签名的数字证书,所述经验证的声明与所述设备相关联;

响应于接收对所述经验证的声明的所述请求而将所述经验证的声明发送给所述服务提供方;以及

从所述服务提供方接收对用于识别所述用户的第二信息的请求,所述第二信息不同于所述第一信息,对所述第二信息的所述请求是基于确定所述第一信息不足以识别所述用户。

条款30.根据条款29所述的设备,其中所述确定所述第一信息不足以识别所述用户对应于关于所述设备已丢失的指示。

条款31.根据条款29所述的设备,其中所述指令还使所述至少一个处理器:

提示所述用户输入所述第二信息;以及

响应于所述提示,接收对应于所述第二信息的用户输入。

条款32.根据条款29所述的设备,其中所述服务提供方被配置为基于所述第一信息和所述第二信息来针对服务认证所述用户。

条款33.根据条款29所述的设备,其中所述指令还使所述至少一个处理器:

从所述服务器接收所述经验证的声明,其中所述经验证的声明由所述服务器基于身份验证提供方对所述信息的验证来生成。

条款34.根据条款33所述的设备,其中所述服务器被配置为向所述服务提供方发送所述确定所述第一信息不足以识别所述用户的指示。

条款35.根据条款29所述的设备,其中所述经验证的声明对应于具有存储对应于所述第一信息的多个数据字段的节点的Merkle树。

条款36.根据条款35所述的设备,其中所述Merkle树被配置用于基于所述节点来选择性地共享所述多个数据字段。

条款37.一种包括存储在有形计算机可读存储介质中的代码的计算机程序产品,所述代码包括:

用于向服务提供方发送对所述服务提供方提供的服务的请求的代码;

用于响应于发送对所述服务的所述请求而从所述服务提供方接收对经验证的声明的请求的代码,所述经验证的声明包括用于识别设备的用户的第一信息并且是由服务器签名的数字证书,所述经验证的声明与所述设备相关联;

用于响应于接收对所述经验证的声明的所述请求而将所述经验证的声明发送给所述服务提供方的代码;以及

用于从所述服务提供方接收对用于识别所述用户的第二信息的请求的代码,所述第二信息不同于所述第一信息,对所述第二信息的所述请求是基于确定所述第一信息不足以识别所述用户。

条款38.根据条款37所述的计算机程序产品,所述代码还包括:

用于提示所述用户输入所述第二信息的代码;以及

用于响应于所述提示而接收对应于所述第二信息的用户输入的代码。

条款39.根据条款37所述的计算机程序产品,其中所述服务提供方被配置为基于所述第一信息和所述第二信息来针对服务认证所述用户。

条款40.根据条款37所述的计算机程序产品,所述代码还包括:

用于从所述服务器接收所述经验证的声明的代码,其中所述经验证的声明由所述服务器基于身份验证提供方对所述信息的验证来生成。

条款41.一种方法,包括:

接收对应于设备的用户的经验证的声明的响应矢量,所述经验证的声明包括用于识别所述用户的多个数据字段,所述经验证的声明特定于所述设备,所述响应矢量对于所述多个数据字段中的每个字段包括指示所述字段准确的可能性的置信度得分;

从所述设备接收对服务的请求;

响应于接收所述请求而确定将基于所述响应矢量和所述经验证的声明向所述设备提供服务;以及

基于所述确定向所述设备提供所述服务。

条款42.根据条款41所述的方法,其中所述确定包括:

基于所述响应矢量的所述置信度得分来确定指示所述多个数据字段准确的可能性的总体置信度得分。

条款43.根据条款42所述的方法,其中确定所述总体置信度得分包括:

对于所述多个数据字段中的每个字段,向所述字段的所述置信度得分分配相应加权值;以及

基于应用于所述置信度得分的所述相应加权值来确定所述总体置信度得分。

条款44.根据条款41所述的方法,还包括:

接收所述经验证的声明的第一评估或第二评估中的至少一者,

其中所述第一评估是基于所述经验证的声明中的所述多个数据字段与本地存储在所述设备上的对应数据之间的比较而从所述设备接收,

其中所述第二评估是基于所述经验证的声明中的所述多个数据字段而从总体账户评估服务接收,并且

其中所述确定还基于所述至少一个第一评估或第二评估。

条款45.根据条款41所述的方法,其中所述经验证的声明由服务器基于身份验证提供方对所述多个数据字段的验证来生成。

条款46.根据条款41所述的方法,还包括:

从所述设备接收所述经验证的声明。

条款47.根据条款41所述的方法,其中所述经验证的声明对应于Merkle树,所述Merkle树具有存储用于识别所述用户的所述多个数据字段的节点。

条款48.根据条款47所述的方法,其中所述Merkle树被配置用于基于所述节点来选择性地共享所述多个数据字段。

条款49.一种系统,包括:

至少一个处理器;以及

存储器,所述存储器包括指令,所述指令当由所述至少一个处理器执行时,使所述至少一个处理器:

接收对应于设备的用户的经验证的声明的响应矢量,所述经验证的声明包括用于识别所述用户的多个数据字段并且是由服务器签名的数字证书,所述经验证的声明与所述设备相关联,所述响应矢量对于所述多个数据字段中的每个字段包括指示所述字段准确的可能性的置信度得分;

从所述设备接收对服务的请求;

响应于接收所述请求而确定将基于所述响应矢量和所述经验证的声明向所述设备提供服务;以及

基于所述确定向所述设备提供所述服务。

条款50.根据条款49所述的系统,其中所述确定包括:

基于所述响应矢量的所述置信度得分来确定指示所述多个数据字段准确的可能性的总体置信度得分。

条款51.根据条款50所述的系统,其中确定所述总体置信度得分包括:

对于所述多个数据字段中的每个字段,向所述字段的所述置信度得分分配相应加权值;以及

基于应用于所述置信度得分的所述相应加权值来确定所述总体置信度得分。

条款52.根据条款49所述的系统,其中所述指令还使所述至少一个处理器:

接收所述经验证的声明的第一评估或第二评估中的至少一者,

其中所述第一评估是基于所述经验证的声明中的所述多个数据字段与本地存储在所述设备上的对应数据之间的比较而从所述设备接收,

其中所述第二评估是基于所述经验证的声明中的所述多个数据字段而从总体账户评估服务接收,并且

其中所述确定还基于所述至少一个第一评估或第二评估。

条款53.根据条款49所述的系统,其中所述经验证的声明由所述服务器基于身份验证提供方对所述多个数据字段的验证来生成。

条款54.根据条款49所述的系统,其中所述指令还使所述至少一个处理器:

从所述设备接收所述经验证的声明。

条款55.根据条款49所述的系统,其中所述经验证的声明对应于Merkle树,所述Merkle树具有存储用于识别所述用户的所述多个数据字段的节点。

条款56.根据条款55所述的系统,其中所述Merkle树被配置用于基于所述节点来选择性地共享所述多个数据字段。

条款57.一种包括存储在有形计算机可读存储介质中的代码的计算机程序产品,所述代码包括:

用于接收对应于设备的用户的经验证的声明的响应矢量的代码,所述经验证的声明包括用于识别所述用户的多个数据字段并且是由服务器签名的数字证书,所述经验证的声明与所述设备相关联,所述响应矢量对于所述多个数据字段中的每个字段包括指示所述字段准确的可能性的置信度得分;

用于从所述设备接收对服务的请求的代码;

用于响应于接收所述请求而基于所述响应矢量的所述置信度得分来确定指示所述多个数据字段准确的可能性的总体置信度得分的代码;以及

用于基于所述总体置信度得分来向所述设备提供所述服务的代码。

条款58.根据条款57所述的计算机程序产品,其中所述经验证的声明由所述服务器基于身份验证提供方对所述多个数据字段的验证来生成。

条款59.根据条款57所述的计算机程序产品,所述代码还包括:

用于从所述设备接收所述经验证的声明的代码。

条款60.根据条款57所述的计算机程序产品,其中确定所述总体置信度得分包括:

对于所述多个数据字段中的每个字段,向所述字段的所述置信度得分分配相应加权值;以及

基于应用于所述置信度得分的所述相应加权值来确定所述总体置信度得分。

条款61.一种方法,包括:

服务器接收对撤销经验证的声明的第一请求,所述经验证的声明包括用于识别设备的用户的信息,其中所述经验证的声明特定于所述设备并存储在所述设备上;以及

响应于接收到所述第一请求,

向所述设备发送对撤销所述设备上的所述经验证的声明的第二请求,以及

将所述经验证的声明添加到撤销列表。

条款62.根据条款61所述的方法,其中所述第二请求包括对删除所述设备上的所述经验证的声明的请求。

条款63.根据条款61所述的方法,其中所述经验证的声明通过标引所述设备的硬件参考密钥、标引所述设备的软件参考密钥、硬件设备标识符或软件设备标识符中的至少一者而特定于所述设备。

条款64.根据条款63所述的方法,其中所述硬件参考密钥是公私钥对中的公钥,所述公钥的对应私钥被安全地存储在所述设备上。

条款65.根据条款64所述的方法,其中所述第二请求包括对删除所述私钥的请求,并且其中所述设备被配置为响应于接收所述第二请求而删除被安全地存储在所述设备上的所述私钥。

条款66.根据条款63所述的方法,还包括,在接收所述第一请求之前:

从所述设备接收对所述经验证的声明的请求,所述请求包括所述硬件参考密钥;

基于与所述服务器分开的身份验证提供方对所述信息的验证,生成并签名所述经验证的声明;以及

向所述设备传输所述经验证的声明。

条款67.根据条款63所述的方法,其中所述硬件参考密钥由所述设备与所述设备的硬件部件相关联地生成。

条款68.根据条款61所述的方法,还包括:

从服务提供方接收对所述经验证的声明的状态的请求,其中所述服务提供方被配置为基于所述经验证的声明的所述状态向所述设备提供服务;以及

响应于接收对所述状态的所述请求,

确定所述经验证的声明被包括在所述撤销列表上,

向所述服务提供方传输所述经验证的声明被撤销的指示。

条款69.根据条款61所述的方法,还包括:

向至少一个服务提供方提供所述撤销列表,其中所述至少一个服务提供方被配置为基于所述撤销列表向所述设备提供服务。

条款70.根据条款61所述的方法,其中所述第一请求是基于关于所述设备已丢失的指示而从服务接收。

条款71.根据条款61所述的方法,其中所述第一请求是基于在所述设备处接收的用于撤销所述经验证的声明的第一用户输入而从所述设备接收。

条款72.根据条款61所述的方法,其中所述设备还被配置为:

接收用于显示用于识别所述用户的所述信息的第二用户输入;以及

响应于接收所述第二用户输入,显示用于识别所述用户的所述信息。

条款73.根据条款61所述的方法,其中所述设备还被配置为:

接收用于部分撤销所述经验证的声明的第二用户输入,所述第二用户输入指示要撤销的所述信息的部分;以及

响应于接收所述第二用户输入,从所述经验证的声明中移除所述信息的所述部分。

条款74.一种系统,包括:

至少一个处理器;以及

存储器,所述存储器包括指令,所述指令当由所述至少一个处理器执行时,使所述至少一个处理器:

接收对撤销经验证的声明的第一请求,所述经验证的声明包括用于识别设备的用户的信息,

其中所述经验证的声明包括所述设备的硬件参考密钥,并且

其中所述硬件参考密钥是公私钥对中的公钥,所述公钥的对应私钥被安全地存储在所述设备上;以及

响应于接收所述请求,

向所述设备发送对撤销所述设备上的所述经验证的声明的第二请求,以及

将所述经验证的声明添加到撤销列表。

条款75.根据条款74所述的系统,其中所述第二请求包括对删除所述设备上的所述经验证的声明的请求。

条款76.根据条款74所述的系统,其中所述第二请求包括对删除所述私钥的请求,并且其中所述设备被配置为响应于接收所述第二请求而删除被安全地存储在所述设备上的所述私钥。

条款77.根据条款74所述的系统,其中所述指令还使所述至少一个处理器在接收所述第一请求之前:

从所述设备接收对所述经验证的声明的请求,所述请求包括所述硬件参考密钥;

基于与所述系统分开的身份验证提供方对所述信息的验证,生成并签名所述经验证的声明;以及

向所述设备传输所述经验证的声明。

条款78.根据条款74所述的系统,其中所述硬件参考密钥由所述设备与所述设备的硬件部件相关联地生成。

条款79.根据条款74所述的系统,其中所述指令还使所述至少一个处理器:

从服务提供方接收对所述经验证的声明的状态的请求,其中所述服务提供方被配置为基于所述经验证的声明的所述状态向所述设备提供服务;以及

响应于接收对所述状态的所述请求,

确定所述经验证的声明被包括在所述撤销列表上,

向所述服务提供方传输所述经验证的声明被撤销的指示。

条款80.一种包括存储在有形计算机可读存储介质中的代码的计算机程序产品,所述代码包括:

用于接收对撤销经验证的声明的第一请求的代码,所述经验证的声明包括用于识别设备的用户的信息,其中所述经验证的声明包括所述设备的硬件参考密钥并被存储在所述设备上,并且所述硬件参考密钥已由所述设备与所述设备的硬件部件相关联地生成;以及

用于响应于接收所述请求而向所述设备发送对撤销所述设备上的所述经验证的声明的第二请求,并且

将所述经验证的声明添加到撤销列表的代码。

相关技术
  • 提供经验证的用户身份声明
  • 一种实现SaaS用户端与SaaS服务提供端通讯过程的身份信息验证方法的装置
技术分类

06120112852041