对称密码基本加密实验.docx

上传人:b****2 文档编号:2748063 上传时间:2023-05-04 格式:DOCX 页数:23 大小:777.40KB
下载 相关 举报
对称密码基本加密实验.docx_第1页
第1页 / 共23页
对称密码基本加密实验.docx_第2页
第2页 / 共23页
对称密码基本加密实验.docx_第3页
第3页 / 共23页
对称密码基本加密实验.docx_第4页
第4页 / 共23页
对称密码基本加密实验.docx_第5页
第5页 / 共23页
对称密码基本加密实验.docx_第6页
第6页 / 共23页
对称密码基本加密实验.docx_第7页
第7页 / 共23页
对称密码基本加密实验.docx_第8页
第8页 / 共23页
对称密码基本加密实验.docx_第9页
第9页 / 共23页
对称密码基本加密实验.docx_第10页
第10页 / 共23页
对称密码基本加密实验.docx_第11页
第11页 / 共23页
对称密码基本加密实验.docx_第12页
第12页 / 共23页
对称密码基本加密实验.docx_第13页
第13页 / 共23页
对称密码基本加密实验.docx_第14页
第14页 / 共23页
对称密码基本加密实验.docx_第15页
第15页 / 共23页
对称密码基本加密实验.docx_第16页
第16页 / 共23页
对称密码基本加密实验.docx_第17页
第17页 / 共23页
对称密码基本加密实验.docx_第18页
第18页 / 共23页
对称密码基本加密实验.docx_第19页
第19页 / 共23页
对称密码基本加密实验.docx_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

对称密码基本加密实验.docx

《对称密码基本加密实验.docx》由会员分享,可在线阅读,更多相关《对称密码基本加密实验.docx(23页珍藏版)》请在冰点文库上搜索。

对称密码基本加密实验.docx

对称密码基本加密实验

对称密码基本加密实验

【实验环境】

ISES客户端

MicrosoftCLRDebugger2005或其它调试器

【实验步骤】

一、DES

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

(一)加解密计算

(1)加密

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

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

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

图1.1.45

(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.46所示。

图1.1.46

(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.47所示。

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

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

上述加密过程如图1.1.48所示。

图1.1.47

图1.1.48

(三)DES实例

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

(2)加密实例

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

上述过程如图1.1.49所示。

图1.1.49

(3)解密实例

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

(四)DES扩展实验

(1)点击“扩展实验”框中的“DES扩展实验”按钮,进入DES扩展实验窗口,打开后默认进入扩展实验主页面,进行加解密。

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

(3)文本框内输入待加密16个字节长的明文ASCII码串(64比特),16个字节长的密钥ASCII码串(64比特),点击“运行”按钮,得到DES的加密结果,如图1.1.410所示。

图1.1.410

(4)观察“初始置换”(初始置换IP)。

在主窗口中点击“初始置换”按钮,进入“首置换”卡片,再次点击“运行”,即可观察明文的初始变换过程,如图1.1.411所示。

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

图1.1.411

(5)观察密钥变换。

在主窗口中点击“密码表”按钮,打开密码变换卡片组。

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

图1.1.412

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

点击“置换选择1”按钮,得到该密钥的初始变换,选择想要测试加密密钥的轮次,再点击“置换选择2”按钮,即可得到相应的加密密钥,如图1.1.413所示。

图1.1.413

(6)观察加密函数。

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

①依次顺序点击“F(Ri,Ri+1)”卡片中的各个按钮,可以得到“选择运算E”、“代替函数组S”和“置换运算P”的运算结果,如图1.1.414所示。

图1.1.414

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

图1.1.415

(7)观察“末置换”(逆初始变换IP-1)。

在主窗口中点击“末置换”按钮,进入“末置换”卡片,再次点击“运行”,即可观察加密过程的末置换(逆初始变换IP-1)的执行过程,如图1.1.416所示。

只有当主窗口中循环轮次等于16时,“末置换”按钮才变为有效的,否则无法激活该窗口。

图1.1.416

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

文本框内输入待解密16个字节长的密文ASCII码串(64比特),16个字节长的密钥ASCII码串(64比特),点击“运行”按钮,得到DES的解密结果,如图1.1.417所示。

解密运算的其他过程与加密过程一样,不再赘述。

图1.1.417

(五)算法跟踪

选择DES算法,在算法计算的相应区域输入明/密文和密钥;点击“跟踪加密”/“跟踪解密”按钮,进入调试器,选择对应的算法函数进行算法跟踪;跟踪完成后会自动返回实验界面显示计算结果;切换回调试器,停止调试,关闭调试器,不保存工程。

具体步骤可参照古典密码实验中实验步骤二。

二、3DES

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

(一)加解密计算

选择明/密文和密钥的格式,输入明/密文和密钥;点击“加密”/“解密”按钮,进行加/解密计算;查看计算结果。

具体步骤可参照DES的加解密计算的实验步骤。

(二)查看轮密钥

(1)点击“扩展实验”框中的“查看轮密钥”按钮,进入查看轮密钥窗体。

(2)输入明文、初始化向量和密钥,密钥长度为128位或192位,对应于原理中的两种情况,此处以输入128位密钥为例;选择工作模式和填充模式,点击“加密”按钮,使用3DES算法按照选定的工作模式和填充模式进行加密;在“密钥”框中查看各轮的密钥,在“密文”框中查看生成的密文。

具体如图1.1.418所示。

图1.1.418

(三)扩展实验

(1)点击扩展实验下的“3DES扩展实验”按钮,进入3DES扩展实验主窗体,如图1.1.419所示。

图1.1.419

(2)点击主窗体内最左边的“3DES密码”按钮,进入3DES加解密实验。

分别在“明文ACSII码串”、“密钥K1的ASCII码串”中输入16个十六进制的数值,点击左上角的“DES”按钮,在“一重DES密文ASCII码串”中就会显示出加密的密文ASCII码串值。

同样在“密钥K2的ASCII码串”中输入16个十六进制的数值(最好与K1不同),点击上排中间的“DES-1”按钮,在“二重DES密文ASCII码串”中就会显示出加密的密文ASCII码串值,如图1.1.420所示。

图1.1.420

(3)在“密钥K3的ASCII码串”中输入16个十六进制的数值,点击右上角“DES”按钮,在“密文ASCII码串”中就会显示出3DES加密的密文ASCII码串值,如图1.1.421所示。

图1.1.421

(4)3DES的解密过程是其加密过程的逆过程。

接着上面的实验步骤,依次从右到左,顺序点击3DES加解密卡片下排中的按钮“DES-1”、“DES”和“DES-1”,分别得到“二重DES明文ASCII码串”、“一重DES明文ASCII码串”和“明文ASCII码串”,如图1.1.422所示。

图1.1.422

(四)算法跟踪

选择3DES算法,在算法计算的相应区域输入明/密文和密钥;点击“跟踪加密”/“跟踪解密”按钮,进入调试器,选择对应的算法函数进行算法跟踪;跟踪完成后会自动返回实验界面显示计算结果;切换回调试器,停止调试,关闭调试器,不保存工程。

具体步骤可参照古典密码实验中实验步骤二。

三、IDEA

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

(一)加解密计算

选择明/密文和密钥的格式,输入明/密文和密钥;点击“加密”/“解密”按钮,进行加/解密计算;查看计算结果。

具体步骤可参照DES的加解密计算的实验步骤。

(二)扩展实验

(1)点击“扩展实验”框中的“IDEA扩展实验”按钮,进入IDEA扩展实验窗口,打开后默认进入扩展实验主页面。

(2)在主窗口中的“明文”文本框中输入16个十六进制的数值串,在“密钥”文本框中输入32个十六进制的数值串,点击“加密”按钮,如图1.1.423所示。

图1.1.423

(3)观察密码生成过程。

在主窗口中点击“密码表”按钮,进入密码表的生成过程。

点击“运行”后,再点击“上”、“下”、“左”或“右”箭头,分别得到相应轮次的密码变换结果,如图1.1.424所示。

图1.1.424

(4)观察轮变换过程。

点击轮变换中的“左”或“右”箭头,观察该轮加密的结果;也可以直接在轮次文本框中输入一个1-9之间的数值,点击“循环”按钮;具体如图1.1.425所示。

图1.1.425

(5)观察输出变换过程。

当轮变换的轮次到9时,即进入了IDEA密码的最后一轮输出变换,得到最后的加密运算结果;具体如图1.1.426所示。

图1.1.426

(6)运算器工具。

在主窗口中点击“运算器”,即进入运算器工具窗口;用户可在其中输入十六进制的数据进行IDEA中的一些典型运算,如“16位按位异或+”、“16位整数作模216+1相乘⊙”或“16位整数作模216相加+”运算;具体如图1.1.427所示。

图1.1.427

(7)在主窗口中的“密文”文本框中输入16个十六进制的数值串,在“密钥”文本框中输入32个十六进制的数值串,点击“解密”按钮,即可进行解密操作;IDEA解密扩展实验的其他过程与加密类似,不再赘述。

(三)算法跟踪

选择IDEA算法,在算法计算的相应区域输入明/密文和密钥;点击“跟踪加密”/“跟踪解密”按钮,进入调试器,选择对应的算法函数进行算法跟踪;跟踪完成后会自动返回实验界面显示计算结果;切换回调试器,停止调试,关闭调试器,不保存工程。

具体步骤可参照古典密码实验中实验步骤二。

四、AES-128/192/256

AES-128/192/256的区别仅在于密钥长度的不同,此处以AES-128为例,AES-192/256可参照完成。

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

(一)加解密计算

选择明/密文和密钥的格式,输入明/密文和密钥;点击“加密”/“解密”按钮,进行加/解密计算;查看计算结果。

具体步骤可参照DES的加解密计算的实验步骤。

(二)查看轮密钥

点击“扩展实验”框中的“查看轮密钥”按钮,进入查看轮密钥窗体,可窗体在右侧查看相应的原理。

输入明文、初始化向量和128位密钥,选择工作模式和填充模式,点击“加密”按钮,使用AES-128算法按照选定的工作模式和填充模式进行加密;在“密钥”框中查看各轮的密钥,在“密文”框中查看生成的密文。

具体如图1.1.428所示。

图1.1.428

(三)查看演示动画

点击算法跟踪实验框内的“AES动画演示”按钮,进入AES算法加密的逐步计算的动画演示窗体,按回车进行逐步查看。

(四)算法跟踪

选择AES-128算法,在算法计算的相应区域输入明/密文和密钥;点击“跟踪加密”/“跟踪解密”按钮,进入调试器,选择对应的算法函数进行算法跟踪;跟踪完成后会自动返回实验界面显示计算结果;切换回调试器,停止调试,关闭调试器,不保存工程。

具体步骤可参照古典密码实验中实验步骤二。

五、SMS4

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

(一)加密计算

选择明文和密钥格式,输入明文和密钥;选定算法为SMS4,点击“加密”按钮,进行加密计算;在“密文”框内查看加密计算结果。

具体步骤可参照DES的加密计算的实验步骤。

(二)扩展实验

(1)点击“扩展实验”框中的“SMS4扩展实验”按钮,进入SMS4扩展实验窗口,打开后默认进入扩展实验主页面。

(2)在主窗口中的“明文”文本框中输入32个十六进制的数值串,在“密钥”文本框中输入32个十六进制的数值串,点击“加密”按钮。

图1.1.429

(3)观察密码生成过程。

在主窗口中点击“密码表”按钮,进入密码扩展算法界面,如图1.1.430所示。

图1.1.430

①点击密码表窗口中的右上角按钮“K0,K1,K2,K3”,进入密钥扩展的初始运算界面,如图1.1.431所示。

图1.1.431

②点击密码表窗口中的右边的中间按钮“K4…K35”,进入密钥扩展的轮变换界面。

首先,点击“<”、“>”按钮,可以调整不同的轮次,也可以直接输入相应的轮次后点击“循环”按钮。

然后,依次顺序点击模2加、循环按钮,得到本轮的加密密钥。

依次如图1.1.432所示。

图1.1.432

③点击密码表窗口中的“S”按钮,进入S盒表变换,如图1.1.433所示。

图1.1.433

(4)观察轮变换过程。

首先,点击轮变换中的“左”或“右”箭头,观察该轮加密的结果。

也可以直接在轮次文本框中输入一个1-32之间的数值,点击“循环”按钮。

然后,依次点击轮变换中的模加、S变换、循环移位按钮,得到本轮的加密运算结果。

具体如图1.1.434所示。

图1.1.434

(5)在主窗口中的“密文”文本框中输入32个十六进制的数值串,在“密钥”文本框中输入32个十六进制的数值串,点击“解密”按钮。

SMS4解密的其他过程与加密类似,不再赘述。

(三)解密计算

选择密文和密钥格式,输入密文和密钥;选定算法为SMS4,点击“解密”按钮,进行解密计算;在“明文”框内查看解密计算结果。

具体步骤可参照DES的解密计算的实验步骤。

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

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

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

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