首页 > 其他 > 详细

AES加密工具类

时间:2015-03-16 11:02:26      阅读:311      评论:0      收藏:0      [点我收藏+]
import it.sauronsoftware.base64.Base64;

import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;

/** DES 加密的一种,加密秘钥长度为16位.
 */
public class AESC {
    private static final String ALGORITHM = "AES";
    /**
     * 16位的key.
     */
    private static final String KEY = "jsswlhfax_123456";

    /**
     * 加密文本(UTF-8编码)
     * @param text 待加密的字符串
     * @return 加密后的字符串
     */
    public static String encrypt(String text) {
        try {
            Cipher c = Cipher.getInstance(ALGORITHM);
            c.init(Cipher.ENCRYPT_MODE, new SecretKeySpec(KEY.getBytes(), ALGORITHM));
            byte[] data = c.doFinal(text.getBytes("UTF-8"));
            return new String(Base64.encode(data));
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }
    /**
     * 解密文本(UTF-8编码)
     * @param text 待解秘的字符串
     * @return 解密后的字符串
     */
    public static String decrypt(String text) {
        try {
            Cipher c = Cipher.getInstance(ALGORITHM);
            c.init(Cipher.DECRYPT_MODE, new SecretKeySpec(KEY.getBytes(), ALGORITHM));
            byte[] data = c.doFinal(Base64.decode(text.getBytes()));
            return new String(data, "UTF-8");
        } catch (Exception e) {
            return null;
        }
    }

    public static void main(String aggs[]) {
        long start = System.currentTimeMillis();
        for(int i=0;i<100;i++){
            System.out.println(encrypt("中国"+i));
            encrypt("中国"+i);
        }
        System.out.println("花费时间:"+(System.currentTimeMillis()-start));

        //System.out.println(decrypt("CxS8ZR/08vasO4WrYBMFSg=="));
    }
}

AES加密工具类

原文:http://blog.csdn.net/u011328015/article/details/44302113

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!