网站大量收购独家精品文档,联系QQ:2885784924

BLE配对讲述.doc

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
BLE配对讲述

BLE配对根据4.0.协议中相关文档的顺序从安全管理(SECURITY MANAGER)、安全管理协议SMP(SECURITY MANAGER PROTOCOL)和消息序列流程图(MESSAGE SEQUENCE CHARTS)这三个方面进行论述。具体内容见Volume 3 part H 安全管理 2.1 介绍 配对是一个三阶段的过程。前两个阶段总是使用,可能跟随着一个可选的传输特定秘钥分配的阶段。 阶段1:配对特征交换 阶段2:短期秘钥(STK)生成 阶段3:传输特定秘钥分配 设备首先在配对特征交换阶段交换IO能力来决定在第二阶段使用下面哪种方法: Just Works:只工作 Passkey Entry:输入密码 Out Of Band(OOB):带外 可选的,第三阶段将执行来分配传输特定秘钥,例如长期秘钥(LTK)和加密多样化(EDIV)值。无论过程2用哪种方法过程1和3都是一致的。 过程3只在使用第二阶段生成的STK加密的链路上执行。阶段1和2可以在加密或未加密的链路上执行。 加密工具箱 加密函数: ah用来创建在随机地址创建和解析中使用的24位哈希码。 c1用来生成在配对过程中使用的确认值 s1用来在配对过程中生成STK 基于上述加密功能的建筑块就是安全函数e。 2.2.1安全函数 e 安全函数e使用AES 分组密码生成128位的密文和128位的明文。encryptedData = e(key, plaintextData) 注意:安全函数e能在主机中实现或使用HCI_LE_Encrypt命令实现。 随机地址哈希函数ah 函数ah用来生成在可解析私有地址中使用的哈希值。 函数ah的输入:128位k,24位r,104位padding 参数r和padding级联生成r’, r’作为向函数e提供的128位输入参数明文。 r’ = padding || r r最不重要的字节变成r’中最不重要的字节,padding最重要的字节变成最重要的字节。 ah的输出为ah(k, r) = e(k, r’) mod 确认值生成函数c1 在配对过程中交换确认值。 输入参数: K:128 r:128 pres:56 preq:56 iat:1 ia:48位 rat:1 ra:48 padding:32位或0 为了创建8位的iat’和rat’,需要将iat和rat与0进行连接。iat和rat作为8位数据的低位字节。 p1 = pres || preq || rat’ || iat’连接运算 p1和r异或作为安全函数e的128位输入参数明文。珠子 p2 = padding || ia || ra p2和使用p1作为输入明文参数的函数e的结果异或,用来作为函数e的明文输入参数。C1的输出确定值如下: c1 (k, r, preq, pres, iat, rat, ia, ra) = e(k, e(k, r XOR p1) XOR p2) 秘钥生成函数s1 S1用来在配对过程中生成STK. 输入: k 128,r1 128,r2 128 r1’为r1的低64位,r2’为r2的低64位,r1’和r2’连接为128位的r’用来作为安全函数e的明文数据参数。 r’ = r1’ || r2’ s1的输出为:s1(k, r1, r2) = e(k, r’) 配对方法 当配对开始,初始化设备初始化配对特征交换。如果响应设备不支持配对或者配对不能被执行那么响应设备将使用含有错误代码“”Pairing Not Supported”的配对失败消息响应,否则使用配对响应消息响应。 配对特征交换用来交换IO能力,OOB认证数据可用性,认证需求,秘钥大小需求及将要分配的传输特定秘钥。IO能力、OOB认证数据可用性及认证需求用来决定在过程2使用的STK生成方法。 所有的配对方法使用并生成两个秘钥: 临时秘钥(TK):一个128位的临时秘钥用来在配对过程中生成STK 短期秘钥(STK):一个128位的临时秘钥用来随着配对加密一条连接。 认证需求由GAP设置。认证需求包括绑定类型和MITM保护需求。 初始化设备向响应设备指定它应向响应设备发送的传输特定秘钥和它需要响应设备向初始化设备发送的秘钥。响应设备用初始化设备应发送的秘钥和响应设备应发送的秘钥作为回复。如果设备收到无效参数的命令,它应用具有错误代码“Invalid Parameters”的配对失败命令响应。 安全属性 由SM提供的安全属性分到下面定义的一类: 认证

您可能关注的文档

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档