3.1布尔函数的表示方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一节布尔函数的表示
非线性组合函数也称为逻辑函数或布尔函数(boolean function)。研究布尔函数的密码学性质已成为序列密码、HASH 函数和分组密码设计与分析的关键所在。
目前,关于布尔函数的密码学的性质的研究主要包括以下几个方面:
•非线性次数;
•非线性度(相关度);
•线性结构;
•退化性;
•相关免疫性(correlation immunity);
•严格雪崩准则(strict avalanche criterion)•扩散准则(propagation criterion);
•代数免疫性
通常,布尔函数的以上密码学性质是相互关联的。本章主要研究布尔函数的表示方法、重量与概率计算、非线性度和相关免疫性。
布尔函数的定义
定义3.1 一个n 元布尔函数f (x ) = f (x 1, x 2, …, x n )是2
n F 到2F 的一个映射。
由于2
n F 含2n
个元素, 故2
n F 上的布尔函数共有22n
个。
真值表表示:
每个二元n维向量为(a
n-1, a
n-2
, …, a
)一个真值
指派。规定种可能的2n真值指派是按照它们表示的二进制数的大小排列的。
布尔函数的表示方法
即对真值指派120(,,......,)−−n n a a a 和120(,,......,)−−n n b b b ,如果有
11
22
−−==<∑∑n n i j
i
j
i j a b , 则120(,,......,)−−n n a a a 排在
120(,,......,)−−n n b b b 之前。
称120(,,......,)n n f a a a −−为f (x )在真值指派120(,,......,)n n a a a −−下的函数值。于是f (x )的真值表由2
n F 中所有真值指派及其函数值构成。下表是一个二元布尔函数的真值表。
1x 2x ),(21x x f 0 0 1 0 1
1
1 0 1 1 1
任意两个n 元布尔函数f (x )和g (x )相等当且仅当它们在2
n F 的每个真值指派下都有相同的函数值, 此时, 记作f (x ) = g (x ), 否则就说它们是不同的n 元布尔函数, 记作f (x ) ≠ g (x )。
考虑最简单的n 元布尔函数, 它只在2
n
F 的一个真值指派下取值为1, 在其它真值指派下均取值为0。设取值为1的真值指派是120(,,......,)n n a a a −−, 因此, n 元布尔函数
11220()(1)(1)......(1)n n n f x x a x a x a −−=++++++
•小项表示:
若我们规定1i i x x =, 01i
i i x x x =+=, i = 1, 2, …, n 。则
1i n i x a −++ = n i
a i
x
−, 从而在2
n F
中真值指派
120(,,......,)n n a a a −−下取值为1, 而在其它真值指派下均
取值为0的函数f (x )就可以记为1201
2
()......n n a a a n
f x x x
x −−=。
称n 元布尔函数1201
2
()......n n a a a n
f x x x
x −−=为一个n 元小项
函数。
设f (x )是任意一个n 元布尔函数。 1201201201
2
(,,.......,)
()(,,......,)......n n n n a a a n n n
a a a f x f a a a x
x
x
−−−−−−=
∑
称上面的表达式为n 元布尔函数的小项表示。
f(x)的小项表示由它的真值表唯一确定, 故f(x)的小项表示是唯一的。
f(x)是它取值为1的那些真值指派对应的小相函数之和。
例3.1 下表中二元布尔函数的小项表示为:
00011012
12
12
()f x x x x x x x =++
1x 2x ),(21x x f 0 0 1 0 1
1
1 0 1 1 1
如果把f(x)的小项表示中每一个小项函数展
成x
1, x
2
, …, x
n
的多项式, 那么我们可以得到f(x)
的多项式表示。•多项式表示:
121212012 (121)
......01......()....................r r
r n
i i ij i j n n
i i j
n
i i i i i i r i i i n
f x c c x c x x c x x x c x x x =<=≤<<≤=++++=∑∑∑
∑
,
其中12......r i i i c = 0或1。
注:当r = 0时, 我们约定12......r i i i x x x = 1。