不安全物联网的轻量级加密:综述

Abstract

本文综述了针对物联网(IoT)的轻量级加密解决方案。这项综述全面覆盖了从轻量级加密方案到不同类型分组密码的比较等多个方面。同时,还对硬件与软件解决方案之间的比较进行了讨论,并分析了当前最受信赖且研究最深入的分组密码——高级加密标准(AES)——在架构、列混合/Mix-Column和S盒/S-box修改策略,以及物联网安全相关攻击等方面的最新研究方法。研究表明,轻量级AES在资源受限的物联网设备中已经被证明是一种有效的安全解决方案。

Introduction

随着人类对生活便利性的追求,历史表明,需求是推动创新的动力,而现代科学技术的发展也随之加速。如今,随着物联网(IoT)设备数量的爆发性增长,世界变得日益互联。根据Statista 2018的统计数据,到2020年,联网设备的数量将增长到近310亿台。随着这些设备数量的增加,最重要的问题变成了安全性。长久以来,这个庞大网络的安全性问题一直被制造商和消费者所忽视。

我们的技术依赖型生活方式正引导我们走向一个“万物不安全互联”的世界,因此,现在是我们退一步,认真分析这一问题的关键时刻。安全性已成为该领域研究人员的主要关注点。

物联网(IoT)由多个相互连接的设备组成,这些设备之间不断共享信息和数据。为了保护这些信息,我们需要了解物联网设备的基本安全特性:

  • 保密性(Confidentiality):需要确保信息仅对授权用户可用。
  • 可用性(Availability):多个设备相互连接时,需要确保设备能在需要时获取所需数据。
  • 完整性(Integrity):需要确保数据的准确性。
  • 认证(Authentication):这是一个重要但从物联网角度看难以实现的特性。在物联网中,连接的实体有不同的用途、目的和层次结构。
  • 异构性(Heterogeneity):由于网络中的不同实体具有不同的功能、复杂性,甚至不同的制造商,因此也需要确保网络的异构性。
  • 密钥加密(Key Encryption):这是最重要的一步。为了确保安全连接,设备和其他实体需要具备轻量级的密钥管理系统。

随着时间的推移,数据和密钥传输的安全性需求催生了加密学的概念。加密学是一种通过将数据转化为无法识别和无关联的形式,从而保护数据免遭未授权访问的过程。根据物联网(IoT)的需求,专用的加密算法需要在面积、内存占用、功耗和能量消耗方面保持轻量级。

本文对物联网安全解决方案的不同阶段的近期研究工作进行了综述,全面涵盖了从轻量级加密方案到不同类型分组密码的比较等安全措施流程。此外,我们还对硬件与软件解决方案之间的比较以及高级加密标准(AES)在物联网安全领域中的最新研究方法进行了探讨,包括其架构、列混合/Mix-Column与S盒/S-box修改策略以及攻击分析。

文章结构

  • 第二节:讨论了轻量级加密,包括加密学的两大主要分支——非对称加密和对称加密。同时,还整理并分析了可能适用于物联网应用的不同类型流密码和分组密码。
  • 第三节:探讨了高级加密标准(AES),这一最受信赖且研究最深入的分组密码。我们结合了针对AES在物联网中应用的架构优化、列混合(Mix-Column)和S盒(S-box)修改策略及其面对攻击的研究成果。

Lightweight cryptography

有多种加密解决方案可用于保护我们的重要数据,但不幸的是,并非所有方案都适用于像物联网(IoT)设备这样的资源受限环境。轻量级加密解决方案正在被深入研究,旨在提供高效的面积和功率解决方案。商业和工业物联网设备都容易受到特定于物联网的攻击。如果我们继续使用现有的物联网设备设计流程,未来可能会面临安全灾难。当前的加密原语可以分为两类:

  • 非对称密钥加密
  • 对称密钥加密

A. 非对称密钥加密
非对称密钥加密也称为公钥加密,因为在这种技术中,需要一对公钥和私钥(如图1所示)。最近,轻量级加密的研究重点逐渐转向非对称密钥加密,但其成果尚未像对称密钥加密那样稳定和有成效。轻量级非对称算法在操作上较为复杂,且效率不高。此外,由于操作数的大小以及攻击模型的不断发展,这些算法也变得更加脆弱[2]。


以下是一些非常重要的非对称算法:

  • Rivest-Shamir-Adleman (RSA)
    • 逆向过程对攻击者来说非常困难,同时从公钥推导出私钥也极其困难。因此,该方法具有高度的安全性,但密钥生成过程复杂且速度较慢。

(1)RSA 公钥私钥计算

(2)RSA 加密解密过程

  • Diffie-Hellman
    • 私钥非常短,因此加密过程较快。但由于私钥长度较短,该方法更容易受到攻击,特别是中间人攻击。
  • 数字签名算法(DSA)
    • 此方法比其他非对称算法更快,且在许多场景中更有优势。然而,数字签名的生命周期较短,且共享过程较为复杂[3]。
  • 椭圆曲线加密(ECC)
    • 尽管ECC算法更为复杂且难以实现,但它的功耗较低。在多种非对称算法中,ECC最适合在资源受限的设备中实现[2]。

ECC 的研究现状
近年来,ECC在物联网(IoT)领域的研究成为一个重要课题,但大多集中于软件层面。例如:

  • 软件实现:
    [4] 实现并评估了一种基于开源ECC的方案,运行于物联网操作系统Contiki OS上,其实现以BSD许可证发布。
    [5] 应用了ECC方法,并在一个名为Wiselib的开源和通用编程库中提出了零知识协议的实现。
  • 硬件实现:
    [6] 采用了一种硬件方法,证明ECC计算能够有效地抵御侧信道攻击。他们的方法适用于具有最低安全级别和硬件开销的轻量化实现。
  • 对比研究:
    [7] 对RSA、Diffie-Hellman以及椭圆曲线加密(包括椭圆曲线Diffie-Hellman, ECDH)进行了比较研究,发现ECDH在功耗和面积方面优于其他算法。

B. 对称密钥密码学

对称密钥密码学也被称为秘密密钥或共享密钥密码学(如图2所示)。在此过程中,发送者和接收者通过秘密通信共享一个共同的密钥,用于加密和解密。对称密码学由于其快速的操作(主要是XOR和置换操作)而更适合物联网(IoT)应用。其处理速度较快,且不会消耗太多资源[3]。表I显示了非对称密钥密码学与对称密钥密码学的直接比较。

对称算法中的一个重要区别是流密码和分组密码。流密码使用与数据大小相同的密钥。在这个过程中,密文是通过对明文的“逐位”操作得到的。常见的轻量级流密码包括Trivium、Chacha、WG-8、Espresso,这些算法具有较高的吞吐量。Grain 128是最受欢迎且适用于受限设备的轻量级密码之一,尽管它的吞吐量较低。Espresso被认为是1500 GE以下最快的轻量级密码[8]。

分组密码具有固定长度的位数,并且其变换过程的不同阶段由对称密钥决定。分组密码非常多用途,这对物联网(IoT)来说非常有帮助。另一个优点是该过程的加密和解密方法几乎是相同的。因此,它可以用更少的资源实现。虽然分组密码的延迟较低,但它们是物联网安全中研究最多、改进最多的解决方案[8]。常见的分组密码包括高级加密标准(AES)、数据加密标准(DES)、3DES、Blowfish、Twofish。研究人员采取了不同的方法,使这些分组密码变得轻量并适合物联网使用。其他一些正在研究的轻量级分组密码包括Curupira、PRESENT、KATAN、TEA、Humming Bird、RECTANGLE、SIMON。表II显示了一些常见分组密码之间的基本比较[8][9][10][11]。

不同的密码学标准化工作既考虑了软件安全性,也考虑了硬件安全性。在[12]中,对几种轻量级分组密码的硬件和软件实现进行了比较。软件和硬件的安全解决方案有不同的衡量标准。软件度量包括周期数、内存、每字节周期数,而硬件度量包括吞吐量、面积、吞吐量-面积比率。要直接比较这两者是很困难的。在[12]中,作者通过使用定制的轻量级可重配置处理器成功地进行了比较,比较了AES、SIMON、SPECK、PRESENT、LED、TWINE的面积、吞吐量/面积比等硬件和软件实现的指标。SPECK、TWINE和PRESENT在硬件和软件中表现良好。表III提供了硬件和软件安全解决方案的基本比较[13]。

需要特别指出的是,在所有分组密码算法中,AES(高级加密标准)是研究得最深入的算法。关于AES的许多研究已经完成,并且仍在继续,旨在使其更加轻量并适合物联网使用。

AES

AES概述与标准化
  • AES的标准化:AES作为加密标准,由美国NIST于2001年标准化。此后,它成为最广泛使用的对称加密算法之一,尤其适用于数据保护和加密应用。它具有强大的安全性和高效性,因此被大量研究与应用。
AES的安全性与适用性
  • 不同设备的需求:不同的设备可能对安全性有不同的需求,并且设备的功耗和处理能力(吞吐量)各异,因此AES支持不同的密钥长度,以适应不同的安全需求。
  • AES的优点:AES算法经过充分的安全性验证,已被广泛应用于数据加密和其他安全措施中。与其他对称加密算法相比,AES的复杂度较低,能提供较高的安全级别[14]。
AES的结构与过程

AES的加密过程被分为四个主要步骤,其中每个步骤包含不同的操作。

  1. 密钥扩展

    • 通过密钥扩展过程,AES从原始的密钥生成一系列的轮密钥,供后续的加密轮次使用。该过程包括三个子步骤:旋转(Rotate)、S-盒替换(S-Box)和Rcon(一个常数)。
  2. 初始轮次

    • Add Round Key:在此步骤中,AES的每个字节与轮密钥通过逐位XOR操作结合,完成初步加密。
  3. 后续轮次

    • Sub Bytes:这一阶段进行非线性字节替换,每个字节用预定的查找表替换,增加加密的复杂性。
    • Shift Rows:该步骤对数据进行循环移位,状态的后三行根据指定的步数移动。
    • Mix Columns:对状态矩阵的每一列进行混合操作,目的是通过线性变换增加加密的强度。
  4. 最后轮次

    • 在最后一轮中,除了“列混合”步骤外,其他步骤都将继续执行。最终完成加密。

B. 近期关于AES在物联网中的研究工作:聚焦混合列(Mix Column)和S盒(S-box)

AES算法的硬件实现面临两个主要挑战:混合列(Mix Column)轮次和S盒(S-box)。减少硬件实现AES的面积和延迟是研究人员的主要目标。研究人员一直在努力提出适用于物联网的轻量级AES。至今,关于混合列和S盒的研究仍在继续。

[25]提出了一种新的FPGA实现AES的方法,使用了高性能的混合列(Mix-Column)和逆混合列(inv-Mix Column)方法,利用了二进制计算的特性。他们的结果显示,与原始AES设计相比,面积减少了12%,速度提高了20%。另一篇论文[26]也在混合列方面做了优化,旨在使其更快且低复杂性。其结果显示,相较于其他相关工作,复杂性较低,所需的门数减少。另有研究[27]在混合列方面也做了工作,并在门的尺寸和时钟周期数方面取得了更好的结果。

[28]提出了一种新的方法,设计了一个低面积的GF(2^8)有限域反演器,具有最短的关键路径,用于S盒。[29]使用了从交换链环中获得的S盒。[30]提出了一种新的设计,结合了AES的S盒和逆S盒,他们的设计在研究中表现优于其他最佳设计。S盒和混合列轮次是AES成为轻量级、适合物联网的分组密码的两个主要问题。目前,关于AES的安全性没有争议。脆弱的物联网网络可以通过轻量级AES得到保护。研究人员一直在提出新的架构,致力于混合列和S盒的优化,以实现这一目标。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/64315.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【小程序】全局数据共享

目录 全局数据共享 1. 什么是全局数据共享 2. 小程序中的全局数据共享方案 全局数据共享 - MobX 1. 安装 MobX 相关的包 2. 创建 MobX 的 Store 实例 3. 将 Store 中的成员绑定到页面中 4. 在页面上使用 Store 中的成员 ​5. 将 Store 中的成员绑定到组件中 6. 在组件中…

自动化测试- 自动化测试模型

目录 自动化测试模型简介 1、线性模型 举例 测试页面html文件 测试脚本 2. 关键字驱动测试(Keyword-Driven Testing) 需测试内容 关键字驱动测试框架 创建测试用例文件 运行测试 3. 数据驱动测试(Data-Driven Testing) …

【GlobalMapper精品教程】091:根据指定字段融合图斑(字段值相同融合到一起)

文章目录 一、加载数据二、符号化三、融合图斑1. 根据图斑位置进行融合2. 根据指定字段四、注意事项一、加载数据 订阅专栏后,从私信中查收配套实验数据包,找到data091.rar,解压并加载,如下图所示: 属性表如下: 二、符号化 为了便于比对不同的融合结果,查看属性表根据…

strace工具使用

下载地址: https://github.com/strace/strace/releases/tag/v6.12 解压后执行以下命令 ./configure --hostarm-linux --prefix/home/wei/Code/strace/strace-6.12/out CC/home/wei/Code/firmware/prebuilts/host/gcc/gcc-arm-10.2-2020.11-x86_64-arm-none-linux…

图像处理-Ch2-空间域的图像增强

Ch2 空间域的图像增强 文章目录 Ch2 空间域的图像增强Background灰度变换函数(Gray-level Transformation)对数变换(Logarithmic)幂律变换(Power-Law)分段线性变换函数(Piecewise-Linear)对比度拉伸(Contrast-Stretching)灰度级分层(Gray-level Slicing) 直方图处理(Histogram …

Linux | Ubuntu零基础安装学习cURL文件传输工具

目录 介绍 检查安装包 下载安装 手册 介绍 ‌cURL是一个利用URL语法在命令行下工作的文件传输工具,首次发行于1997年‌‌12。cURL支持多种协议,包括FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、Gopher、SCP、Telnet、DICT、FILE、LDAP、LDAPS、IMAP、POP3…

cesium通过经纬度获取3dtiles 得feature信息

找到这里3dtiles的两种访问方式: 1.1 3DTileContent#getFeature 这里涉及3DTile 数据结构,暂不了解3DTile 数据结构,因此暂不使用。 1.2 scene.pick 本次使用 scene表示虚拟场景中所有 3D 图形对象和状态的容器;scene中…

内置ALC的前置放大器D2538A/D3308

一、概述 D2538A/D3308是芯谷科技推出的带有ALC(自动电平控制)的前置音频放大器芯片,最初产品为单声道/立体声收录机及盒式录音机而开发,作为录音/回放的磁头放大器使用;由于产品的高增益、低噪声及ALC外部可调的特性&…

基于SSM的“快递管理系统”的设计与实现(源码+数据库+文档+PPT)

基于SSM的“快递管理系统”的设计与实现(源码数据库文档PPT) 开发语言:Java 数据库:MySQL 技术:SSM 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 登陆页面 注册页面 快递员页面 派单员订单管理页面 派单员订单添…

frp(s) 内网穿透 Liunx环境双端Docker部署

FRP(Fast Reverse Proxy)是一款高性能的反向代理应用,主要用于内网穿透、负载均衡和反向代理等多种场景。它能够将内网中的服务暴露给公网,实现远程访问。此外,FRP还可以用于接收类似GitHub或第三方提供的Webhook请求。在微服务架构中,FRP可以作为服务调用的反向代理,提…

STM32F103RCT6学习之五:ADC

1.ADC基础 ADC(Analog-Digital Converter)模拟-数字转换器ADC可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量,建立模拟电路到数字电路的桥梁12位逐次逼近型ADC,1us转换时间 输入电压范围:0~3.3V&#xff…

实现类似gpt 打字效果

1. css的动画(animation) css中实现动画有两种方式:transition过渡动画、 animation自定义动画。 具体的可以看MDN链接:https://developer.mozilla.org/zh-CN/docs/Web/CSS/animation 使用keyframes自定义关键帧动画并未其命名使用自定义动…

微软远程桌面APP怎么用

微软远程桌面(Remote Desktop)客户端(RD Client)是一款由微软开发的应用程序,允许用户通过网络连接远程访问和控制另一台计算机。同时,微软远程桌面RD Client支持多种设备和操作系统,包括Window…

Unity3d UGUI如何优雅的实现Web框架(Vue/Rect)类似数据绑定功能(含源码)

前言 Unity3d的UGUI系统与Web前端开发中常见的数据绑定和属性绑定机制有所不同。UGUI是一个相对简单和基础的UI系统,并不内置像Web前端(例如 Vue.js或React中)那样的双向数据绑定或自动更新UI的机制。UGUI是一种比较传统的 UI 系统&#xff…

10分钟掌握项目管理核心工具:WBS、甘特图、关键路径法全解析

一、引言 在项目管理的广阔天地里,犹如一场精心编排的交响乐演奏,每个乐器、每个音符都需精准配合才能奏响美妙乐章。而 WBS(工作分解结构)、甘特图、关键路径法无疑是这场交响乐中的关键乐章,它们从不同维度为项目管…

代码思想之快慢路径

处理业务代码的过程中,对业务代码有了一些调整,后续发现这是一种代码思想 在一段复杂的逻辑里,我把查询redis操作写在了前面, 业务逻辑: 如果需要不打压就退出本次处理 查询redis拿到商品需要打压的次数 如果次数 …

纯 HTML+CSS+JS 实现一个炫酷的圣诞树动画特效

纯 HTMLCSSJS 实现一个炫酷的圣诞树动画特效 前言 圣诞节快到了,今天给大家带来一个简单但是效果不错的圣诞树动画特效。这个特效完全使用原生 HTML、CSS 和 JavaScript 实现,包含闪烁的星星、随机彩灯等元素,非常适合节日气氛!…

【RAG实战】语言模型基础

语言模型赋予了计算机理解和生成人类语言的能力。它结合了统计学原理和深度神经网络技术,通过对大量的样本数据进行复杂的概率分布分析来学习语言结构的内在模式和相关性。具体地,语言模型可根据上下文中已出现的词序列,使用概率推断来预测接…

富芮坤FR800X系列之PWM输出程序应用设计

文章目录 前言1.设计背景2.简介3.如何设计控制调光的接口呢4.硬件设计5.软件设计5.1.软件流程图5.2.软件代码 6.小结 前言 版权归作者所有、未经允许、请勿转载。 读者对象: 本文档主要适用以下工程师: 嵌入式系统工程师 单片机软件工程师 IOT固…

Ftrans数据摆渡系统 搭建安全便捷跨网文件传输通道

一、专业数据摆渡系统对企业的意义 专业的数据摆渡系统对企业具有重要意义,主要体现在以下几个方面‌: 1、‌数据安全性‌:数据摆渡系统通过加密传输、访问控制和审计日志等功能,确保数据在传输和存储过程中的安全性。 2、‌高…