資源簡介
一段使用Java實現的AES/CBC/NoPadding方式實現的文件加解密,同時附加一份密文以及密鑰以及向量以供測試
http://download.csdn.net/download/eguidao/10120453
代碼片段和文件信息
import?java.io.BufferedInputStream;??
import?java.io.BufferedOutputStream;??
import?java.io.File;??
import?java.io.FileInputStream;??
import?java.io.FileOutputStream;??
import?javax.crypto.Cipher;??
import?javax.crypto.spec.IvParameterSpec;
import?javax.crypto.spec.SecretKeySpec;??
??
public?class?Test?{??
??????
????private?static?final?int?ZERO?=?0;??
????private?static?final?int?ONE?=?1;?
????//實驗操作路徑
????private?static?String?derectory?=?“E:\\StudyDocu\\code\\sth“;?
?????
????
??????
????public?static?void?main(String[]?args)?{??
???? //key:?加密密鑰
???? String?key?=?“aaaabbbbccccdddd“;
????????//ivParameter:AES?cbc加密模式的iv向量
???? String?ivParameter?=?“AAAABBBBCCCCDDDD“;
????????try?{?????
???????? //對給出的密文的解密過程。
???????? //密文保存在“密文.txt”中
???????? //將解密結果保存在“明文.txt”中
????????????File?file?=?new?File(derectory+“/“+“密文.txt“);??
????????????String?fileName?=?“明文.txt“;
????????????decriptfile(filekeyivParameterfileName);??
????????????
????????????//對自己的學號姓名的加密過程。
???????? //學號姓名保存在“學號姓名.txt中”
???????? //將加密結果保存在“encrypt_Id&Name.txt”中
????????????String?fileName1?=?“encrypt_Id&Name.txt“;
????????????File?file2?=?new?File(derectory+“/“+“學號姓名.txt“);
????????????encryptfile(file2?key?ivParameterfileName1);
????????}?catch?(Exception?e)?{??
????????????e.printStackTrace();??
????????}??
????}???
??
????/**?
?????*?文件處理方法?
?????*?code為加密或者解密的判斷條件?
?????*?file?密文文件
?????*?key?加密密鑰?
?????*?ivParameterm?iv向量
?????*?filename?加解密結果存入的文件名
?????*/??
????public?static?void?doFile(int?code?Fil
- 上一篇:javaSwing(源碼)
- 下一篇:opencv.jar
評論
共有 條評論