首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种Grain型流密码的判别方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

申请/专利权人:中国电子科技集团公司第三十研究所

摘要:本发明公开了一种Grain型流密码的判别方法,引入平衡二叉树的结构存储特征函数的项,通过平衡二叉树的搜索、插入、删除操作,能够极大的提高函数处理效率;以项的次数为依据对项进行分类,起到分治的效果,缩减了平衡二叉树的规模:一方面减小了计算每个平衡二叉树对应单变量多项式的计算量,另一方面又减少了计算非线性移位寄存器特征函数的搜索空间;算法引入分治的思想,在求取平衡二叉树对应单变量多项式和计算非线性移位寄存器特征函数过程中都适合并行化运算,在并行化计算环境中,该判别方法可以处理更大规模的特征函数;判别方法具有普适性和可延展性。

主权项:1.一种Grain型流密码的判别方法,其特征在于:包括如下步骤:步骤一、对级数为n的移位寄存器的特征函数进行单项的序分类,建立平衡二叉树,得到项的最高次数d,并将次数为i的项所在的平衡二叉树标记为Ti;步骤二、设置二元域上单变量多项式u=0;步骤三、计算Ti对应的单变元多项式ui,并记v1=u1;步骤四、更新单变量多项式u;步骤五、判断单变量多项式u的次数degu是否小于n2:若是,则判定输入的移位寄存器不是Grain型流密码,输出“否”,然后进入步骤十三;若否,则令i=i+1,然后进入步骤六;步骤六、判断i是否大于d:若否,则返回步骤三;若是则进入步骤七;步骤七、构造U为u对应的特征函数,构造V为uu1对应的特征函数,令i=2;步骤八、标记平衡二叉树标记Ti为T;步骤九、判断T是否为空:若否,则进入步骤十;若是,则令i=i+1,然后进入步骤十二;步骤十、搜索T中的最小叶子节点,记为t;步骤十一、判断t的变量中最大下标是否超过n‑degu,若是,则判定输入的移位寄存器不是Grain型流密码,输出“否”,然后进入步骤十三;若否,则令V=V+t,同时更新T,然后返回步骤九;步骤十二、判断i是否大于d:若否,则返回步骤八;若是则判定输入的移位寄存器是Grain型流密码,等价于U到V所刻画的两个移位寄存器联接,输出“是,V,U”,然后进入步骤十三;步骤十三、判别过程结束。

全文数据:一种Grain型流密码的判别方法技术领域[0001]本发明涉及一种Grain型流密码的判别方法。背景技术[0002]物联网产业在产业升级、节能减排、拉动就业等方面发挥着重要作用。我国物联网已初步形成了完整的产业体系,具备了一定的技术、产业和应用基础,市场前景巨大。[0003]受各国战略引领和市场推动,全球物联网应用呈现加速发展态势,物联网所带动的新型信息化与传统领域走向深度融合,物联网在行业领域的应用逐步广泛深入。[0004]由于物联网应用场景的多样性,物联网产业的发展导致很多加密方法的使用。为应对物联网等资源存储资源、计算资源、带宽资源受限、通信高速的新一代安全通信需求,出现了一批以Grain算法为代表的为物联网运行提供计算安全性的密码算法,从而将物联网系统面临的总体风险降至最低。在这类新型的适用于物联网的轻量级流密码算法中,而Grain类算法是唯一具有可证明周期下界的密码算法。[0005]因此,物联网安全标准体系是一个渐进发展成熟的过程,有必要研判所用加密流密码算法是否是Grain型流密码算法,这对于算法安全性能评估特别是周期的定量分析具有重要价值。[0006]Grain型流密码是一类安全、高效、快速的流密码算法,在当前密码算法分析技术的前提下,这类算法的安全性分析较为成熟。因此对于通过各种方式得到的寄存器类型密码,判别其是否属于Grain型流密码对其安全性分析具有实用意义。[0007]Grain型流密码寄存器是长度达半的线性反馈移位寄存器到非线性反馈移位寄存器的有序级联。已有的研宄方案大多是判断寄存器是否等效为非线性反馈移位寄存器到线性反馈移位寄存器有序级联,一方面这并不是Grain型这样的实际使用的流密码,另一方面这个类似问题主要处于理论研究阶段,尚未有高效实用的判别算法出现。发明内容[0008]为了克服现有技术的上述缺点,本发明提供了一种Grain型流密码的判别方法,给定刻画寄存器状态转移的自反馈特征函数,能够判断该寄存器构造的流算法是否为Grain型流密码算法,即,寄存器是否等效为长度过半的线性反馈移位寄存器到非线性反馈移位寄存器有序级联。[0009]本发明解决其技术问题所采用的技术方案是:一种Grain型流密码的判别方法,包括如下步骤:[0010]步骤一、对级数为n的移位寄存器的特征函数进行单项的有序分类,建立平衡二叉树,得到项的最高次数d,并将次数为i的项所在的平衡二叉树标记为Ti;t〇〇11]步骤二、设置二元域上单变量多项式u二0;[0012]步骤三、计算Ti对应的单变元多项式Ui,并记V1=U1;[0013]步骤四、更新单变量多项式U;判断单变量多项式過次数如如是否小于*若是,则判定输入的移位=器不疋Grain型流密码,输出“否,,,然后进人步骤十三;若否,齡i=i+i,然后进入步马來、;六、_堤否大于d:若否,则返’骤三;若是则进入剌聚七;^骤七、构造U为u对应的特征函数,构造伪‘以寸应的特征函数,令i=2;[0017]步骤八、标记平衡二叉树标记Ti为T;⑽.18]鐘九、判断T是否为空:若否,腿入步骤十;若是,则令i=i+1,然后进入步骤十-*,[0019]步骤十、搜索T中的最小叶子节点,记为t;=0^0]步骤十一、判断t的变量中最大下标是否超过n_deg⑹,若是,则判定输入的移位寄存器不是Grain型流密码,输出“否,,,然后进入步骤十三;若否,则令v=v+t,同时更新T然后返回步骤九;’[0021].步骤十二、判断1是否大于d:若否,则返回步骤八;若是则判定输入的移位寄存器是Grain型流密码,等价于11到¥所刻画的两个移位寄存器联接,输出“是,v,u”,然后进入骤十三;[0022]步骤十三、判别过程结束。[0023]与现有技术相比,本发明的积极效果是:本发明提出了一种Grains流密码的判别方法,其主要优点是:[0024]1引入平衡二叉树的结构存储特征函数的项。通过平衡二叉树的搜索、插入、删除操作,能够极大的提高函数处理效率。[0025]2以项的次数为依据对项进行分类,起到分治的效果,缩减了平衡二叉树的规模。一方面减小了计算每个平衡二叉树对应单变量多项式的计算量,另一方面又减少了计算非线性移位寄存器特征函数的搜索空间。[0026]3算法引入分治的思想,在求取平衡二叉树对应单变量多项式和计算非线性移位寄存器特征函数过程中都适合并行化运算。在并行化计算环境中,该判别方法可以处理更大规模的特征函数。[QQ27]⑷判别方法具有普适性和可延展性。附图说明[0028]本发明将通过例子并参照附图的方式说明,其中:[0029]图1为Grain流密码示意图;[0030]图2为本发明的判别方法的流程图。具体实施方式[0031]如图1所示,Grain型流密码是指其寄存器等价于一个线性移位寄存器LFSR到一个非线性移位寄存器NFSR的级联,且该线性移位寄存器LFSR的存储空间占到整个寄存器存储空间的至少一半。_[0032]一种Grain型流密码的判别方法的具体过程如图2所示,包括如下步骤:[0033]输入:输入移位寄存器的级数n以及描述该移位寄存器的特征函数。[0034]说明:变量按照字典排序定义序关系x〇d时进入步骤4。[0042]步骤4:构造U为u对应的特征函数,即将u的次数改为变量下标。例如,x3+x2+l对应x3+x2+x〇。如果To非空,U=U+1。构造V为um对应的特征函数。[0043]步骤5:针对次数i从2到d逐个完成下述操作。进入步骤5.1。[0044]步骤5•1:标记平衡二叉树标记Ti为T。[0045]步骤5.2:如果T为空进入下一个Ti操作直到Td完成(即i增加1,进入步骤5.1,最后id时进入步骤6•1。如果T非空,进入步骤5.3。[0046]步骤5•3:搜索t为T中的最小叶子节点。[0047]步骤5.4:如果t的变量中最大下标已经超过n-degu,那么进入步骤6.2。否则进入步骤5.5。[0048]步骤5.5:更新特征函数V=V+t。根据u系数更新T,更新结束后进入步骤5.2。设u的非零项次数为ai,a2,…,ak。平衡二叉树T更新的具体过程如下两步:⑴根据t得到k个项,每个项分别由t的每个变量下标增加ai,a2,…,ak得到。例如,t=X2X〇,u的非零项次数为0,1,3,那么得到3个项X2XQ,X3X1,X5X3。(2在平衡二叉树T中搜索每一个新得到的项,如果已经存在就删除这个项,如果尚未存在就增加这个项。在增加或者删除过程中保持二叉树平衡。[0049]6_1输出“是,V,U”。即判定输入的移位寄存器是Grain型流密码,等价于U到V所刻画的两个移位寄存器联接。结束判别过程。[0050]6.2输出“否”,即判定输入的移位寄存器不是Grain型流密码。结束判别过程。

权利要求:1.一种Grain型流密码的判别方法,其特征在于:包括如下步骤:步骤:、对级数为n的移位寄存器的特征函数进行单项的序分类,建立平衡二叉树,得到项的最高次数d,并将次数为i的项所在的平衡二叉树标记为Ti;步骤二、设置二元域上单变量多项式u==〇;步骤二、计算Ti对应的单变元多项式Ui,并记Vl=U1;步骤四、更新单变量多项式u;’步骤五、判断单变量多项式u的次数degu是否小于n2:若是,则判定输入的移位寄存器不是Grain型流密码,输出“否”,然后进入步骤十三;若否,则令丨=i+1,然后进入步骤六;步骤六、判断i是否大于d:若否,则返回步骤三;若是则进入步骤七;步骤七、构造U为u对应的特征函数,构造V为u山对应的特征函数,令i=2;步骤八、标记平衡二叉树标记Ti为T;步骤九、判断T是否为空:若否,则进入步骤十;若是,则令i=i+1,然后进入步骤十二;步骤十、搜索T中的最小叶子节点,记为t;'步骤十一、判断t的变量中最大下标是否超过n-degu,若是,则判定输入的移位寄存器不是Grain型流密码,输出“否”,然后进入步骤十三;若否,则令v=V+t,同时更新T,然后返回步骤九;步骤十二、判断i是否大于d:若否,则返回步骤八;若是则判定输入的移位寄存器是Grain型流密码,等价于U到V所刻画的两个移位寄存器联接,输出“是,V,U”,然后进入步骤十三;步骤十三、判别过程结束。2.根据权利要求1所述的一种Grain型流密码的判别方法,其特征在于:建立平衡二叉树的方法为:获取特征函数的所有项,同时按照次数分类,对每个同次数的项集合按照字典排序定义序关系,单项的序由两者首先相异的最高变量自然延伸定义,一个项的次数为出现变量的个数,同次数的项按照上述序关系建立平衡二叉树。3.根据权利要求1所述的一种Grain型流密码的判别方法,其特征在于:所述Ti的叶子节点为特征函数的i次项,To为空或者只有1个节点。4.根据权利要求1所述的一种Grain型流密码的判别方法,其特征在于:计算Ti对应的单变元多项式m的方法为:如果Ti有奇数个叶子节点,则令m二;如果Ti有偶数个叶子节点,则令Ui=0o5.根据权利要求1所述的一种Grain型流密码的判别方法,其特征在于:更新单变量多项式u的方法为:计算二元域上最大公因式,得到gcdu,u〇,然后令u二gcdu,ui。6.根据权利要求1所述的一种Grain型流密码的判别方法,其特征在于:构造U为u对应的特征函数的方法为:将u的次数改为变量下标,若To非空,则令U=U+1。7.根据权利要求1所述的一种Grain型流密码的判别方法,其特征在于:更新T的方法为:设u的非零项次数为ai,a2,…,ak,则首先根据t得到k个项,每个项分别由t的每个变量下标分别增加m,a2,…,ak得到;然后在T中搜索每一个新得到的项,如果已经存在就删除这个项,如果尚未存在就增加这个项。

百度查询: 中国电子科技集团公司第三十研究所 一种Grain型流密码的判别方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。