首页> 中国专利> 蓝牙网状网络中的安全证书恢复

蓝牙网状网络中的安全证书恢复

摘要

本公开的实施例涉及蓝牙网状网络中的安全证书恢复。根据实施例,公开了用于蓝牙网状网络的安全证书的恢复的方法。蓝牙网状网络的计算设备接收用户登录信息,并基于用户登录信息生成蓝牙网状网络的网络密钥。计算设备基于用户登录信息生成要被供应的第一节点的应用密钥。使用第一节点的单播地址和部分用户证书来生成设备密钥。根据网络的特性,通过四种技术中的一种技术来恢复当前序列号。节点的单播地址被假定为按顺序的,并且随后通过发送消息进行验证。使用蓝牙网状标准中定义的过程来恢复IV索引。在上述参数恢复后,网状网络可以使用上述计算设备正常运行。

著录项

  • 公开/公告号CN112423277A

    专利类型发明专利

  • 公开/公告日2021-02-26

    原文格式PDF

  • 申请/专利权人 意法半导体国际有限公司;

    申请/专利号CN202010772904.1

  • 发明设计人 P·潘迪;S·贾因;A·K·米陶尔;

    申请日2020-08-04

  • 分类号H04W4/80(20180101);H04W12/06(20210101);H04W12/069(20210101);

  • 代理机构11256 北京市金杜律师事务所;

  • 代理人董莘

  • 地址 瑞士日内瓦

  • 入库时间 2023-06-19 10:00:31

说明书

技术领域

本发明通常涉及用于设计蓝牙网状网络的系统和方法,并且在具体的实施例中,涉及恢复蓝牙网状网络中的安全证书。

背景技术

蓝牙网状网络扩展了蓝牙技术从一对一通信(即,配对)或一对多通信(即,广播)到大设备网络中的多对多通信的能力。蓝牙网状网络可以广泛应用于各种应用,诸如智能照明、楼宇自动化、无线传感器网络、资产追踪、智能家居和街道照明。

蓝牙网状网络受多个安全证书保护。这些安全证书由供应设备(通常为智能手机)生成并存储。如果这些安全证书中的任何或所有安全证书变得无法访问——例如,由于供应设备丢失或损坏——那么蓝牙网状网络将不能运行。

在传统的系统中,用于恢复安全证书的解决方案是将用于蓝牙网状网络的安全证书存储在基于云的存储服务中以用于后续的恢复。然而,在传统的系统中的该恢复方法有技术缺陷。传统的恢复方法要求互联网连接到云服务。使用云服务消耗额外的网络资源来进行互联网的连接。此外,在由于互联网连接较差或没有互联网连接而导致云服务无法访问的偏远或发展中地区,传统的恢复方法可能不可靠或无效地工作。此外,传统的基于云的恢复方法要求更多的设置步骤(例如创建用于云服务的账户),这甚至消耗更多的网络资源。此外,存在与传统的基于云的恢复方法相关联的安全和隐私问题,通常涉及共享个人信息(诸如用户的电子邮件地址和/或电话号码)。因此,需要对传统的恢复方法的技术问题提出技术解决方案以提高可靠性、提高网络资源利用率并降低恢复蓝牙网状网络的安全证书的安全风险。

发明内容

根据实施例,公开了用于蓝牙网状网络的安全证书的方法。蓝牙网状网络的计算设备(即,供应设备或供应者)接收用户登录信息。计算设备基于用户登录信息生成蓝牙网状网络的网络密钥。计算设备基于用户登录信息生成要被供应的第一节点的应用密钥。

在实施例中,用户登录信息是用户PIN。在另一实施例中,用户登录信息是用户名和密码的组合。

在一些实施例中,计算设备向蓝牙网状网络中的第一节点发送包括在蓝牙网状网络之上的供应命令的消息。该消息可以基于网络密钥和应用密钥而被加密。

在一些实施例中,计算设备可以(例如,从用户输入)接收蓝牙网状网络中节点的数目。然后计算设备从而可以基于用户提供的节点的数目顺序地生成与节点对应的单播地址。

在一些实施例中,计算设备可以基于与第一节点对应的单播地址和用户PIN/密码为每个未被供应节点生成设备密钥。该消息可以基于网络密钥、应用密钥和设备密钥而被加密。

在一些实施例中,计算设备可以从第一节点接收安全网络信标消息。计算设备可以恢复信标消息中的IV索引并用于在网络中发送消息。

该消息还可以包括序列号。在实施例中,计算设备可以针对每个消息发送具有增加的序列号的消息。然后计算设备基于从第一节点接收的确认消息来确定正确的序列号。在另一实施例中,计算设备可以通过初始化网络的IV索引更新强制使序列号为0。在另一实施例中,计算设备可以基于供应设备每天发送的消息的平均数目来确定消息中的序列号。在另一实施例中,计算设备可以在将随机数分配为计算设备的新地址后确定消息中的序列号为0。该随机数与计算设备的先前的地址不同。

还提供了用于执行该方法的计算设备以及计算机程序产品。

上文已经相当广泛地概述了本公开的实施例的特征,以便更好地理解下文本公开的详细描述。在下文中将会描述本公开的实施例的额外的特征和优点,这形成了本公开的权利要求的主题。本领域的技术人员应当理解,所公开的概念和具体实施例可以很容易地用作修改或设计用于执行本公开的相同目标的其他结构或过程的基础。本领域的技术人员还应当意识到,这种等效结构不背离所附权利要求中所提出的本公开的精神和范围。

附图说明

为了更完全地理解本公开及其优点,现在将结合附图参考以下描述,其中:

图1示出了用于运行蓝牙网状网络的传统技术的高阶流程图;

图2示出了用于运行蓝牙网状网络的实施例技术的高阶流程图;

图3示出了根据一些实施例的用于计算网络密钥、应用密钥和设备密钥的框图;

图4示出了基于标准的蓝牙网状网络的安全网络信标包的格式;

图5示出了用于验证安全网络信标包的方案;

图6示出了根据一些实施例的用于选择序列号(SEQ)恢复方法的流程图;

图7示出了在蓝牙网状网络中处理单播地址的示例;

图8描述了根据一些实施例的用于在蓝牙网状网络中设置和/或恢复安全证书的方法的流程图;

图9示出了根据一些实施例的可以用于所公开的技术的系统的框图;以及

图10示出了根据一些实施例的示例处理系统的框图。

除非另外指出,否则不同图中对应的数字和符号通常表示对应的部分。绘制这些图形是为了清楚地说明实施例的相关方面,而不需要按比例绘制。

具体实施方式

下文将详细讨论目前优选的实施例的制造和使用。然而,应当理解,本发明提供了许多在各种具体情况下呈现的可应用的发明概念。所讨论的具体实施例仅仅是对制造和使用本发明的具体方法的说明,而非限制本发明的范围。

为了与蓝牙网状网络中的节点通信,需要多个安全证书。这些安全证书中的第一证书是网络密钥,该网络密钥对蓝牙网状网络中的所有节点是共用的。第二证书是对蓝牙网状网络中具体应用(例如,智能照明)共同的应用密钥。第三证书是设备密钥。该设备密钥对蓝牙网状网络中的每个节点都是唯一的。第四和第五证书是IV索引和序列号(SEQ)。IV索引和SEQ共同形成用于防止重播攻击的“现时”。现时是任意数,其对于蓝牙网状网络中每个由特定节点发送的消息都是唯一的。蓝牙网状网络所需的最后一个证书是节点的单播地址。

图1示出了用于运行蓝牙网状网络的传统技术的高阶流程图100。在设置阶段102期间,蓝牙网状网络的供应应用被安装在供应设备(诸如移动电话)上。用户还创建了用于基于云的服务的用户名和密码,用于后续的备份和恢复操作。在设置阶段102,IV索引被初始化为0。

在供应阶段104,所安装的供应应用扫描其附近的未供应的蓝牙设备。在传统的系统中,供应应用在供应阶段随机生成网络密钥和设备密钥,并在配置104期间生成应用密钥。此外,供应应用顺序地分配单播地址,并为每个未供应的设备分配设备密钥。

在操作阶段106,当用户在供应设备上使用供应应用以向蓝牙网状网络发送任何命令时,生成消息。该消息使用网络密钥和应用密钥来加密。所加密的消息还受唯一的现时(例如,从上述IV索引和SEQ形成的现时)保护。SEQ在每个消息发送后增加。

如果蓝牙网状网络的安全证书丢失,那么蓝牙网状网络不能正常运行。如上所述,使用基于云的方法用于恢复安全证书的传统的系统存在技术问题,包括不可靠性、互联网连接的网络资源的无效使用和安全风险。为了解决传统系统的这些技术问题,本公开的实施例技术提供了技术解决方案。与传统系统的随机生成方法相比,本公开的实施例技术基于用户登录信息生成一些安全证书(例如网络密钥、应用密钥和设备密钥)。用户登录信息可以是用于登录到供应应用的用户名和密码(也称为网络名和网络密码)的组合或用户PIN。通过基于用户登录信息生成网状安全证书,而不是在传统系统中随机生成,蓝牙网状网络的剩余证书可以使用蓝牙网状网络本身恢复,而不需要互联网连接到云服务。这样做,本公开的实施例技术提供了技术改进,该技术改进提高了可靠性、提高了网络资源利用率并降低了传统系统上的安全风险。

图2示出了用于运行蓝牙网状网络的实施例技术的高阶流程图200。在设置阶段202,蓝牙网状网络的供应应用被安装在供应设备(诸如移动电话)上。与传统的方法不同,在该阶段,用户创建本地用户名和密码(或本地PIN)用于生成本地安全证书,并用于随后本地安全证书的恢复。在设置阶段202,IV索引被初始化为0。

在供应阶段204期间,所安装的供应应用扫描其附近的未供应的蓝牙设备。与传统方法不同,这里供应应用基于供应阶段204(例如,如图3所示)的本地用户名和密码(或本地PIN)使用密码函数生成网络密钥和应用密钥。此外,供应应用顺序地分配单播地址并为每个未供应的设备分配设备密钥。

在操作阶段206期间,当用户将任何命令发送到蓝牙网状网络中的蓝牙节点时,生成消息。使用网络密钥和应用密钥来加密消息。所加密的消息还受唯一的现时(例如,从上文所述的IV索引和SEQ形成的现时)保护。SEQ在每个消息发送后增加。

通过实施例技术,用户在设置时为供应设备(例如,智能手机应用)上的供应应用创建本地用户名和密码(或用户PIN)。一旦基于本地用户名和密码(或本地PIN)生成了安全证书,那么供应设备上的供应应用可以将未供应的网状设备供应到蓝牙网状网络中(例如,发送如运行206所述的命令)。

随后,如果用户需要访问第二设备(例如,另一个智能手机)上的蓝牙网状网络,或者如果在原始供应设备上的内容丢失的情况下,用户需要恢复安全证书,那么用户可以使用被安装有供应应用的第二设备。用户可以使用第二设备上的供应应用重新输入在设置阶段202期间创建的相同的本地用户名和密码(或相同的本地PIN)。一些安全证书可以基于本地用户名和密码(或本地PIN)生成。其他证书可以从蓝牙网状网络恢复,而不需要访问互联网。实施例技术解决方案是安全的,因为这些解决方案使用了蓝牙网络信息以及用户提供的本地用户名和密码(至少密码是秘密的)的组合。

如上所述,对于蓝牙网状网络通信,需要网络密钥、应用密钥、设备密钥、IV索引、SEQ号和单播地址。根据实施例技术,通过将加密函数应用于本地用户名和密码来创建通过将加密函数应用于本地密码和单播地址的网络密钥、应用密钥和设备密钥。图3示出了根据一些实施例的用于计算网络密钥、应用密钥和设备密钥的框图。

例如,为了创建网络密钥302,可以基于以下函数创建用于网络密钥的盐。

NetKeySalt=S1(“nksl”)

这里,S1是本领域已知的由蓝牙网状定义的盐生成函数。S1可以使用高级加密标准基于密码的消息验证代码(AES-CMAC)函数。那么,可以基于以下函数生成网络密钥302。

NetKey=CMAC(K,UserName||Password||NetkeySalt)

这里,K是由供应商选择的供应商特定密钥,并且在供应应用中硬编码。CMAC代表本领域已知的基于密码的消息验证代码。CMAC是使用与秘密密钥耦合的分组密码用于计算消息验证代码的消息验证代码算法。CMAC可以用于验证消息的完整性和真实性两者。

为了创建应用密钥304,可以基于以下函数创建应用密钥的盐。AppKeySalt=S1(“aksl”)

那么,可以基于以下函数生成应用密钥304。

AppKey=CMAC(K,UserName||Password||AppKeySalt)

为了创建设备密钥306,可以基于以下函数创建设备密钥的盐。DevKeySalt=S1(“dksl”)

那么,可以基于以下函数生成设备密钥306。

DevKey=CMAC(K,UnicastAddr||DevKeySalt||Password)

为了恢复上述安全密钥,用户可以使用第二设备(或者使用原始设备)并输入相同的用户名和密码。供应应用可以使用具有相同的盐值和K值的相同的密码函数(例如,S1和CMAC)重新生成网络密钥302和应用密钥304。

在一些实施例中,实施例技术中描述的密码函数可以使用与官方蓝牙网状配置规格(例如,CMAC、带CBC-MAC(CCM)的计数器)中相同的底层加密原语,使得可以重复使用相同的加密库。

在传统的系统中,安全密钥是随机生成的。相比之下,实施例技术使用应用于用户名和密码(或用户PIN)的密码安全函数来生成这些安全密钥。此外,还使用了供应商特定密钥K(在供应应用中硬编码)。可选择地,供应商特定密钥K可以存储在供应设备上的安全元件(例如,安全存储器)上以确保供应商特定密钥K的安全。

使用实施例技术,只要用户登录信息(例如,用户名和密码)保持机密,蓝牙网状网络是完全安全的。此外,由于网络密钥是由供应设备生成的,因此实施例技术与传统的系统可以互操作。

IV索引可以使用安全网络信标来恢复。在蓝牙网状网络中,每个节点定期发送安全网络信标包。图4示出了蓝牙网状网络中安全网络信标包400的格式。安全网络信标包400包括第一八位字节402、标志404、网络ID 406、IV索引408和验证值410。网络ID 406和标志404用于(在同一个区域运行的几个网络中)标识蓝牙网状网络及其安全状态。IV索引可以从信标包400的字段408恢复。验证值410用于使用网络密钥验证信标的真实性。网络密钥的恢复如上所述。

图5示出了用于验证安全网络信标包的方案。供应设备(例如,节点502)从4个不同的蓝牙网状网络接收安全网络信标包:网状网络504、网状网络506、网状网络508和网状网络510。如图5中的示例所示,对于节点502只有来自网状网络508的信标包具有匹配的网络ID(02)和匹配的验证值(60)。因此,来自网状网络508的安全网络信标包由供应设备502验证,并且供应设备502上的供应应用可以从网状网络508的信标包恢复IV索引。

在蓝牙网状网络中,序列号(SEQ)用于防止重播攻击。如果攻击者(使用包嗅探器等)捕捉到消息,并再次发送(即,重播)相同的消息来重复动作,那么节点应该丢弃这种重播消息。例如,车主使用车主的密钥卡来解锁他/她的车,而偷车贼可以从密钥卡捕捉信号。然而,偷车贼随后重播捕捉到的相同的信号不应该解锁车主的车。蓝牙网状网络通过在每个发送的包中包括序列号(SEQ)来保护其免受这种重播攻击。如果蓝牙网状网络中的接收节点检测到序列号被重复使用了,那么接收节点会丢弃该包。因为包(包括序列号)是加密的,所以攻击者不可能伪造序列号。

为了执行SEQ恢复,存在4种实施例方法必须使用正确的SEQ使得包不被丢弃。用于SEQ恢复的第一实施例方法(“方法1”)是蛮力法。供应应用可以尝试发送具有增加的SEQ的消息,直到供应应用从接收节点接收到响应。供应应用可以开始发送SEQ=0的消息,并且在每次传输时保持增加SEQ。如果消息中的SEQ号不正确,那么接收节点不会响应该消息。接收到的消息由接收节点简单地丢弃。当消息中的SEQ号到达接收节点的当前SEQ号时,接收节点会将响应发送回发送器(即,供应设备)。为了加速该过程,SEQ号的增量可以指数地增加而不是线性地增加。攻击者不能使用第一实施例方法,因为只能重播现有的消息。攻击者不能用新的SEQ创建新的消息,因为上文所述的安全密钥需要加密该消息(包括SEQ)。

用于SEQ恢复的第二实施例方法(“方法2”)是使用IV索引更新流程。如图4所示,IV索引是4-八位字节值。在蓝牙网状网络中,IV索引与3-八位字节SEQ组合使用为加密包创建唯一的现时值。蓝牙网状规格定义了IV索引更新流程,以在SEQ即将滚动时增加IV索引。因此,IV索引更新流程的副作用是当新的IV索引开始生效时SEQ被重新设置为0。此后,包可以以从0开始的序列号发送。根据蓝牙网状规格,节点在192小时(8天)内不能执行一次以上的IV索引更新。因此,如果使用用于SEQ恢复的第二实施例方法,那么蓝牙网状网络在8天过去之后才能再次恢复。

用于SEQ恢复的第三实施例方法(“方法3”)是基于估计的每天发送的消息的平均数目来猜测最大的可能的序列号。第三实施例方法假设每天能够发送的消息的最大数目。可以基于以下等式计算在任何给定的日期的最大的可能的序列号(SEQmax)。

SEQmax=(每天消息的平均数目)x(自基准日期起经过的天数)

在证书恢复阶段期间,SEQmax被用作恢复后的开始序列。例如,假设在蓝牙网状网络中,允许任何节点每天发送最大100条消息。此外,假设基准日期是2019年1月1日(例如,SEQ设置为0的日期)。如果证书恢复在2019年1月31日执行,那么在恢复后要使用的开始SEQ是SEQmax=100x30=3000。第三实施例要求能够由蓝牙网状网络中节点一天发送的消息的最大数目的限制。

用于SEQ恢复的第四实施例方法(“方法4”)是使用供应设备的随机单播地址。每个蓝牙网状节点存储从每个源地址(即,源设备的单播地址)接收的最后的消息的序列号。用于SEQ恢复的第四实施例方法在证书恢复流程后将随机地址分配到供应设备。因为在证书恢复后供应设备的源地址与在证书恢复流程前不同,供应设备可以开始发送SEQ从0开始的消息,而不会被接收节点拒绝。第四实施例方法的限制是,如果为供应设备随机生成的地址与先前使用的地址相同,那么该消息会被接收节点丢弃。因此,在一些罕见的情况下,随机地址生成可能需要执行多次来确保新的源地址与供应设备使用的先前的源地址不同。此外,存储在针对供应设备的节点上的任何发布地址也需要更新。

SEQ恢复方法的选择取决于应用的类型。例如,对于低消息量的应用(诸如照明开关应用)(用户不需要每天开灯或关灯30至40次以上),可以使用用于SEQ恢复的第三实施例方法。对以其他类型的应用,可以使用用于SEQ恢复的第二实施例方法。如果已经在8天内使用了用于SEQ恢复的第二实施例方法,那么可以使用用于SEQ恢复的第一实施例方法。

图6示出了根据一些实施例的用于选择SEQ恢复方法的流程图650。在操作652中,供应设备确定蓝牙网状网络中的节点是否向供应器公布其地址。如果没有公布,那么在操作654中供应应用使用用于SEQ恢复的第四实施例方法。如果公布了,那么流程图650行进到操作656。

在操作656中,供应应用确定其是否是低消息量的应用。如果是,那么在操作658中供应应用使用用于SEQ恢复的第三实施例方法;否则,流程图569行进到操作660。

在操作660中,供应应用确定最近(例如,8天内)是否执行IV索引更新。如果没有执行,那么在操作662中供应应用使用用于SEQ恢复的第二实施例方法。如果执行了,那么在操作664中供应应用使用用于SEQ恢复的第一实施例方法。

如上所述,节点的单播地址也需要恢复。蓝牙网状网络中的节点的单播地址由供应设备以顺序的方式分配。在证书恢复期间,供应应用可以接收从用户输入安装的节点的数目。向节点的数目添加额外的数量(例如,额外15%)可以考虑已经替换的节点(被替换节点的单播地址可能不会重新使用)。供应应用可以使用证书单播地址创建节点列表。可以通过发送确认的消息并检查是否接收到响应来确定这些假设的地址的有效性。如上所述(例如,DevKey=CMAC(K,UnicastAddr||DevKeySalt||Password)),一旦确定了单播地址,就可以对节点计算设备密钥。供应应用可以向节点发送打开/关闭命令,以在物理上标识它们并设置友好的名称。

图7示出了在蓝牙网状网络700中单播地址处理的示例。蓝牙网状网络700包括供应设备701、节点702、节点703(未示出)、节点704、节点705和节点706(未示出)。供应设备701、节点702、节点703、节点704、节点705和节点706的单播地址分别是1、2、3、4、5和6。供应设备701向节点702、节点703、节点704、节点705和节点706发送包含供应命令的消息。消息的格式以格式750的形式示出,其包括IVI(IV索引)、NID(网络ID)、TTL(存活时间)、SEQ(序列号)、SRC(源地址)、DST(目标地址)、传输PDU(协议数据单元)和NetMIC。节点702、703、704、705和706中的每个节点只接受和处理具有其对应的地址的命令,并且拒绝具有其他地址的命令。例如,节点702只接受具有地址为2的命令并将响应发送回供应设备701。对于具有其他地址(例如,3、4、5、6)的其他命令,节点702拒绝这些命令(即,没有响应被发送回供应设备701)。

为了进一步确保实施例证书恢复技术的安全性,用户登录信息可能需要定期更新。用于更新登录信息的一种方法可以通过运行本领域已知的蓝牙网状规格中定义的密钥刷新流程来执行。密钥刷新流程可能要花费一些时间来执行。用于更新登录信息的第二方法可以重新供应蓝牙网状网络中的所有节点来立即改变证书。第二方法更适用于小型网络。

图8示出了根据一些实施例的用于在蓝牙网状网络中恢复秘密证书的方法800的流程图。方法800可以由计算设备(诸如在初始设置阶段或在安全证书恢复阶段的供应设备)的一个或多个处理器执行的软件的例程、子例程或模块实行或执行。对于本公开,用于实行或执行方法800的代码完全在本领域的一般技术人员的范围内。方法800可以包括比所示和所描述的方法更多或更少的操作,并且可以以不同的顺序实行或执行。由计算设备的一个或多个处理器可执行的计算机可读代码或软件的指令可以存储在非暂时性计算机可读介质上(诸如,计算设备的存储器)。

方法800在操作802中开始,其中蓝牙网状网络的计算设备接收用户登录信息。在操作804中,计算设备基于用户登录信息生成蓝牙网状网络的网络密钥。在操作806中,计算设备基于用户登录信息生成要被供应的第一节点(即,网状节点)的应用密钥。

在实施例中,用户登录信息是用户PIN。在另一实施例中,用户登录信息是用户名和密码的组合。

计算设备将消息发送到蓝牙网状网络中的第一节点,该消息包括蓝牙网状网络之上的供应命令。该消息可以基于网络密钥和应用密钥而被加密。

在一些实施例中,计算设备可以(例如从用户输入)接收蓝牙网状网络中的节点的数目。然后计算设备可以基于节点的数目顺序地生成与节点对应的单播地址。

在一些实施例中,计算设备可以基于与第一节点对应的单播地址来针对节点中的第一节点(即,未供应的节点)生成设备密钥。该消息可以基于网络密钥、应用密钥和设备密钥而被加密。

计算设备可以从供应的代码接收安全网络信标消息。计算设备可以在安全网络信标消息中恢复IV索引并在发送到接收节点的消息中设置IV索引。

该消息还可以包括序列号。计算设备可以针对每个消息发送具有增加的序列号的消息。计算设备可以基于从第一节点(即,接收节点)接收的确认消息确定消息中的序列号。计算设备可以在从第一节点接收针对IV索引的更新消息后确定消息中的序列号为0。在另一实施例中,计算设备可以基于供应设备每天发送到第一节点的消息的平均数目来确定消息中的序列号。在另一实施例中,计算设备可以在将随机数分配为计算设备的新地址后确定消息中的序列号为0。该随机数与计算设备的先前的地址不同。

图9描绘了根据一些实施例的用于实施例技术的系统900的框图。系统900包括应用层902、证书恢复子系统904、网状安全子系统906、供应子系统910、代理层912、低功耗蓝牙(BLE)层914,访问层920、上传输层922、下传输层924和网络层926。应用层902为用户提供软件应用以使用系统900。软件应用可以是上文所述的供应应用。用户可以通过应用层902输入信息,诸如用户登录信息(例如,用户名和密码的组合或用户登录PIN)、蓝牙网状网络中节点的数目或节点的配置信息。网状安全子系统906为蓝牙网状网络提供了安全特性,诸如更新IV索引和刷新安全密钥。证书恢复子系统904位于应用层902与网状安全层906之间。证书恢复子系统904执行本公开中所描述的安全证书恢复任务。例如,证书恢复子系统904可以使用本公开中所描述的实施例技术生成蓝牙网状网络的网络密钥、要供应的第一节点(即,网状节点)的应用密钥、节点的单播地址和设备密钥。证书恢复子系统904还可以使用本公开中所描述的实施例技术确定IV索引和SEQ。供应子系统910从应用层902接收用户输入并基于用户输入(例如,节点的配置信息)生成对应的命令。该命令可以包括蓝牙网状网络中要被供应的节点的配置。

访问层920可以确定应用层902在数据格式、数据加密/解密和数据验证方面如何利用上传输层922。上传输层922可以处理传递到/来自访问层920的应用数据的加密/解密和验证。下传输层924可以执行较长协议数据单元(PDU)的分段和重组。网络层926可以执行网络管理任务(诸如定义消息地址类型和网络消息格式)。网络层926还可以处理网络消息的验证和/或加密。此外,网络层926可以处理网络消息的寻址方面(诸如,单播、广播或分组)。

BLE层914提供用于生成或接收蓝牙无线电波的蓝牙低功耗(LE)堆栈。代理层912是中间层,该中间层帮助BLE 914与网络层926、网状安全层906和供应子系统910交互。

图10是示例处理系统1000的框图,该示例处理系统1000可以用于实现本文公开实施例并提供较高水平的实现示例。如上所述的供应设备可以使用示例处理系统1000或处理系统1000的变体来实现。处理系统1000例如可以是智能手机、服务器、桌面终端或任何适用的处理系统。可以使用其他适用于实现本公开中所描述的实施例的处理系统,这些系统可以包括不同于下文讨论的部件。尽管图1000示出了每个部件的单个实例,但是在处理系统1000中可能存在每个组件的多个实例。

处理系统1000可以包括一个或多个处理器1002,诸如处理器、图形处理单元(GPU)、微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、专用逻辑电路、张量处理单元(TPU)、人工智能(AI)加速器或它们的组合。处理系统1000还可以包括一个或多个输入/输出(I/O)接口1004,这些接口能够与一个或多个适当的输入设备1014和/或输出设备1016接合。处理系统1000可以包括用于与网络(例如,内联网、互联网、P2P网络、WAN和/或LAN)或其他节点有线或无线通信的一个或多个网络接口1006。网络接口1006可以包括用于网络内和/或网络间通信的有线连接(例如,以太网电缆)和/或无线连接(例如,一个或多个天线)。网络接口1006中的至少一个接口用于在蓝牙网状网络之上通信数据。

处理系统1000还可以包括一个或多个存储单元1008,该存储单元可以包括大容量存储单元,诸如固态驱动器、硬盘驱动器、磁盘驱动器和/或光盘驱动器。处理系统1000可以包括一个或多个存储器1010,该存储器可以包括易失性或非易失性存储器(例如,闪存、随机访问存储器(RAM)和/或只读存储器(ROM))。(多个)非暂时性存储器1010可以存储由一个或多个处理器1002执行的指令,诸如执行本公开中所描述的示例,例如执行蓝牙网状网络的安全证书的恢复。一个或多个存储器1010可以包括其他软件指令,诸如用于实现操作系统和其他应用/功能。可选择地,一个或多个存储器1010可以包括只可以由处理系统1000的受信任的执行环境访问的安全存储器1020。受信任的执行环境可以包括存储某些安全数据(例如上文所述的供应商特定密钥K)的安全存储器1020。受信任的应用还可以存储在安全存储器1020中用于访问安全存储器1020中的安全数据。在一些示例中,一个或多个数据集合和/或模块可以由外部存储器(例如与处理系统1000有线或无线通信的外部驱动器)提供或者可以由暂时性或非暂时性计算机可读介质提供。非暂时性计算机可读介质的示例包括RAM、ROM、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存、CD-ROM或其他便携式存储器。可能存在在处理系统1000的部件之间提供通信的总线1102,处理系统1000的部件包括一个或多个处理器1002、(多个)I/O接口1004、(多个)网络接口1006、(多个)存储单元1008和一个或多个存储器1010。总线1012可以是任何适当的总线架构,例如包括存储器总线、外围总线或视频总线。

在图10中,(多个)输入设备1014(例如,键盘、鼠标、麦克风、触摸屏和/或小键盘)和(多个)输出设备1016(例如,显示器、扬声器和/或打印机)被示出为处理系统1000的外部。在其他示例中,(多个)输入设备1014和/或(多个)输出设备1016中的一个或多个设备可以被包括为处理系统1000的部件。在其他示例中,不存在任何(多个)输入设备1014和/或(多个)输出设备1016,在这种情况下可以不需要(多个)I/O接口1004。

尽管已经参考所示的实施例描述了本公开,但是本说明书不旨在被解释为限制的意义。所示的实施例的各种修改和组合,以及本公开的其他实施例将通过对本说明书的参考而对本领域的技术人员变得明显。因此,旨在使所附权利要求包含任何此类修改或实施例。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号