资源简介
毕业设计的代码,是用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
评论
共有 条评论