西充企业网站建设,怎样备份网站数据库,室内设计师联盟首页,网站域名使用费多少实验目的 1、完成第一个入门加解密——凯撒密码 2、完成当下较为流行的三重DES加解密技术 3、熟悉所学的实际运用方向 实验准备 硬件#xff1a;计算机或笔记本电脑 操作系统#xff1a;Mac操作系统 IDE环境#xff1a;Eclipse 程序语言#xff1a;Java 一、实验基本… 实验目的 1、完成第一个入门加解密——凯撒密码 2、完成当下较为流行的三重DES加解密技术 3、熟悉所学的实际运用方向 实验准备 硬件计算机或笔记本电脑 操作系统Mac操作系统 IDE环境Eclipse 程序语言Java 一、实验基本思想 入门密码实现——凯撒密码 ·原理明文中所有字母都在字母表上向后或向前按照一个固定数目进行偏移后被替换成密文。例如当偏移量是3的时候所有的字母A将被替换成DB变成E以此类推。 ·缺陷密钥空间过小一共只有26位字母的选择也就是说其轮换的变化一共也仅有26种。 ·捷径攻击可以通过频率分析的方法根据统计每一个密文字母出现的频次再结合英文实际的字母出现频次可以大幅地提升破解推测速度。 2、三重DES算法 在课程学习中我们知道随着美国国密标准DES日渐衰微其密钥空间过小的弊病使得穷举式攻击变得容易。故而在DES算法的基础上进行改良的三重DES算法成为了较为优秀的选择。三重DES算法的本质是将DES重复3次从而大大提高密钥空间将原本56位的DES密钥长度提高到56*3168比特的3DES密钥长度。 tips三重DES的本质是执行三次DES加密那么就是【加密加密加密】吗 答案是否定的三重加密的内在是【加密解密加密】。而且值得注意的是这里的三次加密解密操作的密钥都是不同的 二、实验代码 1、凯撒密码 2、三重DES算法 2.1密钥生成和保存对象序列和字节 2.2对称密钥加密 2.3 对称密钥解密 三、实验结果 1、凯撒密码 在Run Configuration中设置我们的参数 “Hello World” 3 运行后输出加密后的密文 回到run configuration界面这次我们输入“密文” -3 运行后解密成功 2、对称密钥加解密以三重DES为例 2.1 对象序列 编写对称加密代码运行后在文件夹下生成一个key1.dat文件。 2.2 字节方式 运行密钥生成程序我们可以看到密钥的内容 生成了一个新的文件keykb1.dat 运行后生成如下字节串。 问题未能打印解密的Hello World 通过代码对比软件分析发现是UTF8习惯写成UTF-8了订正后错误解决。 四、实验总结 1、在进行实验之前再度回顾了关于对称加密算法的基础原理发现又有了更为深刻的理解和认识。 ·例如在凯撒密码中我原本以为只是字符偏移量就能简单实现但是却忽略了26个字母在a之前和z之后的轮转问题。 ·例如三重DES加密算法中我们都知道本质是进行三次DES加密但是三次加密不等于【加密加密加密】而是【加密解密加密】。而且值得注意的是这里的三次加密解密操作的密钥都是不同的 2、遇到问题是常见的重要的是解决问题的方法。在没有报错却无法正常运行的时候我尝试通过代码比对工具快速的找到了存在问题的地方相较于过去一行一行的检查更为快速和精确的定位到了错误。 3、最后说到对密码学和信息安全的好奇与乐趣莫过于一部叫做《没有绝对安全的系统》这部电影介绍了密码破译原理、社会工程学、香肠攻击、午餐攻击等多个有趣的内容让我第一次产生了对于黑客的好奇也希望随着后续学习的不断深入能够揭开密码攻防的神秘面纱。 最后以电影中的一句话作为结束吧。 “每个人都只想看到他想看到的而人类才是系统中最大的漏洞。”