利索能及
我要发布
收藏
专利号: 201710659243X
申请人: 桂林电子科技大学
专利类型:发明专利
专利状态:已下证
更新日期:2025-10-14
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.对称密码系统代数次数评估方法,其特征在于,评估方法包括以下步骤: S1:利用算法分析模块对密码算法进行分析,根据其初始变量及更新函数进行具体的算法操作;

S2:利用初始化向量预置初始化阶段的初态,初始变量用xi 表示,变量函数用s(xi)表示,初态预置模块产生一个 3 维数组存储所有的变量,将其定义为 B;

S3:利用输出函数产生模块获得的输出函数表示为 ,在计算的过程中,需先计算中间状态  与 ,其中 与  中含有的单项式项数不一定相等,且 ,其中 分别表示中间状态 中的单项式个数;输出函数是根据密码算法的输出函数进行计算,若输出函数 不参与更新函数,则设置为二维数组,数组大小根据具体的算法进行确定,其中中间状态 、及输出函数 表达式如下:

其中S表示中间状态 及输出函数 中所包含的变量总体; 表示中间状态 中的单项式; 表示输出函数 中的单项式;S4:将输出函数 输入到重复变量检测模块;重复变量检测模块对每个单项式gi(s)都进行重复变量检测,对同一单项式中含有的重复的变量xi  ,只保留一个xi 变量,经过重复变量检测模块的结果获得的输出函数为  表示; S5:将输出函数  输入到排序模块;根据输出函数  中单项式的代数次数 deg[gi(s)]由大到小进行排序,排序后,只取前 k项进行下一步操作, ;排序模块的结果用输出函数 表示,如果运行到第n 轮结束,那么将在排序模块排序的过程中将代数次数最大的单项式的代数次数maxdeg[gi(s)]输出;若运算过程中取前 k 项,其输出布尔函数 表达式如下:S6:将输出函数 输入到重复项检测模块;根据排序模块得到的输出函数 中的单项式进行重复项检测模块操作,若单项式出现的次数为偶数,则将该项单项式删除,若次数为奇数,则只保留一个该项单项式,将多余的单项式删除;

在重复项检测的过程中,若已经存储了前l 项代数次数高的单项式maxdeg[gi(s)],则停止检测,将其余的单项式删除,经过重复项检测模块操作后的结果用输出函数 表示;如果运行到第n 轮结束,那么将在重复项检测模块的排序的过程中将代数次数最大的单项式 maxdeg[gi(s)]的代数次数输出,此处如果布尔函数系统较大,则可以先取前 m 项,再进行重复项检测;若运算过程中取前l 项,其输出布尔函数 表达式如下:S7:将与更新函数相关的输出函数 输入到状态更新模块;在状态更新的过程中,将更新后的变量函数update[si]替换si 代入 S3‑S6 进行下一轮输出函数 的运算,直到运行到第n 轮; S8:根据排序模块对输出函数 的操作后,即可得到输出函数 的最大项及其评估的代数次数maxdeg[gi(s)]。

2.根据权利要求 1 所述的对称密码系统代数次数评估方法,其特征在于:所述 S3,在计算过程中如果有乘法运算,且参与运算的值含有 0 或 1 常数项,则需要对变量函数与常数项相乘时的运算结果进行判断;如果单项式 与 0 相乘,则将单项式 去除,如果单项式 与 1 相乘,则保持单项式 不变。