91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

AB雙方通信,A把需要傳輸的文件MD5值用自己的私鑰生成數字簽名,連同明文用B的公鑰加密后傳送給B,B用私鑰解密驗證數字簽名,并計算明文MD5值跟密文的MD5值比較

資源截圖

代碼片段和文件信息

package?net;

import?java.io.BufferedInputStream;
import?java.io.BufferedReader;
import?java.io.DataInputStream;
import?java.io.DataOutputStream;
import?java.io.File;
import?java.io.FileInputStream;
import?java.io.InputStream;
import?java.io.InputStreamReader;
import?java.io.objectInputStream;
import?java.io.OutputStream;
import?java.net.ServerSocket;
import?java.net.Socket;
import?java.security.interfaces.RSAPublicKey;

import?util.KeyUtils;
import?util.MD5Utils;
import?util.RSAUtils;
import?util.SignUtils;

public?class?A?{

private?String?info;
private?String?FILE?=?“d:/test/test.txt“;
private?String?KEY_FILE?=?“d:/test/A/AKey.dat“;
private?String?SIGN_FILE?=?“d:/test/A/sign.dat“;
private?String?RSA_SIGN_FILE?=?“d:/test/A/rsaSign.dat“;
private?String?RSA_FILE?=?“d:/test/A/rsaTest.dat“;
private?RSAPublicKey?pubKey;

public?RSAPublicKey?getPubKey()?{
return?pubKey;
}

public?void?setPubKey(RSAPublicKey?pubKey)?{
this.pubKey?=?pubKey;
}

public?String?getInfo()?{
return?info;
}

public?void?setInfo(String?info)?{
this.info?=?info;
}

public?void?init()?{
//?創建目錄
File?f1?=?new?File(“d:/test/A/“);
f1.mkdirs();
info?=?MD5Utils.md5(FILE);
KeyUtils.createPairKey(KEY_FILE);
SignUtils.signInfo(KEY_FILE?info?SIGN_FILE);
}

public?void?send()?throws?Exception?{
RSAUtils.encryptToFile(pubKey?SIGN_FILE?RSA_SIGN_FILE);
RSAUtils.encryptToFile(pubKey?FILE?RSA_FILE);
}

public?void?start()?throws?Exception?{

ServerSocket?ss?=?new?ServerSocket(520);

Socket?socket?=?ss.accept();

InputStream?is?=?socket.getInputStream();
DataInputStream?dis?=?new?DataInputStream(is);
BufferedReader?br?=?new?BufferedReader(new?InputStreamReader(System.in));
OutputStream?os?=?socket.getOutputStream();
DataOutputStream?dos?=?new?DataOutputStream(os);
objectInputStream?ois?=?new?objectInputStream(is);
String?str1?=?br.readLine();
dos.writeUTF(str1);
dos.flush();
String?str2?=?br.readLine();
dos.writeUTF(str2);
dos.flush();
String?str3?=?dis.readUTF();
System.out.println(“【A】A接受到B的輸入:“?+?str3);
if?(“y“.equalsIgnoreCase(str3))?{
System.out.println(“【A】AB通話開始......“);
System.out.println(“【A】A接收B的公鑰開始......“);
setPubKey((RSAPublicKey)?ois.readobject());
System.out.println(“【A】A接收B的公鑰完畢......“);
send();
System.out.println(“【A】A開始發送由B公鑰加密過的密文......“);
File?file?=?new?File(RSA_SIGN_FILE);
long?length=?file.length();
dos.writeLong(length);
BufferedInputStream?bis?=?new?BufferedInputStream(
new?FileInputStream(RSA_SIGN_FILE));
int?a;
while?((a?=?bis.read())?!=?-1)?{
dos.write(a);
}
bis.close();
BufferedInputStream?bis2?=?new?BufferedInputStream(
new?FileInputStream(RSA_FILE));
int?b;
while?((b?=?bis2.read())?!=?-1)?{
dos.write(b);
}
bis2.close();

System.out.println(“【A】A發送密文文件完畢......“);
System.out.println(“【A】AB通話結束...

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件????????292??2010-11-29?08:59??MySec\.classpath

?????文件????????381??2010-11-29?08:57??MySec\.project

?????文件???????1867??2010-11-29?08:57??MySec\src\util\FileUtils.java

?????文件???????1096??2010-11-29?09:41??MySec\src\util\KeyUtils.java

?????文件????????922??2010-11-29?09:41??MySec\src\util\MD5Utils.java

?????文件???????3454??2010-11-29?09:42??MySec\src\util\RSAUtils.java

?????文件???????2332??2010-11-29?08:57??MySec\src\util\SignUtils.java

?????文件???????1117??2010-11-29?09:40??MySec\src\test\SecTest.java

?????文件???????3254??2010-11-29?09:55??MySec\src\net\A.java

?????文件???????3651??2010-11-29?10:00??MySec\src\net\B.java

?????文件?????953845??2010-11-29?08:58??MySec\lib\jce-jdk13-120.jar

?????文件???????1831??2010-11-29?08:59??MySec\bin\util\FileUtils.class

?????文件???????1336??2010-11-29?09:41??MySec\bin\util\KeyUtils.class

?????文件???????1483??2010-11-29?09:41??MySec\bin\util\MD5Utils.class

?????文件???????2917??2010-11-29?09:42??MySec\bin\util\RSAUtils.class

?????文件???????1658??2010-11-29?08:59??MySec\bin\util\SignUtils.class

?????文件???????1197??2010-11-29?09:40??MySec\bin\test\SecTest.class

?????文件???????4672??2010-11-29?09:55??MySec\bin\net\A.class

?????文件???????4865??2010-11-29?10:00??MySec\bin\net\B.class

?????目錄??????????0??2010-12-10?10:41??MySec\src\util

?????目錄??????????0??2010-12-10?10:41??MySec\src\test

?????目錄??????????0??2010-12-10?10:41??MySec\src\net

?????目錄??????????0??2010-12-10?10:41??MySec\bin\util

?????目錄??????????0??2010-12-10?10:41??MySec\bin\test

?????目錄??????????0??2010-12-10?10:41??MySec\bin\net

?????目錄??????????0??2010-12-10?10:41??MySec\src

?????目錄??????????0??2010-12-10?10:41??MySec\lib

?????目錄??????????0??2010-12-10?10:41??MySec\bin

?????目錄??????????0??2010-12-10?10:41??MySec

-----------?---------??----------?-----??----

............此處省略2個文件信息

評論

共有 條評論