知识大全 Java中3DES加密解密示例
Posted 知
篇首语:学向勤中得,萤窗万卷书。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 Java中3DES加密解密示例相关的知识,希望对你有一定的参考价值。
Java中3DES加密解密示例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
在java中调用sun公司提供的 DES加密解密算法时 需要使用到$JAVA_HOME/jre/lib/目录下如下的 个jar包
jce jar
security/US_export_policy jar
security/local_policy jar
ext/sunjce_provider jar
Java运行时会自动加载这些包 因此对于带main函数的应用程序不需要设置到CLASSPATH环境变量中 对于WEB应用 不需要把这些包加到WEB INF/lib目录下
以下是java中调用sun公司提供的 DES加密解密算法的样本代码
加密解密代码
import java security Security;
import javax crypto Cipher;
import javax crypto SecretKey;
import javax crypto spec SecretKeySpec;
/*字符串 DESede( DES) 加密*/
public class ThreeDes
/**
* @param args在java中调用sun公司提供的 DES加密解密算法时 需要使
* 用到$JAVA_HOME/jre/lib/目录下如下的 个jar包
*jce jar
*security/US_export_policy jar
*security/local_policy jar
*ext/sunjce_provider jar
*/
private static final String Algorithm = DESede ; //定义加密算法 可用 DES DESede Blowfish
//keybyte为加密密钥 长度为 字节
//src为被加密的数据缓冲区(源)
public static byte[] encryptMode(byte[] keybyte byte[] src)
try
//生成密钥
SecretKey deskey = new SecretKeySpec(keybyte Algorithm);
//加密
Cipher c = Cipher getInstance(Algorithm);
c init(Cipher ENCRYPT_MODE deskey);
return c doFinal(src);//在单一方面的加密或解密
catch (java security NoSuchAlgorithmException e )
// TODO: handle exception
e printStackTrace();
catch(javax crypto NoSuchPaddingException e )
e printStackTrace();
catch(java lang Exception e )
e printStackTrace();
return null;
//keybyte为加密密钥 长度为 字节
//src为加密后的缓冲区
public static byte[] decryptMode(byte[] keybyte byte[] src)
try
//生成密钥
SecretKey deskey = new SecretKeySpec(keybyte Algorithm);
//解密
Cipher c = Cipher getInstance(Algorithm);
c init(Cipher DECRYPT_MODE deskey);
return c doFinal(src);
catch (java security NoSuchAlgorithmException e )
// TODO: handle exception
e printStackTrace();
catch(javax crypto NoSuchPaddingException e )
e printStackTrace();
catch(java lang Exception e )
e printStackTrace();
return null;
//转换成十六进制字符串
public static String byte Hex(byte[] b)
String hs= ;
String stmp= ;
for(int n= ; n<b length; n++)
stmp = (java lang Integer toHexString(b[n]& XFF));
if(stmp length()== )
hs = hs + + stmp;
else
hs = hs + stmp;
if(n<b length )hs=hs+ : ;
return hs toUpperCase();
public static void main(String[] args)
// TODO Auto generated method stub
//添加新安全算法 如果用JCE就要把它添加进去
Security addProvider(new sun crypto provider SunJCE());
final byte[] keyBytes = x x x F x
(byte) x x x x x x x x
(byte) xCB
(byte) xDD x x x x x
(byte) x x x x
(byte) xE
; // 字节的密钥
String szSrc = This is a DES test 测试 ;
System out println( 加密前的字符串: + szSrc);
byte[] encoded = encryptMode(keyBytes szSrc getBytes());
System out println( 加密后的字符串: + new String(encoded));
byte[] srcBytes = decryptMode(keyBytes encoded);
System out println( 解密后的字符串: + (new String(srcBytes)));
cha138/Article/program/Java/hx/201311/26954
相关参考
3DES加密解密调用示例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在java中调用sun公
java中使用MD5加密算法进行加密 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在各种应用系
Java加密技术(九) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在Java加密技术(八)中
java中使用MD5对数据密码加密 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! publicc
知识大全 Java/JSP中调用SQL Server存储过程完整示例
Java/JSP中调用SQLServer存储过程完整示例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下
前言 大家知道在登录MicrosoftWindows操作系统过程中在登录窗口中需要用户输入注册用户名称和密码细心的读者会发现用户输入的注册用户名称内容为原码字符显示而注册密码内容为掩码字
Java中的同步——示例程序 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 前面说到了Java中
Java中常用的加密算法MD5,SHA,RSA 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! M
java字符串加密解密 tryStringtest=EncryptionDecryptiondes=newEncryptionDecryption(tourhb)//自定义密钥Systemout
以下两个类可以很方便的完成字符串的加密和解密 加密CryptHelperencrypt(password) 解密CrypHelperdecrypt(password) 代码如下 Crypt