码迷,mamicode.com
首页 > 其他好文 > 详细

网络安全课 03 (Feistel密码 DES加密)

时间:2020-04-01 12:57:26      阅读:94      评论:0      收藏:0      [点我收藏+]

标签:一个   输入   简化   bsp   分数   spn   str   操作   nbsp   

Feistel密码

  乘积密码:依次使用两个或者两个以上的基本密码,所得结 果的密码强度将强于所有单个密码的强度

  ?由Horst Feistel发明了Feistel密码 基于可逆的乘积密码。目标是逼近简单代换密码

  ?基本思路

    输入分组被对分为两半

    执行多轮迭代,每轮迭代都有相同的结构

    代换作用在数据的左半部分

    代换的实现:用轮函数F来作用数据的右半部分,再与左半部分数据 进行异或

    每一轮的轮函数相同,但输入的轮密钥Ki不同

    代换完成以后,交换数据的左右两半完成置换

    Feistel密码使用了Shannon的SPN的概念 

 

LEi=REi-1

REi=LEi-1⊕F(LEi,Ki)

 技术图片

 

 

技术图片

 

 

 ***对于同一个秘钥,两次异或操作就能抵消掉***

 

 

简化DES 

   ?与DES有相似的性质和结构,但参数规模小 很多。

   ?仅有教学意义

   ?可以手工计算

   ?加密算法

    输入:8位明文组;10位密钥

    输出:8位的密文组。

 

 

 技术图片

 

技术图片

 

 技术图片

 

技术图片

 一些说明:

  生成E/P扩展时,那些位置变换是提前制定好的。只需要按制定的规则变换位置就好了

   XOR是E/P 和K1 异或的结果

  S0、S1的矩阵表也是提前设定好的

 

网络安全课 03 (Feistel密码 DES加密)

标签:一个   输入   简化   bsp   分数   spn   str   操作   nbsp   

原文地址:https://www.cnblogs.com/Stephen-Jixing/p/12611689.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!