资源简介
本科毕设,基于DES算法数据加密系统的设计与实现,通信双方可以实现实时通信,同时用到的DES和RSA算法
代码片段和文件信息
import java.awt.Color;
import java.awt.EventQueue;
import javax.swing.BorderFactory;
import javax.swing.Jframe;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import java.awt.Font;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.FileInputStream;
import java.io.Flushable;
import java.io.IOException;
import java.io.OutputStream;
import java.math.BigInteger;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.UnknownHostException;
import java.security.KeyFactory;
import java.security.KeyPair;
import java.security.KeyPairGenerator;
import java.security.PrivateKey;
import java.security.PublicKey;
import java.security.interfaces.RSAPrivateKey;
import java.security.interfaces.RSAPublicKey;
import java.security.spec.PKCS8EncodedKeySpec;
import java.security.spec.X509EncodedKeySpec;
import java.util.Arrays;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
@SuppressWarnings(“serial“)
public class CLient extends Jframe implements Runnable{
RSAUtil rsa=new RSAUtil();
//*****************主函数****************
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
CLient frame = new CLient();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/*
* public class CLient是一个自定义类,类名叫CLient
* extends Jframe 继承了Java的Jframe类
* Jframe类的Java的窗体类,继承它可以重写它的一些方法达到更方便编程的作用
* implements Runnable 实现Runnable接口
*/
private JPanel contentPane;//定义一个JPanel面板类的对象contentPane
private int port;//设置的客户端端口号
private String sendToip;//要接收方的ip地址
private int sendToport;//要接受方的端口号
private String text;//要发送的明文
private String result;//要得到的密文
ServerSocket ss=null;
private Socket socket=null;
private Thread thread=null;//该线程打开特定的端口号等待连接
private jiemi j;
/**
* Launch the application.启动应用程序
*/
JTextArea resultArea;//JTextArea类显示纯文本的多行区域
JTextArea mingwen;//明文输入框
JTextArea ipArea;//ip地址输入框
JTextArea portArea;//目的端口输入框
JTextArea portSelf;//本机端口输入框
JTextArea jiamiArea;//加密密钥输入框
JTextArea jiemiArea;//解密密钥输入框
/**
* Create the frame.创建frame
*/
public CLient() throws Exception{
// *********标题 ******* //
settitle(“基于DES算法数据加密系统设计与实现“);//设置窗体的标题
//**********关闭按钮************//
setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);
////用户单击窗口的关闭按钮时程序执行的操作
//**********窗口大小**********//
setBounds(100 100 681 523);
contentPane = new JPanel();//对象实例化新建一个JPanel的容器画布,中间
contentPane.setBorder(new EmptyBorder(5 5 5 5));
//让contentPane内部边框为空,并且有5个像素的厚度
setContentPane(contentPane);
//把contentPane设置为面板内容
contentPane.s
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 301 2017-05-08 08:10 .classpath
文件 379 2017-05-05 22:01 .project
目录 0 2017-05-05 08:20 .settings\
文件 629 2017-05-05 08:20 .settings\org.eclipse.jdt.core.prefs
目录 0 2017-12-06 10:45 bin\
文件 677 2017-12-06 10:44 bin\CLient$1.class
文件 921 2017-12-06 10:44 bin\CLient$2.class
文件 1532 2017-12-06 10:44 bin\CLient$3.class
文件 2891 2017-12-06 10:45 bin\CLient$4.class
文件 690 2017-12-06 10:44 bin\CLient$5.class
文件 1741 2017-12-06 10:44 bin\CLient$jiemi.class
文件 7574 2017-12-06 10:44 bin\CLient.class
文件 11799 2017-12-06 10:45 bin\DesUtil.class
文件 3332 2017-12-06 10:45 bin\RSAUtil.class
目录 0 2017-05-05 21:56 src\
文件 12533 2017-06-12 12:56 src\CLient.java
文件 12391 2017-06-07 12:22 src\DesUtil.java
文件 2841 2017-06-12 13:01 src\RSAUtil.java
评论
共有 条评论