新闻中心

NEWS CENTER

FIDO IoT 协议介绍

发布时间:2021-04-16 09:17:03|浏览次数:2847

背景: 为什么FIDO联盟要定义IoT标准?

● IoT业界需要一个标准的设备身份识别,并且在认证过程中消灭口令;

● FIDO联盟在定义标准、产品认证两方面有足够经验,UAF、FIDO2两项标准已经有大量产品通过认证、被客户采纳;

● FIDO联盟中有大量企业参与,覆盖应用端、设备端,IoT标准是由高通、Intel、谷歌、微软、Arm、亚马逊等联合编撰的。


01 FIDO IoT标准概述

FIDO Device Onboard(FDO)标准,这一阶段指设备安装密钥、配置数据,就可以连入IoT平台,用户使用平台给设备打补丁、安装更新程序、提取数据。


协议中的安全考量:


● 在设备onboard过程中,不能泄漏之前或未来的服务络信息;

● 需要对Device运行环境进行校验。


成果:


● 标准协议:https://fidoalliance.org/specs/FDO/fido-device-onboard-v1.0-ps-20210323/fido-device-onboard-v1.0-ps-20210323.html


● Linux Foundation Edge子项目:

https://www.lfedge.org/projects/securedeviceonboard/


02 协议内容

2.1 相关名词释义


● Onboarding:开箱之后的设备,加入某一个平台、属于某一个用户的过程


 SDO:Secure Device Onboard,即当前这套协议


● 协议中角色


  • Manufacturer:设备厂商

  • Device:即IoT设备

  • Device ROE:协处理器或处理器一种形式,对代码执行同主处理器区分开,ARM TEE即典型的ROE

  • Device ROE App:运行于ROE环境下的应用

  • Device to Manager Agent

  • Owner:设备的真实使用者,通过Owner Voucher来证明设备所有权。这里的Owner并不是一个真实用户,而是指用户设备上的软件

  • Manager(Management Service):运行于用户自有设备(手机、PC端)的管理程序

  • Management Agent:Device上的管理组件,搭配Manager使用

  • Owner Onboarding Service:Onboarding中间服务,结束后会将所有权传递给Manager service

  • Rendezvous Server:IoT平台服务,作为用户(Owner Onboarding Service)和设备(Device)间的第三方,协助建立完成Onboarding。这个服务可以由厂商维护,也可以是销售商,当然需要维护一些数据,这个详细协议里会涉及。


● 密钥体系


  • Device Attestation Key:在Device中预置的密钥,用于证明ROE运行环境安全

  • OwnerShip Credential Key Pair:所有权凭据密钥,用于设备识别所有权

  • Device Credential:是由厂商生成,存储于设备中,用于所有权转换。可以理解为一次性密钥对,只是在所有权转换时使用。


2.2 架构及流程

image.png

架构图


流程大致如下:


1.设备厂商根据DI协议,对设备进行初始化


核心是:


● 设备预置Device Credential

● 设备预置Device attestation

● 生成一个GUID(代表设备自己),存入设备中

● 生成Ownership Voucher


2.厂商和用户,通过已有的供应链方法,生成Ownership Voucher并传递


3.用户同Rendezvous Server交互,开始进行Onboarding,这一阶段协议为TO0


核心是:


● Rendezous Server检查Owner Voucher,判断是否有资格访问设备

● Rendezvous Server建立Owner单条记录,要记录Owner访问地址、访问协议

● Owner等待设备来连接


4.用户操作设备同Rendezvous Server交互,这一阶段协议为TO1


核心是:


● Device同Rendezous Server交互,提交自己的信息

● Device获取Owner的连接地址、协议


5.Owner同Device直接进行交互,这一阶段协议为TO2


核心是:


● Owner替换Device上credential(不替换attestation key),Device生成一个新密钥,用于后续二次销售等操作


6.最终完成Onboarding过程


以上操作完成后,FIDO Device Onboard过程结束。Device所有权转移到Owner,并建立安全连接。

2.3 子协议

image.pngimage.png

2.4 Ownership Voucher

所有权证明,一个结构化的电子文本,用于证明Owner对Device所有权。

image.png

这里使用了同PKI相似的机制,但对报文进行了压缩。


● Device会预置厂商公钥匙

● 厂商对应的每一级销售、分发机制,都需要有自己的公私钥,并被上一级签发

● 最后一级是Owner自己的公私钥


之后,我们也将对IoT协议进行更多详细介绍,敬请期待。