知识大全 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加密解密调用示例

3DES加密解密调用示例  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在java中调用sun公

知识大全 java中使用MD5加密算法进行加密

java中使用MD5加密算法进行加密  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在各种应用系

知识大全 Java加密技术(九)

Java加密技术(九)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在Java加密技术(八)中

知识大全 java中使用MD5对数据密码加密

java中使用MD5对数据密码加密  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  publicc

知识大全 Java/JSP中调用SQL Server存储过程完整示例

Java/JSP中调用SQLServer存储过程完整示例  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下

知识大全 java 加密

  前言      大家知道在登录MicrosoftWindows操作系统过程中在登录窗口中需要用户输入注册用户名称和密码细心的读者会发现用户输入的注册用户名称内容为原码字符显示而注册密码内容为掩码字

知识大全 Java中的同步——示例程序

Java中的同步——示例程序  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  前面说到了Java中

知识大全 Java中常用的加密算法MD5,SHA,RSA

Java中常用的加密算法MD5,SHA,RSA  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  M

知识大全 java字符串加密解密

  java字符串加密解密  tryStringtest=EncryptionDecryptiondes=newEncryptionDecryption(tourhb)//自定义密钥Systemout

知识大全 java密码加密与解密

  以下两个类可以很方便的完成字符串的加密和解密  加密CryptHelperencrypt(password)  解密CrypHelperdecrypt(password)  代码如下  Crypt