加解密程序java实现-信息安全工具使用教程.docVIP

加解密程序java实现-信息安全工具使用教程.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
该实现设计报告对应的代码文件下载地址(0分): /view/2d2aee86e53a580216fcfe3a.html?st=1 院 系: 计算机科学学院 专 业:计算机科学与技术 年 级: 09 课程名称:信息安全工具使用教程 学 号: 姓 名: 多啦小鹏 指导教师: 2011年 12月12日 年级 09 学号姓名 多啦小鹏 专业 计算机科学与技术 实验名称 古典密码加解密算法 实验 类型 设计型 综合型 创新型 √ 实 验 目 的 实验目的:了解古典加密解密算法的加解密过程和实现。 实 验 记 录 实验题目: 古典密码加解密算法的实现,要求如下: ①具有置换密码、单表替代密码中的加法密码、乘法密码和仿射密码、Vigenere密码以及代数密码的加密和解密功能; ②具有加解密速度统计功能; ③具有良好的人机界面。 实验实现: (本实验实现了古典加密中最基本算法) 本程序实现功能: 实现了古典加密算法中最基本的两种算法:置换算法和替代移位法;实现了不可逆加密算法中的MD5加密;实现了数据加密标准DES(引用库函数,未自行实现)。 古典算法加密解密的实现 置换算法 算法描述 置换密码:把明文中的字母重新排列,字母本身不变,但其位置改变,这样编成的密码称为置换密码。 简单置换密码:把明文中的各个字符倒序排列,从而达到对明文简单的加密,显然这中加密方法很容易被破解。但是初学密码,这是一种思想,简单的将明文处理,达到和明文不符,隐藏信息,并且解密也非常容易实现。 较复杂置换密码:把明文排入一个矩阵,其中不足的部分通过其他字符填充(例如:本程序中用‘#’),然后按照另一个顺序将矩阵中的字符输出,从而达到加密。而解密也相对简单,加密的逆过程即能达到解密。 举例说明 简单置换密码: 明文:zhangpengisagoodman (可用本程序测试) 密文:namdoogasignepgnaha 实 验 记 录 较复杂置换密码: 明文:zhangpengisagoodman 明文放入到4*5的矩阵中: 明文 0 1 2 3 0 z h a n 1 g p e n 2 g i s a 3 g o o d 4 m a n # 将矩阵中的明文按照另一种顺序输出,即能达到加密的效果,我们设定按照矩阵的列数,从最左边向右边一列一列输出。 得到密文:zgggmhpioaaesonnnad# 解密时将密文输入规定列数矩阵,输入时则按照一列一列的输入,输出时则按照正常的一行一行地输出。即加密的逆向过程,容易实现。 算法实现和流程图 简单置换密码:综上描述得出流程图:(文字不再赘述算法,以上已描述) 较复杂置换密码:综上描述得出流程图:(文字不再赘述算法,以上已描述) 替代移位法 1.2.1、算法描述 替代移位密码:首先构造一个或多个密文字母表,然后用密文字母表中的字母或字母组来替代明文字母或字母组,各字母或字母组的相对位置不变,但其本身改变。 加法密码: 加法密码的映射函数: f(ai)=bi=aj,j=i+k mod n,k是0kn的正整数。 本程序中默认k=3,这时也是古罗马的凯撒大帝使用的密码,就是将字符表向后移动3位后得到的字符表格,然后将明文中各个字符按照以前所在的位置在移动后的字符表中找相对应的字符,即得到加密的密文。 乘法密码: 乘法密码的映射函数: f(ai)=bi=aj,j=ik mod n其中,要求k和n互素。同上。 1.2.2、算法实现和流程或PAD图 两种方法的共同部分:首先生成移位后的字符表格;加密过程是将原明文中字符找到在字符表中的位置;解密过程是将加密后的字符按照加密时字符移位的位置,然后按此位置输出原字符表中的字符。 本程序中编写原字符表list由’a’~’z’,’A’~’Z’共52个字符组成。 字符位置’A’~’Z’, ’a’~’z’为0~51,则利用ASCII码构造一个方法,用得到字符在list表中数字位置。此方法流程图 加法密码:综上描述得出PAD图:(结合源程序文件DisplaceEncrypt.java) 实现过程: 乘法密码:综上描述得出流程图或PAD图:(结合源程序文件DisplaceEncrypt.java) MD5加密算法介绍和认识 Message Digest Algorithm MD5 又叫作消息摘要算法,广泛应用在登陆认证上,比如常用在网站登陆认证中,用户输入密码,将用MD5加密或多次加密,当然现实中常将用户密码和随机产生的验证码用MD5加密或多此MD5加密,这样保证了密码在传输过程中的安全性,M

文档评论(0)

yan666888 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档