doubleclient.java
来自「用java语言实现的认证程序」· Java 代码 · 共 41 行
JAVA
41 行
import java.io.*;
import java.net.*;
import java.security.*;
import java.util.Date;
import Protection;
public class DoubleClient {
public void sendAuthentication(String user, String password,
OutputStream outStream) throws IOException, NoSuchAlgorithmException {
DataOutputStream out = new DataOutputStream(outStream);
long t1 = (new Date()).getTime();
double q1 = Math.random();
byte[] protected1 = Protection.makeDigest(user, password, t1, q1);
long t2 = (new Date()).getTime();
double q2 = Math.random();
byte[] protected2 = Protection.makeDigest(protected1, t2, q2);
out.writeUTF(user);
out.writeLong(t1);
out.writeDouble(q1);
out.writeLong(t2);
out.writeDouble(q2);
out.writeInt(protected2.length);
out.write(protected2);
out.flush();
}
public static void main(String[] args) throws Exception {
String host = args[0];
int port = 7999;
String user = "Jonathan";
String password = "buendia";
Socket s = new Socket(host, port);
DoubleClient client = new DoubleClient();
client.sendAuthentication(user, password, s.getOutputStream());
s.close();
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?