针对轻量级无线传感器网络,设计并实现了基于系统迭代与同步模型的数据加密技术
作者:Angelica Cordero-Samortin、Jennifer C. Dela Cruz 和 Renato R. Maaliw
《Electronics》:Design and Hardware Implementation of a Data Encryption Technique Using System Iterations and Synchronization Model for Lightweight Wireless Sensor Networks
Angelica Cordero-Samortin,
Jennifer C. Dela Cruz and
Renato R. Maaliw
【字体:
大
中
小
】
时间:2026年05月02日
来源:Electronics 2.6
编辑推荐:
摘要:随着无线传感器网络(WSNs)对资源有限设备的轻量级、高效和安全加密技术的需求不断增加,传统算法因计算量庞大而变得不切实际。本研究提出了一种基于混沌理论的加密算法,适用于传输短数据,采用Lorenz系统和Euler方法进行计算,并结合了基于数据阵列的同步模型。该算法在密文中
摘要:随着无线传感器网络(WSNs)对资源有限设备的轻量级、高效和安全加密技术的需求不断增加,传统算法因计算量庞大而变得不切实际。本研究提出了一种基于混沌理论的加密算法,适用于传输短数据,采用Lorenz系统和Euler方法进行计算,并结合了基于数据阵列的同步模型。该算法在密文中插入迭代参数,以确保解密时密钥的一致性。在电子健康数据流的背景下,加密效率至关重要:连续的心电图(ECG)信号会产生大量数据,给实时安全传输带来挑战,而单次血压读数则数据量小且轻量。虽然本研究仅针对短距离、低功耗传输进行了探讨,但在nRF芯片上使用Enhanced ShockBurst(ESB)协议进行的仿真和硬件实现证明了其效率,1字节数据包的加密速度最低为0.154毫秒。NIST统计测试套件的安全性分析确认了生成密钥流的统计随机性,理论密钥空间分析也支持了其鲁棒性。通过关注初步形式的短流加密,该方案为资源受限的物联网(IoT)医疗系统和多样化用户群体提供了包容性的安全通信技术。
1. 引言
由于数字平台、云计算和物联网(IoT)产生的数据呈指数级增长,全球对数据加密技术的需求迅速增加。2023年,数据加密市场规模为141亿美元,预计到2024年将增长至145亿美元,并在2032年达到402亿美元,复合年增长率(CAGR)为16% [1]。作为IoT基础设施的核心部分,无线传感器网络(WSNs)已成为研究重点,旨在开发低功耗、资源需求低的解决方案。处理健康数据涉及多种类型的信号和不同数量的信息。例如,记录心脏电活动的心电图(ECG)会产生大量数据,每个通道每秒大约记录1千字节;标准测试使用12个通道,如果连续存储则每秒约12千字节 [2]。相比之下,每次血压测量产生的数据量要少得多,只有几字节。尽管每条数据看似微不足道,但ECG信号的持续流动会导致数据积累。由于这些信息需要实时安全传输,因此确保加密快速高效尤为重要,尤其是对于通过物联网(IoT)连接的资源有限的医疗设备而言。
近年来,人们对混沌理论的兴趣日益浓厚,因为混沌理论可以生成安全且随机的序列。Lorenz系统在这方面备受关注,其初始条件敏感性和不可预测性使其适用于加密应用。先前的研究探讨了复杂的混沌模型,如超混沌Lorenz系统、逻辑正弦映射和混合混沌序列 [3]。一些方法使用了3D混沌排列、FPGA实现和混沌多媒体加密 [2]。然而,这些方法由于涉及多个变量方程和迭代同步方案,计算量较大。此外,对称密钥算法(如AES)需要较大的密钥和数据块,这可能不适合计算和内存资源有限的WSNs [4]。最近的研究还提高了同步鲁棒性,并开发了抗噪声机制 [5],例如利用抗噪声梯度神经动力学实现混沌系统的鲁棒同步 [6]。此外,[6] 提出了一种基于Lorenz的流密码算法的实际实现,展示了混沌加密在真实硬件中的应用。这些研究凸显了混沌密码学研究的增长,并为新的尝试提供了有价值的平台。
鉴于上述限制,本研究初步探索了一种轻量级混沌加密算法,专注于ECG和血压等生物医学信号。所提出的解决方案利用Lorenz系统的连续迭代生成伪随机比特流,采用一维混沌函数降低计算复杂度,并开发了一种新的同步模型以确保设备间的加密和解密一致性。通过密文中的迭代次数实现同步,使解密过程中的密钥复制变得简单。评估指标包括处理速度和加密安全性。作为参考,该算法与AES进行了比较。此外,还在2.4 GHz ISM频段的超低功耗无线SoC上使用Enhanced ShockBurst(ESB)协议构建了工作原型,并在实际操作条件下测量了加密速度。使用NIST统计测试套件验证了算法的安全性,并研究了密钥空间以抵抗暴力攻击。
研究表明,基于混沌的密码学可以作为资源有限无线通信系统中数据安全保护的方法。这项研究是向生物医学数据流轻量级加密迈出的第一步,未来的研究可能会改进Lorenz一维方法,并扩展到更复杂的同步机制,同时探索抗噪声机制及其在医疗环境中的集成。
2. 相关工作
本节介绍和回顾了密码学、Lorenz方程、Euler方法、Sigmoid函数和ESB轻量级无线通信。
2.1. 数据加密
在物联网(IoT)的背景下,设备间传输数据时确保数据安全至关重要。为保护信息免受威胁,数据必须被加密并转换成乱序格式。密码学方法通过满足认证、数据完整性、保密性和不可否认性等关键安全要求来实现这一目标 [7];大多数加密方法要求发送方和接收方共享对称密钥。发送方使用共享密钥加密传感器数据,接收方使用相同密钥解密密文以恢复原始信息。在各种加密方法中,流密码因其轻量级结构而特别值得注意。流密码通常包含两个主要组件:密钥流生成器和加密机制。加密过程涉及明文和生成的密钥流之间的位运算,从而生成密文。要成功解密消息,必须使用相同的密钥并反向应用加密算法 [8]。文献 [9] 回顾了DES、AES和RSA等常用加密算法的特点。DES的计算复杂性源于其复杂的加密过程;AES算法简单,但存在暴力攻击、预言攻击、数学攻击和选择明文攻击等风险 [8]。RSA虽然提高了安全性,但计算复杂度较高。
2.2. Lorenz方程和混沌系统
Lorenz方程由Edward Lorenz于1963年提出,源自大气对流的简化模型。它表示一个三维常微分方程(ODEs)系统,尽管具有确定性,但在广泛参数范围内表现出高度不规则和混沌行为 [4]。Lorenz发现初始条件的微小差异会导致截然不同的结果,这一现象已成为混沌理论的基础。Lorenz系统的特定参数和初始值会产生非重复的解,这些解位于相空间的特定区域内。解通常呈现蝴蝶状或八字形结构,体现了系统的复杂性和确定性 [10]。Lorenz系统有三个平衡点,包括原点(0,0,0)和两个非平凡固定状态。如果系统精确初始化到其中一个平衡点,轨迹会收敛到稳定状态而非混沌状态 [11]。只有当参数选在特定范围内时,才会出现混沌动态。对于经典Lorenz吸引子,σ = 10, β = 8/3, ρ > 24.74 或通常 ρ = 28 时,非平凡平衡点会变得不稳定,从而产生持续混沌 [12]。在某些应用中,初始条件选择远离平衡点(通常为非零值),以确保对初始条件的依赖性。尽管经典方案已成熟,但最新研究显示,修改Lorenz参数仍可生成可用于加密的鲁棒动态 [13,14]。我们的研究采用简化参数(σ = 5, β = 2.66, ρ = 20),以平衡计算效率和随机性。仿真结果证实这会产生特征性的双叶吸引子,并对初始条件具有敏感依赖性。
由于Lorenz系统的不可预测性和对初始条件的敏感性,它被广泛用于密码学研究,特别是生成用于安全数据加密的伪随机比特流 [16]。现有研究使用混沌方法进行数据加密,例如将Lorenz输出变量的时间序列(x, y, z)的三个或更多组成部分作为密钥 [17],但这会增加算法复杂性。其他研究使用超混沌Lorenz映射生成密钥 [18],这些算法涉及多个数学计算,导致过程复杂。此外,[19] 指出Lorenz三微分方程方案会增加功耗和面积消耗。基于混沌的加密算法使用常微分方程(ODEs),[2] 使用Euler–Cromer方法和Runge–Kutta-4方法进行计算,而[20,21] 使用Euler方法。本研究建议在密钥生成中仅使用x轴输出,计算出输出后通过Sigmoid函数确定二进制输出 [22]。Sigmoid函数在深度学习架构的输出层中用于预测概率输出,并成功应用于二分类问题和逻辑回归建模 [22]。密钥流可以从原始图像或秘密密钥信息生成。第一种方法通过对原始图像像素进行数学、逻辑和代数运算生成密钥流,即密钥流是原始图像的哈希值 [23]。这些研究指出,混沌映射的初始条件对原始图像高度依赖,因此生成的密钥流对已知明文和选择明文攻击具有很强的抵抗力。
2.3. Euler方法
Euler方法是一种广泛用于求解常微分方程(ODEs)的基础数值技术,尤其在基于混沌吸引子的系统实现中。例如,在[24]中,设计了一种使用Lorenz混沌吸引子的伪随机比特生成器,并在Arduino开发环境中的8位AVR(Atmega8,Atmel,中国)微控制器上实现。Euler方法代表了数值求解常微分方程(ODEs)的最简单方法,例如Lorenz系统中使用的方程[25]。该方法认为,在给定点处积分曲线的切线可以近似表示小区间内的曲线。考虑一个由以下方程定义的一般初始值问题:
y′ = f(x, y),??y(x0) = y0
(1)
Euler方法通过使用递归公式构造一系列点(xi, yi)来近似解:
yi+1 = yi + h * f(xi, yi),??0 ≤ i ≤ n ? 1
(2)
其中h是步长。为了推导这个公式,它从线性近似开始:
y = y(xi) + f(xi, y(xi)) * (x ? xi)
(3)
使用f(x) = xi+1 = xi+h可以建立递归关系:
yi+1 = yi + h * f(xi, yi)
(4)
这种方法在计算资源有限的嵌入式系统中非常重要。当复杂的方法不可行时尤其如此。在这项研究中,Euler方法被用来离散化Lorenz系统的一个轴,以生成加密所需的混沌序列,从而在简单性、计算速度和足够的准确性之间取得了平衡,适用于无线传感器网络中的安全数据加密。
2.4. Sigmoid函数
Sigmoid函数是一个平滑的、有界的、可微分的实值函数,适用于所有实数输入值。它在每一点都有非负的导数,并且当输入变量趋向于正无穷或负无穷时,表现出一个单一的拐点[26]。最常用的Sigmoid函数之一是逻辑函数,数学定义为:
(5)
其中x是输入,e表示欧拉数。
值得注意的是,Sigmoid函数是广泛采用的激活函数之一,特别是在人工神经网络(ANNs)中,这些网络旨在模仿人脑的功能行为。ANN中的每个神经元接收来自其他神经元的加权输入,并应用激活函数来产生输出。神经元的累积输入通常表示为Y,表示为:
Y = X * W
(6)
其中X代表输入向量,W代表相应的权重。然后将得到的值Y通过激活函数(如Sigmoid函数)来确定输出。
在需要高精度和准确性的硬件实现中,通常使用浮点(FP)表示法。根据IEEE 754标准,浮点数可以以单精度(32位)或双精度(64位)格式表示。双精度(binary64)浮点格式包括一个符号位、11个指数位和52个显式存储的小数位,总共64位。由于规范化值的前导位隐含地为1,因此实际的有效位精度为53位。单精度格式包括一个符号位、8个指数位和23个小数位[27]。此外,参考文献[28]强调了Sigmoid函数在ANN中的广泛应用,因为它具有快速收敛的特性,并且其行为与实际神经元非常相似。
有许多研究探讨了在加密算法中使用混沌方法,表1比较了不同现有加密技术的特性。各种技术使用了不同的Lorenz维度,提供了不同的密钥空间和加密速度。此外,观察到没有应用Euler方法、Sigmoid函数和基于数据数组的同步的组合。
2.5. ESB轻量级无线通信
Enhanced ShockBurst(ESB)是由Nordic Semiconductor开发的一种无线通信协议。它通常用于他们的nRF24系列无线收发器中。这是一种轻量级的专有协议栈,用于2.4 GHz ISM频段的超低功耗片上系统(SoC)和连接设备[29]。因此,它经常被用于无线传感器网络、遥控器和其他低功耗无线设备等应用中。
ESB协议是一种被低估的无线通信协议,因为它已经在与室内定位系统[22]和WBAN(无线体域网络)技术[7]相关的各种研究中得到了很好的应用。
在无线通信方面,ESB使用先进的加密标准(AES)加密算法,该算法被认为在数学上非常强大。ESB协议本身没有明确指定所使用的安全算法,因为它主要关注数据通信和效率。它的主要设计目的是在低功耗和低延迟的情况下提供可靠且高效的设备间通信[2]。现有的研究提到,这些方法具有复杂性,相应地需要较大的内存容量,并增加功耗和面积消耗。
3. 提出的方案
提出的混沌加密-解密方案由四个不同的阶段组成,每个阶段都为安全和同步的数据传输做出贡献。
阶段I:预加密。
阶段II:加密过程。
阶段III:加密后处理。
阶段IV:预解密过程。
阶段V:解密。
这种分阶段结构确保了加密的鲁棒性和解密的可靠性。方案的符号表示如表2所示。
3.1. 阶段I:预加密 - 初始化和LUT生成
预加密阶段展示了在主要加密阶段之前所需的准备工作。这是从输入数据直接生成密钥参数的第一步,确保随后的混沌序列生成既依赖于数据又对明文的变化非常敏感。该过程包括提取参考字节;接下来计算基于CRC的完整性值,确定初始迭代种子,并计算混沌系统的缩放参数。通过在加密之前添加转换,使得结构能够抵抗统计攻击,并确保即使是微小的输入变化也会产生显著不同的加密输出。表3概述了阶段I的过程。
3.2. 阶段II:加密
加密阶段是通过使用混沌生成密钥流来将明文转换为密文的核心部分。它使用预加密过程中参数的初始值来设置表5中显示的混沌系统。然后,它通过其方程重复这一过程,创建一个高度随机的序列。每个明文字节与相应的混沌密钥流元素使用XOR操作进行混合。这导致了混淆和扩散。迭代结果对初始条件敏感,提供了对暴力攻击和差分攻击的抵抗力。
3.3. 阶段III:加密后处理
加密后处理检查数据是否正确打包。这里还会进行验证。然后,数据被准备好进行传输并加以保护。该阶段通过再次计算来检查完整性。添加循环冗余码(CRCs)以检测传输错误。它还应用所需的数据格式以满足通信协议的规范。通过验证和格式化步骤,加密后处理过程增强了密码系统的强度。这些步骤确保加密的有效载荷既被正确打包又适合下游处理系统。
3.4. 阶段IV:预解密
预解密阶段旨在重建恢复数据所需的混沌特性。在这里,系统中的所有参数、初始条件以及加密中使用的缩放因子都被重新初始化,以确保发送器和接收器之间的同步。检查完整性(如CRC验证)确认接收到的密文在传输过程中没有被篡改或损坏。此外,在这个阶段,Lorenz系统和迭代值被仔细重新建立。这保证了混沌密钥流可以忠实再现,从而顺利过渡到解密过程。
3.5. 阶段V:解密
解密阶段通过将同步的混沌密钥流应用于接收到的密文来反转加密过程,从而重建原始的明文数据。在这个阶段,复制了Lorenz系统的动态特性。同时,精确对齐初始条件以保持位级的可靠性。参数映射或同步的差异可能导致数据损坏。这显示了预解密阶段的重要性。通过重复掩码和逆变换,解密阶段重建了消息。这完成了整个循环。
3.6. 密钥、公共信息和同步的管理
在提出的方案中,密钥来自Lorenz系统参数和初始条件,如σ、β、ρ、x0、y0和z0。这些值与CRC值(如Is、IMSB和S)一起提供混沌和生成密钥的方法。由于混沌系统对其起始点极为敏感,即使这些秘密值发生非常小的变化也会导致完全不同的密文。这一特性使得预测变得困难,从而增强了方案的安全性[32]。此外,附加到密文上的同步元数据(如R、XR0 = CRCMSB ⊕ R和XR1 = CRCx ⊕ R)也是公开的。这些值帮助接收器重新创建解密所需的混沌状态,但不会暴露秘密的Lorenz参数或初始条件。这种公共信息和秘密信息之间的明确分离确保了设计的透明度。此外,保护密钥的秘密性与最新的物联网医疗保健加密框架保持一致[33]。
发送器和接收器之间的同步是通过附加的公共值和CRC检查来实现的。它允许接收器再次初始化混沌系统,使其与发送器保持对齐。同时,同步不会泄露秘密性。Lorenz参数和初始条件通过XOR操作被隐藏。这确保了在密钥保持保密的情况下解密是可靠的。类似的同步策略已经在基于混沌的加密方案中成功应用,例如在[34]中。4. 性能与安全性分析本节包括用于评估所提出的混沌加密算法的性能、鲁棒性和适用性的指标,特别是在轻量级无线传感器网络(WSN)环境中。4.1. 仿真环境仿真设置包括不同的组件。操作系统是Windows 10,内存为8 GB,存储空间等于或大于100 GB。对于加密和解密速度测试,测量的是加密和解密数据所需的时间。这是使用MATLAB R2024b完成的。每个加密和解密过程都进行了多次测试。接下来是统计分析。对于复杂性测试,使用所提出的加密算法生成了密钥流。NIST统计测试套件被用来使用所有适用的测试来检查密钥流的统计随机性。4.2. 加密和解密速度该测试检查所提算法的计算性能。评估速度很重要,因为它是在工业和医疗等领域应用中的一个因素。第一组测试使用了一个字节的数据,然后是2字节、3字节和4字节的数据。MATLAB R2024b被用来演示在不同输入上执行加密算法。图3显示了单个字节加密的仿真输出。算法在0.154毫秒内生成了二进制密文(strbin),这代表了记录的最短执行时间。密文成功解密回字符‘H’,证实了实现的正确性。图3. 加密1字节的结果。像ECG这样的身体传感器数据以500 Hz的频率采样,需要2字节的数据,而血压数据需要4字节的数据,以保持实时性能。表9显示了10次运行中1字节的加密时间。时间范围从0.154毫秒到0.192毫秒。平均每字节0.1781毫秒。最低的加密时间是0.154毫秒。这表明该算法在某些条件下能够达到最佳效率。这支持它适用于物联网(IoT)和无线传感器网络(WSNs)等轻量级应用。表9. 10次仿真运行中1字节数据的加密时间。平均加密时间为每字节0.1781毫秒。最低的加密时间为每字节0.154毫秒。这显示了所提算法的最佳性能。下一个仿真是对2字节数据的测试。进行了十次测试。加密时间范围从0.324毫秒到0.469毫秒。平均每字节0.3364毫秒。这相当于每字节0.1682毫秒。最低的执行时间为0.324毫秒或每字节0.162毫秒,证实了算法在处理稍大输入尺寸时的效率。这证实了所提算法的可扩展性,同时在多次试验中保持一致性和稳定性。详细信息显示在表10中。表10. 10次仿真中2字节数据的加密时间。记录的最低执行时间为0.324毫秒或每字节0.162毫秒。表11展示了所提算法对3字节输入数据的加密性能,在10次仿真运行中的结果。与1字节和2字节的情况相比,测量时间的变化范围更广,从0.571毫秒到2.343毫秒,3字节的平均时间为1.1899毫秒(相当于每字节0.3966毫秒)。最低的执行时间为0.571毫秒(每字节0.1903毫秒),表明算法在最佳条件下仍能实现高效加密。表11. 10次仿真运行中3字节数据的加密时间。表12总结了所提算法对4字节输入数据的加密性能。测量时间变化较大,从0.771毫秒到4.781毫秒不等,4字节的平均时间为2.4568毫秒(相当于每字节0.6142毫秒)。最低的执行时间为0.771毫秒(每字节0.1928毫秒),表明算法在有利条件下仍能高效运行。表12. 10次仿真运行中4字节数据的加密时间。记录的最低执行时间为0.771毫秒(每字节0.1928毫秒)。4.3. 随机性评估随机性和熵仍然是早期基于混沌的密码学中的主要评估指标[8]。国家标准与技术研究院(NIST)统计测试套件(SP 800 22)被用来确认比特是否是随机的。图4显示了样本测试结果。图4. 加密比特流的NIST统计测试套件结果。NIST有15个测试用于通过不同的统计属性检测二进制序列中的非随机性。然而,包括二进制矩阵秩、最长连续1的序列、Maurer的通用统计测试和线性复杂性在内的测试是为长数据流设计的。当应用于短密文时,如本研究中所示,这些测试本质上无法提供有意义的结果,正如先前的文献[35]中所指出的。对于短序列,仍然有效且具有信息量的测试是频率(单比特)、连续序列和近似熵测试。这些测试即使在数据长度有限的情况下也能检测到非随机模式。这种方法与密码学评估文献中的建议一致,这些文献承认某些NIST测试不适合非常短的数据流[35]。所提出的算法通过了所有这些适用的短序列测试。这支持它适用于保护短信号。尽管长序列测试得到了非随机输出,但这种结果是预期的,因为数据量很小。这并不与加密过程在目标应用的限制下产生统计上随机密钥流的结论相矛盾。我们强调,这种评估只是一个初步步骤。未来的工作将把分析扩展到更长的输出。4.4. 密钥空间估计对于所提方案的安全性,我们考虑了理论参数空间和有效的密码学密钥空间。参数包括Lorenz系统的初始条件、控制值以及会话特定的种子,如CRC值和随机字节。虽然双精度浮点表示允许高数值分辨率(每个实数值参数最多53位),但并非所有这些参数都贡献了独立的熵。贡献的细分显示在表13中,我们在其中区分了理论估计和与安全性分析相关的有效密钥空间。表13. 密钥空间贡献。理论密钥空间可以表示为,其中是所有贡献参数的位长度之和。最近的研究使用相同的密钥空间计算公式K = 2^n,其中n是所有贡献参数的位长度之和[36]。计算六个每个53位的浮点参数和一个随机字节(8位)得到,或。这个数字代表了IEEE-754精度下的最大参数空间。然而,并非所有量都贡献了独立的熵,浮点分辨率不应等同于真正的密码学随机性。当只考虑独立的贡献者时,即初始混沌状态、控制参数和会话特定的种子时,有效密钥空间保守估计为128-192位。这个熵水平与AES-128和AES-192相当,它们被认为能够抵抗暴力攻击[31]。4.5. 同步机制及其对安全性的影响同步机制将CRC相关值和迭代参数附加到密文上。这些值通过使用随机会话字节(R)进行XOR操作来隐藏。这样原始的CRC信息就不会暴露出来。它们的作用与传统密码学中的初始化向量(IV)或随机数相同。它们提供了正确的解密所需的公共同步,但不会泄露生成密钥流的混沌状态。此外,它们也不会降低有效熵或允许预测密钥流。这种设计选择与[31]中的既定实践一致。4.6. 与轻量级AES实现的比较为了实际评估,在相同的硬件平台和相同的实验条件下进行了比较。设置使用了Nordic nRF52840开发套件(Nordic Semiconductor,挪威)。部署了两个测试程序来评估加密和解密性能。在执行过程中,通过集成在开发环境中的调试器监控程序使用了多少工作内存,同时构建的日志提供了代码占用的永久存储空间的信息。捕获了加密、解密和总体延迟的时间结果。表14显示了所提算法的性能。表14. 所提算法的测量加密、解密和延迟结果。所提算法对于小输入显示出低延迟,4字节的数据在310微秒内处理完成。对于8字节输入,时间保持在360微秒以下。对于16字节输入,总延迟约为449微秒。表15显示了AES在不同输入长度和多次试验中的性能。表15. AES:测量的加密、解密和延迟结果。结果显示,随着输入数据大小的增加,加密和解密所需的时间也在增加。对于非常短的输入(4字节),处理速度很快,总延迟约为700微秒。当输入加倍到8字节时,时间仍然相当接近,总体延迟约为742微秒。对于更长的输入,如16字节,加密和解密都需要更多时间。总延迟约为1100微秒。关于内存使用情况,下表显示了所提算法在nRF52840设备上消耗的资源。图5显示,所提算法在nRF52840设备上使用了大约32 KB的FLASH和7 KB的RAM,分别约占可用内存的6%和5%。IDT列表未被使用。这些值提供了程序执行期间内存需求的清晰快照。图5. nRF52840设备上所提算法的内存使用情况。下表显示了加密程序在nRF52840设备上所需的永久存储空间和工作内存。FLASH显示了程序的大小。RAM使用情况显示了执行期间消耗的内存。图6中的测量显示了实现的性质,并提供了嵌入式资源统计信息。图6. 加密程序构建期间nRF套件的内存使用情况。4.7. 计算复杂性分析所提方案的计算效率在其五个阶段进行了分析。在第一阶段,预加密初始化和LUT生成涉及CRC提取、随机字节生成、缩放因子计算和种子计算。这些操作是常数时间,O(1)。LUT生成步骤需要通过Lorenz迭代和Sigmoid映射填充1024个条目,但由于表大小是固定的,这个过程也是常数时间,与输入长度无关。第二阶段,加密阶段,通过LUT索引、比特分配和XOR处理每个明文比特。每个操作都是每比特常数时间,对于m比特的输入,总体复杂性是线性的,Tenc(m) = O(m)。第三阶段,解密后,包括附加随机值、CRC掩码和同步字节,这些都是固定操作,因此也是常数时间,O(1)。第四阶段,预解密,重新计算CRC值、种子和缩放因子,同样需要常数时间操作,O(1)。第五阶段,解密,类似于加密过程,每个比特都经过LUT索引和XOR,结果是线性复杂性,Tdec(m) = O(m)。总体而言,方案的整体时间复杂性是线性的,T(m) = O(m),由于简单的位操作和表查找操作,存在轻量级的常数因子。方案的空间需求同样高效。固定状态变量,如CRC值、种子、缩放因子和随机字节,占用的空间是常数,O(1)。查找表固定为1024个条目,这也构成了常数空间,O(1)。明文、密文和CRC数组的缓冲区随输入长度变化,产生线性空间复杂性,S(m) = O(m)。因此,方案的整体空间复杂性也是线性的,与输入大小成正比。与传统密码系统相比,所提方案的效率变得明显。AES采用128位的数据块进行加密,并根据密钥长度的不同需要10到14轮加密过程。每一轮加密包括替换、置换、矩阵乘法和异或操作。这使得AES的复杂度为TAES(m) = O(r?m),其中r表示加密轮数。最近的研究表明,即使在优化的物联网(IoT)加速器中,AES仍然需要大量的计算资源,这突显了其在资源受限环境中的局限性[37]。RSA和ECC的计算复杂度更高,分别与密钥长度成多项式关系,分别为O(k3)和O(k2)[38]。相比之下,基于混沌的方法(如LUT驱动的方案)能够在保持不可预测性和安全性的同时实现轻量级的可扩展性。因此,所提出的Lorenz-LUT方案具有线性复杂度,并且常数因子较小,特别适合用于无线传感器网络和连续的生物医学数据流(如心电图和血压监测)。详细信息见表16。
表16. 所提出的混沌-LUT方案与传统密码系统在时间和空间复杂度上的比较总结。
总体而言,该方案展示了轻量级的可扩展性和高效性。未来的工作建议包括增强其鲁棒性和抗噪能力,并进一步拓展其在实际生物医学和物联网场景中的应用。
4.8 系统实现
所提出的系统通过基于硬件的原型实现,该原型使用Enhanced ShockBurst(ESB)协议进行数据加密和传输。ESB是一种专有的、轻量级的无线通信协议,专为运行在2.4 GHz工业、科学和医疗(ISM)频段的超低功耗片上系统(SoC)设备优化设计[39]。其可靠性和效率已在多项先前的研究中得到验证[2]。该原型使用nRF52840芯片实现,该芯片原生支持2.4 GHz ESB协议进行无线通信。为此芯片开发了定制固件,使其能够通过通用异步收发器(UART)接口与外部微控制器交互。通过UART接收的数据会被加密并通过ESB协议传输,而传入的ESB数据则被解密并通过UART接口转发回去。为了确保数据完整性,系统中集成了循环冗余校验(CRC)机制。所提出系统的完整数据流如图7所示。
图7. 系统数据流
在本研究中,使用笔记本电脑和CP210 USB-to-UART转换器(Silicon Labs,德克萨斯州奥斯汀)进行了实现和验证。配置了两个nRF模块:一个作为发送器,另一个作为接收器。利用nRF无线模块的通用异步收发器(UART)接口在设备之间建立通信。通过Arduino Serial Monitor测试了UART接口。模块配置为字符串模式,这样发送模块传输的任何单词或短语都会在接收模块处以原始形式连同头部一起接收。图8显示了系统实现结构。
系统使用两个配置为发送器和接收器的nRF52840模块实现,笔记本电脑作为网关设备。nRF52840模块被编程为通过UART进行无线数据通信。CP210 USB-to-UART转换器用于将模块与笔记本电脑连接。网关笔记本电脑配备了AMD Ryzen 7处理器、8 GB RAM和Windows 10操作系统。数据传输测试使用RealTerm: Serial Capture程序进行基于字符串的验证。RealTerm是一个专门的终端程序,用于捕获、调试和测试串行通信。
首先,将CP210 USB-to-UART转换器连接到笔记本电脑上,将UART信号转换为USB格式,以便PC通过COM6作为发送器、COM5作为接收器进行通信(见图9)。然后配置Realterm以适应数据传输,确保波特率、端口和显示设置正确。发送器和接收器的波特率均设置为115,200。发送器的端口设置为COM6,接收器的端口设置为COM5。发送了“Hello”消息。如图10所示,前三个头部用于验证数据是否来自对方设备。接下来是模式字段,指定了交换机中配置的数据模式。最后,长度字段指示实际传输数据的大小。
图10. Realterm配置
上图展示了所提出方案中使用的数据包帧结构。数据包以一个三字节的头部(FF F1 F0)开始,标记数据包的开始并确保对齐正确。接着是一个一字节的模式字段(04),表示加密或同步状态,以及一个一字节的长度字段(01),指定有效载荷的大小。有效载荷部分包含实际数据,在这里用ASCII字符串“Hello”表示,其对应的十六进制值为(48 = H, 65 = e, 6C = l, 6C = l, 6F = o)。数据包末尾附加了CRC值和同步值。这些值与一个随机会话字节(R)混合,以隐藏原始CRC信息(见图11)。
5. 结果与讨论
所提出的方案在不同输入长度下的执行时间都很短,使其适用于无线传感器网络(WSNs)和生物医学数据处理的轻量级应用。对于一个字节的数据,平均加密时间为0.1781毫秒,最快记录时间为0.154毫秒。对于两个字节的数据,平均时间为0.3364毫秒。三个字节的数据平均时间为1.1899毫秒,四个字节的数据平均时间为2.4568毫秒。尽管随着输入长度的增加,每字节的效率略有下降,但该方案仍然保持轻量级和高效率。
使用NIST SP 800-22套件(美国马里兰州盖瑟斯堡的国家标准与技术研究院)进行的测试显示了密钥流的随机性。该方案成功通过了所有适用的测试,包括频率、运行次数和近似熵测试。尽管长序列测试的结果表明输出不是随机的,但考虑到研究中使用的密文长度较短,这一结果是预期的。密钥空间估计验证了该方案的强度。理论上的密钥空间为232?,基于IEEE 754双精度参数和随机种子计算得出。然而,由于并非所有参数都贡献了独立的熵,因此实际密钥空间保守估计为128-192位。这一熵水平与AES-128和AES-192相当,两者都被认为能够抵抗暴力攻击。这提供了对其强度的评估。同步机制通过附加隐藏在随机会话字节中的CRC相关值来工作,其功能类似于传统密码学中的初始化向量。这些值可以被观察到,但不会暴露秘密的混沌状态。
在nRF52840平台上,所提出的方案实现了较低的延迟。对于四个字节的数据,总延迟为310微秒;而AES的延迟分别为711-742微秒。八个字节的数据,AES的延迟为360微秒,十六字节的数据,AES的延迟约为449微秒。内存使用量约为32 KB的闪存和7 KB的RAM,分别占可用资源的约6%和5%。这些结果表明该方案在资源受限环境中的高效性,无论是在速度还是资源消耗方面都能满足需求。
计算复杂性分析确认,由于简单的位操作和查找操作,该方案具有线性时间和空间复杂度O(m),并且常数因子较小。相比之下,AES每个数据块需要多轮加密,导致复杂度为O(r·m),而RSA和ECC的复杂度与密钥长度成多项式关系。这种效率表明基于混沌的方案适用于连续的生物医学数据流,其中可扩展性和低开销非常重要。最后,所提出的方案在nRF52840平台上使用Enhanced ShockBurst(ESB)协议实现了硬件原型。包含头部、模式、长度、有效载荷和CRC/同步字段的结构化数据包帧确保了数据完整性和轻量级传输。加密消息的成功实时传输证实了其在物联网医疗环境中的可行性。
总体而言,结果表明所提出的方案具有低延迟。它还展示了适合短生物医学信号的统计随机性,其加密强度与AES-128和AES-192相当,并且在资源受限的物联网环境中表现良好,线性复杂度确保了轻量级的可扩展性。成功的硬件实现进一步验证了其在实际应用中的可行性。未来的工作应扩展随机性测试到更长的数据序列,分析在噪声条件下的同步鲁棒性,并与其他轻量级密码标准进行基准测试,以增强其在实际生物医学和物联网场景中的应用。
6. 结论
研究表明,所提出的方案可以为资源有限的环境(如物联网医疗系统)提供安全的数据保护方法。测试表明该算法运行迅速,并且产生的输出通过了随机性检查。这意味着它可以处理连续的生物医学信号(如心电图和血压读数)而不会减慢速度。密钥空间分析表明,该方案提供的安全性水平与广泛使用的标准(如AES-128和AES-192)相当。此外,它足够轻量级,适用于内存和处理能力有限的设备。同步机制按预期工作,允许发送器和接收器保持对齐,同时不会暴露敏感信息。与相同硬件上的AES相比,所提出的方案始终需要更少的时间和资源,因此非常适合需要快速处理数据的小型设备。硬件原型的成功实现进一步证实了该方案在实践中的可行性。这些结果表明,该方案可以是物联网医疗环境中安全高效的数据保护选项。虽然这只是初步研究,但这些发现为未来的工作奠定了坚实的基础。将测试扩展到更长的数据序列,分析在噪声条件下的性能,并与其他轻量级密码方法进行比较,将有助于进一步确立其在实际应用中的实用性。
生物通微信公众号
生物通新浪微博
今日动态 |
人才市场 |
新技术专栏 |
中国科学人 |
云展台 |
BioHot |
云讲堂直播 |
会展中心 |
特价专栏 |
技术快讯 |
免费试用
版权所有 生物通
Copyright© eBiotrade.com, All Rights Reserved
联系信箱:
粤ICP备09063491号