APP下载

一类旋转对称bent函数的构造

2018-07-13严宏超赵庆兰

西安邮电大学学报 2018年2期
关键词:定义

郑 东,严宏超,赵庆兰

(西安邮电大学 通信与信息工程学院, 陕西 西安 710121)

布尔函数在密码学[1]中具有广泛应用[2-5],可以作为流密码的非线性组件[4]以及分组密码的S-盒[6]中的核心组件。

bent函数[7]是Walsh谱取值为±2n/2的一类布尔函数,与仿射函数集合具有最大汉明距离,能够有效抵抗线性攻击和最佳仿射逼近攻击。旋转对称(rotation symmetric boolean functions,RotS)布尔函数[5]也称为幂等函数[8],当输入向量循环左移时其输出值保持不变。利用RotS布尔函数可实现Message Digest系列中的杂凑压缩算法,还可进行快速Walsh变换[9]。

当变元数n=2m,且m/gcd (m,t)是奇数时(1≤t≤m-1),可构造出一类二次和三次旋转对称bent函数ft(x)[4,10]。代数次数从2到m的2m元旋转对称bent函数的构造[11],首次将旋转对称bent函数的代数次数提高至大于3。通过修改代数次数较低的旋转对称bent函数,也可得到两类代数次数为d(3≤d≤m)的旋转对称bent函数[12]。

本文将在文献[4,12]的基础上,深究旋转对称bent函数的性质和构造,给出一个Maiorana-McFarland类[13]函数,并证明该函数为旋转对称bent函数。当变元数n=2m(m∈+)为偶数时,所给新函数的代数次数可达m。

1 基础知识

任一n元布尔函数f均可以用其代数正规型(algebraic normal form,ANF)唯一表示为

(1)

其中,向量

α=(α0,α1,…,αn-1),x=(x0,x1,…,xn-1),

的系数取值。

定义向量x的支撑集为

supp(x)={i:xi=1}。

其中所含元素“1”的个数称为向量x的汉明重量,记为w(x)。布尔函数f(x)的支撑集定义为

其中所含元素“1”的个数称为函数f(x)的汉明重量,记为w(f)。任意的两个布尔函数f(x)和g(x)的汉明距离满足

dH(f,g)=w(f+g)。

如果布尔函数的f(x)汉明重量w(f)=2n-1,则称该布尔函数是平衡的。

(2)

布尔函数f(x)的代数次数是其代数正规型中系数非零的单项式的最大变元个数,记为

登录APP查看全文

猜你喜欢

定义
活用定义巧解统计概率解答题
例谈椭圆的定义及其应用
题在书外 根在书中——圆锥曲线第三定义在教材和高考中的渗透
永远不要用“起点”定义自己
严昊:不定义终点 一直在路上
定义“风格”
成功的定义
有壹手——重新定义快修连锁
修辞学的重大定义
山的定义