摘要
随着物联网(Internet of Things, IoT)技术的高速发展,各类智能设备数量激增,身份认证成为保障IoT安全的首要需求.区块链作为一种分布式账本技术,提供了去信任的协作环境和安全的数据管理平台,使用区块链技术驱动IoT认证成为学术界和工业界关注的热点.基于云计算和云边协同两种架构分析IoT身份认证机制设计的主要需求,总结区块链技术应用于IoT场景面临的挑战;梳理现有IoT身份认证机制的工作,并将其归结为基于密钥的认证、基于证书的认证和基于身份的认证;分析应用区块链技术的IoT认证工作,并根据认证对象和附加属性对相关文献进行归纳和总结.从形式化和非形式化两个方向总结基于区块链的IoT认证机制的安全性分析方法.最后展望了未来研究方向.
With the rapid development of the Internet of Things(IoT), the number of smart devices has increased sharply, and identity authentication becomes the primary requirement for ensuring IoT security. Blockchain, as a distributed ledger technology, provides a trusted collaboration environment and a secure data management platform. The utilization of blockchain technology to drive IoT authentication has been a hotspot in academia and industry. This study analyzes the main requirements of authentication mechanism design based on cloud computing and cloud-edge collaboration and summarizes the challenges in applying blockchain technology to IoT scenarios. Relevant research on IoT authentication mechanisms is presented and classified into three categories of key-based authentication,certificate-based authentication, and identity-based authentication. Moreover, the existing IoT authentication studies using blockchain technology are analyzed, and related literature is reviewed according to authentication objects and additional attributes. This study also summarizes the security analysis method for the blockchain-based IoT authentication mechanism from formal and informal perspectives and finally points out the prospect of the technology.
作者
程冠杰
邓水光
温盈盈
严学强
赵明宇
CHENG Guan-Jie;DENG Shui-Guang;WEN Ying-Ying;YAN Xue-Qiang;ZHAO Ming-Yu(College of Computer Science and Technology,Zhejiang University,Hangzhou 310027,China;Huawei Technologies Co.Ltd.,Shanghai 201206,China)
出处
《软件学报》
EI
CSCD
北大核心
2023年第3期1470-1490,共21页
Journal of Software
基金
浙江省重点研发项目(2022C01145)
国家自然科学基金(U20A20173,62125206)。
关键词
物联网
区块链
身份认证
多层认证
边缘计算
Internet of Things(IoT)
blockchain
identity authentication
multi-layer authentication
edge computing