资源简介
一个用java实现的简单的聊天程序,聊天发送的内容是用RSA加密算法进行了加密
代码片段和文件信息
package com.banko.rsachat;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Random;
import javax.swing.JButton;
import javax.swing.Jframe;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class ChatClient extends Jframe{
private JTextArea jta;
private JTextField jtf;
private JButton jb;
private JLabel name;
private Socket s;
private PrintWriter pw;
private BufferedReader br;
public ChatClient() {
this.setSize(300 350);
this.settitle(“聊天室“);
this.setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);
jta = new JTextArea(15 20);
jtf = new JTextField(15);
jb = new JButton(“发送“);
name = new JLabel(String.valueOf(new Random().nextInt(100)));
JPanel jp = new JPanel();
jp.setLayout(new FlowLayout());
jp.add(name);
jp.add(jtf);
jp.add(jb);
jb.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// String message = jtf.getText();
// message = jtf.getText();
String message = name.getText() + “说: “ + jtf.getText();
message = RSAChinese.encrypt(message RSAChinese.key[0] RSAChinese.key[1]);
pw.println(message);
pw.flush();
jtf.setText(““);
}
});
this.setLayout(new BorderLayout());
this.add(jta BorderLayout.CENTER);
this.add(jp BorderLayout.SOUTH);
getMessage();
this.setVisible(true);
}
private void getMessage() {
try {
s = new Socket(“127.0.0.1“ 8888);
pw = new PrintWriter(s.getOutputStream());
new ClientThread().start();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
class ClientThread extends Thread{
public void run() {
while(true) {
try {
br = new BufferedReader(new InputStreamReader(s.getInputStream()));
String message = br.readLine();
message = RSAChinese.decrypt(message RSAChinese.key[2] RSAChinese.key[1]);
jta.append(message + “\n“);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
public static void main(String[] args) {
new ChatClient();
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 301 2012-06-12 19:01 rsa_chat\.classpath
文件 384 2012-06-12 19:01 rsa_chat\.project
文件 629 2012-06-12 19:01 rsa_chat\.settings\org.eclipse.jdt.core.prefs
文件 1671 2012-06-21 19:22 rsa_chat\bin\com\banko\rsachat\ChatClient$1.class
文件 1859 2012-06-21 19:22 rsa_chat\bin\com\banko\rsachat\ChatClient$ClientThread.class
文件 3469 2012-06-21 19:22 rsa_chat\bin\com\banko\rsachat\ChatClient.class
文件 2181 2012-06-13 12:08 rsa_chat\bin\com\banko\rsachat\ChatServer$ServerThread.class
文件 1368 2012-06-13 12:08 rsa_chat\bin\com\banko\rsachat\ChatServer.class
文件 5215 2012-06-13 11:58 rsa_chat\bin\com\banko\rsachat\RSAChinese.class
文件 2649 2012-06-21 19:22 rsa_chat\src\com\banko\rsachat\ChatClient.java
文件 1764 2012-06-13 12:08 rsa_chat\src\com\banko\rsachat\ChatServer.java
文件 4651 2012-06-13 11:58 rsa_chat\src\com\banko\rsachat\RSAChinese.java
目录 0 2012-06-13 12:20 rsa_chat\bin\com\banko\rsachat
目录 0 2012-06-12 19:23 rsa_chat\src\com\banko\rsachat
目录 0 2012-06-12 19:01 rsa_chat\bin\com\banko
目录 0 2012-06-12 19:01 rsa_chat\src\com\banko
目录 0 2012-06-12 19:01 rsa_chat\bin\com
目录 0 2012-06-12 19:01 rsa_chat\src\com
目录 0 2012-06-12 19:01 rsa_chat\.settings
目录 0 2012-06-12 19:01 rsa_chat\bin
目录 0 2012-06-12 19:01 rsa_chat\src
目录 0 2012-06-12 19:01 rsa_chat
----------- --------- ---------- ----- ----
26141 22
相关资源
- 局域网聊天程序,群聊。私聊。发文
- Java 文件加密传输
- 基于java的类PGP文件加密传输系统
-
Java Jfr
ame简单聊天程序 - Java版聊天程序(UDP TCP 多线程)
- 采用TCP SOCKET技术编写C/S模式的java聊天
- 简单多线程一对一聊天程序
- Crypto++ 7.0.0 for Android 已编译
- C#和Java实现互通的RSADES加解密算法
- 文件加密工具带jar包
- 黑马28期Android全套视频无加密无水印
- Delphi开发Android程序调用wxSqlite3编译的
- JS实现AES-GCM加密,java实现AES-GCM解密。
- java国密算法SM4加密.zip
- Delphi 版 SM3 SM4 加密实现代码
- 4位明文SHA_256加密破解。JAVA语言
- 金蝶K3用户名密码加密过程(java)
- DES加密解密算法论文
- RSA数字签名算法的具体实现
- BAT大厂APP架构演进实践与优化之路
- Rsa非对称加密的Java实现和举例更新版
- java class加密保护(完全免费) v2.1
- 完美使用RSA2结合AES对数据进行加密兼
- Android RSA加密jar包
- RSA算法JAVA公钥加密,C#私钥解密
- 支付宝RSA加解密工具
- aes加密算法 五种模式
- 论文研究 - 使用混合密码算法的端到
- des加密算法实现任意文件加解密
- 属性基加密java实现.zip
川公网安备 51152502000135号
评论
共有 条评论