用于进行可信设备登记的技术的制作方法

文档序号:11532271阅读:149来源:国知局
用于进行可信设备登记的技术的制造方法与工艺

相关美国专利申请的交叉引用

本申请要求于2015年3月27日提交的题为“technologiesfortrusteddeviceon-boarding(用于进行可信设备登记的技术)”的美国实用新型专利申请序列号14/670,874的优先权,并根据35u.s.c.§119(e)要求于2014年11月11日提交的题为“trustworthydeviceon-boardingmechanism(可信设备登记机制)”的美国临时专利申请序列号62/078,077的优先权。



背景技术:

物联网(iot)涉及包括设备中的电子器件和软件(例如,通信软件),所述设备在本质上通常不被认为是计算机化的或者以其他方式不被认为能够执行电子控制(例如,标准的嵌入式系统)。那些设备通常被称为网络物理(cp)设备/系统。这类网络物理系统典型地对网络安全提出了重大挑战,因为那些系统通常缺乏有意义的安全机制。例如,网络物理系统典型地缺乏在部件(例如,片上系统(soc))和控制器内可信密钥存储、引导和执行所需的硬件支持,所述部件和控制器包括所述网络物理系统。另外,一些iot网络堆栈利用非优化代码以用于分段,而其他的网络堆栈根本不具有分段支持。

已经采用了各种机制以便为网络物理系统提供更高等级的网络安全。例如,一种方式涉及建立网络飞地,从而使得低安全网络物理设备“隐藏”在能够进行更高安全的网关或路由器之后。在这类系统中,所述网络物理网关可以被信任以便防止由于缺乏网络物理设备的安全性而造成的可能源自网络飞地内的恶意软件的传播。然而,网络物理设备日益同时连接至多个网络,这通常使得网络物理网关的使用不可行。

附图说明

在附图中通过示例的方式而非限制性的方式展示了在此所描述的概念。为了说明的简单和清晰起见,附图中所展示的要素不一定按比例绘制。在认为适当的情况下,在附图当中重复参考标号以表示相应或相似的要素。

图1是一种用于进行可信设备登记的系统的至少一个实施例的简化框图;

图2是图1的系统的计算设备的环境的至少一个实施例的简化框图;

图3是一种可以由图2的计算设备执行的用于进行可信设备登记的方法的至少一个实施例的简化流程图;

图4至图5是一种可以由图2的计算设备执行的用于进行安全密钥交换的方法的至少一个实施例的简化流程图;并且

图6是图4至图5的方法的至少一个实施例的简化数据流程图。

具体实施方式

虽然本公开的概念易于经历各种修改和替代形式,但是在附图中已经通过示例的方式示出了其特定实施例并且将在此对其进行详细描述。然而,应当理解的是,并不旨在将本公开的概念限制于所公开的特定形式,而相反,意图是覆盖与本公开和所附权利要求书一致的所有修改型式、等效型式和替代型式。

在说明书中提到的“一个实施例”、“实施例”、“说明性实施例”等指示所描述的实施例可以包括具体特征、结构或特性,但每一个实施例可能或者可能不一定包括该具体特征、结构或特性。而且,此类短语不一定指相同的实施例。进一步地,当结合实施例描述具体特征、结构或特性时,应认为,无论是否明确描述,结合其他实施例来实现这种特征、结构或特性是在本领域的普通技术人员的知识范围内。另外,应当认识到,包括在采用“至少一个a、b和c”形式的列表中的项可意指(a);(b);(c);(a和b);(b和c);(a和c);或(a、b和c)。类似地,采用“a、b或c中的至少一者”形式列出的项可意指(a);(b);(c);(a和b);(b和c);(a和c);或(a、b和c)。

在一些情况下,可以在硬件、固件、软件或其任何组合中实施所公开的实施例。所公开的实施例还可以被实施为由一种或多种瞬态或非瞬态机器可读(例如,计算机可读)存储介质所携带或存储在其上的指令,所述指令可以由一个或多个处理器读取和执行。机器可读存储介质可以具体化为任何存储设备、机制、或用于存储或传输采用机器可读形式的信息的其他物理结构(例如,易失性或非易失性存储器、介质盘或其他介质设备)。

在附图中,一些结构特征或方法特征可能以特定安排和/或顺序示出。然而,应当理解的是,可以不需要这种特定安排和/或顺序。相反,在一些实施例中,可以采用与在说明性附图中所示出的方式和/或顺序不同的方式和/或顺序来安排这种特征。另外,在具体的图中包括结构特征或方法特征并不意味着暗示在所有实施例中都需要这种特征,并且在一些实施例中,可以不包括这种特征或者这种特征可以与其他特征组合。

现在参考图1,一种用于进行可信设备登记的系统100包括计算设备102(即计算设备a)、网络104、和计算设备106(即计算设备b)。虽然在图1中仅说明性地示出了一个计算设备102、一个网络104和一个计算设备106,但是在其他实施例中,所述系统100可以包括任何数量的计算设备102、网络104、和/或计算设备106。

如以下详细描述的,系统100允许对等发现和执行无线“取得所有权”协议。具体地,计算设备102可以注册其自身并且发现计算设备106。在发现时,计算设备102可以开启与计算设备106的通信连接,并且与那个计算设备106执行安全密钥交换。如下所述,说明性安全密钥交换涉及计算设备102与计算设备106之间的六条消息的交换。应当认识到的是,说明性安全密钥交换算法通过包括证明和唯一标识符认证(例如,个人识别号码(pin)或密码认证)来处理分段以作为安全密钥交换/协议自身的一部分。从而,在一些实施例中,在此描述的技术甚至利用不具有分段支持的计算设备102、106进行工作。由于说明性协议是双向的,因此网络104可基于在此描述的技术而动态发生。

计算设备102具体化为说明性实施例中的网络物理设备或其他iot设备。然而,在其他实施例中,计算设备102可以具体化为能够执行在此描述的功能的任何类型的计算设备。例如,计算设备102可以具体化为智能设备、台式计算机、服务器、路由器、交换器、膝上型计算机、平板计算机、笔记本、上网本、超级笔记本tm、蜂窝电话、智能电话、可穿戴计算设备、个人数字助理、移动互联网设备、混合设备、和/或任何其他计算/通信设备。如图1所示,说明性计算设备102包括处理器110、输入/输出(“i/o”)子系统112、存储器114、和通信电路116。在一些实施例中,计算设备102还可以包括一个或多个外围设备118。另外,如在此描述的,计算设备102的部件中的一个或多个部件可以形成计算设备102的可信执行环境210(参见图2)的一部分或者在所述计算设备的所述可信执行环境内被执行。当然,在其他实施例中,计算设备102可以包括其他或附加的部件,诸如在典型的计算设备中常见的那些部件(例如,各种输入/输出设备和/或其他部件)。另外,在一些实施例中,这些说明性部件中的一个或多个部件可以结合在另一部件中、或者以其他方式可以形成另一部件的一部分。例如,在一些实施例中,存储器114或其多个部分可以结合在处理器110中。

处理器110可以具体化为能够执行在此所描述的功能的任何类型的处理器。例如,处理器110可以具体化为(多个)单核或多核处理器、数字信号处理器、微控制器、或其他处理器或处理/控制电路。类似地,存储器114可以具体化为能够执行在此所描述的功能的任何类型的易失性或非易失性存储器或数据存储设备。在操作中,存储器114可以存储在计算设备102的操作过程中所使用的各种数据和软件,如操作系统、应用、程序、函数库、和驱动程序。如示出的,在说明性实施例中,处理器110包括一个或多个可信执行环境(tee)支持120,所述一个或多个可信执行环境支持可以由计算设备102在建立可信执行环境210时使用。应当认识到的是,在一些实施例中,tee支持120为可信执行环境210提供硬件增强安全。虽然处理器110中说明性地示出了tee支持120,但是在一些实施例中,计算设备102的其他部件中的一个或多个部件可以包括tee支持120。进一步地,在一些实施例中,计算设备102可以包括安全引擎或安全协处理器,所述安全引擎或安全协处理器被配置成用于利用tee支持120和/或建立可信执行环境210。

如示出的,在说明性实施例中,存储器114包括安全存储器122的一部分。在一些实施例中,安全存储器122可以具体化为存储器114的安全分区,而在其他实施例中,安全存储器122可以具体化或包括在单独的硬件部件上。如在此描述的,安全存储器122可以存储配设给计算设备102的各种数据。例如,安全存储器122可以存储由芯片组的制造商和/或可信执行环境210配设的计算设备102的私有直接匿名证明(daa)密钥。如下所述,daa密钥可以与适合用于执行在此描述的功能的任何一到多密码算法相关联。例如,在一些实施例中,daa密钥可以具体化为增强隐私标识(epid)密钥。在一些实施例中,daa私钥被“烧录”到安全存储器122中并且daa组公钥凭借证书机构或网站被传输至计算设备102的购买者。安全存储器122还可以存储此处例如由计算设备102的原始设备制造商(oem)配设的计算设备102的密码、pin、或其他唯一标识符。当然,安全存储器122可以取决于具体实施例而存储各种其他数据(例如,daa组名、设备标识符、白名单、预期pin值等)。在一些实施例中,所配设的数据存储在安全存储器122的只读存储器中。在说明性实施例中,安全存储器122在向安全存储器122配设数据之后不做细微修改。

存储器114经由i/o子系统112通信地耦合至处理器110,i/o子系统可以具体化为用于促进与计算设备102的处理器110、存储器114、以及其他部件的输入/输出操作的电路和/或部件。例如,i/o子系统112可以具体化为、或可以其他方式包括用于促进输入/输出操作的存储器控制器中枢、输入/输出控制中枢、固件设备、通信链路(即,点到点链路、总线链路、线、电缆、光导、印刷电路板迹线等)和/或其他部件和子系统。在一些实施例中,i/o子系统112可以形成片上系统(soc)的一部分并且可以与计算设备102的处理器110、存储器114以及其他部件一起结合在单个集成电路芯片上。

通信电路116可以具体化为能够使能通过网络104在计算设备102与其他远程设备之间实现通信的任何通信电路、设备或其集合(例如,计算设备106)。通信电路116可以被配置成用于使用任何一种或多种通信技术(例如,无线或有线通信)以及相关联的协议(例如,以太网、wimax等)来实现这种通信。

外围设备118可以包括任何数量的附加外围设备或接口设备,诸如扬声器、麦克风、附加存储设备等等。包括在外围设备118中的具体设备可以取决于例如计算设备102的类型和/或预期用途。

网络104可以具体化为能够促进计算设备102与计算设备106之间的通信的任何类型的通信网络。这样,网络104可以包括一个或多个网络、路由器、交换机、计算机、和/或其他中间设备。例如,网络104可以具体化为或者以其他方式包括一个或多个蜂窝网络、电话网络、局域网或广域网、公共可用全球网络(例如,互联网)、自组织网络或其任何组合。

计算设备106可以具体化为能够执行在此所描述的功能的任何计算设备。如以上所指示的,在说明性实施例中,计算设备102具体化为网络物理设备或其他iot设备。然而,在其他实施例中,计算设备106可以具体化智能设备、蜂窝电话、智能电话、可穿戴计算设备、个人数字助理、移动互联网设备、膝上型计算机、平板计算机、笔记本、上网本、超级笔记本tm、台式计算机、服务器、路由器、交换器、混合设备、和/或任何其他计算/通信设备。

如图1所示,说明性计算设备106包括处理器150、输入/输出(“i/o”)子系统152、存储器154、和通信电路156。另外,在一些实施例中,计算设备106包括一个或多个外围设备158、处理器150包括tee支撑件160、和/或存储器154包括安全存储器162。进一步地,在一些实施例中,计算设备106的部件中的一个或多个部件可以形成可信执行环境的一部分或者以其他方式在所述可信执行环境内被执行。当然,在其他实施例中,计算设备106可以包括其他或附加的部件,诸如在典型的计算设备中常见的那些部件(例如,各种输入/输出设备和/或其他部件)。另外,在一些实施例中,这些说明性部件中的一个或多个部件可以结合在另一部件中、或者以其他方式可以形成另一部件的一部分。在一些实施例中,计算设备106的部件类似于以上所述的计算设备102的相应部件。这样,出于描述的清晰性,在此不对那些部件的描述进行重复。

现在参考图2,在使用中,计算设备102、106中的每个计算设备建立用于进行可信设备登记的环境200。计算设备102的说明性环境200包括发现模块202、连接处理模块204、协议执行模块206、和通信模块208。环境200的各个模块可以具体化为硬件、软件、固件或其组合。例如,环境200的各个模块、逻辑和其他部件可以形成计算设备102的处理器110或其他硬件部件的一部分或者以其他方式由所述计算设备的所述处理器或所述其他硬件部件来建立。这样,在一些实施例中,环境200的模块中的一个或多个模块可以具体化为电子设备的电路或集合(例如,发现电路、连接处理电路、协议执行电路、和/或通信电路)。另外,在一些实施例中,说明性模块中的一个或多个说明性模块可以形成另一个模块的一部分和/或说明性模块中的一个或多个说明性模块可以具体化为单独或独立的模块。进一步地,在一些实施例中,可以在可信执行环境210内建立环境200的模块中的一个或多个模块。

发现模块202被配置成用于处理对计算设备102、106的存在进行注册和广播。另外,发现模块202试图发现可例如取得计算设备102、106的所有权的其他计算设备102、106(例如,附近的计算设备)。例如,在一些实施例中,发现模块202允许新连接至用户的本地网络的计算设备102、106对其自身进行广播,从而使得先前连接的计算设备102、106可取得新计算设备102、106的所有权。应当认识到的是,发现模块202可以利用用于执行在此所描述的功能的任何合适的算法、技术、和/或机制。

连接处理模块204处理计算设备102、106与远程计算设备之间的通信连接。例如,在说明性实施例中,连接处理模块204可以开启与另一发现的计算设备102、106的通信连接并且随后关闭那个通信连接(例如,在执行安全密钥交换并建立所有权时)。

协议执行模块206被配置成用于执行各种功能以用于执行在此描述的(多个)协议。具体地,在说明性实施例中,协议执行模块206执行实施在此描述的安全密钥交换所需的功能。这样,协议执行模块206被配置成用于实施与执行迪菲-赫尔曼(diffie-hellman)密钥交换和/或相关操作(例如,素数选择、原根选择、模算术等)相关联的各种操作。进一步地,协议执行模块206可以执行各种安全相关的功能(例如,证明和密码)。例如,协议执行模块206可以生成散列(例如,带密钥的散列、mac、截断hmac、和/或其他伪随机函数)、执行密码签名(例如,基于daa的签名)、和/或执行其他安全相关的功能。

通信模块208通过网络104处理计算设备102、106与远程设备(例如,其他计算设备102、106)之间的通信。例如,如在此描述的,通信模块208传输并接收与设备发现、连接管理(开启/关闭连接)、以及如在此描述的安全密钥交换相关联的消息。

可信执行环境210可以具体化为能够为计算设备102建立安全且可信的执行环境并且以其他方式执行在此描述的功能的任何(多个)部件或电路。在一些实施例中,可信执行环境210可以(例如,经由tee支持120)使用安全飞地(sgx)、融合式安全引擎(cse)、和/或任何其他合适的工艺/技术“被加固”。

现在参考图3,在使用中,计算设备102可以执行用于进行可信设备登记的方法300。应当认识到的是,在此关于计算设备102(即设备a)与计算设备106(即设备b)之间的通信对方法300进行描述。说明性方法300以框302开始,在所述框中,计算设备102注册并向其他计算设备(例如,在与计算设备102相同的网络附近或内的计算设备)广播计算设备102的存在。应当认识到的是,计算设备102可以使用任何合适的算法、技术、和/或机制来注册和/或广播其存在。

在框304中,计算设备102试图发现可例如取得计算设备102的所有权的其他计算设备(例如,附近的计算设备)。在方框306中,计算设备102判定是否已经发现了另一计算设备106。若是,则计算设备102在框308中开启与所发现的计算设备106的通信连接。

在框310中,计算设备102与计算设备106执行安全密钥交换。为了这样做,计算设备102可以执行如以下操作图4至图5所描述的方法400。当然,在其他实施例中,计算设备102可以使用任何合适的技术来执行安全密钥交换。如在此描述的,在一些实施例中,安全密钥交换协议可以被配置成用于使用网络物理设备的小的最大传输单元(mtu)尺寸以及有限的计算能力。在一些实施例中,安全密钥交换协议是双向无线(ota)所有权取得协议,所述双向无线所有权取得协议涉及:交换和验证两个计算设备102与106之间的唯一设备标识符;交换和验证计算设备102、106的组(daa)从属关系;以及执行对计算设备102、106的环境的证明。进一步地,在一些实施例中,安全密钥交换建立计算设备102、106中的每个计算设备的所有权。在框312中,计算设备102可以关闭与计算设备106的连接。进一步地,计算设备102可以利用在安全密钥交换过程中生成的密钥(例如,对称密钥)以用于各种其他功能(例如,用于配设其他服务/凭证、开启不同的会话等)。

现在参考图4至图5,在使用中,计算设备102可以执行用于与计算设备106执行安全密钥交换的方法400。在说明性实施例中,通过完成安全密钥交换协议(假设所述协议不终止),计算设备102、106将就协议的实例、参加所述协议的实例的多方、以及所述多方所属的(多个)组达成一致。进一步地,在一些实施例中,计算设备102、106可以得到一个或多个会话密钥以及一个会话标识符,所述会话标识符唯一地标识具有高可能性的协议实例。在一些实施例中,安全密钥交换可以并入到现有的基础设施中,诸如例如数据报传输层安全(dtls)和/或可扩展认证协议(eap)。

说明性方法400以图4的框402开始,在所述框中,计算设备102判定是否执行安全密钥交换。若是,则计算设备102在框404中确定计算设备102的私有迪菲-赫尔曼(dh)密钥a。应当认识到的是,可以在所选择的素数模数下执行dh密钥和/或在此描述的其他计算(即经由模算术)。进一步地,在选择私有dh密钥a时,计算设备102可以选择随机整数位或n-位序列(对所选择的素数求模)。

在框406中,计算设备102基于私有dh密钥a为计算设备102生成公共dh密钥ga。在这样做时,应当认识到的是,原根g是所选择的素数模数下的阿贝尔群的生成器并且在安全密钥交换协议过程中由计算设备102、106两者利用。计算设备102、106可以利用任何合适的技术来就用于算法的具体原根和素数达成一致。

在框408中,计算设备102可以修改私有dh密钥以便包括唯一标识符,诸如例如pin、密码、序列号、或其他唯一标识符。如以上所指示的,唯一标识符可以例如在制造计算设备102的过程中(例如,由oem)被配设到计算设备102的安全存储器122中。在说明性实施例中,唯一标识符对于特定设备是唯一的,对于所述特定设备,所述唯一标识符被配设并且可以经由带外通信信道被单独分配(例如,分配给购买客户)。在一些实施例中,唯一标识符印制在产品包装和/或计算设备102自身上以用于验证所有权。取决于具体实施例,可以从安全存储器122中检索(例如,由计算设备102的可信执行环境210)或者由计算设备102的用户输入(例如,经由用户界面)唯一标识符。在说明性实施例中,计算设备102通过将唯一标识符p1并入到公共dh密钥(参见例如图6的子流程602)中来修改公共dh密钥ga。具体地,计算设备102生成经修改的公共dh密钥作为ga+p1(例如,根据ga+p1=gagp1或者通过第一计算a+p1)。应当认识到是,在一些实施例中,p1为唯一标识符自身,而在其他实施例中,p1为唯一标识符的散列(例如,密码散列),其也是唯一的。

在框410中,计算设备102将公共dh密钥传输至计算设备106。具体地,在框412中,计算设备102可以传输经修改的公共dh密钥ga+p1(参见例如图6的子流程604)。在其他实施例中,计算设备102可以传输未经修改的公共dh密钥ga(例如,如果未使用唯一标识符和/或以其他方式使用所述唯一标识符)。在一些实施例中,例如,参加动态网络形成的计算设备102、106的用户可以在带外使用合适的技术、算法、和/或机制来传送唯一标识符(例如,pin、公共dh密钥等)。例如,在一些实施例中,可以凭借振动触觉致动器以及用于接收唯一标识符的加速度计来在带外传送唯一标识符(例如,被编码为振动模式)。在另一实施例中,可以通过低音量超声波扬声器来传送唯一标识符并且利用适合用于感测所输出的音频的麦克风来接收所述唯一标识符。在又另一实施例中,安全印刷介质(包括包含在设备包装中的qr印刷代码或新设备中的显示能力)可以用于传送(多个)唯一标识符。在一些实施例中,可以建立体域网,并且新设备和用户设备上的触摸电容界面可以用于传送(多个)唯一标识符。在又另一实施例中,计算设备102、106可以包括近场通信(nfc)电路(诸如例如nfc天线和nfc读取器),所述近场通信电路可以用于在带外传送(多个)唯一标识符。

如由图4的“双波浪”符号指示的,例如,计算设备102可以等待,同时计算设备106执行与安全密钥交换协议相关联的各种操作。例如,如由图6的子流程606描绘的,取决于具体实施例,计算设备106可以验证公共dh密钥ga或经修改的公共dh密钥ga+p1实际上是由g生成的阿贝尔群的成员(例如,用于确保尚未发生错误或恶意攻击)。进一步地,计算设备106可以执行与由计算设备102执行的以及在图4的框404-412中描述的那些操作相似的操作。具体地,计算设备106可以为计算设备106选择私有dh密钥b并且生成公共dh密钥gb和/或经修改的公共dh密钥gb+p2(即基于计算设备106的唯一标识符p2)。取决于具体实施例,计算设备106将公共dk密钥gb或经修改的公共dh密钥gb+p2传输至计算设备102。

在框414中,计算设备102接收计算设备106的公共dh密钥。如以上所指示的,在框416中,计算设备106可以接收计算设备106的经修改的公共dh密钥gb+p2(参见例如图6的子流程608)。在其他实施例中,计算设备102接收计算设备106的未经修改的公共dh密钥gb。进一步地,在一些实施例中,计算设备102验证公共dh密钥或经修改的公共dh密钥是由g生成的阿尔贝群中的成员,如上所述。另外,在一些实施例中,计算设备102可以确认计算设备106的公共dh密钥不等于计算设备102的公共dh密钥(即ga≠gb)和/或计算设备106的经修改的公钥不等于计算设备102的经修改的公钥(即ga+p1≠gb+p2)。

在框418中,计算设备102可以基于计算设备106的经修改的公共dh密钥gb+p2以及计算设备106的唯一标识符p2的已知值来确定计算设备106的公共dh密钥gb。如以上所指示的,在一些实施例中,可以在带外通信信道上检索唯一标识符的已知值。然而,应当认识到的是,在其他实施例中,可以使用任何其他适合的技术来检索和/或确定唯一标识符的已知值。基于检索出的唯一标识符的已知值,计算设备102可以根据gb=gb+p2/gp2计算公共dh密钥gb。在框420中,计算设备102基于计算设备102的私有dh密钥a以及计算设备106的公共dh密钥gb生成共享dh密钥。具体地,在说明性实施例中,计算设备102根据gab=(gb)a生成共享dh密钥gab

在框422中,计算设备102基于共享dh密钥、计算设备102的daa组、和/或计算设备102的公共dh密钥生成带密钥的散列(参见例如图6的子流程610)。应当认识到的是,可以根据任何合适的散列算法来生成带密钥的散列。在说明性实施例中,计算设备102基于伪随机函数prf(k,x)使用密钥k在数据x上生成带密钥的散列。例如,在一些实施例中,伪随机函数可以被实现为截断hmac(例如,hmac-sha256)或aes-cmac算法。具体地,可以根据ta=prf(ak,ga||组a)生成带密钥的散列ta,其中,组a为计算设备102所属的daa组(例如,计算设备102的epid组)的标识符,ak=prf(dk,1),以及dk=prf(0,gab)或dk=prf(p1,gab)。在唯一标识符并入到公共dh密钥中的实施例中,应当认识到的是,计算设备102可以根据ta=prf(ak,ga+p1||组a)生成带密钥的散列。

在一些实施例中,计算设备102响应于生成带密钥的散列而检测私有dh密钥a和/或共享dh密钥gab(例如,用于提供前向保密性)。应当认识到的是,带密钥的散列可以用于证明计算设备102的确是协议的发起者和/或用于将协议实例绑定至由计算设备102的daa组限定的从属关系。

在图5的框424中,计算设备102将计算设备102的公共dh密钥(或者经修改的公共dh密钥)、daa组标识符、和/或带密钥的散列传输至计算设备106(参见例如图6的子流程612)。例如,取决于具体实施例,计算设备102可以将消息ga||组a||ta或ga+p1||组a||ta传输至计算设备106。

如由图5的框424之下的“双波浪”符号指示的,例如,计算设备102可以等待,同时计算设备106执行与安全密钥交换协议相关联的各种操作。例如,如由图6的子流程614描绘的,计算设备106可以验证接收的公共dh密钥、daa组、和/或带密钥的散列。具体地,计算设备106可以确认计算设备102的公共dh密钥ga或ga+p1与在先前通信中接收的公共dh密钥相匹配。进一步地,计算设备106可以验证组a对具有已知或可访问的公共daa密钥的daa组进行标识(例如,验证其是有效的epid组)。另外,计算设备106可以重新计算带密钥的散列以便确认传输数据的完整性。另外,计算设备106可以执行与由计算设备102执行的以及在图4至图5的框420-424中描述的那些操作相似的操作。具体地,计算设备106可以根据gab=(ga)b生成共享dh密钥gab。进一步地,取决于具体实施例,计算设备可以根据tb=prf(ak,gb||组b)或tb=prf(ak,gb+p2||组b)生成带密钥的散列tb,其中,组b为计算设备102所属的daa组的标识符,如上所述。另外,取决于具体实施例,计算设备106可以将消息gb||组b||tb或gb+p2||组b||tb传输至计算设备102(参见例如图6的子流程616)。

在框426中,计算设备102接收计算设备106的公共dh密钥(或者经修改的公共dh密钥)、daa组标识符、和/或带密钥的散列。在框428中,计算设备102验证计算设备106的所述接收的公共dh密钥(或者经修改的公共dh密钥)、所述daa组标识符、和/或所述带密钥的散列。在这样做时,计算设备102可以确认计算设备106的公共dh密钥gb或gb+p2与在先前通信中接收的公共dh密钥相匹配。进一步地,计算设备102可以验证组b对具有已知或可访问的公共daa密钥的daa组进行标识。应当认识到的是,在一些实施例中,计算设备102的daa组可以不同于计算设备106的daa组。另外,计算设备102可以重新计算带密钥的散列以便确认传输数据的完整性。

在框430中,计算设备102基于计算设备102的私有daa密钥生成计算设备102、106的公共dh密钥的密码签名。应当认识到的是,可以使用任何合适的密码算法来生成所述签名,并且计算设备102可以基于与其特定daa组相关联的计算设备102的私有daa密钥(例如,私有epid密钥)在数据y上生成签名签名a(y,daa组)。具体地,计算设备102可以根据siga=签名a(ga||gb||v,组a)生成签名siga,其中,v=prf(dk,2)。在一些实施例中,在框432中,计算设备102可以在生成的签名中包括证明摘要。例如,如由图6的子流程618描绘的,计算设备102可以根据siga=签名a(ga||gb||v||da,组a)生成签名,其中,da为计算设备102的证明摘要。应当认识到的是,可以由计算设备102的可信执行环境210基于例如对计算设备102的各部件和/或功能进行测量来生成证明摘要(例如,在引导过程期间)。这样,证明摘要可以用作计算设备102的完整性数据,所述完整性数据可以通过另一计算设备与计算设备102的预期证明数据进行比较(例如,经由公布的摘要值)。更具体地,证明摘要可以被计算为计算设备102的加载的或当前执行的代码/数据的软件、固件、和/或设置值的散列。在一些实施例中,属于特定daa组的计算设备中的每个计算设备的证明摘要是相同的。在框434中,计算设备102将生成的签名和/或证明摘要传输至计算设备106(参见例如图6的子流程620)。

如由图5的框434之下的“双波浪”符号指示的,例如,计算设备102可以等待,同时计算设备106执行与安全密钥交换协议相关联的各种操作。例如,如由图6的子流程622描绘的,计算设备106可以使用计算设备102的daa组的验证密钥(例如,相应的公共daa密钥或者更具体地,相应的公共epid密钥)来验证签名。另外,计算设备106可以检索计算设备102的预期摘要值并且将预期摘要与从计算设备102接收的证明摘要进行比较。若存在匹配,则计算设备106可以推断出计算设备102的部件/功能尚未被篡改。另外,计算设备106可以执行与由计算设备执行的以及在图6的框430-434中描述的那些操作相似的操作。具体地,计算设备106可以生成签名sigb和/或证明摘要db,并且将其传输至计算设备102(参见例如图6的子流程624)。例如,在一些实施例中,取决于是否包括证明摘要,计算设备106根据sigb=signb(ga||gb||v,组b)或sigb=signb(ga||gb||v||db,组b)来生成签名sigb。这样,在框436中,计算设备102接收计算设备106的签名。具体地,在框438中,计算设备102可以接收包括如上所述的计算设备106的证明摘要的签名。

在框440中,计算设备102可以验证计算设备106的证明摘要db。在一些实施例中,计算设备102基于例如计算设备106的daa组检索计算设备106的预期摘要值并且将预期摘要与从计算设备106接收的证明摘要进行比较。若存在匹配,则计算设备106可以推断出计算设备102的部件/功能尚未被篡改,如上所述。在框442中,计算设备102使用计算设备106的daa组的验证密钥来验证计算设备106的签名(参见例如图6的子流程626)。例如,在计算设备102、106属于一个或多个epid组的实施例中,计算设备102、106的私有epid密钥可以用于执行签名,从而使得相应的公共epid密钥可以用于验证签名。

在框444中,计算设备102和/或计算设备106可以基于在执行安全密钥交换协议过程中生成的数据的散列生成会话密钥和/或会话标识符。例如,可以基于共享dh密钥生成会话密钥和/或可以基于公共dh密钥和daa组标识符生成会话标识符。具体地,在一些实施例中,基于合适的散列算法(例如,密码散列算法),可以根据sk=prf(ak,3)生成会话密钥sk,并且可以根据sid=散列(ga||gb||组a||组b)生成会话标识符sid。在一些实施例中,可以响应于生成会话密钥而删除ak和dk(例如,用于提供前向保密性)。

应当认识到的是,在一些实施例中,在方法400中使用的基于daa的签名可以用常规签名来代替。在这种实施例中,计算设备102的带密钥的散列(例如,ta=prf(ak,ga||组a))可以用ta=prf(ak,ga||ida)来代替,其中,ida为计算设备102的唯一标识符,并且其他带密钥的散列可以类似地被代替。进一步地,可以基于常规的签名密钥而非daa密钥来执行在此描述的签名。

示例

以下提供了在本文中所公开的技术的说明性示例。所述技术的实施例可以包括以下所描述的示例中的任何一个或多个示例及其任何组合。

示例1包括一种用于进行可信设备登记的第一计算设备,所述第一计算设备包括:协议执行模块,所述协议执行模块用于基于所述第一计算设备的私有迪菲-赫尔曼密钥和第一唯一标识符生成第一公共迪菲-赫尔曼密钥,其中,所述第一唯一标识符是从所述第一计算设备的安全存储器中检索的;以及通信模块,所述通信模块用于:(i)将所述第一公共迪菲-赫尔曼密钥传输至第二计算设备;以及(ii)从所述第二计算设备接收所述第二计算设备的第二公共迪菲-赫尔曼密钥,其中,所述第二公共迪菲-赫尔曼密钥结合了所述第二计算设备的第二唯一标识符,其中,所述协议执行模块进一步用于:(i)从所述第二公共迪菲-赫尔曼密钥中去除所述第二唯一标识符的贡献以便生成经修改的公共迪菲-赫尔曼密钥;以及(ii)基于所述经修改的公共迪菲-赫尔曼密钥以及所述第一计算设备的所述私有迪菲-赫尔曼密钥生成共享迪菲-赫尔曼密钥。

示例2包括如示例1所述的主题,并且其中,去除所述第二唯一标识符的所述贡献包括:根据gb=gb+p/gp生成所述经修改的公共迪菲-赫尔曼密钥,其中,gb为所述经修改的公共迪菲-赫尔曼密钥;gb+p为所述第二公共迪菲-赫尔曼密钥;并且p为所述第二唯一标识符。

示例3包括如示例1和2中任一项所述的主题,并且其中,所述协议执行模块进一步用于在带外通信信道上检索所述第二计算设备的已知标识符;并且其中,所述已知标识符是所述第二唯一标识符。

示例4包括如示例1至3中任一项所述的主题,并且其中,生成所述共享迪菲-赫尔曼密钥包括:根据gab=(gb)a生成所述共享迪菲-赫尔曼密钥,其中,a为所述第一计算设备的所述私有迪菲-赫尔曼密钥。

示例5包括如示例1至4中任一项所述的主题,并且其中,所述协议执行模块进一步用于基于所述共享迪菲-赫尔曼密钥、所述第一计算设备的第一直接匿名证明组标识符、以及所述第一公共迪菲-赫尔曼密钥生成第一带密钥的散列;并且其中,所述通信模块进一步用于将所述第一公共迪菲-赫尔曼密钥、所述第一直接匿名证明组标识符、以及所述第一带密钥的散列传输至所述第二计算设备。

示例6包括如示例1至5中任一项所述的主题,并且其中,所述第一直接匿名证明组标识符包括增强隐私标识(epid)组名。

示例7包括如示例1至6中任一项所述的主题,并且其中,所述通信模块进一步用于从所述第二计算设备接收第二直接匿名证明组标识符和第二带密钥的散列;并且其中,所述协议执行模块进一步用于验证所述第二直接匿名证明组标识符和所述第二带密钥的散列。

示例8包括如示例1至7中任一项所述的主题,并且其中,所述第二直接匿名证明组标识符包括增强隐私标识(epid)组名。

示例9包括如示例1至8中任一项所述的主题,并且其中,验证所述第二直接匿名证明组标识符包括:验证所述第二直接匿名证明组标识符标识了具有已知公钥的直接匿名证明组。

示例10包括如示例1至9中任一项所述的主题,并且其中,所述协议执行模块进一步用于基于所述第一计算设备的私有直接匿名证明密钥生成所述第一公共迪菲-赫尔曼密钥和所述第二公共迪菲-赫尔曼密钥的第一签名;并且其中,所述通信模块进一步用于将所述第一签名传输至所述第二计算设备。

示例11包括如示例1至10中任一项所述的主题,并且其中,所述第一签名包括基于所述第一计算设备的所述私有直接匿名证明密钥的所述第一公共迪菲-赫尔曼密钥和所述第二公共迪菲-赫尔曼密钥的第一签名以及所述第一计算设备的第一证明摘要。

示例12包括如示例1至11中任一项所述的主题,并且其中,所述通信模块进一步用于从所述第二计算设备接收所述第二计算设备的第二签名;并且其中,所述通信模块进一步用于基于与所述第二直接匿名证明组标识符相对应的公钥来验证所述第二签名。

示例13包括如示例1至12中任一项所述的主题,并且其中,所述公钥包括与所述第二计算设备的公共增强隐私标识(epid)组相对应的epid密钥。

示例14包括如示例1至13中任一项所述的主题,并且其中,所述第二签名包括所述第一公共迪菲-赫尔曼密钥和所述第二迪菲-赫尔曼密钥的第二签名以及所述第二计算设备的第二证明摘要。

示例15包括如示例1至14中任一项所述的主题,并且其中,验证所述第二签名包括:验证所述第二证明摘要与具有所述第二直接匿名证明组标识符的计算设备的预期证明摘要相对应。

示例16包括如示例1至15中任一项所述的主题,并且其中,所述协议执行模块进一步用于基于所述共享迪菲-赫尔曼密钥生成会话密钥;以及基于所述第一公共迪菲-赫尔曼密钥、所述第二公共迪菲-赫尔曼密钥、所述第一直接匿名证明组标识符、以及所述第二直接匿名证明组标识符生成会话标识符。

示例17包括如示例1至16中任一项所述的主题,并且进一步包括:发现模块,所述发现模块用于:(i)向附近的计算设备广播所述第一计算设备的存在;以及(ii)发现所述第二计算设备;以及连接处理模块,所述连接处理模块用于开启至所述第二计算设备的通信连接,其中,生成所述第一公共迪菲-赫尔曼密钥包括响应于开启所述通信连接而生成所述第一公共迪菲-赫尔曼密钥。

示例18包括如示例1至17中任一项所述的主题,并且其中,传输所述第一公共迪菲-赫尔曼密钥包括:在带外通信信道上将所述第一公共迪菲-赫尔曼密钥传输至所述第二计算设备。

示例19包括如示例1至18中任一项所述的主题,并且进一步包括振动触觉致动器,其中,传输所述第一公共迪菲-赫尔曼密钥包括经由所述振动触觉致动器传输所述第一公共迪菲-赫尔曼密钥,并且其中,由所述第二计算设备的加速度计接收对所述第一公共迪菲-赫尔曼密钥的传输。

示例20包括如示例1至19中任一项所述的主题,并且进一步包括低音量超声波扬声器,其中,传输所述第一公共迪菲-赫尔曼密钥包括使用所述低音量超声波扬声器传输所述第一公共迪菲-赫尔曼密钥,并且其中,由所述第二计算设备的扬声器接收对所述第一公共迪菲-赫尔曼密钥的传输。

示例21包括如示例1至20中任一项所述的主题,并且其中,传输所述第一公共迪菲-赫尔曼密钥包括基于安全印刷介质来传输所述第一公共迪菲-赫尔曼密钥,所述安全印刷介质包括指示所述第一唯一标识符的快速响应(qr)码。

示例22包括如示例1至21中任一项所述的主题,并且其中,传输所述第一公共迪菲-赫尔曼密钥包括:在体域网上并使用所述第一计算设备的触摸电容界面来传输所述第一公共迪菲-赫尔曼密钥。

示例23包括如示例1至22中任一项所述的主题,并且进一步包括近场通信电路,其中,传输所述第一公共迪菲-赫尔曼密钥包括:由所述近场通信电路在所述第一计算设备与所述第二计算设备之间建立的近场通信信道上传输所述第一公共迪菲-赫尔曼密钥。

示例24包括一种用于进行可信设备登记的方法,所述方法包括:由第一计算设备基于所述第一计算设备的私有迪菲-赫尔曼密钥和第一唯一标识符生成第一公共迪菲-赫尔曼密钥,其中,所述第一唯一标识符是从所述第一计算设备的安全存储器中检索的;由所述第一计算设备将所述第一公共迪菲-赫尔曼密钥传输至第二计算设备;由所述第一计算设备从所述第二计算设备接收所述第二计算设备的第二公共迪菲-赫尔曼密钥,其中,所述第二公共迪菲-赫尔曼密钥结合了所述第二计算设备的第二唯一标识符;由所述第一计算设备从所述第二公共迪菲-赫尔曼密钥中去除所述第二唯一标识符的贡献以便生成经修改的公共迪菲-赫尔曼密钥;以及由所述第一计算设备基于所述经修改的公共迪菲-赫尔曼密钥以及所述第一计算设备的所述私有迪菲-赫尔曼密钥生成共享迪菲-赫尔曼密钥。

示例25包括如示例24所述的主题,并且其中,去除所述第二唯一标识符的所述贡献包括:根据gb=gb+p/gp生成所述经修改的公共迪菲-赫尔曼密钥,其中,gb为所述经修改的公共迪菲-赫尔曼密钥;gb+p为所述第二公共迪菲-赫尔曼密钥;并且p为所述第二唯一标识符。

示例26包括如示例24和25中任一项所述的主题,并且进一步包括:在带外通信信道上检索所述第二计算设备的已知标识符,其中,所述已知标识符为所述第二唯一标识符。

示例27包括如示例24至26中任一项所述的主题,并且其中,生成所述共享迪菲-赫尔曼密钥包括:根据gab=(gb)a生成所述共享迪菲-赫尔曼密钥,其中,a为所述第一计算设备的所述私有迪菲-赫尔曼密钥。

示例28包括如示例24至27中任一项所述的主题,并且进一步包括:由所述第一计算设备基于所述共享迪菲-赫尔曼密钥、所述第一计算设备的第一直接匿名证明组标识符、以及所述第一公共迪菲-赫尔曼密钥生成第一带密钥的散列;以及由所述第一计算设备将所述第一公共迪菲-赫尔曼密钥、所述第一直接匿名证明组标识符、以及所述第一带密钥的散列传输至所述第二计算设备。

示例29包括如示例24至28中任一项所述的主题,并且其中,所述第一直接匿名证明组标识符包括增强隐私标识(epid)组名。

示例30包括如示例24至29中任一项所述的主题,并且进一步包括:由所述第一计算设备从所述第二计算设备接收第二直接匿名证明组标识符和第二带密钥的散列;以及由所述第一计算设备验证所述第二直接匿名证明组标识符和所述第二带密钥的散列。

示例31包括如示例24至30中任一项所述的主题,并且其中,所述第二直接匿名证明组标识符包括增强隐私标识(epid)组名。

示例32包括如示例24至31中任一项所述的主题,并且其中,验证所述第二直接匿名证明组标识符包括:验证所述第二直接匿名证明组标识符对具有已知公钥的直接匿名证明组进行标识。

示例33包括如示例24至32中任一项所述的主题,并且进一步包括:由所述第一计算设备基于所述第一计算设备的私有直接匿名证明密钥生成所述第一公共迪菲-赫尔曼密钥和所述第二公共迪菲-赫尔曼密钥的第一签名;以及由所述第一计算设备将所述第一签名传输至所述第二计算设备。

示例34包括如示例24至33中任一项所述的主题,并且其中,生成所述第一签名包括:基于所述第一计算设备的所述私有直接匿名证明密钥生成所述第一公共迪菲-赫尔曼密钥和所述第二公共迪菲-赫尔曼密钥的第一签名以及所述第一计算设备的第一证明摘要。

示例35包括如示例24至34中任一项所述的主题,并且进一步包括:由所述第一计算设备从所述第二计算设备接收所述第二计算设备的第二签名;以及由所述第一计算设备基于与所述第二直接匿名证明组标识符相对应的公钥来验证所述第二签名。

示例36包括如示例24至35中任一项所述的主题,并且其中,所述公钥包括与所述第二计算设备的公共增强隐私标识(epid)组相对应的epid密钥。

示例37包括如示例24至36中任一项所述的主题,并且其中,接收所述第二签名包括:接收所述第一公共迪菲-赫尔曼密钥和所述第二迪菲-赫尔曼密钥的第二签名以及所述第二计算设备的第二证明摘要。

示例38包括如示例24至37中任一项所述的主题,并且其中,验证所述第二签名包括:验证所述第二证明摘要与具有所述第二直接匿名证明组标识符的计算设备的预期证明摘要相对应。

示例39包括如示例24至38中任一项所述的主题,并且进一步包括:由所述第一计算设备基于所述共享迪菲-赫尔曼密钥生成会话密钥;以及由所述第一计算设备基于所述第一公共迪菲-赫尔曼密钥、所述第二公共迪菲-赫尔曼密钥、所述第一直接匿名证明组标识符、以及所述第二直接匿名证明组标识符生成会话标识符。

示例40包括如示例24至39中任一项所述的主题,并且进一步包括:由所述第一计算设备向附近的计算设备广播所述第一计算设备的存在;由所述第一计算设备发现所述第二计算设备;以及由所述第一计算设备开启至所述第二计算设备的通信连接,其中,生成所述第一公共迪菲-赫尔曼密钥包括响应于开启所述通信连接而生成所述第一公共迪菲-赫尔曼密钥。

示例41包括如示例24至40中任一项所述的主题,并且其中,传输所述第一公共迪菲-赫尔曼密钥包括:在带外通信信道上将所述第一公共迪菲-赫尔曼密钥传输至所述第二计算设备。

示例42包括如示例24至41中任一项所述的主题,并且其中,传输所述第一公共迪菲-赫尔曼密钥包括:使用所述第一计算设备的振动触觉致动器来传输所述第一公共迪菲-赫尔曼密钥,其中,由所述第二计算设备的加速度计接收对所述第一公共迪菲-赫尔曼密钥的传输。

示例43包括如示例24至42中任一项所述的主题,并且其中,传输所述第一公共迪菲-赫尔曼密钥包括使用所述第一计算设备的低音量超声波扬声器来传输所述第一公共迪菲-赫尔曼密钥,其中,由所述第二计算设备的扬声器接收对所述第一公共迪菲-赫尔曼密钥的传输。

示例44包括如示例24至43中任一项所述的主题,并且其中,传输所述第一公共迪菲-赫尔曼密钥包括基于安全印刷介质来传输所述第一公共迪菲-赫尔曼密钥,所述安全印刷介质包括指示所述第一唯一标识符的快速响应(qr)码。

示例45包括如示例24至44中任一项所述的主题,并且其中,传输所述第一公共迪菲-赫尔曼密钥包括:在体域网上并使用所述第一计算设备的触摸电容界面来传输所述第一公共迪菲-赫尔曼密钥。

示例46包括如示例24至45中任一项所述的主题,并且其中,传输所述第一公共迪菲-赫尔曼密钥包括:在所述第一计算设备与所述第二计算设备之间建立的近场通信信道上传输所述第一公共迪菲-赫尔曼密钥。

示例47包括一种计算设备,所述计算设备包括:处理器;以及存储器,所述存储器具有存储于其中的多条指令,所述指令当被所述处理器执行时使所述计算设备执行如示例24至46中任一项所述的方法。

示例48包括一种或多种机器可读存储介质,所述一种或多种机器可读存储介质包括存储于其上的多条指令,所述指令响应于被计算设备执行而使所述计算设备执行如示例24至46中任一项所述的方法。

示例49包括一种用于进行可信设备登记的第一计算设备,所述第一计算设备包括:用于基于所述第一计算设备的私有迪菲-赫尔曼密钥和第一唯一标识符生成第一公共迪菲-赫尔曼密钥的装置,其中,所述第一唯一标识符是从所述第一计算设备的安全存储器中检索的;用于将所述第一公共迪菲-赫尔曼密钥传输至第二计算设备的装置;用于从所述第二计算设备接收所述第二计算设备的第二公共迪菲-赫尔曼密钥的装置,其中,所述第二公共迪菲-赫尔曼密钥结合了所述第二计算设备的第二唯一标识符;用于从所述第二公共迪菲-赫尔曼密钥中去除所述第二唯一标识符的贡献以便生成经修改的公共迪菲-赫尔曼密钥的装置;以及用于基于所述经修改的公共迪菲-赫尔曼密钥以及所述第一计算设备的所述私有迪菲-赫尔曼密钥生成共享迪菲-赫尔曼密钥的装置。

示例50包括如示例49所述的主题,并且其中,所述用于所述第二唯一标识符的所述贡献的装置包括:用于根据gb=gb+p/gp生成所述经修改的公共迪菲-赫尔曼密钥的装置,其中,gb为所述经修改的公共迪菲-赫尔曼密钥;gb+p为所述第二公共迪菲-赫尔曼密钥;并且p为所述第二唯一标识符。

示例51包括如示例49和50中任一项所述的主题,并且进一步包括:用于在带外通信信道上检索所述第二计算设备的已知标识符的装置,其中,所述已知标识符为所述第二唯一标识符。

示例52包括如示例49至51中任一项所述的主题,并且其中,所述用于生成所述共享迪菲-赫尔曼密钥的装置包括:用于根据gab=(gb)a生成所述共享迪菲-赫尔曼密钥的装置,其中,a为所述第一计算设备的所述私有迪菲-赫尔曼密钥。

示例53包括如示例49至52中任一项所述的主题,并且进一步包括:用于基于所述共享迪菲-赫尔曼密钥、所述第一计算设备的第一直接匿名证明组标识符、以及所述第一公共迪菲-赫尔曼密钥生成第一带密钥的散列的装置;以及用于将所述第一公共迪菲-赫尔曼密钥、所述第一直接匿名证明组标识符、以及所述第一带密钥的散列传输至所述第二计算设备的装置。

示例54包括如示例49至53中任一项所述的主题,并且其中,所述第一直接匿名证明组标识符包括增强隐私标识(epid)组名。

示例55包括如示例49至54中任一项所述的主题,并且进一步包括:用于从所述第二计算设备接收第二直接匿名证明组标识符和第二带密钥的散列的装置;以及用于验证所述第二直接匿名证明组标识符和所述第二带密钥的散列的装置。

示例56包括如示例49至55中任一项所述的主题,并且其中,所述第二直接匿名证明组标识符包括增强隐私标识(epid)组名。

示例57包括如示例49至56中任一项所述的主题,并且其中,所述用于验证所述第二直接匿名证明组标识符的装置包括:用于验证所述第二直接匿名证明组标识符对具有已知公钥的直接匿名证明组进行标识的装置。

示例58包括如示例49至57中任一项所述的主题,并且进一步包括:用于基于所述第一计算设备的私有直接匿名证明密钥生成所述第一公共迪菲-赫尔曼密钥的和所述第二公共迪菲-赫尔曼密钥的第一签名的装置;以及用于将所述第一签名传输至所述第二计算设备的装置。

示例59包括如示例49至58中任一项所述的主题,并且其中,所述用于生成所述第一签名的装置包括:用于基于所述第一计算设备的所述私有直接匿名证明密钥生成所述第一公共迪菲-赫尔曼密钥和所述第二公共迪菲-赫尔曼密钥的第一签名以及所述第一计算设备的第一证明摘要的装置。

示例60包括如示例49至59中任一项所述的主题,并且进一步包括:用于从所述第二计算设备接收所述第二计算设备的第二签名的装置;以及用于基于与所述第二直接匿名证明组标识符相对应的公钥来验证所述第二签名的装置。

示例61包括如示例49至60中任一项所述的主题,并且其中,所述公钥包括与所述第二计算设备的公共增强隐私标识(epid)组相对应的epid密钥。

示例62包括如示例49至61中任一项所述的主题,并且其中,所述用于接收所述第二签名的装置包括:用于接收所述第一公共迪菲-赫尔曼密钥和所述第二迪菲-赫尔曼密钥的第二签名以及所述第二计算设备的第二证明摘要的装置。

示例63包括如示例49至62中任一项所述的主题,并且其中,所述用于验证所述第二签名的装置包括:用于验证所述第二证明摘要与具有所述第二直接匿名证明组标识符的计算设备的预期证明摘要相对应的装置。

示例64包括如示例49至63中任一项所述的主题,并且进一步包括:用于基于所述共享迪菲-赫尔曼密钥生成会话密钥的装置;以及用于基于所述第一公共迪菲-赫尔曼密钥、所述第二公共迪菲-赫尔曼密钥、所述第一直接匿名证明组标识符、以及所述第二直接匿名证明组标识符生成会话标识符的装置。

示例65包括如示例49至64中任一项所述的主题,并且进一步包括:用于向附近的计算设备广播所述第一计算设备的存在的装置;用于发现所述第二计算设备的装置;以及用于开启至所述第二计算设备的通信连接的装置,其中,所述用于生成所述第一公共迪菲-赫尔曼密钥的装置包括:用于响应于开启所述通信连接而生成所述第一公共迪菲-赫尔曼密钥的装置。

示例66包括如示例49至65中任一项所述的主题,并且其中,所述用于传输所述第一公共迪菲-赫尔曼密钥的装置包括:用于在带外通信信道上将所述第一公共迪菲-赫尔曼密钥传输至所述第二计算设备的装置。

示例67包括如示例49至66中任一项所述的主题,并且其中,所述用于传输所述第一公共迪菲-赫尔曼密钥的装置包括:用于使用所述第一计算设备的振动触觉致动器来传输所述第一公共迪菲-赫尔曼密钥的装置,其中,由所述第二计算设备的加速度计接收对所述第一公共迪菲-赫尔曼密钥的传输。

示例68包括如示例49至67中任一项所述的主题,并且其中,所述用于传输所述第一公共迪菲-赫尔曼密钥的装置包括:用于使用所述第一计算设备的低音量超声波扬声器来传输所述第一公共迪菲-赫尔曼密钥的装置,其中,由所述第二计算设备的扬声器接收对所述第一公共迪菲-赫尔曼密钥的传输。

示例69包括如示例49至68中任一项所述的主题,并且其中,所述用于传输所述第一公共迪菲-赫尔曼密钥的装置包括:用于基于安全印刷介质来传输所述第一公共迪菲-赫尔曼密钥的装置,所述安全印刷介质包括指示所述第一唯一标识符的快速响应(qr)码。

示例70包括如示例49至69中任一项所述的主题,并且其中,所述用于传输所述第一公共迪菲-赫尔曼密钥的装置包括:在体域网上并使用所述第一计算设备的触摸电容界面来传输所述第一公共迪菲-赫尔曼密钥的装置。

示例71包括如示例49至70中任一项所述的主题,并且其中,所述用于传输所述第一公共迪菲-赫尔曼密钥的装置包括:用于在所述第一计算设备与所述第二计算设备之间建立的近场通信信道上传输所述第一公共迪菲-赫尔曼密钥的装置。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1