高级搜索

留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

一种新的基于虚拟队列的无线多播网络编码调度策略

张瑞 占友 钱权

任炯炯, 李航, 陈少真. 减轮Simeck算法的积分攻击[J]. 电子与信息学报, 2019, 41(9): 2156-2163. doi: 10.11999/JEIT180849
引用本文: 张瑞, 占友, 钱权. 一种新的基于虚拟队列的无线多播网络编码调度策略[J]. 电子与信息学报, 2020, 42(2): 503-510. doi: 10.11999/JEIT190059
Jiongjiong REN, Hang LI, Shaozhen CHEN. Integral Attack on Reduced-round Simeck Algorithm[J]. Journal of Electronics & Information Technology, 2019, 41(9): 2156-2163. doi: 10.11999/JEIT180849
Citation: Rui ZHANG, You ZHAN, Quan QIAN. New Coding Scheduling Strategy Based on Virtual Queuein Wireless Multicast Network[J]. Journal of Electronics & Information Technology, 2020, 42(2): 503-510. doi: 10.11999/JEIT190059

一种新的基于虚拟队列的无线多播网络编码调度策略

doi: 10.11999/JEIT190059
基金项目: 国家重点研发计划(2018YFB0704400, 2018YFB0704404),新型网络体系架构与关键技术(2018B010113001)
详细信息
    作者简介:

    张瑞:女,1981年生,副教授,研究方向为计算机网络、无线网络和网络编码等

    占友:男,1993年生,硕士生,研究方向为无线网络编码

    钱权:男,1972年生,研究员,研究方向为计算机网络、网络安全以及云计算、大数据分析和大规模分布式领域中的网络环境

    通讯作者:

    张瑞 ruizhang@shu.edu.cn

  • 中图分类号: TN919.31, TP393

New Coding Scheduling Strategy Based on Virtual Queuein Wireless Multicast Network

Funds: The National Key Research and Development Program of China (2018YFB0704400, 2018YFB0704404), The New Network Architecture and Key Technologies (2018B010113001)
  • 摘要:

    网络编码由于其传输效率高的特性,近年来在无线多播网络中得到广泛的应用。针对无线多播网络中丢包自动重传效率低的问题,该文提出一种新的基于虚拟队列中数据包到达时间的编码调度策略(CSAT)。在CSAT策略中,为了提高编码效率,采用虚拟队列来存放初始以及未被所有接收者接收到的数据包。考虑到队列的稳定性,CSAT策略按照一定的比率从主次队列选择发送;在次队列发送数据包时,结合了编码和非编码两种方式,根据数据包到达队列的先后,选取能够使较多数据包参与编码的方式发送。仿真结果表明,该文所提的CSAT编码调度策略在有效提高了数据包传输效率的同时,提高了网络的吞吐量并降低了平均等待时延。

  • 万物联网的需求使得无线传感器、智能卡和RFID标签等受限设备的应用越来越广泛。针对资源受限环境下数据安全和隐私保护问题,兼顾安全和效率的轻量级密码算法的设计和分析成为研究热点。2013年6月,美国国家安全局提出了分别适用于软件和硬件环境的轻量级分组密码算法SIMON和SPECK[1]。这两种算法一经提出,就受到广泛关注。随后,在CHES 2015上,Yang等人[2]提出了一种新的轻量级分组密码Simeck算法。Simeck结合了SIMON和SPECK设计上的优点,在软件及硬件方面都有出色的表现。

    针对Simeck算法安全性的分析,最初由设计者给出了Simeck算法差分分析和不可能差分分析的结果[2]。随后,Bagheri[3]对Simeck算法抗线性攻击的能力进行了评估。2016年,文献[4]针对Simeck48和Simeck64,给出了成功概率为1的差分分析的更好结果。随后,Blondeau等人[5]给出了更长轮数带概率的差分分析结果。2018年,Zhang等人[6]给出了Simeck算法零相关线性攻击的结果。对Simeck算法的积分攻击首先由文献[7]提出,Zhang等人[7]构造了Simeck算法的积分区分器,分别给出了21/21/24轮Simeck32/48/64算法的积分攻击。

    积分攻击是一种有效的选择明文攻击。1997年,Daemen等人[8]提出一种新的分析方法攻击SQUARE算法。2001年,Lucks[9]提出Saturation攻击,同年,Biryukov等人[10]提出了Multiset攻击。随后,Knudsen等人[11]在FSE 2002上提出了积分攻击的思想。积分攻击的原理是加密特定形式的选择明文,再对所得密文求和,通过积分值的不随机性将密码算法与随机置换区分开。积分攻击成功的关键是建立有效的积分区分器,近年来,提出了很多新的自动化算法搜索积分区分器,大大加快了积分区分器的搜索效率,提高了积分攻击的成功率。

    本文对Simeck48和Simeck64在积分攻击下的安全性进行研究。首先,在文献[7]给出的Simeck48算法13轮积分区分器的基础上,标记区分器内部比特的状态,利用文献[12]提出的由内向外的扩展方法,向前解密2轮得到Simeck48算法15轮的高阶积分区分器,再根据Simeck算法Feistel的结构特点,在顶部加1轮得到16轮的积分区分器。然后利用该区分器,给出了24轮Simeck48算法的积分攻击。密钥恢复过程中利用等价子密钥技术和密钥扩展算法的性质减少了密钥猜测量,攻击过程结合中间相遇思想和部分和技术,降低了整个攻击算法的计算复杂度。攻击24轮Simeck48算法的时间复杂度为295,数据复杂度为246,存储复杂度为282.52。同样地,对于Simeck64算法,构造了20轮高阶积分区分器,部分解密9轮,猜测得到2104个105 bit等价子密钥,在此基础上穷举23 bit等价子密钥,实现密钥的恢复。攻击29轮Simeck64数据复杂度为263,时间复杂度为2127.3,存储复杂度为2109.02

    本文的结构安排如下:第2节简要介绍Simeck算法,给出密钥扩展算法的性质和安全性分析的结果;第3节给出Simeck48算法积分攻击的具体过程和复杂度计算;第4节给出Simeck64算法积分攻击的新结果;第5节总结全文。

    文中用到的符号说明如表1所示。

    表 1  符号说明
    符号说明
    Simeck2n(4n)分组为2n,密钥为4n的Simeck算法
    Lii轮左半部分输入nbit
    Li(j)Lij bit
    Rii轮右半部分输入nbit
    Ri(j)Rij bit
    K主密钥K=(K3,K2,K1,K0)
    rkiinbit的轮子密钥
    异或运算
    &,与运算
    <<<r, >>>r循环左移、右移rbit
    下载: 导出CSV 
    | 显示表格

    Simeck算法是文献[2]提出的轻量级分组密码,设计思想结合了SIMON和SPECK算法的优点。为了满足不同的应用需求,Simeck算法按照分组长度和密钥长度的不同分为3个版本Simeck2n(4n), n=16, 24, 32,每个版本的Simeck参数如表2所示。

    表 2  Simeck算法的参数
    算法分组长度密钥长度字长轮数
    Simeck32641632
    48962436
    641283244
    下载: 导出CSV 
    | 显示表格

    Simeck算法采用Feistel结构,其轮函数与SIMON算法类似,只有与运算,异或和循环移位操作,唯一的区别是循环移位常数不同。轮函数的迭代过程如图1所示,可以表示如式(1)

    图 1  Simeck算法的轮函数
    Ri+1=LiLi+1=f(Li)Rirki}
    (1)

    其中,f(x)=(x(x<<<5))(x<<<1)

    Simeck2n(4n)的密钥扩展算法借鉴SPECK算法,密钥迭代算法使用线性反馈移位寄存器(LFSR)来产生轮子密钥,初始主密钥K包含4个nbit字(K3,K2,K1,K0),作为LFSR的初始状态(t2,t1,t0,rk0)。为了更新寄存器状态以生成轮子密钥,复用轮函数并使用轮常数ci作为轮密钥。对于0i<T1,状态更新过程如式(2)

    rki+1=tici=c(zj)iti+3=rkif(ti)ci}
    (2)

    其中,c=2n4, (zj)i是序列zj的第i bit。Simeck32(64)和Simeck48(96)使用同一个m-序列z0, Simeck64(128)则使用另外一个m-序列z1

    对于Simeck2n(4n),通过研究Simeck密钥扩展算法的规律不难发现,开始4轮的密钥rk0, rk1, rk2, rk3分别等于K0, K1, K2, K3, 且rki+4只由rki, rki+1ci决定,与其它轮子密钥无关。基于上述发现,本文给出密钥扩展算法的性质。

    性质1 对于Simeck2n(4n)算法,当0iT4时,rki=rki+4f(rki+1)ci

    证明 当i3时,联立Simeck密钥扩展算法的式(2),可得rki+1=ti=rki3f(ti3)ci3。此外,由式(2)可知,ti3=rki2。因此,rki+1可以由rki3, rki2ci3唯一表示

    rki+1=rki3f(rki2)ci3
    (3)

    即对于任意的0iT4,都有rki+4=rkif(rki+1)ci。等式两边同时异或rki+4rki,成立

    rki=rki+4f(rki+1)ci
    (4)

    证毕

    更进一步,如果需要求解rki的某一特定比特,则有以下性质。

    性质2 对于Simeck2n(4n)算法,当0iT4, 0j<n时,rki(j)=rki+4(j)(rki+1(j)rki+1((j5)modn))rki+1((j1)modn)ci(j)

    根据Simeck密钥扩展算法的性质,可以利用轮数较高的轮子密钥来求解轮数较低的轮子密钥,进而减少攻击过程中密钥的猜测量。

    Simeck48和Simeck64算法的安全性分析主要集中在差分和线性攻击,不可能差分和零相关攻击,积分攻击等。表3表4分别列出了对Simeck48, Simeck64主要攻击结果。

    表 3  Simeck48的主要攻击结果
    算法攻击方法攻击轮数数据复杂度存储复杂度时间复杂度成功概率参考文献
    Simeck48(96)差分攻击20O(246)2751文献[2]
    Simeck48(96)差分攻击26O(247)2621文献[4]
    Simeck48(96)差分攻击28O(246)268.30.468文献[5]
    Simeck48(96)线性攻击19O(245)2941文献[3]
    Simeck48(96)不可能差分24O(248)O(274)294.71文献[2]
    Simeck48(96)零相关攻击24O(248)O(265.06)291.61文献[6]
    Simeck48(96)积分攻击21O(234)O(266)2951文献[7]
    Simeck48(96)积分攻击24O(246)O(282.52)2951本文
    下载: 导出CSV 
    | 显示表格
    表 4  Simeck64的主要攻击结果
    算法攻击方法攻击轮数数据复杂度存储复杂度时间复杂度成功概率参考文献
    Simeck64(128)差分攻击26O(263)21211文献[2]
    Simeck64(128)差分攻击33O(263)O(263)2961文献[4]
    Simeck64(128)差分攻击35O(263)2116.30.555文献[5]
    Simeck64(128)线性攻击27O(261)2120.50.477文献[3]
    Simeck64(128)不可能差分25O(264)O(279)2126.61文献[2]
    Simeck64(128)零相关攻击28O(264)O(297.67)2123.061文献[6]
    Simeck64(128)积分攻击24O(235)O(290.46)21271文献[7]
    Simeck64(128)积分攻击29O(263)O(2109.02)2127.31本文
    下载: 导出CSV 
    | 显示表格

    对于Simeck48算法,文献[7]构造了13轮的积分区分器。具体形式为

    (ACCC,ACCC,AACC,AAAC,A,A,ACCA,ACCA,AACA,A,A,A)(U,U,U,U,U,U,B,U,U,U,U,U)

    其中,A表示4个活动比特,A表示1个活动比特,C表示1 bit的固定值,U表示4 bit的任意值,表示1 bit的任意值,B表示1个平衡比特。区分器的输入有34个活动比特,区分器输出状态中右半部分第22个比特CR(22)是平衡的。

    在该积分区分器的基础上,用“1”标记比特活跃,用“0”标记常数比特,得到向量(1000, 1000, 1100, 1110, 1111, 1111, 1001, 1001, 1101, 1111, 1111, 1111)刻画算法的积分状态,利用文献[12]提出高阶积分的扩展方法,向前解密2轮得到15轮的高阶积分区分器,区分器的输入形式为:(ACAA,ACAA,A,A,A,A,A,A,A,A,A,A),有46个活动比特,区分器输出状态中右半部分第22个比特CR(22)仍是平衡的。

    进一步,基于Feistel结构,令(L1,R1)=(ACAA,ACAA,A,A,A,A,A,A,A,A,A,A),可以向前扩展1轮得到16的高阶积分区分器。区分器的输入(L0,R0)=(R1,f(R1)L1),区分器输出状态中右半部分第22个比特CR(22)是平衡比特。利用该区分器向后加8轮,可以攻击24轮的Simeck48算法。攻击过程中利用等价子密钥技术和密钥扩展算法的性质减少密钥猜测量,结合中间相遇思想和部分和技术,降低攻击的复杂度。

    (1) 等价子密钥技术

    等价子密钥技术是由Isobe等人[13]在ASIACRYPT 2013首次提出,结合Simeck算法轮函数的具体运算,把第i轮的子密钥rki移动到第i1轮,其中i=17,18,···,24,可以得到等效子密钥Ki。如图2所示,以rk23为例。

    图 2  等价子密钥技术

    图2(a)为Simeck算法本来的结构,为了等效移动rk23而不改变算法结构,rk23需要异或到相应位置,如图2(b)所示。此外,rk23可以进一步转移,与rk22异或,如图2(c)所示。因此,rk23等价于K23,同样地,可以通过类似的处理进行移动,即rk22(rk23<<<1)等价于K22。以此类推,Ki仅与rki有关,并且这种关系是线性的。在攻击过程中,注意到K16在区分器内部,所以恢复密钥时不需要猜测。

    (2) 中间相遇策略

    根据积分攻击的原理,对猜测的子密钥,如果R16(22)=0,那么猜测值是候选密钥。因此,进行部分解密的目标是找到使得R16(22)=0子密钥比特。根据Feistel结构特性式(5)成立

    R16(22)=((L16(22)L16(17))L16(21)L17(22))
    (5)

    进一步

    R16(22)=((L16(22)L16(17))L17(22)R17(21))
    (6)

    因此,R16(22)=0等价于

    ((L16(22)L16(17))L17(22)=R17(21)
    (7)

    这个过程如图3所示。

    图 3  中间相遇策略

    采用中间相遇策略,独立计算((L16(22)L16(17))L17(22)),将所有猜测的密钥和结果一起存储在表Tb1中;独立计算R17(21),并将猜测的密钥和结果存储在另一个表Tb2,其中,LiRi表示使用了等价子密钥技术后的中间状态。最后,通过检查这两个表之间的匹配得到正确的候选密钥,从而降低复杂度。在计算过程中,使用部分和技术来降低时间复杂度。

    (3) 部分和技术

    部分和技术是Ferguson等人[14]在FSE 2000提出的,用以改进对Rijndael算法的攻击结果,随后,部分和技术广泛应用于分组密码的积分攻击[15,16]。下面具体给出利用部分和技术恢复Simeck48密钥的过程。

    攻击最终的目标是恢复Simeck48的96-bit密钥,需要独立计算((L16(22)L16(17))L17(22))R17(21),分别存储在表Tb1和表Tb2中。

    (1) 计算表Tb1的过程

    计算((L16(22)L16(17))L17(22)),总共需要猜测79 bit 密钥,具体过程如图4所示。

    图 4  Tb1的计算

    (a) 对于224个猜测密钥K23和246个密文,设置241个1 bit计数器Re1,计算得到L22(1,2,57,922)||R22(02,422)的值,给相应的计数器的值增加1,保留计数器的值为奇数的那些值。这一步的时间复杂度为246×224×1/24+246×224×22/(24×24)266.42

    (b) 对于222个猜测密钥K22(02,422)和保留下来的Re1的位置,设置233个1 bit计数器Re2,计算得到L21(2,6,7,1012,1417,1922)||R21(1,2,57,922)的值,保留计数器的值为奇数的那些值。这一步的时间复杂度为246×241×19/(24×24)282.08

    (c) 对于210个猜测密钥K21(1,2,6,7,11,12,16,17,21,22)和保留下来的Re2的位置,设置230个1 bit计数器Re3,计算L20(5,7,922)||R20(2,6,7,11,12,16,17,21,22)||L21(10,14,15,19,20)的值,保留计数器的值为奇数的那些值。这一步的时间复杂度为256×233×9/(24×24)283.00

    (d) 对于27个猜测密钥K21(5,9,10,14,15,19,20)和保留下来的Re3的位置,设置223个1 bit计数器Re4,计算得到L20(7,11,12,1517,2022)||R20(2,6,7,1012,1417,1922)的值,保留计数器的值为奇数的那些值。这一步的时间复杂度为263×230×5/(24×24)286.15

    (e) 对于27个猜测密钥K20(6,10,11,15,16,20,21)和保留下来的Re4的位置,设置218个1 bit计数器Re5,计算得到L19(2,6,7,11,12,16,17,21,22)||R19(11,15,16,20,21)||R20(7,12,17,22)的值,保留计数器的值为奇数的那些值。这一步的时间复杂度为270×223×5/(24×24)286.15

    (f) 对于25个猜测密钥K20(2,7,12,17,22)和保留下来的Re5的位置,设置214个1 bit计数器Re6,计算得到L19(12,16,17,21,22)||R19(7,11,12,1517,2022)的值,保留计数器的值为奇数的那些值。这一步的时间复杂度为275×218×4/(24×24)285.83

    (g) 对于27个密钥K19(7,11,12,16,17,21,22)和保留下来的Re6的位置,由密钥扩展算法的性质1和性质2可知,因为K19=rk19(rk20<<<1), rk19=rk23f(rk20)c19,又根据等价子密钥与原始子密钥的线性关系,rk23rk20可以由已经猜测的密钥比特直接算出,所以K19(7,11,12,16,17,21,22)不需要猜测。而且计算过程与中间状态无关,所以相较于解密过程,计算复杂度忽略不计。设置27个1 bit计数器Re7,计算得到L18(17,22)||R18(12,16,17,21,22)的值,给相应的计数器的值增加1,保留计数器的值为奇数的那些值。这一步的时间复杂度为275×214×5/(24×24)282.15

    (h) 对于23个密钥K18(12,17,22)和保留下来的Re7的位置,与第(g)步类似,根据密钥扩展算法的性质和等价子密钥与原始子密钥的关系,可知计算K18(12,17,22)的复杂度忽略不计。设置23个1 bit计数器Re8,计算得到L17(22)||R17(17,22)的值,保留计数器的值为奇数的那些值。这一步的时间复杂度为275×27×2/(24×24)273.83

    (i) 对于密钥K17(17,22)以及保留下来的Re8的位置,猜测4-bit K20(14,19)K21(13,18),计算出K17(17,22)这2-bit 的密钥值,计算复杂度约为3轮Simeck48加密运算。计算得到((L16(22)K17(22))(L16(17)K17(17)))L17(22)的值,和猜测的密钥比特一起存储在表Tb1。这一步的时间复杂度为279×23×1/(24×24)+279×3×2/(24×24)273.64

    (2) 计算表Tb2的过程

    计算R17(21),总共需要猜测65 bit密钥,具体过程下所示。

    (a) 对于222个猜测密钥K23(0,1,321,23)和246个密文,设置233个1 bit计数器Re1,计算得到L22(1,5,6,911,1321)||R22(0,1,46,821)的值,给相应的计数器加1,保留计数器的值为奇数的值。这一步时间复杂度为246×222×22/(24×24)+246×222×19/(24×24)263.29

    (b) 对于219个猜测密钥K22(0,1,46,821)和保留下来的Re1的位置,设置225个1 bit计数器Re2,计算得到L21(6,10,11,1416,1821)||R21(1,5,6,911,1321)的值,给相应计数器的值增加1,保留计数器的值为奇数的值。这一步时间复杂度为241×233×15/(24×24)268.74

    (c) 对于215K21(1,5,6,911,1321)和保留下来的Re2位置,设置216个1 bit计数器Re3,计算L20(11,15,16,1921)||R20(6,10,11,1416,1821)的值,保留计数器的值为奇数的值。时间复杂度为256×225×10/(24×24)275.15

    (d) 对于29个猜测密钥K20(6,10,11,1416,1921)和保留下来的Re3的位置,设置29个1 bit计数器Re4,计算得到L19(10,16,21)||R19(11,15,16,1921)的值,给相应的计数器的值增加1,保留计数器的值为奇数的那些值。这一步的时间复杂度为265×216×6/(24×24)274.42

    (e) 对于25个密钥K19(11,15,16,20,21)和保留下来的Re4的位置,因为K19=rk19(rk20<<<1),由性质1可知rk19=rk23f(rk20)c19,又根据等价子密钥与原始子密钥的关系,rk23rk20可以由已经猜测的密钥比特直接算出,所以K19(11,15,16,20,21)不需要猜测。计算过程与中间状态无关,所以相较于解密过程,计算复杂度可以忽略不计。设置24个1 bit计数器Re5,计算得到L18(21)||R18(10,16,21)的值,给相应的计数器的值增加1,保留计数器的值为奇数的那些值。这一步的时间复杂度为265×29×3/(24×24)266.42

    (f) 对于密钥K18(16,21)和保留下来的Re5的位置,密钥K18(16,21)可以由已经猜测的密钥比特唯一解出,计算复杂度约为加密2轮Simeck48运算。计算得到R17(21)的值,和猜测的密钥一起存储在表Tb2中。时间复杂度为265×24×1/(24×24)+265×(2×2)/(24×24)260.15

    因为只考虑1个平衡比特,所以总的密钥候选空间从265+14+0=279减少到278。再加上剩余的K20(0,1,3,4,5,7,8,13,18,23), K21(0,3,4,8,23)K22(1,23)这17 bit的密钥,仍然有295个候选密钥。针对这295个候选密钥检测明密文是否匹配,进一步根据等价子密钥和轮子密钥的关系和密钥扩展算法,可以由轮子密钥解出正确的主密钥。

    24轮Simeck48算法的积分攻击的过程可以概括如下:

    步骤 1 构造一个包含246个明文的集合,该集合中的明文满足以下性质:加密1轮后的输出形式为(ACAA,ACAA,A,A,A,A,A,A,A,A,A,A)。进一步,加密明文获得相应密文;

    步骤 2 猜测子密钥Ki(17i23)的部分比特,并且部分解密246个密文8轮来计算((L16(22)L16(17))L17(22)),计算结果和79 bit猜测密钥一起存储在表Tb1中;

    步骤 3 猜测Ki(18i23)的部分比特,并且部分解密246个密文7轮来计算R17(21),计算结果和65 bit猜测密钥一起存储在表Tb2中;

    步骤 4 对每个候选的子密钥,猜测Ki(20i23)剩余的17 bit密钥,根据性质1计算得到主密钥,利用两组明密文对检查密钥的正确性,筛选得到正确的主密钥。

    24轮Simeck48积分攻击的数据复杂度为246个选择明文。

    构造Tb1Tb2的时间复杂度分别为287.75275.83,所以攻击过程中步骤2和步骤3总的时间复杂度为287.75+275.83287.75次24轮Simeck48加密,而步骤4的时间复杂度为295次24轮Simeck48加密。所以,总的攻击时间复杂度约为295次24轮Simeck48加密。

    存储的内容包括Tb1Tb2。对于Tb1,存储复杂度为282.52 Byte。对于Tb2,存储复杂度为268.19 Byte。所以,总的存储复杂度约为282.52 Byte。

    文献[7]中给出Simeck64算法15轮积分区分器,区分器的输入形式为:(ACCC,CCCC,CCCC,ACCC,AACC,AAAC,A,A,ACCC,CCCA,CCCA,ACCA,AACA,A,A,A),区分器输出状态中右半部分第28个比特CR(28)是平衡的。在该积分区分器基础上,向前做高阶积分扩展,得到19轮的积分区分器(AAAC,A,A,A,A,A,A,A,A,A,A,A,A,A,A,A),进一步,基于算法 Feistel结构,可以向前扩展1轮得到20轮的高阶积分区分器。

    利用该区分器,攻击29轮的Simeck64算法。攻击过程与3.3节类似。在部分解密9轮Simeck64算法恢复密钥的计算过程中,使用部分和技术和密钥扩展算法的性质来降低时间复杂度。猜测得到2104个105 bit等价子密钥,在此基础上穷举23 bit等价子密钥,从而实现全密钥的恢复。29轮Simeck64积分攻击的数据复杂度为263,时间复杂度为2127.3次,存储复杂度为2109.02

    本文给出了轻量级分组密码算法Simeck积分攻击的新结果。在已有积分区分器的基础上,通过向前做高阶积分扩展,分别得到16轮Simeck48和20轮Simeck64算法的积分区分器。利用等价子密钥技术、中间相遇策略,结合部分和技术和密钥扩展算法的性质,实现了24轮Simeck48和29轮Simeck64的积分攻击。与已有积分攻击的结果相比,本文明显提高了Simeck48和Simeck64算法积分攻击的轮数,分别提高了3轮和5轮。下一步如何利用减少复杂度的技术推广积分攻击算法的应用范围,将是值得研究的工作。

  • 图  1  虚拟队列结构模型

    图  2  两个接收者的虚拟队列模型

    图  3  不同条件下吞吐量的变化

    图  4  不同输入率下队列的最大长度

    图  5  比较不同算法的最大输入率随着信道丢包率的变化

    图  6  网络中的编码率和发包率与输入率的关系

    图  7  吞吐量、平均等待时延与输入率和丢包率的关系

    表  1  3个接收者时的网络编码策略

    队列编号Q0Q1Q2Q3Q4Q5Q6
    索引集合{1, 2, 3}{1, 2}{2, 3}{1, 3}}{1}{2}{3}
    NC01000000
    NC10000111
    NC20100001
    NC30010100
    NC40001010
    下载: 导出CSV

    表  2  CSAT调度策略流程

     输入: 队列Qi(0 ≤ i ≤ 6), QT ={Qi|0 ≤ i ≤ 6},主队列为Q0,次队列为Qi(1 ≤ i ≤ 6), Phi表示队列Qi的队首数据包,索引集合为I={Ri|1
    i ≤ 3}, Ihi表示Qi队首数据包的索引集合,Ri表示接收者i,编码方式表示为NCk(1 ≤ k ≤ 4),主次队列发送比为m/n,令flag1=
    0, flag2=0。
     输出:  每个队列的最大长度max(Qi),被所有接收者成功接收到的数据包的个数num,每个时隙发送数据包的个数的和sum。
     步骤 1 若QT 不为空,执行步骤2;否则等待数据包的到达;
     步骤 2 如果Q0不为空并且flag1<m,发送队列Q0的队首数据包Phi, flag1++,根据反馈消息更新该数据包的索引集合Ihi;否则跳转步骤4;
     步骤 3 如果Ihi集合为空,Phi数据包被成功接收,离开该队列系统;如果Ihi={R1, R2, R3}, Phi数据包没有被任何接收者接收,继续停留
    队列Qi,否则该数据包将根据其索引集合进入其他队列;
     步骤 4 如果次队列非空并且flag2<n,选择最先到达队列的数据包Phi,寻找满足该数据包的编码方式集合{NCk|1 ≤ k ≤ 4},否则跳转步骤1;
     步骤 5 如果有3个数据包参与编码的编码方式存在并且其它队列与之编码的数据包均存在,则以该编码方式发送数据包Phi, flag2++;否
    则执行步骤6;
     步骤 6 若其它队列存在数据包与之编码发送,则以该编码方式发送数据包Phi, flag2++;否则,以非编码的方式发送数据包Phi, flag2++;
     步骤 7 输出各个队列的最大长度max(Qi),被所有接收者接收到的数据包个数num以及每个时隙发送的数据包个数和sum。
    下载: 导出CSV

    表  3  在不同的丢包率下达到的最大输入率以及最优的主次队列发送比

    信道丢包率ε0.10.20.30.40.50.60.70.80.9
    主次比(m/n)9:18:28:27:36:45:57:37:37:3
    最大输入率(λ)0.890.790.690.590.490.390.30.20.1
    下载: 导出CSV
  • AHLSWEDE R, CAI Ning, LI S Y R, et al. Network information flow[J]. IEEE Transactions on Information Theory, 2000, 46(4): 1204–1216. doi: 10.1109/18.850663
    AMERIMEHR M H, ASHTIANI F, and VALAEE S. Maximum stable throughput of network-coded multiple broadcast sessions for wireless tandem random access networks[J]. IEEE Transactions on Mobile Computing, 2014, 13(6): 1256–1267. doi: 10.1109/TMC.2013.2296502
    SUNDARARAJAN J K, SHAH D, MÉDARD M, et al. Feedback-based online network coding[J]. IEEE Transactions on Information Theory, 2017, 63(10): 6628–6649. doi: 10.1109/TIT.2017.2710192
    CHEN Wei, LETAIEF K B, and CAO Zhigang. Buffer-aware network coding for wireless networks[J]. IEEE/ACM Transactions on Networking, 2012, 20(5): 1389–1401. doi: 10.1109/TNET.2011.2176958
    SAGDUYU Y E and EPHREMIDES A. On Broadcast stability of queue-based dynamic network coding over erasure channels[J]. IEEE Transactions on Information Theory, 2009, 55(12): 5463–5487. doi: 10.1109/tit.2009.2032732
    SAGDUYU Y E, GEORGIADIS L, TASSIULAS L, et al. Capacity and stable throughput regions for the broadcast erasure channel with feedback: An unusual union[J]. IEEE Transactions on Information Theory, 2013, 59(5): 2841–2862. doi: 10.1109/tit.2011.2171180
    SHAO Pengfei, ZHAO Yanwei, YANG Mingxia, et al. Hash searching and network coding based constant retransmission for wireless multicast[J]. IET Communications, 2017, 11(2): 302–309. doi: 10.1049/iet-com.2016.0484
    TAN Guoping, CHEN Yangjie, LI Yueheng, et al. PNCIA: An interference aware wireless multicast scheme with partial network coding[C]. 2016 IEEE Information Technology, Networking, Electronic and Automation Control Conference, Chongqing, China, 2016: 155–159. doi: 10.1109/ITNEC.2016.7560339.
    MOHANDESPOUR M, GOVINDARASU M, and WANG Zhengdao. Rate, energy, and delay tradeoffs in wireless multicast: network coding versus routing[J]. IEEE Transactions on Mobile Computing, 2016, 15(4): 952–963. doi: 10.1109/TMC.2015.2439258
    LI Yuzhou, SHI Yan, SHENG Min, et al. Energy-efficient transmission in heterogeneous wireless networks: A delay-aware approach[J]. IEEE Transactions on Vehicular Technology, 2016, 65(9): 7488–7500. doi: 10.1109/TVT.2015.2472578
    MOGHADAM N and LI Hongxiang. Improving queue stability in wireless multicast with network coding[C]. 2015 IEEE International Conference on Communications, London, UK, 2015: 3382–3387. doi: 10.1109/ICC.2015.7248847.
    MOGHADAM N and LI Hongxiang. Queue stability analysis in network coded wireless multicast network[J]. IEEE Communications Letters, 2016, 20(5): 950–953. doi: 10.1109/LCOMM.2016.2524453
    MOGHADAM N and LI Hongxiang. A new wireless multicast queuing design using network coding and data-flow model[J]. IEEE Communications Letters, 2016, 20(8): 1603–1606. doi: 10.1109/LCOMM.2016.2568212
    BÓNA M. Introduction to Enumerative Combinatorics[M]. Boston: McGraw-Hill, 2007: 63–70.
    杨雅琴. 第二类Stirling数计算公式的一种证明[J]. 青岛科技大学学报: 自然科学版, 2009, 30(4): 369–371. doi: 10.3969/j.issn.1672-6987.2009.04.023

    YANG Yaqin. The proof for formula of stirling numbers of the second-kind[J]. Journal of Qingdao University of Science and Technology:Natural Science Edition, 2009, 30(4): 369–371. doi: 10.3969/j.issn.1672-6987.2009.04.023
  • 期刊类型引用(1)

    1. 杜小妮,段娥娥,王天心. 基于混沌的双模块Feistel结构高安全性高速分组密码算法安全性分析. 电子与信息学报. 2021(05): 1365-1371 . 本站查看

    其他类型引用(1)

  • 加载中
图(7) / 表(3)
计量
  • 文章访问数:  1924
  • HTML全文浏览量:  986
  • PDF下载量:  72
  • 被引次数: 2
出版历程
  • 收稿日期:  2019-01-22
  • 修回日期:  2019-07-24
  • 网络出版日期:  2019-09-17
  • 刊出日期:  2020-02-19

目录

/

返回文章
返回