开发工具:
文件大小: 662kb
下载次数: 0
上传时间: 2010-06-13
详细说明: DES对称分组密码系统 import java.security.spec.*; import javax.crypto.*; import javax.crypto.spec.*; class DES01 { private String strkey; private SecretKey skey=null; private String[] algo= {"DES/ECB/PKCS5Padding","DES/ECB/NoPadding","DES"}; public DES01(String key) { strkey=key; } public void keyGenerating() throws Exception { byte[] bkey=strkey.getBytes(); KeySpec ks = new DESKeySpec(bkey); SecretKeyFactory kf = SecretKeyFactory.g etInstance("DES"); skey = kf.generateSecret(ks); } public static void main(String[] a) { DES01 des = new DES01("IAMASTUDENT"); des.test02("STUDENTWANGFENGLIMING"); } public byte[] Encripting(String plaintext,int i) throws Exception { byte[] bpt=plaintext.getBytes(); Cipher cf = Cipher.getInstance(algo[i]); if(skey==null)this.keyGenerating(); cf.init(Cipher.ENCRYPT_MODE,skey); byte[] bct = cf.doFinal(bpt); return bct; } public byte[] decripting(byte[] bct,int i) throws Exception { Cipher cf = Cipher.getInstance(algo[i]); if(skey==null)this.keyGenerating(); cf.init(Cipher.DECRYPT_MODE,skey); byte[] bpt = cf.doFinal(bct); return bpt; } public void test01(String mess) { try{ byte[] ct=this.Encripting(mess,0); byte[] pt=this.Decripting(ct,0); String ptt=new String(pt); System.out.println(ptt); }catch(Exception ex) { return; } } public void test02(String mess) { try{ //Encripting print("Plaintext to be encripted:"); print(mess); byte[] ct=this.Encripting(mess,0); //Exploiting the results print("Byte array of cipher:"); for(int i=0;i
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.