首页 > 代码库 > java AES加密拿来即用,实行对汉字的转化
java AES加密拿来即用,实行对汉字的转化
package com.tr.common.util.encrypt; import java.security.InvalidKeyException; import java.security.NoSuchAlgorithmException; import java.security.SecureRandom; import java.security.Security; import javax.crypto.BadPaddingException; import javax.crypto.Cipher; import javax.crypto.IllegalBlockSizeException; import javax.crypto.KeyGenerator; import javax.crypto.NoSuchPaddingException; import javax.crypto.SecretKey; import com.tr.ODJ.util.Constants; /** * AES 加密解密类 * * * */ public class EncrypAES { // KeyGenerator 提供对称密钥生成器的功能,支持各种算法 private static KeyGenerator keygen; // SecretKey 负责保存对称密钥 private static SecretKey deskey; // Cipher负责完成加密或解密工作 private static Cipher c; // 该字节数组负责保存加密的结果 private static byte[] cipherByte; static { Security.addProvider(new com.sun.crypto.provider.SunJCE()); // 实例化支持DES算法的密钥生成器(算法名称命名需按规定,否则抛出异常) try { keygen = KeyGenerator.getInstance("AES"); } catch (NoSuchAlgorithmException e) { // TODO Auto-generated catch block e.printStackTrace(); } // 生成密钥 keygen.init(new SecureRandom("这是密匙".getBytes())); deskey = keygen.generateKey(); // 生成Cipher对象,指定其支持的DES算法 try { c = Cipher.getInstance("AES"); } catch (NoSuchAlgorithmException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (NoSuchPaddingException e) { // TODO Auto-generated catch block e.printStackTrace(); } } // public EncrypAES() throws NoSuchAlgorithmException, NoSuchPaddingException { // Security.addProvider(new com.sun.crypto.provider.SunJCE()); // // 实例化支持DES算法的密钥生成器(算法名称命名需按规定,否则抛出异常) // keygen = KeyGenerator.getInstance("AES"); // // 生成密钥 // deskey = keygen.generateKey(); // // 生成Cipher对象,指定其支持的DES算法 // c = Cipher.getInstance("AES"); // } /** * 对字符串加密 * * @param str * @return * @throws InvalidKeyException * @throws IllegalBlockSizeException * @throws BadPaddingException */ public static String Encrytor(String str) throws InvalidKeyException, IllegalBlockSizeException, BadPaddingException { // 根据密钥,对Cipher对象进行初始化,ENCRYPT_MODE表示加密模式 c.init(Cipher.ENCRYPT_MODE, deskey); byte[] src = http://www.mamicode.com/str.getBytes();>
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。