计算机网络已经日渐地深入到我们的日常生活和工作之中,由于网络的开放性,在带给我们方便的同时,也存在着极大的安全隐患。现在维护网络安全的主要方法是对网络传输的数据进行加密,而对数据加密要依赖很有实力的加密算法。DES(Data Encryption Standard)是很成熟、典型和非常具有代表性的数据加密算法。本文通过对称的DES算法对文件数据进行加密,文件传输部分采用传输协议TCP,实现加密文件在以太网内的传输。本文完成文件加密部分和文件传输部分的实现平台是Visual C++,即以它为开发环境,编写文件加密和文件传输代码,最后实现加密文件在以太网内的传输。Visual C++ 作为一个可视的集成开发工具,提供了软件代码自动生成和可视化的资源编辑功能。与传统的一些编程平台相比,它能够使系统具有较高的效率和可用性。
本设计选择对称密码体制中DES算法对文件进行加密,它是一种采用传统加密方法的区组密码。由于DES是一种开放的标准,其安全性取决于密钥的强度和算法的性质。DES算法的具体实现依赖于下列参数和设计特点的选择:
(1) 分组大小。分组越大意味着安全性越高,但加解密速度也就越慢。64比特的分组大小是一个合理的折衷,在分组密码设计中它几乎成为一个通用的数值。
(2) 密钥大小。密钥长度越长则安全性越高,但加解密速度越慢,应根据实际需要选择适当的密钥长度。
(3) 循环次数。循环次数越多则安全性越高,一般采用16次循环。
(4) 子密钥产生算法。这个算法越复杂则密钥分析就越困难。
(5) 函数Round。复杂性越高则抗击密码分析的能力就越强。
文件加密在数据发送端进行,即根据要求使用特定的加密算法对明文进行加密,然后再把加密后的文件在网络上传送,加密后的密文被发送给接收端后,接收端收到相应的密文后选择同样的解密算法进行解密.
启动服务器端和客户端的程序,先运行服务器端,再运行客户端
服务端与客户端的端口号设为5000,服务器端显示的192.168.0.26是本机IP地址,它是服务器端的网络IP,在客户端IP文本框内输入地址192.168.0.26,则能够实现文件在以太网内两台主机之间的传输。论文中本部分是抓取单机上演示传输文件的界面图,所以客户端的IP输入是127.0.0.1