一机一密 一型一密 设备安全认证_物联网平台
一机一密 一型一密
如何管理设备生命周期_物联网平台(IoT)-阿里云帮助中心 https://help.aliyun.com/zh/iot/user-guide/connect-and-disconnect-devices
物联网平台支持的直连设备身份认证方案有:
-
一机一密:预先为每个设备烧录其唯一的设备证书(ProductKey、DeviceName和DeviceSecret)。
-
一型一密:同一产品下所有设备可以烧录相同固件(即烧录ProductKey和ProductSecret),并需在控制台上设备所属产品的产品详情页,打开动态注册开关。设备发送连接请求时,物联网平台验证产品证书。认证通过,下发该设备对应的DeviceSecret。
设备安全认证_物联网平台(IoT)-阿里云帮助中心 https://help.aliyun.com/zh/iot/user-guide/authenticate-devices/
设备接入物联网平台之前,需通过身份认证。目前,物联网平台支持使用设备密钥、ID²认证、X.509证书和开源MQTT托管设备认证进行设备身份认证。
设备密钥认证
创建产品时,认证方式选择为设备密钥,然后在该产品下添加设备,获取物联网平台颁发的ProductSecret、DeviceSecret等密钥。设备接入物联网平台时,会使用物联网平台颁发的密钥信息,进行身份认证。
针对不同的使用环境,物联网平台提供以下四种设备密钥认证方案。
-
一机一密:每台设备烧录自己的设备证书(ProductKey、DeviceName和DeviceSecret)。
-
一型一密预注册:同一产品下设备烧录相同产品证书(ProductKey和ProductSecret)。开通产品的动态注册功能,设备通过动态注册获取DeviceSecret。
-
一型一密免预注册:同一产品下设备烧录相同产品证书(ProductKey和ProductSecret)。开通产品的动态注册功能,通过动态注册,设备不获取DeviceSecret,而是获取ClientID与DeviceToken的组合。
-
子设备动态注册:网关连接上云后,子设备通过动态注册获取DeviceSecret。
四种方案在易用性和安全性上各有优势,您可以根据设备所需的安全等级和实际的产线条件灵活选择。方案对比,如下表所示。
对比项 |
一机一密 |
一型一密预注册 |
一型一密免预注册 |
子设备动态注册 |
设备端烧录信息 |
ProductKey、DeviceName、DeviceSecret |
ProductKey、ProductSecret |
ProductKey、ProductSecret |
ProductKey |
云端是否需要开启动态注册 |
无需开启,默认支持。 |
需打开动态注册开关。 |
需打开动态注册开关。 |
需打开动态注册开关。 |
是否需要提前在物联网平台创建设备,注册DeviceName |
需要,产品下DeviceName唯一。 |
需要,产品下DeviceName唯一。 |
不需要。 |
需要,确保产品下DeviceName唯一。 |
产线烧录要求 |
逐一烧录设备证书,需确保设备证书的安全性。 |
批量烧录相同的产品证书,需确保产品证书的安全存储。 |
批量烧录相同的产品证书,需确保产品证书的安全存储。 |
|
安全性 |
较高 |
一般 |
一般 |
一般 |
是否有配额限制 |
有,不同维度(产品、实例和阿里云账号)下设备接入配额的限制不同。详细说明,请参见设备接入的使用限制。 |
有,单个网关最多可注册1500个子设备。 |
||
其他外部依赖 |
无。 |
依赖网关的安全性保障。 |
X.509证书认证
X.509是由国际电信联盟(ITU-T)制定的数字证书标准,具有通信实体鉴别机制。目前物联网平台仅尊享型企业版实例的云网关功能支持使用X.509证书进行设备身份认证。
使用X.509证书的操作流程,请参见使用X.509证书认证。
ID²认证
阿里云提供IoT设备身份认证ID²(Internet Device ID)。ID²是一种物联网设备的可信身份标识,具备不可篡改、不可伪造、全球唯一等安全属性。
在创建产品时,认证方式选择为ID²,设备接入物联网平台时,使用ID²身份认证。
使用ID²认证,需购买ID²服务。ID²服务购买方式和使用指南,请参见IoT设备身份认证(ID²)用户手册。
-
目前,仅华东2(上海)地域的企业版实例和旧版公共实例下,支持使用ID²证书认证。
-
连网方式选择为LoRaWAN的产品不支持ID²认证。
开源MQTT托管设备认证
仅需要使用MQTT连接和消息上下行的场景中,为降低使用成本,设备接入物联网平台MQTT型企业版实例时,可使用Username、Password、SN信息作为设备密钥进行设备身份认证。
认证方式和使用说明,请参见开源MQTT托管设备认证。
使用MQTT的签名参数认证
设备通过您自研的MQTT接入工具连接物联网平台时,需使用MQTT的签名认证参数username、passwd和mqttClientId进行设备身份认证。您可使用设备密钥计算MQTT连接的签名参数值,具体内容,请参见如何计算MQTT签名参数。