Security Authentication Framework in AliOS Things uMesh

简介: Discover how AliOS Things safeguards the integrity of IoT networks with uMesh and Internet Device ID authentication.

AliOS Things is a light-weight embedded operating system for Internet of Things (IoT). It contains a multitude of components with high capabilities and is convenient for further developments. AliOS Things supports devices that connect to Alibaba Cloud Link, integrates the cloud, and can be applied to real-life applications such as smart homes and smart cities. AliOS Things integrates cloud technology with IoT, making it possible to establish complex IoT networks by eliminating physical limitations of devices.

However, the large number of terminal devices involved in IoT challenges the regular way of maintaining cyber security. Additionally, the integration of cloud technology leaves IoT network vulnerable to cyber-attacks. With more and more cyber-attacks reported these years, security is of vital importance for IoT developers.

Safeguarding IoT Networks with uMesh

In order to overcome this tough task, uMesh has paid great attention to ensure the safe connection of devices and maintain the security and confidentiality of data in cloud. As the core component of AliOS Things, uMesh can be characterized as self-organized, self-repairing, and multi-hop. It is suitable for scenarios that need large-scale deployment and with high security demands, such as intelligent homes, smart lighting, and commercial buildings.

The main capabilities and features of uMesh include:

  • Seamless support for IPv4 and IPv6
  • Support for various communication media, such as Wi-Fi, BLE, IEEE 802.15.4
  • Heterogeneous networking among different communication media
  • Tree topology and mesh topology
  • Low energy-consumption
  • ID² platform to authenticate and authorize the access devices
  • AES-128 to encrypt and decrypt data
  • Compatible with Port-based Netwok Access Control IEEE802.1x and Extended Authentication Protocol(RFC3748)

ID² Authentication Platform

Internet Device ID, better known as ID², is a type of identification for IoT devices. Just like IP addresses, it is unique, and can't be changed or counterfeited. It's the key foundation in achieving interconnection among things.

The ID² platform is composed of Internet devices, ID² distribution center, ID² authentication center, and Internet service. Chips manufactures can request, get and program ID² through SDK. After programming, APIs can be called to confirm whether the chips have been successfully programed. Details about these processes can be viewed at the license application page (page in Chinese).

When programing ID², the corresponding private key will be programed into the chip, while the public key uploaded to ID² authentication center. The private key can later be used to decrypt the encrypted data sent by authentication center. In this case, channel authentication and key agreement in application layer can be achieved. The combination of ID² with various connecting protocols (such as MQTT and CoAP) further guarantees the safety of the whole IoT system. The framework of ID² platform is shown below.

1

The ID² platform offers two authentication modes: challenge-response based mode and timestamp-based mode, which can prevent replay attack. Take challenge-response based mode as an example, the Service Provider (SP) server can work as proxy, to transmit message between devices and authentication center (devices are assumed to be pre-programed with ID²). The following flowchart describes the process and interaction of the authentication message.

2

The flowchart can be summarized as follows:

  • Devices send authentication request to the SP server, applying for challenge to ID² authentication center.
  • The SP server calls POP SDK Java API: getServerRandom(), getting challenge from authentication center and returning it to devices.
  • Devices receive challenge, and call TFS API: tfs_id2_get_challenge_auth_code() to generate auth code, with ID², challenge, and extra data (optional) as parameters.
  • Devices send auth code to SP server, which then forwards it to authentication center.
  • SP server calls POP SDK Java API:VerifyRequest() to complete authentication.
  • Process transaction in SP server based on the result of authentication.

In addition, for devices that have access to the Service Provider (SP) server, ID² ensures mutual authentication between devices and server. That is, on the one hand, SP server needs to decide whether or not the device with that identity information is allowed to access; on the other hand, the device needs to confirm whether the SP server has the legitimacy to provide certification service. Through this mutual authentication, devices that have legitimate identity information, but do not belong to SP server's services scope will be filtered out. Additionally, different vendors can define their specific way of access to SP server, though this part will be out of scope of this article.

SP server's use of POP SDK API in authentication process can be seen in these sample codes (links in Chinese): get challenge, requirement for authentication, and authentication and encryption. You can also refer to API declaration to learn about TFS API in devices. The path to TFS is AliOS-Things/security/tfs/lib.

Security Authentication Framework of uMesh

Traditional AAA (Authentication, Authorization and Accounting) services require IT experts to create every certificate manually. In addition, the x.509 certificate will consume many preset flash resources and extra MCU resources when analyzing and authenticating ASN.1 (some may be larger than 1KBytes). Therefore, authentication based on certificates is not a best choice for resources-limited devices.

ID² is a light-weight platform based on identity. There is no need for IT experts to manually repeat the same process of deployment and configuration. Instead, you can just call the corresponding SDK to contact with ID² authentication center.

The authentication process of devices in uMesh is set according to challenge-response-based mode. It is compatible with Port-based Network Access Control (IEEE802.1x) and Extended Authentication Protocol (EAP). IEEE802.11 is used in data transmission. EAP also provides a basic protocol framework for further expansion and compatibility of other authentication measures, such as MD5, OTP and TLS.

The security authentication process in uMesh based on ID² platform can be illustrated as follows.

3

Raspberry Pi 3 (RPi 3), directly linked to the Access Point (AP), plays the role of leader in the framework. It generates a new uMesh and distributes 16 bits address for subsequently-joined devices, which is used for communication within this uMesh. Meanwhile, RPi 3 uses iptable to set up NAT to transmit the IP data packet between tun0 and eth0. This enables devices in uMesh to communicate with SP server through an external network, and thus completing the authentication process in ID² platform.

The security authentication process of devices in uMesh is described in the following flowchart.

4

Extensible authentication protocol (EAP) defines the standard type of authentication (such as MD5, OTP, GTC, TLS) as well as some expanded types (type=254) to accommodate the existing process in different vendors. EAP-ID² is one of them used in uMesh based on ID² system. The detailed header format for extension type is as follows.

5

Concluding Remarks

The authentication system in uMesh based on ID² platform has been verified in test environments. Furthermore, uMesh's compatibility with IEEE802.1x and EAP gives it more flexibility to meet different vendors' needs. AliOS, along with uMesh, provides a secure and reliable way for businesses to adopt IoT technologies.

More details about AliOS Things can be seen on the AliOS Things GitHub page and the Application Development Guide.

目录
相关文章
|
3月前
|
人工智能 自然语言处理 数据中心
2026AI元年:人工智能从技术突破走向规模化应用
AI 走向规模化的最大障碍,并不在于模型是否足够聪明,而在于是否足够确定、足够稳定、足够工程化。
276 5
|
3月前
|
机器学习/深度学习 监控 算法
基于 YOLOv8 的多车型交通车辆实时检测识别项目 [目标检测完整源码]
基于YOLOv8的多车型交通车辆实时检测系统,支持12类车辆识别,集成PyQt5图形界面,可处理图片、视频、摄像头等多源输入。具备高精度、易部署、可扩展等特点,适用于智慧交通、车流统计与AI教学实践,实现从算法到应用的完整落地。
293 20
基于 YOLOv8 的多车型交通车辆实时检测识别项目 [目标检测完整源码]
|
3月前
|
数据采集 自然语言处理 搜索推荐
大模型从“瞎聊”到“干活”:指令微调核心逻辑全拆解
本文深入浅出解析大模型指令微调核心技术,从“能聊”到“会干”的关键跃迁。通过“教小孩做事”类比,拆解指令微调原理,详解数据格式、质量与策略三要素,提供16G显卡可跑的四步实操流程,并结合效果评估与未来趋势,助力新手快速掌握让大模型精准执行任务的核心方法。
|
3月前
|
数据采集 人工智能 搜索推荐
大模型入门指南:从看懂原理到动手微调,一步步打造你的专属AI
本文深入浅出地讲解大模型核心技术:从Token、Embedding到上下文窗口,揭秘AI如何理解语言;通过提示词工程、RAG与微调,教你打造专属智能助手。零基础也能学会,让AI真正为你所用,开启个性化智能时代。
1007 1
|
10月前
|
人工智能 JavaScript 数据可视化
VTJ.PRO:打破次元壁!AI驱动 + 双向代码自由穿梭,重新定义Vue高效开发!
VTJ.PRO推出“双向代码转换引擎”,实现可视化设计与手写代码无缝切换,真正践行“设计即代码,代码即设计”。支持Vue3组件一键生成、源码反向解析,兼顾开发自由度与效率,助力快速原型验证与项目迭代。
316 0
|
搜索推荐 数据挖掘 API
深入研究:京东图片搜索商品API详解
京东图片搜索商品API简介:在电商快速发展的背景下,用户需求日益多样化。为提升购物体验,京东推出图片搜索商品API,通过上传商品图片(如实物图或宣传图),利用图像识别技术匹配京东商品库,返回相似商品的信息(如名称、价格、销量等)。该API采用HTTP POST请求方式,支持JPEG、PNG等常见图片格式,并可设置分类范围和结果数量限制等可选参数,助力开发者实现更精准的商品搜索,优化用户体验,同时为数据分析与个性化推荐提供支持。本文详细介绍了其功能、使用方法及Python请求示例。
|
人工智能 算法 调度
DeepSeek杀疯了!国产AI大模型如何重构未来技术版图?
【爆款导读】当ChatGPT还在为每月10亿访问量沾沾自喜时,中国AI军团已悄然完成弯道超车。2025年开年,DeepSeek以雷霆之势横扫中美应用商店双榜,上线72小时突破千万DAU,开发者生态激增300%。通过优化算法降低成本、多模态能力提升效率,DeepSeek不仅在用户数量上取得突破,更在实际应用场景中展现强大实力。其开源策略推动技术民主化,助力更多开发者参与AI开发,成为AI军备竞赛中的佼佼者。
708 20
|
安全 NoSQL MongoDB
XJ-Survey:这个让滴滴日均处理1.2亿次问卷请求的开源系统,今天终于公开了它的架构密码!
嗨,大家好,我是小华同学。今天为大家介绍一款由滴滴开源的高效调研系统——XJ-Survey。它功能强大,支持多类型数据采集、智能逻辑编排、精细权限管理和数据在线分析,适用于问卷、考试、测评等场景。采用 Vue3、NestJS 等先进技术栈,确保高性能与安全性。无论是企业还是个人,XJ-Survey 都是你不可错过的神器!项目地址:[https://github.com/didi/xiaoju-survey](https://github.com/didi/xiaoju-survey)
540 15
|
人工智能 IDE 程序员
AI程序员入场!揭秘直播吧研发效能大提升的秘密武器
对于直播吧而言,这不仅是工具升级,更是研发模式向「人与AI协同型」跃迁的战略选择。