JAVA上加密算法的实现用例笔记 - 编程入门网
;n++)
{
stmp=(java.lang.Integer.toHexString(b[n] & 0XFF));
if (stmp.length()==1) hs=hs+"0"+stmp;
else hs=hs+stmp;
if (n<b.length-1) hs=hs+":";
}
return hs.toUpperCase();
}
}
JAVA上加密算法的实现用例笔记(8)时间:2011-10-162.4. DESede/DES对称算法 首先生成密钥,并保存(这里并没的保存的代码,可参考DSA中的方法) KeyGenerator keygen = KeyGenerator.getInstance(Algorithm); SecretKey deskey = keygen.generateKey(); 用密钥加密明文(myinfo),生成密文(cipherByte) Cipher c1 = Cipher.getInstance(Algorithm); c1.init(Cipher.ENCRYPT_MODE,deskey); byte[] cipherByte=c1.doFinal(myinfo.getBytes()); 传送密文和密钥,本文没有相应代码可参考DSA ............. 用密钥解密密文 c1 = Cipher.getInstance(Algorithm); c1.init(Cipher.DECRYPT_MODE,deskey); byte[] clearByte=c1.doFinal(cipherByte); 相对来说对称密钥的使用是很简单的,对于JCE来讲支技DES,DESede,Blowfish三种加密术 对于密钥的保存各传送可使用对象流或者用二进制编码,相关参考代码如下 SecretKey deskey = keygen.generateKey(); byte[] desEncode=deskey.getEncoded(); javax.crypto.spec.SecretKeySpec destmp=new javax.crypto.spec.SecretKeySpec (desEncode,Algorithm); SecretKey mydeskey=destmp; 相关API KeyGenerator 在DSA中已经说明,在添加JCE后在instance进可以如下参数 DES,DESede,Blowfish,HmacMD5,HmacSHA1 javax.crypto.Cipher 加/解密器 public static final Cipher getInstance(java.lang.String transformation) throws java.security.NoSuchAlgorithmException, NoSuchPaddingException 返回一个指定方法的Cipher对象 参数:transformation 方法名(可用 DES,DESede,Blowfish) public final void init(int opmode, java.security.Key key) throws java.security.InvalidKeyException JAVA上加密算法的实现用例笔记(9)时间:2011-10-16用指定的密钥和模式初始化Cipher对象 参数:opmode 方式(ENCRYPT_MODE, DECRYPT_MODE, WRAP_MODE,UNWRAP_MODE) key 密钥
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |