简单的文件加密程序java 1

2020-05-09 14:46

河南理工大学

计算机科学与技术学院

课程设计报告

2014— 2015学年第一学期

课程名称 网络安全

设计题目 实现加解密程序 姓 名 _____________ 学 号 __________ 专业班级 网络1203 _ 指导教师 ________

2014 年 12 月 29日

0

目 录

1.1设计目的 ------------------------------------------------------------------------- 2 1.2设计要求 ----------------------------------------------------------------------- 2 2.1设计前提 ------------------------------------------------------------------------- 2 2.2关于DES算法的介绍 ------------------------------------------------------------- 3 2.3DES算法原理 ---------------------------------------------------------------------3 2.4功能需求----------------------------------------------------------------------------3 3.1系统模块图-------------------------------------------------------------------------4 3.2主函数流程图-----------------------------------------------------------------------4 3.3内部函数流程图 -----------------------------------------------------------------5 4.1程序使用运行

------------------------------------------------------------------5

5.1关于对程序编写的心得-------------------------------------------------------------7 6.1参考文献 ----------------------------------------------------------------------------8

1

1.1设计目的

通过课程设计,使学生了解高级程序设计语言的结构,逐渐培养学生的编程能力、 用计算机解决实际问题的能力,掌握基本的程序设计过程和技巧,掌握基本的分析问题和利用计算机求解问题的能力,具备初步的高级语言程序设计能力。为后续各门计算机课程的学习和毕业设计打下坚实基础。 程序设计的主要任务是要求学生遵循软件开发过程的基本规范,运用结构化程序设计的方法,按照课程设计的题目要求,分析、设计、编写、调试和测试程序及编写设计报告。

本课程设计的目标:

1. 巩固《Java面向对象程序设计》课程学习的内容和加深学生对基本知识的理解和掌握。同时加深对《网络信息安全》中的密码技术有了更深得理解。 2. 掌握编程和程序调试的基本技能。 3. 掌握软件设计的方法。

4. 提高运用程序设计解决实际问题的能力。

5. 培养独立思考、 综合运用所学有关相应知识的能力。 6. 强化上机动手编程能力,闯过理论与实践相结合的难关! 1.2设计要求

1. 分析课程设计题目的要求,根据所要求的程序功能,画出程序的流程图。 2. 对系统功能模块进行分析,写出详细设计说明文档。 3. 对程序源代码进行调试与测试,使其能正确运行。 4. 设计完成的软件要便于操作和使用。 5. 设计完成后提交课程设计报告。 2.1设计前提

通过本学期对《网络信息安全》这本书的学习,学到了很多关于文件数据安

全方面的知识,信息化、网络化普及的今天,给我们带来了诸多方便,但随之而来的安全问题我们不得不重视。这次设计题目是简单的加密小程序,我是用的是java高级编程语言来做代码的实现。首先要了解加密技术;它是电子商务采取的主要的安全保密措施,是最常用的安全保密手段,利用技术可以将数据变为乱码进行传送;到达目的之后再将该文件以同样的手段进行还原也就是解密,其中不会破坏数据的完整性。加密技术包括两个元素:算法和密钥。算法就是将普通的信息与一串数字的结合,产生不可理解的信息密文的步骤,密钥是用来对数据进行编码和解码的一种算法。在安全保密中,可以通过适当的密钥加密技术和管理机制来保证网络的信息通讯安全。

2

2.2关于DES算法的介绍:

DES 算法是美国国家标准局在1973年开始研究除国防部门外的计算机系统的数据加密标准;于1973年5月15日和1974年8月27日先后两次向公众真征求加密算法公告。加密算法要达到的目的主要是以下四点:

1. 提供高质量的数据保护,防止数据未经授权的泄露和未被察觉的修改; 2. 具有较高的复杂性,使得破译开销超过可能获得的利益,同时又要便于理解和掌握。 3. DES密码体制的安全性应该不依赖算法的保密,其安全性仅以加密密钥的保密为基础。 4. 实现经济,运行有效并且适用于多种不同的应用。

1977年1月,美国政府正式许可以IBM公司设计的方案作为非机密数据的数据加密标准。DES算法已经应用于许多需要安全加密的场合,UNIX的密码保护算法就是以DES算法为基础的。 2.3.DES算法工作原理

DES算法是这样工作的:如Mode为加密,则用Key去把数据Date进行

加密,生成Date的密码形式作为DES的输入结果;如果Mode为解密,则用Key去把密码形式的数据Date解密,还原为Date的明码形式作为输出结果。在通信网络的两端,双方约定一致的Key,在通信的源点用Key对核心数据进行加密,然后以密码形式在公共通信网中传输到通信网络的终点,数据到达目的地后用同样的Key进行解密;再现了核心数据。保证了核心数据的安全传输。

简单地说,算法只不过是加密的两个技术---混乱和扩散的组合。DES基本组件分组是这些技术的一个组合。它基于密钥作用于明文,这就是众所周知的轮。DES有十六轮,这意味着在明文分组上16次实施相同的组合技术。

DES对64bit的明文分组进行操作。通过一个初始置换,将明文分为左半部分和右半部分,各长32bit然后进行16轮完全相同的迭代,在迭代过程中数据与密钥结合。经过16轮后,左右部分合在一起经过一个置换,该算法就完成了。

DES的算法特点:分组比较短,密钥太短,密码生命周期短,运算速度慢。 2.4功能需求

1.首先是能够有可视化的图形化界面。

2.能够查看选择本地文件。

3.能够随机产生大于等于48位的随机密码。用户自行输入也可以。

3

4.能够将加密后的文件更改后缀名生成到当前文件夹中。 5.能够解密曾经加密后的文件。

3.1系统模块图

3.2主函数流程图

在java主函数中,通过调用一个类中的方法来实现调用各个类方法,体现了

解密类 模 块 系 统 密码随机产生类 加密类 DES加密/解密 事件监听器/响应器 Java中各种api方法 文件选择类 I/O方法对象 Random方法 java语言的简洁性和高效性。

java.awt. ContainerActionList图形化界ener监听 3.3内部函数流程图 器 面

3.3 内部函数流程图

开始 File文件操作方法类 FileEncrypter 方法show(); IO读写方法类 Public static void Main主方法

4


简单的文件加密程序java 1.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:内蒙古畜牧业生产方式转变的原因分析

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: