对称密码基本加密实验汇总

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

对称密码基本加密实验

【实验环境】

ISES客户端

Microsoft CLR Debugger 2005或其它调试器

【实验步骤】

一、DES

在加密算法选项里选择DES,以下实验步骤保持算法不变。

(一)加解密计算

(1)加密

在明文栏的下拉菜单里选择文本或十六进制,然后在后面相应的文本框内输入所要加密的明文;

在密钥栏的下拉菜单里选择文本或十六进制,然后在后面相应的文本框内输入相应的密钥;

点击“加密”按钮,在密文文本框内就会出现加密后的密文,如图1.1.4-5所示。

图1.1.4-5

(2)解密

在密文栏相应的文本框内输入所要解密的密文;

在密钥栏的下拉菜单里选择文本或十六进制,然后在后面相应的文本框内输入相应的密钥;

点击“解密”按钮,在明文文本框内就会出现解密后的明文。

(二)分步演示

(1)点击“扩展实验”框中的“DES分步演示”按钮,进入DES分步演示窗口,打开

后默认进入分步演示页面。

(2)密钥生成

在“子密钥产生过程”框中,选择密钥的输入形式后,输入密钥;DES要求密钥长度为64位,即选择“ASCII”(输入形式为ASCII码)时应输入8个字符,选择“HEX”(输入形式为十六进制)时应输入16个十六进制码;

点击“比特流”按钮生成输入密钥的比特流;

点击“等分密钥”按钮,将生成的密钥比特流进行置换选择后,等分为28位的C0和D0两部分;

分别点击两侧的“循环左移”按钮,对C0和D0分别进行循环左移操作(具体的循环左移的移位数与轮序有关,此处演示为第一轮,循环左移1位),生成同样为28位的C1和D1;

点击“密钥选取”按钮,对C1和D1进行置换选择,选取48位的轮密钥,此处生成第一轮的密钥K1。

上述密钥生成过程如图1.1.4-6所示。

图1.1.4-6

(3)加密过程

在“加密过程”框中,选择明文的输入形式后,输入明文;DES要求明文分组长度为64位,输入要求参照密钥输入步骤;

点击“比特流”按钮生成输入的明文分组的比特流;

点击“初始置换IP”对明文比特流进行初始置换,并等分为32位左右两部分L0和R0;

点击“扩展置换E”按钮对32位R0进行扩展置换,将其扩展到48位;

点击“异或计算”按钮,将得到的扩展结果与轮密钥K1进行异或,得到48位异或结果;

分别点击“S1”、“S2”、…、“S8”按钮,将得到的48位异或结果通过S代换产生32位输出;

点击“异或计算”按钮,将得到的32位输出与L0进行异或,得到R1;同时令L1=R1,进入下一轮加密计算。

上述加密过程如图1.1.4-7所示。

依次进行16轮计算,最终得到L16和R16;

点击“终结置换”按钮,对交换后的L16和R16进行初始逆置换IP-1,即可得到密文。

上述加密过程如图1.1.4-8所示。

图1.1.4-7

图1.1.4-8

(三)D ES实例

(1)点击DES分步演示窗体中的“DES实例”标签,进入DES实例演示页面。

(2)加密实例

输入明文、初始化向量和密钥,选择工作模式和填充模式,点击“加密”按钮,对输入

的明文使用DES算法按照选定的工作模式和填充模式进行加密;在轮密钥显示框内以十六进制显示各轮加密使用的密钥,加密结果以两种形式显示在密文框中。上述过程如图1.1.4-9所示。

图1.1.4-9

(3)解密实例

输入密文、密钥和初始化向量,选择工作模式和填充模式,点击“解密”按钮,对输入的密文使用DES算法按照选定的工作模式和填充模式进行解密;在轮密钥显示框内以十六进制显示各轮加密使用的密钥,解密结果以两种形式显示在明文框中。

(四)D ES扩展实验

(1)点击“扩展实验”框中的“DES扩展实验”按钮,进入DES扩展实验窗口,打开

后默认进入扩展实验主页面,进行加解密。

(2)确保在主窗口中选中了“加密”按钮,将DES的工作模式设置为“加密运算”。

(3)文本框内输入待加密16个字节长的明文ASCII码串(64比特),16个字节长的密钥

ASCII码串(64比特),点击“运行”按钮,得到DES的加密结果,如图1.1.4-10所示。

图1.1.4-10

(4)观察“初始置换”(初始置换IP)。在主窗口中点击“初始置换”按钮,进入“首置

换”卡片,再次点击“运行”,即可观察明文的初始变换过程,如图1.1.4-11所示。

可以根据需要,调节变换显示的速度。

图1.1.4-11

(5)观察密钥变换。在主窗口中点击“密码表”按钮,打开密码变换卡片组。

①选择“密码表”卡片,观察16轮加密变换的密钥,如图1.1.4-12所示。

图1.1.4-12

②选择“密码盒”卡片,观察16轮加密变换密钥的生成过程。点击“置换选择1”按

钮,得到该密钥的初始变换,选择想要测试加密密钥的轮次,再点击“置换选择2”按钮,

即可得到相应的加密密钥,如图1.1.4-13所示。

图1.1.4-13

(6)观察加密函数。点击主窗口的“F(Ri,Ki+1)”按钮,进入加密函数变换卡片。

①依次顺序点击“F(Ri,Ri+1)”卡片中的各个按钮,可以得到“选择运算E”、“代替函

数组S”和“置换运算P”的运算结果,如图1.1.4-14所示。

图1.1.4-14

②选择“F(Ri,Ri+1)”卡片右下角的“Ebox”、“Sbox”或“Pbox”,并点击“查看”按钮,可以详细观察相应的变换过程,如图1.1.4-15所示。

图1.1.4-15

(7)观察“末置换”(逆初始变换IP-1)。在主窗口中点击“末置换”按钮,进入“末置

换”卡片,再次点击“运行”,即可观察加密过程的末置换(逆初始变换IP-1)的执行过程,如图1.1.4-16所示。只有当主窗口中循环轮次等于16时,“末置换”按钮才变为有效的,否则无法激活该窗口。

图1.1.4-16

相关文档
最新文档