对称密码算法验证.docx

对称密码算法验证.docx

ID:59247444

大小:17.94 KB

页数:2页

时间:2020-09-08

对称密码算法验证.docx_第1页
对称密码算法验证.docx_第2页
资源描述:

《对称密码算法验证.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、2.DES对称密码算法验证packageDES;importjava.security.InvalidKeyException;importjava.security.Key;importjava.security.NoSuchAlgorithmException;importjava.security.SecureRandom;importjava.security.spec.InvalidKeySpecException;importjavax.crypto.Cipher;importjavax.crypto.SecretKey;importjavax.cry

2、pto.SecretKeyFactory;importjavax.crypto.spec.DESKeySpec;publicclassDESConfirm{publicstaticbyte[]encrypt(byte[]datasource,Stringpassword){try{SecureRandomrandom=newSecureRandom();DESKeySpecdesKey=newDESKeySpec(password.getBytes());SecretKeyFactorykeyFactory=SecretKeyFactory.getInstance

3、("DES");SecretKeysecurekey=keyFactory.generateSecret(desKey);Ciphercipher=Cipher.getInstance("DES");cipher.init(Cipher.ENCRYPT_MODE,securekey,random);returncipher.doFinal(datasource);}catch(Throwablee){e.printStackTrace();}returnnull;}publicstaticbyte[]decrypt(byte[]src,Stringpassword

4、)throwsException{SecureRandomrandom=newSecureRandom();DESKeySpecdesKey=newDESKeySpec(password.getBytes());SecretKeyFactorykeyFactory=SecretKeyFactory.getInstance("DES");SecretKeysecurekey=keyFactory.generateSecret(desKey);Ciphercipher=Cipher.getInstance("DES");cipher.init(Cipher.DECRY

5、PT_MODE,securekey,random);returncipher.doFinal(src);}}Main.javapackageDES;importsun.security.krb5.internal.crypto.Des;importjavax.crypto.spec.DESKeySpec;importjava.io.IOException;importjava.util.Vector;publicclassmain{publicstaticvoidmain(String[]args){IOio=newIO();io.GetPlainText("C:

6、\Users\Administrator\workspace\Cryptology\src\DES\PlainText.text");Stringstr=io.getPlainText();DESdes=newDES();//密码,长度要是8的倍数//Stringpassword="";Stringpassword="computer";byte[]result=DES.encrypt(str.getBytes(),password);Stringencryresult=newString(result);System.out.print("加密后:

7、");System.out.println(encryresult);io.WriteCipher("C:\Users\Administrator\workspace\Cryptology\src\DES\Cipher.text",encryresult);//直接将如上内容解密try{byte[]decryResult=DES.decrypt(result,password);System.out.println("解密后:"+newString(decryResult));}catch(Exceptione1){e1.printStackTrac

8、e();}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。