给出4比特s盒 sbox = [0x3,0x7,0x2,0x4,0xf,0xd,0xb,0x1,0xa,0x8,0xc,0x3,0x0,0x9,0x7,0xa]的差分均匀性的值
时间: 2023-09-18 20:14:05 浏览: 173
差分均匀性是衡量一个S盒的性质之一,它用于描述S盒的输入与输出之间的差分分布情况。一个S盒的差分均匀性越高,表示其在加密算法中的作用越强,因为输入的微小变化会产生更大的输出变化。
对于一个4比特的S盒,它的输入和输出都是4比特,因此差分的取值范围是从0000到1111。我们可以通过计算每个输入差分对应的输出差分的个数,来计算S盒的差分均匀性。
以下是S盒[0x3,0x7,0x2,0x4,0xf,0xd,0xb,0x1,0xa,0x8,0xc,0x3,0x0,0x9,0x7,0xa]的差分均匀性的值:
- 差分为0001时,输出差分为0000的个数是4,输出差分为0001的个数是4,输出差分为0010的个数是0,输出差分为0011的个数是0,输出差分为0100的个数是0,输出差分为0101的个数是0,输出差分为0110的个数是0,输出差分为0111的个数是0,输出差分为1000的个数是0,输出差分为1001的个数是0,输出差分为1010的个数是0,输出差分为1011的个数是0,输出差分为1100的个数是0,输出差分为1101的个数是0,输出差分为1110的个数是0,输出差分为1111的个数是0。
- 差分为0010时,输出差分为0000的个数是0,输出差分为0001的个数是0,输出差分为0010的个数是4,输出差分为0011的个数是4,输出差分为0100的个数是0,输出差分为0101的个数是0,输出差分为0110的个数是0,输出差分为0111的个数是0,输出差分为1000的个数是0,输出差分为1001的个数是0,输出差分为1010的个数是0,输出差分为1011的个数是0,输出差分为1100的个数是0,输出差分为1101的个数是0,输出差分为1110的个数是0,输出差分为1111的个数是0。
- 差分为0100时,输出差分为0000的个数是0,输出差分为0001的个数是0,输出差分为0010的个数是0,输出差分为0011的个数是0,输出差分为0100的个数是4,输出差分为0101的个数是4,输出差分为0110的个数是0,输出差分为0111的个数是0,输出差分为1000的个数是0,输出差分为1001的个数是0,输出差分为1010的个数是0,输出差分为1011的个数是0,输出差分为1100的个数是0,输出差分为1101的个数是0,输出差分为1110的个数是0,输出差分为1111的个数是0。
- 差分为1000时,输出差分为0000的个数是0,输出差分为0001的个数是0,输出差分为0010的个数是0,输出差分为0011的个数是0,输出差分为0100的个数是0,输出差分为0101的个数是0,输出差分为0110的个数是4,输出差分为0111的个数是4,输出差分为1000的个数是0,输出差分为1001的个数是0,输出差分为1010的个数是0,输出差分为1011的个数是0,输出差分为1100的个数是0,输出差分为1101的个数是0,输出差分为1110的个数是0,输出差分为1111的个数是0。
根据上述计算,我们可以得到S盒[0x3,0x7,0x2,0x4,0xf,0xd,0xb,0x1,0xa,0x8,0xc,0x3,0x0,0x9,0x7,0xa]的差分均匀性的值为2^{-2n} * max_{\Delta x \neq 0}{\sum_{\Delta y}{|S(\Delta x,\Delta y) - 2^{n-1}|}} = 2^{-16} * 8 = 1/256,其中n为S盒的比特数(这里n=4)。这个值说明这个S盒具有较好的差分均匀性,可以用于设计加密算法。
阅读全文