用于安全设备认证的方法和装置与流程

文档序号:16363599发布日期:2018-12-22 08:18阅读:208来源:国知局
用于安全设备认证的方法和装置与流程

本公开要求于2016年3月8日提交的美国临时专利申请序列号62/305,030的优先权,其公开内容通过引用整体并入本文。

背景技术

本文中提供的背景描述是为了总体上呈现本公开的上下文。除非本文中另有说明,否则本部分中描述的方法不是本公开中的权利要求的现有技术,并且不因包括在本部分中而被认为是现有技术。

计算和电子设备通常通过无线通信链路访问另一设备的数据或服务。为了建立和配置通信链路,两个设备通常交换与每个设备相关联的相应标识符。这些标识符还可以用于建立和保持设备之间的通信。然而,诸如当要求复杂的用户输入或设备之间的联系来初始化无线通信链路时,交换这些标识符可能是困难的或不方便的。

除了这些困难之外,在链路配置过程中暴露的标识符通常是静态的或被硬编码到设备中。换言之,标识符不仅使每个设备唯一可标识,而且在设备的生命周期内不会或不能改变。因此,设备之间的通信通常是不安全的并且缺乏隐私,因为在配置过程中相同的长期设备标识符经常被暴露给第三方。



技术实现要素:

提供本发明内容是为了介绍在具体实施方式和附图中进一步描述的主题。因此,本发明内容既不应被认为描述了必要特征,也不应用来限制所要求保护的主题的范围。

在一些方面,描述了一种暴露设备的公开临时密钥的方法。从远程设备接收的消息包括:设备的公开临时密钥的散列(hash)、远程设备的公开临时密钥和经加密的公开密钥、以及对于证明从远程设备接收的公开密钥的所有权有用的经加密的散列值。基于远程设备的公开临时密钥和设备的私有临时密钥生成加密密钥。然后,设备利用加密密钥来解密远程设备的经加密的公开密钥和经加密的散列值。然后,通过基于经解密的散列值验证远程设备拥有经解密的公开密钥,来认证远程设备。

在其他方面,描述了一种方法,其在设备处从远程设备接收第一公开临时密钥。基于第一公开临时密钥和设备的私有临时密钥来生成加密密钥。然后利用加密密钥来加密设备的第一公开密钥和对于证明第一公开密钥的所有权有用的第一散列值。向远程设备传输第一消息,该第一消息包括:第一公开临时密钥的散列、设备的第二公开临时密钥、设备的经加密的第一公开密钥和经加密的第一散列值。从远程设备接收的第二消息包括:设备的第二公开临时密钥的散列、远程设备的经加密的第二公开密钥和经加密的第二散列值。利用加密密钥来解密经加密的第二公开密钥和经加密的第二散列值。该方法然后通过基于经解密的第二散列值来验证远程设备拥有第二公开密钥,来认证远程设备。

在其他方面,一种安全认证设备包括通信接口、基于硬件的处理器和存储处理器可执行指令的存储器,处理器可执行指令响应于由处理器执行而实现认证器。认证器可以暴露设备的公开临时密钥。从远程设备接收的消息包括:设备的公开临时密钥的散列、远程设备的公开临时密钥和经加密的公开密钥、以及对于证明从远程设备接收的公开密钥的所有权有用的经加密的散列值。然后,认证器基于远程设备的公开临时密钥和设备的私有临时密钥来生成加密密钥。认证器利用加密密钥来解密远程设备的经加密的公开密钥和经加密的散列值。然后,通过基于经解密的散列值来验证远程设备拥有从远程设备接收的、经解密的公开密钥,来认证远程设备。

在附图和以下描述中阐述了一个或多个实现的细节。根据说明书和附图以及根据权利要求,其他特征和优点将显而易见。

附图说明

在附图和以下具体实施方式中阐述了安全设备认证的一个或多个实现的细节。在附图中,附图标记的最左边的数字标识首次出现该附图标记的图。在说明书和附图中的不同实例中使用相同的附图标记指示相同的元素:

图1示出了包括根据一个或多个方面实现的无线设备的示例操作环境。

图2示出了根据一个或多个方面的、用于认证发起者和响应者的示例设备配置。

图3示出了用于安全地认证远程设备的示例方法。

图4示出了发起者与响应者之间的认证信息的示例交换。

图5示出了用于与远程设备进行安全认证的另一示例方法。

图6a和图6b示出了用于基于设备的临时密钥来认证设备的示例方法。

图7示出了根据一个或多个实施例的临时密钥和经加密的认证信息的示例交换。

图8a和图8b示出了用于基于临时密钥的交换来利用设备进行认证的示例方法。

图9示出了用于实现安全设备认证的各方面的示例片上系统(soc)环境。

具体实施方式

用于配置对等(peertopeer)网络连接或组的常规技术经常暴露被配置的设备的长期标识符。例如,一些配置过程通过未加密的无线通信来交换每个设备的长期标识符或公开密钥。因为这些设备标识符和公开密钥是静态的或者对于每个配置会话和后续通信是相同的,所以第三方可以利用无线隐私的缺乏来标识试图建立对等连接或组的设备。在设备的公开密钥被暴露的情况下,恶意行为者可以进一步利用暴露的密钥来实现对设备或设备通信的其他攻击,设备的通信安全依赖于公开密钥。

本公开描述了用于安全设备认证的技术和装置。在一些方面,暴露或广播设备的公开临时密钥。从远程设备接收的消息包括:设备的公开临时密钥的散列、远程设备的公开临时密钥和经加密的公开密钥、以及对于证明远程设备的公开密钥的所有权有用的经加密的散列值。然后,基于远程设备的公开临时密钥和设备的私有临时密钥生成加密密钥(例如,共享密钥)。然后用加密密钥解密远程设备的经加密的公开密钥和经加密的散列值,以提供未加密的公开密钥和散列值。然后,通过基于经解密的散列值验证远程设备拥有从远程设备接收的经解密的公开密钥来认证远程设备。通过这样做,可以在不暴露任一设备的公开密钥或长期标识符的情况下认证远程设备。

可以实现本文中描述的这个方面和其他方面,以提供安全认证协议,其中交换设备的临时密钥或随机密钥而不是设备的公开密钥或身份密钥。在初始交换相应的临时密钥之后,可以使用临时密钥加密每个设备的公开密钥或标识符,以确保在认证期间的隐私。在一些情况下,认证协议基于设备的相应身份的散列提供对等公开密钥,而不在交换期间暴露公开密钥。通过这样做,设备可以在保持无线隐私的同时认证和建立对等网络或组。

以下讨论描述了操作环境、可以在该操作环境中采用的技术、以及可以体现该操作环境的组件的片上系统(soc)。在本公开的上下文中,仅通过示例的方式对操作环境进行参考。

操作环境

图1示出了根据一个或多个方面的示例操作环境100,其包括示例计算设备102和示例对等设备104。这些设备中的每个设备可以是无线网络使能的,并且能够通过无线链路106传送数据、分组和/或帧。无线链路106可以包括任何合适类型的无线通信链路或无线网络连接。例如,无线链路106可以全部或部分地实现为无线局域网(wlan)、ad-hocwlan、无线网状网络、近场通信(nfc)链路、无线个域网(wpan)、无线广域网(wwan)或短程无线网络。无线链路106还可以实现各种对等通信协议,诸如符合无线保真(wifi)联盟的直接链路或对等链路。

在该特定示例中,计算设备102被实施为智能电话,但是计算设备102可以实现为任何其他合适类型的设备。这些其他设备类型可以包括:平板计算机、膝上型计算机、上网本、无线路由器、机顶盒或网络附加存储(nas)设备。计算设备102的其他示例包括:台式计算机、相机、打印机、多媒体加密狗、个人媒体设备、导航设备、便携式游戏设备、物联网(iot)设备等。计算设备102可以出于任何合适的目的而实现密码术或安全功能,诸如建立安全通信链路、加密/解密通信、认证用户或其他设备、签署电子文件或文档、等等。

计算设备102包括处理器108和计算机可读介质110。处理器108可以是任何合适类型的处理器(单核或多核),以用于执行计算设备102的操作系统或应用的指令或命令。计算机可读存储介质110(crm110)包括用于存储计算设备102的各种数据和指令的非易失性存储器和易失性存储器。在本公开的上下文中,crm110被实现为存储介质,并且因此不包括暂时性信号或载波。

crm110包括计算设备102的密钥112、唯一标识符114和认证器116。密钥112可以包括任何合适类型的密钥,诸如基于硬件的设备根密钥、私有密钥、公开密钥、密钥对等。唯一标识符114可以标识计算设备102或由此提供的服务。在一些情况下,唯一标识符114是从密钥112之一创建的,并且使得其他设备能够对设备进行密码验证。备选地或附加地,计算设备102可以用唯一标识符114标记或标注,以便于设备的标识或认证。在一些方面,计算设备102的认证器116认证对等设备104,并且实现与这些设备的安全无线通信。密钥112、唯一标识符114和认证器116的实现和使用各不相同,并且贯穿本公开进行描述。

计算设备102还可以包括i/o端口118、显示接口120和网络接口122。i/o端口118允许计算设备102与其他设备或用户交互。i/o端口118可以包括内部或外部端口的任何组合,诸如usb端口、音频端口、串行ata(sata)端口、基于pci-express的端口或卡槽、安全数字输入/输出(sdio)插槽和/或其他传统端口。各种外围设备可以与i/o端口118可操作地耦合,诸如人类输入设备(hid)、用户输入接口、条形码扫描仪、光学传感器、相机、按钮、红外端口或其他外围设备。

显示器接口120使得能够经由连接到接口的显示器呈现计算设备102的用户界面或其他图形。显示器可以与计算设备102集成,或者包括经由有线或无线链路连接的外部显示器。在一些情况下,设备102的显示器包括可以接收用户输入的集成的触摸屏或传感器。例如,计算设备102可以经由显示器呈现用于字母数字输入的提示,并且经由触摸屏从计算设备102的用户接收输入序列。

计算设备102的网络接口122提供到一个或多个网络的连接、以及与之连接的其他设备的连接。通过网络接口122传送的数据可以根据计算设备102正在使用其进行通信的通信协议或标准而被打包或成帧。网络接口122可以包括用于通过本地网络、内联网或因特网进行通信的有线接口,诸如以太网或光纤接口。备选地或附加地,网络接口122可以包括便于通过无线网络(诸如蜂窝网络、wlan或wpan)进行通信的无线接口。

在一些方面,无线网络接口122被实现为:被配置用于经由特定通信协议进行通信的无线收发器,诸如第三代合作伙伴项目长期演进(3gpplte)、bluetoothtm、ieee802.11-2007、ieee802.11n、ieee802.11ac、ieee802.15.4、ieee802.16、bluetoothtm、nfc等。备选地或附加地,无线收发器还可以被配置为以一种或多种通信模式进行操作,诸如基础设施、对等、网状、对等链路等。

备选地,网络接口122的各种功能可以由发送器和接收器单独实现,并且可以是与固件或软件组合或分开的硬件。每个网络接口122可以包括媒体访问控制(mac)层接口和物理(phy)层接口,其中的任一接口可以是与固件或软件组合或分开的硬件。在一些情况下,计算设备102通过网络接口122的mac地址(例如,十六进制值的串)可标识,设备使用该网络接口122进行通信。

对等设备104包括另一智能电话124、无线路由器126和打印机128,其中的每个能够经由无线链路106与计算设备102通信。对等设备104的其他实现可以包括:相机、多媒体加密狗、个人多媒体播放器、个人导航设备、便携式游戏设备、物联网(iot)设备等。备选地或附加地,本文中描述的任何计算设备102可以被实现为对等设备104,诸如当另一设备发起与计算设备102的对等连接时。

每个对等设备104还包括处理器130(例如,微处理器)和计算机可读介质132(crm132)。crm132可以包括对于存储对等设备104的数据134、服务136、固件和/或操作系统有用的任何合适的存储器或存储设备,诸如随机存取存储器(ram)、只读存储器(rom)或闪存。在一些方面,对等设备104的数据134或服务136可以由计算设备102经由无线链路106来访问。

对等设备104的crm132还包括对等密钥138、对等唯一标识符140(对等唯一id140)和对等认证器142。密钥对等密钥138可以包括任何合适类型的密钥,诸如基于硬件的设备根密钥、私有密钥、公开密钥、密钥对等。对等唯一id140可以标识对等设备104或由此提供的服务。在一些情况下,对等唯一id140是从对等密钥138之一创建的,并且使得其他设备能够对对等设备104进行密码验证。备选地或附加地,可以利用对等唯一id140来标记或标注对等设备104,以便于对等设备的标识或认证。在一些方面,对等认证器142认证计算设备102或其他设备,并且实现与这些设备的安全无线通信。对等密钥138、对等唯一id140和对等认证器142的实现和使用各不相同,并且贯穿本公开进行描述。

对等设备104还可以包括i/o端口(未示出)、显示接口(未示出)和网络接口144。对等设备的i/o端口或显示接口可以与计算设备102的那些类似或不同地实现,诸如在对等设备104处接收用户或其他输入。网络接口144提供到一个或多个网络的连接、以及与之连接的其他设备的连接。网络接口144可以包括有线接口或无线接口,诸如参考计算设备102描述的那些。

在一些方面,网络接口144被实现为:被配置用于经由特定通信协议进行通信的无线收发器,诸如第三代合作伙伴项目长期演进(3gpplte)、bluetoothtm、ieee802.11-2007、ieee802.11n、ieee802.11ac、ieee802.15.4、ieee802.16、bluetoothtm、nfc和本文中提到的其他协议。备选地或附加地,无线收发器还可以被配置为以一种或多种通信模式进行操作,诸如基础设施、对等、网状、对等链路等。

备选地,网络接口144的各种功能可以由发送器和接收器单独实现,并且可以是与固件或软件组合或分开的硬件。每个网络接口144可以包括媒体访问控制(mac)层接口和物理(phy)层接口,其中任一接口可以是与固件或软件组合或分开的硬件。在一些情况下,对等设备104通过网络接口144的mac地址(例如,十六进制值的串)可标识,对等设备使用该网络接口122进行通信。

图2总体上在200处示出了用于认证发起者和响应者的示例设备配置。在该特定示例中,计算设备102被配置为发起者202,并且打印机128被配置为认证交换的响应者204。计算设备102(例如,智能电话)可以发起与打印机128的认证交换以建立对等网络连接,并且访问由打印机128提供的打印服务。在其他情况下,被配置为发起者202的对等设备104可以发起与被配置为响应者204的计算设备102的认证。这些设备配置是动态的,并且可以在认证之前由设备或第三方协商。

发起者202和响应者204中的每个能够进行密码操作,并且可以支持任何合适类型的密码系统,诸如椭圆曲线密码术(ecc)、椭圆曲线diffie-hellman(ecdh)密码术及其变型。这样,发起者202或响应者204可以包括或生成各种密钥、散列、一次性使用的数字(nonce)或经加密的数据以提供安全认证协议。参考附图并且为了增加清晰度,与发起者202或响应者204相关联的实体或操作可以分别用针对发起者或响应者的后缀“_i”或“_r”来标识。然而,应当注意,响应者和发起者设备角色是可配置的和动态的,并且因此可以随时间或关于另一设备或认证会话而变化。

在一些方面,发起者202包括密钥112、唯一标识符114、凭证206和认证器116。发起者202的密钥112包括秘密密钥208和公开密钥210,它们以加密方式链接,使得秘密密钥208可以用于证明公开密钥210的所有权。秘密密钥208是发起者202的私有密钥,并且可以绑定到发起者设备的硬件。例如,秘密密钥208可以在发起者202的制造期间生成,并且被烧制到发起者202的一次性可编程(otp)存储器中。发起者202的公开密钥210可以基于秘密密钥208来生成,诸如通过将秘密密钥208乘以椭圆加密曲线的发生器值。在一些情况下,公开密钥210是由发起者202共享以建立安全的认证通信的标识符(例如,长期标识符或公开id)。备选地或附加地,公开密钥210可以与发起者202的硬件相关联,并且通过设备重置而持续存在。

发起者202的密钥112还包括私有临时密钥212和公开临时密钥214的临时密钥对。这些临时密钥可以是用于任何合适的时间量或特定会话(诸如认证或密钥建立过程)的随机密钥。私有临时密钥212可以由发起者202在本地随机生成和保护。在一些情况下,发起者202基于私有临时密钥212生成公开临时密钥214,诸如通过将私有临时密钥212乘以椭圆加密曲线的发生器值。因此,私有临时密钥212可以对于证明公开临时密钥214的所有权有用。备选地或附加地,临时密钥对可以用于生成与其他设备的共享密钥。在一些情况下,公开临时密钥214由发起者202共享以私密地建立经认证的通信。

共享密钥216可以由发起者202在认证过程中或与响应者204的其他密码交换期间生成。例如,发起者202可以基于响应者204的公开密钥和私有密钥(诸如私有临时密钥212)生成主密钥或共享密钥。在一些情况下,共享密钥216用于在去往响应者204的传输之前加密信息,并且解密从响应者204接收的信息。备选地或附加地,发起者202可以基于nonce、其他密钥输入信息、或静态密钥和临时密钥的组合生成共享密钥216。

发起者202的唯一标识符114可以从公开密钥210生成,诸如通过使用散列函数。发起者202还可以利用唯一标识符114而被标记,以实现或促进发起者202或由此提供的服务的标识。在一些情况下,诸如认证服务器等的第三方基于提供给服务器的设备密钥(例如,公开密钥210)来提供唯一标识符114。在这种情况下,服务器可以将唯一标识符114与设备密钥相关联,并且存储唯一标识符114以实现强认证。

在一些方面,发起者202还包括对于进一步标识、验证或认证发起者202有用的凭证206。示例凭证206可以包括:自声明的组或网络名称、证书、签名证明等。因此,一些凭证206可以由另一设备或第三方签名,以进一步证明特定凭证或相关联的密钥是有效的。备选地或附加地,凭证206可以包括或标识通过与发起者202的认证而可访问的服务、能力、设备属性或网络。

发起者202还包括用于管理与响应者204的认证的认证器116。在该特定示例中,认证器116包括加密算法套件(ciphersuite)218和密码引擎220。加密算法套件218可以包括对于实现加密和认证操作有用的一组认证、加密、消息认证码(mac)和密钥交换算法。这些算法的示例包括:为密码和其他类型的操作提供散列值或密钥的散列函数或基于散列的mac密钥导出函数(hkdf)。在一些情况下,当发起者202发起与响应者204的认证协议时,对特定加密算法套件218的使用进行标识或协商。

认证器116的密码引擎220用于实现加密算法套件218的功能和算法。密码引擎220可以包括任何合适的密码块或模块,诸如随机数发生器、盐析调制器、散列模块等。密码引擎220的随机数发生器可以提供用于生成诸如公开和私有临时密钥等各种密钥的随机数。密码引擎220的散列模块可以实现任何一组密码散列函数或符合特定标准,诸如sha256。

在一些方面,响应者204包括对等密钥138、对等唯一id140,凭证222和对等认证器142。响应者204的实体或组件可以与发起者202的实体或组件类似地实现。这样,响应者204的类似实体(例如,密钥或认证器)可以以参考发起者202的那些实体而被描述的方式来实现。

响应者204的对等密钥138包括秘密密钥224和公开密钥226,它们以加密方式链接,使得秘密密钥224可以对于证明公开密钥236的所有权有用。秘密密钥224是响应者204的私有密钥,并且可以绑定到响应者设备的硬件。响应者204的公开密钥226可以基于秘密密钥224来生成,诸如通过将秘密密钥224乘以椭圆加密曲线的发生器值。在一些情况下,公开密钥226是标识符(例如,长期标识符或公开id),其由响应者204共享,以发布可用服务或建立安全的认证通信。备选地或附加地,公开密钥226可以与响应者204的硬件相关联,并且通过设备重置而持续存在。

响应者204的对等密钥138还包括私有临时密钥228和公开临时密钥230的临时密钥对。这些临时密钥可以是用于任何合适的时间量或特定通信会话(诸如认证或密钥建立过程)的随机密钥。私有临时密钥228可以由响应者204在本地随机生成和保护。在一些情况下,响应者204基于私有临时密钥228生成公开临时密钥230,诸如通过将私有临时密钥228乘以椭圆加密曲线的发生器值。因此,私有临时密钥228可以对于证明公开临时密钥230的所有权有用。备选地或附加地,临时密钥对可以用于生成与其他设备的共享密钥。在一些情况下,公开临时密钥230由响应者204共享,以私密地建立经认证的通信。

共享密钥232可以由响应者204在认证过程中或与发起者202的其他密码交换期间生成。在一些情况下,共享密钥232用于在去往发起者202的传输之前加密信息,并且解密从发起者202接收的信息。备选地或附加地,响应者204可以基于nonce、其他输入密钥材料、或静态密钥和临时密钥的组合来生成共享密钥232。

响应者204的唯一标识符140可以从公开密钥226生成,诸如通过使用散列函数。响应者204还可以用唯一标识符140而被标记,以实现或促进响应者204或由此提供的服务的标识。在一些情况下,响应者204包括对于进一步标识、验证或认证响应者204有用的凭证222。备选地或附加地,凭证222可以包括或标识通过与响应者204的认证而可访问的服务、能力、设备属性或网络。

响应者204还包括用于管理与发起者202的认证的对等认证器142。对等认证器142可以与发起者的认证器116类似或不同地实现。在该特定示例中,对等认证器142包括加密算法套件234和密码引擎236。加密算法套件234可以包括对于实现加密和认证操作有用的一组认证、加密、消息认证码(mac)和密钥交换算法。认证器116的密码引擎236用于实现加密算法套件218的功能和算法。密码引擎220可以包括任何合适的密码块或模块,诸如随机数发生器、盐析调制器、散列模块等。

安全设备认证技术

以下讨论描述安全设备认证技术。这些技术可以使用本文中描述的任何环境和实体来实现,诸如密钥112、对等密钥138、认证器116、对等认证器142、密码引擎220和/或密码引擎236。这些技术包括图3、图5、图6a、图6b、图8a和图8b中所示的方法,其中的每个方法被示出为由一个或多个实体执行的一组操作。这些方法不一定限于所示的操作顺序。而是,可以重复、跳过、替换或重新排序任何操作以实现本文中描述的各个方面。此外,这些方法可以全部或部分地彼此结合使用,无论是由相同实体、分离的实体还是其任何组合执行。在以下讨论的部分中,将通过示例的方式参考图1的操作环境100和图2的实体。这样的参考不应当被视为将所描述的方面限制为操作环境100,而是作为各种示例之一的说明。

图3描绘了用于安全地认证远程设备的示例方法300,包括由认证器116和/或密码引擎220执行的操作。在一些方面,方法300的操作可以被实现以在设备之间提供安全认证协议,以确保认证过程中的无线隐私。

在302处,暴露设备的公开临时密钥。在一些情况下,通过经由设备的无线接口广播公开临时密钥来暴露公开临时密钥。在其他情况下,经由近场通信(nfc)、射频标识(rfid)、个域网(例如,低功率bluetoothtm)或设备的显示器来暴露公开临时密钥。备选地或附加地,可以利用设备的公开临时密钥来暴露密钥交换的参数,诸如加密算法套件标识符。

作为示例,考虑图2的计算设备102(智能电话)和打印机128,其中设备分别被配置为发起者202和响应者204。这里,假定智能电话的用户正在尝试访问打印机128的服务。认证器116经由智能电话的网络接口122(例如,wlan)向响应者204传输发起者202的公开临时密钥214。图4总体上在400处示出了该认证信息的示例交换。如图4所示,发起者202向响应者204传输包括发起者202的公开临时密钥214的认证请求402。

现在再次参考图3,在304处,从远程设备接收第一消息,该第一消息包括:设备的公开临时密钥的散列和远程设备的经加密的公开密钥。该消息还可以包括对于证明远程设备的公开密钥的所有权有用的第一散列值或第一标签。在一些情况下,第一散列值或第一标签用共享加密密钥来加密。备选地或附加地,第一消息可以包括:经加密的凭证、网络信息或远程设备的能力的指示。

在本示例的上下文中,发起者202从响应者204接收认证响应404,认证响应404包括发起者的公开临时密钥214的散列、响应者204的公开临时密钥230、响应者的经加密的公开密钥226和响应者对公开密钥226的所有权的证明(proof_r)。

在306处,基于远程设备的公开临时密钥和设备的私有临时密钥生成加密密钥。在一些情况下,该加密密钥是共享加密密钥,它是在发起者与响应者之间交换的有用的加密认证信息。通过这样做,发起者和响应者可以通过经加密的通信来交换公开密钥,这可以防止在认证过程中暴露公开密钥。继续正在进行的示例,认证器116使用hkdf来基于发起者202的私有临时密钥212和响应者204的公开临时密钥230提供共享密钥216。

在308处,利用加密密钥来解密远程设备的经加密的公开密钥和第一散列值。也可以利用加密密钥来解密第一消息的其他经加密的内容,诸如远程设备的凭证或能力。在本示例的上下文中,认证器116解密响应者的经加密的公开密钥226和公开密钥226的所有权的证明(proof_i)。

在310处,通过基于经解密的第一散列值验证远程设备拥有经解密的公开密钥来认证远程设备。在一些情况下,将经解密的第一散列值与验证信息或另一散列值进行比较,以确定公开密钥的所有权。在这种情况下,可以基于远程设备的公开密钥、远程设备的公开临时密钥或设备的私有临时密钥来生成验证信息。

继续正在进行的示例,认证器116使用hkdf来基于响应者的公开密钥226、响应者的公开临时密钥230和发起者的私有临时密钥212生成验证信息(proof_r')。然后,认证器116将响应者的所有权的证明(proof_r)与验证信息(proof_r')进行比较。响应于验证响应者204拥有公开密钥226,认证器116认证响应者204。利用响应者204的公开密钥226,认证器116还可以经由加密算法套件218的对应散列函数来确定响应者204的唯一id140。

在312处,利用加密密钥来加密设备的公开密钥和对于证明公开密钥的所有权的第二散列值。对设备的公开密钥加密可以有效地防止公开密钥的暴露,并且增加了认证过程的隐私。在一些情况下,使用用于解密远程设备的公开密钥的共享密钥来加密公开密钥。备选地或附加地,操作312可以包括基于设备的私有密钥和其他临时密钥生成第二散列值。

在本示例的上下文中,认证器116使用hkdf来基于发起者的秘密密钥208和私有临时密钥212以及响应者的公开临时密钥230提供发起者对公开密钥210的所有权的证明(proof_i)。然后,认证器116加密发起者202的公开密钥210和发起者对公开密钥210的所有权的证明。

在314处,向远程设备传输第二消息,该第二消息包括:远程设备的公开临时密钥的散列和设备的经加密的公开密钥。第二消息还可以包括对于确定设备的公开密钥的所有权有用的经加密的第二散列值。备选地或附加地,也可以将经加密的凭证、网络信息或设备的能力的指示作为第二消息的一部分来传输。在认证远程设备之后或响应于传输第二消息,设备可以从远程设备接收经加密的数据,该经加密的数据指示(或确认)设备的相互认证。

结束本示例,认证器116传输认证确认406,认证确认406包括响应者204的公开临时密钥230的散列、发起者202的经加密的公开密钥210和公开密钥210的所有权的经加密的证明。

图5描绘了用于与远程设备安全地认证的示例方法500,包括由对等认证器142和/或密码引擎236执行的操作。在一些方面,方法500的操作可以被实现以在设备之间提供安全认证协议,以确保认证过程中的无线隐私。

在502处,在设备处接收远程设备的公开临时密钥。可以经由设备的任何合适的接口来接收公开临时密钥,诸如无线网络接口、相机、nfc模块、rfid模块、wpan无线电或用户输入接口。备选地或附加地,可以利用设备的公开临时密钥来接收密钥交换的参数,诸如加密算法套件标识符。

作为示例,再次考虑图2的智能电话和打印机128,其中设备分别被配置为发起者202和响应者204。与前一示例类似,假定智能电话的用户正在尝试访问打印机128的服务。在方法500的操作的上下文中,打印机128的对等认证器142经由网络接口144(例如,wlan)接收发起者202的公开临时密钥214。如图4所示,响应者204接收包括发起者202的公开临时密钥214的认证请求402。

在504处,基于远程设备的公开临时密钥和设备的私有临时密钥生成加密密钥。在一些情况下,该加密密钥是共享加密密钥,它是在发起者与响应者之间交换的有用的加密认证信息。在正在进行的示例中,对等认证器142使用hkdf来基于响应者204的私有临时密钥228和发起者202的公开临时密钥214提供共享密钥232。

在506处,利用加密密钥来加密设备的公开密钥。可以利用由设备和远程设备共享的加密密钥来加密公开密钥。也可以利用加密密钥来加密对于证明设备的公开密钥的所有权有用的第一散列值。在一些情况下,通过基于设备的秘密密钥和私有临时密钥以及远程设备的公开临时密钥生成散列,来提供第一散列值。

在本示例的上下文中,对等认证器142使用hkdf来基于响应者204的秘密密钥224和私有临时密钥228以及发起者202的公开临时密钥214提供证明响应者对公开密钥226的所有权(proof_r)的第一散列值。然后,响应者204的对等认证器142利用共享的加密密钥232来加密其公开密钥226和第一散列值。

在508处,向远程设备传输第一消息,该第一消息包括:远程设备的公开临时密钥的散列和设备的经加密的公开密钥。第一消息还可以包括:对于证明设备的公开密钥的所有权有用的经加密的第一散列值。备选地或附加地,也可以将经加密的凭证、网络信息或响应者的能力的指示作为第一消息的一部分来传输。

继续正在进行的示例,对等认证器142向发起者202传输认证响应,该认证响应包括发起者的公开临时密钥214的散列和响应者204的公开临时密钥230。认证响应还包括响应者204的经加密的公开密钥226和证明响应者对公开密钥226的所有权的经加密的第一散列值。

在510处,从远程设备接收第二消息,该第二消息包括:设备的公开临时密钥的散列和远程设备的经加密的公开密钥。第二消息还可以包括:对于证明远程设备对公开密钥的所有权有用的经加密的第二散列值。备选地或附加地,第二消息可以包括:经加密的凭证、网络信息或远程设备的能力的指示。在本示例的上下文中,对等认证器142接收认证确认406,认证确认406包括响应者204的公开临时密钥230的散列、发起者202的经加密的公开密钥210和公开密钥210的所有权的经加密的证明(proof_i)。

在512处,利用加密密钥来解密远程设备的经加密的公开密钥。也可以利用加密密钥来解密与远程设备的公开密钥一起接收的第二散列值。在一些情况下,也可以利用加密密钥来解密第二消息的其他经加密的内容,诸如远程设备的凭证或能力。继续正在进行的示例,对等认证器142解密发起者202的经加密的公开密钥210和公开密钥210的经加密的证明。

在514处,通过基于经解密的第二散列值验证远程设备拥有从远程设备接收的经解密的公开密钥来认证远程设备。在一些情况下,将经解密的第二散列值与验证信息或另一散列值进行比较,以确定公开密钥的所有权。在这种情况下,可以基于远程设备的公开密钥、远程设备的公开临时密钥或设备的私有临时密钥来生成验证信息。

结束本示例,对等认证器142使用hkdf来基于发起者的公开密钥210、发起者的公开临时密钥214和响应者的私有临时密钥228生成验证信息(proof_i')。然后,认证器116将发起者的所有权的证明(proof_i)与验证信息(proof_i')进行比较。响应于验证发起者202拥有公开密钥210,对等认证器142认证发起者202。然后,认证器向发起者202传输经加密的数据408以及公开临时密钥214的散列以确认认证。

图6a和图6b描绘了用于使用临时密钥来认证设备的示例方法600,包括由发起者202的认证器116和/或密码引擎220执行的操作。在一些方面,方法600的操作可以被实现以在设备之间提供安全的认证协议,以确保认证过程中的无线隐私。

在602处,在设备处接收远程设备的公开临时密钥。可以经由设备的任何合适的接口来接收公开临时密钥,诸如无线网络接口、光学传感器、nfc模块、rfid模块、wpan无线电或用户输入接口。备选地或附加地,可以利用设备的公开临时密钥来接收密钥交换的参数,诸如加密算法套件标识符。

作为示例,考虑图2的智能电话和打印机128,其中设备分别被配置为发起者202和响应者204。这里,假定智能电话的用户正在尝试访问打印机128的服务。为此,用户发起打印机128的网络连接应用,打印机128然后显示包括打印机的公开临时密钥230的快速响应代码(qr码)。然后,用户使用智能电话的光学传感器扫描qr码,使得认证器116接收响应者204的公开临时密钥230。图7总体上在700处示出了认证信息的交换,包括具有打印机128的公开临时密钥230的qr码702的这种接收。

在604处,基于远程设备的公开临时密钥和设备的私有临时密钥生成第一加密密钥。第一加密密钥还可以包括自声明的密钥名称或用于标识认证会话的其他信息。在一些情况下,该加密密钥是共享加密密钥,它是在发起者与响应者之间交换的有用的加密认证信息。继续正在进行的示例,认证器116使用hkdf来基于发起者202的私有临时密钥212和响应者204的公开临时密钥230提供共享密钥216(例如,中间密钥)。

在606处,用第一加密密钥来加密设备的公开密钥。还可以利用第一加密密钥来加密nonce、服务的指示或设备的能力的指示。在本示例的上下文中,认证器116加密公开密钥210、nonce(nonce_i)和由发起者202(智能电话)提供(或请求)的服务的指示。

在608处,向远程设备传输远程设备的公开临时密钥的散列、设备的公开临时密钥和设备的经加密的公开密钥。在一些情况下,该设备还利用设备的经加密的公开密钥来传输经加密的nonce、服务的指示或设备的能力的指示。继续正在进行的示例,认证器116向响应者204传输认证请求704,认证请求704包括:响应者204的公开临时密钥230的散列、发起者202的公开临时密钥214、经加密的公开密钥210和nonce。

在610处,从远程设备接收设备的公开临时密钥的散列、远程设备的经加密的公开密钥和经加密的第一认证标签。第一认证标签的内容可以用于确定远程设备对公开密钥的所有权。在一些情况下,远程设备的公开密钥和经加密的第一认证标签用不同的密钥加密。在这种情况下,可以使用通过临时密钥的交换而建立的第二加密密钥来加密第一认证标签。在本示例的上下文中,认证器116从响应者204接收认证响应706,认证响应706包括:发起者的公开临时密钥214的散列、响应者的经加密的公开密钥226、经加密的nonce和经加密的第一认证标签。

在612处,利用第一加密密钥来解密远程设备的经加密的公开密钥。在一些情况下,利用第一加密密钥来解密使用经加密的公开密钥接收的其他加密材料。在这种情况下,其他加密材料可以包括nonce或由响应者提供的服务的指示。继续正在进行的示例,认证器116解密响应者的经加密的公开密钥226、nonce和由打印机128提供的打印服务的指示。

在614处,基于设备的私有密钥和远程设备的公开密钥生成第二加密密钥。生成第二加密密钥的过程还可以使用诸如远程设备的公开临时密钥的临时密钥来绑定密钥和临时密钥。在本示例的上下文中,认证器116基于nonce、发起者的私有临时密钥212、响应者的公开密钥226和响应者的公开临时密钥230生成加密密钥(k_e)。

在616处,利用第二加密密钥来解密经加密的第一认证标签。可以解密第一认证标签,以暴露或提供对于确定从另一设备接收的公开密钥的所有权有用的散列值。继续正在进行的示例,认证器116解密经加密的第一认证标签,以提供对于确定响应者204是否拥有先前经解密的公开密钥226有用的散列值。

在618处,基于设备的公开临时密钥、远程设备的公开临时密钥和远程设备的公开密钥生成验证信息。在本示例的上下文中,认证器116基于nonce、发起者的公开临时密钥214、响应者的公开临时密钥230和响应者的公开密钥226来生成验证散列值。

在620处,通过将第一认证标签与验证信息进行比较来认证远程设备。验证信息可以包括由设备生成的补充认证标签。继续正在进行的示例,认证器116将从响应者204接收的第一认证标签与基于响应者的公开密钥226而生成的验证信息进行比较。响应于第一认证标签与验证信息相匹配,认证器116验证认证标签并且认证响应者204。

在622处,基于远程设备的公开临时密钥、设备的公开临时密钥和远程设备的公开密钥生成第二认证标签。可以生成第二认证标签,作为设备的公开临时密钥和远程设备的公开密钥的散列值。在一些情况下,也使用设备的公开密钥来生成散列值。在本示例的上下文中,认证器116基于响应者的公开临时密钥230、发起者的公开临时密钥214和响应者的公开密钥226来生成第二认证标签。

在624处,利用第二加密密钥来加密第二认证标签,以提供经加密的第二认证标签。备选地,可以使用第一加密密钥来加密第二认证标签。继续正在进行的示例,认证器116利用基于响应者204的公开密钥226和发起者202的公开密钥210而生成的第二加密密钥来加密第二认证标签。

在626处,向远程设备传输远程设备的公开临时密钥的散列和经加密的第二认证标签,以确认认证。在一些情况下,还与经加密的第二认证标签一起传输设备的公开临时密钥的散列。结束本示例,认证器116向响应者204传输认证确认708以确认认证。响应于认证确认708,智能电话可以接收用于访问打印机128的服务的配置信息。

图8a和图8b描绘了用于基于临时密钥交换来与设备进行认证的示例方法800,包括由响应者204的对等认证器142和/或密码引擎236执行的操作。在一些方面,方法800的操作可以被实现以在设备之间提供安全的认证协议,以确保认证过程中的无线隐私。

在802处,暴露设备的公开临时密钥。在一些情况下,通过经由设备的无线接口广播或传输公开临时密钥来暴露公开临时密钥。在其他情况下,经由nfc、rfid、wpan或设备的显示器来暴露公开临时密钥。备选地或附加地,可以使用设备的公开临时密钥来暴露密钥交换的参数,诸如加密算法套件标识符。

作为示例,再次考虑图2的智能电话和打印机128,其中设备分别被配置为发起者202和响应者204。参考前面的示例,智能电话的用户试图访问打印机128的服务。为此,用户发起打印机128的网络连接应用。然后打印机128的对等认证器142通过经由打印机的显示器呈现包括公开临时密钥的qr码702来暴露公开临时密钥230。

在804处,从远程设备接收设备的公开临时密钥的散列、远程设备的公开临时密钥和远程设备的经加密的公开密钥。在一些情况下,还接收经加密的nonce、服务的经加密的指示或远程设备的能力的经加密的指示。继续正在进行的示例,对等认证器142从发起者202接收认证请求704,认证请求704包括响应者204的公开临时密钥230的散列、发起者202的公开临时密钥214、发起者的经加密的公开密钥210和nonce。

在806处,基于远程设备的公开临时密钥和设备的私有临时密钥生成第一加密密钥。第一加密密钥还可以包括自声明的密钥名称或对于标识认证会话有用的其他信息。在一些情况下,该加密密钥是共享加密密钥,它是在发起者与响应者之间交换的有用的加密认证信息。继续正在进行的示例,对等认证器142使用hkdf来基于响应者204的私有临时密钥228和发起者202的公开临时密钥214提供共享密钥232(例如,中间密钥)。

在808处,利用第一加密密钥来解密远程设备的经加密的公开密钥。在一些情况下,利用第一加密密钥来解密使用经加密的公开密钥接收的其他加密材料。在这种情况下,其他加密材料可以包括nonce或由响应者提供的服务的指示。继续正在进行的示例,对等认证器142解密发起者的经加密的公开密钥210、nonce和由智能电话请求的服务的指示。

在810处,基于设备的私有密钥和设备的私有临时密钥生成第二加密密钥。生成第二加密密钥的过程还可以使用诸如远程设备的公开临时密钥的临时密钥来绑定密钥和临时密钥。在本示例的上下文中,对等认证器142基于nonce、响应者的秘密密钥224、响应者的私有临时密钥228和发起者的公开临时密钥214生成加密密钥(k_e)。

在812处,基于设备的公开密钥、设备的公开临时密钥和远程设备的公开临时密钥生成第一认证标签。可以生成第一认证标签作为设备的公开临时密钥和设备的公开密钥的散列值。在一些情况下,也使用远程设备的公开密钥来生成散列值。在本示例的上下文中,对等认证器142基于发起者的公开临时密钥214、响应者的公开临时密钥230和响应者的公开密钥226来生成第一认证标签。

在814处,用第一加密密钥加密设备的公开密钥。还可以用第一加密密钥来加密nonce、服务的指示或设备的能力的指示。在本示例的上下文中,对等认证器142加密公开密钥226、nonce和由响应者204(打印机128)提供的服务的指示。

在816处,利用第二加密密钥来加密第一认证标签。备选地,可以利用第一加密密钥来加密第一认证标签。继续正在进行的示例,对等认证器142利用基于响应者204的秘密密钥224而生成的第二加密密钥来加密第一认证标签。

在818处,向远程设备传输远程设备的公开临时密钥的散列、设备的经加密的公开密钥和经加密的第一认证标签。第一认证标签的内容可以对于证明设备的公开密钥的所有权有用。在本示例的上下文中,对等认证器142向发起者202传输认证响应706,认证响应706包括:发起者的公开临时密钥214的散列、响应者的经加密的公开密钥226、经加密的nonce和经加密的第一认证标签。

在820处,从远程设备接收设备的公开临时密钥的散列和经加密的第二认证标签。第二认证标签的内容可以对于与远程设备确认认证有效。在一些情况下,还接收远程设备的公开临时密钥的散列。备选地或附加地,可以用第二认证密钥加密第二认证标签。继续正在进行的示例,对等认证器从发起者202接收认证确认708,认证确认708包括响应者的公开临时密钥230的散列和经加密的第二认证标签。

在822处,利用第二加密密钥来解密经加密的第二认证标签。备选地,可以利用第一加密密钥来解密第二认证标签。继续正在进行的示例,对等认证器142用基于响应者的秘密密钥224和响应者的私有临时密钥228而生成的加密密钥来解密第二认证标签。

在824处,基于设备的公开临时密钥、远程设备的公开临时密钥和设备的公开密钥生成验证信息。在本示例的上下文中,对等认证器142基于nonce、响应者的公开临时密钥230、发起者的公开临时密钥214和响应者的公开密钥226来生成验证散列值。

在826处,通过将第二认证标签与验证信息进行比较来认证远程设备。验证信息可以包括由设备生成的补充认证标签。继续正在进行的示例,对等认证器142将从发起者202接收的第二认证标签与基于响应者的公开密钥226而生成的验证信息进行比较。响应于第二认证标签与验证信息相匹配,对等认证器142验证第二认证标签并且认证发起者202。

在828处,向远程设备传输用第二加密密钥加密的数据。还可以与经加密的数据一起传输远程设备的公开临时密钥的散列。在一些情况下,使用第二加密密钥或通过临时密钥或随机设备密钥的交换而生成的密钥来加密数据。结束本示例,认证器向发起者202传输打印机配置信息710,打印机配置信息710包括发起者的公开临时密钥214的散列和对于启用智能电话的打印服务有用的经加密的数据。

片上系统

图9图示了可以实现安全设备认证的各个方面的示例性片上系统(soc)900。soc900可以在任何合适的设备中实现,诸如智能电话、蜂窝电话、上网本、平板计算机、服务器、无线路由器、网络附加存储器、相机、智能家电、打印机、机顶盒或任何其他合适类型的设备。尽管参考soc进行了描述,但是图9的实体也可以被实现为网络接口控制器(nic)、专用标准部分(assp)、数字信号处理器(dsp)、可编程soc(psoc)、或现场可编程门阵列(fpga)。

soc900可以与电子电路系统、微处理器、存储器、输入-输出(i/o)逻辑控制、通信接口、可用于提供设备(诸如本文列出的任何设备)功能性的其他硬件、固件和/或软件集成。soc900还可以包括集成数据总线(未示出),其耦合soc的各种组件以用于组件之间的数据通信。集成数据总线或soc900的其他组件可以通过外部端口而被暴露或访问。例如,可以在制造的不同阶段通过外部端口来测试、配置或编程(例如,闪存)soc900的组件。

在该示例中,soc900包括各种组件,诸如输入-输出(i/o)逻辑控制902(例如,用以包括电子电路系统)和微处理器904(例如,微控制器、处理器核、应用处理器或dsp中的任何一个)。soc900还包括存储器906,其可以是ram、sram、dram、低延迟非易失性存储器、rom、一次性可编程(otp)存储器和/或其他合适的电子数据存储器的任何类型和/或组合。备选地或另外地,soc900可以包括用于访问诸如外部sram或闪存的附加或可扩展的片外存储器的数据接口(未示出)。在一些情况下,soc900包括各种应用、操作系统和/或软件,诸如固件908,其可以是由存储器906维护并由微处理器904执行的计算机可执行指令。soc900还可以包括其他各种存储器接口,以及被体现为硬件、固件、软件或其任何合适组合的组件。

在一些方面,soc900还包括可以实施为不同的或组合的组件的密钥112、认证器116、加密算法套件218和密码引擎220,如关于本文中给出的各方面所描述的。这些组件和/或实体的示例及其相应的功能参考图1和图2中所示的环境100的相应组件来描述。认证器116(整体或部分)可以实现为处理器可执行指令(例如,固件908),其由存储器906保持并且由微处理器904执行以实现如本文所述的安全设备认证的各个方面和/或特征。

独立地或与其他实体组合的认证器116可以利用用于实现本文中描述的各个方面和/或特征的组件或电路的任何合适的组合来实现。认证器116还可以被设置为与soc900的其他实体集成,诸如与soc900内的i/o逻辑902、网络接口控制器或密码引擎220集成。备选地或附加地,认证器116和其他组件可以实现为硬件、固件、固定逻辑电路或其任何组合。

本公开的其他方面涉及以下条款中的一个或多个。

一种方法包括:暴露设备的公开临时密钥。从远程设备接收的消息包括:设备的公开临时密钥的散列、远程设备的公开临时密钥和经加密的公开密钥、以及对于证明远程设备的公开密钥的所有权有用的经加密的散列值。基于远程设备的公开临时密钥和设备的私有临时密钥生成加密密钥。然后,设备利用加密密钥来解密远程设备的经加密的公开密钥和经加密的散列值。然后,通过基于经解密的散列值验证远程设备拥有经解密的公开密钥来认证远程设备。

在该方法中,消息是第一消息,散列值是第一散列值,并且该方法还包括:利用加密密钥来加密设备的公开密钥和对于证明设备的公开密钥的所有权有用的第二散列值。该方法还包括:经由设备的基于硬件的通信接口向远程设备传输第二消息,第二消息包括:远程设备的公开临时密钥的散列、设备的经加密的公开密钥、以及用于确认对远程设备的认证的经加密的第二散列值。

在该方法中,第一消息还包括:远程设备的凭证、远程设备的无线联网信息、远程设备的能力的指示、或由远程设备提供的服务的指示。在该方法中,第二消息还包括:设备的凭证、设备的无线联网信息、设备的能力的指示、或由设备提供的服务的指示。

在该方法中,暴露设备的公开临时密钥包括:经由基于硬件的通信接口向远程设备传输设备的公开临时密钥。备选地,在该方法中,设备的公开临时密钥是经由近场通信、射频标识、低功率无线个域网或设备的显示器来暴露的。

在该方法中,散列值包括:远程设备的私有密钥的散列、远程设备的私有临时密钥和设备的公开临时密钥。

在该方法中,散列值是第一散列值,并且验证动作包括:基于设备的私有密钥、远程设备的公开密钥和远程设备的公开临时密钥来生成第二散列值。该方法比较第一散列值和第二散列值,并且响应于第一散列值匹配第二散列值而认证远程设备。

在该方法中,第一消息还包括加密算法套件标识符,并且该方法基于远程设备的加密算法套件标识符和公开临时密钥来确定与远程设备相关联的唯一标识符。

另一种方法在设备处接收远程设备的公开临时密钥。基于远程设备的公开临时密钥和设备的私有临时密钥来生成加密密钥。该方法还基于设备的私有密钥生成对于证明公开密钥的所有权有用的散列值。然后利用加密密钥来加密设备的公开密钥和第一散列值。向远程设备传输第一消息,该第一消息包括:远程设备的公开临时密钥的散列、设备的公开临时密钥、设备的经加密的公开密钥、以及经加密的第一散列值。从远程设备接收的第二消息包括:设备的公开临时密钥的散列、远程设备的经加密的公开密钥和经加密的第二散列值。利用加密密钥来解密经加密的公开密钥和经加密的第二散列值。该方法然后基于第二散列值验证远程设备拥有公开密钥以认证远程设备。

该方法还包括:经由基于硬件的通信接口向远程设备传输第三消息,第三消息包括远程设备的公开临时密钥的散列和对于指示远程设备的认证有效的经加密的信息。

在该方法中,远程设备的公开临时密钥是经由基于硬件的通信接口来接收的。备选地,在该方法中,远程设备的公开临时密钥是经由近场通信、射频标识、低功率无线个域网、光学传感器或用户输入接口来接收的。

该方法还包括基于设备的私有密钥、远程设备的公开临时密钥和设备的私有临时密钥生成第一散列值。

在该方法中,验证动作包括:基于设备的私有临时密钥、远程设备的公开密钥和远程设备的公开临时密钥来生成第三散列值。验证动作还包括:将第二散列值与第三散列值进行比较,并且响应于第二散列值与第三散列值相匹配来认证远程设备。

在该方法中,第一消息还包括:设备的凭证、设备的无线联网信息、设备的能力的指示、或设备的服务的指示。在该方法中,第二消息还包括:远程设备的凭证、远程设备的无线联网信息、远程设备的能力的指示、或远程设备的服务的指示。

安全认证设备包括通信接口、基于硬件的处理器、以及存储处理器可执行指令的存储器,处理器可执行指令响应于由处理器执行而实现认证器。认证器暴露设备的公开临时密钥。从远程设备接收的消息包括:设备的公开临时密钥的散列、远程设备的公开临时密钥和经加密的公开密钥、以及对于证明远程设备的公开密钥的所有权有用的经加密的散列值。然后,认证器基于远程设备的公开临时密钥和设备的私有临时密钥来生成加密密钥。认证利用加密密钥来解密经加密的散列值和远程设备的经加密的公开密钥。通过基于经解密的散列值来验证远程设备拥有从远程设备接收的经解密的公开密钥,来认证远程设备。

在该设备中,消息是第一消息,散列值是第一散列值,并且该认证器还被实现为:利用加密密钥来加密设备的公开密钥和对于证明设备的公开密钥的所有权有用的第二散列值。设备的认证器还被实现为:经由基于硬件的通信接口向远程设备传输第二消息,第二消息包括:远程设备的公开临时密钥的散列、设备的经加密的公开密钥、以及用于确认对远程设备的认证的经加密的第二散列值。

在该设备中,第一消息还包括:远程设备的凭证、远程设备的无线联网信息、远程设备的能力的指示、或由远程设备提供的服务的指示。在该设备中,第二消息还包括:设备的凭证、设备的无线联网信息、设备的能力的指示、或由设备提供的服务的指示。

在该设备中,通过认证器经由基于硬件的通信接口向远程设备传输公开临时密钥,来暴露设备的公开临时密钥。

在该设备中,该设备被实施为计算设备、片上系统(soc)或网络接口控制器(nic)之一,并且基于硬件的通信接口被配置为符合ieee802.11的网络接口。

尽管用结构特征和/或方法操作特定的语言描述了本主题,但是应该理解,所附权利要求书中所定义的主题不必局限于本文所述的具体特征或操作,包括执行它们的顺序。

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