《密码学》实验指导书——张瑞霞 1 密码学及应用实验指导 实验1 古典密码 实验目的 1. 理解代替密码学加密过程 2. 理解置换密码学加密过程 实验环境 Windows和交换网络结构 实验工具 VC++6.0和密码工具 实验原理 一.Caesar(恺撒)密码 Caesar 密码是传统的代替加密法,Caesar 加密变换是:c = (m + k) mod 26 其中m 是明文对应的数据,c 是与明文对应的密文数据,k 是加密用的参数,也为密钥。 很容易得到相应的Caesar 解密变换是: m = D(c) = (c – k) mod 26 二.单表置换密码 单表置换密码也是一种传统的代替密码算法,在算法中维护着一个置换表,这个置换表记录了明文和密文的对照关系。在单表置换算法中,密钥是由一组英文字符和空格组成的,称之为密钥词组。 例如当输入密钥词组:I LOVE MY COUNTRY 后,对应的置换表如下: dhijknoqrstyzVUNTRDFGHJKXZ 《密码学》实验指导书——张瑞霞 2 实验步骤 凯撒密码 本练习主机A、 B 为一组,C、 D 为一组,E、 F 为一组。 首先使用“快照X”恢复Windows 系统环境。 一.手动完成Caesar 密码 ( 1) 在实验原理部分我们已经了解了Caesar 密码的基本原理,那么请同学们写出当密钥k=3时,对应明文:data security has evolved rapidly的密文: 。 ( 2)进入实验平台,单击工具栏中的“密码工具”按钮,启动密码工具,在向导区点击“Caesar 密码”。在明文输入区输入明文:data security has evolved rapidly。将密钥k 调节到3,查看相应的密文,并与你手动加密的密文进行比较。 请根据密钥验证密文与明文对应关系是否正确。 二.Caesar 加密 ( 1)进入“加密解密”|“Caesar 密码”视图,在明文输入区输入明文(明文应为英文),单击“加密”按钮进行加密。 请将明文记录在这里: 。 ( 2)调节密钥k 的微调按钮或者对照表的移位按钮,选择合适的密钥k 值,并记下该密钥k 值用于同组主机的解密。加密工作完成后,单击“导出”按钮将密文默认导出到Caesar 共享文件夹(D:\Work\Encryption\Caesar\)中,默认文件名为Caesar 密文.txt。 ( 3)通知同组主机接收密文,并将密钥k 通告给同组主机。 ( 4)单击“导入”按钮,进入同组主机Work\Encryption\Caesar 目录(\\同组主机 IP\Work\Encryption\Caesar),打开Caesar 密文.txt。 ( 5)调节密钥k 的微调按钮或对照表的移位按钮,将k 设...