【密码应用-轻量级分组加密算法PRIDE】此文章归类为:密码应用。
轻量级分组加密算法PRIDE
算法为基于SPN结构设计的轻量级分组密码算法。算法分组大小为64位,密钥长度为128位(PRIDE-128)。PRIDE算法共迭代20轮,每轮轮函数F由轮密钥加、、L线性变换3部分组成。如图所示。PRIDE算法的前19轮是一致的,最后一轮没有线性层变换。将64位中间状态分成16个4比特块(Nibble),然后进入轮函数。
算法轮函数
PRIDE算法加密流程
(1)轮密钥加层
将64位的轮密钥与64位的中间状态逐比特异或。
中间状态为B0…B15,轮密钥为…RK15,则=Bi+RKi0≤i≤15)
(2)S盒代换层
把(1)中输出的64位中间状态划分为16个4-bit的,然后依次进入16个相同的4X4S盒,输出为S[W0]…S[W15]。
(3)L线性变换层
PRIDE算法的线性层可成三部分:一个置换层P,一个矩阵变换层M和置换层P的逆变换P-1。矩阵层M由四个小矩阵并行而成的,线性层L可表示成:
轮密钥生成算法
PRIDE算法的128比特主密钥K分为两个64比特部分(k0,k1),即K=k0||k1,其中k0是PRIDE算法的白化密钥,用于加密前和加密后,k1用于生成PRIDE算法的第i轮轮子密钥fi(k1)。具体的生成方式如下:
更多【密码应用-轻量级分组加密算法PRIDE】相关视频教程:www.yxfzedu.com