ZUC算法(祖冲之算法)是我国第一个成为国际密码标准的密码算法,是中国科学院数据保护和通信安全研究中心自主设计的加密算法,现在已被3GP确定为LTE的国际标准。ZUC算法成为继美国的个高级加密标准AES和欧洲的SNOW 3C之外的第三套加密标准核心算法。
因为军事通信安全以及网络安全的需要,对通信传输的数字图像进行加密显得尤为重要。对数字图像进行加密,最直接的思路就是将数字图像的明文数据流与伪随机序列进行异或操作,接收端收到的密文再和同样的伪随机序列进行异或操作既可得到原数字图像。ZUC是一个同步流密码算法,是3GPP机密性算法和EEA3和完整性算法EIA3的核心,作用在于产生用于加解密的密钥。发送端加密过程为:将ZUC产生的密钥和输入的明文按位异或;接收端的解密过程为输入的密文与上述加密过程相同的密钥按位异或,即可实现解密。ZUC的加密解密过程中发送与接收端具有相同的ZUC算法产生的密钥,才能保证加解密的正确性,即要求ZUC算法输入控制的控制字一致。由于ZUC算法每一个周期可以产生一个32bit的密钥,很好的满足了数字图像加密实时快速的要求,非常适合用作数字图像加密。
加密、解密模块根据数字图像数据的输入率来控制ZUC密钥生成模块产生32bit密钥的速率,以实现流式处理。输入图像数据与密钥进行异或即实现了加解密。加解密过程中,数字图像数据将按照1bit的数据流串行输入。因为ZUC算法每一个周期可以产生一个32bit的密钥,所以ZUC算法产生的密钥的速率为输入图像比特流速率的1/32,进而实现流式处理。对输入的图像数据进行异或,从而实现对数字图像的加密。
ZUC的高安全性、加解密的简便性流式密钥产生的快速实时性以及其软硬件的低复杂度,都保证了ZUC加密算法对图像进行加解密的良好效果。