資源簡介
畢業(yè)設計的代碼,是用Java做的可搜索加密方案的模擬仿真,有服務器與客戶端兩端,可完成模擬通信,且在云端完成了模擬搜索。

代碼片段和文件信息
import?java.io.InputStream;
import?java.io.OutputStream;
import?java.security.spec.AlgorithmParameterSpec;
import?javax.crypto.Cipher;
import?javax.crypto.CipherInputStream;
import?javax.crypto.CipherOutputStream;
import?javax.crypto.SecretKey;
import?javax.crypto.spec.IvParameterSpec;
class?DesEncrypter?{
??byte[]?buf?=?new?byte[1024];
??Cipher?ecipher;
??Cipher?dcipher;
??DesEncrypter(SecretKey?key)?throws?Exception{
????byte[]?iv?=?new?byte[]?{?(byte)?0x8E?0x12?0x39?(byte)?0x9C?0x07?0x72?0x6F?0x5A?};
????AlgorithmParameterSpec?paramSpec?=?new?IvParameterSpec(iv);
????ecipher?=?Cipher.getInstance(“DES/CBC/PKCS5Padding“);
????dcipher?=?Cipher.getInstance(“DES/CBC/PKCS5Padding“);
????ecipher.init(Cipher.ENCRYPT_MODE?key?paramSpec);
????dcipher.init(Cipher.DECRYPT_MODE?key?paramSpec);
??}
??public?void?encrypt(InputStream?in?OutputStream?out)??throws?Exception{
????out?=?new?CipherOutputStream(out?ecipher);
????int?numRead?=?0;
????while?((numRead?=?in.read(buf))?>=?0)?{
??????out.write(buf?0?numRead);
????}
????out.close();
??}
??public?void?decrypt(InputStream?in?OutputStream?out)??throws?Exception{
????in?=?new?CipherInputStream(in?dcipher);
????int?numRead?=?0;
????while?((numRead?=?in.read(buf))?>=?0)?{
??????out.write(buf?0?numRead);
????}
????out.close();
??}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????9585??2013-05-22?16:06??PEKSClient.java
?????文件????????2213??2013-05-22?09:13??PEKSInitial.java
?????文件???????10156??2013-05-22?09:34??PEKSServer.java
?????文件?????????371??2013-05-04?23:05??Trapdoor.java
?????文件????????1362??2013-05-03?00:08??DesEncrypter.java
評論
共有 條評論