Research on Linear Properties of SIMON Class Nonlinear Function
-
摘要: SIMON算法是由美国国家安全局(NSA)在2013 年推出的一簇轻量级分组密码算法,具有实现代价低、安全性能好等优点,其轮函数采用了
F(x)=(x<<<a)&(x<<<b)⊕(x<<<c) 类型的非线性函数。该文研究了移位参数(a,b,c)一般化时SIMON类算法轮函数的线性性质,解决了这类非线性函数的Walsh谱分布规律问题,证明了其相关优势只可能取到0 或2−k ,其中k∈Z 且0≤k≤⌊2−1n⌋ ,并且对于特定条件下的每一个k ,都存在相应的掩码对使得相关优势等于2−k ,给出了相关优势取到2−1 时的充分必要条件及掩码对的计数,给出了特定条件下非平凡相关优势取到最小值时的充分必要条件与掩码对的计数。Abstract: SIMON algorithm is a group of lightweight block cipher algorithms introduced by the National Security Agency (NSA) in 2013. It has the advantages of low implementation cost and good security performance. Its round function adoptsF(x)=(x<<<a)&(x<<<b)⊕(x<<<c) type nonlinear function. In this paper, the linear properties of the round function of SIMON algorithm when the shift parameters (a, b, c) are generalized are studied. The problem of Walsh spectrum distribution of this kind of nonlinear function is solved, it is proved that the correlation advantage can only be equal to 0 or2−k , wherek∈Z and0≤k≤⌊2−1n⌋ , and for each k under specific conditions, there are corresponding mask pairs so that the correlation advantage is equal to2−k . The necessary and sufficient conditions for the correlation advantage to be equal to 1/2 and the count of mask pairs are given. And the necessary and sufficient conditions for the nontrivial correlation advantage to be equal to the minimum value and the count of mask pairs under specific conditions are also given.-
Key words:
- SIMON algorithm /
- Linear property /
- Cyclic shift /
- S-box
-
1. 引言
短时交通流预测的实时性和准确性决定了交通流的控制精度和诱导效果,其研究成为交通领域研究的重要内容之一[1,2]。短时交通流预测方法大致分为基于数理统计方法和基于智能算法方法[3,4]。其中数理统计方法包括基于整合移动平均自回归(ARIMA)模型等,这种方法模型简单,但所需数据量大且预测精度差。智能算法方法包括人工神经网络(Artificial Neural Network, ANN)等,这种方法预测精度较好,但易出现过拟合和收敛速度慢。近年来对两种方法进行组合的研究越来越流行,李松等人[5]采用遗传算法优化BP神经网络的方法来预测短时交通流,该方法克服了易陷入局部最优等缺陷,但会增加其预测时间。谭满春等人[6]采用ARIMA模型对短时交通流时间序列线性部分进行预测,用人工神经网络对其非线性残差部分进行预测,但其方法依然是ARIMA模型作为主要的预测模型,神经网络仅仅用于修正预测误差。从而当交通流发生急剧振荡时会严重影响模型预测性能。
综上所述,仅用某一种模型进行预测,很难进一步提高短时交通流预测的准确性。为突出平稳段和非平稳段相结合的预测优势,本文尝试在灰色关联分析法进行对遗传粒子群优化小波神经网络(Genetic Particle Swarm Optimization Wavelet Neural Network, GPSOWNN)输入结构简化的基础上,增加了ARIMA模型预测值输入的组合形式。该方法克服了平稳段与非平稳段的预测数据在单一预测模型的预测精度的局限性,并且增加遗传粒子群算法进行优化,以达到加快网络训练收敛速度和使其结果不易陷入局部最优的效果,最终实现对短时交通流预测性能的改善。
2. ARIMA-GPSOWNN模型相关理论
2.1 ARIMA模型原理
自回归移动平均模型的基本模型是ARMA(
p ,q ),其表达式为Yt=φ1Yt−1+φ2Yt−2+···+φpYt−p+εt−θ1εt−1−θ2εt−2−···−θqεt−q (1) 其中,
Yt 为预测的时间序列,φ 为AR模型参数,θ 为MA模型参数,ε 为零均值白噪声,p 为自回归项,q 为移动平均项数,t 是时间索引。其模型针对的是平稳时间序列,而差分自回归滑动平均模型(ARIMA)是在ARMA模型基础上加了差分变换[7–9]。差分变换能使非平稳时间序列平稳化,所以ARIMA模型也可以用于非平稳时间序列,它的模型一般简化为ARIMA(p ,d ,q ),其表达式为φp(B)(1−B)dYt=θq(B)εt (2) 其中,
B 是后移算子,BYt=Yt−1 ,d 是差分次数。2.2 遗传粒子群算法原理
遗传算法是模拟优胜劣汰法则和生物进化过程的优化搜索算法,它将输入参数进行编码,再通过交叉、变异等运算改变编码参数信息,然后计算适应度来筛选出优良的参数[10]。粒子群算法是通过对鸟类群体的行为规律进行总结提出的,它是通过跟随单个粒子和粒子群极值来完成极值寻优[11]。遗传粒子群算法继承了粒子群算法的编码方式,并应用了遗传算法中通过交叉、变异等运算寻找最优解的方式,从而能够结合两种算法快速收敛和全局寻优的优点。
2.3 小波神经网络原理
小波神经网络的结构与BP神经网络相似,不同点是小波神经网络的激活函数选用的是Morlet小波基函数[12,13]。小波神经网络的基函数是根据小波理论确定的,从而避免了结构设计的盲目性,小波神经网络结合了小波变换的时域局部特性和神经网络的自学习、鲁棒性、自适应的优势。小波神经网络预测步骤如下:
步骤 1 初始化小波平移因子
bj ,伸缩因子aj ,连接权值和阈值wij 等参数。步骤 2 将样本分为训练样本和测试样本,根据训练样本计算隐含层输出和输出层输出。小波神经网络隐含层输出公式为
hj=Mj(k∑i=1wijxi−bjaj),j=1,2,···,l (3) 其中,
hj 为隐含层第j 个节点的输出,Mj 为小波基函数,wij 为输出层和隐含层的连接权值,bj 为小波基函数的平移因子,aj 为小波基函数的伸缩因子,l 为隐含层节点数。步骤 3 计算预测输出和测试样本的误差。
步骤 4 根据步骤3计算出的误差调整小波神经网络的权值和阈值,判断误差是否小于可接受最大误差或者迭代次数是否大于最大迭代次数,如果是则输出预测值,否则转到步骤3。
3. ARIMA-GPSOWNN模型构建和算法
3.1 时间序列数据集
本文的实验数据提取于纽约Huguenot Ave 2013年的2月2日~2月8日之间300个数据样本,每个数据样本之间相隔15 min。针对这些数据,设实时交通流数据的表达式为
X(t)={x(t),x(t−1),···,x(t−p)} ,其中X(t) 为实时时刻后连续p 个时刻的交通流数据,历史交通流数据为X(t−1)={x(t−1),x(t−2), ···,x(t−p−1)},X(t−2)={x(t−2),x(t−3),··· ,x(t−p−2)},···,X(t−n)={x(t−n),x(t−n−2) ,···,x(t−p−n)} ,其中X(t−n) 为实时时刻前第n 时刻后连续p 个时刻的交通流数据。3.2 ARIMA模型构建
3.2.1 模型选择
构建ARIMA模型最主要的工作是确定ARIMA模型中参数
p ,d ,q 的值。首先确定差分次数d 的值,通过单位根检验对交通流数据样本进行平稳性检验,对于非平稳时间序列反复进行差分处理,直到修正后的时间序列平稳化为止。由3.1节提取的交通流时间序列通过1次差分处理即能平稳,从而该模型差分系数d 为1。然后确定自回归项p 和移动平均项q 的值,首先观察自相关图和偏相关图来确定p ,q 的可能值。图1为自相关图,可以观察到自相关在滞后lag=1时拖尾,从而p 值的可能值为1或2。图2为偏自相关图,可以观察到偏自相关在滞后lag=2时拖尾,从而q 值的可能值为2或3。然后用赤池信息量准则(Akaike Information Criterion, AIC)对p ,q 进行最佳估计,AIC值可以反映数据拟合程度,AIC值越小拟合越优良。将交通流数据代入到ARIMA(1,1,2), ARIMA(2,1,2), ARIMA(1,1,3), ARIMA(2,1,3)4种模型并分别计算AIC值,结果如表1, ARIMA(1,1,2)模型的AIC值最小,从而可断定该交通流序列最适合ARIMA(1,1,2)模型。选用前250个数据样本作为训练样本,用来预测后面50个数据样本。训练过程为用最小二乘法估计模型的参数,拟合结果如图3。在3.2.2节进一步对模型的好坏进行检验。表 1 4组模型的AIC值模型 AIC值 ARIMA(1, 1, 2) 7.210306 ARIMA(2, 1, 2) 7.426953 ARIMA(1, 1, 3) 7.250197 ARIMA(2, 1, 3) 7.509981 3.2.2 模型检验
交通流数据的变化率越大则其变化更剧烈,由图4可知,如24~25, 26~27以及47~48的交通流时间序列段,其交通流实际值的斜率变化都非常大,这些序列段的交通流数据变化较其他序列段更剧烈,而由图5可知,上述序列段与其他序列段相比误差绝对值更大,可以判断ARIMA模型对剧烈变化的时间序列预测效果差,从而仅用ARIMA模型并不能达到很好的预测效果,在3.3节中会将ARIMA模型和GPSOWNN模型进行结合。
3.3 GPSOWNN模型构建
构建神经网络模型应首先确定模型的输入和输出,以及隐含层节点数。本文模型的输入是由ARIMA模型预测值和预测时刻的历史数据组成,为了排除相关性小的历史数据以提升模型的预测速度,先通过灰色关联分析法计算预测时刻与历史时刻的灰色关联系数。灰色关联分析法是作为衡量序列间关联程度的一种方法,灰色关联系数越大则相关性越大[14]。最后筛选出关联系数大的历史数据。
算法1 灰色关联分析法
步骤 1 求各交通流时间序列的初值像,计算式子如式(4)
X′k−i=Xk−i/xk−i(1)=(x′k−i(1),x′k−i(2),···,x′k−i(j)),i=1,2,···,n;j=1,2,···,m (4) 其中,
x′k−i 为前第i 个历史时刻的交通流时间序列的初值像,Xk−i 为前第i 个历史时刻的交通流时间序列,x′k−i(j) 为前第i 个历史时刻的交通流时间序列的初值像的第j 数据。步骤 2 对各历史时刻的交通流时间序列的初值像进行求差运算,计算式子如式(5)
Δi(j)=|xk′(j)−xk−i′(j)|,j=1,2,···,m (5) 其中,
xk′(j) 为预测时刻的交通流时间序列的初值像的第j 数据,Δi(j) 为前第i 个历史时刻的交通流时间序列的初值像与预测时刻的交通流时间序列的初值像的差的绝对值。步骤 3 找出步骤2求得的求差序列中的最大值与最小值,计算式子如式(6)和式(7)
M=maximaxjΔi(j) (6) 其中,
M 为求差序列的最大值。m=miniminjΔi(j) (7) 其中,
m 为求差序列的最小值。步骤 4 计算每个历史时刻的交通流时间序列中的每个数据与对应的预测时刻的交通流时间序列数据的灰色关联系数,计算式如式(8)
γi(j)=m+ξMΔi(j)+ξM,j=1,2,···,m;ξ∈(0,1) (8) 其中,
γi(j) 为前第i 个历史时刻的交通流时间序列的第j 数据与预测时刻的交通流时间序列的第j 数据的灰色关联系数,ξ 为常数通常为0.5。步骤 5 得到每个历史时刻的交通流时间序列与预测时刻的交通流时间序列的灰色关联系数为
γi=1mm∑j=1γi(j),i=1,2,···,n (9) 其中,
γi 为前第i 个历史时刻的交通流时间序列与预测时刻的交通流时间序列的灰色关联系数。步骤 6 输出实时时刻与各历史时刻的灰色关联系数。
将预测时刻与前7个历史时刻的交通流时间序列(每个序列100个数据)用灰色关联分析法进行计算。计算结果为表2。
表 2 实时时刻与历史时刻的灰色关联系数交通流历史时刻时间
序列xk−i (i=1, 2, ···, 7)与xk的灰色关联系数 xk−1 0.8271 xk−2 0.8155 xk−3 0.6546 xk−4 0.5346 xk−5 0.5146 xk−6 0.5126 xk−7 0.5453 当两个时间序列的灰色关联系数大于0.6时,可认为它们之间有很强的相关性,由表2可知只有前3个时刻与实时时刻的相关性强,从而将预测时刻的前3个时刻的时间序列和用ARIMA模型算出的实时数据预测值作为GPSOWNN模型的4个输入,模型输出为预测时刻交通流值。现有能确定神经网络隐含层节点数的方法只有经验法,本文采用的是一个经验公式确定隐含层节点数,如式(10)
h=√m+n+α (10) 其中,
h 为隐含层节点数目,m 为输入层节点数目,n 为输出层节点数目,α 为10以内的常数。通过修改α 的值,反复试凑选取最优值,当隐含层节点数为6时预测效果最好。具体的结构图如图6。图6中,
wij 和wjk 分别是输入层到隐含层和隐含层到输出层的连接权值。其初始值都是由遗传粒子群算法计算得到。3.4 ARIMA-GPSOWNN算法
ARIMA-GPSOWNN算法是利用遗传粒子群算法、灰色关联分析法对ARIMA和小波神经网络组合模型进行优化的算法,其结合了遗传粒子群算法加快模型网络的收敛速度的优势以及灰色关联分析法减少干扰项对预测性能的影响的优点,最终达到优化预测模型效果。
算法2 ARIMA-GPSOWNN算法
步骤 1 选取构建好的交通流时间序列的前250个数据作为ARIMA模型的训练样本;
步骤 2 对训练样本进行归一化处理,将数据值投射到[0, 1]区间;
步骤 3 将步骤2中处理后的数据输入到3.2节已构建好的ARIMA(1, 1, 2)模型中;
步骤 4 利用ARIMA模型进行预测,得到ARIMA模型预测交通流数据集;
步骤 5 对步骤4中的预测结果进行反归一化处理,将其作为ARIMA模型预测序列;
步骤 6 调用算法1得到的与实时时间序列相关性强的历史时间序列与步骤5中的ARIMA模型预测序列作为GPSOWNN网络的输入;
步骤 7 利用遗传粒子群算法对小波神经网络的伸缩因子、平移因子、连接权值和阈值的初始值进行最优选取;
步骤 8 计算隐含层输出和输出层输出,利用误差的反向传播调整小波神经网络的参数,目的是使误差函数达到最小值。为了加速算法的收敛速度,采用熵函数作为误差函数,它与2次误差函数相比,能够提高神经网络的收敛速度,当误差相同时,与2次误差函数相比,熵函数调节的梯度更大,从而使权重w调整的更快,最终使训练速度更快。具体公式如式(11)
e=−m∑k=1|yn(k)lny(k)+(1−yn(k))ln(1−y(k))| (11)
其中,
yn(k) 为期望输出,y(k) 为实际输出;步骤 9 判断误差是否小于可接受最大误差以及迭代次数是否达到最大值。如果是则保存调整好的小波神经网络参数,并输出实时交通流预测值。否则转到步骤8。
4. 实验结果与分析
4.1 评判标准
本文以标准偏差为评判模型预测精度好坏的标准,标准偏差公式为
σ=√1nn∑i=1(xr(i)−x(i))2 (12) 其中,
σ 为标准偏差,n 为交通流数据的个数,xr 为实际交通流数据,x 为预测交通流数据。4.2 实验对比及分析
一个模型预测性能的好坏可以由该模型的收敛速度和预测精度反映出来。取一组交通流数据样本输入到GWNN和GPSOWNN模型中,分别画出两个模型的进化过程,通过图7和图8可得GWNN需要在迭代6次后才能找到全局最优解,而GPSOWNN只需迭代4次就可以找到全局最优解,显然使用遗传粒子群算法优化后的小波神经网络的收敛速度更快,从而GPSOWNN模型的预测性能要优于GWNN模型。
为了比较ARIMA模型与GPSOWNN模型以及其组合模型的预测精度,分别用ARIMA模型和GPSOWNN组合模型、ARIMA模型、WNN模型对交通流进行预测,并画出预测样本的预测图和偏差图。
由图9和图10可知当在比较平稳的时间段,如交通流时序数据在5~10段或35~40段,ARIMA模型的预测精度明显比GPSOWNN模型更精准,而在数据急剧变化时,如交通流时序数据在25~30段或45~50段,GPSOWNN模型的预测精度明显比ARIMA模型更精准,而其组合模型综合了两者的优点。由表3可得ARIMA模型预测精度最粗略,GPSOWNN模型预测精度其次,两者组合模型预测精度最精准,其相对于ARIMA模型和GPSOWNN模型总标准误差分别降低了35.8%和20.3%。综上所述,ARIMA和GPSOWNN组合模型的预测性能比其单个模型更好。
表 3 3种模型的总标准误差模型 总标准误差 GPSOWNN和ARIMA组合模型 294.5303 GPSOWNN模型 369.7026 ARIMA模型 459.0784 5. 结束语
本文根据短时交通流量的实时数据,从预测模型的简化和算法优化两方面,提出一种ARIMA与GPSOWNN组合模型对其进行预测。通过仿真结果可知,其预测性能明显优于ARIMA模型和GPSOWNN模型,在一定程度上提高了短时交通流预测性能。这种组合模型的方式为交通流预测的研究提供了新思路。但本文并没有分析天气以及其他路口对本路段交通流的影响,因此对这类问题的研究将是下一步的研究内容。
-
表 1
Fabc(x) 相关优势计数表|ρ| 0 1 1/2 1/4 1/8 1/16 1/32 F8182 48255 1 64 1280 8256 7680 0 F8051 48255 1 64 1280 8256 7680 0 F9182 207863 1 72 1728 15360 37120 0 F9051 207863 1 72 1728 15360 37120 0 表 2 转变成不相交2次型算法(算法1)
输入:2次型布尔函数f(x)=f(x1,x2,⋯,xn) 输出:可逆矩阵M,不相交二次型ˆf(x)使得ˆf(x)=f(xM) (1) /*初始化*/ (2) M←I /*I是n×n的可逆矩阵*/ (3) ˆf(x)←f(x1,x2,⋯,xn) (4) v←PickIndex(ˆf) (5) /*不相交化*/ (6) 当σ(ˆf,xv)≥2时,执行 (7) m←σ(ˆf,xv) /*ˆf中包含xv的2次项个数*/ (8) 在ˆf中找出所有的2次项xvxti满足t1<t2<⋯<tm (9) ˆf←Substitute(ˆf,It1←t1,t2,⋯,tm) (10) M←It1←t1,t2,⋯,tm⋅M (11) 如果σ(ˆf,xt1)≥2,执行 (12) k←σ(ˆf,xt1) (13) 在ˆf中找出所有的2次项xt1xsi满足
s1<s2<⋯<sm, -
[1] BEAULIEU R, SHORS D, SMITH J, et al. The SIMON and SPECK lightweight block ciphers[C]. The 52nd Annual Design Automation Conference. San Francisco, USA, 2015: 1-6. [2] WANG N, WANG X, JIA K, et al. Difffferential attacks on reduced SIMON versions with dynamic key-guessing techniques[J]. IACR Cryptology ePrint Archive, 2014: 2014/448. [3] 董向忠, 关杰. SIMON类算法轮函数的差分性质分析[J]. 密码学报, 2015, 2(3): 207–216. doi: 10.13868/j.cnki.jcr.000072DONG Xiangzhong, GUAN Jie. Analysis on difffferential properties of the round function of SIMON family of block ciphers[J]. Journal of Cryptologic Research, 2015, 2(3): 207–216. doi: 10.13868/j.cnki.jcr.000072 [4] SEYED MOJTABA DEHNAVI. Further Observations on SIMON and SPECK Block Cipher Families[J]. Cryptography, 2018, 3(1): 1. doi: 10.3390/cryptography3010001 [5] 董向忠, 关杰. SIMON类算法轮函数的线性性质[J]. 山东大学学报(理学版), 2015, 50(9): 49–54.DONG Xiangzhong, GUAN Jie. Linear properties of the round function of SIMON family of block ciphers[J]. 山东大学学报, 2015, 50(9): 49–54. [6] ABDELRAHEEM N A, ALIZADEH J, ALKHZAIMI H A, et al. Improved linear cryptanalysis of reduced-round SIMON[EB/OL]. https://eprint.iacr.org/2014/681, 2014. [7] CHEN H, WANG X. Improved linear hull attack on round-reduced SIMON with dynamic key-guessing techniques[C]. Fast Software Encryption—FSE 2016. Berlin, Germany, 2016: 428–449. doi: 10.1007/978-3-662-52993-5_22. [8] SHI Danping, HU Lei, SUN Siwei, et al. Improved linear(hull) cryptanalysis of round-reduced versions of SIMON[J]. Science China (Information Sciences) 60.03(2017): 223–225. doi: 10.1007/s11432-015-0007-1. [9] REHAM A and POORVI L. V linear cryptanalysis of reduced-round simon using super rounds[J]. Cryptography, 2020, 4(1): 9. doi: 10.3390/cryptography4010009 [10] BOURA C, NAYA-PLASENCIA M, and SUDER V. Scrutinizing and improving impossible differential attacks: Applications to CLEFIA, Camellia, LBlock and Simon[C]. The 20th International Conference on the Theory and Application of Cryptology and Information Security, Kaoshiung, China, 2014: 179–199. [11] 陈展, 王宁. SIMON算法的不可能差分分析[J]. 密码学报, 2015, 2(6): 505–514. doi: 10.13868/j.cnki.jcr.000097CHEN Zhan and WANG Ning. Impossible difffferential cryptanalysis of reduced-round SIMON[J]. Journal of Cryptologic Research, 2015, 2(6): 505–514. doi: 10.13868/j.cnki.jcr.000097 [12] KONDO K, SASAKI Y, TODO Y, et al. On the design rationale of SIMON block cipher: Integral attacks and impossible differential attacksagainst SIMON variants[J]. IEICE Transactions on Fundamentals of Electronics, Communications and Computer Sciences, 2018, 101(1): 88–98. [13] YU Xiaoli, WU Wenling, SHI Zhenqing, et al. Zero correlation linear cryptanalysis of reduced-round SIMON[J]. Journal of Computer Science and Technology, 2015, 30(6): 1358–1369. doi: 10.1007/s11390-015-1603-5 [14] SUN L, FU K, and WANG M. Improved zero-correlation cryptanalysis on SIMON[C]. Information Security and Cryptology—INSCRYPT 2015. Beijing, China, 2015: 125–143. [15] ZHANG Kai, Guanjie, HU Bin, et al. Security evaluation on Simeck against zero-correlation linear cryptanalysis[C]. IET Information Security, 2018, 12(1): 87–93. doi: 10.1049/iet-ifs.2016.0503. [16] FU Kai, SUN Ling, and WANG Meiqin. New integral attacks on SIMON[J]. IET Information Security, 2017, 11(5): 277–286. doi: 10.1049/iet-ifs.2016.0241 [17] CHU Zhihui, CHEN Huaifeng, WANG Xiaoyun, et al. Improved integral attacks on SIMON32 and SIMON48 with dynamic key-guessing techniques[J]. Security and Communication Networks, 2018: 5160237. doi: 10.1155/2018/5160237 [18] YANG G, ZHU B, SUDER V, et al. The Simeck Family of Lightweight Block Ciphers[C]. Güneysu T, Handschuh H. (eds) Cryptographic Hardware and Embedded Systems, CHES 2015. Lecture Notes in Computer Science, vol 9293. Springer, Berlin, Germany, https://doi.org/10.1007/978-3-662-48324-4_16. [19] SHI D, SUN S, SASAKI Y, et al. Correlation of Quadratic Boolean Functions: Cryptanalysis of All Versions of Full MORUS[M]. Advances in Cryptology–CRYPTO, 2019. [20] 鞠桂枝, 赵亚群. 多输出部分Bent函数若干性质的研究[J]. 工程数学学报, 2005(6): 183–186. 期刊类型引用(0)
其他类型引用(1)
-
计量
- 文章访问数: 892
- HTML全文浏览量: 404
- PDF下载量: 74
- 被引次数: 1