DES算法结构.doc

上传人:wj 文档编号:2501597 上传时间:2023-05-03 格式:DOC 页数:3 大小:87.50KB
下载 相关 举报
DES算法结构.doc_第1页
第1页 / 共3页
DES算法结构.doc_第2页
第2页 / 共3页
DES算法结构.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

DES算法结构.doc

《DES算法结构.doc》由会员分享,可在线阅读,更多相关《DES算法结构.doc(3页珍藏版)》请在冰点文库上搜索。

DES算法结构.doc

加密算法之DES算法

DES算法描述

DES是一个16轮的Feistel型结构密码,它的分组长度为64比特,用一个56比特的密钥来加密一个64比特的明文串,输出一个64比特的密文串。

其中,使用密钥为64比特,实用56比特,另8位用作奇偶校验。

加密的过程是先对64位明文分组进行初始置换,然后分左、右两部分分别经过16轮迭代,然后再进行循环移位与变换,最后进行逆变换得出密文。

加密与解密使用相同的密钥,因而它属于对称密码体制。

DES过程框图如下,假设输入的明文数据是64比特。

首先经过初始置换IP后把其左半部分32比特记为L0,右半部分32比特记为R0,即成了置换后的输入;然后把R0与密钥产生器产生的子密钥k1进行运算,其结果计为f(R0,k1);再与L0进行异或运算得到L0+f(R0,k1),把R0记为L1放在左边,而把L0+f(R0,k1)记为R1放在右边,从而完成了第一轮迭代运算。

在此基础上,重复上述的迭代过程,一直迭代至第16轮。

所得的第16轮迭代结果左右不交换,即L15+f(R15,k16)记为R16,放在左边,而R15记为L16放在右边,成为预输出,最后经过初始置换的逆置换IP-1运算后得到密文。

Feistel加密结构

DES算法采用Feistel密码结构,关于feistel网络结构框图如下

Feistel加密算法的输入是长为2w的明文和一个密钥K=(K1,K2...,Kn)。

将明文分组分成左右两半L和R,然后进行n轮迭代,迭代完成后,再将左右两半合并到一起以产生密文分组。

其第i+1轮迭代的函数为:

其中Ki是第i轮的子密钥,“”表示异或运算,F表示轮函数。

一般地,各轮子密钥彼此各不相同,且轮函数F也各不相同。

代换过程完成后,在交换左右两半数据,这一过程称为置换。

DES的解密过程

DES的解密过程与加密过程共用了同样的计算过程。

两者的不同之处仅在于解密时子密钥ki的使用顺序与加密时相反。

如果加密的子密钥k1,k2,…,k16,那么,解密时子密钥的使用顺序为与k16,k15,…,k1。

即:

用DES解密时,将以64位密文作为输入,第一轮迭代使用子密钥k16;第二轮迭代使用子密钥k15,…,第16轮迭代使用子密钥k1,其他运算与加密时一样,最后输出的便是64位明文。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2