海晏网站建设公司,微信公众营销平台开发,WordPress标签转拼音代码,网站开发能赚钱吗20145308刘昊阳 《Java程序设计》实验五 Java网络编程及安全 实验报告 实验名称 Java网络编程及安全 实验内容 1#xff0e;掌握Socket程序的编写#xff1b; 2#xff0e;掌握密码技术的使用#xff1b; 3#xff0e;设计安全传输系统。 统计的PSP(Personal Software Pro… 20145308刘昊阳 《Java程序设计》实验五 Java网络编程及安全 实验报告 实验名称 Java网络编程及安全 实验内容 1掌握Socket程序的编写 2掌握密码技术的使用 3设计安全传输系统。 统计的PSP(Personal Software Process)时间 步骤耗时(min)百分比需求分析20~3017%设计20~3017%代码实现10~2011%测试50~6033%分析总结30~4022%实验步骤 我是做的服务器端我的结伴对象是20145325张梓靖,地址:http://www.cnblogs.com/zzjzzjzzj/p/5471240.html1.先利用示例代码运行监听客户端
import java.io.*;
import java.net.*;
/*** 复用连接的echo服务器* 功能将客户端发送的内容反馈给客户端*/
public class MulSocketServer {public static void main(String[] args) {ServerSocket serverSocket null;Socket socket null;OutputStream os null;InputStream is null;//监听端口号int port 10000;try {//建立连接serverSocket new ServerSocket(port);System.out.println(服务器已启动);//获得连接socket serverSocket.accept();//初始化流is socket.getInputStream();os socket.getOutputStream();byte[] b new byte[1024];for(int i 0;i 2;i){int n is.read(b);//输出System.out.println(客户端发送内容为 new String(b,0,n));//向客户端发送反馈内容os.write(b, 0, n);}} catch (Exception e) {e.printStackTrace();}finally{try{//关闭流和连接os.close();is.close();socket.close();serverSocket.close();}catch(Exception e){}}}
}接收到对方传送的字符串2.生成公钥、私钥KeyPairGenerator kpgKeyPairGenerator.getInstance(RSA);kpg.initialize(1024);KeyPair kpkpg.genKeyPair();PublicKey pbkeykp.getPublic();PrivateKey prkeykp.getPrivate();FileOutputStream f1new FileOutputStream(Skey_RSA_pub.dat);ObjectOutputStream b1new ObjectOutputStream(f1);b1.writeObject(pbkey);FileOutputStream f2new FileOutputStream(Skey_RSA_priv.dat);ObjectOutputStream b2new ObjectOutputStream(f2);b2.writeObject(prkey); 3.利用解密算法对收到的密文进行解密BufferedReader innew BufferedReader(new InputStreamReader(new FileInputStream(Enc_RSA.dat)));String ctextin.readLine();BigInteger cnew BigInteger(ctext);FileInputStream fnew FileInputStream(Skey_RSA_priv.dat);ObjectInputStream bnew ObjectInputStream(f);RSAPrivateKey prk(RSAPrivateKey)b.readObject( );BigInteger dprk.getPrivateExponent();BigInteger nprk.getModulus();System.out.println(d d);System.out.println(n n);BigInteger mc.modPow(d,n);System.out.println(m m);byte[] mtm.toByteArray();System.out.println(PlainText is );for(int i0;imt.length;i){System.out.print((char) mt[i]);FileInputStream fnew FileInputStream(SEnc.dat);int numf.available();byte[ ] ctextnew byte[num];f.read(ctext);FileInputStream f2new FileInputStream(keykb1.dat);int num2f2.available();byte[ ] keykbnew byte[num2];f2.read(keykb);SecretKeySpec knew SecretKeySpec(keykb,DESede);Cipher cpCipher.getInstance(DESede);cp.init(Cipher.DECRYPT_MODE, k);byte []ptextcp.doFinal(ctext);String pnew String(ptext,UTF8);System.out.println(p);转载于:https://www.cnblogs.com/yg961022/p/5471201.html